/* ============================================================
   greenenergyspace — Brand Color Override
   Remaps Webflow pages to match the modern homepage palette
   white #ffffff · teal-green #40b28d · sky-blue #a9d1df · navy #0b233b
   ============================================================ */

/* ===== 1. VARIABLE REMAP ===== */
:root {
  --base-color-neutral--black: #0b233b;
  --base-color-brand--black: #0b233b;
  --base-color-brand--white: #ffffff;
  --base-color-neutral--white: #ffffff;
  --background-color--background-alternate: #0b233b;
  --text-color--text-primary: #0b233b;
  --text-color--text-secondary: #56697b;
  --link-color--link-primary: #0b233b;
  --link-color--link-alternate: #ffffff;
  --border-color--border-primary: #e6ece9;

  /* Homepage-inspired additions */
  --ges-green: #40b28d;
  --ges-green-dark: #2f8a6c;
  --ges-green-deep: #1f6b52;
  --ges-green-light: #e7f4ee;
  --ges-blue: #a9d1df;
  --ges-navy: #0b233b;
  --ges-navy-2: #16304a;
  --ges-slate: #56697b;
  --ges-slate-2: #7c8c9b;
  --ges-bg: #ffffff;
  --ges-bg-soft: #f6faf8;
  --ges-bg-mist: #eef6f2;
  --ges-line: #e6ece9;
  --ges-shadow-sm: 0 1px 2px rgba(11,35,59,.05), 0 2px 8px -2px rgba(11,35,59,.06);
  --ges-shadow-md: 0 10px 30px -12px rgba(11,35,59,.12), 0 6px 14px -6px rgba(64,178,141,.10);
  --ges-shadow-green: 0 18px 40px -16px rgba(64,178,141,.30);
  --ges-ease: cubic-bezier(.22,.61,.36,1);
}

/* ===== 2. BODY & TYPOGRAPHY ===== */
body {
  background: var(--ges-bg-soft) !important;
  color: var(--ges-navy) !important;
}

h1, h2, h3, h4, h5, h6,
.heading-style-h1, .heading-style-h2, .heading-style-h3,
.heading-style-h4, .heading-style-h5, .heading-style-h6 {
  color: var(--ges-navy) !important;
  letter-spacing: -.01em !important;
}

p, .text-size-medium, .text-size-medium-copy, .text-size-regular {
  color: var(--ges-slate) !important;
  line-height: 1.65 !important;
}

.text-color-white, .text-color-white-copy {
  color: #ffffff !important;
}

/* ===== 3. NAVBAR ===== */
.navbar6_component {
  background-color: rgba(255,255,255,.92) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid var(--ges-line) !important;
  box-shadow: var(--ges-shadow-sm) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}

.navbar6_component.black, .navbar6_menu-left.black {
  color: var(--ges-navy) !important;
  background-color: rgba(255,255,255,.92) !important;
}

.navbar6_link, .navbar6_link.black {
  color: var(--ges-navy-2) !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  padding: 9px 14px !important;
  border-radius: 9px !important;
  transition: color .2s, background .2s !important;
}

.navbar6_link:hover, .navbar6_link.black:hover {
  color: var(--ges-green-deep) !important;
  background: var(--ges-green-light) !important;
}

.navbar6_link.w--current {
  color: var(--ges-green-deep) !important;
  font-weight: 600 !important;
}

.menu-icon_line-top.black,
.menu-icon_line-middle.black,
.menu-icon_line-bottom.black {
  background-color: var(--ges-navy) !important;
}

/* ===== 4. BUTTONS ===== */
.button {
  background-color: var(--ges-green) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: .75rem 1.6rem !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  box-shadow: var(--ges-shadow-green) !important;
  transition: all .3s var(--ges-ease) !important;
  margin-top: 0 !important;
  margin-bottom: 13px !important;
}

.button:hover {
  background-color: var(--ges-green-dark) !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 24px 48px -14px rgba(64,178,141,.45) !important;
}

.button.is-small {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: .6rem 1.3rem !important;
  border-radius: 10px !important;
}

.button.is-secondary {
  color: var(--ges-navy) !important;
  background: transparent !important;
  box-shadow: inset 0 0 0 1.5px var(--ges-line) !important;
}

.button.is-secondary:hover {
  background: var(--ges-green) !important;
  color: #fff !important;
  box-shadow: var(--ges-shadow-green) !important;
}

.button.is-alternate {
  background: #fff !important;
  color: var(--ges-navy) !important;
  border: 1px solid var(--ges-line) !important;
  box-shadow: var(--ges-shadow-sm) !important;
}

.button.is-alternate:hover {
  border-color: var(--ges-green) !important;
  color: var(--ges-green-deep) !important;
}

.button.is-icon.white {
  color: #fff !important;
  background: rgba(255,255,255,.12) !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  backdrop-filter: blur(8px) !important;
}

.button.is-icon.white:hover {
  background: var(--ges-green) !important;
  border-color: var(--ges-green) !important;
  color: #fff !important;
}

.button.is-link {
  color: var(--ges-green-deep) !important;
}

/* ===== 5. FOOTER ===== */
.footer4_component {
  background: var(--ges-navy) !important;
  color: rgba(255,255,255,.7) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
}

.footer4_credit-text {
  color: rgba(255,255,255,.5) !important;
}

.footer4_link {
  color: rgba(255,255,255,.85) !important;
  transition: color .2s !important;
}

.footer4_link:hover {
  color: var(--ges-green) !important;
}

.footer4_legal-link {
  color: rgba(255,255,255,.5) !important;
  transition: color .2s !important;
}

.footer4_legal-link:hover {
  color: var(--ges-green) !important;
}

.footer4_social-link {
  color: rgba(255,255,255,.7) !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.08) !important;
  display: grid !important;
  place-items: center !important;
  transition: all .25s var(--ges-ease) !important;
}

.footer4_social-link:hover {
  background: var(--ges-green) !important;
  color: #fff !important;
  transform: translateY(-3px) !important;
}

.footer4_social-link .icon-embed-xsmall {
  width: 18px !important;
  height: 18px !important;
}

.line-divider {
  background-color: rgba(255,255,255,.1) !important;
}

/* ===== 6. HEADER / HERO SECTIONS ===== */
.section_header36 {
  background: var(--ges-bg-soft) !important;
  padding: 60px 0 !important;
}

.header36_content {
  max-width: 35rem !important;
  margin-left: 5vw !important;
  margin-right: 3rem !important;
}

.text-size-medium-copy {
  color: var(--ges-slate) !important;
  font-size: 1.05rem !important;
  line-height: 1.75 !important;
}

/* ===== 7. LAYOUT466 (Join team section) ===== */
.section_layout466 {
  background: var(--ges-navy) !important;
  position: relative !important;
}

.layout466_background-image-wrapper {
  background-image: linear-gradient(135deg, rgba(11,35,59,.88), rgba(31,107,82,.82)) !important;
}

.layout466_content-left h2,
.layout466_content-left .text-weight-semibold {
  color: #fff !important;
}

.layout466_content-right p {
  color: rgba(255,255,255,.8) !important;
}

/* ===== 8. CONTACT FORM ===== */
.section_contact11 {
  background: var(--ges-bg-soft) !important;
}

.contact11_form-block {
  background: #fff !important;
  padding: 36px !important;
  border-radius: 20px !important;
  box-shadow: var(--ges-shadow-md) !important;
  border: 1px solid var(--ges-line) !important;
}

.form_field-label {
  color: var(--ges-navy) !important;
  font-weight: 600 !important;
  font-size: .9rem !important;
  margin-bottom: 6px !important;
}

.form_input, .sekect {
  border: 1.5px solid var(--ges-line) !important;
  border-radius: 10px !important;
  padding: .7rem 1rem !important;
  font-size: 15px !important;
  color: var(--ges-navy) !important;
  background: var(--ges-bg-mist) !important;
  transition: border-color .2s, box-shadow .2s !important;
}

.form_input:focus, .sekect:focus {
  border-color: var(--ges-green) !important;
  box-shadow: 0 0 0 3px rgba(64,178,141,.12) !important;
  outline: none !important;
  background: #fff !important;
}

.form_input.is-text-area {
  min-height: 120px !important;
  resize: vertical !important;
}

.form_checkbox-icon-2.w--redirected-checked {
  background-color: var(--ges-green) !important;
  border-color: var(--ges-green) !important;
}

.contact11_content {
  padding-left: 20px !important;
}

.contact11_icon-wrapper {
  background: var(--ges-green-light) !important;
  border-radius: 12px !important;
  padding: 12px !important;
  color: var(--ges-green-deep) !important;
  width: 48px !important;
  height: 48px !important;
  display: grid !important;
  place-items: center !important;
}

.contact11_item h6 {
  color: var(--ges-navy) !important;
  font-weight: 700 !important;
  font-size: .95rem !important;
}

.contact11_item div {
  color: var(--ges-slate) !important;
  font-size: .95rem !important;
}

/* ===== 9. GENERAL OVERRIDES ===== */
.page-main {
  background: var(--ges-bg-soft) !important;
}

.page-wrapper {
  background: var(--ges-bg-soft) !important;
}

.padding-global {
  background: transparent !important;
}

.container-large {
  max-width: 1180px !important;
}

/* Links */
a {
  transition: color .2s !important;
}

.text-style-link-2 {
  color: var(--ges-green-deep) !important;
  text-decoration: underline !important;
}

/* Success/error messages */
.success-message {
  background: var(--ges-green-light) !important;
  color: var(--ges-green-deep) !important;
  border-radius: 12px !important;
  padding: 20px !important;
}

.error-message {
  background: #fef3f2 !important;
  color: #b42318 !important;
  border-radius: 12px !important;
  padding: 20px !important;
}

/* Background color utilities */
.background-color-secondary {
  background-color: var(--ges-green) !important;
}

.background-color-primary {
  background-color: var(--ges-blue) !important;
}

.background-color-alternative {
  background-color: var(--ges-navy) !important;
}

/* Card-like sections */
.section_layout432 {
  background: var(--ges-bg-soft) !important;
}

/* Testimonial section */
.section_testimonial18 {
  background: var(--ges-bg-mist) !important;
  padding: 60px 0 !important;
}

/* Calendly widget container */
.section_contact11 .calendly-inline-widget {
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: var(--ges-shadow-md) !important;
}

/* Smooth scroll */
html {
  scroll-behavior: smooth !important;
}

/* Selection */
::selection {
  background: var(--ges-green) !important;
  color: #fff !important;
}

/* Scrollbar (webkit) */
::-webkit-scrollbar {
  width: 10px !important;
}
::-webkit-scrollbar-track {
  background: var(--ges-bg-soft) !important;
}
::-webkit-scrollbar-thumb {
  background: var(--ges-green-light) !important;
  border-radius: 10px !important;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--ges-green) !important;
}
