/* Lato throughout, the Google font Urbanrise uses on urbanrise.in: light for section headings, regular for text and bold for the hero, labels and buttons. Self-hosted (latin + latin-ext, swap; the latin files preloaded where the first screen uses them; the rupee sign, which Lato lacks, in its own 1 KB file). */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/lato-300-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/lato-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/lato-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/lato-300-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/lato-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/lato-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/rupee-inter-var.woff2) format('woff2');
  unicode-range: U+20B9;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/rupee-inter-var.woff2) format('woff2');
  unicode-range: U+20B9;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/rupee-inter-var.woff2) format('woff2');
  unicode-range: U+20B9;
}

:root {
  --base-color-brand--purple: #2d2f55;
  --base-color-neutral--white: #fff;
  --link-color--link-primary: var(--base-color-brand--purple-light);
  --background-color--background-primary: var(--base-color-brand--purple);
  --text-color--text-alternate: var(--base-color-neutral--white);
  --text-color--text-primary: var(--base-color-brand--purple);
  --text-color--text-secondary: var(--base-color-brand--gold);
  --background-color--background-success\<deleted\|variable-879e2a57-3170-38fd-0ae7-d0e890873ab2\>: var(--base-color-system--success-green\<deleted\|variable-8fc09a81-a1c7-3c5b-2cf2-835ad5d96212\>);
  --text-color--text-success\<deleted\|variable-17518f72-fb93-45b5-ad9e-fdd3f2b1833a\>: var(--base-color-system--success-green-dark\<deleted\|variable-70ae3530-1c64-4d15-f2af-205678316683\>);
  --border-color--border-primary: var(--base-color-brand--gold);
  --background-color--background-alternate: var(--base-color-neutral--white);
  --background-color--background-secondary: var(--base-color-brand--purple-light);
  --background-color--background-tertiary: var(--base-color-brand--gold);
  --background-color--background-error\<deleted\|variable-89aecd3e-2fe8-312c-65a2-e3e7c57d326c\>: var(--base-color-system--error-red\<deleted\|variable-ad7a5e8d-bd95-fba4-5110-cbccfa2520c4\>);
  --text-color--text-error\<deleted\|variable-4a51c5d2-820c-a0d9-b49e-0e5d273c964f\>: var(--base-color-system--error-red-dark\<deleted\|variable-f7a8b234-8033-a5d6-4d85-0326277c2bf8\>);
  --base-color-brand--gold: #d1b35b;
  --background-color--background-warning\<deleted\|variable-0aa1a7ce-e851-b6b5-66db-1a1a96e8e04b\>: var(--base-color-system--warning-yellow\<deleted\|variable-b0ee00e7-091a-a3f5-1619-b09d07f4475a\>);
  --text-color--text-warning\<deleted\|variable-825aa1d8-b093-0b89-37c5-87d980df10f5\>: var(--base-color-system--warning-yellow-dark\<deleted\|variable-296491a7-483e-1229-36b5-e13808cc9004\>);
  --link-color--link-alternate: var(--base-color-neutral--white);
  --link-color--link-secondary: var(--base-color-brand--gold);
  --border-color--border-secondary: var(--base-color-brand--purple-light);
  --base-color-brand--purple-light: #383e8a;
  --base-color-neutral--black: #000;
  --border-color--border-alternate: var(--base-color-brand--purple);
  --base-color-system--success-green\<deleted\|variable-8fc09a81-a1c7-3c5b-2cf2-835ad5d96212\>: #cef5ca;
  --base-color-system--success-green-dark\<deleted\|variable-70ae3530-1c64-4d15-f2af-205678316683\>: #114e0b;
  --base-color-system--error-red\<deleted\|variable-ad7a5e8d-bd95-fba4-5110-cbccfa2520c4\>: #f8e4e4;
  --base-color-system--error-red-dark\<deleted\|variable-f7a8b234-8033-a5d6-4d85-0326277c2bf8\>: #3b0b0b;
  --base-color-system--warning-yellow\<deleted\|variable-b0ee00e7-091a-a3f5-1619-b09d07f4475a\>: #fcf8d8;
  --base-color-system--warning-yellow-dark\<deleted\|variable-296491a7-483e-1229-36b5-e13808cc9004\>: #5e5515;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 12px;
  height: 12px;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
  border-width: 4px;
  border-color: #3898ec;
}

body {
  background-color: var(--base-color-brand--purple);
  color: var(--base-color-neutral--white);
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.2;
}

h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.2;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.4;
}

h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.5;
}

h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}

p {
  margin-bottom: 0;
}

a {
  color: var(--link-color--link-primary);
  transition: all .25s;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 1.5rem;
}

li {
  margin-bottom: .25rem;
}

img {
  max-width: 100%;
  display: inline-block;
}

label {
  margin-bottom: .25rem;
  font-weight: 500;
}

blockquote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

figure {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

figcaption {
  text-align: center;
  margin-top: .25rem;
}

.utility-page_component {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex;
}

.utility-page_wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  max-width: 20rem;
  display: flex;
}

.utility-page_form {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.utility-page_image {
  margin-left: auto;
  margin-right: auto;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.margin-custom2 {
  margin: 2.5rem;
}

.padding-xlarge {
  padding: 4rem;
}

.margin-xlarge {
  margin: 4rem;
}

.margin-xsmall {
  margin: .5rem;
}

.padding-xhuge {
  padding: 8rem;
}

.margin-custom1 {
  margin: 1.5rem;
}

.padding-0 {
  padding: 0;
}

.padding-xxhuge {
  padding: 12rem;
}

.padding-huge {
  padding: 6rem;
}

.margin-large {
  margin: 3rem;
}

.padding-xxlarge {
  padding: 5rem;
}

.margin-xxsmall {
  margin: .25rem;
}

.padding-custom3 {
  padding: 3.5rem;
}

.padding-large {
  padding: 3rem;
}

.margin-tiny {
  margin: .125rem;
}

.padding-small {
  padding: 1rem;
}

.padding-custom2 {
  padding: 2.5rem;
}

.margin-custom3 {
  margin: 3.5rem;
}

.padding-custom1 {
  padding: 1.5rem;
}

.margin-huge {
  margin: 6rem;
}

.padding-medium {
  padding: 2rem;
}

.padding-xsmall {
  padding: .5rem;
}

.margin-xxlarge {
  margin: 5rem;
}

.padding-xxsmall {
  padding: .25rem;
}

.margin-xhuge {
  margin: 8rem;
}

.padding-tiny {
  padding: .125rem;
}

.margin-small {
  margin: 1rem;
}

.margin-medium {
  margin: 2rem;
}

.margin-xxhuge {
  margin: 12rem;
}

.margin-0 {
  margin: 0;
}

.margin-horizontal {
  margin-top: 0;
  margin-bottom: 0;
}

.padding-top {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.margin-vertical {
  margin-left: 0;
  margin-right: 0;
}

.margin-bottom {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.padding-left {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.padding-vertical {
  padding-left: 0;
  padding-right: 0;
}

.padding-horizontal {
  padding-top: 0;
  padding-bottom: 0;
}

.margin-right {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.margin-top {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.margin-left {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
}

.padding-right {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.padding-bottom {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.form_checkbox {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.form_checkbox-icon {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-checked {
  background-size: 90%;
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-focus {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.fs-styleguide_background {
  border: 1px solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.fs-styleguide_spacing {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-image: linear-gradient(to top, #2d40ea1a, #fff0);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start stretch;
  display: grid;
  position: relative;
}

.icon-1x1-small {
  flex: none;
  width: 1rem;
  height: 1rem;
}

.fs-styleguide_background-space {
  width: 1px;
  height: 1px;
  margin: 5rem;
}

.text-weight-semibold {
  font-weight: 600;
}

.fs-styleguide_item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  border-bottom: 1px solid #0000001a;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  padding-bottom: 3rem;
  display: grid;
  position: relative;
}

.fs-styleguide_item.is-stretch {
  justify-items: stretch;
}

.max-width-full {
  width: 100%;
  max-width: none;
}

.fs-styleguide_item-header {
  border-bottom: 1px solid #0000001a;
  width: 100%;
  padding-bottom: 2rem;
}

.background-color-primary {
  background-color: var(--background-color--background-primary);
  color: var(--text-color--text-alternate);
}

.text-color-primary {
  color: var(--text-color--text-primary);
}

.text-color-secondary {
  color: var(--text-color--text-secondary);
}

.fs-styleguide_2-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.form_message-success {
  background-color: var(--background-color--background-success\<deleted\|variable-879e2a57-3170-38fd-0ae7-d0e890873ab2\>);
  color: var(--text-color--text-success\<deleted\|variable-17518f72-fb93-45b5-ad9e-fdd3f2b1833a\>);
  padding: 1.25rem;
}

.fs-styleguide_row {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.heading-style-h3 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.2;
}

.text-rich-text h1, .text-rich-text h2, .text-rich-text h3, .text-rich-text h4 {
  margin-top: 1.5rem;
  margin-bottom: 1rem;
}

.text-rich-text h5, .text-rich-text h6 {
  margin-top: 1.25rem;
  margin-bottom: 1rem;
}

.text-rich-text p {
  margin-bottom: 1rem;
}

.text-rich-text ul, .text-rich-text ol {
  margin-bottom: 1.5rem;
}

.text-rich-text blockquote {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.container-small {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}

.heading-style-h1 {
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.1;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.text-weight-normal {
  font-weight: 400;
}

.padding-section-small {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.max-width-small {
  width: 100%;
  max-width: 20rem;
}

.text-color-alternate {
  color: var(--text-color--text-alternate);
}

.text-weight-medium {
  font-weight: 500;
}

.fs-styleguide_section-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid var(--border-color--border-primary);
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-bottom: 3rem;
  line-height: 1.4;
  display: grid;
}

.max-width-xxlarge {
  width: 100%;
  max-width: 80rem;
}

.fs-styleguide_1-col {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fs-styleguide_empty-box {
  z-index: -1;
  background-color: #2d40ea0d;
  border: 1px dashed #2d40ea;
  min-width: 3rem;
  height: 3rem;
  position: relative;
}

.text-weight-light {
  font-weight: 300;
}

.fs-styleguide_heading-medium {
  font-size: 4rem;
}

.max-width-xsmall {
  width: 100%;
  max-width: 16rem;
}

.fs-styleguide_4-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.text-size-regular {
  font-size: 1rem;
}

.text-weight-xbold {
  font-weight: 800;
}

.text-align-right {
  text-align: right;
}

.text-weight-bold {
  font-weight: 700;
}

.max-width-medium {
  width: 100%;
  max-width: 32rem;
}

.fs-styleguide_item-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.max-width-large {
  width: 100%;
  max-width: 48rem;
}

.fs-styleguide_header-block {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  display: grid;
}

.background-color-alternate {
  background-color: var(--background-color--background-alternate);
}

.max-width-xlarge {
  width: 100%;
  max-width: 64rem;
}

.form_radio-icon {
  width: .875rem;
  height: .875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: .5rem;
}

.form_radio-icon.w--redirected-checked {
  border-width: .25rem;
  width: .875rem;
  height: .875rem;
}

.form_radio-icon.w--redirected-focus {
  width: .875rem;
  height: .875rem;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.text-align-left {
  text-align: left;
}

.background-color-secondary {
  background-color: var(--background-color--background-secondary);
}

.form_input {
  border: 1px solid var(--border-color--border-primary);
  background-color: var(--base-color-neutral--white);
  min-height: 3rem;
  color: var(--text-color--text-primary);
  margin-bottom: 0;
  padding: .5rem 1rem;
  font-size: 1rem;
}

.form_input::placeholder {
  color: var(--link-color--link-primary);
}

.form_input.is-select-input {
  color: var(--text-color--text-secondary);
}

.form_input.is-text-area {
  min-height: 8rem;
  padding-top: .75rem;
  font-size: 1rem;
}

.padding-section-large {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.fs-styleguide_3-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.text-style-link {
  color: var(--link-color--link-primary);
  text-decoration: underline;
}

.fs-styleguide_header {
  background-color: var(--background-color--background-primary);
  color: var(--text-color--text-alternate);
  background-image: radial-gradient(circle at 100% 100%, #dd23bb40, #0000 40%), radial-gradient(circle at 0 100%, #2d62ff4d, #0000 60%);
}

.heading-style-h2 {
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.2;
}

.page-wrapper {
  filter: none;
  max-width: 256rem;
  margin-left: auto;
  margin-right: auto;
}

.fs-styleguide_label {
  background-color: var(--background-color--background-secondary);
  color: var(--text-color--text-alternate);
  border-radius: .25rem;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem .75rem .3rem;
  font-weight: 600;
  display: flex;
}

.fs-styleguide_label.is-tag {
  background-color: var(--background-color--background-tertiary);
}

.container {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

.container.is-nav {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.form_message-error {
  background-color: var(--background-color--background-error\<deleted\|variable-89aecd3e-2fe8-312c-65a2-e3e7c57d326c\>);
  color: var(--text-color--text-error\<deleted\|variable-4a51c5d2-820c-a0d9-b49e-0e5d273c964f\>);
  margin-top: .75rem;
  padding: .75rem;
}

.text-align-center {
  text-align: center;
}

.form_component {
  margin-bottom: 0;
}

.max-width-xxsmall {
  width: 100%;
  max-width: 12rem;
}

.align-center {
  margin-left: auto;
  margin-right: auto;
}

.button {
  background-color: var(--base-color-brand--gold);
  color: var(--text-color--text-primary);
  text-align: center;
  padding: .75rem 1.5rem;
  font-weight: 600;
}

.button:hover {
  background-color: var(--background-color--background-secondary);
  color: var(--text-color--text-alternate);
}

.button.is-text {
  color: #000;
  background-color: #0000;
  border: 2px solid #0000;
}

.button.is-small {
  padding: .5rem 1.25rem;
}

.button.is-large {
  padding: 1rem 2rem;
}

.button.is-secondary {
  border: 1px solid var(--border-color--border-primary);
  color: var(--text-color--text-secondary);
  background-color: #0000;
}

.button.is-secondary:hover {
  background-color: var(--background-color--background-tertiary);
  color: var(--text-color--text-primary);
}

.button.is-icon {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.fs-styleguide_classes {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.text-size-medium {
  font-size: 1.125rem;
}

.text-size-medium.text-weight-bold {
  font-weight: 700;
}

.fs-styleguide_section {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.fs-styleguide_section.is-vertical {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-columns: 1fr;
}

.button-group {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.button-group.is-right {
  justify-content: flex-end;
  align-items: center;
}

.hide {
  display: none;
}

.padding-section-medium {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.container-medium {
  width: 100%;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
}

.form_radio {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.fs-styleguide_spacing-all {
  display: none;
}

.spacer-huge {
  width: 100%;
  padding-top: 6rem;
}

.spacer-medium {
  width: 100%;
  padding-top: 2rem;
}

.fs-styleguide_spacer-box {
  background-color: #2d40ea1a;
  border: 1px dashed #2d40ea;
  width: 100%;
  position: relative;
}

.spacer-xsmall {
  width: 100%;
  padding-top: .5rem;
}

.spacer-small {
  width: 100%;
  padding-top: 1rem;
}

.spacer-xhuge {
  width: 100%;
  padding-top: 8rem;
}

.spacer-tiny {
  width: 100%;
  padding-top: .125rem;
}

.spacer-xxsmall {
  width: 100%;
  padding-top: .25rem;
}

.spacer-xxhuge {
  width: 100%;
  padding-top: 12rem;
}

.spacer-xlarge {
  width: 100%;
  padding-top: 4rem;
}

.spacer-large {
  padding-top: 3rem;
}

.spacer-xxlarge {
  width: 100%;
  padding-top: 5rem;
}

.fs-styleguide_message {
  background-color: var(--background-color--background-warning\<deleted\|variable-0aa1a7ce-e851-b6b5-66db-1a1a96e8e04b\>);
  color: var(--text-color--text-warning\<deleted\|variable-825aa1d8-b093-0b89-37c5-87d980df10f5\>);
  border-radius: .25rem;
  padding: .25rem .5rem;
  font-size: .875rem;
}

.background-color-tertiary {
  background-color: var(--background-color--background-tertiary);
}

.fs-styleguide_hero-label {
  color: var(--text-color--text-primary);
  text-transform: uppercase;
  background-color: #eee;
  border-radius: .25rem;
  padding: .25rem .375rem;
  font-size: .75rem;
  font-weight: 500;
  text-decoration: none;
}

.fs-styleguide_heading-header {
  font-size: 6rem;
}

.navbar {
  background-color: #ddd0;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 4.5rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  display: flex;
}

.nav_logo-link {
  width: 12.5rem;
  padding-left: 0;
}

.nav_logo-link:hover {
  opacity: .7;
}

.nav_menu {
  align-items: center;
  display: flex;
  position: static;
}

.nav_menu.is-page-height-tablet {
  flex-flow: wrap;
  justify-content: flex-end;
  align-items: center;
}

.nav_link {
  color: var(--link-color--link-alternate);
  padding: .25rem .5rem .25rem .75rem;
  font-size: 1rem;
}

.nav_link:hover {
  color: var(--text-color--text-secondary);
}

.nav_link.w--current {
  color: var(--link-color--link-secondary);
}

.nav_menu-buttons {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  margin-left: 1rem;
  display: flex;
}

.nav_menu-button {
  padding: 0;
}

.section {
  padding: 4rem 2.5rem;
}

.hero_component {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1.25fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.hero_image {
  aspect-ratio: auto;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.contact_component {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: stretch stretch;
  display: grid;
}

.contact_image {
  aspect-ratio: 3 / 4;
  object-fit: cover;
  width: 100%;
  display: block;
}

.text-style-tagline {
  color: var(--background-color--background-tertiary);
  letter-spacing: .2em;
  text-transform: uppercase;
  justify-content: center;
  align-items: center;
  font-size: .875rem;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
}

.contact_form_component {
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 0;
}

.contact_form {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.form_form_label {
  margin-bottom: .5rem;
  font-weight: 400;
}

.form_message-success-wrapper {
  margin-top: 1rem;
  padding: 0;
}

.success-text {
  font-weight: 600;
}

.form_message-error-wrapper {
  margin-top: 1rem;
  padding: 0;
}

.error-text {
  color: #e23939;
}

.overview_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.gallery_grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.gallery_image {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.master_content-wrapper {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.master_image {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.feature_content {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.feature_image {
  object-fit: cover;
  width: 100%;
}

.faq_component {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-auto-columns: 100%;
  place-items: start stretch;
  display: grid;
}

.faq_accordion {
  border: 1px solid var(--border-color--border-secondary);
  background-color: var(--base-color-brand--purple-light);
  border-radius: 0;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  overflow: hidden;
}

.faq_question {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1.5rem;
  display: flex;
}

.faq5_icon-wrapper {
  align-self: flex-start;
  width: 2rem;
  display: flex;
}

.icon-embed-small {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  display: flex;
}

.faq_answer {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  overflow: hidden;
}

.cta_card {
  grid-column-gap: 5rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr max-content;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 3rem;
  display: grid;
  overflow: hidden;
}

.footer {
  background-image: linear-gradient(#fff0, #000);
  padding: 3rem 2.5rem;
}

.footer_grid {
  grid-column-gap: 4vw;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 12.5rem 4fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: start;
  display: grid;
}

.footer_logo-link {
  float: none;
  width: 12.5rem;
  padding-left: 0;
}

.footer_logo {
  width: 100%;
}

.footer_link-list {
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-auto-columns: 100%;
  place-items: flex-start start;
  display: flex;
}

.footer_link {
  color: var(--link-color--link-alternate);
  padding-top: .5rem;
  padding-bottom: .5rem;
  font-size: .875rem;
  font-weight: 400;
  text-decoration: none;
}

.footer_link:hover {
  color: var(--link-color--link-secondary);
}

.table_cell {
  padding: .75rem 1.25rem;
}

.table_row.is-purple {
  background-color: var(--base-color-brand--purple-light);
}

.table_header {
  color: var(--text-color--text-alternate);
  text-align: left;
  padding: .75rem 1.25rem;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
}

.table_component {
  width: 100%;
}

.text-size-tiny {
  font-size: .75rem;
}

.gallery5_grid-list {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
}

.gallery_row {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.gallery_lightbox-link {
  width: 100%;
  height: 100%;
}

.gallery_image-wrapper {
  border-radius: var(--\<unknown\|relume-variable-radius-large\>);
  width: 100%;
  overflow: hidden;
}

.feature_image-wrapper:hover {
  opacity: .7;
}

.heading {
  flex-flow: column;
  display: flex;
}

@media screen and (max-width: 991px) {
  .padding-xlarge {
    padding: 3rem;
  }

  .margin-xlarge {
    margin: 3rem;
  }

  .padding-xhuge {
    padding: 6rem;
  }

  .padding-xxhuge {
    padding: 8rem;
  }

  .padding-huge {
    padding: 5rem;
  }

  .margin-large {
    margin: 2.5rem;
  }

  .padding-xxlarge {
    padding: 4rem;
  }

  .padding-large {
    padding: 2.5rem;
  }

  .margin-huge {
    margin: 5rem;
  }

  .padding-medium {
    padding: 1.5rem;
  }

  .margin-xxlarge {
    margin: 4rem;
  }

  .margin-xhuge {
    margin: 6rem;
  }

  .margin-medium {
    margin: 1.5rem;
  }

  .margin-xxhuge {
    margin: 8rem;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .hide-tablet {
    display: none;
  }

  .fs-styleguide_2-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .max-width-full-tablet {
    width: 100%;
    max-width: none;
  }

  .fs-styleguide_1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .fs-styleguide_heading-medium {
    font-size: 3rem;
  }

  .fs-styleguide_4-col {
    grid-template-columns: 1fr;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .fs-styleguide_3-col {
    grid-template-columns: 1fr;
  }

  .fs-styleguide_section {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr;
  }

  .padding-section-medium {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .spacer-huge {
    padding-top: 5rem;
  }

  .spacer-medium {
    padding-top: 1.5rem;
  }

  .spacer-xhuge {
    padding-top: 6rem;
  }

  .spacer-xxhuge {
    padding-top: 8rem;
  }

  .spacer-xlarge {
    padding-top: 3rem;
  }

  .spacer-large {
    padding-top: 2.5rem;
  }

  .spacer-xxlarge {
    padding-top: 4rem;
  }

  .fs-styleguide_heading-header {
    font-size: 4rem;
  }

  .navbar {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .nav_menu {
    border-bottom: 1px solid var(--border-color--border-primary);
    background-color: var(--background-color--background-primary);
    -webkit-text-fill-color: inherit;
    background-clip: border-box;
    padding: 1rem 5% 2rem;
    position: absolute;
    overflow: auto;
  }

  .nav_menu.is-page-height-tablet {
    height: 100dvh;
    padding-bottom: 6.5rem;
    transition: height .5s;
  }

  .nav_link {
    width: auto;
    padding: .75rem 0;
    font-size: 1.125rem;
  }

  .nav_menu-buttons {
    flex-direction: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    align-items: stretch;
    margin-top: 1.5rem;
    margin-left: 0;
  }

  .nav_menu-button {
    width: 3rem;
    height: 3rem;
  }

  .nav_menu-button.w--open {
    background-color: #0000;
  }

  .menu-icon {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }

  .menu-icon1_line-top {
    background-color: var(--base-color-neutral--white);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .menu-icon1_line-middle {
    background-color: var(--base-color-neutral--white);
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }

  .menu-icon1_line-middle-inner {
    width: 4px;
    height: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .menu-icon1_line-bottom {
    background-color: var(--base-color-neutral--white);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .section {
    padding: 4rem 2rem;
  }

  .hero_component {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    min-height: auto;
  }

  .contact_component {
    grid-column-gap: 3rem;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: row;
    min-height: auto;
  }

  .overview_component, .master_content-wrapper {
    grid-column-gap: 3rem;
    grid-row-gap: 2rem;
  }

  .feature_content {
    grid-column-gap: 3rem;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: row;
    min-height: auto;
  }

  .cta_card {
    grid-column-gap: 3rem;
    padding-bottom: 2rem;
  }

  .footer {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .footer_grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 1.5rem;
  }

  h4 {
    font-size: 1.25rem;
  }

  h5 {
    font-size: 1rem;
  }

  h6 {
    font-size: .875rem;
  }

  .padding-xlarge {
    padding: 2rem;
  }

  .margin-xlarge {
    margin: 2rem;
  }

  .padding-xhuge {
    padding: 4rem;
  }

  .padding-xxhuge {
    padding: 4.5rem;
  }

  .padding-huge {
    padding: 3.5rem;
  }

  .margin-large {
    margin: 1.5rem;
  }

  .padding-xxlarge {
    padding: 3rem;
  }

  .padding-large {
    padding: 1.5rem;
  }

  .margin-huge {
    margin: 3.5rem;
  }

  .padding-medium {
    padding: 1.25rem;
  }

  .margin-xxlarge {
    margin: 3rem;
  }

  .margin-xhuge {
    margin: 4rem;
  }

  .margin-medium {
    margin: 1.25rem;
  }

  .margin-xxhuge {
    margin: 4.5rem;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .hide-mobile-landscape {
    display: none;
  }

  .heading-style-h3 {
    font-size: 1.5rem;
  }

  .heading-style-h1 {
    font-size: 2.5rem;
  }

  .padding-global {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .padding-section-small {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .fs-styleguide_section-header {
    font-size: .875rem;
  }

  .fs-styleguide_heading-medium {
    font-size: 2rem;
  }

  .max-width-full-mobile-landscape {
    width: 100%;
    max-width: none;
  }

  .padding-section-large {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .heading-style-h2 {
    font-size: 2rem;
  }

  .padding-section-medium {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .spacer-huge {
    padding-top: 3.5rem;
  }

  .spacer-medium {
    padding-top: 1.25rem;
  }

  .spacer-xhuge {
    padding-top: 4rem;
  }

  .spacer-xxhuge {
    padding-top: 4.5rem;
  }

  .spacer-xlarge {
    padding-top: 2rem;
  }

  .spacer-large {
    padding-top: 1.5rem;
  }

  .spacer-xxlarge {
    padding-top: 3rem;
  }

  .navbar {
    height: auto;
    min-height: 4rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .nav_logo-link {
    padding-left: 0;
  }

  .nav_menu.is-page-height-tablet {
    padding-bottom: 6rem;
  }

  .section {
    padding: 2.5rem 1.5rem;
  }

  .hero_component {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .contact_component {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .overview_component {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
    grid-template-columns: 1fr;
  }

  .gallery_grid {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .master_content-wrapper {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
    grid-template-columns: 1fr;
  }

  .feature_content {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .faq_question {
    padding: 1rem 1.25rem;
  }

  .faq5_icon-wrapper {
    width: 1.75rem;
  }

  .faq_answer {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .cta_card {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    flex-direction: column;
    grid-template-columns: 1fr;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .footer {
    padding: 2.5rem 1.25rem;
  }

  .footer_grid {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .gallery5_grid-list {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .gallery_row {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 479px) {
  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .fs-styleguide_row {
    flex-wrap: wrap;
  }

  .max-width-full-mobile-portrait {
    width: 100%;
    max-width: none;
  }

  .hide-mobile-portrait {
    display: none;
  }

  .button {
    width: 100%;
  }

  .section {
    padding-left: 1.25rem;
  }

  .hero_component, .contact_component, .overview_component, .master_content-wrapper, .feature_content {
    grid-template-columns: 1fr;
  }
}

#w-node-_4272f461-bbba-cfc3-4c33-96786aba6d1d-95e7ac56, #w-node-_4272f461-bbba-cfc3-4c33-96786aba6d20-95e7ac56, #w-node-_4272f461-bbba-cfc3-4c33-96786aba6d23-95e7ac56, #w-node-_20a50417-f6d7-f031-6f20-3e587c1f4ed6-95e7ac56, #w-node-_20a50417-f6d7-f031-6f20-3e587c1f4ed9-95e7ac56, #w-node-_20a50417-f6d7-f031-6f20-3e587c1f4edc-95e7ac56, #w-node-_3ba88adf-2eca-8a3a-d8e3-95d1b4eedb68-95e7ac56, #w-node-_3ba88adf-2eca-8a3a-d8e3-95d1b4eedb6b-95e7ac56, #w-node-_3ba88adf-2eca-8a3a-d8e3-95d1b4eedb6e-95e7ac56 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_111e9fb1-5a5e-115e-908b-30d07cf66e7d-7cf66e5d {
  justify-self: start;
}

#w-node-b224ec27-30fa-be84-48bf-7ed471542af3-904a09ba {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_32eadc24-e391-a089-abe0-fb5b6627ca17-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627ca1c-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627ca21-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627ca26-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627ca2c-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627ca32-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627ca38-904a09ba {
  justify-self: start;
}

#w-node-_5d224905-8a1e-1460-7532-d38cb7ec37c1-904a09ba, #w-node-_40538c8c-870b-b365-34c4-2a06f0f8567d-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627cb45-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627cb5e-904a09ba {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_32eadc24-e391-a089-abe0-fb5b6627cb61-904a09ba {
  justify-self: start;
}

#w-node-_32eadc24-e391-a089-abe0-fb5b6627cb63-904a09ba {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_32eadc24-e391-a089-abe0-fb5b6627cb66-904a09ba {
  justify-self: start;
}

#w-node-_32eadc24-e391-a089-abe0-fb5b6627cbb8-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627cbc2-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627cbc3-904a09ba {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_30684373-af34-3818-02a4-e58b3ffef3e5-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef3ea-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef3ef-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef3f4-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef3f9-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef3fe-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef403-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef408-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef40d-904a09ba, #w-node-_30684373-af34-3818-02a4-e58b3ffef412-904a09ba {
  justify-self: start;
}

#w-node-_30684373-af34-3818-02a4-e58b3ffef416-904a09ba {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_30684373-af34-3818-02a4-e58b3ffef417-904a09ba {
  justify-self: start;
}

#w-node-_30684373-af34-3818-02a4-e58b3ffef41a-904a09ba, #w-node-_32eadc24-e391-a089-abe0-fb5b6627cd6b-904a09ba {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_32eadc24-e391-a089-abe0-fb5b6627cdc7-904a09ba {
  justify-self: start;
}

@media screen and (max-width: 991px) {
  #w-node-_1789869a-0f36-d99c-8a44-d52c45e660c2-45e660bd {
    order: 9999;
  }
}




/* ---- SEO/CRO additions -------------------------------------------------- */

/* Required by the width/height attributes added to every <img>.
   webflow.css sets `img { max-width: 100% }` but never `height: auto`, so a
   height attribute is taken literally and the image stretches: the logo went
   200x27 -> 200x280 and the contact render 568x757 -> 568x1468 before this rule
   existed. Bare `img` is lower specificity than every class rule in the sheet,
   so the two components that deliberately set `height: 100%` keep it. */
img {
  height: auto;
}

/* The contact form measured 1.4x-3.7x below the first screen on every interior
   page at 390px. This keeps the conversion path one tap away. 48px tall, above
   the 44px minimum tap target. Desktop is untouched: the form is in view there. */
.mobile-cta {
  display: none;
}

@media screen and (max-width: 767px) {
  .mobile-cta {
    z-index: 900;
    background-color: var(--base-color-brand--gold);
    color: var(--base-color-brand--purple);
    text-align: center;
    letter-spacing: .04em;
    border-radius: .4rem;
    justify-content: center;
    align-items: center;
    height: 48px;
    font-weight: 700;
    text-decoration: none;
    display: flex;
    position: fixed;
    bottom: 12px;
    left: 12px;
    right: 12px;
  }

  /* So the bar never covers the last line of the footer. */
  footer {
    padding-bottom: 76px;
  }
}

/* The answer block under each H1: a direct response to the page's own question,
   which is what an answer engine lifts. */
.aeo-answer-q {
  font-size: 1.5rem;
}

/* Horizontal scroll for wide tables on small screens. */
.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* "Other projects" backlink blocks.
   This export paints links with the same colour token as the FAQ panel
   background, so the links inside these blocks rendered invisible
   (contrast 1:1). Inheriting the surrounding text colour keeps them
   legible on any theme, and the underline keeps them identifiable. */
.other-projects a,
.other-projects_table a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.other-projects a:hover,
.other-projects_table a:hover {
  text-decoration-thickness: 2px;
}
.other-projects_list {
  list-style: none;
  margin: 0.75rem 0 0 0;
  padding: 0;
}
.other-projects_list li {
  margin-bottom: 0.75rem;
}
.other-projects_list li:last-child {
  margin-bottom: 0;
}
.other-projects_region {
  display: block;
  font-size: 0.78em;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.7;
  margin-bottom: 0.15rem;
}

/* FAQ answers start closed. webflow.js collapses them (inline height 0)
   only after it loads, so the open answers painted first and then jumped
   shut: a layout shift on /faqs. w-mod-js is set by the inline script in
   <head> before first paint; w-mod-ix is set once webflow.js has applied its
   own closed state, and from then on its click interaction opens an answer by
   removing the inline height, so this rule must stop applying (a plain
   height: 0 would hold every answer shut). Without JavaScript the answers
   stay readable. */
html.w-mod-js:not(.w-mod-ix) .faq_answer {
  height: 0;
}



/* ---- Urbanrise The Living Wave: components added by the build --------------------------- */

/* Where the project has no picture for a slot - the location map, the payment
   schedule - the picture is removed and its grid collapses to one column,
   rather than the copy sitting beside an empty track. */
.feature_content.is-single,
.master_content-wrapper.is-single {
  grid-template-columns: 1fr;
}

.feature_content.is-single > .feature_content-left {
  max-width: 48rem;
}

/* A published unit drawing and the areas printed on it. contain, not cover: a
   plan cropped to fill a box is a plan with rooms missing. */
.plan-sheet {
  margin: 0 0 2rem;
}

/* No CSS width: the width attribute sets it (capped by max-width) and, with
   height: auto, the attributes' ratio reserves the space before the sheet
   loads, so nothing below it jumps. */
.plan-link {
  display: block;
}

.plan-sheet img {
  max-width: 100%;
  height: auto;
  display: block;
  outline: 1px solid var(--riv-hairline);
  border-radius: .4rem;
  background: #fff;
}

.plan-sheet figcaption {
  color: var(--riv-ink-muted);
  padding-top: .6rem;
  max-width: 44rem;
}

/* The thumbnail strip: four across on a desktop, two on a tablet, one on a
   phone. Each picture is at least 688px wide, so no cell asks for more pixels
   than its picture has. */
.thumb-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.25rem;
  display: grid;
}

.thumb-cell {
  margin: 0;
}

@media screen and (max-width: 479px) {
  .thumb-grid {
    grid-template-columns: 1fr;
  }
}

.thumb-cell img {
  width: 100%;
  height: 165px;
  object-fit: cover;
  object-position: center;
  border-radius: .3rem;
  display: block;
  background: var(--riv-surface);
}

.thumb-cell figcaption {
  color: var(--riv-ink-muted);
  text-align: left;
  padding-top: .5rem;
}

/* The master-plan slot is a 16:9 cover box, which destroys anything but a
   landscape render: contain it, centred and height-capped. */
.master_image {
  aspect-ratio: auto;
  object-fit: contain;
  background: #fff;
  max-width: 100%;
  max-height: 78vh;
  margin: 0 auto;
  display: block;
}

/* Section headings added by the build, matched to the answer-block heading so
   they do not outweigh the page H1. */
.heading.is-xsmall {
  font-size: 1.25rem;
}

.container > .heading.is-small {
  font-size: 1.5rem;
}

/* Captions that say whose picture a stand-in is. */
.standin-note {
  margin: .5rem 0 0;
  opacity: .72;
  color: inherit;
}

.standin-wrap {
  display: block;
}

.hero-figure .hero_image {
  height: auto;
  display: block;
}

.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* The <picture> around an image with an AVIF twin lays out as if it were not
   there, so the <img> stays the grid item. Its <source> is not hidden by the
   browser's own stylesheet, and would otherwise take a grid cell of its own. */
.pic {
  display: contents;
}

.pic > source {
  display: none;
}

.map-link {
  margin-top: .75rem;
}

.map-link a {
  color: var(--riv-accent-text);
  text-decoration: underline;
}

/* Phones: the price table fits the screen, instead of hiding its Enquire
   column behind a sideways scroll and stacking each size over five lines. */
@media screen and (max-width: 479px) {
  .table_header {
    font-size: 1.05rem;
    padding: .6rem .5rem;
  }

  .table_cell {
    padding: .6rem .5rem;
    font-size: .9rem;
  }

  .is-wide .table_cell:first-child {
    white-space: nowrap;
  }

  .table_cell .button.is-small {
    padding: .45rem .6rem;
    font-size: .75rem;
  }
}

.nav_logo-link,
.footer_logo-link {
  width: auto;
}

.brandmark {
  align-items: center;
  gap: .6rem;
  text-decoration: none;
  display: inline-flex;
}

.brandmark_badge {
  color: #fff;
  background-color: var(--base-color-brand--gold);
  border: 2px solid var(--base-color-brand--gold);
  border-radius: .4rem;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 2.6rem;
  height: 2.6rem;
  padding-bottom: .06em;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.6rem;
  line-height: 1;
  display: flex;
}

.brandmark_name {
  color: var(--text-color--text-alternate);
  white-space: nowrap;
  font-family: Lato, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.3rem;
  line-height: 1.1;
}

@media screen and (max-width: 479px) {
  .brandmark_badge {
    width: 2.2rem;
    height: 2.2rem;
    font-size: 1.3rem;
  }

  .brandmark_name {
    font-size: 1rem;
  }
}

/* Room-dimension and specification columns. */
.room-cols,
.spec-cols {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  display: grid;
}

.room-col h3,
.spec-group h3 {
  margin: 0 0 .6rem;
}


/* ---- light theme -------------------------------------------------------- */

/* The export was built dark: purple page, white type, gold accent. Rather
   than edit Webflow's generated rules - which would have to be redone every
   time the template is re-exported - the palette is repointed at its source
   and only the rules that hard-code a dark background are overridden below.
   The hex values in the :root at the top of this file are what the export
   shipped; the :root below supersedes them. Edit the palette here. */

:root {
  /* Urbanrise's own palette, from urbanrise.in: white and #f8f9fa pages, #111
     text, forest-green call-to-action buttons, leaf-green labels, a gold
     accent and deep-green bands.

     Contrast measured, not assumed. White on the #116139 forest green is
     7.5:1 (buttons, the monogram) and 9.1:1 on the #0e5331 hover. The leaf
     green #94bb44 is 2.2:1 on white, so as text it is deepened to #4b7419:
     5.4:1 on white and 5.0:1 on the #f1f5ee table stripe, for links, labels
     and the eyebrows. The leaf itself appears on the deep-green bands
     (7.5:1 on #0b2219) and as the rule under the hero heading. Ink #111111
     is 18.9:1; muted text #5c6660 is 6.0:1. */
  --riv-accent: #116139;
  --riv-accent-text: #4b7419;
  --riv-accent-dark: #0e5331;
  --riv-on-accent: #ffffff;
  --riv-gold: #94bb44;          /* the hero rule */
  --riv-ink: #111111;
  --riv-ink-muted: #5c6660;
  --riv-surface: #f8f9fa;
  --riv-surface-strong: #f1f5ee;
  --riv-hairline: #dfe6dc;
}

:root {
  --base-color-brand--purple: var(--riv-ink);
  --base-color-brand--purple-light: var(--riv-surface-strong);
  --base-color-brand--gold: var(--riv-accent);
  --link-color--link-primary: var(--riv-accent-text);
  --link-color--link-alternate: var(--riv-ink);
  --border-color--border-secondary: var(--riv-hairline);
}

body {
  background-color: #fff;
  color: var(--riv-ink);
}

/* Buttons. The generated rule paints the label with text-primary, which is now
   the ink - unreadable on the accent - and hovers to a background that is now
   a pale tint. Both states are restated. */
.button,
.button.w-button,
.w-button {
  background-color: var(--riv-accent);
  color: var(--riv-on-accent);
}

.button:hover,
.button.w-button:hover,
.w-button:hover {
  background-color: var(--riv-accent-dark);
  color: var(--riv-on-accent);
}

.button.is-secondary {
  color: var(--riv-accent-text);
  border-color: var(--riv-accent);
}

.button.is-secondary:hover {
  background-color: var(--riv-accent);
  color: var(--riv-on-accent);
}

.button.is-text {
  color: var(--riv-accent-text);
}

/* Inputs sat on an accent-coloured border, which on a white page reads as an
   error state. Hairline at rest, accent on focus. */
.form_input {
  border-color: var(--riv-hairline);
  color: var(--riv-ink);
}

.form_input:focus {
  border-color: var(--riv-accent);
  outline: 2px solid var(--riv-hairline);
  outline-offset: 0;
}

.form_input::placeholder {
  color: var(--riv-ink-muted);
}

/* The mobile menu drops out of a bar that is now white on white. */
.nav_menu {
  background-color: #fff;
  border-bottom-color: var(--riv-hairline);
}

.menu-icon1_line-top,
.menu-icon1_line-middle,
.menu-icon1_line-bottom {
  background-color: var(--riv-ink);
}

.brandmark_name {
  color: var(--riv-ink);
}

.brandmark_badge {
  background: var(--riv-accent);
  color: var(--riv-on-accent);
  border-color: var(--riv-accent-dark);
}

/* A long project name overruns the footer's logo column, and nowrap then
   pushes it under the disclaimer. Only the footer lets it wrap. */
.footer_logo-link .brandmark {
  align-items: flex-start;
}

.footer_logo-link .brandmark_name {
  white-space: normal;
  line-height: 1.25;
}

/* Panels that were dark blocks on a dark page become tinted blocks on a
   white one; their text now inherits the ink from body. */
.faq_accordion {
  background-color: var(--riv-surface);
}

.table_row.is-purple {
  background-color: var(--riv-surface-strong);
}

.table_header {
  color: var(--riv-ink);
  border-bottom: 1px solid var(--riv-hairline);
}

/* The footer faded to black to close a dark page. On white it needs a rule,
   not a gradient. */
.footer {
  background-image: none;
  border-top: 1px solid var(--riv-hairline);
}

.footer .text-size-tiny {
  color: var(--riv-ink-muted);
}

.footer .text-size-tiny a {
  color: var(--riv-accent-text);
}

.text-style-tagline {
  color: var(--riv-accent-text);
}

.standin-note {
  color: var(--riv-ink-muted);
  opacity: 1;
}

.mobile-cta {
  background-color: var(--riv-accent);
  color: var(--riv-on-accent);
  border-top: 1px solid var(--riv-accent-dark);
}

/* Phones: the fixed Enquire bar (48px tall, 12px off the edge) never covers the
   footer's last line. The template's own rule for this targets the element,
   footer, and loses to its class rule, .footer { padding: 2.5rem 1.25rem }. */
@media screen and (max-width: 767px) {
  .footer {
    padding-bottom: 76px;
  }
}

/* "Label" covers both things the template calls one: the uppercase eyebrow
   over each heading and the form field labels. */
.form_form_label,
.field-label,
.fs-styleguide_hero-label {
  color: var(--riv-accent-text);
}

/* The second colour, used once: a rule under the hero heading. It fails AA as
   text at any size, so it is never text. */
.hero_content .heading-style-h1:after {
  content: "";
  background: var(--riv-gold);
  width: 4.5rem;
  height: 3px;
  margin-top: 1.1rem;
  display: block;
}


/* ---- cross-links to the operator's other project sites ------------------ */
.net-cols {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem 2rem;
  display: grid;
}

.net-group .heading {
  margin: 0 0 .35rem;
}

.net-list {
  margin: 0;
}

.net-list li {
  margin-bottom: .35rem;
}

.net-list a {
  color: var(--riv-accent-text);
  text-decoration: underline;
  text-underline-offset: .15em;
}

/* The locality is context, not part of the link, so it is visibly quieter. */
.net-loc {
  color: var(--riv-ink-muted);
  font-size: .85em;
}

/* A middle dot then a no-break space (a plain space after a CSS escape is
   eaten as the escape's terminator). The space before the dot is in the
   markup. No em dashes anywhere in the copy. */
.net-loc:before {
  content: "\00b7\00a0";
}


/* ---- Urbanrise look ------------------------------------------------------- */

/* Mirrors urbanrise.in: Lato throughout, large light headings on the inner
   sections and a bold hero, small bold uppercase labels, forest-green buttons
   with softly rounded corners, rounded pictures, a white bar over the page
   and deep-green bands. */
body {
  color: var(--riv-ink);
}

.heading-style-h1,
.heading-style-h2,
h1.heading,
h2.heading,
.heading {
  font-weight: 300;
  letter-spacing: -.01em;
}

.hero_content .heading-style-h1 {
  font-weight: 700;
  font-size: clamp(1.95rem, 3.6vw, 3.2rem);
  line-height: 1.12;
  letter-spacing: -.015em;
}

.text-style-tagline {
  font-weight: 700;
  letter-spacing: .14em;
}

strong,
b,
.faq_question {
  font-weight: 700;
}

/* Buttons: the forest-green gradient of Urbanrise's own enquiry button. White
   on its lightest end, #157143, is 6.0:1. */
.button,
.button.w-button,
.w-button {
  background-color: var(--riv-accent);
  background-image: linear-gradient(90deg, #0e5331, #157143);
  color: #fff;
  border-radius: 8px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(17, 97, 57, .18);
}

.button:hover,
.w-button:hover {
  background-color: var(--riv-accent-dark);
  background-image: none;
  color: #fff;
}

.form_input {
  border-radius: 8px;
  border-color: var(--riv-hairline);
}

.form_input:focus {
  border-color: var(--riv-accent);
}

.navbar {
  background-color: #fff;
  border-bottom: 1px solid var(--riv-hairline);
}

.nav_link {
  color: var(--riv-ink);
  font-weight: 400;
}

.nav_link:hover,
.nav_link.w--current {
  color: var(--riv-accent);
}

/* The master plan and the layouts at a comfortable width, centred. */
.master_image,
.plan-sheet {
  display: block;
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
}

/* Phones: a distance stays on one line. */
.nearby-table .table_cell:last-child {
  white-space: nowrap;
}

/* Rounded pictures, as on urbanrise.in. */
.hero_image,
.contact_image,
.gallery_image,
.master_image,
.plan-sheet img,
.thumb-cell img {
  border-radius: 1.25rem;
}

/* The gallery sits on a deep-green band. White on #0b2219 is 16.7:1, the
   leaf-green eyebrow 7.5:1 and the #c5d0c9 captions 10.5:1. */
#gallery {
  background-color: #0b2219;
  color: #fff;
}

#gallery .heading,
#gallery .heading-style-h1,
#gallery .heading-style-h2 {
  color: #fff;
}

#gallery .text-style-tagline {
  color: #94bb44;
}

#gallery .text-size-tiny,
#gallery .thumb-cell figcaption,
#gallery .standin-note {
  color: #c5d0c9;
}

/* The closing card: the deep-green gradient of Urbanrise's enquiry panel,
   with its gold accent. White on #165134 is 9.3:1, gold 5.5:1. */
.cta_card {
  background-color: #165134;
  background-image: linear-gradient(135deg, #165134, #1f2a24);
  border-radius: 1.25rem;
  padding: 3rem 3.5rem;
}

@media screen and (max-width: 767px) {
  .cta_card {
    padding: 2.25rem 1.5rem;
  }
}

.cta_card .heading,
.cta_card .heading-style-h2,
.cta_card .text-size-medium {
  color: #fff;
}

.cta_card .text-style-tagline {
  color: #e6c270;
}

.cta_card .button {
  background-color: #fff;
  background-image: none;
  color: #116139;
  box-shadow: none;
}

.cta_card .button:hover {
  background-color: #e6c270;
  color: #0b2219;
}

.faq_accordion {
  border-color: var(--riv-hairline);
  border-radius: .75rem;
}

/* White on #0b2219 is 16.7:1; the disclaimer's #c5d0c9 is 10.5:1; the
   leaf-green hover 7.5:1. */
.footer {
  background-color: #0b2219;
  border-top: 0;
  color: #fff;
}

.footer .text-size-tiny {
  color: #c5d0c9;
}

.footer .text-size-tiny a,
.footer_link {
  color: #fff;
}

.footer .text-size-tiny a {
  text-decoration: underline;
}

.footer_link:hover,
.footer .text-size-tiny a:hover {
  color: #94bb44;
}

.footer .brandmark_name {
  color: #fff;
}

.footer .brandmark_badge {
  background: #fff;
  color: #116139;
  border-color: #fff;
}

.brandmark_badge {
  border-color: var(--riv-accent);
  border-radius: 8px;
  font-weight: 700;
}

.brandmark_name {
  font-weight: 700;
}

/* A faint ring keeps the phone bar visible over the deep-green band. */
.mobile-cta {
  background-color: var(--riv-accent);
  background-image: linear-gradient(90deg, #0e5331, #157143);
  border-top-color: var(--riv-accent);
  border-radius: 8px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .3), 0 6px 18px rgba(11, 34, 25, .25);
}

/* The home page is long: the sections after the enquiry form are laid out and
   painted only as they come near the screen, which keeps the first load light. */
.is-home main > :nth-child(n+3),
.is-home .footer {
  content-visibility: auto;
  contain-intrinsic-size: auto 900px;
}
