/* FIRSTIP accounts: sign-up, sign-in, My FIRSTIP, certificate verification and the certificate itself.
   FIRSTIP brand: cream ground, sand cards, FIRSTIP Red actions, Sun Orange for progress and decoration,
   Source Sans 3, large radii. Every text colour meets WCAG 2.2 AA on its background. */
.fa{--r:#d81f26;--rd:#b8171d;--rt:#fbe4e2;--o:#f5821f;--ot:#fdebd8;--ink:#20211f;--body:#3a3b3b;--mut:#5c5d58;--sand:#f2ebe1;--sand2:#e9dfd1;--cream:#faf6f0;--line:#ddd4c7;--ok:#3d5226;--okt:#e3ecd9;
  font-family:'Source Sans 3','Noto Sans Devanagari','Segoe UI',system-ui,sans-serif;color:var(--ink);font-size:16px;line-height:1.5;max-width:1100px}
.fa *,.fa *::before,.fa *::after{box-sizing:border-box}
.fa-narrow{max-width:560px}
.fa h2{margin:4px 0 10px;font-size:clamp(26px,3vw,34px);font-weight:900;letter-spacing:-.02em;line-height:1.1}
.fa h3{margin:0 0 14px;font-size:24px;font-weight:900;letter-spacing:-.015em}
.fa h4{margin:0 0 8px;font-size:19px;font-weight:800}
.fa p{margin:0 0 12px}
.fa a{color:var(--rd);font-weight:700}
.fa-kicker{margin:0!important;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rd)}
.fa-card{background:#fff;border-radius:32px;padding:clamp(20px,3vw,32px);box-shadow:0 1px 0 rgba(46,43,37,.05)}
.fa-form{display:flex;flex-direction:column;gap:14px;margin:0}
.fa-form fieldset{border:0;border-top:1.5px solid var(--sand2);margin:6px 0 0;padding:16px 0 0;display:flex;flex-direction:column;gap:12px;min-width:0}
.fa-form legend{font-size:18px;font-weight:800;padding:0 10px 0 0}
.fa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px 14px}
.fa-field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;min-width:0}
.fa-field input,.fa-field select,.fa-field textarea{font:inherit;font-size:16px;font-weight:400;color:var(--ink);background:var(--cream);border:1.5px solid var(--line);border-radius:999px;padding:12px 18px;min-height:48px;width:100%}
.fa-field textarea{border-radius:22px;resize:vertical;min-height:96px}
.fa-field select{appearance:auto}
.fa-field input:disabled{color:var(--mut);background:var(--sand)}
.fa-field input:focus-visible,.fa-field select:focus-visible,.fa-field textarea:focus-visible,.fa-check input:focus-visible,.fa-btn:focus-visible,.fa-link:focus-visible,.fa-chip input:focus-visible+span,.fa-tabs a:focus-visible{outline:3px solid var(--o);outline-offset:2px}
.fa-field small{font-size:13.5px;font-weight:400;color:var(--mut)}
.fa-check{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45;cursor:pointer}
.fa-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--r);flex:none}
.fa-chips{display:flex;flex-wrap:wrap;gap:8px}
.fa-chip{position:relative;cursor:pointer}
.fa-chip input{position:absolute;opacity:0;width:1px;height:1px}
.fa-chip span{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:10px 18px;border-radius:999px;background:var(--sand);font-size:15.5px;font-weight:700}
.fa-chip span::before{content:"";width:18px;height:18px;border-radius:6px;border:2px solid var(--mut);background:#fff}
.fa-chip input:checked+span{background:var(--ink);color:#fff}
.fa-chip input:checked+span::before{border-color:#fff;background:var(--r) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3 3 7-7' stroke='white' stroke-width='2.4' fill='none'/%3E%3C/svg%3E") center/14px no-repeat}
.fa-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.fa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;font:inherit;font-size:16px;font-weight:700;padding:13px 26px;min-height:48px;border-radius:999px;background:var(--r);color:#fff!important;text-decoration:none}
.fa-btn:hover{background:var(--rd)}
.fa-btn-ghost{background:var(--sand);color:var(--ink)!important}
.fa-btn-ghost:hover{background:var(--ot)}
.fa-link{border:0;background:none;padding:6px 0;cursor:pointer;font:inherit;font-size:15px;font-weight:700;color:var(--rd);text-decoration:underline;text-underline-offset:3px}
.fa-danger{color:#8f1218}
.fa-small{font-size:14.5px;color:var(--body)}
.fa-muted{color:var(--mut)!important}
.fa-warn{color:#8f1218;font-weight:700}
.fa-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.fa-note{display:flex;flex-direction:column;gap:2px;border-radius:22px;padding:14px 18px;margin:0 0 14px;font-size:15.5px}
.fa-note b{font-size:16.5px}
.fa-note-ok{background:var(--okt);color:var(--ok)}
.fa-note-err{background:#fbdcdc;color:#8f1218}
.fa-note-info{background:var(--ot);color:#6b3409}
.fa-steps{list-style:none;counter-reset:s;margin:0 0 6px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px}
.fa-steps li{counter-increment:s;display:flex;gap:10px;align-items:center;background:var(--cream);border-radius:18px;padding:10px 14px;font-size:14.5px;font-weight:700}
.fa-steps li::before{content:counter(s);flex:none;width:28px;height:28px;border-radius:50%;background:var(--r);color:#fff;display:grid;place-items:center;font-weight:900;font-size:14px}
.fa-more{margin-top:14px;border-top:1.5px solid var(--sand2);padding-top:10px}
.fa-more summary{cursor:pointer;font-weight:700;color:var(--rd);min-height:44px;display:flex;align-items:center}
.fa-more form{margin-top:8px}
/* My FIRSTIP */
.fa-head{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;background:var(--sand);border-radius:40px;padding:clamp(22px,3.5vw,40px);margin-bottom:14px}
.fa-ids{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 0!important}
.fa-ids b,.fa-ids span{font-size:14px;font-weight:700;padding:6px 14px;border-radius:999px;background:#fff}
.fa-ids b{background:var(--ink);color:#fff;letter-spacing:.06em}
.fa-tabs{display:flex;gap:4px;overflow-x:auto;background:#fff;border-radius:999px;padding:6px;margin:0 0 18px}
.fa-tabs a{flex:none;color:var(--ink)!important;text-decoration:none;font-size:15px;font-weight:700;padding:10px 18px;border-radius:999px;min-height:44px;display:inline-flex;align-items:center}
.fa-tabs a:hover{background:var(--rt);color:var(--rd)!important}
.fa-sec{margin:0 0 30px;scroll-margin-top:120px}
.fa-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.fa-app{background:#fff;border-radius:28px;padding:20px;display:flex;flex-direction:column;gap:10px}
.fa-app h4{margin:0}
.fa-app p{margin:0}
.fa-app .fa-btn{align-self:flex-start}
.fa-app-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.fa-type{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rd)}
.fa-pill{font-size:13px;font-weight:700;padding:4px 12px;border-radius:999px;background:var(--sand);color:var(--ink)}
.fa-pill-approved{background:var(--okt);color:var(--ok)}
.fa-pill-completed{background:var(--ink);color:#fff}
.fa-pill-pending{background:var(--ot);color:#6b3409}
.fa-pill-rejected,.fa-pill-withdrawn{background:var(--sand2);color:var(--mut)}
.fa-meter>div:first-child{display:flex;justify-content:space-between;font-size:14px;color:var(--mut)}
.fa-meter b{color:var(--ink);font-variant-numeric:tabular-nums}
.fa-meter small{display:block;margin-top:4px;font-size:13.5px;color:var(--mut)}
.fa-track{height:10px;border-radius:999px;background:var(--sand);overflow:hidden;margin-top:6px}
.fa-track i{display:block;height:100%;border-radius:999px;background:var(--o)}
.fa-track.is-low i{background:var(--r)}
.fa-inline{display:inline;margin:0}
.fa-empty{background:var(--sand);border-radius:24px;padding:18px 20px;margin:0}
.fa-certs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fa-certs li{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;background:#fff;border-radius:24px;padding:16px 20px}
.fa-certs li>div{flex:1 1 240px;display:flex;flex-direction:column}
.fa-certs small{color:var(--mut);font-size:14px;letter-spacing:.02em}
.fa-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px;align-items:start}
.fa-verified{margin-top:16px;background:var(--okt);color:var(--ok);border-radius:24px;padding:18px 20px}
.fa-verified b{font-size:18px}
.fa-verified dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:10px 0 0;color:var(--ink)}
.fa-verified dt{color:var(--ok);font-weight:700}
.fa-verified dd{margin:0}
/* Certificate (A4 landscape) */
.fa-cert-body{margin:0;background:#e9dfd1;font-family:'Source Sans 3','Noto Sans Devanagari',system-ui,sans-serif;color:#20211f}
.fa-cert-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;max-width:1123px;margin:0 auto;padding:16px}
.fa-cert-bar a{color:#b8171d;font-weight:700;text-decoration:none}
.fa-cert-bar button{border:0;cursor:pointer;font:inherit;font-size:16px;font-weight:700;padding:13px 24px;border-radius:999px;background:#d81f26;color:#fff}
.fa-cert-bar button:hover{background:#b8171d}
.fa-cert{position:relative;overflow:hidden;width:min(1123px,100% - 32px);aspect-ratio:297/210;margin:0 auto 32px;background:#fffdf9;border-radius:24px;box-shadow:0 16px 40px rgba(46,43,37,.18);padding:4.5% 7%;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;gap:.4em;font-size:clamp(11px,1.55vw,17px);border:10px solid #f2ebe1;outline:2px solid #d81f26;outline-offset:-22px}
.fa-cert-c1,.fa-cert-c2{position:absolute;border-radius:50%;background:#f5821f;opacity:.16}
.fa-cert-c1{width:26%;aspect-ratio:1;right:-8%;top:-12%}
.fa-cert-c2{width:16%;aspect-ratio:1;left:-5%;bottom:-7%;background:#d81f26;opacity:.1}
.fa-cert header img{height:3.6em;width:auto}
.fa-cert-word{font-size:2.4em;font-weight:900}.fa-cert-word span{color:#f5821f}
.fa-cert-kind{margin:.6em 0 .2em;font-size:1.05em;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#b8171d}
.fa-cert p{margin:0}
.fa-cert h1{margin:.1em 0 0;font-size:2.9em;font-weight:900;letter-spacing:-.02em;line-height:1.05}
.fa-cert-mid{font-size:.9em;font-weight:700;letter-spacing:.08em;color:#5c5d58}
.fa-cert h2{margin:.1em 0;font-size:1.9em;font-weight:900;color:#20211f;max-width:22em;line-height:1.1}
.fa-cert-org{max-width:34em;color:#3a3b3b}
.fa-cert-foot{width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:1em;margin-top:1.4em;font-size:.95em}
.fa-cert-foot>div{display:flex;flex-direction:column;align-items:center;min-width:28%}
.fa-cert-foot span{color:#5c5d58;font-size:.85em}
.fa-cert-sign i{width:80%;border-bottom:2px solid #20211f;height:2.2em;margin-bottom:.3em}
.fa-cert-verify{position:absolute;bottom:3.2%;left:0;right:0;font-size:.75em;color:#5c5d58}
@page{size:A4 landscape;margin:0}
@media print{
  .fa-cert-body{background:#fff}
  .fa-cert-bar{display:none}
  .fa-cert{width:297mm;height:210mm;aspect-ratio:auto;margin:0;border-radius:0;box-shadow:none;font-size:15px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media (prefers-reduced-motion:reduce){.fa *{transition:none!important;animation:none!important}}
