/* GCNM v16.0.0 HF4 — membership intake / onboarding visual system */
body.gsite.gapply{
  --intake-deep:#0e3d31;
  --intake-forest:#155744;
  --intake-green:#1d765b;
  --intake-gold:#d4aa3a;
  --intake-red:#cf3f3a;
  --intake-line:#d9e5df;
  --intake-muted:#687b72;
  background:
    radial-gradient(circle at 8% 18%,rgba(29,118,91,.08),transparent 24%),
    radial-gradient(circle at 95% 30%,rgba(212,170,58,.08),transparent 20%),
    #f4f8f5;
}
body.gsite.gapply .gapply-header{
  position:sticky;top:0;z-index:80;
  background:rgba(255,255,255,.90)!important;
  border-bottom:1px solid rgba(217,229,223,.9)!important;
  -webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%);
}
body.gsite.gapply .gapply-header-inner{min-height:82px;height:auto!important;padding-block:12px}
body.gsite.gapply .gapply-logo{width:48px;height:48px;border-radius:12px;background:#eff5f1;padding:4px}
body.gsite.gapply .gsite-brand strong{font-size:21px;letter-spacing:-.02em}
body.gsite.gapply .gsite-btn{border-radius:10px!important;min-height:42px}
body.gsite.gapply .gsite-btn-primary{background:var(--intake-forest)!important}
body.gsite.gapply .gsite-btn-primary:hover{background:#0e4939!important}

body.gsite.gapply .gapply-identity{
  position:relative;overflow:hidden;
  background:linear-gradient(120deg,#eef7f2 0%,#fbf6e8 100%)!important;
}
body.gsite.gapply .gapply-identity::after{
  content:"";position:absolute;right:-90px;bottom:-160px;width:340px;height:340px;
  border-radius:45% 55% 64% 36% / 62% 40% 60% 38%;background:rgba(29,118,91,.055);pointer-events:none
}
body.gsite.gapply .gapply-identity-grid{padding-top:22px!important;padding-bottom:22px!important;position:relative;z-index:1}
body.gsite.gapply .gapply-identity-grid strong{font-size:clamp(1.2rem,2.3vw,1.85rem)!important;letter-spacing:-.025em}
body.gsite.gapply .gapply-identity-grid p{font-size:.9rem;max-width:670px}
body.gsite.gapply .gapply-identity-grid img{max-height:150px!important}

body.gsite.gapply .gapply-title{
  position:relative;overflow:hidden;padding:clamp(48px,7vw,78px) 0!important;
  background:
    radial-gradient(circle at 82% 20%,rgba(212,170,58,.16),transparent 24%),
    linear-gradient(115deg,#0c392e 0%,#155744 60%,#1b664f 100%)!important;
}
body.gsite.gapply .gapply-title::after{
  content:"";position:absolute;right:-140px;top:-160px;width:430px;height:430px;border:1px solid rgba(255,255,255,.12);
  border-radius:44% 56% 38% 62% / 55% 43% 57% 45%;transform:rotate(18deg);pointer-events:none
}
body.gsite.gapply .gapply-title h1{font-size:clamp(2rem,4.5vw,3.7rem)!important;max-width:900px;letter-spacing:-.045em}
body.gsite.gapply .gapply-title p{font-size:clamp(.92rem,1.5vw,1.04rem);line-height:1.75;max-width:850px;margin-bottom:0}
body.gsite.gapply .gsite-section{padding:clamp(36px,6vw,70px) 0!important}

body.gsite.gapply .gapply-form-wrap{
  grid-template-columns:minmax(230px,285px) minmax(0,1fr)!important;
  gap:clamp(20px,3vw,34px)!important;max-width:1160px
}
body.gsite.gapply .gapply-aside{
  top:108px!important;border-radius:22px!important;padding:25px!important;
  background:linear-gradient(160deg,#0f4335,#155744)!important;
  border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 42px rgba(14,61,49,.13)
}
body.gsite.gapply .gapply-aside h3{font-size:1.05rem!important;margin-top:0}
body.gsite.gapply .gapply-aside ul{font-size:.78rem!important;line-height:1.55;padding-left:19px}
body.gsite.gapply .gapply-aside li{margin:10px 0!important}
body.gsite.gapply .gapply-secure{border:1px solid rgba(255,255,255,.13)!important;background:rgba(255,255,255,.055);padding:15px!important;border-radius:13px;margin-top:20px!important}

body.gsite.gapply .gapply-form{
  position:relative;padding:clamp(22px,4vw,38px)!important;border:1px solid rgba(255,255,255,.82)!important;
  border-radius:26px!important;background:rgba(255,255,255,.94)!important;
  box-shadow:0 24px 64px rgba(14,61,49,.09)!important;overflow:hidden
}
body.gsite.gapply .gapply-form::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--intake-forest),var(--intake-green),var(--intake-gold),var(--intake-red))
}

body.gsite.gapply .gapply-wizard-progress{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;
  margin:4px 0 30px!important;padding:0!important
}
body.gsite.gapply .gapply-wizard-progress button{
  position:relative;display:flex!important;align-items:center;gap:10px;min-height:58px!important;padding:10px 12px!important;
  border:1px solid var(--intake-line)!important;border-radius:13px!important;background:#f8fbf9!important;
  color:#60746a!important;text-align:left!important;font:750 .77rem/1.25 Inter,Arial,sans-serif!important;cursor:pointer;
  transition:border-color .17s ease,background-color .17s ease,color .17s ease,box-shadow .17s ease
}
body.gsite.gapply .gapply-wizard-progress button span{
  flex:0 0 30px;width:30px;height:30px;display:grid!important;place-items:center!important;margin:0!important;
  border-radius:9px!important;background:#e8efeb!important;color:#51675d!important;font-size:.75rem;font-weight:850!important
}
body.gsite.gapply .gapply-wizard-progress button.active{
  border-color:#82ad99!important;background:#eef7f2!important;color:var(--intake-deep)!important;box-shadow:0 0 0 3px rgba(29,118,91,.08)!important
}
body.gsite.gapply .gapply-wizard-progress button.complete{border-color:#c9dacf!important;color:#466256!important;background:#f6faf8!important}
body.gsite.gapply .gapply-wizard-progress button.active span,
body.gsite.gapply .gapply-wizard-progress button.complete span{background:var(--intake-forest)!important;color:#fff!important}
body.gsite.gapply .gapply-wizard-progress button.complete span::after{content:"✓";font-size:.74rem}
body.gsite.gapply .gapply-wizard-progress button.complete span{font-size:0}

body.gsite.gapply .gapply-wizard-panel{animation:intakeFade .22s ease both}
@keyframes intakeFade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){body.gsite.gapply .gapply-wizard-panel{animation:none}}
body.gsite.gapply .gform-section{border:0!important;padding:0!important;margin:0 0 24px!important;gap:13px!important;align-items:center!important}
body.gsite.gapply .gform-step{flex:0 0 46px;width:46px!important;height:46px!important;border-radius:13px!important;background:var(--intake-forest)!important;box-shadow:0 9px 20px rgba(21,87,68,.13)}
body.gsite.gapply .gform-section h2{font-size:clamp(1.25rem,2.2vw,1.65rem)!important;letter-spacing:-.03em;color:var(--intake-deep)!important}
body.gsite.gapply .gform-section p{font-size:.82rem!important;line-height:1.5;margin-top:4px!important}

body.gsite.gapply .gsite-form-grid{gap:0 18px!important}
body.gsite.gapply .gsite-form label{font-size:.78rem!important;color:#344c41!important;margin-bottom:18px!important}
body.gsite.gapply .gsite-form input,
body.gsite.gapply .gsite-form select,
body.gsite.gapply .gsite-form textarea{
  min-height:50px;margin-top:8px!important;border:1px solid #cbdad2!important;border-radius:11px!important;background:#fff!important;
  padding:12px 14px!important;font-size:.92rem!important;box-shadow:none!important;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease
}
body.gsite.gapply .gsite-form textarea{min-height:108px;resize:vertical}
body.gsite.gapply .gsite-form input:focus,
body.gsite.gapply .gsite-form select:focus,
body.gsite.gapply .gsite-form textarea:focus{outline:0!important;border-color:#7eaa96!important;box-shadow:0 0 0 4px rgba(29,118,91,.09)!important;background:#fff!important}
body.gsite.gapply .gsite-form input[type="file"]{min-height:auto!important;padding:10px!important;background:#f8fbf9!important}

body.gsite.gapply .gcheck-group{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin:6px 0 27px!important}
body.gsite.gapply .gcheck-group legend{font-size:.78rem!important;font-weight:800!important;color:#3c554a!important;margin-bottom:8px!important}
body.gsite.gapply .gcheck-group label,
body.gsite.gapply .gdeclaration{
  min-height:48px!important;border:1px solid var(--intake-line)!important;border-radius:11px!important;background:#fafcfb!important;padding:11px 12px!important;align-items:flex-start!important;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease
}
body.gsite.gapply .gcheck-group label:has(input:checked),
body.gsite.gapply .gdeclaration:has(input:checked){border-color:#8bb39f!important;background:#eef7f2!important;box-shadow:0 0 0 2px rgba(29,118,91,.06)}
body.gsite.gapply .gcheck-group input,
body.gsite.gapply .gdeclaration input{accent-color:var(--intake-green);width:17px!important;height:17px!important;flex:0 0 17px}

body.gsite.gapply .gfile-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body.gsite.gapply .gfile-grid label{
  min-height:134px!important;border:1px dashed #afc6ba!important;border-radius:14px!important;background:#f9fbfa!important;padding:16px!important;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease
}
body.gsite.gapply .gfile-grid label:hover{border-color:#73a28c!important;background:#f2f8f5!important;box-shadow:0 8px 20px rgba(15,59,48,.05)}
body.gsite.gapply .gfile-grid strong{font-size:.82rem;color:var(--intake-deep)}
body.gsite.gapply .gfile-grid span{font-size:.7rem!important;margin-top:4px}
body.gsite.gapply .gfile-grid input{margin-top:14px!important;border:0!important;padding:0!important;background:transparent!important;font-size:.76rem!important}
body.gsite.gapply .gdeclaration{margin:24px 0!important;min-height:auto!important}
body.gsite.gapply .gsubmit{min-width:0!important;min-height:50px!important;padding-inline:22px!important;border-radius:11px!important;box-shadow:0 10px 24px rgba(21,87,68,.15)}
body.gsite.gapply .gapply-wizard-actions{display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:28px!important;padding-top:20px;border-top:1px solid #edf2ef}
body.gsite.gapply .gapply-wizard-actions .gsite-btn:not(.gsite-btn-primary),
body.gsite.gapply [data-wizard-prev].gsite-btn{border:1px solid #b8ccc2!important;background:#fff!important;color:var(--intake-forest)!important}
body.gsite.gapply .gsite-error{border:1px solid #f0c9c7!important;border-left:4px solid var(--intake-red)!important;border-radius:11px!important;background:#fff7f6!important;padding:14px 16px!important}
body.gsite.gapply .gapply-footer{padding:22px 0!important;background:#0c3128!important}

@media(max-width:1050px){
  body.gsite.gapply .gapply-form-wrap{grid-template-columns:1fr!important}
  body.gsite.gapply .gapply-aside{position:relative!important;top:auto!important}
  body.gsite.gapply .gapply-aside ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
}
@media(max-width:720px){
  body.gsite.gapply .gapply-header-inner{align-items:flex-start;gap:10px;flex-wrap:wrap}
  body.gsite.gapply .gapply-header-inner>div{width:100%;display:grid!important;grid-template-columns:1fr 1fr}
  body.gsite.gapply .gapply-header-inner>div .gsite-btn{width:100%}
  body.gsite.gapply .gapply-identity-grid{grid-template-columns:1fr!important}
  body.gsite.gapply .gapply-identity-grid img{display:none!important}
  body.gsite.gapply .gapply-wizard-progress{grid-template-columns:1fr!important;gap:7px!important}
  body.gsite.gapply .gapply-wizard-progress button{min-height:48px!important}
  body.gsite.gapply .gsite-form-grid,
  body.gsite.gapply .gcheck-group,
  body.gsite.gapply .gfile-grid{grid-template-columns:1fr!important}
  body.gsite.gapply .span-2{grid-column:auto!important}
  body.gsite.gapply .gapply-aside ul{grid-template-columns:1fr}
  body.gsite.gapply .gapply-form{padding:22px 16px!important;border-radius:20px!important}
  body.gsite.gapply .gform-section{align-items:flex-start!important}
  body.gsite.gapply .gform-step{width:42px!important;height:42px!important;flex-basis:42px}
  body.gsite.gapply .gapply-wizard-actions{align-items:stretch;flex-direction:column-reverse}
  body.gsite.gapply .gapply-wizard-actions .gsite-btn,
  body.gsite.gapply .gsubmit,
  body.gsite.gapply [data-wizard-prev].gsite-btn{width:100%!important}
}
@media(max-width:480px){
  body.gsite.gapply .gsite-container{width:min(calc(100% - 20px),var(--g-max))!important}
  body.gsite.gapply .gapply-title{padding:42px 0!important}
  body.gsite.gapply .gapply-title h1{font-size:2rem!important}
}
