/* OHWOW / v40 — targeted refinement of the request section ONLY.
   No changes to hero, work, included panels, shared navigation, or submission logic. */
.fc-page .fc-request.fc40-refined {
  --fc40-ink:#1b2920;
  --fc40-sage:#627f67;
  --fc40-line:#d3dbd0;
  --fc40-bg:#f3f3ed;
  background:var(--fc40-bg);
  color:var(--fc40-ink);
  padding:clamp(72px,7.2vw,112px) 0 clamp(80px,8vw,122px);
  scroll-margin-top:84px;
}
.fc40-refined .fc-request-intro{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.65fr);
  gap:clamp(45px,7vw,120px);
  align-items:center;
  margin-bottom:clamp(35px,4.8vw,64px);
}
.fc40-refined .fc-kicker{font-size:10px;letter-spacing:.125em;color:#506b55}
.fc40-refined .fc-request-intro h2{
  color:var(--fc40-ink);
  font-size:clamp(54px,6.05vw,92px);
  letter-spacing:-.077em;
  line-height:1.005;
  margin-top:26px;
  font-weight:750;
}
.fc40-refined .fc-request-intro h2 em{
  color:var(--fc40-sage);
  letter-spacing:-.052em;
  font-weight:400;
}
.fc40-refined .fc-request-intro>p{
  color:#4c6252;
  font-size:clamp(15px,1.26vw,18px);
  line-height:1.75;
  letter-spacing:-.014em;
  max-width:420px;
  margin:24px 0 4px;
  border-left:1px solid #c5d1c5;
  padding:4px 0 4px 31px;
}
.fc40-refined .fc-form-grid{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(330px,.80fr);
  gap:20px;
  align-items:start;
}
.fc-page .fc40-refined .fc-form-shell{
  padding:clamp(28px,3.25vw,51px);
  background:#fafaf6;
  border:1px solid #d7ded3;
  border-radius:9px;
  box-shadow:none;
  min-width:0;
}
.fc40-refined .fc-progress-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  font:700 10px/1.4 'Space Grotesk',sans-serif;
  letter-spacing:.11em;
  color:#587660;
}
.fc40-refined #fc-step-count{color:#6d8272}
.fc40-refined .fc-progress-track{
  height:3px;
  margin:21px 0 clamp(34px,3.5vw,53px);
  background:#e2e8de;
}
.fc40-refined .fc-progress-track span{
  display:block;
  background:#416c4d;
}
.fc40-refined .fc-step h3{
  color:#1b2920;
  font-size:clamp(32px,3.15vw,48px);
  letter-spacing:-.064em;
  font-weight:750;
  line-height:1.11;
  margin:0 0 12px;
}
.fc40-refined .fc-step-lead{
  color:#667a68;
  font-size:14px;
  line-height:1.65;
  margin-bottom:clamp(27px,3vw,40px);
}
.fc40-refined .fc-field{margin-bottom:25px}
.fc40-refined .fc-label{
  font:700 13px/1.45 'DM Sans',sans-serif;
  letter-spacing:-.005em;
  color:#263c2d;
  margin:0 0 12px;
}
.fc40-refined .fc-label small{font-size:9px;color:#678170;letter-spacing:.09em}
.fc40-refined .fc-options{gap:11px}
.fc-page .fc40-refined .fc-step[data-step="0"] .fc-choice span{
  background:#fff;
  color:#304c37;
  border:1px solid #d3ded3;
  min-height:72px;
  padding:15px 17px;
  border-radius:5px;
  font-weight:650;
  font-size:14px;
  display:flex;
  align-items:center;
  gap:14px;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.fc-page .fc40-refined .fc-step[data-step="0"] .fc-choice span:before{
  border-color:#a8bbaa;
  height:17px;width:17px;
  box-shadow:inset 0 0 0 4px #fff;
}
.fc40-refined .fc40-choice-icon{flex:0 0 21px;color:#456b52}
.fc-page .fc40-refined .fc-step[data-step="0"] .fc-choice input:checked+span{
  background:#eaf1e8;
  border-color:#63876b;
  box-shadow:inset 0 0 0 1px rgba(68,105,76,.12);
  color:#192e20;
}
.fc-page .fc40-refined .fc-step[data-step="0"] .fc-choice input:checked+span:before{background:#315e40;border-color:#315e40}
.fc-page .fc40-refined .fc-step[data-step="0"] .fc-choice:hover span{border-color:#719b79;background:#f1f6ef}
.fc-page .fc40-refined .fc-choice input:focus-visible+span{outline:3px solid #a3d07e;outline-offset:3px}
.fc-page .fc40-refined .fc-field>input:not([type=file]),
.fc-page .fc40-refined .fc-field>textarea,
.fc-page .fc40-refined .fc-field>select{
  min-height:54px;
  border:1px solid #cbd7ca;
  border-radius:5px;
  background:#fff;
  color:#24392b;
  padding:14px 16px;
  line-height:1.5;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.fc-page .fc40-refined .fc-field>input:focus-visible,
.fc-page .fc40-refined .fc-field>textarea:focus-visible,
.fc-page .fc40-refined .fc-field>select:focus-visible{
  border-color:#4b7957;
  outline:2px solid #bdd8bc;
  outline-offset:1px;
  box-shadow:0 0 0 4px rgba(130,178,137,.13);
}
.fc40-refined .fc-field input::placeholder,.fc40-refined .fc-field textarea::placeholder{color:#839486}
.fc40-refined .fc-field-split{gap:15px}
.fc-page .fc40-refined .fc-step[data-step="1"] .fc-choice span{
  border-radius:5px;
  background-color:#fff;
  min-height:122px;
}
.fc-page .fc40-refined .fc-step[data-step="1"] .fc-choice input:checked+span{background-color:#eaf1e8;border-color:#6f9877}
.fc-page .fc40-refined .fc-upload{background:#f0f4ee;border-color:#aac1ad;border-radius:5px}
.fc-page .fc40-refined .fc-form-actions{margin-top:32px;border-top:1px solid #e0e6dc;padding-top:23px}
.fc-page .fc40-refined .fc-button{border-radius:4px;min-height:51px}
.fc-page .fc40-refined .fc-consent a{color:#235632!important}
.fc40-refined .fc37-summary{position:sticky;top:96px;min-width:0}
.fc40-refined .fc37-summary-card{
  border:1px solid #34483a;
  border-radius:8px;
  padding:clamp(26px,2.3vw,36px);
  color:#f7f8f1;
  background:#1e3025;
  box-shadow:none;
}
.fc40-refined .fc37-summary-top{
  font-size:10px;
  letter-spacing:.10em;
  color:#bfd1c0;
  border-bottom:1px solid rgba(221,239,219,.17);
  padding-bottom:22px;
}
.fc40-refined .fc37-summary-top span:last-child{color:#d8ff79;white-space:nowrap}
.fc40-refined .fc37-summary-heading{padding:clamp(31px,3.1vw,50px) 0 30px}
.fc40-refined .fc37-summary-identity{
  display:block;
  font:750 22px/1 'DM Sans',sans-serif;
  letter-spacing:-.085em;
  color:#fff;
}
.fc40-refined .fc37-summary-heading h3{
  margin:clamp(37px,3.7vw,55px) 0 17px;
  font-size:clamp(30px,2.6vw,42px);
  line-height:1.12;
  letter-spacing:-.064em;
  font-weight:700;
  color:#f8f8f3;
}
.fc40-refined .fc37-summary-heading p{
  font-size:13px;
  line-height:1.76;
  color:#bacbbb;
  max-width:310px;
}
.fc40-refined .fc37-summary-rows>div{
  grid-template-columns:minmax(80px,.68fr) minmax(0,1fr);
  gap:12px;
  border-top:1px solid rgba(221,239,219,.18);
  padding:19px 0;
}
.fc40-refined .fc37-summary-rows span{font-size:10px;letter-spacing:.1em;color:#aec5b0}
.fc40-refined .fc37-summary-rows strong{font-size:13px;font-weight:600;color:#f1f5ed}
.fc40-refined .fc37-summary-foot{
  padding-top:24px;
  margin-top:9px;
  font-size:10px;
  color:#d6e9d1;
}
.fc40-refined .fc37-summary-help{padding:27px 5px 0}
.fc40-refined .fc37-summary-help>span{font-size:10px;color:#51715a}
.fc40-refined .fc37-summary-help p{font-size:13px;color:#536958;line-height:1.8}
.fc40-refined .fc37-summary-help a{color:#245733!important}
.fc40-refined .fc37-summary-help a:hover{color:#173a27!important}
.fc40-refined .fc37-summary-help a:focus-visible{outline:2px solid #4b7957;outline-offset:3px}
@media(max-width:1150px){
  .fc40-refined .fc-form-grid{grid-template-columns:1fr;}
  .fc40-refined .fc37-summary{position:static;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.75fr);gap:20px;}
  .fc40-refined .fc37-summary-help{padding:24px 6px 0}
}
@media(max-width:760px){
  .fc40-refined .fc-request-intro{grid-template-columns:1fr;gap:18px;margin-bottom:33px}
  .fc40-refined .fc-request-intro>p{max-width:670px;border-left:0;border-top:1px solid #cdd8cd;padding:18px 0 0;margin:5px 0 0}
  .fc40-refined .fc37-summary{display:block}
  .fc40-refined .fc37-summary-help{padding:23px 3px 0}
  .fc-page .fc40-refined .fc-form-shell{padding:clamp(21px,4.7vw,33px)}
}
@media(max-width:520px){
  .fc-page .fc-request.fc40-refined{padding:64px 0 77px}
  .fc40-refined .fc-request-intro h2{font-size:clamp(47px,11vw,65px);line-height:1.025;letter-spacing:-.07em;margin-top:20px}
  .fc40-refined .fc-request-intro>p{font-size:14px;line-height:1.72}
  .fc40-refined .fc-options,.fc40-refined .fc-field-split{grid-template-columns:1fr;gap:10px}
  .fc-page .fc40-refined .fc-step[data-step="0"] .fc-choice span{min-height:61px;padding:12px 15px}
  .fc40-refined .fc-progress-track{margin-bottom:29px}
  .fc40-refined .fc-step h3{font-size:33px;letter-spacing:-.055em}
  .fc40-refined .fc-step-lead{margin-bottom:27px}
  .fc40-refined .fc37-summary-card{padding:25px 22px}
  .fc40-refined .fc37-summary-heading{padding:30px 0 17px}
  .fc40-refined .fc37-summary-heading h3{margin:26px 0 11px;font-size:32px}
  .fc40-refined .fc37-summary-rows>div{grid-template-columns:82px 1fr}
}
@media(prefers-reduced-motion:reduce){.fc40-refined .fc-choice span,.fc40-refined .fc-progress-track span{transition:none!important}}
