.gdcf-wrap{
  --gdcf-maroon: var(--maroon, #680D0A);
  --gdcf-gold: var(--gold, #D89A16);
  --gdcf-yellow: var(--yellow, #F4C52A);
  --gdcf-cream-light: var(--cream-light, #FFF9E9);
  --gdcf-text: var(--text, #3B2118);
  --gdcf-white: var(--white, #FFFFFF);
  --gdcf-border-gold: var(--border-gold, #E8C45A);
  --gdcf-radius: var(--radius, 18px);
  --gdcf-shadow-soft: var(--shadow-soft, 0 8px 25px rgba(104,13,10,.08));
  --gdcf-f-head: var(--f-head, 'Noto Sans Devanagari', serif);
  --gdcf-f-body: var(--f-body, 'Mukta', sans-serif);
  --gdcf-f-acc: var(--f-acc, 'Poppins', sans-serif);

  max-width: 100%;
  background: var(--gdcf-white);
  border: 1px solid var(--gdcf-border-gold);
  border-radius: var(--gdcf-radius);
  box-shadow: var(--gdcf-shadow-soft);
  padding: 36px;
  color: var(--gdcf-text);
  font-family: var(--gdcf-f-body);
  box-sizing: border-box;
}
.gdcf-wrap *{ box-sizing: border-box; }
.gdcf-wrap h3{ font-family: var(--gdcf-f-head); font-weight: 700; color: var(--gdcf-maroon); font-size: 22px; margin: 0 0 6px; }
.gdcf-sub{ opacity: .7; font-size: 14px; margin: 0 0 22px; }

.gdcf-amt-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.gdcf-amt-btn{
  font-family: var(--gdcf-f-acc); font-weight: 600; font-size: 14px;
  padding: 12px 6px; border-radius: 10px; border: 1.5px solid var(--gdcf-border-gold);
  background: var(--gdcf-cream-light); color: var(--gdcf-maroon); cursor: pointer;
  transition: .2s ease;
}
.gdcf-amt-btn:hover{ border-color: var(--gdcf-gold); }
.gdcf-amt-btn.active{ background: var(--gdcf-maroon); color: var(--gdcf-white); border-color: var(--gdcf-maroon); }

.gdcf-range-wrap{ margin-top: 22px; }
.gdcf-range-labels{ display: flex; justify-content: space-between; font-family: var(--gdcf-f-acc); font-size: 12px; opacity: .6; margin-bottom: 8px; }
input[type=range].gdcf-range{
  -webkit-appearance: none; width: 100%; height: 8px; border-radius: 6px;
  background: linear-gradient(90deg, var(--gdcf-gold) 0%, var(--gdcf-gold) var(--fill,0%), var(--gdcf-border-gold) var(--fill,0%), var(--gdcf-border-gold) 100%);
}
input[type=range].gdcf-range::-webkit-slider-thumb{
  -webkit-appearance: none; width: 24px; height: 24px; border-radius: 50%;
  background: var(--gdcf-maroon); border: 3px solid var(--gdcf-yellow); cursor: pointer; box-shadow: var(--gdcf-shadow-soft);
}
input[type=range].gdcf-range::-moz-range-thumb{ width: 24px; height: 24px; border-radius: 50%; background: var(--gdcf-maroon); border: 3px solid var(--gdcf-yellow); cursor: pointer; }

.gdcf-row{ margin-top: 18px; }
.gdcf-row label{ display: block; font-family: var(--gdcf-f-acc); font-size: 13px; font-weight: 600; margin-bottom: 8px; color: var(--gdcf-maroon); }
.gdcf-row input[type=text], .gdcf-row input[type=tel], .gdcf-row input[type=email], .gdcf-row input[type=number]{
  width: 100%; border: 1.5px solid var(--gdcf-border-gold); border-radius: 10px; padding: 13px 16px;
  font-family: var(--gdcf-f-body); font-size: 15px; background: var(--gdcf-cream-light); color: var(--gdcf-text);
  transition: border-color .25s, box-shadow .25s;
}
.gdcf-row input:focus{ outline: none; border-color: var(--gdcf-gold); box-shadow: 0 0 0 3px rgba(216,154,22,.15); }
.gdcf-row input[type=file]{
  width: 100%; font-family: var(--gdcf-f-acc); font-size: 13px; background: var(--gdcf-cream-light);
  border: 1.5px dashed var(--gdcf-border-gold); border-radius: 10px; padding: 14px 16px; color: var(--gdcf-text);
}
.gdcf-hint{ display: block; margin-top: 6px; font-size: 11.5px; opacity: .6; font-family: var(--gdcf-f-acc); }

.gdcf-impact{ font-family: var(--gdcf-f-acc); font-size: 13.5px; color: var(--gdcf-maroon); font-weight: 600; margin: 10px 0 4px; }

.gdcf-submit{
  width: 100%; margin-top: 22px; padding: 16px 20px; border: none; border-radius: 8px;
  background: var(--gdcf-maroon); color: var(--gdcf-white); font-family: var(--gdcf-f-acc);
  font-weight: 600; font-size: 15px; cursor: pointer; transition: .3s ease;
  display: flex; align-items: center; justify-content: center; gap: 8px;
}
.gdcf-submit:hover{ background: var(--gdcf-gold); }
.gdcf-submit:disabled{ opacity: .6; cursor: not-allowed; }

.gdcf-msg{
  margin-top: 16px; background: var(--gdcf-cream-light); border: 1px solid var(--gdcf-border-gold);
  border-radius: 10px; padding: 14px 16px; font-size: 13.5px; font-family: var(--gdcf-f-body);
}
.gdcf-msg.gdcf-error{ background: #fdeceb; border-color: #e6a49c; color: #8a1c1c; }
.gdcf-hidden{ display: none !important; }

.gdcf-secure{ font-size: 12px; opacity: .6; margin-top: 16px; text-align: center; font-family: var(--gdcf-f-acc); }
