/* 1.0.0: homepage section navigation begins below the hero's initial screen. */
:root { --sh-header-height:83px; --sh-section-height:56px; --sh-admin-height:0px; }
.admin-bar { --sh-admin-height:32px; }
body.home .elementor-element-cca935d,
body.home .elementor-element-343f865 { min-height:calc(100svh - var(--sh-header-height) - var(--sh-admin-height)); }

/* 1.0.6: lift the desktop hero copy without changing the hero or slider geometry. */
@media(min-width:768px) {
  body.home .elementor-element-cca935d .elementor-element-bd4f75b {
    transform:translateY(-32px);
  }
}
.sh-section-nav { position:sticky; top:calc(var(--sh-header-height) + var(--sh-admin-height)); z-index:99980; background:#fff; border-bottom:1px solid var(--sh-line); font-family:Arial,Helvetica,sans-serif; }
.sh-section-inner { display:flex; align-items:center; gap:clamp(18px,2vw,32px); width:min(100% - 40px,1440px); margin:auto; overflow-x:auto; scrollbar-width:thin; }
.sh-section-nav a { display:flex; align-items:center; flex-shrink:0; white-space:nowrap; min-height:56px; padding:4px 0; border-bottom:2px solid transparent; color:var(--sh-blue-dark); font-size:13px; font-weight:700; text-decoration:none; }
.sh-section-nav a:hover,.sh-section-nav a[aria-current="location"] { color:var(--sh-blue); border-bottom-color:var(--sh-blue); }
.sh-section-nav a:focus-visible { outline:2px solid var(--sh-blue); outline-offset:-3px; }
[data-sh-section] { scroll-margin-top:calc(var(--sh-header-height) + var(--sh-section-height) + var(--sh-admin-height) + 16px); }
@media(max-width:767px) { .sh-section-inner { width:calc(100% - 32px); gap:24px; } .sh-section-nav a { min-height:48px; font-size:12px; } }
@media(max-width:782px) { .admin-bar { --sh-admin-height:46px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto !important; } }

/* Native-anchor/no-JavaScript offsets match the existing mobile header. */
@media(max-width:782px) { :root { --sh-header-height:73px; } }

/* 1.0.1: mobile hero uses its visible content height; desktop retains the viewport hero. */
@media(max-width:767px) {
  html body.home #page .elementor-177 #overlayed-parent-section.elementor-element-343f865 {
    min-height:auto;
    margin-top:0 !important;
  }
}

/* Centre the links when they fit; auto margins collapse for mobile scrolling. */
.sh-section-inner > a:first-child { margin-left:auto; }
.sh-section-inner > a:last-child { margin-right:auto; }

/* Shared red action colour; existing white section rail retained. */
.sh-section-nav a[aria-current="location"],.sh-section-nav a:hover { color:#c71920; border-bottom-color:#c71920; }
