/**
 * Request form mockup styles — forced with !important against theme overrides.
 * No CDN. Colors: #1a3626 / #244b35 / #2d6a4f / #3b5f4a
 */
:root{
  --gm-theme-dark:#1a3626;
  --gm-theme-light:#244b35;
  --gm-theme-green:#2d6a4f;
  --gm-theme-step:#3b5f4a;
  --gm-primary:#244b35;
  --gm-primary-hover:#1a3626;
  --gm-on-primary:#fff;
  --gm-brand-dark:#1a3626;
  --gm-brand-cardbg:#244b35;
}

body:has(.gm-page) .entry-title,
body:has(.gm-page) .page-title,
body:has(.gm-page) .elementor-page-title,
body:has(.gm-page) h1.wp-block-post-title{
  display:none!important;
}

.gm-page{
  background:#f9f9f9!important;
  font-family:'Vazirmatn',Tahoma,'Segoe UI',sans-serif!important;
  color:#1f2937!important;
}

.gm-page-hero{
  display:block!important;
  position:relative!important;
  padding:4rem 1rem 8rem!important;
  background:#1a3626!important;
  color:#fff!important;
  overflow:hidden!important;
  text-align:center!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  border:0!important;
  box-shadow:none!important;
}

.gm-page-hero::before,
.gm-page-hero::after{
  content:''!important;
  position:absolute!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.05)!important;
  filter:blur(48px)!important;
  pointer-events:none!important;
}
.gm-page-hero::before{width:16rem!important;height:16rem!important;top:-5rem!important;right:-5rem!important;}
.gm-page-hero::after{width:24rem!important;height:24rem!important;bottom:-8rem!important;left:-8rem!important;}

.gm-page-hero__inner{position:relative!important;z-index:1!important;max-width:56rem!important;margin:0 auto!important;}

.gm-page-hero__badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:.5rem!important;
  padding:.25rem .75rem!important;
  border-radius:9999px!important;
  background:rgba(255,255,255,.1)!important;
  border:1px solid rgba(255,255,255,.2)!important;
  color:#fff!important;
  font-size:.75rem!important;
  font-weight:500!important;
  margin-bottom:1.5rem!important;
}
.gm-page-hero__badge .dashicons{display:none!important;}

.gm-page-hero__title{
  color:#fff!important;
  font-size:clamp(1.85rem,4.5vw,3rem)!important;
  font-weight:900!important;
  line-height:1.25!important;
  margin:0 0 1rem!important;
}
.gm-page-hero__subtitle{
  color:#d1d5db!important;
  font-size:1.05rem!important;
  line-height:1.85!important;
  margin:0 auto!important;
  max-width:42rem!important;
}

.gm-page-body{
  position:relative!important;
  z-index:20!important;
  margin-top:-6rem!important;
  padding:0 1rem 5rem!important;
}
.gm-page-body>.gm-container{max-width:48rem!important;margin-inline:auto!important;}

.gm-page .gm-request-form.gm-form{
  background:#fff!important;
  border:1px solid #f3f4f6!important;
  border-radius:1rem!important;
  box-shadow:0 20px 40px -12px rgba(26,54,38,.18)!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
.gm-request-form .gm-choice-panel,
.gm-request-form #gm-simple-form,
.gm-request-form #gm-visit-form>form{padding:2rem!important;}

.gm-request-form .gm-steps-wrap{
  background:#f9fafb!important;
  border-bottom:1px solid #f3f4f6!important;
  width:100%!important;
}
.gm-request-form .gm-steps{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  position:relative!important;
  max-width:28rem!important;
  margin:0 auto!important;
  padding:1.5rem!important;
  background:transparent!important;
  border:0!important;
}
.gm-request-form .gm-steps::before{
  content:''!important;
  position:absolute!important;
  top:calc(1.5rem + 1.25rem)!important;
  left:12%!important;right:12%!important;
  height:4px!important;
  background:#e5e7eb!important;
  border-radius:9999px!important;
  z-index:0!important;
  transform:translateY(-50%)!important;
}
.gm-request-form .gm-step{
  position:relative!important;z-index:1!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;
  gap:.5rem!important;background:transparent!important;padding:0!important;border:0!important;
}
.gm-request-form .gm-step-number{
  width:2.5rem!important;height:2.5rem!important;border-radius:50%!important;
  background:#fff!important;border:2px solid #e5e7eb!important;color:#9ca3af!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  font-weight:700!important;
}
.gm-request-form .gm-step.active .gm-step-number,
.gm-request-form .gm-step.is-active .gm-step-number{
  background:#244b35!important;border-color:#244b35!important;color:#fff!important;
  box-shadow:0 4px 10px rgba(36,75,53,.35)!important;outline:4px solid #fff!important;
}
.gm-request-form .gm-step.active .gm-step-label{color:#2d6a4f!important;font-weight:700!important;}
.gm-request-form .gm-step-label{font-size:.75rem!important;color:#9ca3af!important;}

.gm-request-form .gm-form-label{display:block!important;font-size:.875rem!important;font-weight:600!important;color:#374151!important;margin-bottom:.5rem!important;}
.gm-request-form .gm-form-input,
.gm-request-form .gm-form-select,
.gm-request-form .gm-form-textarea{
  width:100%!important;padding:.75rem 1rem!important;border-radius:.5rem!important;
  border:1px solid #d1d5db!important;background:#f9fafb!important;color:#1f2937!important;
}
.gm-request-form .gm-form-input:focus,
.gm-request-form .gm-form-select:focus,
.gm-request-form .gm-form-textarea:focus{
  background:#fff!important;border-color:#3b5f4a!important;box-shadow:0 0 0 1px #3b5f4a!important;outline:none!important;
}
.gm-request-form .gm-form-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1.5rem!important;margin-bottom:1.5rem!important;}
.gm-request-form .gm-form-group{margin-bottom:1.5rem!important;}
.gm-request-form .gm-form-row .gm-form-group{margin-bottom:0!important;}

.gm-request-form .gm-radio-group{
  display:flex!important;flex-direction:column!important;gap:1rem!important;
  padding:1rem!important;background:#f9fafb!important;border:1px solid #e5e7eb!important;border-radius:.5rem!important;
}
@media(min-width:640px){.gm-request-form .gm-radio-group{flex-direction:row!important;}}
.gm-request-form .gm-radio-label{
  flex:1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  padding:.75rem!important;background:#fff!important;border:1px solid #e5e7eb!important;border-radius:.5rem!important;
}
.gm-request-form .gm-radio-label:has(input:checked){border-color:#244b35!important;box-shadow:0 0 0 1px #244b35!important;}

.gm-btn-primary{
  background-color:#244b35!important;border-color:#244b35!important;color:#fff!important;
  box-shadow:0 8px 20px -6px rgba(36,75,53,.4)!important;font-weight:700!important;
}
.gm-btn-primary:hover:not(:disabled):not(.is-loading){
  background-color:#1a3626!important;border-color:#1a3626!important;color:#fff!important;
}
.gm-btn-secondary{
  background-color:#f3f4f6!important;border-color:#e5e7eb!important;color:#374151!important;
}
.gm-btn-secondary:hover:not(:disabled):not(.is-loading){
  background-color:#e5e7eb!important;color:#1f2937!important;
}

.gm-request-form .gm-choice-question{font-size:1.05rem!important;font-weight:600!important;color:#1f2937!important;margin:0 0 1.5rem!important;}
.gm-request-form .gm-btn-group{display:flex!important;flex-wrap:wrap!important;gap:.75rem!important;justify-content:center!important;}
.gm-request-form .gm-form-actions{display:flex!important;gap:.75rem!important;}
.gm-request-form .gm-btn-block,
.gm-request-form #gm-next-step,
.gm-request-form #gm-simple-submit,
.gm-request-form #gm-visit-submit{
  border-radius:.5rem!important;padding:1rem 1.5rem!important;min-height:3.25rem!important;
}

.gm-auth-modal-dialog{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
.gm-auth--popup .gm-auth-card{background:#232323!important;border:0!important;box-shadow:none!important;}

@media(max-width:782px){
  .gm-page-hero{padding:3rem 1rem 6rem!important;}
  .gm-page-body{margin-top:-4rem!important;}
  .gm-request-form .gm-form-row{grid-template-columns:1fr!important;}
  .gm-request-form .gm-choice-panel,
  .gm-request-form #gm-simple-form,
  .gm-request-form #gm-visit-form>form{padding:1.25rem!important;}
}
