
/* =========================================================
   ELCHPOWER V5.1 – BALANCED FRAME
   Larger header/footer, stronger visual balance, calmer middle
   ========================================================= */

/* HEADER: more presence, better readability */
body:has(.v5-home-main) .site-header {
  min-height:90px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  align-items:center !important;
}

body:has(.v5-home-main) .site-header .brand img {
  width:78px !important;
  height:70px !important;
  object-fit:contain;
}

body:has(.v5-home-main) .main-nav {
  gap:28px !important;
}

body:has(.v5-home-main) .main-nav a {
  font-size:.82rem !important;
}

body:has(.v5-home-main) .main-nav .nav-contact {
  min-height:40px;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
}

/* HOME SCREEN: use the available middle space more confidently */
body:has(.v5-home-main) .v5-home-screen {
  min-height:calc(100vh - 90px - 78px);
}

body:has(.v5-home-main) .v5-home-shell {
  grid-template-columns:minmax(330px,.76fr) minmax(650px,1.24fr);
  gap:76px;
  padding-top:38px;
  padding-bottom:34px;
}

body:has(.v5-home-main) .v5-home-left {
  max-width:540px;
}

body:has(.v5-home-main) .v5-home-left h1 {
  font-size:clamp(2.65rem,4vw,4.55rem) !important;
  max-width:9.2ch !important;
  margin-bottom:22px;
}

body:has(.v5-home-main) .v5-home-lead {
  max-width:485px;
  font-size:1rem;
  line-height:1.72;
}

body:has(.v5-home-main) .v5-values {
  margin-top:26px;
  gap:9px;
}

body:has(.v5-home-main) .v5-values button {
  font-size:.75rem;
  padding:9px 12px;
}

body:has(.v5-home-main) .v5-value-copy {
  font-size:.8rem;
  min-height:44px;
  max-width:450px;
}

body:has(.v5-home-main) .v5-home-actions {
  margin-top:26px;
}

body:has(.v5-home-main) .v5-primary,
body:has(.v5-home-main) .v5-secondary {
  min-height:46px;
  font-size:.8rem;
  padding:0 19px;
}

/* RIGHT SIDE: use more of the middle without becoming loud */
body:has(.v5-home-main) .v5-home-right {
  min-height:520px;
  grid-template-columns:.86fr 1.14fr;
  gap:12px 14px;
}

body:has(.v5-home-main) .v5-home-card {
  padding:14px 14px;
}

body:has(.v5-home-main) .v5-home-card small {
  font-size:.62rem;
}

body:has(.v5-home-main) .v5-home-card strong {
  font-size:.84rem;
}

body:has(.v5-home-main) .v5-focus {
  min-height:360px;
  padding:32px;
}

body:has(.v5-home-main) .v5-focus-panel h2 {
  font-size:clamp(1.6rem,2vw,2.25rem);
  max-width:12ch;
}

body:has(.v5-home-main) .v5-focus-panel p {
  font-size:.9rem;
  max-width:520px;
}

body:has(.v5-home-main) .v5-elchi-anchor {
  padding-top:14px;
}

/* BOTTOM STATUS BAR: bigger, readable, still elegant */
body:has(.v5-home-main) .v5-home-bottom-inner {
  min-height:56px;
  font-size:.74rem;
  letter-spacing:.035em;
}

/* COMPACT HOME FOOTER: increase size modestly */
body:has(.v5-home-main) .ep-home-utility-footer .home-shell {
  min-height:72px !important;
}

body:has(.v5-home-main) .ep-home-utility-footer span,
body:has(.v5-home-main) .ep-home-utility-footer a,
body:has(.v5-home-main) .ep-home-partner-trigger {
  font-size:.78rem !important;
}

body:has(.v5-home-main) .ep-home-utility-right > span {
  font-size:.66rem !important;
}

body:has(.v5-home-main) .ep-home-utility-left,
body:has(.v5-home-main) .ep-home-utility-right {
  gap:11px !important;
}

body:has(.v5-home-main) .ep-home-utility-footer i {
  font-size:.68rem !important;
}

/* Desktop viewport tuning */
@media (min-width:980px) {
  body:has(.v5-home-main) .v5-home-screen {
    height:calc(100vh - 90px - 72px) !important;
    min-height:650px;
  }
}

/* Short desktop heights: preserve balance, don't crush header/footer */
@media (min-width:980px) and (max-height:820px) {
  body:has(.v5-home-main) .site-header {
    min-height:82px !important;
  }

  body:has(.v5-home-main) .v5-home-screen {
    height:auto !important;
    min-height:620px !important;
  }

  body:has(.v5-home-main) .v5-home-shell {
    padding-top:22px;
    padding-bottom:18px;
    gap:58px;
  }

  body:has(.v5-home-main) .v5-home-left h1 {
    font-size:clamp(2.3rem,3.45vw,3.8rem) !important;
  }

  body:has(.v5-home-main) .v5-home-right {
    min-height:430px;
  }

  body:has(.v5-home-main) .v5-focus {
    min-height:300px;
    padding:24px;
  }

  body:has(.v5-home-main) .v5-home-bottom-inner {
    min-height:50px;
    font-size:.7rem;
  }

  body:has(.v5-home-main) .ep-home-utility-footer .home-shell {
    min-height:64px !important;
  }
}

/* Tablet/mobile */
@media (max-width:979px) {
  body:has(.v5-home-main) .site-header {
    min-height:78px !important;
  }

  body:has(.v5-home-main) .v5-home-shell {
    grid-template-columns:1fr;
    gap:42px;
    padding-top:48px;
    padding-bottom:40px;
  }

  body:has(.v5-home-main) .v5-home-right {
    min-height:0;
  }
}
