/* Infinity IT Risk Assessment. Uses the Infinity theme tokens, with fallbacks. */
.ira,.ira-compact{--a-ink:var(--ink,#2D225C);--a-night:var(--night,#1E1640);--a-indigo:var(--indigo,#5A47B5);--a-green:var(--green,#36B02B);--a-green-700:var(--green-700,#278020);--a-muted:var(--muted,#5E5980);--a-mist:var(--mist,#F7F6FC);--a-mist-2:var(--mist-2,#EFECF9);--a-line:var(--line,#ECEAF5);--a-line-2:var(--line-2,#DCD6F2);--a-r:var(--r,24px);--a-r-lg:var(--r-lg,32px);--a-shadow:var(--shadow,0 12px 32px -12px rgba(45,34,92,.18));--a-shadow-lg:var(--shadow-lg,0 40px 80px -32px rgba(45,34,92,.25));--a-ease:var(--ease,cubic-bezier(.2,.7,.2,1));
  --c-critical:#C8321F;--c-serious:#D4650E;--c-warning:#B88400;--c-good:#278020}
.ira-ico{width:18px;height:18px;flex:none}

/* layout: copy + card, collapsing to a focused single column once started */
.ira .ira__grid{position:relative;z-index:2;display:grid;gap:40px;align-items:center;padding-block:clamp(36px,5vw,72px) clamp(56px,7vw,104px)}
@media(min-width:1040px){.ira .ira__grid{grid-template-columns:6fr 6fr}}
.ira h1{max-width:13ch}
.ira h1 em{display:block}
.ira .lead{max-width:560px}
.ira__points{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:12px;font-size:.98rem;color:var(--a-ink)}
.ira__points li{display:flex;align-items:center;gap:12px}
.ira__points .ira-ico{width:20px;height:20px;color:var(--a-green-700)}
.ira.is-running .ira__grid{grid-template-columns:1fr;max-width:860px;padding-block:clamp(24px,4vw,48px) clamp(48px,6vw,88px)}
.ira.is-running .ira__copy{display:none}
.ira.is-results .ira__grid{max-width:calc(var(--wrap,1280px) + var(--pad,40px)*2)}

.ira__card{position:relative;background:#fff;border:1px solid var(--a-line);border-radius:var(--a-r-lg);box-shadow:var(--a-shadow-lg);padding:clamp(24px,4vw,44px);scroll-margin-top:96px}
.ira__progress{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;margin-bottom:26px;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--a-muted)}
.ira__progress[hidden]{display:none}
.ira__progress [data-ira-label]{justify-self:end;letter-spacing:.02em;text-transform:none;color:var(--a-ink)}
.ira__track{grid-column:1/-1;height:6px;border-radius:99px;background:var(--a-mist-2);overflow:hidden}
.ira__track i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--a-indigo),var(--a-green));transition:width .5s var(--a-ease)}
.ira__stage:focus{outline:none}

/* screens */
.ira-screen{animation:ira-in .35s var(--a-ease)}
@keyframes ira-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ira-screen{animation:none}}
.ira-kicker{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--a-green-700);margin:0 0 14px}
.ira-kicker::before{content:"";width:22px;height:1.5px;background:currentColor}
.ira-screen h2{font-size:clamp(1.5rem,1.1rem + 1.6vw,2.2rem);line-height:1.15;letter-spacing:-.03em;font-weight:600;margin:0 0 12px;color:var(--a-ink);text-wrap:balance}
.ira-help{color:var(--a-muted);font-size:.98rem;line-height:1.6;margin:0 0 20px;max-width:62ch}
.ira-choices{display:grid;gap:10px;margin-top:22px}
.ira-choices.is-multi{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.ira-choice{position:relative;display:flex;align-items:center;gap:14px;width:100%;text-align:left;font:inherit;font-size:1rem;line-height:1.45;color:var(--a-ink);background:#fff;border:1.5px solid var(--a-line-2);border-radius:16px;padding:15px 18px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s,transform .15s}
.ira-choice:hover{border-color:var(--a-indigo);background:var(--a-mist)}
.ira-choice:focus-visible{outline:3px solid var(--a-green);outline-offset:2px}
.ira-choice .ira-mark{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--a-line-2);background:#fff;transition:all .2s}
.ira-choices.is-multi .ira-mark{border-radius:7px}
.ira-choice .ira-mark .ira-ico{width:14px;height:14px;opacity:0;color:#fff;stroke-width:3}
.ira-choice[aria-pressed=true]{border-color:var(--a-ink);background:var(--a-mist);box-shadow:0 0 0 1px var(--a-ink) inset}
.ira-choice[aria-pressed=true] .ira-mark{background:var(--a-ink);border-color:var(--a-ink)}
.ira-choice[aria-pressed=true] .ira-mark .ira-ico{opacity:1}
.ira-choice:active{transform:scale(.995)}
.ira-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:26px}
.ira-actions .btn .icon{width:18px;height:18px}
.ira-actions .btn[disabled]{opacity:.45;pointer-events:none}
.ira-back{border:0;background:none;font:inherit;font-size:.92rem;font-weight:600;color:var(--a-muted);padding:10px 4px;cursor:pointer}
.ira-back:hover{color:var(--a-ink)}
.ira-error{margin:14px 0 0;padding:10px 14px;border-radius:12px;background:#FDECEA;color:#B42318;font-size:.92rem;font-weight:500}

/* fields */
.ira-form{display:grid;gap:14px;margin-top:20px}
@media(min-width:640px){.ira-form{grid-template-columns:1fr 1fr}.ira-form .is-wide{grid-column:1/-1}}
.ira-field{display:grid;gap:6px}
.ira-field>span{font-size:.84rem;font-weight:600;color:var(--a-ink)}
.ira-field>span small{font-weight:400;color:var(--a-muted)}
.ira-field input,.ira-field select{width:100%;font:inherit;font-size:1rem;color:var(--a-ink);padding:13px 14px;border:1px solid var(--a-line-2);border-radius:12px;background:var(--a-mist)}
.ira-field input:focus,.ira-field select:focus{outline:none;border-color:var(--a-indigo);background:#fff;box-shadow:0 0 0 4px rgba(90,71,181,.1)}
.ira-consent{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:.88rem;line-height:1.5;color:var(--a-ink)}
.ira-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--a-green-700)}
.ira-note{font-size:.8rem;color:var(--a-muted);margin:0;line-height:1.5}
.ira-note a{color:inherit}
.ira-hp{position:absolute;left:-9999px}
.ira-mailnote{display:flex;gap:10px;align-items:center;margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--a-mist);font-size:.88rem;color:var(--a-ink)}
.ira-mailnote .ira-ico{color:var(--a-indigo)}

/* results */
.ira-res{display:grid;gap:22px}
.ira-hero{display:grid;gap:24px;align-items:center}
@media(min-width:760px){.ira-hero{grid-template-columns:auto 1fr}}
.ira-meter{--c:var(--c-warning);position:relative;width:150px;height:150px;display:grid;place-items:center}
.ira-meter svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.ira-meter circle{fill:none;stroke:var(--a-mist-2);stroke-width:10}
.ira-meter .v{stroke:var(--c);stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:calc(326.7 - 326.7 * var(--p,0) / 100);transition:stroke-dashoffset 1.2s var(--a-ease)}
.ira-meter strong{position:relative;font-size:3rem;font-weight:600;letter-spacing:-.04em;line-height:1;color:var(--a-ink)}
.ira-meter small{position:absolute;bottom:30px;font-size:.74rem;font-weight:600;color:var(--a-muted)}
.ira-band-pill{display:inline-flex;padding:5px 12px;border-radius:999px;color:#fff;font-size:.8rem;font-weight:600;background:var(--c)}
.c-critical{--c:var(--c-critical)}.c-serious{--c:var(--c-serious)}.c-warning{--c:var(--c-warning)}.c-good{--c:var(--c-good)}
.ira-hero h2{margin:12px 0 8px}
.ira-hero p{margin:0;color:var(--a-muted);line-height:1.6}
.ira-sent{display:inline-flex;gap:8px;align-items:center;margin-top:12px;font-size:.88rem;font-weight:600;color:var(--a-green-700)}
.ira-cols{display:grid;gap:22px}
@media(min-width:960px){.ira-cols{grid-template-columns:1.1fr .9fr}}
.ira-box{border:1px solid var(--a-line);border-radius:var(--a-r);padding:22px;background:#fff}
.ira-box h3{font-size:1.08rem;font-weight:600;letter-spacing:-.015em;margin:0 0 14px;color:var(--a-ink)}
.ira-bars{display:grid;gap:14px}
.ira-bar{display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:.92rem;color:var(--a-ink)}
.ira-bar b{font-weight:600;color:var(--a-muted);font-size:.84rem}
.ira-bar i{grid-column:1/-1;display:block;height:8px;border-radius:99px;background:var(--a-mist-2);overflow:hidden}
.ira-bar i::before{content:"";display:block;height:100%;width:var(--w);border-radius:99px;background:var(--t);transition:width 1s var(--a-ease)}
.ira-gaps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ira-gaps li{padding:14px 16px;border-radius:14px;background:var(--a-mist)}
.ira-gaps small{display:block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-critical);margin-bottom:4px}
.ira-gaps p{margin:0 0 4px;font-size:.94rem;font-weight:600;color:var(--a-ink);line-height:1.45}
.ira-gaps span{font-size:.86rem;color:var(--a-muted)}
.ira-email{border-radius:var(--a-r);padding:22px;background:var(--a-night);color:#fff}
.ira-email h3{color:#fff;margin:0 0 6px;font-size:1.08rem}
.ira-email p{margin:0 0 12px;color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.55}
.ira-email ul{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ira-email li{display:inline-flex;gap:6px;align-items:center;padding:5px 11px;border-radius:999px;font-size:.8rem;font-weight:600;background:rgba(255,255,255,.1)}
.ira-email li.ok{color:#9BE58F}.ira-email li.warn{color:#FFD27A}.ira-email li.bad{color:#FFA396}
.ira-email li .ira-ico{width:14px;height:14px}
.ira-email a{color:#fff;font-weight:600}
.ira-cta{display:grid;gap:18px;align-items:center;border-radius:var(--a-r);padding:clamp(22px,3vw,32px);background:linear-gradient(135deg,var(--a-mist),#EEF8EC)}
@media(min-width:760px){.ira-cta{grid-template-columns:1fr auto}}
.ira-cta h3{margin:0 0 6px;font-size:1.25rem;font-weight:600;color:var(--a-ink)}
.ira-cta p{margin:0;color:var(--a-muted)}
.ira-cta .ira-tel{display:block;margin-top:10px;text-align:center;font-weight:600;font-size:.9rem;color:var(--a-ink);text-decoration:none}
.ira-again{text-align:center}

/* compact promo band */
.ira-compact .ira-band{position:relative;overflow:hidden;display:grid;gap:clamp(24px,4vw,56px);align-items:center;border-radius:var(--a-r-lg);background:linear-gradient(135deg,#F3F1FB,#EEF8EC);border:1px solid var(--a-line);padding:clamp(28px,5vw,64px)}
@media(min-width:960px){.ira-compact .ira-band{grid-template-columns:1.3fr .7fr}}
.ira-compact h2{font-size:clamp(1.9rem,1.3rem + 2vw,3rem);margin:0}
.ira-compact p{color:var(--a-muted);margin:16px 0 0;line-height:1.6;max-width:56ch}
.ira-band__cta .btn{width:100%}
.ira-band__cta ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;font-size:.88rem;color:var(--a-ink)}
.ira-band__cta li{display:inline-flex;gap:6px;align-items:center}
.ira-band__cta .ira-ico{width:15px;height:15px;color:var(--a-green-700)}
