/* Revolv Forms, Gravity compatibility.

   Loaded only with forms drawn using Gravity's class names (imported forms).
   Gravity's own stylesheet gives its forms a base layout that themes then
   build on: a grid of fields, no fieldset borders, sized inputs, a block
   file note. A theme written against Gravity assumes that base is there, so
   once Gravity is switched off the same base has to come from somewhere.

   These rules are our own, written from what Gravity's base does, with the
   same selectors so they weigh exactly what Gravity's did: a theme rule that
   used to beat Gravity's still wins, and one that lost still loses. Values
   only, no icons, no Gravity code. */

/* The field list: one column, 16px between fields. */
.gform_wrapper.gravity-theme .gform_fields { display: grid; grid-template-columns: repeat(12, 1fr); grid-template-rows: repeat(auto-fill, auto); grid-column-gap: 2%; grid-row-gap: 16px; width: 100%; }
.gform_wrapper.gravity-theme .gfield { grid-column: 1 / -1; min-width: 0; }
.gform_wrapper.gravity-theme .gfield.gfield--width-full { grid-column: span 12; }

/* Browsers draw a grooved border and padding round a fieldset. */
.gform_wrapper.gravity-theme fieldset,
.gform_wrapper.gravity-theme legend { background: none; padding: 0; }
.gform_wrapper.gravity-theme fieldset { border: none; display: block; margin: 0; }
.gform_wrapper.gravity-theme legend { margin-left: 0; margin-right: 0; }

/* Labels and the required marker. */
.gform_wrapper.gravity-theme .gfield_label { display: inline-block; font-size: 16px; font-weight: 700; margin-bottom: 8px; padding: 0; }
.gform_wrapper.gravity-theme .gfield_required { color: #c02b0a; display: inline-block; font-size: 13px; padding-inline-start: .125em; }
.gform_wrapper.gravity-theme .gfield_required .gfield_required_text { font-style: italic; font-weight: 400; }
.gform_wrapper.gravity-theme .hidden_label .gfield_label { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

/* Boxes. */
.gform_wrapper.gravity-theme input[type=text],
.gform_wrapper.gravity-theme input[type=email],
.gform_wrapper.gravity-theme input[type=tel],
.gform_wrapper.gravity-theme input[type=number],
.gform_wrapper.gravity-theme input[type=url],
.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme textarea { font-size: 15px; margin-bottom: 0; margin-top: 0; padding: 8px; }
.gform_wrapper.gravity-theme .gfield input,
.gform_wrapper.gravity-theme .gfield select { max-width: 100%; }
.gform_wrapper.gravity-theme .gfield input.large,
.gform_wrapper.gravity-theme .gfield select.large,
.gform_wrapper.gravity-theme .gfield textarea.large { width: 100%; }

/* Fields made of several boxes (name, address). */
.gform_wrapper.gravity-theme .ginput_complex { display: flex; flex-flow: row wrap; }
.gform_wrapper.gravity-theme .field_sublabel_above .ginput_complex { align-items: flex-end; }
.gform_wrapper.gravity-theme .field_sublabel_below .ginput_complex { align-items: flex-start; }
.gform_wrapper.gravity-theme .ginput_complex span { flex: 1; }
.gform_wrapper.gravity-theme .ginput_complex label { display: block; font-size: 15px; padding-top: 5px; }
.gform_wrapper.gravity-theme .ginput_complex input,
.gform_wrapper.gravity-theme .ginput_complex select { width: 100%; }

/* Descriptions, the file note and problems. */
.gform_wrapper.gravity-theme .gfield_description { clear: both; font-family: inherit; font-size: 15px; letter-spacing: normal; line-height: inherit; padding-top: 13px; width: 100%; }
.gform_wrapper.gravity-theme .gform_fileupload_rules { display: block; margin-top: 8px; font-size: 15px; padding-top: 5px; }
.gform_wrapper.gravity-theme .gfield_validation_message { background: #fff9f9; border: 1px solid #c02b0a; color: #c02b0a; font-size: 15px; margin-block-start: 8px; padding: 13px 24px; }
.gform_wrapper.gravity-theme .gfield_validation_message[hidden] { display: none; }

/* Choices. */
.gform_wrapper.gravity-theme .gfield_checkbox label,
.gform_wrapper.gravity-theme .gfield_radio label { display: inline-block; font-size: 15px; }

/* The button row. */
.gform_wrapper.gravity-theme .gform_footer { display: flex; margin: 6px 0 0; padding: 16px 0; }
.gform_wrapper.gravity-theme .gform_footer input,
.gform_wrapper.gravity-theme .gform_footer button { align-self: flex-end; margin-bottom: 8px; }
.gform_wrapper.gravity-theme .gform_footer .button:disabled { opacity: .6; }
