.flex {
  display: flex;
}
.flex-row {
  flex-direction: row;
}
.flex-column {
  flex-direction: column;
}
.flex-grow {
  flex: 1;
}
.justify-between {
  justify-content: space-between;
}
.justify-center {
  justify-content: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.items-center {
  align-items: center;
}
.items-start {
  align-items: flex-start;
}
.wrap {
  flex-wrap: wrap;
}
.row-wrap {
  flex-flow: row wrap
}

@media (min-width: 768px) {
  .db {
    display: block;
  }
  .flex {
    display: flex;
  }
  .flex-row-ns {
    flex-direction: row;
  }
  .flex-column-ns {
    flex-direction: column;
  }
  .justify-between-ns {
    justify-content: space-between;
  }
  .justify-center-ns {
    justify-content: center;
  }
  .justify-start-ns {
    justify-content: flex-start;
  }
  .justify-end-ns {
    justify-content: flex-end;
  }
  .items-center-ns {
    align-items: center;
  }
  .items-start-ns {
    align-items: flex-start;
  }
  .wrap-ns {
    flex-wrap: wrap;
  }
  .row-wrap-ns {
    flex-flow: row wrap
  }
}
.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}
.db {
  display: block;
}
.inline {
  display: inline-block;
}
.overflow-scroll {
  overflow: scroll;
}
.margin-auto {
  margin: 0 auto;
}
.pagebreak {
  page-break-before: always;
}
body {
  font-family: sans-serif;
  font-size: 16px;
  line-height: 1.4;
  color: #333;
  -webkit-font-smoothing: antialiased;
}

#pdf .container {
  width: 680px;
  max-width: calc(100% - 3rem);
  margin: 0 auto;
}
#pdf .pagebreak {
  page-break-before: always;
}
#pdf .main {
  margin: 0 auto;
}
#pdf .container {
  padding: 1rem 0;
}
#pdf .flex {
  display: flex;
}
#pdf .flex.column {
  flex-direction: column;
}
#pdf .justify-between {
  justify-content: space-between;
}
#pdf .ph1 {
  padding-left: 1rem;
  padding-right: 1rem;
}
#pdf .pb1 {
  padding-bottom: 1rem;
}
#pdf .flex-grow {
  flex: 1;
}
#pdf .uppercase {
  text-transform: uppercase;
}
#pdf .label {
  color: #757575;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: .5px;
}
#pdf .text {
  font-weight: 600;
  font-size: 1em;
}
#pdf .title {
  font-size: calc(1rem + 4px);
  font-weight: 700;
}
#pdf .body {
  font-size: 1em;
  line-height: 1.6;
  min-height: 1em;
}
#pdf .signature.label {
  font-size: calc(1rem - 1px);
  color: rgb(115, 117, 140);
  font-weight: 500;
}
#pdf .signature.name {
  font-size: calc(1rem + 1px);
  font-weight: 500;
}
#pdf .parties {
  counter-reset: party;
  counter-increment: parties;
}
#pdf .party {
  margin-bottom: 2rem;
}
#pdf .parties-header {
  display: flex;
  font-weight: 600;
  font-size: calc(1rem + 2px);
  margin-bottom: 1rem;
}
#pdf .parties-header .parties-counter {
  position: relative;
  margin-right: 3rem;
}
#pdf .parties-header .parties-counter:before {
  counter-increment: party;
  content: "0" counter(party);
}
#pdf .parties-header .parties-counter:after {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 2px;
  background-color: #0026ff;
  top: calc(.5rem + 4px);
  left: calc(2rem + 1px);
}
#pdf .parties-content {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
#pdf .parties-content .row {
  flex: 1 0 40%;
  border: 1px solid #e0e0e0;
  padding: .8rem .5rem;
  margin: 0 0 -1px -1px;
}
#pdf .parties-content .row .label {
  font-size: calc(1rem - 1px);
  color: #737373;
  line-height: 1;
  padding: 0 .25rem;
  margin-bottom: 3px;
}
#pdf .parties-content .row .data {
  padding: .25rem;
  border-radius: .25em;
}
#pdf .schedule .row {
  margin-bottom: 1rem;
}
#pdf .certification {
  margin-bottom: 1rem;
}
#pdf .certification img {
  height: 60px;
  margin-right: 1rem;
}
#pdf .logo img {
  width: 150px;
}
.logo img {
  width: 150px;
}
.quote__header {
  position: relative;
  background-color: #fff;
  display: block;
  padding-top: 6rem;
  padding-bottom: 7rem;
  background-position: 50% 50%;
  background-size: cover;
  background-color: #76798f;
}
.quote_overlay {
  background-color: rgba(131, 140, 236, 0);
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.summary-card .wrapper {
  background-color: #fff;
  display: block;
  width: 100%;
  max-width: 680px;
  box-shadow: 0 1rem 2rem -1rem rgb(0 0 0 / 10%), 0 2rem 4rem 0 rgb(0 0 0 / 7%), 0 3rem 4rem -2.5rem rgb(0 0 0 / 20%);
  z-index: 1;
  padding: 1rem;
  border-radius: 0;
}
.summary-card .wrapper .meta .brand {
  height: 55px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(https://res.cloudinary.com/unik/image/upload/v1558350677/projects/KM%20Living/logo.png);
  width: 150px;
}
.summary-card .wrapper .meta .brand .date {
  font-weight: 500;
  font-size: calc(1rem - 1px);
  text-align: right;
  color: #616161;
}
.summary-card .wrapper .title {
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: .3px;
  margin-bottom: 2rem;
}
.summary-price {
  flex-direction: column;
  background-color: rgb(125 84 128);
  color: rgb(255, 255, 255);
  padding: 1rem;
  max-width: 680px;
  margin: 5rem auto 0;
  transform: translateY(-50%);
  box-shadow: 0 1rem 2rem -1rem rgb(0 0 0 / 8%), 0 2rem 4rem 0 rgb(0 0 0 / 4%), 0 3rem 4rem -2.5rem rgb(0 0 0 / 15%);
  border-radius: 0;
}
.parties {
  counter-reset: party;
  counter-increment: parties;
}
.party {
  margin-bottom: 2rem;
}
.parties-counter {
  position: relative;
  margin-right: 3rem;
}
.parties-counter:before {
  counter-increment: party;
  content: "0" counter(party);
}
.parties-counter:after {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 2px;
  background-color: #0026ff;
  top: calc(.5rem + 4px);
  left: calc(2rem + 1px);
}
.parties-content {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.parties-content .row {
  flex: 1 0 40%;
  border: 1px solid #e0e0e0;
  padding: .8rem .5rem;
  margin: 0 0 -1px -1px;
}
.parties-content .row .label {
  font-size: calc(1rem - 1px);
  color: #737373;
  line-height: 1;
  padding: 0 .25rem;
  margin-bottom: 3px;
}
.quote__status .toc {
  color: #757575;
  padding: 2rem 0;
}

.status__accepted {
  padding: 2rem;
  background: darkseagreen;
  color: #fff;
}
.status__declined {
  padding: 2rem;
  background: #ffa8a8;
  color: #fff;
}
.quote__status form {
  margin-right: 1rem;
}
.quote__status form .btn {
  border: 0;
  cursor: pointer;
  display: inline-block;
  padding: 1rem 2rem;
  text-decoration: none;
}
.quote__status select {
  display: block;
  font-size: 16px;
  font-family: sans-serif;
  font-weight: 700;
  color: #444;
  line-height: 1.3;
  padding: .6em 1.4em .5em .8em;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #aaa;
  box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
  border-radius: .5em;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
    linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
  background-repeat: no-repeat, repeat;
  background-position: right .7em top 50%, 0 0;
  background-size: .65em auto, 100%;
}
.btn-refuse {
  color: #363636;
}
.btn-refuse:hover {
  background-color: #f2f2f2;
}
.btn-accept {
  background-color: #2cc01b;
  border-radius: 4px;
  color: #fff;
}
.btn-accept:hover {
  background-color: #29b51a;
}
.btn-submit {
  background-color: #2cc01b;
  border-radius: 4px;
  color: #fff;
  margin: 2rem 0;
}
.btn-submit:hover {
  background-color: #29b51a;
}
@media (min-width: 768px) {
  .quote__container {
    width: 680px;
    max-width: calc(100% - 3rem);
  }
  .summary-card .wrapper {
    padding: 3rem;
    border-radius: 4px;
  }
  .summary-card .wrapper .meta .brand {
    width: 200px;
  }
  .summary-price {
    flex-direction: row;
    padding: 2rem 3rem;
    border-radius: 4px;
  }
}
* {
  vertical-align: baseline;
  font-weight: inherit;
  font-family: inherit;
  font-style: inherit;
  font-size: 100%;
  border: 0 none;
  outline: 0;
  padding: 0;
  margin: 0;
}

ul {
  list-style: none;
}

address, caption, cite, code, dfn, em, 
h1, h2, h3, h4, h5, h6, strong, th, var {
  font-weight: normal;
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 400;
  line-height: 1.2;
}

a {
  text-decoration: none;
}
.btn {
  border-radius: 5px;
  border: none;
  cursor: pointer;
  display: inline-block;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
}

.btn-sm {
  font-size: 14px;
  padding: 8px 10px;
}

.btn-link {
  background: transparent;
}

.btn-md {
  font-size: 16px;
  padding: 12px 20px;
}

.btn:hover {
  outline: 0;
  text-decoration: none;
}

.btn-submit {
  transition: all 200ms ease-in-out;
  background: linear-gradient(to left, #437783 50%, #185e6e 50%);
  background-position: right bottom;
  background-size: 200% 100%;
  color: #ffffff;
}

.btn-disabled {
  background: gray;
  color: #ffffff;
  cursor: not-allowed;
}

.btn-submit:hover {
  background-position: left bottom;
}
label {
  color: #222;
  font-size: 11px;
  font-weight: 800;
  display: inline-block;
  padding-bottom: 0.3rem;
}

select {
  border: 1px solid #eaebec;
  padding: 0.8rem;
  width: 94%;
}

.form-control {
  background-color: #fff;
  border: 1px solid #eaebec;
  border-radius: 2px;
  color: #2c3345;
  font-size: 14px;
  padding: 0.8rem;
  width: 85%;
}

.form-group {
  margin-bottom: 1rem;
}

.form-error {
  color: red;
  font-size: 12px;
}

@media (min-width: 768px) {
  .form-control {
    width: 100%;
  }
  select {
    width: 100%;
  }
}
.list {
  list-style-type: disc;
}

.list > li:before {
  content: "";
  display: list-item;
  position: absolute;
}
:root {
    --color-brand-primary: #f55d49;
    --color-brand-secondary: #0a8080;
    --color-brand-tertiary: #f8f5f2;
    --color-brand-quaternary: #f6f6f8;
    --color-brand-quinary: #e74536;
    --color-brand-senary: #ffb511;
    --color-white: #ffffff;
    --color-black: #222525;
    --color-gray: #757575;
    --color-light-gray: #f8f7f6;
    --color-light-pink: #faeae5;
}

a {
  color: var(--color-black);
}

.ba { border-style: solid; border-width: 1px; }
.bt { border-top-style: solid; border-top-width: 1px; }
.br { border-right-style: solid; border-right-width: 1px; }
.bb { border-bottom-style: solid; border-bottom-width: 1px; }
.bl { border-left-style: solid; border-left-width: 1px; }
.bn { border-style: none; border-width: 0; }

.b--black { border-color: var(--color-black); }
.b--gray { border-color: var(--color-gray); }
.b--light-gray { border-color: var(--color-light-gray); }

.br0 {        border-radius: 0; }
.br1 {        border-radius: .125rem; }
.br2 {        border-radius: .25rem; }
.br3 {        border-radius: .5rem; }
.br4 {        border-radius: 1rem; }
.br-100 {     border-radius: 100%; }
.br-pill {    border-radius: 9999px; }

@media (min-width: 768px) {
  .ba-ns { border-style: solid; border-width: 1px; }
  .bt-ns { border-top-style: solid; border-top-width: 1px; }
  .br-ns { border-right-style: solid; border-right-width: 1px; }
  .bb-ns { border-bottom-style: solid; border-bottom-width: 1px; }
  .bl-ns { border-left-style: solid; border-left-width: 1px; }
  .bn-ns { border-style: none; border-width: 0; }
}
:root {
    --color-brand-primary: #f55d49;
    --color-brand-secondary: #0a8080;
    --color-brand-tertiary: #f8f5f2;
    --color-brand-quaternary: #f6f6f8;
    --color-brand-quinary: #e74536;
    --color-brand-senary: #ffb511;
    --color-white: #ffffff;
    --color-black: #222525;
    --color-gray: #757575;
    --color-light-gray: #f8f7f6;
    --color-light-pink: #faeae5;
}

a {
  color: var(--color-black);
}

a:hover, a.active {
  color: var(--color-brand-secondary);
  text-decoration: none;
  transition: color 240ms ease-out;
}

.white { color: #fff; }
.color-secondary { color: var(--color-brand-secondary); }
.gray { color: var(--color-gray); }
.light-gray { color: var(--color-light-gray); }

.bg-white { background-color: var(--color-white); }
.bg-black { background-color: var(--color-black); }
.bg-gray { background-color: var(--color-gray); }
.bg-light-gray { background-color: var(--color-light-gray); }
.bg-light-pink { background-color: var(--color-light-pink); }
:root {
  --fonts-serif: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,
    'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';

  --font-size-1: 0.75rem;
  --font-size-2: 0.875rem;
  --font-size-3: 1rem;
  --font-size-4: 1.125rem;
  --font-size-5: 1.25rem;
  --font-size-6: 1.5rem;
  --font-size-7: 1.875rem;
}
.h1 { height: 1rem; }
.h2 { height: 2rem; }
.h3 { height: 4rem; }
.h4 { height: 8rem; }
.h5 { height: 16rem; }


@media (min-width: 768px) {

}
.o-100 { opacity: 1; }
.o-90 { opacity: .9; }
.o-80 { opacity: .8; }
.o-70 { opacity: .7; }
.o-60 { opacity: .6; }
.o-50 { opacity: .5; }
.o-40 { opacity: .4; }
.o-30 { opacity: .3; }
.o-20 { opacity: .2; }
.o-10 { opacity: .1; }
.o-05 { opacity: .05; }
.o-025 { opacity: .025; }
.o-0 { opacity: 0; }
:root {
  --spacing-1: .25rem;
  --spacing-2: .5rem;
  --spacing-3: 1rem;
  --spacing-4: 1.5rem;
  --spacing-5: 2rem;
  --spacing-6: 4rem;
  --spacing-7: 8rem;
  --spacing-8: 16rem;
  --spacing-9: 20rem;
  --spacing-10: 30rem;
}

.pa0 { padding: 0 }
.pa1 { padding: var(--spacing-1); }
.pa2 { padding: var(--spacing-2); }
.pa3 { padding: var(--spacing-3); }
.pa4 { padding: var(--spacing-4); }
.pa5 { padding: var(--spacing-5); }
.pa6 { padding: var(--spacing-6); }
.pa7 { padding: var(--spacing-7); }

.pv0 { padding-top: 0; padding-bottom: 0 }
.pv1 { padding-top: var(--spacing-1); padding-bottom: var(--spacing-1); }
.pv2 { padding-top: var(--spacing-2); padding-bottom: var(--spacing-2); }
.pv3 { padding-top: var(--spacing-3); padding-bottom: var(--spacing-3); }
.pv4 { padding-top: var(--spacing-4); padding-bottom: var(--spacing-4); }
.pv5 { padding-top: var(--spacing-5); padding-bottom: var(--spacing-5); }
.pv6 { padding-top: var(--spacing-6); padding-bottom: var(--spacing-6); }
.pv7 { padding-top: var(--spacing-7); padding-bottom: var(--spacing-7); }

.ph0 { padding-left: 0; padding-right: 0 }
.ph1 { padding-left: var(--spacing-1); padding-right: var(--spacing-1); }
.ph2 { padding-left: var(--spacing-2); padding-right: var(--spacing-2); }
.ph3 { padding-left: var(--spacing-3); padding-right: var(--spacing-3); }
.ph4 { padding-left: var(--spacing-4); padding-right: var(--spacing-4); }
.ph5 { padding-left: var(--spacing-5); padding-right: var(--spacing-5); }
.ph6 { padding-left: var(--spacing-6); padding-right: var(--spacing-6); }
.ph7 { padding-left: var(--spacing-7); padding-right: var(--spacing-7); }

.pt0 { padding-top: 0 }
.pt1 { padding-top: var(--spacing-1); }
.pt2 { padding-top: var(--spacing-2); }
.pt3 { padding-top: var(--spacing-3); }
.pt4 { padding-top: var(--spacing-4); }
.pt5 { padding-top: var(--spacing-5); }
.pt6 { padding-top: var(--spacing-6); }
.pt7 { padding-top: var(--spacing-7); }

.pb0 { padding-bottom: 0 }
.pb1 { padding-bottom: var(--spacing-1); }
.pb2 { padding-bottom: var(--spacing-2); }
.pb3 { padding-bottom: var(--spacing-3); }
.pb4 { padding-bottom: var(--spacing-4); }
.pb5 { padding-bottom: var(--spacing-5); }
.pb6 { padding-bottom: var(--spacing-6); }
.pb7 { padding-bottom: var(--spacing-7); }

.pl0 { padding-left: 0 }
.pl1 { padding-left: var(--spacing-1); }
.pl2 { padding-left: var(--spacing-2); }
.pl3 { padding-left: var(--spacing-3); }
.pl4 { padding-left: var(--spacing-4); }
.pl5 { padding-left: var(--spacing-5); }
.pl6 { padding-left: var(--spacing-6); }
.pl7 { padding-left: var(--spacing-7); }

.pr0 { padding-right: 0 }
.pr1 { padding-right: var(--spacing-1); }
.pr2 { padding-right: var(--spacing-2); }
.pr3 { padding-right: var(--spacing-3); }
.pr4 { padding-right: var(--spacing-4); }
.pr5 { padding-right: var(--spacing-5); }
.pr6 { padding-right: var(--spacing-6); }
.pr7 { padding-right: var(--spacing-7); }

.ma0 { margin: 0 }
.ma1 { margin: var(--spacing-1); }
.ma2 { margin: var(--spacing-2); }
.ma3 { margin: var(--spacing-3); }
.ma4 { margin: var(--spacing-4); }
.ma5 { margin: var(--spacing-5); }
.ma6 { margin: var(--spacing-6); }
.ma7 { margin: var(--spacing-7); }

.mv0 { margin-top: 0; margin-bottom: 0 }
.mv1 { margin-top: var(--spacing-1); margin-bottom: var(--spacing-1); }
.mv2 { margin-top: var(--spacing-2); margin-bottom: var(--spacing-2); }
.mv3 { margin-top: var(--spacing-3); margin-bottom: var(--spacing-3); }
.mv4 { margin-top: var(--spacing-4); margin-bottom: var(--spacing-4); }
.mv5 { margin-top: var(--spacing-5); margin-bottom: var(--spacing-5); }
.mv6 { margin-top: var(--spacing-6); margin-bottom: var(--spacing-6); }
.mv7 { margin-top: var(--spacing-7); margin-bottom: var(--spacing-7); }

.mt0 { margin-top: 0 }
.mt1 { margin-top: var(--spacing-1); }
.mt2 { margin-top: var(--spacing-2); }
.mt3 { margin-top: var(--spacing-3); }
.mt4 { margin-top: var(--spacing-4); }
.mt5 { margin-top: var(--spacing-5); }
.mt6 { margin-top: var(--spacing-6); }
.mt7 { margin-top: var(--spacing-7); }

.mb0 { margin-bottom: 0 }
.mb1 { margin-bottom: var(--spacing-1); }
.mb2 { margin-bottom: var(--spacing-2); }
.mb3 { margin-bottom: var(--spacing-3); }
.mb4 { margin-bottom: var(--spacing-4); }
.mb5 { margin-bottom: var(--spacing-5); }
.mb6 { margin-bottom: var(--spacing-6); }
.mb7 { margin-bottom: var(--spacing-7); }

.ml0 { margin-left: 0 }
.ml1 { margin-left: var(--spacing-1); }
.ml2 { margin-left: var(--spacing-2); }
.ml3 { margin-left: var(--spacing-3); }
.ml4 { margin-left: var(--spacing-4); }
.ml5 { margin-left: var(--spacing-5); }
.ml6 { margin-left: var(--spacing-6); }
.ml7 { margin-left: var(--spacing-7); }

.mr0 { margin-right: 0 }
.mr1 { margin-right: var(--spacing-1); }
.mr2 { margin-right: var(--spacing-2); }
.mr3 { margin-right: var(--spacing-3); }
.mr4 { margin-right: var(--spacing-4); }
.mr5 { margin-right: var(--spacing-5); }
.mr6 { margin-right: var(--spacing-6); }
.mr7 { margin-right: var(--spacing-7); }

@media (min-width: 768px) {
  .pa0-ns { padding: 0 }
  .pa1-ns { padding: var(--spacing-1); }
  .pa2-ns { padding: var(--spacing-2); }
  .pa3-ns { padding: var(--spacing-3); }
  .pa4-ns { padding: var(--spacing-4); }
  .pa5-ns { padding: var(--spacing-5); }
  .pa6-ns { padding: var(--spacing-6); }
  .pa7-ns { padding: var(--spacing-7); }

  .pv0-ns { padding-top: 0; padding-bottom: 0 }
  .pv1-ns { padding-top: var(--spacing-1); padding-bottom: var(--spacing-1); }
  .pv2-ns { padding-top: var(--spacing-2); padding-bottom: var(--spacing-2); }
  .pv3-ns { padding-top: var(--spacing-3); padding-bottom: var(--spacing-3); }
  .pv4-ns { padding-top: var(--spacing-4); padding-bottom: var(--spacing-4); }
  .pv5-ns { padding-top: var(--spacing-5); padding-bottom: var(--spacing-5); }
  .pv6-ns { padding-top: var(--spacing-6); padding-bottom: var(--spacing-6); }
  .pv7-ns { padding-top: var(--spacing-7); padding-bottom: var(--spacing-7); }

  .pt0-ns { padding-top: 0 }
  .pt1-ns { padding-top: var(--spacing-1); }
  .pt2-ns { padding-top: var(--spacing-2); }
  .pt3-ns { padding-top: var(--spacing-3); }
  .pt4-ns { padding-top: var(--spacing-4); }
  .pt5-ns { padding-top: var(--spacing-5); }
  .pt6-ns { padding-top: var(--spacing-6); }
  .pt7-ns { padding-top: var(--spacing-7); }

  .pb0-ns { padding-bottom: 0 }
  .pb1-ns { padding-bottom: var(--spacing-1); }
  .pb2-ns { padding-bottom: var(--spacing-2); }
  .pb3-ns { padding-bottom: var(--spacing-3); }
  .pb4-ns { padding-bottom: var(--spacing-4); }
  .pb5-ns { padding-bottom: var(--spacing-5); }
  .pb6-ns { padding-bottom: var(--spacing-6); }
  .pb7-ns { padding-bottom: var(--spacing-7); }

  .pl0-ns { padding-left: 0 }
  .pl1-ns { padding-left: var(--spacing-1); }
  .pl2-ns { padding-left: var(--spacing-2); }
  .pl3-ns { padding-left: var(--spacing-3); }
  .pl4-ns { padding-left: var(--spacing-4); }
  .pl5-ns { padding-left: var(--spacing-5); }
  .pl6-ns { padding-left: var(--spacing-6); }
  .pl7-ns { padding-left: var(--spacing-7); }

  .pr0-ns { padding-right: 0 }
  .pr1-ns { padding-right: var(--spacing-1); }
  .pr2-ns { padding-right: var(--spacing-2); }
  .pr3-ns { padding-right: var(--spacing-3); }
  .pr4-ns { padding-right: var(--spacing-4); }
  .pr5-ns { padding-right: var(--spacing-5); }
  .pr6-ns { padding-right: var(--spacing-6); }
  .pr7-ns { padding-right: var(--spacing-7); }

  .ma0-ns { margin: 0 }
  .ma1-ns { margin: var(--spacing-1); }
  .ma2-ns { margin: var(--spacing-2); }
  .ma3-ns { margin: var(--spacing-3); }
  .ma4-ns { margin: var(--spacing-4); }
  .ma5-ns { margin: var(--spacing-5); }
  .ma6-ns { margin: var(--spacing-6); }
  .ma7-ns { margin: var(--spacing-7); }

  .mv0-ns { margin-top: 0; margin-bottom: 0 }
  .mv1-ns { margin-top: var(--spacing-1); margin-bottom: var(--spacing-1); }
  .mv2-ns { margin-top: var(--spacing-2); margin-bottom: var(--spacing-2); }
  .mv3-ns { margin-top: var(--spacing-3); margin-bottom: var(--spacing-3); }
  .mv4-ns { margin-top: var(--spacing-4); margin-bottom: var(--spacing-4); }
  .mv5-ns { margin-top: var(--spacing-5); margin-bottom: var(--spacing-5); }
  .mv6-ns { margin-top: var(--spacing-6); margin-bottom: var(--spacing-6); }
  .mv7-ns { margin-top: var(--spacing-7); margin-bottom: var(--spacing-7); }
  .mt0-ns { margin-top: 0 }
  .mt1-ns { margin-top: var(--spacing-1); }
  .mt2-ns { margin-top: var(--spacing-2); }
  .mt3-ns { margin-top: var(--spacing-3); }
  .mt4-ns { margin-top: var(--spacing-4); }
  .mt5-ns { margin-top: var(--spacing-5); }
  .mt6-ns { margin-top: var(--spacing-6); }
  .mt7-ns { margin-top: var(--spacing-7); }

  .mb0-ns { margin-bottom: 0 }
  .mb1-ns { margin-bottom: var(--spacing-1); }
  .mb2-ns { margin-bottom: var(--spacing-2); }
  .mb3-ns { margin-bottom: var(--spacing-3); }
  .mb4-ns { margin-bottom: var(--spacing-4); }
  .mb5-ns { margin-bottom: var(--spacing-5); }
  .mb6-ns { margin-bottom: var(--spacing-6); }
  .mb7-ns { margin-bottom: var(--spacing-7); }

  .ml0-ns { margin-left: 0 }
  .ml1-ns { margin-left: var(--spacing-1); }
  .ml2-ns { margin-left: var(--spacing-2); }
  .ml3-ns { margin-left: var(--spacing-3); }
  .ml4-ns { margin-left: var(--spacing-4); }
  .ml5-ns { margin-left: var(--spacing-5); }
  .ml6-ns { margin-left: var(--spacing-6); }
  .ml7-ns { margin-left: var(--spacing-7); }

  .mr0-ns { margin-right: 0 }
  .mr1-ns { margin-right: var(--spacing-1); }
  .mr2-ns { margin-right: var(--spacing-2); }
  .mr3-ns { margin-right: var(--spacing-3); }
  .mr4-ns { margin-right: var(--spacing-4); }
  .mr5-ns { margin-right: var(--spacing-5); }
  .mr6-ns { margin-right: var(--spacing-6); }
  .mr7-ns { margin-right: var(--spacing-7); }
}
h1 {
  font-size: 2.6em;
  font-weight: 700;
}

.f1 { font-size: 3rem; }
.f2 { font-size: 2.25rem; }
.f3 { font-size: 1.5rem; }
.f4 { font-size: 1.25rem; }
.f5 { font-size: 1rem; }
.f6 { font-size: .875rem; }
.f7 { font-size: .75rem; }

.fw1 { font-weight: 100; }
.fw2 { font-weight: 200; }
.fw3 { font-weight: 300; }
.fw4 { font-weight: 400; }
.fw5 { font-weight: 500; }
.fw6 { font-weight: 600; }
.fw7 { font-weight: 700; }
.fw8 { font-weight: 800; }
.fw9 { font-weight: 900; }

@media (min-width: 768px) {
  .f1-ns { font-size: 3rem; }
  .f2-ns { font-size: 2.25rem; }
  .f3-ns { font-size: 1.5rem; }
  .f4-ns { font-size: 1.25rem; }
  .f5-ns { font-size: 1rem; }
  .f6-ns { font-size: .875rem; }
  .f7-ns { font-size: .75rem; }
}

.lh-copy {
  line-height: 1.5;
}

.uppercase {
  text-transform: uppercase;
}
.tc {
  text-align: center;
}

.letter-spacing-1 {
  letter-spacing: .5px;
}
.w1 { width: 1rem; }
.w2 { width: 2rem; }
.w3 { width: 4rem; }
.w4 { width: 8rem; }
.w5 { width: 16rem; }
.w6 { width: 20rem; }


.w-auto { width: auto; }
.w-50 { width: 50%; }
.w-80 { width: 80%; }
.w-100 { width: 100%; }

@media (min-width: 768px) {
  .w1-ns {  width: 1rem; }
  .w2-ns { width: 2rem; }
  .w3-ns { width: 4rem; }
  .w4-ns { width: 8rem; }
  .w5-ns { width: 16rem; }
  .w6-ns { width: 20rem; }
  .w-50-ns { width: 50%; }
  .w-100-ns { width: 100%; }
  .w-auto-ns { width: auto; }
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */

body {
  font-family: Roboto, -apple-system, BlinkMacSystemFont, Segoe UI, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
  font-size: 14px;
  line-height: 1.2;
  color: #333;
  min-height: 100vh;
  min-width:100%;
  margin: 0 auto;
  -webkit-font-smoothing: antialiased;
}

.turbo-progress-bar {
  background: linear-gradient(to right, var(--color-brand-primary), var(--color-brand-secondary));
}

@media (min-width: 400px) {
  body {
    font-size: 16px;
  }
}

#map {
  height: 400px;
  width: 100%;
}
