/* HRCS India – Housing Requirement Audit Form (audit-form.html only) */
.af-page,.af-modal{
  --af-teal:#329A9A; --af-teal-2:#278F99; --af-teal-dd:#0E3B3D;
  --af-cream:#FBFACE; --af-cream-2:#FCF8DC; --af-bg:#FDFCF4;
  --af-slate:#0F172A; --af-slate-2:#1E293B; --af-muted:#5B6767; --af-line:#DDE7E6;
  --af-err:#C0392B; --af-wa:#25D366; --af-ease:cubic-bezier(.2,.7,.2,1);
}
.af-page{background:var(--af-bg)}
.af-page section{padding:64px 0}

/* ---------- Hero + form card ---------- */
.af-page .af-hero{padding:28px 0 56px;overflow:hidden;background:
  radial-gradient(1200px 520px at 50% -180px,rgba(50,154,154,.20),transparent 70%),
  linear-gradient(180deg,var(--af-cream-2) 0%,var(--af-bg) 55%)}
.af-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:afFloat 14s ease-in-out infinite}
.af-blob-1{width:340px;height:340px;background:#9ED6D2;top:-80px;left:-120px}
.af-blob-2{width:300px;height:300px;background:var(--af-cream);bottom:40px;right:-110px;animation-delay:-6s}
@keyframes afFloat{50%{transform:translate(30px,24px) scale(1.08)}}
.af-wrap{position:relative;max-width:760px}
.af-crumbs{display:flex;gap:8px;font-size:13px;color:var(--af-muted);margin-bottom:14px}
.af-crumbs a{color:var(--af-teal-2);font-weight:500}
.af-intro{text-align:center;margin-bottom:22px;animation:afUp .7s var(--af-ease) both}
.af-badge{display:inline-flex;align-items:center;gap:6px;background:var(--af-slate);color:var(--af-cream);font:600 12.5px/1 'Poppins',sans-serif;letter-spacing:.02em;padding:9px 16px;border-radius:999px;box-shadow:0 8px 20px -10px rgba(15,23,42,.6)}
.af-intro h1{font-size:clamp(25px,5.4vw,40px);font-weight:800;color:var(--af-slate);margin:14px 0 10px;letter-spacing:-.01em}
.af-intro h1 span{display:block;font-size:.6em;font-weight:600;color:var(--af-teal-2);margin-top:6px}
.af-sub{color:#475569;font-size:clamp(15px,3.6vw,17px);max-width:620px;margin:0 auto}
@keyframes afUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

.af-card{position:relative;background:rgba(255,255,255,.78);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);
  border:1px solid rgba(255,255,255,.9);border-radius:24px;padding:22px 22px 18px;
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 30px 60px -28px rgba(14,59,61,.38),0 8px 20px -12px rgba(15,23,42,.18);
  animation:afUp .8s .1s var(--af-ease) both}

/* stepper */
.af-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:10px;counter-reset:s}
.af-steps li{display:flex;flex-direction:column;align-items:center;gap:6px;font:500 12px/1.1 'Poppins',sans-serif;color:#94A3B8;text-align:center;transition:color .3s}
.af-steps b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#EEF3F3;color:#64748B;font-weight:700;font-size:13px;transition:.35s var(--af-ease)}
.af-steps li.is-active{color:var(--af-slate)}
.af-steps li.is-active b{background:var(--af-teal);color:#fff;box-shadow:0 0 0 5px rgba(50,154,154,.18);transform:scale(1.06)}
.af-steps li.is-done{color:var(--af-teal-2)}
.af-steps li.is-done b{background:var(--af-cream);color:var(--af-teal-dd);font-size:0}
.af-steps li.is-done b::before{content:"✓";font-size:15px}
.af-bar{height:5px;background:#EEF3F3;border-radius:9px;overflow:hidden;margin-bottom:18px}
.af-bar i{display:block;height:100%;width:25%;background:linear-gradient(90deg,var(--af-teal),var(--af-teal-2),#7CCFC3);border-radius:9px;transition:width .5s var(--af-ease)}

/* steps */
.af-step{border:0;min-width:0;display:none}
.af-step.is-active{display:block;animation:afIn .45s var(--af-ease) both}
.af-step.is-back{animation-name:afInBack}
@keyframes afIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes afInBack{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
.af-step legend{font:700 19px/1.25 'Poppins',sans-serif;color:var(--af-slate);margin-bottom:16px;padding:0}
.af-step legend small{display:block;font:600 11.5px/1 'Poppins',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--af-teal-2);margin-bottom:6px}

.af-f{margin-bottom:16px}
.af-f>label,.af-lab,.af-other label{display:block;font:600 14px/1.3 'Poppins',sans-serif;color:var(--af-slate-2);margin-bottom:8px}
.af-f i,.af-other i{color:var(--af-err);font-style:normal}
.af-lab em{font-style:normal;font-weight:500;color:var(--af-teal-2);font-size:12.5px}
.af-opt{font-weight:400;color:#94A3B8;font-size:13px}
.af-hint{display:block;color:#64748B;font-size:12.5px;margin-top:6px}
.af-page input:not([type=radio]):not([type=checkbox]),.af-page select,.af-page textarea{
  width:100%;font:500 16px/1.3 'Inter',sans-serif;color:var(--af-slate);background:#fff;border:1.5px solid var(--af-line);
  border-radius:14px;padding:14px 15px;min-height:52px;outline:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.af-page textarea{resize:vertical;min-height:90px}
.af-page input:focus,.af-page select:focus,.af-page textarea:focus{border-color:var(--af-teal);box-shadow:0 0 0 4px rgba(50,154,154,.16)}
.af-page ::placeholder{color:#A0AEC0}
.af-tel{display:flex;align-items:stretch}
.af-tel span{display:grid;place-items:center;padding:0 14px;background:var(--af-cream-2);border:1.5px solid var(--af-line);border-right:0;border-radius:14px 0 0 14px;font-weight:600;color:var(--af-teal-dd)}
.af-tel input{border-radius:0 14px 14px 0!important}
.af-sel{position:relative}
.af-sel::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;border-right:2px solid var(--af-teal-2);border-bottom:2px solid var(--af-teal-2);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.af-sel select{padding-right:42px;cursor:pointer}
.af-row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}

/* pills + chips */
.af-pills{display:grid;gap:10px}
.af-pills-2{grid-template-columns:1fr 1fr}
.af-pills-3{grid-template-columns:repeat(3,1fr)}
.af-pill,.af-chip{position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent}
.af-pill input,.af-chip input,.af-check input{position:absolute;opacity:0;width:1px;height:1px}
.af-pill span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:52px;height:100%;padding:10px 14px;border:1.5px solid var(--af-line);border-radius:999px;background:#fff;
  font:600 14px/1.25 'Poppins',sans-serif;color:var(--af-slate-2);transition:.25s var(--af-ease)}
.af-pills-3 .af-pill span,.af-pills-stack .af-pill span{border-radius:16px}
.af-pills-stack{grid-template-columns:1fr 1fr}
.af-pill:hover span,.af-chip:hover span{border-color:var(--af-teal);transform:translateY(-1px)}
.af-pill input:checked+span,.af-chip input:checked+span{background:linear-gradient(135deg,var(--af-teal),var(--af-teal-2));border-color:transparent;color:#fff;box-shadow:0 10px 20px -10px rgba(39,143,153,.85)}
.af-pill input:focus-visible+span,.af-chip input:focus-visible+span,.af-check input:focus-visible~.af-box{outline:3px solid rgba(50,154,154,.4);outline-offset:2px}
.af-chips{display:flex;flex-wrap:wrap;gap:8px}
.af-chip span{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:9px 16px;border:1.5px solid var(--af-line);border-radius:999px;background:#fff;font:500 14px/1 'Poppins',sans-serif;color:var(--af-slate-2);transition:.25s var(--af-ease)}
.af-chip input:checked+span::before{content:"✓";font-weight:700}
.af-chips .af-chip{animation:afPop .35s var(--af-ease) both}
@keyframes afPop{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
.af-other{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s var(--af-ease),opacity .3s,margin .3s}
.af-other>*{overflow:hidden}
.af-other label{margin-bottom:0}
.af-other.is-open{grid-template-rows:auto auto;opacity:1;margin-top:12px}
.af-other.is-open label{margin-bottom:8px}

/* checkboxes */
.af-f>.af-check,.af-check{display:flex;flex-direction:row;font-family:'Inter',sans-serif;font-weight:500;gap:12px;align-items:flex-start;position:relative;padding:14px;border:1.5px solid var(--af-line);border-radius:16px;background:#fff;margin-bottom:10px;cursor:pointer;font-size:14.5px;line-height:1.45;color:var(--af-slate-2);transition:.25s}
.af-check:has(input:checked){border-color:var(--af-teal);background:#F2FAF9}
.af-box{flex:0 0 22px;width:22px;height:22px;border-radius:7px;border:2px solid #A9C1C0;display:grid;place-items:center;transition:.2s;margin-top:1px}
.af-check input:checked~.af-box{background:var(--af-teal);border-color:var(--af-teal)}
.af-check input:checked~.af-box::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}

/* errors */
.af-page .is-bad,.af-page .is-bad .af-pill span,.af-page .is-bad .af-chip span,.af-page .is-bad .af-check{border-color:var(--af-err)!important}
.af-page .af-f.is-bad{animation:afShake .4s}
@keyframes afShake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.af-msg{display:block;color:var(--af-err);font-size:13px;font-weight:500;margin-top:6px}
.af-err{background:#FDECEA;color:#8E2A20;border-radius:12px;padding:10px 14px;font-size:14px;margin:4px 0 12px}
.af-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.af-consent{font-size:12.5px;color:#64748B;margin-top:4px}
.af-consent a{color:var(--af-teal-2);text-decoration:underline}

/* buttons */
.af-nav{display:flex;gap:10px;margin-top:8px}
.af-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:12px 22px;border:0;border-radius:999px;cursor:pointer;
  font:600 16px/1.2 'Poppins',sans-serif;transition:transform .2s var(--af-ease),box-shadow .2s,background .2s}
.af-btn svg{width:18px;height:18px}
.af-btn:active{transform:scale(.97)}
.af-next,.af-submit{background:linear-gradient(135deg,var(--af-teal),var(--af-teal-2));color:#fff;box-shadow:0 14px 26px -12px rgba(39,143,153,.9)}
.af-next:hover,.af-submit:hover{transform:translateY(-2px);box-shadow:0 18px 30px -12px rgba(39,143,153,.95)}
.af-submit{flex:2;background:linear-gradient(135deg,var(--af-slate),var(--af-slate-2));box-shadow:0 14px 26px -12px rgba(15,23,42,.8)}
.af-submit[disabled]{opacity:.7;cursor:wait}
.af-back{flex:0 0 auto;background:#EEF3F3;color:var(--af-slate-2)}
.af-back:hover{background:#E1EBEA}
.af-btn[hidden]{display:none}
.af-micro{text-align:center;font-size:13px;font-weight:500;color:var(--af-teal-dd);background:var(--af-cream);border-radius:12px;padding:10px 12px;margin-top:16px}

/* ---------- Pillars ---------- */
.af-pillars .sec-head{margin-bottom:32px}
.af-pgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.af-pgrid li{background:#fff;border:1px solid var(--af-line);border-radius:20px;padding:22px 18px;box-shadow:0 12px 28px -20px rgba(14,59,61,.35);transition:transform .3s var(--af-ease),box-shadow .3s}
.af-pgrid li:hover{transform:translateY(-6px);box-shadow:0 22px 40px -22px rgba(14,59,61,.45)}
.af-pic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--af-cream),#E6F4F1);color:var(--af-teal-2);margin-bottom:14px}
.af-pic svg{width:24px;height:24px}
.af-pgrid h3{font-size:16px;margin-bottom:6px;color:var(--af-slate)}
.af-pgrid p{font-size:14px;color:var(--af-muted);line-height:1.55}

/* ---------- FAQ ---------- */
.af-faq-in{max-width:820px}
.af-faq .sec-head{margin-bottom:28px}
.af-faq details{background:#fff;border:1px solid var(--af-line);border-radius:16px;margin-bottom:10px;overflow:hidden}
.af-faq summary{cursor:pointer;list-style:none;padding:16px 50px 16px 18px;font:600 15.5px/1.35 'Poppins',sans-serif;color:var(--af-slate);position:relative}
.af-faq summary::-webkit-details-marker{display:none}
.af-faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--af-teal-2);transition:.3s}
.af-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.af-faq details p{padding:0 18px 16px;color:var(--af-muted);font-size:15px}

/* ---------- Contact bar ---------- */
.af-page .af-contact{padding-top:56px}
.af-cbar{display:grid;grid-template-columns:1fr auto;gap:18px 24px;align-items:center;background:linear-gradient(135deg,var(--af-slate),#13324A 55%,var(--af-teal-dd));color:#E2E8F0;border-radius:24px;padding:28px}
.af-cbar h2{color:#fff;font-size:24px;margin-bottom:4px}
.af-cbar p{color:#B8C7D6}
.af-cbtns{display:flex;flex-wrap:wrap;gap:12px}
.af-cbtn{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:12px 16px;transition:.25s;color:#fff}
.af-cbtn:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}
.af-cbtn svg{width:22px;height:22px;color:var(--af-cream);flex:0 0 22px}
.af-cbtn span{font:600 15px/1.2 'Poppins',sans-serif;word-break:break-word}
.af-cbtn small{display:block;font:500 11.5px/1.2 'Inter',sans-serif;color:#9FB3C8;letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px}
.af-micro-l{grid-column:1/-1;margin:4px 0 0;background:rgba(251,250,206,.12);color:var(--af-cream)}

/* ---------- Success modal ---------- */
.af-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:16px;background:rgba(15,23,42,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:afFade .3s both}
.af-modal[hidden]{display:none}
@keyframes afFade{from{opacity:0}}
.af-mcard{position:relative;width:min(460px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:26px;padding:28px 22px 22px;text-align:center;
  box-shadow:0 40px 80px -30px rgba(15,23,42,.6);animation:afZoom .5s var(--af-ease) both}
@keyframes afZoom{from{opacity:0;transform:translateY(30px) scale(.94)}}
.af-mx{position:absolute;top:12px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:#F1F5F9;font-size:24px;line-height:1;color:var(--af-slate-2);cursor:pointer}
.af-tick{width:76px;height:76px;margin:0 auto 12px}
.af-tick svg{width:100%;height:100%}
.af-tick circle{stroke:var(--af-teal);stroke-width:3;stroke-dasharray:151;stroke-dashoffset:151;animation:afDraw .7s .15s ease-out forwards}
.af-tick path{stroke:var(--af-teal-2);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:afDraw .45s .75s ease-out forwards}
@keyframes afDraw{to{stroke-dashoffset:0}}
.af-mcard h2{font-size:24px;color:var(--af-slate);margin-bottom:6px}
.af-msub{color:var(--af-muted);font-size:15px;margin-bottom:16px}
.af-ticket{text-align:left;background:var(--af-cream-2);border:1.5px dashed #D6CF8F;border-radius:18px;padding:14px 16px;margin-bottom:14px}
.af-tk-h{display:flex;justify-content:space-between;align-items:center;font:600 12px/1 'Poppins',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#7A7440;padding-bottom:10px;border-bottom:1px dashed #D6CF8F;margin-bottom:8px}
.af-tk-h b{font-size:14px;color:var(--af-teal-dd);letter-spacing:.04em}
.af-ticket dl{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font-size:13.5px}
.af-ticket dt{color:#7A7440;font-weight:500}
.af-ticket dd{color:var(--af-slate);font-weight:600;text-align:right;word-break:break-word}
.af-turn{display:flex;text-align:left;gap:8px;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--af-teal-dd);margin-bottom:14px}
.af-turn svg{width:18px;height:18px;flex:0 0 18px}
.af-wa{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border-radius:999px;background:var(--af-wa);color:#fff;font:600 16px/1 'Poppins',sans-serif;box-shadow:0 14px 26px -12px rgba(37,211,102,.9);transition:.25s}
.af-wa:hover{transform:translateY(-2px);background:#1EBE5A}
.af-wa svg{width:22px;height:22px}
.af-mnote{font-size:12.5px;color:#94A3B8;margin-top:10px}

/* the floating call/WhatsApp buttons step aside while the form is on screen (phones) */
.fab{transition:opacity .3s,transform .3s}
body.af-form-in-view .fab{opacity:0;transform:translateY(20px);pointer-events:none}
@media (min-width:701px){body.af-form-in-view .fab{opacity:1;transform:none;pointer-events:auto}}

/* ---------- Responsive ---------- */
@media (max-width:1080px){.af-pgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){
  .af-page section{padding:48px 0}
  .af-page .af-hero{padding:16px 0 40px}
  .af-card{padding:18px 14px 14px;border-radius:20px}
  .af-pills-3,.af-pills-stack{grid-template-columns:1fr}
  .af-pills-3 .af-pill span,.af-pills-stack .af-pill span{justify-content:flex-start;text-align:left;border-radius:14px;min-height:50px}
  .af-row{grid-template-columns:1fr}
  .af-pgrid{grid-template-columns:1fr 1fr;gap:12px}
  .af-pgrid li{padding:18px 14px}
  .af-pgrid li:last-child{grid-column:1/-1}
  .af-cbar{grid-template-columns:1fr;padding:22px 18px}
  .af-cbtns{flex-direction:column}
  .af-steps span{font-size:11px}
  .af-back span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .af-back{padding:12px 18px}
  .af-nav{flex-wrap:wrap}
  .af-submit{order:-1;flex:1 1 100%;font-size:15.5px;padding:12px 16px}
  .af-nav:has(.af-submit:not([hidden])) .af-back{flex:1 1 100%;min-height:44px;background:none;color:#64748B;font-size:14px}
  .af-nav:has(.af-submit:not([hidden])) .af-back span{position:static;width:auto;height:auto;clip:auto}
}
@media (max-width:380px){.af-pgrid{grid-template-columns:1fr}.af-pgrid li:last-child{grid-column:auto}}
@media (prefers-reduced-motion:reduce){.af-page *,.af-modal *{animation:none!important;transition:none!important}}
