/* Coverage card v6. Scoped to the homepage #coverage only. */
.air-design #coverage .coverage-layout {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.06fr)!important;
  grid-template-rows:auto 1fr!important;
  gap:12px 14px!important;
  padding:16px!important;
  min-height:0!important;
  align-items:stretch!important;
  overflow:visible!important;
  background:linear-gradient(120deg,#fff 0%,#f3fbf6 100%)!important;
  border-radius:20px!important;
}
.air-design #coverage .coverage-heading{
  grid-column:1 / -1;
  min-width:0;
}
.air-design #coverage .coverage-heading-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.air-design #coverage .coverage-heading h2{font-size:20px!important;font-weight:800;line-height:1.1;letter-spacing:-.035em!important;margin:0 0 4px!important;color:#152822}
.air-design #coverage .coverage-heading p{font-size:11px!important;line-height:1.37!important;font-weight:500!important;max-width:400px;margin:0!important;color:#607a6e!important}
.air-design #coverage .coverage-heading-icon{font-size:23px;color:#0da648;background:#eaf9ef;width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:12px}
.air-design #coverage .real-city-chips{
  margin:10px 0 8px!important;display:flex!important;gap:6px!important;
  flex-wrap:nowrap!important;overflow:auto!important;scrollbar-width:none;
}
.air-design #coverage .real-city-chips::-webkit-scrollbar{display:none}
.air-design #coverage .real-city-chips button{
  flex:0 0 auto;padding:6px 10px!important;min-height:28px;font-size:10px!important;
  line-height:1.1!important;border-radius:999px!important;border:1px solid #e2efe7!important;
  color:#4e7461!important;background:rgba(255,255,255,.96)!important;box-shadow:none!important;
}
.air-design #coverage .real-city-chips button.active{background:#0dab46!important;color:#fff!important;border-color:#0dab46!important}
.air-design #coverage .coverage-result{
  display:flex!important;align-items:center!important;gap:8px!important;
  max-height:none!important;min-height:25px!important;overflow:visible!important;
  font-size:10px!important;line-height:1.35!important;color:#62766b!important;
  margin:0!important;padding:2px 0!important;border:0!important;background:transparent!important;
}
.air-design #coverage .coverage-result-dot{width:8px!important;height:8px!important;flex:0 0 8px!important;margin:0 1px 0 0!important}
.air-design #coverage .coverage-result-action{display:none!important}
.air-design #coverage .real-map-shell{
  grid-column:2;grid-row:2;
  position:relative!important;min-height:290px!important;height:auto!important;
  border-radius:16px!important;overflow:hidden!important;
  border:1px solid #dfede5!important;
  background:#eaf4ed url('assets/ui/coverage-fallback.svg') center/cover no-repeat!important;
  box-shadow:none!important;
}
.air-design #coverage .real-coverage-map{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:100%!important;border-radius:16px!important;background:transparent!important}
.air-design #coverage .coverage-map-legend{
  display:flex!important;position:absolute!important;left:9px!important;bottom:9px!important;right:auto!important;z-index:6!important;
  gap:9px!important;padding:6px 9px!important;justify-content:flex-start!important;
  border:1px solid rgba(255,255,255,.94)!important;border-radius:9px!important;
  background:rgba(255,255,255,.94)!important;box-shadow:0 4px 16px #123b1c18!important;
  pointer-events:none;
}
.air-design #coverage .coverage-map-legend span{font-size:9px!important;font-weight:600;color:#486759}
.air-design #coverage .coverage-map-loading{background:rgba(255,255,255,.28)!important;font-size:11px!important}
.air-design #coverage .coverage-lead-form{
  position:relative!important;grid-column:1!important;grid-row:2!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  z-index:4!important;display:flex!important;flex-direction:column!important;
  gap:9px!important;align-self:stretch!important;
  width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;
  padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
  overflow:visible!important;backdrop-filter:none!important;
}
.air-design #coverage .coverage-label,.air-design #coverage .coverage-field>span{font-size:10px!important;font-weight:700!important;color:#385a49!important;line-height:1.25}
.air-design #coverage .coverage-address-row{display:flex;position:relative;gap:6px!important;align-items:stretch;min-width:0;max-width:100%}
.air-design #coverage .coverage-input-wrap{position:relative!important;flex:1 1 0!important;min-width:0!important}
.air-design #coverage #coverageAddress,
.air-design #coverage .coverage-field input{
  display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  height:40px!important;min-height:40px!important;flex:none!important;
  padding:0 10px!important;border:1px solid #dcece3!important;border-radius:10px!important;
  background:#fff!important;color:#1b3025!important;font-family:inherit!important;font-size:12px!important;
  font-weight:500!important;line-height:1.3!important;box-shadow:none!important;
}
.air-design #coverage #coverageAddress:focus,.air-design #coverage .coverage-field input:focus{outline:2px solid #50cc7d!important;outline-offset:0!important}
.air-design #coverage #coverageCheckBtn{
  flex:0 0 auto!important;width:auto!important;height:40px!important;min-height:40px!important;
  border:1px solid #d7ebdf!important;background:#e8f7ed!important;color:#098d3e!important;
  border-radius:10px!important;padding:0 12px!important;font-size:11px!important;font-weight:800!important;
}
.air-design #coverage .coverage-person-row{display:grid;grid-template-columns:1fr 1fr;gap:8px!important;min-width:0}
.air-design #coverage .coverage-field{display:grid;grid-template-columns:minmax(0,1fr);gap:5px!important;min-width:0}
.air-design #coverage .coverage-submit-btn{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:10px;
  flex:0 0 auto!important;width:100%!important;min-height:42px!important;height:42px!important;
  margin-top:3px;padding:7px 14px!important;border:0!important;border-radius:11px!important;
  background:linear-gradient(95deg,#0baf49,#05a43d)!important;color:#fff!important;
  font-family:inherit!important;font-size:12px!important;font-weight:800!important;white-space:nowrap;
  box-shadow:0 5px 12px #10aa4823!important;
}
.air-design #coverage .coverage-consent{display:flex;align-items:start;gap:7px;margin:0!important;color:#61786c!important;font-size:9px!important;line-height:1.3!important;cursor:pointer}
.air-design #coverage .coverage-consent input{width:14px!important;height:14px!important;flex:0 0 14px;margin:0!important;accent-color:#0bae44}
.air-design #coverage .coverage-consent a{color:#099345!important;text-decoration:underline}
.air-design #coverage .lead-form-message{display:block;min-height:0;margin:0!important;font-size:10px!important;line-height:1.3!important}
.air-design #coverage .coverage-suggestions{
  display:block;position:absolute;z-index:40!important;top:calc(100% + 4px)!important;left:0!important;right:0!important;
  background:#fff;border:1px solid #e1eee6;border-radius:11px;box-shadow:0 9px 28px rgba(21,70,40,.15);
  max-height:185px;overflow-y:auto;padding:4px;
}
.air-design #coverage .coverage-suggestions[hidden]{display:none!important}
.air-design #coverage .coverage-suggestion,.air-design #coverage .coverage-suggestion-empty{display:block;width:100%;padding:9px!important;text-align:left;color:#324c3e;background:#fff;border:0;border-radius:7px;font-size:11px!important;line-height:1.3}
.air-design #coverage .coverage-suggestion:hover,.air-design #coverage .coverage-suggestion.is-active{background:#eefaf2!important}

@media(max-width:700px){
  .air-design #coverage .coverage-layout{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto 198px auto!important;
    gap:11px!important;padding:13px!important;min-height:0!important;
  }
  .air-design #coverage .coverage-heading{grid-column:1!important;grid-row:1!important}
  .air-design #coverage .coverage-heading h2{font-size:19px!important}
  .air-design #coverage .coverage-heading p{font-size:10.5px!important}
  .air-design #coverage .real-city-chips{margin:8px 0 7px!important}
  .air-design #coverage .real-map-shell{grid-column:1!important;grid-row:2!important;min-height:198px!important;height:198px!important}
  .air-design #coverage .coverage-lead-form{grid-column:1!important;grid-row:3!important;gap:7px!important}
  .air-design #coverage .coverage-person-row{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .air-design #coverage #coverageAddress,.air-design #coverage .coverage-field input{font-size:12px!important;min-height:42px!important;height:42px!important}
  .air-design #coverage #coverageCheckBtn{height:42px!important;min-height:42px!important}
  .air-design #coverage .coverage-field>span{font-size:10px!important}
  .air-design #coverage .coverage-submit-btn{height:43px!important;min-height:43px!important;font-size:13px!important}
}
@media(max-width:360px){
  .air-design #coverage .coverage-person-row{grid-template-columns:1fr!important}
}
/* The address field is usable before the third-party map script finishes loading. */
.air-design #coverage .coverage-address-row > #coverageAddress {
  width:0!important;min-width:0!important;flex:1 1 0!important;
}
.air-design #coverage .coverage-input-wrap #coverageAddress {
  width:100%!important;flex:none!important;
}
.air-design #coverage .coverage-lead-form{align-items:stretch!important}
.air-design #coverage .coverage-consent{width:100%!important;justify-content:flex-start!important;align-self:stretch!important}

/* Checkbox alignment only: reset generic coverage input sizing for the consent checkbox. */
.air-design #coverage .coverage-consent {
  align-items: center !important;
  gap: 8px !important;
}
.air-design #coverage .coverage-consent > input[type="checkbox"] {
  flex: 0 0 15px !important;
  width: 15px !important;
  min-width: 15px !important;
  max-width: 15px !important;
  height: 15px !important;
  min-height: 15px !important;
  max-height: 15px !important;
  padding: 0 !important;
  margin: 0 !important;
  appearance: auto !important;
  background: initial !important;
  align-self: center !important;
}
.air-design #coverage .coverage-consent > span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  text-align: left !important;
}
