/*
 * Shell PLZ Finder -- Gravity Forms Partner Picker Styles
 *
 * Styles for .partner-container cards rendered inside a GF multi-step popup.
 * Used together with [spf_gf_partner_loader] shortcode and shell-plz-gf.js.
 *
 * Active card highlight colour: --spf-gf-active (default Shell yellow #FBCE07).
 * Override anywhere on the host page:
 *   .partner-container { --spf-gf-active: #f0b400; }
 */

/* -- Container -------------------------------------------------------------- */
.partner-container {
  --spf-gf-active: #FBCE07;
  --spf-gf-radius: 8px;
  box-sizing: border-box;
  font-family: Arial, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.partner-container * {
  box-sizing: inherit;
}

/* -- Loading ---------------------------------------------------------------- */
.spf-gf-loading {
  display:         flex;
  align-items:     center;
  justify-content: center;
  gap:             12px;
  padding:         40px;
  font-size:       15px;
  opacity:         .75;
}

.spf-gf-spinner {
  width:            22px;
  height:           22px;
  border:           3px solid rgba(128,128,128,.3);
  border-top-color: var(--spf-gf-active);
  border-radius:    50%;
  animation:        spf-gf-spin .7s linear infinite;
  flex-shrink:      0;
}

@keyframes spf-gf-spin {
  to { transform: rotate(360deg); }
}

/* -- Messages (error / empty) ----------------------------------------------- */
.spf-gf-msg {
  text-align: center;
  padding:    24px;
  font-size:  14px;
  background: #f8d7da;
  color: #721c24;
}

.spf-gf-msg--error {
  opacity: 1;
  background: #f8d7da;
  color: #721c24;
}

/* -- Grid ------------------------------------------------------------------- */
.spf-gf-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap:                   16px;
  list-style:            none;
  margin:                0;
  padding:               0;
}

/* -- Card ------------------------------------------------------------------- */
.spf-gf-card {
  background:     #fff;
  border:         2px solid transparent;
  border-radius:  var(--spf-gf-radius);
  display:        flex;
  flex-direction: column;
  cursor:         pointer;
  transition:     border-color .15s, box-shadow .15s;
  outline:        none;
  overflow:       hidden;
  user-select:    none;
  -webkit-user-select: none;
}

.spf-gf-card:hover {
  border-color: var(--spf-gf-active);
}

.spf-gf-card:focus-visible {
  border-color: var(--spf-gf-active);
  box-shadow:   0 0 0 3px rgba(251,206,7,.35);
}

.spf-gf-card--active {
  border-color: var(--spf-gf-active);
  box-shadow:   0 0 0 1px var(--spf-gf-active);
}

/* -- Logo area -------------------------------------------------------------- */
/*
 * Checkerboard background mirrors the placeholder shown in design mockups.
 * Real logos (img) appear above it once loaded.
 */
.spf-gf-logo {
  height:          120px;
  display:         flex;
  align-items:     center;
  justify-content: center;
  overflow:        hidden;
  background-color: #ffffff;
  /*background-image:*/
  /*  linear-gradient(45deg,  #c8c8c8 25%, transparent 25%),*/
  /*  linear-gradient(135deg, #c8c8c8 25%, transparent 25%),*/
  /*  linear-gradient(45deg,  transparent 75%, #c8c8c8 75%),*/
  /*  linear-gradient(135deg, transparent 75%, #c8c8c8 75%);*/
  /*background-size:     16px 16px;*/
  /*background-position: 0 0, 8px 0, 8px -8px, 0 8px;*/
}

.spf-gf-logo img {
  max-width:  80%;
  max-height: 110px;
  object-fit: contain;
  background: #fff;
  padding:    4px;
}

/* Empty span -- checkerboard background shows through */
.spf-gf-logo-ph {
  display: block;
  width:   100%;
  height:  100%;
}

/* -- Card info -------------------------------------------------------------- */
.spf-gf-info {
  padding: 12px;
  flex:    1;
}

.spf-gf-name {
  font-size:   14px;
  font-weight: 700;
  color:       #4A4A4A;
  margin:      0 0 6px;
  line-height: 1.5;
}

.spf-gf-addr {
  font-size:   12px;
  color:       #4A4A4A;
  line-height: 1.5;
  margin:      0;
}

/* -- Responsive ------------------------------------------------------------- */
@media (max-width: 520px) {
  .spf-gf-grid {
    grid-template-columns: repeat(2, 1fr);
    gap:                   10px;
  }

  .spf-gf-logo {
    height: 90px;
  }
}

/*Popup form*/
.partner-gf-form_wrapper{
  display: block !important;
}
.partner-gf-form_wrapper .gfield_label,
.partner-gf-form_wrapper label,
.partner-gf-form_wrapper .gfield_description{
  color: #ffffff !important;
  font-size: 16px !important;
  margin-bottom: 0;
}
.partner-gf-form_wrapper input[type="text"],
.partner-gf-form_wrapper input[type="email"],
.partner-gf-form_wrapper input[type="tel"],
.partner-gf-form_wrapper input[type="number"],
.partner-gf-form_wrapper input[type="url"],
.partner-gf-form_wrapper input[type="password"],
.partner-gf-form_wrapper textarea,
.partner-gf-form_wrapper select {
  border-radius: 7px;
  min-height: 42px;
  border: 1px solid #C0C0C0;
}

.partner-gf-form_wrapper input[type="text"]:focus,
.partner-gf-form_wrapper input[type="email"]:focus,
.partner-gf-form_wrapper input[type="tel"]:focus,
.partner-gf-form_wrapper input[type="number"]:focus,
.partner-gf-form_wrapper input[type="url"]:focus,
.partner-gf-form_wrapper input[type="password"]:focus,
.partner-gf-form_wrapper textarea:focus,
.partner-gf-form_wrapper select:focus {
  outline: none;
}

.partner-gf-form_wrapper .gfield input::placeholder,
.partner-gf-form_wrapper .gfield textarea::placeholder {
  color: #919191;
  opacity: 1;
}

.partner-gf-form_wrapper.gform-theme--foundation .gform_fields{
  row-gap: 16px;

}

.partner-gf-form_wrapper #field_2_22 legend.gfield_label {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 0;
  padding-top: 20px;
  display: block;
}
.partner-gf-form_wrapper .ginput_container_consent label{
  font-size: 14px;
}
.partner-gf-form_wrapper .ginput_container_consent{
  margin-top: 20px;
}
.partner-gf-form_wrapper .gform_required_legend{
  display: none;
}

.partner-gf-form_wrapper .gform-theme-button,
.partner-gf-form_wrapper .gform_button.button{
  border: 1px solid #DD1D21;
  background-color: #DD1D21 !important;
  border-radius: 8px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M0 8.2929C0 8.56901 0.22386 8.7929 0.5 8.7929H12.17L6.9348 14.0281C6.7391 14.2238 6.7396 14.5414 6.9361 14.7364L7.6465 15.4418C7.8419 15.6359 8.1575 15.6354 8.3523 15.4406L15.6464 8.14641C15.8417 7.95121 15.8417 7.63461 15.6464 7.43931L8.3536 0.146445C8.1583 -0.048815 7.8417 -0.048815 7.6464 0.146445L6.9432 0.849655C6.7481 1.04479 6.748 1.36113 6.9429 1.55644L12.17 6.7929H0.5C0.22386 6.7929 0 7.01671 0 7.2929V8.2929Z' fill='white'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  padding-right: 50px !important;
  background-position: 95% center;
  min-height: 40px !important;
  transition: 0.5s all !important;
}

.partner-gf-form_wrapper .gform-page-footer.gform_page_footer{
  justify-content: end;
}
@media(max-width: 767px) {
  .partner-gf-form_wrapper .gform-page-footer.gform_page_footer{
    justify-content: center;
  }
}
.partner-gf-form_wrapper .gform-theme-button:hover,
.partner-gf-form_wrapper .gform_button.button:hover{
  background-color: #ffffff !important;
  color: #DD1D21 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M0 8.2929C0 8.56901 0.22386 8.7929 0.5 8.7929H12.17L6.9348 14.0281C6.7391 14.2238 6.7396 14.5414 6.9361 14.7364L7.6465 15.4418C7.8419 15.6359 8.1575 15.6354 8.3523 15.4406L15.6464 8.14641C15.8417 7.95121 15.8417 7.63461 15.6464 7.43931L8.3536 0.146445C8.1583 -0.048815 7.8417 -0.048815 7.6464 0.146445L6.9432 0.849655C6.7481 1.04479 6.748 1.36113 6.9429 1.55644L12.17 6.7929H0.5C0.22386 6.7929 0 7.01671 0 7.2929V8.2929Z' fill='red'%3E%3C/path%3E%3C/svg%3E");
}

.partner-gf-form_wrapper .gfield_description.validation_message.gfield_validation_message{
  color: #DD1D21 !important;
  margin-top: 1px !important;
  font-size: 13px !important;
}

.partner-gf-form_wrapper #gform_2_validation_container{
  display: none;
}

.partner-gf-form_wrapper .gf_page_steps {
  display: none;
}



.partner-gf-form_wrapper .address-label{
  margin: -5px 0 -16px !important;
  color: #fff;
  font-size: 16px;
}

.partner-gf-form_wrapper .gform_previous_button,
.partner-gf-form_wrapper .gform_previous_button:hover{
  display: none !important;
  background-color: transparent !important;
  border: 0 !important;
  color: #ffffff !important;
  font-weight: normal !important;
  padding-right: 30px !important;
  background-image: none;
}

.partner-gf-form .thank-you-step svg{
  width: 20px;
  position: relative;
  top: 3px;
}
.partner-gf-form .thank-you-step{
  color: #288128;
  text-align: center;
}
.partner-gf-form .thank-you-step svg circle{
  fill: #288128;
}
.partner-gf-form .gform_confirmation_message{
  color: #159f15;
}
.partner-gf-form.gform_confirmation_wrapper {
  text-align: center;
}
.partner-gf-form div.gform_confirmation_message {
  background-image: url("data:image/svg+xml,%3Csvg class='w-5 h-5 mt-%5B-10px%5D' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 21 21'%3E%3Ccircle cx='10.1657' cy='10.6657' r='10.1657' fill='%23159f15'%3E%3C/circle%3E%3Ccircle cx='10.1657' cy='10.6657' r='10.1657' fill='currentColor' opacity='.5'%3E%3C/circle%3E%3Cpath stroke='%23fff' stroke-width='.726124' d='m4.35693 9.93965 4.35675 4.35675L16.338 7.03516'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  display: inline-block;
  margin: 0 auto;
  padding-left: 40px;
}

.partner-gf-form_wrapper .gchoice label,
.partner-gf-form_wrapper .ginput_container_consent label{
  cursor: pointer;
}

.partner-gf-form_wrapper .shell-partner-email,
.partner-gf-form_wrapper .shell-partner-name{
  display: none;
}

.partner-gf-form_wrapper .gform_button.button{
  pointer-events: none;
  filter: grayscale(1);
}

.partner-gf-form_wrapper .gform_button.button.activeButton{
  pointer-events: all;
  filter: none;
}

.custom-gf-steps{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  position:relative;

}

.custom-gf-steps:before{
  content:'';
  position:absolute;
  top:4.5px;
  left:0px;
  right:0px;
  height:1px;
  background:#666;
  z-index:1;
}

.custom-step{
  flex:1;
  text-align:center;
  position:relative;
  z-index:2;
}

.step-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#666;
  display:block;
  margin:0 auto 10px;
}

.step-label{
  font-size:12px;
  color:#666;
  display: inline-block;
  line-height: 18px;
}

/* Active */
.custom-step.active .step-dot{
  background:#FFC107;
}

.custom-step.active .step-label{
  color:#FFC107;
  font-weight: bold;
}

/* Completed */
.custom-step.completed .step-dot{
  background:#FFF;
}

.custom-step.completed .step-label{
  color:#FFF;
}

.partner-gf-form_wrapper.gform_validation_error .gform_validation_errors{
	display: none;
}

.partner-gf-form_wrapper .privacy-text.gfield.gfield--type-html {
	font-size: 14px !important;
}