.sahaj-contact-page{width:min(calc(100% - var(--site-gutter) - var(--site-gutter)),var(--site-max-width));margin:0 auto;padding:54px 0 72px}
.sahaj-contact-intro{max-width:680px;margin:0 auto 34px;text-align:center}
.sahaj-contact-eyebrow{display:inline-block;margin-bottom:10px;color:var(--g);font-size:11px;font-weight:800;letter-spacing:.14em}
.sahaj-contact-intro h1{margin:0;color:var(--dg);font-size:clamp(36px,6vw,58px);letter-spacing:-.04em}
.sahaj-contact-intro p{max-width:580px;margin:12px auto 0;color:var(--s);font-size:16px}
.sahaj-contact-layout{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:20px;align-items:stretch}
.sahaj-contact-aside{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:430px;overflow:hidden;padding:30px;border-radius:20px;background:linear-gradient(145deg,#234c32,#397047);color:#fff}
.sahaj-contact-aside:before,.sahaj-contact-aside:after{position:absolute;content:"";border:1px solid #ffffff24;border-radius:50%;pointer-events:none}
.sahaj-contact-aside:before{width:310px;height:310px;top:-125px;right:-120px}
.sahaj-contact-aside:after{width:210px;height:210px;top:-75px;right:-70px}
.sahaj-contact-aside-mark{position:absolute;top:26px;left:30px;color:#d2e6d5;font-size:34px}
.sahaj-contact-aside h2{position:relative;max-width:300px;margin:0;color:#fff;font-size:clamp(25px,3vw,34px);letter-spacing:-.03em}
.sahaj-contact-aside p{position:relative;max-width:330px;margin:12px 0 0;color:#e2eee4;line-height:1.7}
.sahaj-contact-card{padding:30px;border:1px solid var(--l);border-radius:20px;background:#fff;box-shadow:0 16px 42px #183b2510}
.sahaj-contact-card-heading{margin-bottom:22px}
.sahaj-contact-card-heading h2{margin:0;color:var(--dg);font-size:25px}
.sahaj-contact-card-heading p{margin:6px 0 0;color:var(--s);font-size:13px}
.sahaj-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.sahaj-contact-field{min-width:0;margin:0 0 16px}
.sahaj-contact-field-full{grid-column:1/-1}
.sahaj-contact-field label{display:block;margin-bottom:6px;color:var(--t);font-size:13px;font-weight:700}
.sahaj-contact-field input,.sahaj-contact-field textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid #dfe5e0;border-radius:9px;background:#fff;color:var(--t);font:inherit;font-size:14px;transition:border-color .18s,box-shadow .18s}
.sahaj-contact-field textarea{min-height:130px;resize:vertical}
.sahaj-contact-field input:focus,.sahaj-contact-field textarea:focus{border-color:var(--g);outline:0;box-shadow:0 0 0 3px #2f6b3f1c}
.sahaj-contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:48px;padding:11px 19px;border:0;border-radius:9px;background:var(--g);color:#fff;font:inherit;font-size:14px;font-weight:800;transition:background .18s,transform .18s}
.sahaj-contact-submit:hover{transform:translateY(-1px);background:var(--dg)}
.sahaj-contact-submit span{font-size:20px;line-height:1}
.sahaj-contact-notice{margin:0 0 18px;padding:13px 15px;border:1px solid;border-radius:10px;font-size:13px}
.sahaj-contact-success{border-color:#cce4d3;background:#f1f8f3;color:var(--dg)}
.sahaj-contact-error{border-color:#f0c7c2;background:#fff6f5;color:#8f2920}
.sahaj-contact-error p{margin:0 0 5px;font-weight:800}
.sahaj-contact-error ul{margin:0;padding-left:18px}

@media(max-width:700px){
  .sahaj-contact-page{width:calc(100% - 28px);padding:34px 0 48px}
  .sahaj-contact-intro{margin-bottom:24px}
  .sahaj-contact-intro p{font-size:14px}
  .sahaj-contact-layout{grid-template-columns:1fr;gap:14px}
  .sahaj-contact-aside{min-height:190px;padding:22px;border-radius:16px}
  .sahaj-contact-aside-mark{top:18px;left:22px}
  .sahaj-contact-aside h2{max-width:340px;font-size:25px}
  .sahaj-contact-aside p{max-width:420px;margin-top:7px;font-size:13px}
  .sahaj-contact-card{padding:21px;border-radius:16px}
  .sahaj-contact-fields{grid-template-columns:1fr}
  .sahaj-contact-field-full{grid-column:auto}
  .sahaj-contact-submit{width:100%}
}
