/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/

/* =========================================================
   Riva Heat – Global Stylesheet 
   ========================================================= */

/* =========================================================
   Global typography
   ========================================================= */
h1,
h2,
h3 {
  text-transform: capitalize !important;
}

h1,
h2,
h3,
h4 {
  text-wrap: pretty;
}

.nationwide_network_row .wpb_text_column p {
  text-wrap: pretty;
}

main .wpb_text_column p a {
  text-decoration: underline;
}

.laptoponly {
  display: none;
}

/* =========================================================
   Global button styling
   ========================================================= */
button.w-btn.us-btn-style_1:hover,
a:hover.w-btn {
  /* transform: scale(1.05); */
}

/* =========================================================
   Contact Form Styling 
   ========================================================= */
p.form_label_text {
  margin-bottom: 8px;
  font-weight: bold;
  padding-top: 8px;
}

.page-id-1682 .wpcf7-form-control.wpcf7-file::before {
  content: "Choose File";
  position: absolute;
  background-color: var(--color-alt-content-secondary);
  color: white;
  padding-left: 8px;
  padding-right: 8px;
  display: inline-block;
  font-size: 16px;
  cursor: pointer;
  text-align: center;
  left: 0px;
  border-radius: 12px;
  padding-top: 1px;
  padding-bottom: 1px;
}

.installer_form input.wpcf7-form-control.wpcf7-submit.has-spinner {
  width: 100%;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner {
  background: var(--color-alt-content-secondary);
}

input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
  background: #1f8022 !important;
}

/* =========================================================
   FAQ's page
   ========================================================= */
.faqs_tabs button.w-tabs-item.active {
  background: var(--color-alt-content-secondary) !important;
  color: white !important;
  font-weight: 600;
}

.faqs_tabs button.w-tabs-item {
  border: 2px solid #4caf50;
  font-weight: 600;
}

.faqs_tabs .w-tabs-list-h {
  grid-gap: 15px;
}

/* =========================================================
   Service page styling
   ========================================================= */
.solar_calculator_container {
  background: white;
  border-radius: 16px;
  padding: 40px 0px;
}

.inclusions_row_one .vc_column-overlay {
  background: linear-gradient(
    0deg,
    color(srgb 0.1 0.13 0.27 / 0.95),
    color(srgb 0.1 0.13 0.27 / 0.4)
  ) !important;
}

.service_why_choose img {
  border-radius: 16px;
}

.inclusions_modal .w-popup-box-content {
  border-radius: 0px 0px 16px 16px;
}

.inclusions_row_one p {
  font-weight: 600;
}

.inclusions_row_two_left,
.inclusions_row_two_right {
  padding: 20px 20px 40px 20px;
}

.inclusions_row_two_left p,
.inclusions_row_two_right p {
  text-wrap: pretty;
  font-weight: 600;
}

.inclusions_row_two_left img,
.inclusions_row_two_right img {
  max-width: 250px;
  margin: 0px auto 20px auto;
  display: table;
}

.inclusions_row_two_left,
.inclusions_row_two_right {
  background: #2f3c7d;
  border-radius: 16px;
}

.inclusions_row_one .vc_column_container {
  min-height: 500px;
}

.inclusions_row_one .wpb_text_column {
  max-width: 700px;
  margin: auto;
  text-wrap: pretty;
}

.service_page_hero {
  background: var(--color-alt-content-bg);
}

.service_hero_right {
  border-radius: 16px;
}

.service_hero_left {
  background: white;
  padding: 20px 40px;
  border-radius: 16px;
}

.service_hero_left h1 {
  margin-bottom: 16px;
}

.service_brands_grid .w-gallery-item {
  aspect-ratio: auto !important;
}

.page-id-16 .inclusions_row_one .vc_column_container {
  background-position: 50% 25% !important;
}

.inclusions_row_one .vc_column_container {
  border-radius: 16px;
}

/* =========================================================
   Homepage hero section 
   ========================================================= */
.hero_new_gallery .w-gallery-item {
  aspect-ratio: auto !important;
}

.hero_new_gallery {
  max-width: 800px;
  margin: auto;
}

.hero_finance_roundel {
  background: var(--color-alt-content-secondary);
  color: white;
  padding: 4px 8px;
  font-weight: 600;
  display: inline-block;
  border-radius: 30px;
  float: right;
  font-size: 11px;
}

.hero_finance_roundel p {
  font-size: 11px;
}

.riva_hero_inner .vc_column_container:hover {
  background: #2f3c7d;
  /* transform: scale(1.08); */
}

.riva_hero_inner .vc_column_container:hover a {
  color: white;
  transition: none;
}

.riva_hero_inner .vc_column_container a {
  transition: none;
}

.riva_hero_inner .vc_column_container:hover p {
  color: white;
}
.riva_hero_intro {
  padding-bottom: 60px;
}

.riva_hero_intro p {
  font-size: 24px;
}

.riva_hero_inner h3 {
  margin-bottom: 12px;
}

.riva_hero_inner .vc_column_container {
  background: white;
  border-radius: 16px;
  padding: 16px;
  padding-bottom: 20px;
  color: #4a4a4a;
  /* box-shadow: 0 10px 30px rgba(0, 0, 0, .08); */
}

.riva_hero_inner img {
  width: 180px;
  margin-left: auto;
  margin-right: auto;
  display: table;
  margin-bottom: 20px;
}

.riva_hero_inner p {
  font-size: 12px;
}

.riva_hero_inner a.w-btn {
  font-size: 14px;
  margin-top: 24px;
}

.riva_hero {
  background: var(--color-alt-content-bg);
}

.riva_hero_intro h1,
.riva_hero_intro {
  color: white;
}

a.circular_arrow_cta {
  background: var(--color-content-primary);
  color: white;
  width: 40px;
  height: 40px;
  display: inline-flex;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  font-size: 20px;
}

a:hover.circular_arrow_cta {
  background: var(--color-alt-content-secondary);
  color: white;
  transition: none;
}

.riva_hero_ctabox {
  display: grid;
  align-items: end;
  grid-template-columns: auto 40px;
  justify-content: space-between;
  grid-gap: 20px;
}

.riva_ctabox_text h4 {
  margin-bottom: 6px;
}

.riva_ctabox_text h4 a {
  color: var(--color-content-text);
}

/* =========================================================
   Logos row
   ========================================================= */
.riva_logos_row h4 {
  margin-top: 40px;
  margin-bottom: 8px;
}

.riva_logos_row {
  padding-top: 0px !important;
  padding-bottom: 20px !important;
}

.riva_logos_row img {
  filter: invert(1);
}

.riva_logos_row img {
  width: 130px;
  height: auto;
  margin: auto;
  display: table;
}

.service_brands_grid img {
  width: 150px;
  height: auto;
  margin: auto;
  display: table;
}

.riva_logos_row .owl-carousel,
.service_brands_grid {
  max-width: 800px;
  margin: auto;
}

/* =========================================================
   Most popular packages section
   ========================================================= */
.package_sale_badge {
  background: var(--color-alt-content-secondary);
  border-radius: 12px 12px 0px 0px;
  color: white;
  font-weight: 600;
  font-size: 14px;
  padding: 4px 8px;
  text-align: center;
}

/* .popular_packages_row .w-grid-item-h:hover {
  transform: scale(1.05);
} */

.installation_package_special {
  padding: 8px;
  background: var(--color-alt-content-bg-alt);
  border-radius: 12px 12px 0px 0px;
  text-align: center;
  font-weight: bold;
  color: white;
}

.installation_package_title a {
  color: var(--color-content-text) !important;
  font-weight: 600;
}

.installation_package_title a:hover {
  color: var(--color-content-link-hover) !important;
}

.installation_package_img {
  background: linear-gradient(0deg, #edf0ff, #a2b2ff);
  padding: 16px;
}

.installation_package_img img {
  filter: drop-shadow(3px 4px 9px rgb(0, 0, 0, 0.33));
}

.installation_package_usp i {
  color: #4caf50;
  margin-right: 10px !important;
}

.installation_package_savings {
  color: #2f3c7d;
  border: 1px solid #2f3c7d;
  font-size: 12px;
  font-weight: 600;
  border-radius: 30px;
  padding: 6px 12px;
  display: inline-block;
}

.installation_package_finance {
  border: 1px solid #4caf50;
  display: inline-block;
  border-radius: 30px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 600;
  color: #4caf50;
  align-self: flex-start;
}

.installation_package_btn {
  display: block;
  margin-top: 40px;
  margin-bottom: 20px;
  font-size: 14px !important;
}

.installation_package_usp {
  margin-bottom: 15px !important;
  font-size: 14px;
}

.installation_package_title {
  margin-bottom: 15px !important;
  margin-top: 15px;
}

.installation_price_from {
  color: #2f3c7d;
  font-weight: 600;
  font-size: 24px;
  line-height: 1;
}

.installation_survey_text {
  font-size: 10px;
  color: #858585;
  margin-top: 8px;
}

.installation_from_label {
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
}

.package_content_wrapper {
  padding-left: 20px;
  padding-right: 20px;
}

.installation_previous_price {
  font-weight: 600;
  text-decoration: line-through;
  font-size: 14px;
  line-height: 1;
  color: var(--color-content-primary);
}

.installation_previous_price:before {
  content: "Was ";
}

.installation_from_label {
  padding-top: 20px;
}

/* Make Owl items equal-height */
.popular_packages_row .w-grid-list.owl-carousel .owl-stage {
  display: flex;
}

.popular_packages_row .w-grid-list.owl-carousel .owl-item {
  display: flex;
}

.popular_packages_row .w-grid-list.owl-carousel .owl-item > article,
.popular_packages_row .w-grid-list.owl-carousel .owl-item .w-grid-item-h {
  display: flex;
  flex: 1;
}

/* Stack image above content (column layout) */
.popular_packages_row article.packages .w-grid-item-h {
  flex-direction: column;
}

/* Ensure image remains full width */
.popular_packages_row article.packages .installation_package_img,
.popular_packages_row article.packages .installation_package_img a,
.popular_packages_row article.packages .installation_package_img img {
  display: block;
  width: 100%;
}

/* Make the content wrapper fill remaining space and push button down */
.popular_packages_row article.packages .package_content_wrapper {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  /* prevents flex overflow weirdness */
}

/* Push CTA to bottom */
.popular_packages_row article.packages .installation_package_btn {
  margin-top: auto !important;
  /* overrides any existing margin-top */
}

/* =========================================================
   Homepage 3 steps section
   ========================================================= */
.riva-steps {
  --radius: 16px;
  --speed: 15;
  /* seconds per full loop */
}

.riva-steps__inner {
  margin: 0 auto;
}

.riva-steps__header {
  text-align: center;
  margin-bottom: 28px;
}

.riva-steps__title {
  margin: 0;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.1;
}

.riva-steps__sub {
  margin: 10px 0 0;
  opacity: 0.75;
  font-size: 15px;
}

/* Desktop images */
.riva-steps__images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin: 24px 0 18px;
}

.riva-step__img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 22px;
  display: block;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  transition:
    opacity 240ms ease,
    filter 240ms ease;
}

/* Desktop progress */
.riva-progress {
  position: relative;
  height: 54px;
  margin: 12px 6px 22px;
}

.riva-progress__track,
.riva-progress__fill {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 3px;
  border-radius: 999px;
}

.riva-progress__track {
  background: rgba(0, 0, 0, 0.12);
}

.riva-progress__fill {
  background: var(--color-alt-content-bg-alt);
  width: var(--progress);
  right: auto;
  transition: width 160ms linear;
}

/* FIX: numbers always visible */
.riva-node {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: #fff;
  border: 2px solid var(--color-alt-content-bg-alt);

  display: grid;
  place-items: center;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.06);
}

.riva-node[data-step="1"] {
  left: 0%;
  transform: translate(0, -50%);
}

.riva-node[data-step="3"] {
  left: 100%;
  transform: translate(-100%, -50%);
}

.riva-node__num {
  font-weight: 800;
  font-size: 13px;
  line-height: 1;
  color: rgba(0, 0, 0, 0.72);
  position: relative;
  z-index: 2;
  /* <-- ensures it never hides */
}

.riva-node.is-active {
  background: var(--color-alt-content-bg-alt);
  border-color: var(--color-alt-content-bg-alt);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.12);
}

.riva-node.is-active .riva-node__num {
  color: white;
}

/* Desktop cards */
.riva-steps__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.riva-card {
  background: white;
  border-radius: var(--radius);
  padding: 18px 18px 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  transition:
    opacity 240ms ease,
    filter 240ms ease;
}

.riva-card__title {
  margin: 0 0 8px;
}

.riva-card__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
  opacity: 0.82;
}

/* Desktop fade inactive */
.riva-step:not(.is-active) .riva-step__img,
.riva-card:not(.is-active) {
  opacity: 0.55;
  filter: grayscale(0.15);
}

/* Mobile */
.riva-mobile {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .riva-progress__fill,
  .riva-mobile__fill,
  .riva-step__img,
  .riva-card {
    transition: none !important;
  }
}

/* Tidy later */
.three_options_inner .wpb_column.vc_column_container.has-link {
  background: white;
  border-radius: 12px;
  padding: 20px;
  border: 1px solid var(--color-content-border);
}

.three_options_inner .wpb_column.vc_column_container.has-link:hover {
  color: white;
  background: linear-gradient(45deg, #d5007d 0%, #68329c 100%);
}

.boiler_package_title {
  text-wrap: pretty;
}

.sticky-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
  line-height: 1.2;
  font-size: 16px;
  font-weight: 600;
}

div#energy-sticky-row {
  color: white;
  /* background: var(--color-alt-content-secondary); */
  background: var(--color-content-primary);
  position: fixed;
  bottom: 0px;
  left: 0px;
  right: auto;
  width: 100%;
  padding-top: 12px;
  padding-bottom: 12px;
  box-shadow: 0px 4px 9px black;
  z-index: 100;
}

div#energy-sticky-row:hover {
  background: var(--color-alt-content-secondary);
}

#energy-sticky-close {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: #fff;
  cursor: pointer;
  padding: 10px 12px;
  font-size: 22px;
  line-height: 1;
}

a.sticky-quote-btn {
  background: white;
  color: #1f1f1f;
  display: inline-block;
  padding: 12px 24px;
  border-radius: 30px;
}

a:hover.sticky-quote-btn {
  background: #1f1f1f;
  color: white;
}

/* =========================================================
   Simplified Quote Pages
   ========================================================= */
.need_help_cta_row {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.quote_launchpad_container .wpb_column.vc_column_container {
  background: white;
  border-radius: 16px;
  padding: 40px 20px 60px 20px;
  /* Padding goes clockwise from the top padding (12 o clock), then right, then bottom, then left */
}

.quote_launchpad_container {
  padding-bottom: 100px !important;
}

/* =========================================================
   Blog post floating CTA
   ========================================================= */
span.cta_product_label {
  color: var(--color-content-link);
}

.bc-blog-cta {
  z-index: 2;
  position: fixed;
  width: 300px;
  top: 50%;
  right: 0px;
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.bc-blog-cta h3 {
  text-transform: none !important;
  margin-bottom: 12px;
}

.bc-blog-cta p {
  font-size: 14px;
}

.bc-blog-cta.hide {
  opacity: 0;
  transform: translateY(-10px);
}

.bc-blog-cta__inner {
  padding: 20px 30px;
  border-radius: 14px;
  background: white;
  border: 1px solid var(--color-content-border);
  box-shadow: 3px 4px 9px rgb(0, 0, 0, 0.25);
}

.bc-blog-cta__title {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.25;
}

.bc-blog-cta__subtitle {
  margin: 0 0 16px;
  font-size: 15px;
  opacity: 0.85;
}

.bc-blog-cta__button {
  display: inline-block;
  padding: 12px 18px;
  border-radius: 12px;
  text-decoration: none;
  background: #6c1c78;
  color: #fff;
  font-weight: 700;
}

.bc-blog-cta__button:hover {
  opacity: 0.92;
}

.bc-blog-cta__close {
  position: absolute;
  top: 10px;
  right: 14px;
  background: none;
  border: none;
  font-size: 22px;
  cursor: pointer;
  line-height: 1;
  opacity: 0.6;
}

.bc-blog-cta__close:hover {
  opacity: 1;
}

/* =========================================================
   About us page
   ========================================================= */
.team_member_wrapper {
  background: var(--color-content-secondary);
  border-radius: 12px;
  padding: 20px;
  color: white;
}

.team_member_wrapper strong {
  background: #2f3c7d;
  border-radius: 30px;
  font-weight: 600;
  font-size: 14px;
  display: inline-block;
  padding: 4px 18px;
  margin-top: 5px;
  margin-bottom: 15px;
}

.team_member_wrapper p {
  font-size: 14px;
}

.environment_row,
.environment_row h2 {
  color: white;
}

.team_row .w-person {
  /* background: white; */
  border-radius: 12px;
  padding: 20px;
  /* border: 1px solid var(--color-content-border); */
}

.team_member_wrapper img {
  min-width: 100px;
  border-radius: 100%;
}

.team_member_wrapper h4 {
  margin-bottom: 8px;
  font-weight: bold;
  color: white;
}

.team_member_wrapper p:first-of-type {
  margin-bottom: 8px;
}

/* =========================================================
   Contact Page 
   ========================================================= */
.contact_installer_row {
  padding-top: 0px !important;
}

.contact_right {
  background: white;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid var(--color-content-border);
  padding: 20px 40px;
}

.contact_right input.wpcf7-form-control.wpcf7-submit.has-spinner {
  width: 100%;
}

.contact_page_phone p {
  font-size: 20px;
  font-weight: 600;
  font-family: Manrope, sans-serif;
}

.contact_page_phone a {
  color: var(--color-alt-content-bg-alt);
}

.contact_page_phone {
  align-items: center !important;
}

.contact_page_phone span {
  font-size: 14px;
}

/* =========================================================
   Blog author page 
   ========================================================= */
.author_grid .post-author-name {
  font-size: 24px;
  font-weight: 600;
  font-family: var(--h1-font-family);
}

.author_grid h2 {
  font-weight: 600;
  font-size: 24px;
}

/* =========================================================
   Individual Blog Post Template 
   ========================================================= */
.single-post div#energy-sticky-row {
 display: none !important;
}

.blog_subscribe_row {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.blog_subscribe_row p {
  font-size: 14px;
}

.blog_subscribe_row h3 {
  margin-bottom: 8px;
}

.newsletter_form span.wpcf7-spinner {
  position: absolute;
}

.blog_subscribe_row p a {
  color: white;
}

.blog_subscribe_row input {
  color: var(--color-content-text) !important;
}

.newsletter_form {
  display: flex;
  grid-gap: 20px;
  align-items: center;
}

.newsletter_form span.wpcf7-form-control-wrap {
  margin: 0px;
}

.newsletter_form p {
  margin: 0px;
}

.blog_subscribe_row {
  border-radius: 12px;
}

.single_post_author_row {
  padding-bottom: 60px !important;
}

.related_posts {
  padding-top: 0px !important;
}

.blog_post_content_container section:first-of-type {
  padding-top: 0px !important;
}

/* Author info  */
.single_post_author_row {
  padding-top: 20px !important;
}

.single_post_author_row .post_author img {
  border: 0px !important;
}

.single_post_author_row .wpb_column.vc_column_container {
  background: #dbe1ff;
  padding: 20px;
  border-radius: 12px;
}

.single_post_author_row .post-author-meta:before {
  content: "Written by: " !important;
  margin-right: 2px;
  font-size: 20px !important;
  font-weight: 600;
}

.single_post_author_row a.post-author-name.fn,
.single_post_author_row a:hover.post-author-name.fn {
  display: inline-block !important;
}

.single_post_author_row .post-author-info {
  font-size: 14px;
  margin-top: 8px;
}

.single_post_author_row
  .w-post-elm.post_author.vcard.author.with_ava.avapos_left {
  align-items: flex-start;
}

.single_post_author_row a.post-author-name.fn {
  color: var(--color-content-text);
  font-size: 20px;
  font-weight: 600;
}

.single_post_author_row a:hover.post-author-name.fn {
  color: #fe0002;
  display: block;
}

.single-post .blog_post_hero .post_author {
  font-size: 14px;
}

.single_post_author_row .post-author-ava img {
  width: 100px;
}

.blog_post_hero .post-author-ava img {
  width: 64px;
}

.single-post .post-author-ava {
  width: auto;
}

.single-post a.post-author-name.fn {
  text-decoration: underline;
}

.single-post .blog_post_hero .post-author-meta:before {
  content: "Written by";
}

.single-post .post_author img {
  border: 2px solid #6c1c78;
}

.author_bio_only a.post-author-name.fn {
  display: none !important;
}

.author_bio_only .post-author-meta:before {
  display: none;
}

.author_bio_only .post-author-info {
  font-size: 14px;
  line-height: 1.5;
  margin-top: 20px;
}

/* ============================================== */

/* Post hero section  */
.blog_post_hero {
  padding-bottom: 0px !important;
}

.blog_post_hero .post_taxonomy {
  font-size: 14px;
}

.blog_post_hero .post_taxonomy a {
  text-decoration: underline;
}

.blog_post_hero span.w-post-elm-before {
  display: block;
  font-weight: bold;
}

.blog_post_hero time {
  font-size: 14px;
}

.blog_post_featured_img img {
  border-radius: 12px;
}

/* ============================================== */

.blog_post_content_container {
  padding-top: 0px !important;
}

.blog_post_content_container section {
  padding-left: 0px;
  padding-right: 0px;
}

/* =========================================================
   Footer Styling
   ========================================================= */
.footer_top_row .w-iconbox-link:hover .w-iconbox-icon {
  background: #8c9fff !important;
}

.footer_top_row span.w-socials-item-link-hover {
  background: white;
  color: #2f3c7d !important;
}

.footer_top_row a.w-socials-item-link {
  background: #2f3c7d !important;
  color: white !important;
}

.fca_text {
  font-size: 12px;
}

.footer_top_row h4 {
  margin-bottom: 16px;
}

.footer_accreds img {
  border-radius: 16px;
}

.footer_logo {
  width: 225px;
  filter: brightness(200);
}

.footer_socials a {
  font-size: 18px;
}

.footer_card_logos {
  max-width: 150px;
}

footer nav li a {
  font-size: 14px;
}

footer span.w-iconbox-title {
  font-size: 14px;
}

.footer_copyright,
.footer_angelo_link {
  font-size: 12px;
}

.footer_policy_menu .menu {
  display: grid !important;
  width: 100%;
}

.footer_top_row {
  padding-bottom: 0px !important;
}

footer nav li a:hover {
  color: var(--color-footer-link-hover) !important;
}

/* =========================================================
   Blogs
   ========================================================= */
.blog_post_hero_top nav.g-breadcrumbs a {
  color: white;
}

.blog_category_menu a {
  background: var(--color-content-link);
  color: white !important;
  border-radius: 30px;
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 600;
}

.blog_category_menu a:hover {
  background: var(--color-content-link-hover);
}

.blog_archive_bio .post-author-name {
  display: none;
}

.post-author-info {
  font-size: inherit;
}

.blog_archive_hero {
  padding-bottom: 0px !important;
}

.blog_archive_hero .post-author-meta {
  display: none;
}

nav.g-breadcrumbs a {
  color: var(--color-content-text);
}

nav.g-breadcrumbs a:hover {
  color: var(--color-content-link);
}

nav.g-breadcrumbs {
  font-size: 12px;
}

nav.g-breadcrumbs a {
  text-decoration: underline;
}

.grid_author_name a.post-author-name.fn {
  color: white;
  text-decoration: underline;
  font-size: 12px;
}

.grid_author_name a:hover.post-author-name {
  color: var(--color-content-link);
}

.grid_author_name:before {
  content: "By";
  color: white;
}

.grid_author_name {
  display: inline-flex;
  grid-gap: 3px;
  font-size: 12px;
  align-items: center;
  justify-content: flex-start;
}

.grid_author_name .post-author-meta {
  flex-grow: 0;
  width: auto;
}

.blogs_row .post_taxonomy a,
.blogs_grid .post_taxonomy a {
  background: #2f3c7d;
  display: inline-block;
  color: white !important;
  font-size: 12px;
  padding: 6px 12px;
  border-radius: 30px;
  font-weight: 600;
}

.grid_posted_on span.w-post-elm-before,
.grid_updated_on span.w-post-elm-before {
  font-weight: 400;
}

.grid_posted_on,
.grid_updated_on {
  font-size: 12px;
  font-weight: 600;
  color: white !important;
}

.grid_updated_on {
  margin-bottom: 8px;
}

.grid_posted_on {
  margin-bottom: 0px;
}

.blogs_row .post_taxonomy,
.blogs_grid .post_taxonomy {
  margin-top: 20px;
}

.blogs_row {
  background: white;
}

.blogs_row h3 a,
.blogs_grid h3 a {
  color: white;
}

.blogs_row h3,
.blogs_grid h3 {
  font-weight: 600;
}

.blogs_row h3 a:hover,
.blogs_grid h3 a:hover,
.grid_author_name a:hover.post-author-name.fn {
  color: var(--color-alt-content-link-hover);
}

.blogs_row .w-grid-item-h,
.blogs_grid .w-grid-item-h {
  padding: 20px !important;
}

.blogs_row .post_image img,
.blogs_grid .post_image img,
.keeping_nation_warm img {
  border-radius: 12px;
}

.blog_grid_content {
  padding: 40px 0px;
}

/* =========================================================
   FAQ's
   ========================================================= */
.faq_img_col {
  border-radius: 12px;
  min-height: 300px;
}

.faq_still_need_help h4 {
  margin-bottom: 8px;
}

.faq_still_need_help a.w-btn {
  margin-top: 24px;
}

/* =========================================================
   Accordions styling
   ========================================================= */
button.w-tabs-section-header {
  background: white;
  border-radius: 12px;
  font-weight: 600;
  transition: none;
}

.w-tabs.accordion > div > .w-tabs-section {
  border: 1px solid var(--color-alt-content-bg);
  border-radius: 12px;
  background: white;
  margin-bottom: 20px;
}

button.w-tabs-section-header.active,
button.w-tabs-section-header.active:hover,
button.w-tabs-section-header.active:focus {
  background: var(--color-alt-content-bg) !important;
  color: white !important;
  border-radius: 12px 12px 0px 0px;
  transition: none;
}

button.w-tabs-section-header:focus,
button.w-tabs-section-header:hover {
  background: white !important;
}

/* =========================================================
   Boiler cover row
   ========================================================= */
.boiler_cover_row img {
  border-radius: 12px;
}

.boiler_cover_row p {
  text-wrap: pretty;
}

/* =========================================================
   Payment methods row
   ========================================================= */

.payment_methods_inner .vc_column_container {
  background: white;
  border-radius: 12px;
  border: 1px solid #dac6dd;
  background: #fff;
  color: var(--color-content-text);
  padding: 20px;
}

.payment_methods_inner h3 {
  color: var(--color-content-text) !important;
}

.payment_methods_inner p {
  font-size: 14px;
  text-wrap: pretty;
}

/* =========================================================
    Animated UK Map
   ========================================================= */

/* ---- Map card (square, responsive) ---- */
.bc-map-card {
  position: relative;
  width: 100%;

  margin: 0 auto;
  aspect-ratio: 1 / 1;
  border-radius: 12px;
  overflow: hidden;
  isolation: isolate;
}

.bc-map-card__bg {
  position: absolute;
  inset: 0;
  background: var(--color-alt-content-bg);
}

/* Your SVG map (white + slightly transparent, scaled nicely) */
.bc-uk-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 10%;
  object-fit: contain;
  z-index: 1;
  opacity: 0.82;
  /* slightly lower transparency */
  filter: drop-shadow(0 12px 18px rgba(0, 0, 0, 0.18));
  pointer-events: none;

  /* If your SVG isn't white by default, you can export it as white,
       or inline it and set fills via CSS. */
}

/* Marker layer */
.bc-marker-layer {
  position: absolute;
  inset: 0;
  z-index: 2;
}

/* ---- Marker ---- */
.bc-marker {
  position: absolute;
  transform: translate3d(-50%, -100%, 0);
  display: grid;
  gap: 10px;
  align-items: start;
  pointer-events: none;
  will-change: transform, opacity;
}

.bc-pin {
  width: 54px;
  height: 54px;
  border-radius: 999px;
  background: var(--color-content-primary);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25);
  position: relative;
  display: grid;
  place-items: center;
  will-change: transform, opacity;
}

.bc-avatar {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  object-fit: cover;
  display: block;
}

.bc-label {
  justify-self: start;
  background: rgba(255, 255, 255, 0.92);
  color: #111;
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 13px;
  line-height: 1;
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  will-change: transform, opacity;
}

/* ---- Smoother, slower transitions ---- */
.bc-marker.is-entering {
  opacity: 0;
  transform: translate3d(-50%, calc(-100% + 14px), 0) scale(0.985);
}

.bc-marker.is-entered {
  opacity: 1;
  transform: translate3d(-50%, -100%, 0) scale(1);
  transition:
    opacity 700ms ease,
    transform 850ms cubic-bezier(0.2, 0.9, 0.2, 1);
}

.bc-marker.is-exiting {
  opacity: 0;
  transform: translate3d(-50%, calc(-100% - 10px), 0) scale(0.975);
  transition:
    opacity 550ms ease,
    transform 650ms ease;
}

/* Mobile tweaks */
@media (max-width: 480px) {
  .bc-label {
    font-size: 12px;
    padding: 7px 10px;
  }

  .bc-pin {
    width: 48px;
    height: 48px;
  }

  .bc-avatar {
    width: 36px;
    height: 36px;
  }
}

.certification_logos_grid img {
  border-radius: 16px;
}

/* =========================================================
     Popup styling
      ========================================================= */
.w-popup-box-title {
  border-radius: 12px 12px 0 0;
  background: var(--color-alt-content-bg-alt);
  color: #fff;
  font-weight: 600;
}

.w-popup-box-content {
  border-radius: 16px;
}

.quote_modal_outer .w-popup-box-content {
  background: var(--color-alt-content-bg);
}

.quote_modal_outer .w-popup-box-content {
  padding: 0px;
}

.quote_modal_outer .riva_hero {
  padding-left: 40px;
  padding-right: 40px;
}

.quote_modal_outer .riva_hero h4 a {
  color: var(--color-content-text);
}

.quote_modal_outer .riva_hero h4 a:hover {
  color: var(--color-content-link-hover);
}

/* =========================================================
     Owl navigation controls
      ========================================================= */
button.owl-prev,
button.owl-next {
  color: var(--color-content-primary) !important;
  background: transparent !important;
}

button.owl-prev:hover,
button.owl-next:hover {
  color: var(--color-content-secondary) !important;
  background: transparent !important;
}

.color_alternate button.owl-prev,
.color_alternate button.owl-next {
  color: white !important;
}

.color_alternate button.owl-prev:hover,
.color_alternate button.owl-next:hover {
  color: var(--color-content-primary) !important;
}

/* =========================================================
      Header & navigation
      ========================================================= */
.mega_menu_container {
  background: white;
}

header nav a {
  font-weight: 600;
}

.header_logo,
.header_quote_btn {
  z-index: 999;
}

/* =========================================================
        Mega menu
      ========================================================= */
.mega_menu_container {
  padding-left: 20px;
  padding-right: 20px;
}

.mega_menu_container h4 {
  font-weight: 600;
}

.mega_menu_container .g-cols {
  grid-gap: 1rem;
}

.mega_menu_linkbox {
  align-items: center !important;
  justify-content: space-between;
  border-bottom: 1px solid #dac6dd;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-left: 20px;
}

.mega_menu_linkbox h4 {
  font-size: 18px;
}

.mega_menu_linkbox p {
  font-size: 12px;
}

.mega_menu_box .w-grid-item-h {
  border-radius: 12px;
}

.mega_menu_box h4 {
  margin-bottom: 5px !important;
}

.mega_menu_intro_sentence {
  font-size: 14px;
  text-wrap: pretty;
}

.mega_render_container .w-grid-item-h {
  border: 1px solid #dac6dd;
  transition: 0.3s;
}

.mega_render_container .w-grid-item-h:hover {
  background: #6d1c79;
}

.mega_render_container .w-grid-item-h:hover h4,
.mega_render_container .w-grid-item-h:hover p {
  color: #fff !important;
  transition: 0.3s;
}

/* NOTE: Your original CSS had invalid selectors:
      `.w-grid-item-h: h4` and `.w-grid-item-h: p`
      Removed, because they do nothing and could cause confusion.
   */

.mega_menu_render {
  position: absolute;
  top: 20px;
  left: auto;
  right: auto;
  width: 100%;
  text-align: center;
}

.mega_menu_render img {
  width: 60% !important;
  margin: auto;
}

ul.w-nav-list.level_2 {
  margin-top: -12px;
  box-shadow: none !important;
  border-radius: 0 0 30px 30px;
}

/* =========================================================
      Three steps mobile boxes
      ========================================================= */
.three_steps_mobile_box .vc_column-inner {
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.three_steps_mobile_box img {
  border-radius: 12px 12px 0 0;
}

.three_steps_mobile_box .wpb_text_column {
  padding: 20px;
}

.three_steps_mobile_box h3 {
  font-size: 18px;
  margin-bottom: 8px;
}

/* =========================================================
      Responsive styles  
      ========================================================= */

/* -----------------------------
      Large screens
      ----------------------------- */

/* 1501px and up */
@media only screen and (min-width: 1501px) {
  .hero_img img {
    padding: 50px;
  }
}

/* Laptop Scaling */
@media only screen and (max-width: 1399px) and (min-width: 1025px) {
  .popular_packages_row .owl-carousel {
    padding-left: 40px;
    padding-right: 40px;
  }

  .popular_packages_row button.owl-next {
    right: -30px;
  }

  .popular_packages_row button.owl-prev {
    left: -30px;
  }
}

@media only screen and (max-width: 1380px) and (min-width: 1025px) {
  a.level_1 {
    font-size: 14px;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  a#header-quote {
    font-size: 14px;
  }

  .l-subheader.at_middle {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media only screen and (max-width: 1300px) and (min-width: 1151px) {
  .riva_hero_ctabox {
    min-height: 66px;
  }

  .riva_hero_inner h4 {
    font-size: 18px;
  }
}

@media only screen and (max-width: 1150px) and (min-width: 1025px) {
  .riva_hero_ctabox {
    min-height: 90px;
  }

  .riva_hero_inner {
    grid-gap: 30px !important;
  }

  .riva_hero_inner h4 {
    font-size: 18px;
  }
}

/* -----------------------------
      Above tablet styling
      ----------------------------- */
@media only screen and (min-width: 1025px) {
  .environment_content {
    max-width: 800px;
    margin: auto;
  }

  .also_include_wrapper {
    grid-gap: 30px;
  }

  .service_why_choose {
    padding-bottom: 0px !important;
  }

  .service_packages_row.popular_packages_row {
    padding-bottom: 20px !important;
  }

  .service_hero_right {
    min-height: 600px;
  }

  li#menu-item-1557 {
    display: none;
  }

  .page-id-8 .nationwide_network_row {
    padding-top: 0px !important;
  }

  header ul.w-nav-list.level_2 {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .blog_subscribe_row {
    max-width: 1280px;
    margin: auto;
  }

  .only_boiler_company {
    padding-top: 0px !important;
  }

  .footer_policy_menu .menu {
    grid-template-columns: repeat(6, 1fr);
    grid-gap: 12px;
  }

  .hideabovetablet {
    display: none !important;
  }
}

/* -----------------------------
      Tablet only styling
      ----------------------------- */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .service_hero_left h1 {
    font-size: 28px;
  }

  .service_hero_left p,
  .service_hero_left span,
  .service_hero_left a.w-btn {
    font-size: 14px;
  }

  .service_hero_left {
    padding: 20px;
  }

  .service_page_hero {
    padding-left: 20px;
    padding-right: 20px;
  }

  .service_hero_right {
    min-height: 400px;
  }

  .blog_subscribe_row .g-cols {
    grid-template-columns: repeat(1, 1fr);
  }

  .blog_subscribe_row {
    max-width: calc(100% - 60px);
    margin: auto;
  }

  .blog_post_hero_top .g-cols {
    grid-template-columns: repeat(1, 1fr);
  }

  .popular_packages_row .w-grid.type_carousel .w-grid-list {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }

  .popular_packages_row button.owl-next {
    right: -30px;
  }

  .popular_packages_row button.owl-prev {
    left: -30px;
  }

  .certification_logos_grid .w-gallery-list {
    grid-template-columns: repeat(2, 1fr);
    max-width: 250px;
  }

  .three_steps_mobile {
    margin-bottom: 60px;
  }

  .riva_hero_inner .vc_column_container {
    padding: 16px;
  }

  .riva_hero_inner img {
    max-width: 180px;
  }

  header a.level_1 {
    padding-left: 15px !important;
  }

  .riva_hero_inner {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  a#sticky-quote-btn {
    font-size: 14px;
  }

  .sticky-content {
    font-size: 14px;
  }

  .nation_warm_one {
    padding-top: 80px !important;
    padding-bottom: 0px !important;
  }

  .only_boiler_company {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }

  .environment_row .g-cols {
    grid-template-columns: none;
  }

  .footer_top_row .g-cols {
    grid-gap: 60px !important;
  }

  .footer_top_row .g-cols {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 12px;
  }

  .footer_policy_menu .menu a {
    font-size: 12px;
  }

  .footer_policy_menu .menu {
    grid-template-columns: repeat(4, 1fr);
  }

  .payment_methods_inner {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .three_steps_mobile_box .vc_column-inner {
    height: 100%;
  }

  .three_steps_mobile {
    padding-top: 80px !important;
  }

  .nationwide_network_row {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }

  .whats_included_inner {
    display: grid;
    grid-gap: 24px !important;
    grid-template-columns: 1fr 1fr !important;
    /* 2 equal columns */
    gap: 20px;
  }

  .whats_included_inner > :nth-child(3) {
    grid-column: 1 / -1;
    /* Span across both columns */
  }

  .whats_included_right {
    padding-bottom: 60px;
  }

  div#order-cutoff {
    font-size: 12px;
  }

  .also_include_wrapper {
    grid-gap: 20px;
  }

  .also_include_wrapper button {
    font-size: 14px;
  }

  .nationwide_network_row .g-cols,
  .boiler_cover_row .g-cols,
  .keeping_nation_warm .g-cols,
  .service_why_choose .g-cols {
    grid-gap: 3rem;
    align-items: flex-start;
  }

  section.bc-local-map {
    padding-top: 0px;
  }

  main a.w-btn.us-btn-style_1 {
    font-size: 15px;
  }

  .mega_menu_container .g-cols {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* -----------------------------
      Below tablet styling
      ----------------------------- */
@media only screen and (max-width: 1024px) {
  .w-nav.type_mobile .menu-item > a.w-btn {
    padding: 12px 24px !important;
    text-align: center;
    display: inline-block;
  }

  .hidebelowtablet {
    display: none !important;
  }

  /* Stack on smaller desktops/tablets */
  .bc-steps__inner {
    flex-direction: column;
  }

  .bc-steps__left,
  .bc-steps__right {
    width: 100%;
  }

  .bc-steps__image {
    height: 420px;
  }

  .bc-steps__pin-container,
  .bc-steps__pin-wrapper {
    height: auto;
  }
}

/* -----------------------------
      Desktop only styling 
      ----------------------------- */
@media only screen and (min-width: 768px) {
  .contact_installer_left {
    border-radius: 16px;
    min-height: 350px;
  }

  .become_installer_hero .service_hero_right {
    min-height: 450px;
  }

  .inclusions_row_one {
    margin-bottom: 40px !important;
  }

  .inclusions_row_two {
    margin-bottom: 80px !important;
    grid-gap: 40px !important;
  }

  .footer_top_row nav li {
    margin-bottom: 16px !important;
  }

  .footer_accreds {
    max-width: 200px;
  }

  .certification_logos_grid {
    max-width: 500px;
  }

  h2.riva-steps__title {
    margin-bottom: 60px;
  }

  .helpline_row .vc_column_container {
    min-height: 600px;
  }

  .payment_methods_inner img {
    width: 180px;
    margin: auto;
    display: table;
  }

  .boiler_cover_row {
    padding-top: 0px !important;
  }

  .hideondesktop {
    display: none !important;
  }

  /* ===== Header dropdown page overlay ===== */
  .bc-menu-overlay {
    backdrop-filter: blur(4px);
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 109;
    /* below header (111), above page */
  }

  body.bc-menu-open .bc-menu-overlay {
    opacity: 1;
    pointer-events: auto;
  }

  .l-header {
    position: relative;
    z-index: 111;
  }

  body.bc-menu-open {
    overflow: hidden;
  }

  header li a {
    border-radius: 30px;
  }

  header .opened a.level_1 {
    background: #fe0002 !important;
    border-radius: 30px;
    color: #fff !important;
    z-index: 999 !important;
  }
}

/* -----------------------------
      Mobile only styling
      ----------------------------- */
@media only screen and (max-width: 767px) {
  .single-post nav.g-breadcrumbs {
    margin-bottom: 3rem;
}

  .contact_installer_left {
    border-radius: 16px;
    min-height: 250px;
  }

  .become_installer_hero .service_hero_right {
    min-height: 250px;
  }

  .faqs_tabs .w-tabs-list-h {
    flex-wrap: wrap;
  }

  .inclusions_row_one .vc_column_container {
    min-height: 400px;
  }

  .solar_calculator_container {
    padding: 40px 20px;
  }

  .inclusions_row_two {
    margin-bottom: 60px !important;
  }

  .inclusions_row_two_left img,
  .inclusions_row_two_right img {
    max-width: 200px;
  }

  .inclusions_row_one {
    padding-bottom: 30px;
  }

  .inclusions_row_two {
    grid-gap: 30px !important;
  }

  .service_brands_grid img {
    width: 115px;
  }

  .service_hero_right {
    min-height: 300px;
  }

  .service_hero_left {
    padding: 20px;
  }

  .service_hero_left a.w-btn {
    font-size: 14px;
  }

  .service_hero_left h1 {
    font-size: 26px;
    text-wrap: pretty;
  }

  .service_brands_grid .w-gallery-list {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0px;
  }

  .popular_packages_row .owl-carousel .owl-dots.disabled,
  .popular_packages_row .owl-carousel .owl-nav.disabled {
    display: flex;
  }

  .popular_packages_row
    .owl-carousel.arrows-disabled_hide
    > .owl-nav
    button.disabled {
    visibility: visible;
  }

  .service_brands_grid .w-gallery-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .service_packages_row.popular_packages_row {
    padding-bottom: 20px !important;
  }

  .service_packages_row.popular_packages_row {
    padding-top: 60px !important;
  }

  .service_brands_grid {
    margin-top: 60px;
  }

  .service_brands_grid {
    max-width: 350px;
  }

  .need_help_cta_row h4 {
    font-size: 16px;
  }

  .bc-blog-cta {
    width: 100%;
    bottom: 0px;
    top: auto;
  }

  .bc-blog-cta__inner {
    border-radius: 0px;
  }

  .bc-blog-cta__inner a.w-btn {
    font-size: 12px;
  }

  .bc-blog-cta__inner {
    padding: 12px 30px !important;
  }

  .bc-blog-cta__inner p {
    font-size: 12px;
    text-wrap: pretty;
  }

  .bc-blog-cta__inner h3 {
    text-wrap: pretty;
    font-size: 20px;
    padding-right: 20px;
  }

  .footer_accreds {
    max-width: 150px;
  }

  .popular_packages_row {
    padding-bottom: 100px !important;
  }

  .certification_logos_grid {
    max-width: 250px;
  }

  .quote_modal_outer .riva_hero {
    padding-left: 0px;
    padding-right: 0px;
  }

  header ul.w-nav-list.level_1.hover_simple {
    min-height: 100vh;
  }

  .three_steps_mobile_box h4 {
    margin-bottom: 8px;
  }

  .three_steps_mobile_box {
    grid-gap: 24px !important;
  }

  .three_steps_mobile {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }

  .page-id-8 .nationwide_network_row {
    padding-top: 0px !important;
  }

  .riva_hero {
    padding-top: 50px !important;
  }

  .w-nav.type_mobile .menu-item > a.w-btn {
    margin-left: 0px;
  }

  .riva_hero_inner {
    grid-gap: 16px !important;
  }

  .quote_modal_outer .w-popup-box-content {
    padding: 20px !important;
  }

  .quote_modal_outer section {
    padding: 0px;
  }

  .sticky-content {
    gap: 15px;
    padding-left: 10px;
    justify-content: flex-start;
    font-size: 13px;
  }

  a#sticky-quote-btn {
    font-size: 12px;
  }

  .riva_hero_inner .vc_column_container {
    padding: 16px;
  }

  .riva_hero_intro {
    padding-bottom: 30px;
  }

  .riva_hero_intro p {
    font-size: 20px;
    text-wrap: pretty;
  }

  .blog_category_menu ul {
    grid-gap: 20px;
  }

  .blog_category_menu li {
    margin: 0px !important;
  }

  .blog_category_menu li a {
    font-size: 12px;
  }

  .team_member_wrapper img {
    min-width: 0px !important;
    max-width: 100px;
  }

  .team_row {
    padding-top: 60px !important;
  }

  .team_row h2 {
    text-wrap: pretty;
  }

  .team_member_wrapper {
    display: block;
  }

  .team_member_wrapper img {
    margin-bottom: 20px;
  }

  .nation_warm_one {
    padding-top: 60px !important;
    padding-bottom: 0px !important;
  }

  .only_boiler_company {
    padding-bottom: 60px !important;
    padding-top: 60px !important;
  }

  .homeowners_count p {
    font-size: 12px;
    text-align: left !important;
  }

  .blog_post_featured_img {
    margin-bottom: 20px;
  }

  .blog_hero_top_spacer {
    margin-bottom: 20px;
  }

  .blog_post_hero_inner {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .blogs_row {
    padding-bottom: 80px !important;
  }

  .footer_top_row {
    padding-top: 60px !important;
  }

  .footer_top_row .g-cols {
    grid-gap: 60px !important;
  }

  .footer_policy_menu .menu {
    grid-template-columns: repeat(3, 1fr);
    display: grid !important;
    grid-gap: 8px;
  }

  .footer_policy_menu .menu a {
    font-size: 11px;
  }

  .footer_copyright,
  .footer_angelo_link {
    font-size: 11px;
  }

  .payment_methods_inner img {
    max-width: 150px;
    margin: auto;
    display: table;
  }

  .nationwide_network_row .g-cols,
  .boiler_cover_row .g-cols,
  .keeping_nation_warm .g-cols,
  .service_why_choose .g-cols {
    grid-gap: 2rem;
  }

  section.bc-local-map {
    padding: 0px;
  }

  .bc-local-map__inner {
    width: 100%;
  }

  .nationwide_network_row {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }

  .boiler_cover_row {
    padding-top: 0px !important;
    padding-bottom: 60px !important;
  }

  .boiler_brands_grid {
    margin-bottom: 20px;
  }

  .boiler_brands_grid img {
    width: 100px;
    height: auto;
    margin: auto;
  }

  .boiler_brands_grid .w-gallery-item {
    aspect-ratio: auto !important;
  }

  .boiler_item_content_mobile {
    padding: 20px;
  }

  .boiler_package_img_mobile {
    width: 200px;
    margin-top: 20px;
  }

  .hideonmobile {
    display: none !important;
  }

  .also_include_wrapper button {
    font-size: 14px;
    padding-left: 15px;
    padding-right: 15px;
  }

  .also_include_wrapper {
    display: flex;
    grid-gap: 24px;
  }

  .whats_included_bottom .w-popup.w-btn-wrapper.align_none {
    margin: 0px;
  }

  .the_boilers_carousel .w-grid-item-h {
    height: 100% !important;
  }

  /* Hide 3-step pinned section on mobile */
  .bc-steps {
    display: none;
  }

  .the_boilers_carousel {
    margin-bottom: 80px;
    margin-top: 0px !important;
  }

  .owl-nav {
    top: auto !important;
    bottom: -40px !important;
    justify-content: center !important;
  }

  header ul.w-nav-list.level_1.hover_simple {
    max-height: none !important;
  }

  .mega_menu_container {
    padding: 0;
  }

  .mega_menu_box .w-grid-item-h {
    max-height: 180px;
  }

  .mega_menu_render img {
    margin: 0;
    max-width: 100px;
    padding-left: 20px;
  }
}
