.page-hero{padding:82px 0 62px;color:#fff;background:linear-gradient(120deg,rgba(10,28,42,.97),rgba(19,57,82,.9)),url("../images/hero-home.jpg") center/cover no-repeat}.page-hero .eyebrow{color:var(--gold,#d9a441)}.page-hero h1{max-width:900px;margin:10px 0 18px;font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.02;letter-spacing:-.04em}.page-hero p:last-child{max-width:760px;margin:0;color:rgba(255,255,255,.82);font-size:1.12rem}.content-narrow{max-width:820px}.page-lead{color:var(--navy,#122233);font-size:1.22rem;font-weight:600}.page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.info-card{padding:28px;border:1px solid var(--light-gray,#e3e8ed);background:#fff;border-radius:var(--radius,14px);box-shadow:0 8px 28px rgba(22,45,65,.06)}.info-card h2,.info-card h3{margin-top:0;color:var(--navy,#122233)}.service-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-detail-card{padding:28px;border-top:4px solid var(--blue,#1967a3);background:var(--off-white,#f5f7f9);border-radius:0 0 var(--radius,14px) var(--radius,14px)}.service-detail-card h2,.service-detail-card h3{margin-top:0;color:var(--navy,#122233)}.service-detail-card p{color:var(--gray,#66727e)}.clean-list{padding-left:20px}.clean-list li{margin-bottom:8px}.page-cta{padding:55px 0;color:#fff;background:var(--blue,#1967a3)}.page-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.page-cta h2{margin:0 0 8px;color:#fff}.page-cta p{margin:0;color:rgba(255,255,255,.82)}.contact-options{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.contact-option{padding:28px;text-align:center;border:1px solid var(--light-gray,#e3e8ed);background:#fff;border-radius:var(--radius,14px)}.contact-option strong,.contact-option a{display:block}.contact-option strong{margin-bottom:8px;color:var(--navy,#122233);font-size:1.15rem}.contact-option a{color:var(--blue,#1967a3);font-weight:800;text-decoration:none}.faq-page-list{display:grid;gap:14px}.faq-page-list details{padding:19px 21px;border:1px solid var(--light-gray,#e3e8ed);background:#fff;border-radius:10px}.faq-page-list summary{cursor:pointer;color:var(--navy,#122233);font-weight:800}.faq-page-list p{margin-bottom:0}@media(max-width:900px){.service-detail-grid,.contact-options{grid-template-columns:repeat(2,1fr)}.page-cta-inner{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.page-grid,.service-detail-grid,.contact-options{grid-template-columns:1fr}.page-hero{padding:65px 0 48px}}


.page-cta-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
.button-outline-light{border:1px solid rgba(255,255,255,.75);color:#fff;background:transparent}
.button-outline-light:hover,.button-outline-light:focus-visible{color:#10283f;background:#fff}
@media(max-width:700px){.page-cta-actions{width:100%;justify-content:stretch}.page-cta-actions .button{width:100%;text-align:center}}


/* Spam honeypot: must never be visible to human visitors. */
.contact-honeypot {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.contact-honeypot input {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Meet the Owner */
.about-owner-with-photo{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.35fr);gap:48px;align-items:center}
.about-owner-photo{max-width:430px}
.about-owner-photo img{display:block;width:100%;height:auto;border-radius:12px;object-fit:cover}
.about-owner-copy h2{margin-bottom:6px}
.owner-role{margin-top:0;color:var(--color-navy,#10283f)}
@media(max-width:760px){.about-owner-with-photo{grid-template-columns:1fr;gap:28px}.about-owner-photo{max-width:520px;margin:0 auto}}


/* Combined owner + Utah RV Power standard */
.owner-standard-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(330px, .85fr);
  gap: 48px;
  align-items: start;
}
.owner-profile-column {
  display: grid;
  grid-template-columns: minmax(210px, .72fr) minmax(0, 1.28fr);
  gap: 32px;
  align-items: start;
}
.owner-profile-photo {
  overflow: hidden;
  border-radius: 14px;
  background: #eef2f5;
}
.owner-profile-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}
.owner-profile-copy h2 {
  margin-bottom: 10px;
}
.owner-personal {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--color-light-gray, #dfe5ea);
}
.owner-standard-card {
  position: sticky;
  top: 105px;
}

@media (max-width: 1100px) {
  .owner-standard-layout {
    grid-template-columns: 1fr;
  }
  .owner-standard-card {
    position: static;
  }
}
@media (max-width: 720px) {
  .owner-profile-column {
    grid-template-columns: 1fr;
  }
  .owner-profile-photo {
    max-width: 420px;
    margin: 0 auto;
  }
}


/* Keep in-page section links visible below the sticky navigation. */
section[id] {
  scroll-margin-top: 105px;
}
