/* H&G Somerset: subtle photo-header headline refinement */
.header-wrapper .hero-title {
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.22) !important;
  display: inline-block !important;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.12em 0.28em !important;
  border-radius: 4px;
  background: rgba(45, 54, 62, 0.22) !important;
}

/* H&G Somerset: match page body text to readable photo captions */
body.page .page-content .hentry p,
body.page .page-content .hentry li {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #354352;
}

/* H&G Somerset: prevent theme clearfix from displacing carousel photos */
.jp-carousel-overlay .jp-carousel-container::before,
.jp-carousel-overlay .jp-carousel-container::after {
  content: none;
  display: none;
}

/* H&G Somerset: larger main page copy for easier reading */
body.page .page-content .hentry p,
body.page .page-content .hentry li,
body.home .page-content p {
  font-size: 18px;
  line-height: 1.55;
}

/* H&G Somerset: readable homepage insurance, reviews and guarantee text */
body.home #overlappable-1 h5 {
  font-size: 18px;
  line-height: 1.5;
}


/* H&G Somerset: refined header strapline on phones */
@media (max-width: 767px) {
  .header-subtitle {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }
}

/* H&G Somerset: gradual section and card refinement, October 2026 */
.hg-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; margin:32px 0 48px; }
.hg-service-card { background:#fff; border:1px solid #dce5df; border-radius:12px; overflow:hidden; display:flex; flex-direction:column; box-shadow:0 5px 18px rgba(35,62,47,.055); }
.hg-service-card img { display:block; width:100%; height:240px; object-fit:cover; }
.hg-service-card .hg-card-body { padding:26px; display:flex; flex:1; flex-direction:column; align-items:flex-start; }
.hg-service-card h3 { margin:0 0 12px; font-size:24px; line-height:1.25; color:#253f35; }
.hg-service-card p { margin:0 0 22px; }
.page-content a.hg-button, .page-content .hg-review-links a { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:12px 20px; min-height:46px; border:1px solid #315d49; border-radius:6px; background:#315d49; color:#fff; text-decoration:none; font-size:16px; font-weight:600; line-height:1.35; letter-spacing:0; transition:background-color .18s ease,box-shadow .18s ease; }
.hg-service-card .hg-button { margin-top:auto; }
.page-content a.hg-button:hover { background:#244837; box-shadow:0 3px 10px rgba(35,62,47,.15); }
.page-content a.hg-button:focus-visible, .page-content .hg-review-links a:focus-visible { outline:3px solid #1d7196; outline-offset:4px; }
.hg-review-links { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:30px; }
.page-content .hg-review-links a { color:#253f35; background:#fff; border-color:#ccd9d0; }
.page-content .hg-review-links a:hover { background:#eaf1ed; }
.hg-review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:30px; text-align:left; }
.hg-review-card { margin:0; padding:28px; border:1px solid #dce5df; border-top:3px solid #49735a; border-radius:10px; background:#fff; box-shadow:0 5px 18px rgba(35,62,47,.055); }
.hg-review-card p { color:#354352; }
.hg-review-card cite { display:block; color:#315d49; font-size:16px; font-style:normal; font-weight:600; }
@media(max-width:767px) { .hg-service-grid,.hg-review-grid { grid-template-columns:1fr; gap:20px; } .hg-service-card img { height:220px; } .hg-service-card .hg-card-body,.hg-review-card { padding:22px; } .hg-review-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); } .page-content .hg-review-links a { padding:12px 10px; } }
@media(prefers-reduced-motion:reduce) { .page-content a.hg-button,.page-content .hg-review-links a { transition:none; } }

.hg-service-grid::before,.hg-service-grid::after,.hg-review-grid::before,.hg-review-grid::after,.hg-review-links::before,.hg-review-links::after { content:none !important; display:none !important; }
.hg-review-card::before,.hg-review-card::after { content:none !important; display:none !important; }

/* H&G: balanced sections and compact mobile headlines */
.page-content h2{color:#294b39;line-height:1.25}.page-content h3{color:#294b39}.hg-service-card,.hg-review-card{box-shadow:0 7px 20px rgba(35,62,47,.08)}.hg-review-section{border-top:1px solid #dce5df;padding-top:32px;margin-top:36px}.page-content .wp-block-gallery{gap:20px}.page-content .wp-block-gallery img{border-radius:10px}.page-content a.hg-button{border-radius:9px}.hg-platform-bar .gridContainer{max-width:100%;box-sizing:border-box}.home #overlappable-1{margin-top:0!important;padding-top:36px;padding-bottom:36px}.home #overlappable-1 h5{letter-spacing:.025em;font-weight:600;color:#294b39}.home #overlappable-1 .icon{color:#477a5b;border-color:#bdd1c4;box-shadow:0 6px 16px rgba(35,62,47,.10)}@media(max-width:767px){.header-wrapper .hero-title,.header-wrapper h1{font-size:27px!important;line-height:1.22!important;letter-spacing:0!important}.header-subtitle{font-size:15px!important;line-height:1.45!important}.page-content h2{font-size:27px!important;line-height:1.25!important}.page-content h3{font-size:22px!important}.home #overlappable-1{padding-top:26px;padding-bottom:20px}.home #overlappable-1 h5{font-size:16px;line-height:1.45}.hg-review-section{padding-top:24px;margin-top:28px}}
/* Keep the fixed homepage navigation readable on its white background. */
.home .navigation-bar.fixto-fixed #main_menu > li > a{color:#294b39!important}
.home .navigation-bar.fixto-fixed #main_menu > li > a:hover{color:#477a5b!important}
