/* =========================================================================
   Access 1 Properties — modern form reskin (2026)
   Scope: Gravity Forms (all 21 forms, legacy markup) + Estatik [es_register]
   Purpose: visual-only reskin to match the look already approved on the
   ClickPro CRM build (access1properties.site). No field/logic changes.
   ========================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;1,400&display=swap');

:root{
  --a1f-navy:#0B1C2C;
  --a1f-navy-deep:#081420;
  --a1f-text:#23222D;
  --a1f-muted:#6c757d;
  --a1f-border:#DAD9E0;
  --a1f-border-focus:#0B1C2C;
  --a1f-danger:#c0392b;
  --a1f-bg:#ffffff;
  --a1f-radius:8px;
  --a1f-shadow:0 20px 60px rgba(15,23,42,.15);
}

/* ---------- Card shell ------------------------------------------------ */
.gform_wrapper.gravity-theme,
.gform_wrapper{
  background:var(--a1f-bg) !important;
  border:1px solid rgba(11,28,44,.06) !important;
  border-radius:14px !important;
  box-shadow:var(--a1f-shadow) !important;
  padding:36px 32px !important;
  max-width:760px;
  margin:24px auto !important;
  font-family:'Montserrat',Arial,sans-serif !important;
}
.gform_wrapper .gform_heading{margin-bottom:20px !important;}
.gform_wrapper .gform_title{
  font-family:'Playfair Display',Georgia,serif !important;
  font-weight:400 !important;
  font-style:normal;
  font-size:28px !important;
  color:var(--a1f-navy) !important;
  margin-bottom:6px !important;
}
.gform_wrapper .gform_description{
  font-family:'Montserrat',Arial,sans-serif !important;
  color:var(--a1f-muted) !important;
  font-size:14px !important;
}
/* HTML-block / section-break headings inside forms can inherit a
   dark-background heading color from the surrounding page theme -
   force legible dark text now that the form sits on a white card. */
.gform_wrapper h1,.gform_wrapper h2,.gform_wrapper h3,
.gform_wrapper h4,.gform_wrapper h5,.gform_wrapper h6,
.gform_wrapper .gsection_title{
  color:var(--a1f-navy) !important;
  font-family:'Playfair Display',Georgia,serif !important;
  font-weight:400 !important;
}
.gform_wrapper .gsection{border-bottom:1px solid var(--a1f-border) !important;padding-bottom:8px !important;margin-bottom:8px !important;}

/* ---------- Fields ------------------------------------------------------ */
.gform_wrapper .gform_fields{
  display:grid !important;
  grid-template-columns:1fr 1fr;
  gap:0 20px;
}
.gform_wrapper li.gfield{
  grid-column:span 2;
  margin:0 0 20px !important;
  padding:0 !important;
  border:none !important;
  list-style:none !important;
}
.gform_wrapper li.gfield.gf_left_half,
.gform_wrapper li.gfield.gf_right_half,
.gform_wrapper .ginput_complex .name_first,
.gform_wrapper .ginput_complex .name_last{
  grid-column:span 1;
}
@media(max-width:640px){
  .gform_wrapper .gform_fields{grid-template-columns:1fr;}
  .gform_wrapper li.gfield.gf_left_half,
  .gform_wrapper li.gfield.gf_right_half{grid-column:span 1;}
  .gform_wrapper{padding:28px 20px !important;}
}

.gform_wrapper .gfield_label,
.gform_wrapper label.gfield_label,
.gform_wrapper legend.gfield_label{
  font-family:'Montserrat',Arial,sans-serif !important;
  font-size:14px !important;
  font-weight:600 !important;
  color:var(--a1f-text) !important;
  margin:0 0 8px !important;
  display:block !important;
  float:none !important;
  width:auto !important;
}
.gform_wrapper .gfield_required{color:var(--a1f-danger) !important;margin-left:3px;}
.gform_wrapper .gfield_description,
.gform_wrapper .gfield_sublabel,
.gform_wrapper .gform_fileupload_rules,
.gform_wrapper .instruction{
  font-size:12.5px !important;
  color:var(--a1f-muted) !important;
  margin-top:6px !important;
}

/* ---------- Inputs -------------------------------------------------- */
.gform_wrapper input[type=text],
.gform_wrapper input[type=email],
.gform_wrapper input[type=tel],
.gform_wrapper input[type=url],
.gform_wrapper input[type=number],
.gform_wrapper input[type=password],
.gform_wrapper input[type=date],
.gform_wrapper select,
.gform_wrapper textarea{
  width:100% !important;
  box-sizing:border-box !important;
  font-family:'Montserrat',Arial,sans-serif !important;
  font-size:15px !important;
  color:var(--a1f-text) !important;
  background:#fff !important;
  border:1.5px solid var(--a1f-border) !important;
  border-radius:var(--a1f-radius) !important;
  padding:12px 14px !important;
  box-shadow:none !important;
  transition:border-color .15s ease, box-shadow .15s ease;
  height:auto !important;
  margin:0 !important;
}
.gform_wrapper textarea{min-height:120px !important;resize:vertical;}
.gform_wrapper select{
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236c757d'%3e%3cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3e%3c/svg%3e");
  background-repeat:no-repeat;background-position:right 12px center;background-size:16px;
  padding-right:36px !important;
}
.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus{
  border-color:var(--a1f-border-focus) !important;
  box-shadow:0 0 0 3px rgba(11,28,44,.13) !important;
  outline:none !important;
}
.gform_wrapper ::placeholder{color:#9aa0a8 !important;opacity:1;}

/* date / name / address compound fields */
.gform_wrapper .ginput_complex{display:flex !important;flex-wrap:wrap;gap:12px;width:100% !important;}
.gform_wrapper .ginput_complex > span{flex:1 1 120px;}
.gform_wrapper .ginput_complex .ginput_full{flex-basis:100%;}
.gform_wrapper .ginput_complex label{
  font-size:11px !important;color:var(--a1f-muted) !important;font-weight:500 !important;
  text-transform:uppercase;letter-spacing:.03em;margin-top:6px !important;
}

/* ---------- Radio / checkbox ---------------------------------------- */
.gform_wrapper .gfield_radio,
.gform_wrapper .gfield_checkbox{
  display:flex !important;flex-direction:column !important;gap:10px;margin-top:2px;
}
.gform_wrapper .gfield_radio li,
.gform_wrapper .gfield_checkbox li{
  display:flex !important;align-items:center;gap:10px;margin:0 !important;
}
.gform_wrapper input[type=radio],
.gform_wrapper input[type=checkbox]{
  width:18px !important;height:18px !important;
  accent-color:var(--a1f-navy);
  flex:0 0 auto;
}
.gform_wrapper .gfield_radio label,
.gform_wrapper .gfield_checkbox label{
  font-size:14.5px !important;font-weight:400 !important;color:var(--a1f-text) !important;margin:0 !important;
}
.gform_wrapper .gfield_consent label{font-size:12.5px !important;color:var(--a1f-muted) !important;line-height:1.5 !important;}

/* ---------- reCAPTCHA container -------------------------------------- */
.gform_wrapper .gfield--type-captcha .gfield_label{display:block !important;margin-bottom:10px !important;}
.gform_wrapper .ginput_recaptcha{
  padding:0 !important;border:none !important;display:block !important;width:auto !important;clear:both;
}

/* ---------- Buttons --------------------------------------------------- */
.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer{
  border:none !important;margin:8px 0 0 !important;padding:0 !important;
  display:flex !important;gap:14px;align-items:center;flex-wrap:wrap;
}
.gform_wrapper .gform_button,
.gform_wrapper .gform_next_button,
.gform_wrapper .gform_previous_button,
.gform_wrapper input[type=submit]{
  font-family:'Montserrat',Arial,sans-serif !important;
  background:var(--a1f-navy) !important;
  color:#fff !important;
  border:3px solid var(--a1f-navy) !important;
  border-radius:999px !important;
  padding:13px 44px !important;
  font-size:15px !important;
  font-weight:700 !important;
  text-transform:uppercase;letter-spacing:.04em;
  box-shadow:none !important;
  cursor:pointer;
  transition:background .15s ease, transform .1s ease;
}
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type=submit]:hover{
  background:var(--a1f-navy-deep) !important;
  border-color:var(--a1f-navy-deep) !important;
  transform:translateY(-1px);
}
.gform_wrapper .gform_previous_button{
  background:#fff !important;color:var(--a1f-navy) !important;
}
.gform_wrapper .gform_previous_button:hover{background:#f3f4f6 !important;}

/* ---------- Multi-page progress ---------------------------------------- */
.gform_wrapper .gf_progressbar_wrapper{margin-bottom:28px !important;}
.gform_wrapper .gf_progressbar{
  background:#eef0f3 !important;border-radius:999px !important;height:8px !important;overflow:hidden;
}
.gform_wrapper .gf_progressbar_percentage{
  background:var(--a1f-navy) !important;border-radius:999px !important;height:100% !important;
}
.gform_wrapper .gf_progressbar_percentage span{display:none;}
.gform_wrapper .gf_page_steps{display:none !important;}

/* ---------- Validation / confirmation ---------------------------------- */
.gform_wrapper .validation_error{
  border:1.5px solid var(--a1f-danger) !important;background:#fdf1f0 !important;
  border-radius:var(--a1f-radius) !important;padding:14px 16px !important;
  color:var(--a1f-danger) !important;font-size:14px !important;font-weight:600 !important;
  margin-bottom:20px !important;
}
.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message{
  color:var(--a1f-danger) !important;font-size:12.5px !important;margin-top:6px !important;font-weight:500 !important;
}
.gform_wrapper li.gfield_error input,
.gform_wrapper li.gfield_error select,
.gform_wrapper li.gfield_error textarea{
  border-color:var(--a1f-danger) !important;
}
.gform_confirmation_wrapper,
.gform_wrapper .gform_confirmation_message{
  background:#fff !important;border:1px solid rgba(11,28,44,.08) !important;border-radius:14px !important;
  box-shadow:var(--a1f-shadow) !important;padding:36px 32px !important;font-family:'Montserrat',Arial,sans-serif !important;
  color:var(--a1f-text) !important;text-align:center;font-size:16px;
}

/* =========================================================================
   Estatik [es_register] — Profit Center registration form
   ========================================================================= */
.es-agent-register__wrap form{
  background:var(--a1f-bg);
  border:1px solid rgba(11,28,44,.06);
  border-radius:14px;
  box-shadow:var(--a1f-shadow);
  padding:36px 32px;
  max-width:640px;
  margin:24px auto;
  font-family:'Montserrat',Arial,sans-serif;
}
.es-agent-register__wrap .es-field{margin-bottom:20px;}
.es-agent-register__wrap .es-field__label label{
  font-family:'Montserrat',Arial,sans-serif;font-size:14px;font-weight:600;color:var(--a1f-text);
  display:block;margin-bottom:8px;
}
.es-agent-register__wrap .es-field__content input[type=text],
.es-agent-register__wrap .es-field__content input[type=email],
.es-agent-register__wrap .es-field__content input[type=tel],
.es-agent-register__wrap .es-field__content textarea{
  width:100%;box-sizing:border-box;font-family:'Montserrat',Arial,sans-serif;font-size:15px;color:var(--a1f-text);
  background:#fff;border:1.5px solid var(--a1f-border);border-radius:var(--a1f-radius);padding:12px 14px;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.es-agent-register__wrap .es-field__content input:focus,
.es-agent-register__wrap .es-field__content textarea:focus{
  border-color:var(--a1f-border-focus);box-shadow:0 0 0 3px rgba(11,28,44,.13);outline:none;
}
.es-agent-register__wrap .es-field__content label{
  display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:var(--a1f-muted);line-height:1.5;font-weight:400;
}
.es-agent-register__wrap .es-field__content input[type=checkbox]{
  width:18px;height:18px;accent-color:var(--a1f-navy);flex:0 0 auto;margin-top:2px;
}
.es-agent-register__wrap .es-btn,
.es-agent-register__wrap input[type=submit]{
  font-family:'Montserrat',Arial,sans-serif;background:var(--a1f-navy) !important;color:#fff !important;
  border:3px solid var(--a1f-navy) !important;border-radius:999px !important;padding:13px 44px !important;
  font-size:15px !important;font-weight:700 !important;text-transform:uppercase;letter-spacing:.04em;
  box-shadow:none !important;cursor:pointer;transition:background .15s ease, transform .1s ease;
}
.es-agent-register__wrap .es-btn:hover{background:var(--a1f-navy-deep) !important;border-color:var(--a1f-navy-deep) !important;transform:translateY(-1px);}
