/* High-contrast hero treatment: readable on turquoise water and bright images. */
.hero-content{
  max-width:800px;
  margin:clamp(3rem,8vh,6rem) 5vw;
  padding:clamp(2.1rem,4vw,3.5rem);
  position:relative;
  z-index:1;
  /* A restrained glass panel: the image stays present, the copy remains readable. */
  background:linear-gradient(135deg,rgba(255,253,250,.80),rgba(255,253,250,.70));
  color:#082b3a;
  border:1px solid rgba(255,255,255,.48);
  box-shadow:0 18px 45px rgba(2,27,38,.13);
  backdrop-filter:blur(5px) saturate(1.05);
}
.hero h1 em{color:#496872}
.hero-facts{border-top-color:#b9c7c8}
.text-link.light{color:#082b3a}
@media(max-width:850px){
  .hero-content{margin:4.8rem 7vw 2rem;padding:2rem 1.6rem;background:rgba(255,253,250,.84)}
  .hero-shade{background:linear-gradient(90deg,rgba(2,27,38,.62),rgba(2,27,38,.26))}
}

/* The energy card uses Kevin Meyer's own installation photographs as a concise project collage. */
.service-card>.energy-collage{display:grid;grid-template-rows:1fr 1fr;min-height:260px;padding:0;overflow:hidden;background:transparent}
.energy-collage img{width:100%;height:100%;min-height:0;object-fit:cover;display:block;filter:saturate(.9) contrast(1.04)}
.energy-collage img:first-child{object-position:42% center}
.energy-collage img:last-child{object-position:44% center}
@media(min-width:851px){
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:300px}
  .service-card{height:100%;min-height:0;grid-template-columns:132px minmax(0,1fr);overflow:hidden}
  .service-card>div:not(.energy-collage){display:flex;flex-direction:column;justify-content:center;padding:1.5rem 1.65rem}
  .service-card>.energy-collage{height:100%;min-height:0}
  .service-card h3{font-size:clamp(1.55rem,2.15vw,2.25rem);line-height:1.08;margin:.45rem 0 .7rem}
  .service-card p{font-size:.94rem;line-height:1.5}
  .service-card .inline-link{margin-top:.8rem}
}
.instagram-nav{display:inline-flex!important;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--line)!important;border-radius:50%;color:var(--navy)!important;transition:background .2s,color .2s,border-color .2s}
.instagram-nav:hover{background:var(--navy);border-color:var(--navy)!important;color:#fff!important}
.instagram-nav svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.newsletter-instagram{display:inline-flex;align-items:center;justify-content:center;width:max-content;margin-top:1.35rem;padding:.7rem .95rem;border:1px solid rgba(255,255,255,.72);color:#fff;font-weight:700;font-size:.88rem;transition:background .2s,color .2s}
.newsletter-instagram:hover{background:#fff;color:#082b3a}
@media(max-width:850px){.service-card>.energy-collage{min-height:220px}}
@media(max-width:420px){.service-card>.energy-collage{min-height:190px}}

.newsletter{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);gap:7vw;align-items:center;padding:7rem 10vw;background:linear-gradient(135deg,#082b3a 0%,#124353 56%,#1c5e70 100%);color:#fff}
.newsletter h2{font-size:clamp(2.3rem,4vw,4.15rem);color:#fff}.newsletter h2 em{color:#b9d0d3}
.newsletter-copy>p:not(.eyebrow){max-width:600px;font-size:1.08rem;color:#e3eeee}.newsletter-copy small{display:block;max-width:550px;color:#c6d9da;font-size:.78rem;line-height:1.55;margin-top:1.5rem}
.newsletter-form{background:#fffdfa;padding:1.4rem;border-radius:2px;box-shadow:0 20px 48px rgba(0,0,0,.22)}
.newsletter-form iframe{display:block;width:100%;height:560px;max-width:540px;border:0;margin:auto}
@media(max-width:850px){.newsletter{grid-template-columns:1fr;padding:5.2rem 7vw;gap:2.2rem}.newsletter-form{padding:.7rem}.newsletter-form iframe{height:580px}}

.partners{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:7vw;align-items:center;padding:6.5rem 10vw;background:#fffdfa}
.partners h2{font-size:clamp(2.3rem,4vw,4.15rem)}.partners-intro>p:not(.eyebrow){max-width:650px}.partners-intro small{display:block;margin-top:1.4rem;color:#6c8186;font-size:.76rem}
.partner-logos{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.partner-logo{display:flex;align-items:center;justify-content:center;min-height:132px;padding:1.5rem;border:1px solid #d9e0de;background:#fff;text-align:center}.partner-logo.victron{flex-direction:column;background:#0066b3;color:#fff;font-family:var(--sans);font-weight:700;letter-spacing:-.06em;font-size:clamp(1.7rem,3vw,2.5rem)}.partner-logo.victron small{font:500 .48em var(--sans);letter-spacing:.16em;margin-top:.08rem}.partner-logo.mastervolt{color:#006f72;border-color:#a5c7c5;font:700 clamp(1.25rem,2.1vw,1.85rem) var(--sans);letter-spacing:.02em}
@media(max-width:850px){.partners{grid-template-columns:1fr;padding:5.2rem 7vw;gap:2.2rem}.partner-logo{min-height:115px}}@media(max-width:420px){.partner-logos{grid-template-columns:1fr}}
