/* Shared hero quote form styling approved for Kingsmere product and relevant content pages. */
.km-u-hero .km-u-benefits{position:absolute!important;left:0!important;bottom:177px!important;white-space:nowrap!important;z-index:5!important;gap:14px!important;color:#fff!important;font:700 13px/1.25 'Open Sans',Arial,sans-serif!important;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.km-u-hero .km-u-benefits>span{gap:9px!important;padding-right:14px!important;border-right:1px solid rgba(255,255,255,.55)!important}
.km-u-hero .km-u-benefits>span:last-child{padding-right:0!important;border:0!important}
.km-u-hero .km-u-benefit-icon{width:39px!important;height:39px!important;background:#f7fcf5!important;color:#377b31!important;font-size:20px!important}
.km-u-hero.km-form-hero .km-u-actions{display:none!important}
.km-u-hero .km-hero-inline-quote{position:absolute;z-index:8;top:148px;right:0;width:380px;min-height:400px;box-sizing:border-box;padding:20px 20px 36px;background:#F4F6F4;color:#173024;border:1px solid rgba(23,48,36,.14);border-radius:15px;box-shadow:0 14px 38px rgba(13,31,20,.2);display:flex;flex-direction:column}
.km-u-hero.km-form-chooser .km-hero-inline-quote{top:78px;min-height:470px}
.km-u-hero .km-hero-inline-quote h2{margin:0 0 8px;color:#173024;font:800 24px/1.2 Montserrat,Arial,sans-serif;letter-spacing:-.02em}
.km-hero-form-intro{display:block;margin:0 0 12px;padding:9px 11px;border-radius:8px;background:#EFF9EA;color:#326F2D;font:700 15px/1.25 'Open Sans',Arial,sans-serif}
.km-hero-inline-form{display:flex;flex:1;flex-direction:column;min-height:0}
.km-hero-inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 13px}
.km-hero-field{display:block;min-width:0;color:#33453a;font:700 12px/1.3 'Open Sans',Arial,sans-serif}
.km-hero-field span{display:block;margin:0 0 5px}
.km-hero-field input,.km-hero-field select{display:block;width:100%;height:50px;box-sizing:border-box;padding:10px 11px;border:1px solid #ccd6ce;border-radius:7px;background:#fff;color:#173024;font:400 13px/1.2 'Open Sans',Arial,sans-serif;outline:none}
.km-hero-field input:focus,.km-hero-field select:focus{border-color:#70BF45;box-shadow:0 0 0 3px rgba(112,191,69,.2)}
.km-hero-product-field{grid-column:1/-1}
.km-hero-form-privacy{margin:12px 0 0;color:#637067;font:400 10px/1.35 'Open Sans',Arial,sans-serif}
.km-hero-form-privacy a{color:#34772e;text-decoration:underline}
.km-hero-form-submit{width:100%;min-height:55px;margin-top:auto;padding:13px 14px;border:0;border-radius:8px;background:#70BF45;color:#173024;font:800 15px/1.2 Montserrat,Arial,sans-serif;cursor:pointer;transition:background-color .18s ease,transform .18s ease}
.km-hero-form-submit:hover{background:#F28C28;transform:translateY(-1px)}
.km-hero-form-submit:disabled{opacity:.7;cursor:wait;transform:none}
.km-hero-form-error{margin:0 0 8px;padding:8px 10px;border:1px solid #e7b9b9;border-radius:5px;background:#fff4f4;color:#8b2525;font:600 11px/1.4 'Open Sans',Arial,sans-serif}
.km-hero-form-success{display:grid;gap:8px;padding:14px 0 4px;color:#173024;font:500 12px/1.5 'Open Sans',Arial,sans-serif}
.km-hero-form-success strong{font-size:15px}
.km-hero-form-success a{color:#34772e;font-weight:700}
.km-hero-inline-form [hidden]{display:none!important}
@media(min-width:801px) and (max-width:1120px){
 .km-u-hero .km-hero-inline-quote{top:148px;width:clamp(340px,34vw,380px);right:0;padding:18px 18px 34px}
 .km-u-hero.km-form-chooser .km-hero-inline-quote{top:78px;min-height:470px}
 .km-u-hero .km-u-information{width:min(430px,46vw)!important}
 .km-u-hero .km-u-benefits{bottom:44px!important;width:min(430px,48vw)!important;white-space:normal!important;flex-wrap:wrap!important;gap:7px!important}
 .km-u-hero .km-u-benefits>span{font-size:11px!important;border:0!important;padding-right:4px!important;gap:6px!important}
 .km-u-hero .km-u-benefit-icon{width:31px!important;height:31px!important}
}
@media(max-width:800px){
 .hero.km-u-hero.km-form-hero,.page-hero.km-u-hero.km-form-hero,.km-awning-hero.km-u-hero.km-form-hero{height:920px!important;min-height:920px!important;max-height:920px!important}
 .km-u-hero.km-form-hero .km-hero-inline-quote{top:auto;left:16px;right:16px;bottom:14px;transform:none;width:auto;min-height:0;padding:14px 15px 14px;border-radius:12px}
 .km-u-hero.km-form-chooser .km-hero-inline-quote{top:auto;min-height:0}
 .km-u-hero.km-form-hero .km-u-actions,.km-u-hero.km-form-hero .km-u-benefits{display:none!important}
 .km-u-hero .km-hero-inline-quote h2{font-size:19px;margin-bottom:6px}
 .km-hero-form-intro{margin-bottom:8px;padding:7px 9px;font-size:12px}
 .km-hero-inline-fields{gap:8px 9px}
 .km-hero-field{font-size:10px}
 .km-hero-field span{margin-bottom:3px}
 .km-hero-field input,.km-hero-field select{height:40px;padding:8px 9px;font-size:12px}
 .km-hero-form-privacy{margin:8px 0 0;font-size:9px}
 .km-hero-form-submit{min-height:44px;margin-top:10px;padding:10px;font-size:13px}
 .km-u-hero .km-u-information{max-height:none!important}
}
@media(max-width:480px){
 .km-u-hero.km-form-hero .km-hero-inline-quote{left:13px;right:13px;bottom:10px;padding:12px 13px}
 .km-u-hero .km-u-information{top:358px!important}
 .km-u-hero .km-u-heading{font-size:28px!important}
 .km-hero-inline-fields{gap:7px 8px}
 .km-hero-field{font-size:9px}
 .km-hero-form-intro{font-size:11px}
}
/* Remove residual hero action links and the old fixed quote launcher now that the quote form is in the banner. */
.km-u-hero .km-u-actions,
.km-u-hero .hero-actions,
.km-u-hero .hero-ctas,
.km-u-hero .hero-buttons,
.km-u-hero .hero-cta,
.km-u-hero .km-hero-actions,
.km-u-hero .km-hero-cta,
.km-u-hero .cta-buttons,
.km-u-hero .cta-row,
.km-u-hero a.btn,
.km-u-hero a.button,
.km-u-hero a[href*="get-a-quote"],
.km-u-hero a[href*="survey"] {display:none!important}
.qp-trigger-btn{display:none!important}
/* Uniform card dimensions and CTA removal across every hero, including older hero markup. */
.km-u-hero .km-hero-inline-quote{top:78px!important;width:380px!important;min-height:470px!important}
.km-u-hero .km-u-actions,
.km-u-hero [class*="hero-action"],
.km-u-hero [class*="hero-button"],
.km-u-hero [class*="hero-cta"],
.km-u-hero [class*="cta-group"],
.km-u-hero a.btn,
.km-u-hero a.button,
.km-u-hero a[href*="get-a-quote"],
.km-u-hero a[href*="survey"],
.km-u-hero button:not(.km-hero-form-submit){display:none!important}
@media(min-width:801px) and (max-width:1120px){.km-u-hero .km-hero-inline-quote{top:78px!important;width:clamp(340px,34vw,380px)!important;min-height:470px!important}}
@media(max-width:800px){.km-u-hero .km-hero-inline-quote{top:auto!important;min-height:380px!important}}

/* Google Reviews hero visibility update — 2026-11-02.
   Scope: only the existing review anchor on heroes with the original inline quote form.
   Does not alter hero heights, photographs, form dimensions, inputs, submits or tracking. */
@media (min-width:801px) {
  .km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight {
    position:absolute!important;top:10px!important;right:0!important;left:auto!important;
    width:380px!important;max-width:380px!important;
    z-index:9!important;
  }
  /* Same fixed-size form, relocated vertically only to make room for reviews. */
  .km-u-hero.km-form-hero .km-hero-inline-quote {top:166px!important;}
}
@media (min-width:801px) and (max-width:1120px) {
  .km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight {
    width:clamp(340px,34vw,380px)!important;max-width:380px!important;
  }
}
.km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight {
  box-sizing:border-box!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:center!important;gap:2px!important;
  padding:9px 14px 8px!important;
  border-radius:14px!important;
  background:#f2f9ee!important;
  border:2px solid #fff!important;
  box-shadow:0 6px 22px rgba(19,49,26,.19)!important;
  text-align:center!important;white-space:normal!important;
  color:#153d27!important;text-decoration:none!important;
  font-family:Montserrat,Arial,sans-serif!important;
}
.km-hero-review-highlight .km-review-brand {display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;line-height:1.05!important;}
.km-hero-review-highlight .km-u-google-g {font-size:23px!important;line-height:1!important;}
.km-hero-review-highlight .km-review-brand-title {font:800 15px/1.1 Montserrat,Arial,sans-serif!important;color:#293e2b!important;}
.km-hero-review-highlight .km-u-google-rating {display:flex!important;flex-direction:column!important;align-items:center!important;gap:0!important;}
.km-hero-review-highlight .km-review-stars-line {display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;line-height:1.1!important;}
.km-hero-review-highlight .km-review-stars-line strong {font:800 25px/1 Montserrat,Arial,sans-serif!important;color:#123d28!important;}
.km-hero-review-highlight .km-u-stars {font:700 20px/1 Arial,sans-serif!important;letter-spacing:0!important;color:#eda900!important;}
.km-hero-review-highlight .km-review-count {font:800 11px/1.3 Montserrat,Arial,sans-serif!important;color:#234d2e!important;}
.km-hero-review-highlight .km-review-snippet {margin-top:3px!important;display:block!important;color:#324233!important;font:italic 11px/1.35 'Open Sans',Arial,sans-serif!important;}
.km-hero-review-highlight .km-review-read {margin-top:2px!important;color:#275d36!important;text-decoration:underline!important;text-underline-offset:2px!important;font:700 11px/1.25 'Open Sans',Arial,sans-serif!important;}
.km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight:hover {background:#e9f6e5!important;border-color:#b8dda9!important;}
.km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight:focus-visible {outline:3px solid #f28c28!important;outline-offset:2px!important;}
@media (max-width:800px) {
  /* Retain the existing 920px mobile hero and original bottom-anchored form. */
  .km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight {
    top:44px!important;left:0!important;right:auto!important;
    max-width:285px!important;width:max-content!important;
    padding:8px 12px!important;gap:2px!important;
  }
  .km-u-hero.km-form-hero .km-hero-inline-quote {top:auto!important;}
  .km-hero-review-highlight .km-review-snippet,
  .km-hero-review-highlight .km-review-read {display:none!important;}
  .km-hero-review-highlight .km-review-brand-title {font-size:13px!important;}
  .km-hero-review-highlight .km-review-stars-line strong {font-size:20px!important;}
  .km-hero-review-highlight .km-u-stars {font-size:15px!important;}
}
@media (max-width:480px) {
  .km-u-hero.km-form-hero .km-u-google.km-hero-review-highlight {
    max-width:200px!important;padding:7px 9px!important;
  }
  .km-hero-review-highlight .km-review-brand-title {font-size:11px!important;}
  .km-hero-review-highlight .km-u-google-g {font-size:19px!important;}
  .km-hero-review-highlight .km-review-stars-line strong {font-size:18px!important;}
  .km-hero-review-highlight .km-u-stars {font-size:13px!important;}
  .km-hero-review-highlight .km-review-count {font-size:10px!important;}
}


/* Kingsmere customer reviews modal (Nov 2026). Entirely scoped; no hero, image,
   form, banner height, navigation, tracking or existing reviews page styles change. */
.km-google-reviews-dialog {
  padding:0!important;
  width:min(540px,calc(100vw - 28px))!important;
  max-width:540px!important;
  max-height:min(730px,calc(100dvh - 28px))!important;
  margin:auto!important;
  overflow:hidden!important;
  border:1px solid #dce6dd!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#193c27!important;
  box-shadow:0 24px 80px rgba(0,0,0,.30)!important;
  font-family:'Open Sans',Arial,sans-serif!important;
  box-sizing:border-box!important;
}
.km-google-reviews-dialog::backdrop {background:rgba(7,21,12,.65);}
.km-google-reviews-dialog .km-gr-modal-shell {display:flex; flex-direction:column; max-height:min(730px,calc(100dvh - 28px));min-height:0;}
.km-google-reviews-dialog .km-gr-modal-header {display:flex;align-items:center;gap:12px;position:relative;padding:19px 20px 16px;border-bottom:1px solid #e5eee6;background:#f5faf2;flex:none;}
.km-google-reviews-dialog .km-gr-google-g {font:bold 32px/1 Arial,sans-serif;background:conic-gradient(#4285f4 0 35%,#34a853 35% 53%,#fbbc05 53% 69%,#ea4335 69% 86%,#4285f4 86% 100%);background-clip:text;-webkit-background-clip:text;color:transparent;flex:none;}
.km-google-reviews-dialog .km-gr-modal-heading {flex:1;min-width:0;}
.km-google-reviews-dialog .km-gr-modal-heading h2 {margin:0!important;font:800 20px/1.2 Montserrat,Arial,sans-serif!important;color:#123b24!important;}
.km-google-reviews-dialog .km-gr-modal-heading p {margin:4px 0 0!important;font:400 12px/1.45 'Open Sans',Arial,sans-serif!important;color:#4b6252!important;}
.km-google-reviews-dialog .km-gr-modal-close {border:1px solid #d3e3d4!important;background:#fff!important;color:#275037!important;width:34px!important;height:34px!important;min-width:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;font:bold 26px/1 Arial,sans-serif!important;cursor:pointer!important;padding:0!important;box-shadow:none!important;}
.km-google-reviews-dialog .km-gr-modal-close:hover {background:#e5f2e5!important;}
.km-google-reviews-dialog .km-gr-modal-content {padding:16px 19px 10px;overflow-y:auto;overscroll-behavior:contain;min-height:0;}
.km-google-reviews-dialog .km-gr-review {border:1px solid #e0eae1;border-radius:12px;padding:14px 15px;margin-bottom:12px;background:#fff;}
.km-google-reviews-dialog .km-gr-review-head {display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap;}
.km-google-reviews-dialog .km-gr-review-head strong {color:#24472e;font:800 13px/1.3 Montserrat,Arial,sans-serif;}
.km-google-reviews-dialog .km-gr-stars {color:#edaa09;font:700 15px/1 Arial,sans-serif;letter-spacing:1px;}
.km-google-reviews-dialog .km-gr-review p {font:400 13px/1.58 'Open Sans',Arial,sans-serif;color:#34453a;margin:9px 0 7px!important;}
.km-google-reviews-dialog .km-gr-review a, .km-google-reviews-dialog .km-gr-modal-footer a {font:700 12px/1.3 'Open Sans',Arial,sans-serif!important;color:#245f39!important;text-decoration:underline!important;text-underline-offset:3px!important;}
.km-google-reviews-dialog .km-gr-modal-footer {border-top:1px solid #e4ece4;background:#fafdfa;padding:12px 19px 15px;flex:none;}
.km-google-reviews-dialog .km-gr-modal-footer p {font:400 11px/1.45 'Open Sans',Arial,sans-serif!important;color:#66766b!important;margin:0 0 5px!important;}
.km-google-reviews-dialog :focus-visible {outline:3px solid #f28c28!important;outline-offset:2px!important;}
@media(max-width:480px) {
  .km-google-reviews-dialog .km-gr-modal-header {padding:14px 14px 12px;gap:9px;}
  .km-google-reviews-dialog .km-gr-modal-heading h2 {font-size:17px!important;}
  .km-google-reviews-dialog .km-gr-modal-heading p {font-size:11px!important;}
  .km-google-reviews-dialog .km-gr-modal-content {padding:12px 12px 5px;}
  .km-google-reviews-dialog .km-gr-review {padding:11px 12px;margin-bottom:9px;}
  .km-google-reviews-dialog .km-gr-review p {font-size:12px;}
  .km-google-reviews-dialog .km-gr-modal-footer {padding:10px 12px 12px;}
}
