/*
Sportservice Flevoland – De Flevolandse Sportsector 2026
Gravity Forms 3.0.2 + Survey Add-On
Huisstijl: #EB5E1C oranje | #181830 donkerblauw
*/

.ssf-sportsector-2026 {
  --ssf-orange: #EB5E1C;
  --ssf-navy: #181830;
  --ssf-green: #307520;
  --ssf-teal: #1E5065;
  --ssf-blue: #3E9CC6;
  --ssf-yellow: #F2DB00;
  --ssf-bg: #F6F6F8;
  --ssf-bg-2: #EEEFF3;
  --ssf-border: #D9DAE2;
  --ssf-muted: #626477;
  --ssf-radius: 18px;
  font-family: Geogrotesque, Aptos, Arial, sans-serif;
  color: var(--ssf-navy);
}

.ssf-sportsector-2026 .gform_required_legend { margin: 0 0 18px; font-size: 14px; color: var(--ssf-muted); }
.ssf-sportsector-2026 .gfield_required { color: var(--ssf-orange) !important; }

/* Intro / sectiekoppen */
.ssf-sportsector-2026 .ssf-intro {
  background: var(--ssf-navy);
  color: #fff;
  padding: clamp(24px, 4vw, 44px);
  border-radius: var(--ssf-radius);
  margin: 0 0 18px;
}
.ssf-sportsector-2026 .ssf-intro h2,
.ssf-sportsector-2026 .ssf-intro p { color: #fff; }
.ssf-sportsector-2026 .ssf-intro h2 { font-size: clamp(30px,4vw,44px); line-height: 1.05; margin: 4px 0 20px; }
.ssf-sportsector-2026 .ssf-intro p { font-size: 16.5px; line-height: 1.58; margin: 0 0 15px; }
.ssf-sportsector-2026 .ssf-kicker { color: var(--ssf-orange); font-weight: 700; text-transform: uppercase; letter-spacing: .045em; font-size: 13px; }
.ssf-sportsector-2026 .ssf-intro-facts { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0; }
.ssf-sportsector-2026 .ssf-intro-facts span { display: inline-flex; align-items: center; min-height: 38px; padding: 7px 13px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; color: #fff; font-weight: 700; font-size: 14px; }

.ssf-sportsector-2026 .ssf-section-heading {
  background: var(--ssf-bg);
  border-left: 7px solid var(--ssf-orange);
  border-radius: var(--ssf-radius);
  padding: 21px 24px;
  margin: 0 0 18px;
}
.ssf-sportsector-2026 .ssf-section-heading h2 { color: var(--ssf-navy); font-size: clamp(27px,3vw,36px); line-height: 1.12; margin: 3px 0 0; }
.ssf-sportsector-2026 .ssf-section-intro { margin-top: 13px; max-width: 920px; font-size: 16px; line-height: 1.58; }
.ssf-sportsector-2026 .ssf-section-intro p { margin: 0; }
.ssf-sportsector-2026 .ssf-question-title { font-size: 18px; line-height: 1.45; color: var(--ssf-navy); }

/* Labels & invoervelden */
.ssf-sportsector-2026 .gfield_label,
.ssf-sportsector-2026 legend.gfield_label { color: var(--ssf-navy); font-weight: 700 !important; font-size: 17px !important; line-height: 1.35; }
.ssf-sportsector-2026 .gfield_description { color: var(--ssf-muted); font-size: 14px; margin-top: 7px; }
.ssf-sportsector-2026 input[type="text"],
.ssf-sportsector-2026 input[type="email"],
.ssf-sportsector-2026 input[type="tel"],
.ssf-sportsector-2026 input[type="number"],
.ssf-sportsector-2026 select,
.ssf-sportsector-2026 textarea {
  border: 1px solid var(--ssf-border) !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: var(--ssf-navy) !important;
  min-height: 48px;
  padding: 11px 13px !important;
  box-shadow: none !important;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.ssf-sportsector-2026 textarea { min-height: 130px; }
.ssf-sportsector-2026 input:focus,
.ssf-sportsector-2026 select:focus,
.ssf-sportsector-2026 textarea:focus { border-color: var(--ssf-orange) !important; box-shadow: 0 0 0 3px rgba(235,94,28,.16) !important; outline: none !important; }
.ssf-sportsector-2026 input[type="radio"],
.ssf-sportsector-2026 input[type="checkbox"] { accent-color: var(--ssf-orange); }

/* Keuzes als rustige kaarten/pills */
.ssf-sportsector-2026 .ssf-choice-grid .gfield_radio,
.ssf-sportsector-2026 .ssf-choice-grid .gfield_checkbox { display: grid !important; gap: 9px 12px; }
.ssf-sportsector-2026 .ssf-choice-grid-2 .gfield_checkbox { grid-template-columns: repeat(2,minmax(0,1fr)); }
.ssf-sportsector-2026 .ssf-choice-grid-3 .gfield_radio,
.ssf-sportsector-2026 .ssf-choice-grid-3 .gfield_checkbox { grid-template-columns: repeat(3,minmax(0,1fr)); }
.ssf-sportsector-2026 .ssf-choice-grid-5 .gfield_checkbox { grid-template-columns: repeat(5,minmax(0,1fr)); }
.ssf-sportsector-2026 .ssf-choice-grid .gchoice,
.ssf-sportsector-2026 .ssf-choice-cards .gchoice,
.ssf-sportsector-2026 .ssf-choice-inline .gchoice {
  margin: 0 !important;
  padding: 11px 12px;
  border: 1px solid var(--ssf-border);
  border-radius: 12px;
  background: #fff;
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.ssf-sportsector-2026 .ssf-choice-grid .gchoice:hover,
.ssf-sportsector-2026 .ssf-choice-cards .gchoice:hover,
.ssf-sportsector-2026 .ssf-choice-inline .gchoice:hover { border-color: rgba(235,94,28,.65); background: rgba(235,94,28,.045); }
.ssf-sportsector-2026 .ssf-choice-inline .gfield_radio { display: flex !important; flex-wrap: wrap; gap: 10px; }
.ssf-sportsector-2026 .ssf-choice-inline .gchoice { min-width: 120px; }
.ssf-sportsector-2026 .ssf-choice-inline-3 .gchoice { min-width: 145px; }
.ssf-sportsector-2026 .ssf-choice-cards .gfield_radio { display: grid !important; gap: 10px; }
.ssf-sportsector-2026 .gchoice label { color: var(--ssf-navy); font-size: 15.5px; line-height: 1.38; }

/* NATIVE SURVEY LIKERT --------------------------------------------------- */
.ssf-sportsector-2026 .ssf-native-likert .ginput_container_survey { overflow-x: auto; padding-bottom: 5px; }
.ssf-sportsector-2026 table.gsurvey-likert {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid var(--ssf-border) !important;
  border-radius: 15px;
  overflow: hidden;
  background: #fff;
}
.ssf-sportsector-2026 table.gsurvey-likert th.gsurvey-likert-choice-label {
  background: var(--ssf-navy) !important;
  color: #fff !important;
  text-align: center;
  vertical-align: middle;
  line-height: 1.2;
  font-size: 13px;
  font-weight: 700;
  padding: 13px 9px !important;
  border: 0 !important;
}
.ssf-sportsector-2026 table.gsurvey-likert tr th:first-of-type {
  width: 38% !important;
  min-width: 280px;
  background: var(--ssf-navy) !important;
  border: 0 !important;
}
.ssf-sportsector-2026 table.gsurvey-likert .gsurvey-likert-row-label {
  color: var(--ssf-navy) !important;
  background: var(--ssf-bg) !important;
  font-weight: 650;
  line-height: 1.35;
  padding: 13px 14px !important;
  border-color: #E7E8ED !important;
}
.ssf-sportsector-2026 table.gsurvey-likert tr:nth-child(even) .gsurvey-likert-row-label { background: #fff !important; }
.ssf-sportsector-2026 table.gsurvey-likert td.gsurvey-likert-choice {
  background-color: #fff;
  min-width: 94px;
  height: 54px;
  border-color: #E7E8ED !important;
  transition: background-color .15s ease, box-shadow .15s ease;
}
.ssf-sportsector-2026 table.gsurvey-likert td.gsurvey-likert-choice:hover { background-color: rgba(235,94,28,.07) !important; }
.ssf-sportsector-2026 table.gsurvey-likert td.gsurvey-likert-choice.gsurvey-likert-selected {
  background-color: rgba(235,94,28,.14) !important;
  box-shadow: inset 0 0 0 2px var(--ssf-orange);
}

/* Stappen */
.ssf-sportsector-2026 .gf_page_steps { margin-bottom: 27px !important; display: flex; gap: 8px; flex-wrap: wrap; }
.ssf-sportsector-2026 .gf_step { color: #77798A; }
.ssf-sportsector-2026 .gf_step.gf_step_active { color: var(--ssf-navy); font-weight: 700; }
.ssf-sportsector-2026 .gf_step.gf_step_active .gf_step_number { background: var(--ssf-orange) !important; border-color: var(--ssf-orange) !important; color: #fff !important; }

/* Buttons */
.ssf-sportsector-2026 .gform_page_footer,
.ssf-sportsector-2026 .gform_footer { border-top: 1px solid var(--ssf-border); margin-top: 28px !important; padding-top: 22px !important; display: flex; gap: 11px; flex-wrap: wrap; }
.ssf-sportsector-2026 .gform_next_button,
.ssf-sportsector-2026 .gform_button {
  background: var(--ssf-orange) !important;
  border: 2px solid var(--ssf-orange) !important;
  color: #fff !important;
  border-radius: 999px !important;
  min-height: 48px;
  padding: 10px 22px !important;
  font-weight: 700 !important;
  cursor: pointer;
}
.ssf-sportsector-2026 .gform_next_button:hover,
.ssf-sportsector-2026 .gform_button:hover { background: var(--ssf-navy) !important; border-color: var(--ssf-navy) !important; }
.ssf-sportsector-2026 .gform_previous_button {
  background: #fff !important;
  border: 2px solid var(--ssf-navy) !important;
  color: var(--ssf-navy) !important;
  border-radius: 999px !important;
  min-height: 48px;
  padding: 10px 22px !important;
  font-weight: 700 !important;
  cursor: pointer;
}
.ssf-sportsector-2026 .gform_previous_button:hover { background: var(--ssf-navy) !important; color: #fff !important; }

/* Bevestiging */
.ssf-confirmation { padding: clamp(24px,4vw,40px); border-left: 7px solid #EB5E1C; border-radius: 18px; background: #F6F6F8; color: #181830; }
.ssf-confirmation h2 { margin: 4px 0 10px; color: #181830; }

/* Mobiel */
@media (max-width: 800px) {
  .ssf-sportsector-2026 .ssf-choice-grid-2 .gfield_checkbox,
  .ssf-sportsector-2026 .ssf-choice-grid-3 .gfield_radio,
  .ssf-sportsector-2026 .ssf-choice-grid-3 .gfield_checkbox,
  .ssf-sportsector-2026 .ssf-choice-grid-5 .gfield_checkbox { grid-template-columns: 1fr; }
  .ssf-sportsector-2026 table.gsurvey-likert { min-width: 760px; }
  .ssf-sportsector-2026 table.gsurvey-likert tr th:first-of-type { min-width: 250px; }
  .ssf-sportsector-2026 .ssf-intro { padding: 25px 21px; }
}
