/**
 * Elementor + theme shell — keeps APF background visible, main area grows.
 * @package apf-elementor
 */

/* Let footer stick to bottom when content is short */
body.apf-theme .site {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  flex: 1;
}

body.apf-theme .site-main,
body.apf-theme main.site-main {
  flex: 1 0 auto;
  width: 100%;
  min-width: 0;
}

/* Elementor full-width sections: avoid accidental horizontal scroll */
body.apf-theme .elementor {
  max-width: 100%;
}

/* Default Elementor text inherits theme font where sections don’t set typography */
body.apf-theme .elementor-widget-text-editor,
body.apf-theme .elementor-heading-title {
  font-family: var(--font, 'Inter', system-ui, sans-serif);
}

/* Optional: soften Elementor’s default section padding on boxed layouts */
body.apf-theme .elementor-section.elementor-section-boxed > .elementor-container {
  max-width: min(1080px, 100%);
}

/* Center nav between brand and CTA (matches original static layout) */
.apf-nav-inner .apf-nav-menu {
  flex: 1;
  display: flex;
  justify-content: center;
  min-width: 0;
}

/* WordPress menus: <nav class="apf-nav-menu"><ul class="apf-nav-links"> */
.apf-nav-menu .apf-nav-links,
nav .apf-nav-links,
ul.apf-nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.apf-nav-links li {
  margin: 0;
  padding: 0;
}
