.guarantor-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 88% 12%, rgba(158, 183, 28, .16), transparent 27rem),
        repeating-radial-gradient(circle at 14% 78%, rgba(2, 81, 112, .035) 0 2px, transparent 3px 28px),
        linear-gradient(145deg, #f9fbfb 0%, #e8f0f2 100%);
}

.guarantor-answer-grid,
.guarantor-factor-grid,
.guarantor-role-grid,
.guarantor-schufa-path,
.guarantor-alternative-grid,
.guarantor-links {
    display: grid;
    gap: 18px;
    margin: 30px 0;
}

.guarantor-answer-grid,
.guarantor-role-grid,
.guarantor-schufa-path {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.guarantor-answer-grid article,
.guarantor-factor-grid article,
.guarantor-role,
.guarantor-schufa-path article,
.guarantor-alternative-grid article {
    min-width: 0;
    padding: 26px;
    border: 1px solid var(--campaign-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0, 59, 82, .07);
}

.guarantor-answer-grid article:nth-child(1) { border-top: 5px solid var(--campaign-green); }
.guarantor-answer-grid article:nth-child(2) { border-top: 5px solid var(--campaign-petrol); }
.guarantor-answer-grid article:nth-child(3) { border-top: 5px solid #a34b42; }
.guarantor-answer-grid strong { display: block; margin-bottom: 9px; color: var(--campaign-ink); font-family: var(--site-heading-font); font-size: 1.12rem; }
.guarantor-answer-grid p,
.guarantor-factor-grid p,
.guarantor-role p,
.guarantor-schufa-path p,
.guarantor-alternative-grid p { margin: 0; }

.guarantor-qualifier,
.guarantor-difference,
.guarantor-legal-note,
.guarantor-privacy {
    padding: 20px 22px;
    border-left: 4px solid var(--campaign-green);
    border-radius: 0 14px 14px 0;
    background: var(--campaign-green-pale);
}

.guarantor-factor-grid,
.guarantor-alternative-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.guarantor-factor-grid article {
    position: relative;
    padding-left: 70px;
}

.guarantor-factor-grid span,
.guarantor-schufa-path span {
    display: grid;
    place-items: center;
    color: #fff;
    background: var(--campaign-petrol);
    font-weight: 800;
}

.guarantor-factor-grid span {
    position: absolute;
    top: 27px;
    left: 23px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    font-size: .72rem;
}

.guarantor-factor-grid h3,
.guarantor-role h3,
.guarantor-schufa-path h3,
.guarantor-alternative-grid h3 {
    margin: 0 0 8px;
    font-size: 1.08rem;
}

.guarantor-role {
    border-top: 5px solid var(--campaign-petrol);
}

.guarantor-role--solo { border-top-color: var(--campaign-green); background: #fbfdf3; }
.guarantor-role--risk { border-top-color: #a34b42; background: #fff9f8; }
.guarantor-role > span {
    display: inline-flex;
    margin-bottom: 13px;
    padding: 6px 10px;
    border-radius: 999px;
    color: var(--campaign-petrol);
    background: var(--campaign-paper);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.guarantor-role strong { display: block; margin-top: 16px; color: var(--campaign-petrol); }
.guarantor-difference { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; }
.guarantor-difference p { margin: 0; }

.guarantor-check {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .88fr);
    gap: 24px;
    margin: 30px 0 16px;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid var(--campaign-line);
    border-radius: 22px;
    background: linear-gradient(145deg, #fff, var(--campaign-paper));
    box-shadow: var(--campaign-shadow);
}

.guarantor-check__fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(160px, .65fr);
    gap: 14px 18px;
    align-items: center;
}

.guarantor-check__fields label { color: var(--campaign-ink); font-weight: 700; }
.guarantor-check__fields > div { position: relative; }
.guarantor-check__fields input {
    width: 100%;
    min-height: 50px;
    padding: 0 42px 0 14px;
    border: 1px solid #ccd9de;
    border-radius: 9px;
    color: var(--campaign-ink);
    background: #fbfcfc;
}
.guarantor-check__fields input:focus { border-color: var(--campaign-green); outline: 3px solid rgba(102, 120, 0, .14); }
.guarantor-check__fields > div span { position: absolute; top: 50%; right: 15px; transform: translateY(-50%); color: var(--campaign-muted); }

.guarantor-check__result {
    padding: 28px;
    border-radius: 18px;
    color: #fff;
    background: radial-gradient(circle at 100% 0%, rgba(198, 211, 111, .2), transparent 14rem), var(--campaign-petrol-dark);
}
.guarantor-check__result p,
.guarantor-check__result h3,
.guarantor-check__result strong { color: #fff; }
.guarantor-check__result > p:first-child { margin: 0 0 7px; color: rgba(255,255,255,.7); font-size: .75rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.guarantor-check__result > strong { display: block; font: 700 clamp(2rem, 5vw, 3.15rem)/1 var(--site-heading-font); }
.guarantor-check__result > span { display: block; margin-top: 8px; color: rgba(255,255,255,.75); }
.guarantor-check__result h3 { margin: 0 0 8px; font-size: 1.16rem; }
.guarantor-check__result > p:last-child { margin: 0; }
.guarantor-check__meter { height: 11px; margin: 22px 0; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.14); }
.guarantor-check__meter i { display: block; width: 0; height: 100%; border-radius: inherit; background: #c6d36f; transition: width 180ms ease; }
.guarantor-check__result[data-status="warning"] .guarantor-check__meter i { background: #ffd17b; }
.guarantor-check__result[data-status="danger"] .guarantor-check__meter i { background: #ff9d8a; }
.guarantor-privacy { margin-top: 0; font-size: .9rem; }

.guarantor-schufa-path article { position: relative; padding-top: 72px; }
.guarantor-schufa-path span { position: absolute; top: 22px; left: 26px; width: 38px; height: 38px; border-radius: 12px; }

.guarantor-risk-panel {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 30px;
    margin: 30px 0;
    padding: clamp(26px, 4vw, 40px);
    border-radius: 20px;
    color: #fff;
    background: radial-gradient(circle at 100% 0%, rgba(198,211,111,.15), transparent 18rem), var(--campaign-petrol-dark);
}
.guarantor-risk-panel h3,
.guarantor-risk-panel p,
.guarantor-risk-panel li { color: #fff; }
.guarantor-risk-panel ul { display: grid; gap: 11px; margin: 0; padding-left: 21px; }
.guarantor-legal-note { border-left-color: #a34b42; background: #fff0ee; }

.guarantor-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.guarantor-links a {
    display: flex;
    min-height: 125px;
    flex-direction: column;
    justify-content: space-between;
    padding: 23px;
    border: 1px solid var(--campaign-line);
    border-radius: 17px;
    color: var(--campaign-ink);
    background: var(--campaign-paper);
    text-decoration: none;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}
.guarantor-links a:hover,
.guarantor-links a:focus-visible { transform: translateY(-2px); border-color: rgba(102,120,0,.45); box-shadow: 0 14px 30px rgba(0,59,82,.1); }
.guarantor-links span { color: var(--campaign-muted); font-size: .85rem; }
.guarantor-links strong { color: var(--campaign-petrol); }

@media (max-width: 991.98px) {
    .guarantor-factor-grid,
    .guarantor-alternative-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .guarantor-answer-grid,
    .guarantor-role-grid,
    .guarantor-schufa-path,
    .guarantor-check,
    .guarantor-risk-panel { grid-template-columns: 1fr; }
}

@media (max-width: 767.98px) {
    .guarantor-factor-grid,
    .guarantor-alternative-grid,
    .guarantor-links,
    .guarantor-check__fields { grid-template-columns: 1fr; }
    .guarantor-check { padding: 20px 16px; border-radius: 16px; }
    .guarantor-check__fields label { margin-bottom: -8px; }
    .guarantor-check__result { padding: 23px 19px; }
    .guarantor-difference { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .guarantor-check__meter i,
    .guarantor-links a { transition: none; }
}
