.elementor-5651 .elementor-element.elementor-element-a4a3273{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;border-style:none;--border-style:none;--border-radius:38px 38px 38px 38px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-5651 .elementor-element.elementor-element-a4a3273, .elementor-5651 .elementor-element.elementor-element-a4a3273::before{--border-transition:0.3s;}.elementor-5651 .elementor-element.elementor-element-fbfd76d .elementor-heading-title{color:var( --e-global-color-secondary );font-family:"Poppins", Sans-serif;font-size:55px;font-weight:700;line-height:75px;}.elementor-5651 .elementor-element.elementor-element-e646f85 .elementor-heading-title{color:var( --e-global-color-c245257 );font-family:"Poppins", Sans-serif;font-size:22px;font-weight:500;line-height:28px;}#elementor-popup-modal-5651 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-5651{justify-content:center;align-items:center;pointer-events:all;background-color:rgba(0,0,0,.8);}#elementor-popup-modal-5651 .dialog-close-button{display:flex;}#elementor-popup-modal-5651 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(max-width:767px){.elementor-5651 .elementor-element.elementor-element-fbfd76d .elementor-heading-title{font-size:26px;line-height:1.4em;}.elementor-5651 .elementor-element.elementor-element-e646f85 .elementor-heading-title{font-size:12px;line-height:1.4em;}}@media(min-width:768px){.elementor-5651 .elementor-element.elementor-element-a4a3273{--content-width:800px;}}/* Start custom CSS for shortcode, class: .elementor-element-757a250 *//* =============================================
   TIMBERCITY — NEWSLETTER CSS
   Form ID: 7 | Theme: Orbital
   Add via: Appearance → Customize → Additional CSS
   ============================================= */

:root {
  --tc-green:        #1a4d2e;
  --tc-green-mid:    #2d6e45;
  --tc-green-light:  #e8f5ee;
  --tc-green-border: #c4dece;
  --tc-gold:         #c8922a;
  --tc-text:         #1a1a1a;
  --tc-text-muted:   #6b7280;
  --tc-border:       #d1d5db;
  --tc-bg:           #ffffff;
  --tc-bg-input:     #f9fafb;
  --tc-radius:       8px;
  --tc-shadow:       0 4px 32px rgba(26,77,46,0.1), 0 1px 4px rgba(0,0,0,0.04);
  --tc-focus-ring:   0 0 0 3px rgba(26,77,46,0.12);
}

/* ── CARD WRAPPER ── */
#gform_wrapper_7 {
  background: var(--tc-bg) !important;
  border: 1.5px solid var(--tc-green-border) !important;
  border-radius: 12px !important;
  padding: 32px 48px 36px 36px !important;
  box-shadow: var(--tc-shadow) !important;
  position: relative !important;
  overflow: visible !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Green → gold accent bar */
#gform_wrapper_7::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--tc-green) 0%, var(--tc-gold) 100%);
  border-radius: 12px 12px 0 0;
  pointer-events: none;
}

/* ── FIELD SPACING ── */
#gform_wrapper_7 .gfield {
  margin-bottom: 14px !important;
}

/* ── LABELS ── */
#gform_wrapper_7 .gfield_label,
#gform_wrapper_7 legend.gfield_label {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  color: var(--tc-text) !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  display: block !important;
  padding: 0 !important;
}

/* Sub-labels */
#gform_wrapper_7 .gform-field-label--type-sub {
  font-size: 0.66rem !important;
  font-weight: 500 !important;
  color: var(--tc-text-muted) !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  margin-top: 4px !important;
  display: block !important;
}

/* Required marker */
#gform_wrapper_7 .gfield_required {
  color: var(--tc-gold) !important;
  font-weight: 700 !important;
  margin-left: 2px !important;
}

/* ── ALL INPUTS & SELECTS ── */
#gform_wrapper_7 input[type="text"],
#gform_wrapper_7 input[type="email"],
#gform_wrapper_7 input[type="tel"],
#gform_wrapper_7 input[type="number"],
#gform_wrapper_7 input[type="url"],
#gform_wrapper_7 select,
#gform_wrapper_7 textarea {
  width: 100% !important;
  padding: 10px 13px !important;
  font-size: 0.88rem !important;
  color: var(--tc-text) !important;
  background: var(--tc-bg-input) !important;
  border: 1.5px solid var(--tc-border) !important;
  border-radius: var(--tc-radius) !important;
  transition: border-color 0.18s, box-shadow 0.18s, background 0.18s !important;
  outline: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  font-family: inherit !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* Focus */
#gform_wrapper_7 input[type="text"]:focus,
#gform_wrapper_7 input[type="email"]:focus,
#gform_wrapper_7 input[type="tel"]:focus,
#gform_wrapper_7 select:focus,
#gform_wrapper_7 textarea:focus {
  border-color: var(--tc-green) !important;
  background: var(--tc-bg) !important;
  box-shadow: var(--tc-focus-ring) !important;
}

/* Placeholder */
#gform_wrapper_7 input::placeholder,
#gform_wrapper_7 textarea::placeholder {
  color: #9ca3af !important;
  font-size: 0.84rem !important;
}

/* ── SELECT — custom chevron ── */
#gform_wrapper_7 select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231a4d2e' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 14px !important;
  padding-right: 38px !important;
  cursor: pointer !important;
}

/* ── TEXTAREA ── */
#gform_wrapper_7 textarea {
  min-height: 100px !important;
  resize: vertical !important;
  line-height: 1.65 !important;
}

/* ── ORBITAL THEME WIDTH OVERRIDES ── */
#gform_wrapper_7 .large,
#gform_wrapper_7 .medium,
#gform_wrapper_7 .small {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

#gform_wrapper_7 .gform-grid-col {
  width: auto !important;
  flex: 1 !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

#gform_wrapper_7 .gform-grid-row {
  display: flex !important;
  gap: 12px !important;
  width: 100% !important;
}

/* ── NAME FIELD ── */
#field_7_15 {
  margin-left: 0 !important;
  padding-left: 0 !important;
  border: none !important;
  min-width: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#field_7_15 legend.gfield_label {
  padding-left: 0 !important;
  margin-left: 0 !important;
  float: none !important;
  width: 100% !important;
}

#gform_wrapper_7 .ginput_container_name {
  display: flex !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

#gform_wrapper_7 .name_first,
#gform_wrapper_7 .name_last {
  flex: 1 !important;
  min-width: 0 !important;
}

/* ── PHONE + EMAIL — side by side ── */
#field_7_16,
#field_7_17 {
  width: 100% !important;
  
  
  box-sizing: border-box !important;
  margin-bottom: 14px !important;
}

#field_7_16 {
}

#field_7_16 .ginput_container,
#field_7_17 .ginput_container {
  width: 100% !important;
}

#field_7_16 input,
#field_7_17 input {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── BRANCH — full width ── */
#field_7_12 {
  width: 100% !important;
  box-sizing: border-box !important;
}

#field_7_12 .ginput_container_select,
#input_7_12 {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* Hide branch description */
#gfield_description_7_12 {
  display: none !important;
}

  font-size: 0.72rem !important;
  color: var(--tc-text-muted) !important;
  margin-top: 6px !important;
  display: block !important;
  text-align: center !important;
}

/* ── SUBMIT BUTTON ── */
#gform_submit_button_7 {
  background: var(--tc-green) !important;
  color: #ffffff !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 13px 40px !important;
  border: none !important;
  border-radius: var(--tc-radius) !important;
  cursor: pointer !important;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s !important;
  
  min-width: 160px !important;
  box-shadow: 0 2px 8px rgba(26,77,46,0.25) !important;
  -webkit-appearance: none !important;
}

#gform_submit_button_7:hover {
  background: var(--tc-green-mid) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(26,77,46,0.3) !important;
}

#gform_submit_button_7:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 8px rgba(26,77,46,0.2) !important;
}

/* ── FOOTER ── */
#gform_wrapper_7 .gform-footer,
#gform_wrapper_7 .gform_footer {
  margin-top: 8px !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--tc-green-border) !important;
}

/* ── VALIDATION ERRORS ── */
#gform_wrapper_7 .gfield_error input,
#gform_wrapper_7 .gfield_error select,
#gform_wrapper_7 .gfield_error textarea {
  border-color: #dc2626 !important;
  background: #fef2f2 !important;
  box-shadow: none !important;
}

#gform_wrapper_7 .gfield_error .gfield_label,
#gform_wrapper_7 .gfield_error legend.gfield_label {
  color: #dc2626 !important;
}

#gform_wrapper_7 .gfield_validation_message,
#gform_wrapper_7 .validation_message {
  font-size: 0.75rem !important;
  color: #dc2626 !important;
  margin-top: 5px !important;
  font-weight: 500 !important;
}

/* ── CONFIRMATION ── */
.gform_confirmation_wrapper .gform_confirmation_message_5 {
  background: var(--tc-green-light) !important;
  border: 1.5px solid var(--tc-green-border) !important;
  border-radius: var(--tc-radius) !important;
  padding: 20px 24px !important;
  color: var(--tc-green) !important;
  font-weight: 600 !important;
}

/* ── HIDDEN FIELDS ── */
#gform_wrapper_7 .gform_hidden,
#gform_wrapper_7 .gfield--type-hidden {
  display: none !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 640px) {
  #gform_wrapper_7 {
    padding: 24px 18px 28px !important;
    border-radius: 10px !important;
  }

  #field_7_16,
  #field_7_17 {
    width: 100% !important;
    display: block !important;
    margin-right: 0 !important;
  }

  #gform_submit_button_7 {
    width: 100% !important;
    padding: 14px !important;
  }
}

/* ── TIGHTEN FIELD SPACING ── */
#gform_wrapper_7 .gfield {
  margin-bottom: 10px !important;
  padding-bottom: 0 !important;
}

#gform_wrapper_7 .gform_fields {
  row-gap: 0 !important;
  gap: 0 !important;
}

#gform_wrapper_7 .gfield--type-fileupload {
  margin-bottom: 10px !important;
}

#gform_wrapper_7 .gform_body {
  margin-bottom: 0 !important;
}

/* ── NAME FIELDSET — force flush alignment ── */
#gform_wrapper_7 fieldset#field_7_15 {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  min-inline-size: 0 !important;
}

/* ── PHONE + EMAIL — side by side with gap ── */
#field_7_16,
#field_7_17 {
  width: calc(50% - 7px) !important;
  display: inline-block !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
  margin-bottom: 10px !important;
}

#field_7_16 {
  margin-right: 14px !important;
}

#field_7_16 input,
#field_7_17 input {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── CONTAINER CONTEXT FIX — parent has 60px padding each side ── */

/* Card wrapper — no extra padding fighting the container */
#gform_wrapper_7 {
  padding: 32px 36px 36px !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Force all field containers to respect parent width */
#gform_wrapper_7 .gfield,
#gform_wrapper_7 .ginput_container,
#gform_wrapper_7 .gform_fields {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── NAME — nuke all fieldset browser defaults ── */
#gform_wrapper_7 fieldset,
#gform_wrapper_7 fieldset#field_7_15 {
  margin-inline-start: 0 !important;
  margin-inline-end: 0 !important;
  padding-inline-start: 0 !important;
  padding-inline-end: 0 !important;
  padding-block-start: 0 !important;
  padding-block-end: 0 !important;
  border: none !important;
  min-inline-size: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── PHONE + EMAIL — side by side using flex on parent ── */

#gform_wrapper_7 .gform_fields {
  display: block !important;
}

/* Use a flex row wrapper trick for phone+email */
#field_7_16,
#field_7_17 {
  display: inline-block !important;
  width: calc(50% - 8px) !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
  margin-bottom: 10px !important;
}

#field_7_16 {
  margin-right: 16px !important;
}

#field_7_16 input[type="tel"],
#field_7_17 input[type="email"] {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  display: block !important;
}

#field_7_16 .ginput_container_phone,
#field_7_17 .ginput_container_email {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── TC OPT IN — RADIO BUTTONS ── */
#field_7_27 {
  border: none !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  min-inline-size: 0 !important;
  box-sizing: border-box !important;
}

#field_7_27 legend.gfield_label {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  color: var(--tc-text) !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
  display: block !important;
  padding: 0 !important;
}

#gform_wrapper_7 .gfield_radio {
  display: flex !important;
  gap: 20px !important;
  align-items: center !important;
}

#gform_wrapper_7 .gchoice {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Hide the blank third radio option */
#gform_wrapper_7 .gchoice_7_27_2 {
  display: none !important;
}

#gform_wrapper_7 .gfield-choice-input[type="radio"] {
  width: 17px !important;
  height: 17px !important;
  accent-color: var(--tc-green) !important;
  cursor: pointer !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}

#gform_wrapper_7 .gform-field-label--type-inline {
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  color: var(--tc-text) !important;
  cursor: pointer !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
}

/* ── POPUP — no card border needed, modal handles it ── */
#gform_wrapper_7 {
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

#gform_wrapper_7::before {
  display: none !important;
}

/* ── SUBMIT BUTTON — green override ── */
#gform_submit_button_7 {
  background: var(--tc-green) !important;
  color: #ffffff !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 13px 40px !important;
  border: none !important;
  border-radius: var(--tc-radius) !important;
  cursor: pointer !important;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s !important;
  min-width: 160px !important;
  box-shadow: 0 2px 8px rgba(26,77,46,0.25) !important;
  -webkit-appearance: none !important;
}

#gform_submit_button_7:hover {
  background: var(--tc-green-mid) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(26,77,46,0.3) !important;
}

/* ── TC OPT IN — left aligned vertical stack ── */
#gform_wrapper_7 .gfield_radio {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  align-items: flex-start !important;
}

#gform_wrapper_7 .gchoice {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  justify-content: flex-start !important;
}

/* ── NAME FIELDSET ALIGNMENT FIX ── */
#gform_wrapper_7 fieldset#field_7_15 {
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  border: none !important;
  min-inline-size: 0 !important;
  -webkit-margin-start: 0 !important;
  -webkit-padding-start: 0 !important;
  margin-inline-start: 0 !important;
  padding-inline-start: 0 !important;
  padding-block-start: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: block !important;
}/* End custom CSS */