/* HR2fit ↔ Elementor / WordPress compatibility layer */

/* Each original <section> lives in its own full-width Elementor container with an HTML widget.
   Strip Elementor's container padding, gaps and widget spacing so sections stack exactly as before. */
.e-con.hr2fit-section,
.elementor-section.hr2fit-section{
  --padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;
  --gap:0px;--row-gap:0px;--column-gap:0px;--widgets-spacing:0px;--kit-widget-spacing:0px;
  --container-default-padding-top:0px;--container-default-padding-right:0px;
  --container-default-padding-bottom:0px;--container-default-padding-left:0px;
  padding:0;gap:0;max-width:100%;
}
.hr2fit-section > .elementor-widget,
.hr2fit-section > .elementor-widget > .elementor-widget-container{width:100%;max-width:100%;margin:0;padding:0}
.elementor-widget-html .hr2fit-raw{display:contents}

/* Fixed header clears the WordPress admin bar */
.admin-bar header.nav{top:32px}
@media (max-width:782px){.admin-bar header.nav{top:46px}}
@media (max-width:600px){.admin-bar header.nav{top:0}}

/* WP menu items rendered by wp_nav_menu() */
nav ul#menu li{list-style:none}

/* Default content (posts, plain pages, archives) */
.hr2fit-content{max-width:860px;margin:0 auto}
.hr2fit-content > * + *{margin-top:1.1em}
.hr2fit-content h2{font-size:clamp(1.6rem,3vw,2.3rem);margin-top:1.6em}
.hr2fit-content h3{font-size:1.35rem;margin-top:1.4em}
.hr2fit-content ul,.hr2fit-content ol{padding-left:1.3em}
.hr2fit-content a{color:var(--blue);text-decoration:underline}
.hr2fit-archive{display:grid;gap:18px;list-style:none;padding:0}
.hr2fit-archive li a{display:block;padding:22px 26px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:border-color .2s,transform .2s}
.hr2fit-archive li a:hover{border-color:var(--blue);transform:translateY(-2px)}
.hr2fit-archive h3{font-size:1.25rem;margin-bottom:6px}
.hr2fit-archive span{color:var(--txt);font-size:.9rem}
.nav-links{display:flex;gap:10px;justify-content:center;margin-top:36px}
.nav-links .page-numbers{padding:8px 14px;border-radius:999px;border:1px solid var(--line)}
.nav-links .current{background:var(--navy);color:#fff}

/* Contact form shortcode states */
.hr2fit-form-notice{padding:16px 20px;border-radius:12px;margin-bottom:16px;text-align:center;font-weight:600}
.hr2fit-form-notice.ok{background:#e8f5e9;border:1px solid #c8e6c9;color:#2e7d32}
.hr2fit-form-notice.err{background:#fdecea;border:1px solid #f5c6cb;color:#a12622}
.hr2fit-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ---- Generated: restore theme styles that Elementor's `.elementor img` / `.elementor a` resets override ---- */
.elementor a{text-decoration:none}
.elementor img{max-width:100%}
.elementor .btn{border-radius:999px;border:0}
.elementor .btn-lime:hover{box-shadow:0 12px 24px -10px rgba(148,200,15,.8)}
.elementor .btn-line{box-shadow:inset 0 0 0 2px currentColor}
.elementor .btn-line:hover{box-shadow:inset 0 0 0 2px var(--navy)}
.elementor .on-dark .btn-line:hover{box-shadow:none}
.elementor .brand img{height:44px}
.elementor nav a:not(.btn){border-radius:999px}
.elementor .burger{border:0;height:44px}
.elementor .hero h1 img{max-width:890px;height:auto}
.elementor .hero-scroll-cue{height:42px;border-radius:50%;border:1px solid rgba(220, 229, 238, 0.85);box-shadow:0 4px 14px rgba(33, 59, 95, 0.06)}
.elementor .hero-scroll-cue:hover{border-color:var(--navy);box-shadow:0 6px 18px rgba(33, 59, 95, 0.12)}
.elementor .allsvc a{border-radius:999px;border:1px solid var(--line)}
.elementor .allsvc a:hover{border-color:var(--navy)}
.elementor .fp img{max-width:390px;height:auto}
.elementor .reviewer-avatar{height:60px;border-radius:50%;border:3px solid #fff;box-shadow:0 6px 16px rgba(33,59,95,0.14)}
.elementor .tm-btn{height:44px;border-radius:50%;border:1px solid var(--line);box-shadow:0 4px 12px rgba(33,59,95,.06)}
.elementor .tm-btn:hover{border-color:var(--navy)}
.elementor .tm-dot.active{border-radius:999px}
.elementor .ctab-action .btn{box-shadow:0 12px 28px -5px rgba(178,229,58,0.5)}
.elementor footer .brand img{height:48px}
@media (max-width:600px){
  .elementor .reviewer-avatar{height:52px}
}
.elementor .breadcrumbs a:hover{text-decoration:underline}
.elementor .svc-card-footer a:hover{text-decoration:underline}
.elementor .founder-full .btn-line{border:2px solid #fff !important;box-shadow:none !important}
@media (min-width: 981px){
  .elementor .founder-img-wrap img{height:100%;max-width:none}
}
.elementor .form-submit-btn{border-radius:12px}
.elementor .office-card a.office-link:hover{text-decoration:underline}
.elementor .article-author-card img{height:82px;border-radius:50%;border:3px solid #fff;box-shadow:0 6px 16px rgba(33,59,95,0.12)}
.elementor .sidebar-related-item a{text-decoration:none}
@media (max-width:980px){
  .elementor .founder-img-wrap img{max-width:360px}
}
