.aiv{--ink:#202024;--green:#f9225b;--lime:#f9225b;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fafafa;max-width:1180px;margin:24px auto;border:1px solid #e3e3e6;border-radius:24px;overflow:hidden;line-height:1.6;font-size:16px;text-align:left}.aiv *{box-sizing:border-box}.aiv-header{display:flex;align-items:center;gap:12px;padding:24px 5%;border-bottom:1px solid #e3e3e6}.aiv-logo{background:var(--ink);color:white;font-size:26px;font-weight:800;letter-spacing:-3px;border-radius:10px;padding:0 12px 2px 9px}.aiv-logo span{color:var(--lime)}.aiv-tag{margin-left:auto;font-size:12px;letter-spacing:1.5px}.aiv-hero{padding:70px 8% 55px;background:linear-gradient(120deg,#fafafa 60%,#fceaf0)}.aiv-eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;color:var(--green)}.aiv h2{font-size:clamp(36px,5vw,64px);line-height:1.08;letter-spacing:-2px;font-weight:650;margin:24px 0;color:var(--ink)}.aiv h2 em{font-style:normal;color:var(--green)}.aiv-hero>p{max-width:610px;font-size:18px;color:#5b5b64}.aiv-form{max-width:740px;margin-top:32px}.aiv label{display:block;font-size:14px;font-weight:600}.aiv-inputrow{display:flex;gap:8px;padding:7px;border:1px solid #cfcfd5;background:white;border-radius:12px;margin-top:8px;box-shadow:0 10px 30px #20202410}.aiv input:not([type=checkbox]),.aiv select{font:inherit;background:white;border:1px solid #cfcfd5;padding:12px;border-radius:7px;color:var(--ink);min-width:0;max-width:100%}.aiv-inputrow input{flex:1;border:0!important;width:50%}.aiv button{font:inherit;font-weight:600;padding:16px 24px;border:0;border-radius:8px;background:var(--green);color:white;cursor:pointer}.aiv button:hover{background:#d31247}.aiv button:disabled{opacity:.55;cursor:wait}.aiv button span{margin-left:16px}.aiv :focus-visible{outline:3px solid #202024;outline-offset:3px}.aiv-consent{display:flex!important;align-items:flex-start;gap:9px;font-weight:400!important;margin-top:16px;color:#5b5b64}.aiv-consent input{margin-top:6px;flex-shrink:0}.aiv-local{display:grid;grid-template-columns:1fr 130px;gap:12px;margin-top:18px}.aiv-local input,.aiv-local select{display:block;width:100%;margin-top:5px}.aiv-providers{display:flex;gap:24px;margin-top:26px;font-size:14px;color:#5b5b64}.aiv-status:empty{display:none}.aiv-status{font-weight:600}.aiv-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:40px 5%;border-top:1px solid #e3e3e6;background:white}.aiv-explainer b{font-size:12px;letter-spacing:1.5px;color:var(--green)}.aiv h3{font-size:22px;letter-spacing:-.4px;line-height:1.3;margin:12px 0}.aiv-explainer p,.aiv footer{color:#5b5b64;font-size:14px}.aiv footer{padding:24px 5%;border-top:1px solid #e3e3e6}.aiv-results{padding:40px 5%;background:#fff}.aiv-reporttop{display:flex;align-items:center;justify-content:space-between}.aiv-score{background:var(--lime);border-radius:50%;width:130px;height:130px;display:flex;justify-content:center;align-items:center;gap:3px;flex-shrink:0}.aiv-score strong{font-size:46px}.aiv-score span{font-size:14px}.aiv-meta{font-size:12px;color:#5b5b64;overflow-wrap:anywhere}.aiv-question{border-top:1px solid #e3e3e6;padding-top:24px;margin-top:30px}.aiv h4{font-size:22px;line-height:1.4;margin:12px 0 20px}.aiv-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.aiv-answer{background:#fafafa;border:1px solid #e3e3e6;padding:24px;border-radius:12px;min-width:0}.aiv h5{font-size:16px;margin:0}.aiv-placement{font-size:18px;font-weight:650;color:var(--green)}.aiv a{color:#ac103b;text-decoration:underline;overflow-wrap:anywhere}.aiv li{padding:5px}.aiv pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.aiv summary{cursor:pointer;font-size:14px;font-weight:600}.aiv-error{color:#96352b}.aiv-method{font-size:14px;border-top:1px solid #e3e3e6;margin-top:24px;padding-top:24px}.aiv-review input{display:block;width:100%;margin-top:8px}.aiv [hidden]{display:none!important}@media(max-width:640px){.aiv{margin:0;border-radius:12px}.aiv-tag{display:none}.aiv-hero{padding:40px 6%}.aiv h2{letter-spacing:-1px}.aiv-inputrow{flex-direction:column}.aiv-inputrow input{width:100%}.aiv-inputrow button{width:100%}.aiv-providers{gap:12px;flex-wrap:wrap}.aiv-explainer,.aiv-grid{grid-template-columns:1fr}.aiv-explainer{gap:16px}.aiv-local{grid-template-columns:1fr}.aiv-score{width:95px;height:95px}.aiv-score strong{font-size:32px}}

.aiv-download{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:22px 0}.aiv-download span{font-size:14px;color:#5b5b64}

.aiv-stage{scroll-margin-top:20px;outline:none}.aiv-stage>.aiv-status{padding:24px 5% 0;margin:0;color:var(--green)}.aiv-stage .aiv-results{padding-top:24px}.aiv button.aiv-secondary{background:transparent;color:var(--green);box-shadow:inset 0 0 0 1px #cfcfd5}.aiv button.aiv-secondary:hover{background:#fff0f4}.aiv-review>button{margin:16px 12px 0 0}.aiv-download span{flex-basis:100%}@media(prefers-reduced-motion:reduce){.aiv *{scroll-behavior:auto!important}}

/* Punch Garage primary pink, verified against punchgarage.com. */
.aiv button{font-size:19px;font-weight:700}.aiv-score{background:#f9225b;color:#fff}.aiv-eyebrow,.aiv-explainer b,.aiv-placement,.aiv-stage>.aiv-status{color:#ac103b}.aiv button.aiv-secondary{background:#f9225b;color:#fff;box-shadow:none}.aiv button.aiv-secondary:hover{background:#d31247}.aiv-logo span{color:#f9225b}

/* Headline hierarchy: charcoal headlines, navy subheadlines. */
.aiv{--headline:#303036;--navy:#18324f}.aiv h2,.aiv h2 em,.aiv-reporttop h3,.aiv-review h3{color:var(--headline)}.aiv h3,.aiv h4,.aiv h5,.aiv h6,.aiv-eyebrow,.aiv-explainer b,.aiv-placement,.aiv-stage>.aiv-status{color:var(--navy)}

/* Put the score and its meaning first, before the detailed answer records. */
.aiv-reporttop{justify-content:flex-start;gap:30px;align-items:center;padding:12px 0 6px}.aiv-score{width:156px;height:156px;flex-direction:column;gap:0}.aiv-score strong{font-size:58px;line-height:1.1}.aiv-score span{font-size:12px;font-weight:700;letter-spacing:1px;margin-top:8px}.aiv-result-summary{min-width:0;max-width:740px}.aiv-result-summary h3{font-size:28px;line-height:1.25;margin:8px 0 12px}.aiv-result-identity{font-size:14px;color:#5b5b64;overflow-wrap:anywhere;margin:0 0 12px}.aiv-result-explanation{font-size:16px;margin:0 0 14px;color:#303036}.aiv-result-facts{display:flex;gap:10px 24px;flex-wrap:wrap;color:#18324f;font-size:14px;font-weight:600}.aiv-details-intro{border-top:1px solid #e3e3e6;padding-top:26px;margin-top:26px}.aiv .aiv-details-intro h3{font-size:26px;color:#303036;margin:0 0 8px}.aiv-details-intro p{font-size:16px;color:#18324f;margin:0 0 18px}.aiv-download{margin-top:26px}
@media(max-width:640px){.aiv-reporttop{align-items:flex-start;gap:16px}.aiv-score{width:100px;height:100px}.aiv-score strong{font-size:36px}.aiv-score span{font-size:10px;letter-spacing:.5px;margin-top:4px}.aiv-result-summary h3{font-size:22px}.aiv-result-summary .aiv-eyebrow{font-size:11px;letter-spacing:1px}.aiv-result-explanation{font-size:15px}.aiv-result-facts{gap:8px}.aiv-details-intro h3{font-size:23px}}

.aiv .aiv-result-summary h3{color:var(--headline)}

/* Results palette: deep purple summary, cyan labels, lighter navy headings. */
.aiv{--headline:#365675;--navy:#365675;--cyan:#30b9d0;--result-dark:#000e4f}
.aiv .aiv-eyebrow,.aiv .aiv-explainer b{color:var(--cyan)}
.aiv .aiv-reporttop{background:var(--result-dark);border-radius:16px;padding:30px;gap:30px}
.aiv .aiv-reporttop .aiv-result-summary h3{color:#fff}
.aiv .aiv-reporttop .aiv-result-identity,.aiv .aiv-reporttop .aiv-result-explanation{color:#e0dfee}
.aiv .aiv-reporttop .aiv-result-facts{color:#e0dfee}
.aiv .aiv-reporttop .aiv-eyebrow{color:var(--cyan)}
.aiv .aiv-details-intro h3{color:var(--headline)}
@media(max-width:640px){.aiv .aiv-reporttop{padding:22px 16px;gap:16px}.aiv .aiv-result-summary h3{font-size:21px}}

/* Secondary report action. */
.aiv button.aiv-secondary{background:#fff;color:#f9225b;box-shadow:inset 0 0 0 2px #f9225b}.aiv button.aiv-secondary:hover{background:#fff0f4;color:#d31247;box-shadow:inset 0 0 0 2px #d31247}

.aiv .aiv-contact-cta{margin-top:36px;padding:38px;background:#000e4f;border-radius:16px}.aiv .aiv-contact-cta h3{font-size:32px;line-height:1.2;color:#fff;margin:12px 0 16px}.aiv .aiv-contact-cta p{font-size:18px;color:#e0dfee;max-width:680px;margin:0 0 24px}.aiv .aiv-contact-button{display:inline-block;padding:16px 24px;background:#f9225b;color:#fff;text-decoration:none;font-size:19px;font-weight:700;border-radius:8px}.aiv .aiv-contact-button:hover{background:#d31247}@media(max-width:640px){.aiv .aiv-contact-cta{padding:26px 20px}.aiv .aiv-contact-cta h3{font-size:27px}.aiv .aiv-contact-button{font-size:18px}}

.aiv .aiv-contact-cta{text-align:left}.aiv .aiv-contact-button{background:#f9225b;color:#fff;text-align:left}

/* Provider, placement, rankings, then supporting evidence. */
.aiv .aiv-answer{background:#fff;padding:0;overflow:hidden;border-color:#dde2e9;border-radius:16px}
.aiv .aiv-provider-head{background:#000e4f;padding:20px 24px;display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center}
.aiv .aiv-provider-label{color:#30b9d0;font-size:11px;font-weight:700;letter-spacing:1.4px;grid-column:1/-1}
.aiv .aiv-provider-head h5{font-size:23px;line-height:1.3;color:#fff;margin:0}
.aiv .aiv-provider-description{font-size:12px;color:#e0dfee}
.aiv .aiv-position-panel{display:flex;align-items:center;gap:16px;margin:24px;background:#fff0f4;border-radius:10px;padding:16px}
.aiv .aiv-rank-badge{display:flex;align-items:center;justify-content:center;min-width:64px;height:64px;background:#f9225b;color:#fff;border-radius:10px;font-size:30px;line-height:1;font-weight:750;padding:0 8px;flex-shrink:0}
.aiv .aiv-position-label{font-size:11px;font-weight:700;letter-spacing:1px;color:#9b1640}
.aiv .aiv-position-panel p{font-size:16px;font-weight:600;line-height:1.35;margin:5px 0 0;color:#303036}
.aiv .aiv-position-unavailable{display:block;background:#f5f6f8}
.aiv .aiv-list-heading{font-size:12px;letter-spacing:1px;font-weight:700;color:#365675;margin:0 24px 10px}
.aiv .aiv-ranked-list{list-style:none;padding:0;margin:0 24px 24px;counter-reset:item}
.aiv .aiv-ranked-list li{display:flex;align-items:center;gap:10px;padding:12px 10px;border-bottom:1px solid #e5e8ee;line-height:1.4}
.aiv .aiv-list-number{font-size:13px;font-weight:700;color:#365675;min-width:24px;height:24px;background:#edf1f6;border-radius:50%;text-align:center;line-height:24px}
.aiv .aiv-ranked-list a{font-size:15px;color:#365675;font-weight:500;flex:1;text-decoration:none}
.aiv .aiv-ranked-list a:hover{text-decoration:underline}
.aiv .aiv-ranked-list .aiv-is-yours{background:#fff0f4;border-radius:8px;border-bottom-color:transparent}
.aiv .aiv-ranked-list .aiv-is-yours a{color:#9b1640;font-weight:700}
.aiv .aiv-yours-label{font-size:11px;color:#9b1640;font-weight:600;flex-shrink:0}
.aiv .aiv-answer details{border-top:1px solid #e5e8ee;padding:16px 24px;background:#fafbfc}
.aiv .aiv-answer summary{color:#365675;font-size:14px}
.aiv .aiv-answer>.aiv-meta{margin:0;padding:12px 24px 18px;background:#fafbfc;color:#71717a;font-size:12px}
.aiv .aiv-answer>p:not([class]){padding:20px 24px}
@media(max-width:640px){.aiv .aiv-provider-head{grid-template-columns:1fr}.aiv .aiv-provider-description{font-size:12px}.aiv .aiv-position-panel{margin:18px}.aiv .aiv-ranked-list{margin:0 18px 18px}.aiv .aiv-list-heading{margin-left:18px}.aiv .aiv-yours-label{max-width:44px;font-size:10px}.aiv .aiv-ranked-list a{font-size:14px}}

/* Fully rounded buttons across the scanner. */
.aiv button,.aiv .aiv-contact-button{border-radius:9999px}

.aiv .aiv-score-guide{margin:26px 0;padding:26px;border:1px solid #dde2e9;border-radius:16px;background:#fafbfe}.aiv .aiv-score-guide h3{font-size:24px;margin:0 0 8px;color:#365675}.aiv .aiv-guide-intro{margin:0 0 20px;font-size:15px;color:#5b5b64}.aiv-score-bands{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.aiv-score-band{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid #dde2e9;border-radius:10px;background:#fff}.aiv-band-range{font-size:22px;font-weight:700;color:#365675}.aiv-score-band strong{font-size:14px;line-height:1.35;color:#365675}.aiv .aiv-current-band{background:#000e4f;border:2px solid #30b9d0;padding:15px}.aiv .aiv-current-band strong,.aiv .aiv-current-band .aiv-band-range{color:white}.aiv-band-current{font-size:12px;font-weight:700;color:#30b9d0}.aiv .aiv-score-advice{padding-top:22px}.aiv .aiv-score-advice h4{font-size:19px;margin:0 0 8px}.aiv .aiv-score-advice p{font-size:16px;margin:0 0 12px}.aiv .aiv-guide-note{font-size:13px;color:#5b5b64;margin:16px 0 0}.aiv-provider-gap{border-left:3px solid #f9225b;padding-left:12px}.aiv .aiv-score-advice .aiv-contact-button{margin:4px 0 10px;border-radius:9999px}@media(max-width:640px){.aiv-score-bands{grid-template-columns:1fr 1fr}.aiv .aiv-score-guide{padding:20px}.aiv-score-band{padding:12px}.aiv .aiv-current-band{padding:11px}}

.aiv .aiv-submit-row{margin-top:24px}.aiv .aiv-inputrow input{width:100%}@media(max-width:640px){.aiv .aiv-submit-row button{width:100%}}

.aiv-review-questions{margin:28px 0 16px;padding:24px;background:#f5f8fb;border:1px solid #dfe7ef;border-radius:16px}.aiv-review-questions h3{color:#365675;margin:0 0 10px}.aiv-review-questions p{color:#5b5b64;margin:0 0 16px}.aiv-review-questions ol{list-style:decimal;margin:0;padding-left:28px}.aiv-review-questions li{padding:10px 0 10px 8px;line-height:1.5}.aiv-review-questions li::marker{color:#30b9d0;font-weight:800}

.aiv-lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.aiv-lead-fields input{display:block;width:100%;margin-top:6px}.aiv-lead-intro{color:#365675;font-weight:600}@media(max-width:640px){.aiv-lead-fields{grid-template-columns:1fr}}

.aiv .aiv-scanning-label{position:relative}
.aiv .aiv-scanning-label::after{content:"...";position:absolute;left:100%;bottom:0;margin-left:2px;width:0;overflow:hidden;white-space:nowrap;animation:aiv-scanning-dots 1.4s steps(4,end) infinite}
@keyframes aiv-scanning-dots{to{width:1.2em}}
@media(prefers-reduced-motion:reduce){.aiv .aiv-scanning-label::after{animation:none;width:1.2em}}

/* Keep every scan step full width, even when only loading text is visible. */
.aiv{display:block;box-sizing:border-box;width:100%;min-width:0;flex-shrink:0;align-self:stretch;justify-self:stretch}
.aiv .aiv-stage,.aiv .aiv-results,.aiv .aiv-review{box-sizing:border-box;width:100%;min-width:0}
.aiv .aiv-stage{display:block}
.aiv .aiv-review-questions li,.aiv .aiv-question h4{overflow-wrap:anywhere}
@media(max-width:640px){.aiv input:not([type=checkbox]),.aiv select{font-size:16px}.aiv .aiv-review>button{width:100%;margin-right:0}.aiv .aiv-download button{width:100%}}
@media(max-width:480px){.aiv .aiv-reporttop{flex-direction:column;align-items:flex-start}.aiv .aiv-result-summary{width:100%}.aiv .aiv-score-bands{grid-template-columns:1fr}.aiv .aiv-review-questions{padding:18px}}
