/* Scoped restoration of classic Ascendio header/footer, independent of Elementor. */
.ascendio-legacy-header { position: relative; z-index: 20; background: #fff; }
.ascendio-legacy-header .legacy-top-panel { background: var(--legacy-top-bg, #2a2f33); color: #fff; font-size: 12px; line-height: 1.6; }
.ascendio-legacy-header .legacy-top-inner { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 36px; padding-top: 7px; padding-bottom: 7px; }
.ascendio-legacy-header .legacy-top-message { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 16px; }
.ascendio-legacy-header .legacy-top-message > * { margin: 0; }
.ascendio-legacy-header .legacy-top-message .info-block { display: inline-block; margin-right: 12px; }
.ascendio-legacy-header .legacy-top-message i { margin-right: 7px; }
.ascendio-legacy-header .legacy-top-panel a { color: inherit; text-decoration: none; }
.ascendio-legacy-header .legacy-top-panel a:hover { text-decoration: underline; }
.ascendio-legacy-header .legacy-top-links { display:flex; flex-wrap:wrap; gap: 16px; margin:0; padding:0; list-style:none; }
.ascendio-legacy-header .legacy-social { margin-left: auto; }
.ascendio-legacy-header .legacy-social ul { display: flex; gap: 12px; margin: 0; padding:0; list-style: none; }
.ascendio-legacy-header .legacy-header-main { background:#fff; }
.ascendio-legacy-header .legacy-header-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; min-height: 80px; padding-top: 14px; padding-bottom:14px; }
.ascendio-legacy-header .legacy-site-branding { flex:0 1 auto; min-width:0; }
.ascendio-legacy-header .legacy-logo-link, .ascendio-legacy-header .legacy-logo-text { display:inline-block; text-decoration:none; }
.ascendio-legacy-header .legacy-logo-text { font-size: 25px; font-weight: 600; line-height: 1.2; }
.ascendio-legacy-header .legacy-logo-image, .ascendio-legacy-header .custom-logo { display:block; max-height: 90px; max-width: min(360px, 100%); width:auto; height:auto; object-fit:contain; }
.ascendio-legacy-header .legacy-tagline { font-size:12px; line-height: 1.3; }
.ascendio-legacy-header .legacy-main-nav { margin-left:auto; }
.ascendio-legacy-header .legacy-main-links { display:flex; align-items:center; justify-content:flex-end; flex-wrap: wrap; gap: 12px 26px; margin:0; padding:0; list-style:none; }
.ascendio-legacy-header .legacy-main-links li { display:block; position:relative; margin:0; padding:0; list-style:none; }
.ascendio-legacy-header .legacy-main-links a { display:block; padding:10px 0; text-decoration:none; font-size:14px; font-weight:600; letter-spacing:.02em; color:#292d33; }
.ascendio-legacy-header .legacy-main-links a:hover, .ascendio-legacy-header .legacy-main-links .current-menu-item > a { color:#27a4cf; }
.ascendio-legacy-header .legacy-main-links .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:200px; padding:10px 16px; margin:0; list-style:none; background:#fff; box-shadow:0 5px 25px rgba(0,0,0,.17); z-index:100; }
.ascendio-legacy-header .legacy-main-links .sub-menu .sub-menu { top:0; left:100%; }
.ascendio-legacy-header .legacy-main-links li:hover > .sub-menu, .ascendio-legacy-header .legacy-main-links li:focus-within > .sub-menu { display:block; }
.ascendio-legacy-header .legacy-main-links .sub-menu a { padding:8px 0; }
.ascendio-legacy-header .legacy-mobile-nav { display:none; }
.ascendio-legacy-header .legacy-showcase { min-height:220px; padding:46px 0 50px; background-size:cover; background-position:center center; }
.ascendio-legacy-header .legacy-showcase-subtitle { font-size:19px; font-weight:400; margin:0 0 10px; }
.ascendio-legacy-header .legacy-showcase-title { font-size:clamp(32px, 5vw, 62px); line-height:1.1; margin:0 0 16px; }
.ascendio-legacy-header .legacy-showcase-description { max-width:500px; margin:0 0 20px; }
.ascendio-legacy-header .legacy-showcase-button { display:inline-block; background:#229ecc; padding:12px 20px; margin:8px 12px 0 0; color:#fff; text-decoration:none; }
.ascendio-legacy-footer { --legacy-widgets-bg:#2a2f33; --legacy-footer-bg:#272b2f; color:#f5f5f5; }
.ascendio-legacy-footer .legacy-footer-widgets { background:var(--legacy-widgets-bg); color:#f2f2f2; }
.ascendio-legacy-footer .legacy-footer-grid { display:grid; grid-template-columns:repeat(var(--legacy-footer-columns,4), minmax(0,1fr)); gap:28px; margin-left:auto; margin-right:auto; padding:38px 0 28px; }
.ascendio-legacy-footer .legacy-footer-grid .widget { min-width:0; margin:0 0 14px; padding:0; font-size:14px; line-height:1.7; }
.ascendio-legacy-footer .legacy-footer-grid .widget-title { margin:0 0 18px; font-size:16px; font-weight:600; text-transform:uppercase; color:#fff; }
.ascendio-legacy-footer .legacy-footer-grid .widget a { color:inherit; }
.ascendio-legacy-footer .legacy-footer-grid .widget p { margin: 0 0 12px; }
.ascendio-legacy-footer .legacy-footer-grid .widget img { max-width:100%; height:auto; }
.ascendio-legacy-footer .legacy-footer-bottom { background:var(--legacy-footer-bg); padding:20px 0; }
.ascendio-legacy-footer .legacy-footer-bottom-inner { display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; }
.ascendio-legacy-footer .footer-copyright { margin:0; color:inherit; font-size:13px; line-height:1.6; }
.ascendio-legacy-footer .footer-copyright p { margin:0; }
.ascendio-legacy-footer .legacy-footer-nav { margin-left:auto; }
.ascendio-legacy-footer .legacy-footer-links { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; margin:0; padding:0; list-style:none; }
.ascendio-legacy-footer .legacy-footer-links a { font-size:13px; color:inherit; text-decoration:none; }
.ascendio-legacy-footer .legacy-footer-links a:hover { text-decoration:underline; }
.ascendio-legacy-footer .legacy-footer-social ul { display:flex; gap:10px; margin:0; padding:0; list-style:none; }
.ascendio-legacy-footer.legacy-footer-centered .legacy-footer-bottom-inner, .ascendio-legacy-footer.legacy-footer-default .legacy-footer-bottom-inner { justify-content:center; text-align:center; }
.ascendio-legacy-footer.legacy-footer-centered .legacy-footer-nav, .ascendio-legacy-footer.legacy-footer-default .legacy-footer-nav { margin-left:0; }
.ascendio-legacy-footer .legacy-footer-logo img { max-height:56px; width:auto; }
@media (max-width:980px) {
  .ascendio-legacy-header .legacy-main-nav { display:none; }
  .ascendio-legacy-header .legacy-mobile-nav { display:block; position:relative; margin-left:auto; }
  .ascendio-legacy-header .legacy-mobile-nav summary { cursor:pointer; padding:10px 16px; border:1px solid #d4d6da; border-radius:4px; list-style:none; }
  .ascendio-legacy-header .legacy-mobile-nav summary::-webkit-details-marker { display:none; }
  .ascendio-legacy-header .legacy-mobile-nav nav { position:absolute; top:100%; right:0; z-index:100; min-width:min(88vw,300px); max-height:70vh; overflow-y:auto; padding:16px; background:#fff; box-shadow:0 8px 24px rgba(0,0,0,.17); }
  .ascendio-legacy-header .legacy-mobile-links, .ascendio-legacy-header .legacy-mobile-links .sub-menu { list-style:none; margin:0; padding:0; }
  .ascendio-legacy-header .legacy-mobile-links .sub-menu { padding-left:16px; }
  .ascendio-legacy-header .legacy-mobile-links a { display:block; padding:9px 0; text-decoration:none; color:#292d33; }
  .ascendio-legacy-footer .legacy-footer-grid { grid-template-columns:repeat(min(2, var(--legacy-footer-columns,4)),minmax(0,1fr)); }
}
@media (max-width:600px) {
  .ascendio-legacy-header .legacy-top-inner { flex-wrap:wrap; justify-content:center; }
  .ascendio-legacy-header .legacy-header-inner { min-height:65px; gap:10px; }
  .ascendio-legacy-header .legacy-logo-image, .ascendio-legacy-header .custom-logo { max-height:65px; }
  .ascendio-legacy-footer .legacy-footer-grid { grid-template-columns:1fr; }
  .ascendio-legacy-footer .legacy-footer-bottom-inner { display:block; text-align:center; }
  .ascendio-legacy-footer .legacy-footer-nav { margin:12px auto 0; }
  .ascendio-legacy-footer .legacy-footer-links { justify-content:center; }
}

/* Version 0.2: The footer is a full-width region, not a narrow sidebar.
 * This is effective once the actual WordPress widgets have been assigned to footer-area.
 */
.ascendio-legacy-footer,
.ascendio-legacy-footer .legacy-footer-widgets {
  display:block;
  clear:both;
  width:100%;
  max-width:none;
}
.ascendio-legacy-footer .legacy-footer-widgets > .container {
  width:100%;
}
.ascendio-legacy-footer .legacy-footer-grid {
  box-sizing:border-box;
  display:grid;
  width:100%;
  max-width:100%;
  grid-template-columns:repeat(var(--legacy-footer-columns,4),minmax(0,1fr));
  align-items:start;
}
.ascendio-legacy-footer .legacy-footer-grid > .widget {
  box-sizing:border-box;
  min-width:0;
  max-width:none;
  width:auto;
  float:none;
  align-self:start;
}
@media (max-width: 1100px) {
  .ascendio-legacy-footer .legacy-footer-grid {
    grid-template-columns:repeat(min(3, var(--legacy-footer-columns,4)),minmax(0,1fr));
  }
}
@media (max-width: 760px) {
  .ascendio-legacy-footer .legacy-footer-grid {
    grid-template-columns:repeat(min(2, var(--legacy-footer-columns,4)),minmax(0,1fr));
  }
}
@media (max-width: 540px) {
  .ascendio-legacy-footer .legacy-footer-grid { grid-template-columns:1fr; }
}

/* Version 0.3: first widget (sponsor banner) occupies a full row;
 * the next four widgets appear in four equal-width columns.
 * Only enabled when selected in the Classic Header & Footer Customizer.
 */
.ascendio-legacy-footer .legacy-footer-grid--banner-four {
  grid-template-columns:repeat(4, minmax(0, 1fr));
}
.ascendio-legacy-footer .legacy-footer-grid--banner-four > .widget:first-child {
  grid-column:1 / -1;
  width:100%;
  text-align:center;
}
.ascendio-legacy-footer .legacy-footer-grid--banner-four > .widget:first-child img {
  display:block;
  margin-left:auto;
  margin-right:auto;
  max-width:100%;
  height:auto;
}
@media (max-width:1100px) {
  .ascendio-legacy-footer .legacy-footer-grid--banner-four {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width:540px) {
  .ascendio-legacy-footer .legacy-footer-grid--banner-four {
    grid-template-columns:minmax(0, 1fr);
  }
}

/* Version 0.3.1: Ascendio parent style.css defines .fa::before { content: "+"; }
 * and overrides Font Awesome's icon glyphs. Restore the actual glyphs in the
 * classic top-panel only, without affecting other components' .fa selectors.
 */
.ascendio-legacy-header .legacy-top-message .fa.fa-envelope::before {
  content: "\f0e0";
  font-family: "FontAwesome";
  font-weight: normal;
}
.ascendio-legacy-header .legacy-top-message .fa.fa-mobile::before {
  content: "\f10b";
  font-family: "FontAwesome";
  font-weight: normal;
}
