@font-face {
    font-family: 'Syne FREIRAUM';
    src: url('fonts/syne-extra-bold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IBM Plex Mono FREIRAUM';
    src: url('fonts/ibm-plex-mono-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IBM Plex Mono FREIRAUM';
    src: url('fonts/ibm-plex-mono-semibold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

.campaign-mode {
    --scc-ink: #060909;
    --scc-panel: #0D1415;
    --scc-panel-2: #111C1D;
    --scc-petrol: #0D5C63;
    --scc-cyan: #19C6CF;
    --scc-paper: #F2F5F4;
    --scc-line-dark: rgba(255,255,255,.16);
    --scc-muted-dark: #A9B8B7;
    --scc-display: 'Arial Black', Arial, Helvetica, sans-serif;
    /* `hidden` erzeugt einen eigenen Scroll-Container und kann dadurch
       position: sticky bei der A/B-Leiste blockieren. `clip` verhindert
       weiterhin horizontalen Überlauf, ohne das vertikale Scrollen zu kapern. */
    overflow-x: clip;
    background: var(--scc-ink);
}

.campaign-mode .scc-page {
    overflow-x: clip;
    color: var(--white);
    background: var(--scc-ink);
    --freiraum-wordmark-color: var(--white);
}

.campaign-mode .scc-page h1,
.campaign-mode .scc-page h2,
.campaign-mode .scc-page h3 {
    font-family: var(--scc-display);
    font-weight: 900;
    letter-spacing: -.045em;
}

.campaign-mode .scc-page h1 em,
.campaign-mode .scc-page h2 em {
    color: var(--scc-cyan);
    font-style: normal;
}

.scc-site-header .header-inner { min-height: 96px; gap: 1rem; }
.scc-site-header .brand { width: 146px; }
.scc-site-header .campaign-nav { color: var(--black); background: var(--scc-cyan); border-color: var(--scc-cyan); }
.scc-site-header .campaign-nav:hover,
.scc-site-header .campaign-nav:focus-visible { color: var(--white); background: var(--scc-petrol); border-color: var(--scc-petrol); }
.scc-back-link { margin-left: auto; color: var(--scc-petrol); font-size: .86rem; font-weight: 800; text-decoration: none; }
.scc-back-link:hover,
.scc-back-link:focus-visible { color: var(--black); text-decoration: underline; }
.scc-header-share { position: relative; display: flex; gap: .32rem; align-items: center; padding: .34rem .38rem .34rem .65rem; color: var(--white); background: #081011; border-left: 4px solid var(--scc-cyan); }
.scc-header-share > span:first-child { margin-right: .22rem; color: var(--scc-cyan); font-family: Arial, Helvetica, sans-serif; font-size: .64rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.scc-header-share a,
.scc-header-share button { display: grid; width: 36px; height: 36px; padding: 0; place-items: center; color: var(--white); background: #172527; border: 1px solid rgba(255,255,255,.2); cursor: pointer; }
.scc-header-share .is-whatsapp { background: #25D366; border-color: #25D366; }
.scc-header-share .is-telegram { background: #229ED9; border-color: #229ED9; }
.scc-header-share a:hover,
.scc-header-share a:focus-visible,
.scc-header-share button:hover,
.scc-header-share button:focus-visible { color: var(--black); background: var(--scc-cyan); border-color: var(--scc-cyan); outline: 2px solid var(--black); outline-offset: 2px; }
.scc-header-share svg { width: 17px; height: 17px; fill: currentColor; }
.scc-header-share-status:not(:empty) { position: absolute; top: calc(100% + .5rem); right: 0; width: max-content; max-width: 280px; padding: .45rem .6rem; color: var(--black); background: var(--scc-cyan); font-size: .68rem; font-weight: 800; box-shadow: 0 8px 24px rgba(0,0,0,.22); }

.scc-kicker {
    margin: 0 0 1rem;
    color: var(--scc-cyan);
    font-family: 'IBM Plex Mono FREIRAUM', monospace;
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.scc-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: .82rem 1.25rem;
    border: 1px solid transparent;
    border-radius: 0;
    font-family: 'IBM Plex Mono FREIRAUM', monospace;
    font-size: .76rem;
    font-weight: 600;
    letter-spacing: .065em;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    transition: color 170ms ease, background 170ms ease, border-color 170ms ease, transform 170ms ease;
}

.scc-button:hover,
.scc-button:focus-visible { transform: translateY(-3px); }
.scc-button:focus-visible { outline: 3px solid var(--white); outline-offset: 3px; }
.scc-button:disabled { opacity: .42; cursor: not-allowed; transform: none; }
.scc-button-primary { color: var(--black); background: var(--scc-cyan); border-color: var(--scc-cyan); }
.scc-button-primary:hover,
.scc-button-primary:focus-visible { background: #66E1E6; border-color: #66E1E6; }
.scc-button-secondary { color: var(--white); background: var(--scc-petrol); border-color: var(--scc-petrol); }
.scc-button-secondary:hover,
.scc-button-secondary:focus-visible { color: var(--black); background: var(--scc-cyan); border-color: var(--scc-cyan); }
.scc-button-outline { color: var(--white); background: transparent; border-color: rgba(255,255,255,.5); }
.scc-button-outline:hover,
.scc-button-outline:focus-visible { color: var(--scc-cyan); border-color: var(--scc-cyan); }
.scc-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }

.scc-hero {
    position: relative;
    min-height: calc(100vh - 96px);
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 30%, rgba(25,198,207,.18), transparent 34%),
        linear-gradient(rgba(25,198,207,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(25,198,207,.055) 1px, transparent 1px),
        var(--scc-ink);
    background-size: auto, 42px 42px, 42px 42px, auto;
}

.scc-hero::after {
    content: '';
    position: absolute;
    right: -6vw;
    bottom: -18vw;
    width: 46vw;
    height: 46vw;
    border: 1px solid rgba(25,198,207,.18);
    transform: rotate(18deg);
}

.scc-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: clamp(2.5rem, 5vw, 5rem);
    align-items: center;
    min-height: calc(100vh - 160px);
    padding: clamp(3.2rem, 7vw, 6.5rem) 0;
}

.scc-unscanned-logo { display: block; width: min(430px, 86%); height: auto; margin: -1.5rem 0 .35rem; }
.scc-hero h1 { max-width: 820px; margin: 0; font-size: clamp(3.7rem, 5.7vw, 5.8rem); line-height: .88; text-transform: uppercase; }
.scc-hero-lead { max-width: 750px; margin: 1.8rem 0 0; color: #D0DAD9; font-size: clamp(1.08rem, 1.65vw, 1.34rem); line-height: 1.55; }
.scc-privacy-promise { margin: 1.25rem 0 0; color: var(--scc-muted-dark); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .75rem; }
.scc-privacy-promise span { margin-right: .45rem; color: var(--scc-cyan); }

.scc-hero-symbol {
    position: relative;
    justify-self: end;
    width: min(590px, 100%);
    padding: clamp(1.2rem, 2.8vw, 2.2rem);
    background: #000;
    border-top: 5px solid var(--scc-cyan);
    border-right: 5px solid var(--scc-cyan);
    box-shadow: 28px 28px 0 rgba(25,198,207,.08);
}

.scc-hero-symbol::before,
.scc-hero-symbol::after {
    content: '';
    position: absolute;
    left: -18px;
    bottom: -18px;
    background: var(--scc-cyan);
}
.scc-hero-symbol::before { width: 90px; height: 2px; }
.scc-hero-symbol::after { width: 2px; height: 90px; }
.scc-hero-symbol img { width: 100%; }
.scc-signal-label,
.scc-signal-code { position: absolute; z-index: 1; font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .66rem; letter-spacing: .13em; }
.scc-signal-label { top: 1.1rem; left: 1.1rem; color: var(--scc-cyan); }
.scc-signal-code { right: 1.1rem; bottom: 1.1rem; color: rgba(255,255,255,.6); text-align: right; }
.scc-scroll-note { position: relative; z-index: 1; margin-top: -2rem; padding-bottom: 1.4rem; color: rgba(255,255,255,.55); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; }

.scc-status { padding: clamp(5rem, 9vw, 9rem) 0; background: var(--scc-petrol); }
.scc-status-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.scc-status-grid > * { min-width: 0; }
.scc-section-heading { position: sticky; top: 140px; }
.scc-section-heading h2,
.scc-status h2 { margin: 0; font-size: clamp(3rem, 5.7vw, 5.8rem); line-height: .92; text-transform: uppercase; }
.scc-status-copy { padding-top: 1.4rem; border-top: 1px solid rgba(255,255,255,.35); }
.scc-status-copy > p { color: rgba(255,255,255,.82); }
.scc-status-copy .scc-large-copy { margin-top: 0; color: var(--white); font-size: clamp(1.25rem, 2vw, 1.55rem); font-weight: 700; }
.scc-envelope-analogy { margin-top: 2.7rem; padding: clamp(1.5rem, 3vw, 2.6rem); color: var(--black); background: var(--scc-cyan); box-shadow: 18px 18px 0 rgba(0,0,0,.14); }
.scc-envelope-analogy span { font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .68rem; font-weight: 600; letter-spacing: .12em; }
.scc-envelope-analogy strong { display: block; margin-top: 1.2rem; font-family: var(--scc-display); font-size: clamp(1.6rem, 2.6vw, 2.4rem); line-height: 1.08; }
.scc-envelope-analogy p { margin-bottom: 0; }

.scc-stakes { padding: clamp(5rem, 9vw, 9rem) 0; color: var(--black); background: var(--scc-paper); --freiraum-wordmark-color: var(--scc-petrol); }
.scc-stakes-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(3rem, 9vw, 9rem); align-items: center; }
.scc-stakes h2 { margin: 0 0 1.7rem; font-size: clamp(3rem, 5.8vw, 5.8rem); line-height: .92; text-transform: uppercase; }
.scc-stakes p { color: #445050; }
.scc-stakes .scc-fact-line { margin-top: 2rem; padding: 1.2rem 0; color: var(--black); border-top: 4px solid var(--scc-cyan); border-bottom: 1px solid #BCC8C7; font-size: 1.15rem; }
.scc-stakes .scc-fact-line strong { color: var(--scc-petrol); }
.scc-stakes-art { position: relative; display: grid; min-height: 490px; place-items: center; overflow: hidden; background: var(--scc-ink); }
.scc-eye { color: var(--white); font-family: var(--scc-display); font-size: clamp(3.4rem, 8vw, 7rem); letter-spacing: -.055em; }
.scc-slash { position: absolute; width: 72%; height: 18px; background: var(--scc-cyan); transform: rotate(-42deg); box-shadow: 0 0 35px rgba(25,198,207,.42); }
.scc-bracket { position: absolute; width: 110px; height: 110px; border-color: var(--scc-cyan); }
.scc-bracket-top { top: 28px; right: 28px; border-top: 4px solid; border-right: 4px solid; }
.scc-bracket-bottom { bottom: 28px; left: 28px; border-bottom: 4px solid; border-left: 4px solid; }

.scc-demands { position: relative; padding: clamp(5rem, 9vw, 9rem) 0; overflow: hidden; background: #071112; }
.scc-demands::before { content: '04'; position: absolute; right: -2vw; top: -8vw; color: rgba(25,198,207,.045); font-family: var(--scc-display); font-size: 36vw; line-height: 1; }
.scc-demands .shell { position: relative; }
.scc-demands h2 { max-width: 980px; margin: 0; font-size: clamp(3rem, 5.8vw, 5.8rem); line-height: .92; text-transform: uppercase; }
.scc-demand-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin-top: clamp(3rem, 6vw, 5rem); background: var(--scc-line-dark); border: 1px solid var(--scc-line-dark); }
.scc-demand-grid article { min-height: 320px; padding: clamp(1.6rem, 3.7vw, 3.4rem); background: rgba(13,20,21,.96); }
.scc-demand-grid span { color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .72rem; }
.scc-demand-grid h3 { margin: 2.3rem 0 1rem; font-size: clamp(1.7rem, 3vw, 2.6rem); line-height: 1; }
.scc-demand-grid p { margin: 0; color: var(--scc-muted-dark); }

.scc-choice { padding: clamp(5rem, 9vw, 9rem) 0; color: var(--black); background: var(--white); --freiraum-wordmark-color: var(--scc-petrol); }
.scc-choice-heading { display: grid; grid-template-columns: 1fr .72fr; gap: clamp(2rem, 5vw, 5rem); align-items: end; }
.scc-choice-heading > * { min-width: 0; }
.scc-choice-heading h2 { margin: 0; font-size: clamp(3rem, 4.6vw, 4.8rem); line-height: .92; text-transform: uppercase; }
.scc-choice-heading > p { color: #4F5A5B; }
.scc-choice-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.2rem; margin-top: 3.5rem; }
.scc-choice-card { position: relative; min-height: 470px; padding: clamp(1.7rem, 3.8vw, 3.4rem); overflow: hidden; border: 1px solid #AFC0BF; }
.scc-choice-card::after { content: ''; position: absolute; right: -40px; bottom: -40px; width: 160px; height: 160px; border: 2px solid currentColor; opacity: .12; transform: rotate(20deg); }
.scc-choice-personal { color: var(--white); background: var(--scc-petrol); border-color: var(--scc-petrol); }
.scc-choice-anonymous { background: #E8F7F7; border-top: 7px solid var(--scc-cyan); }
.scc-choice-number { position: absolute; top: 1.4rem; right: 1.5rem; font-family: var(--scc-display); font-size: 3.5rem; line-height: 1; opacity: .25; }
.scc-choice-card h3 { margin: 1.4rem 0; font-size: clamp(2rem, 3.4vw, 3.1rem); line-height: 1; }
.scc-choice-card p:not(.scc-kicker) { max-width: 620px; }
.scc-choice-personal p:not(.scc-kicker) { color: rgba(255,255,255,.78); }
.scc-choice-card > strong { display: block; margin-top: 3rem; font-family: var(--scc-display); font-size: clamp(3.2rem, 7vw, 6.6rem); letter-spacing: -.06em; line-height: .82; }
.scc-choice-personal > strong { color: var(--scc-cyan); }
.scc-choice-card > small { display: block; margin-top: .8rem; font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.scc-choice-cta { display: flex; gap: 2rem; align-items: center; justify-content: space-between; margin-top: 1.2rem; padding: 1.6rem 1.8rem; color: var(--white); background: var(--scc-ink); }
.scc-choice-cta p { max-width: 760px; margin: 0; color: #C7D3D2; }
.scc-choice-cta strong { color: var(--white); }

.scc-faq { padding: clamp(5rem, 9vw, 9rem) 0; background: var(--scc-panel); }
.scc-faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.scc-faq-grid > * { min-width: 0; }
.scc-faq h2 { margin: 0; font-size: clamp(3rem, 5.2vw, 5.2rem); line-height: .92; text-transform: uppercase; }
.scc-accordion { border-top: 1px solid var(--scc-line-dark); }
.scc-accordion details { border-bottom: 1px solid var(--scc-line-dark); }
.scc-accordion summary { position: relative; padding: 1.7rem 3.5rem 1.7rem 0; font-weight: 800; cursor: pointer; list-style: none; }
.scc-accordion summary::-webkit-details-marker { display: none; }
.scc-accordion summary::after { content: '+'; position: absolute; right: .5rem; top: 1.2rem; color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: 1.7rem; font-weight: 400; }
.scc-accordion details[open] summary::after { content: '−'; }
.scc-accordion details p { max-width: 820px; margin: 0 0 1.7rem; color: var(--scc-muted-dark); }

.scc-sources { padding: clamp(4rem, 7vw, 7rem) 0; color: var(--black); background: var(--scc-paper); --freiraum-wordmark-color: var(--scc-petrol); }
.scc-sources h2 { margin: 0 0 2.5rem; font-size: clamp(2.6rem, 4.5vw, 4.4rem); line-height: .95; text-transform: uppercase; }
.scc-source-list { border-top: 1px solid #B7C5C4; }
.scc-source-list a { display: grid; grid-template-columns: 60px 1fr 1fr; gap: 1.4rem; align-items: center; padding: 1.4rem 0; border-bottom: 1px solid #B7C5C4; text-decoration: none; }
.scc-source-list a:hover strong,
.scc-source-list a:focus-visible strong { color: var(--scc-petrol); }
.scc-source-list span { color: var(--scc-petrol); font-family: 'IBM Plex Mono FREIRAUM', monospace; }
.scc-source-list small { color: #596566; }
.scc-source-note { max-width: 900px; margin: 2rem 0 0; color: #687374; font-size: .9rem; }

.scc-final-cta { padding: clamp(5rem, 9vw, 9rem) 0; text-align: center; background: var(--scc-ink); }
.scc-final-cta img { width: min(300px, 68%); margin: 0 auto 2rem; }
.scc-final-cta h2 { margin: 0 0 2.5rem; font-size: clamp(3.4rem, 7vw, 7rem); line-height: .88; text-transform: uppercase; }
.scc-footer { color: var(--white); background: #000; border-top: 1px solid rgba(255,255,255,.15); }

/* Separate Aktionsseite */
.scc-action-hero { padding: clamp(3rem, 6vw, 6rem) 0; background:
    linear-gradient(90deg, rgba(25,198,207,.07) 1px, transparent 1px),
    linear-gradient(rgba(25,198,207,.07) 1px, transparent 1px),
    var(--scc-ink);
    background-size: 38px 38px;
}
.scc-action-hero .shell { width: min(1280px, calc(100% - 48px)); }
.scc-action-hero-grid { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(420px, .94fr); gap: clamp(2rem, 4vw, 4.25rem); align-items: center; }
.scc-action-hero-grid > * { min-width: 0; }
.scc-action-hero h1 { max-width: 780px; margin: 0; font-size: clamp(3.35rem, 5.35vw, 5.45rem); line-height: .9; text-wrap: balance; text-transform: uppercase; }
.scc-action-hero h1 span,
.scc-action-hero h1 em { display: block; }
.scc-action-hero-grid > div:first-child > p:last-child { max-width: 730px; color: #CED8D7; font-size: 1.2rem; }
.scc-data-promise { position: relative; padding: clamp(1.7rem, 3.5vw, 3rem); background: var(--scc-panel-2); border-top: 5px solid var(--scc-cyan); border-right: 5px solid var(--scc-cyan); }
.scc-data-promise span { color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .66rem; letter-spacing: .12em; }
.scc-data-promise strong { display: block; margin: 1.3rem 0; overflow-wrap: break-word; font-family: var(--scc-display); font-size: clamp(1.2rem, 1.55vw, 1.55rem); line-height: 1.16; letter-spacing: -.025em; }
.scc-data-promise p { margin-bottom: 0; color: var(--scc-muted-dark); }
.scc-hero-light-panel { position: relative; padding: clamp(1.25rem, 2vw, 1.8rem); color: var(--white); background: rgba(7,17,18,.94); border: 1px solid rgba(25,198,207,.48); border-top: 5px solid var(--scc-cyan); box-shadow: 18px 18px 0 rgba(25,198,207,.06); }
.scc-hero-light-head { display: grid; grid-template-columns: minmax(145px, .62fr) minmax(0, 1fr); gap: 1.25rem; align-items: end; }
.scc-hero-light-head span { display: block; color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .62rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.scc-hero-light-head strong { display: block; margin-top: .55rem; color: var(--scc-cyan); font-family: var(--scc-display); font-size: clamp(3rem, 4.2vw, 4.8rem); letter-spacing: -.06em; line-height: .82; }
.scc-hero-light-head small { display: block; margin-top: .45rem; color: #D8E5E4; font-size: .66rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.scc-hero-light-head p { margin: 0; color: #BAC8C7; font-size: .8rem; line-height: 1.48; }
.scc-support-field.scc-support-field-hero { width: min(100%, 440px); margin-top: 1.15rem; }
.scc-hero-light-impact { display: flex; gap: .7rem 1rem; align-items: center; justify-content: space-between; margin-top: 1rem; padding: .85rem 1rem; color: var(--black); background: var(--scc-cyan); }
.scc-hero-light-impact strong { font-family: var(--scc-display); font-size: .82rem; letter-spacing: -.01em; text-transform: uppercase; }
.scc-hero-light-impact a { color: var(--black); font-size: .72rem; font-weight: 900; text-decoration: underline; text-underline-offset: 3px; }
.scc-hero-privacy { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; margin-top: .9rem; }
.scc-hero-privacy > span { padding: .45rem .5rem; color: #D9E4E3; background: #102426; border-left: 3px solid var(--scc-cyan); font-size: .59rem; font-weight: 900; line-height: 1.25; text-transform: uppercase; }
.scc-hero-privacy p { grid-column: 1 / -1; margin: .15rem 0 0; color: #8FA2A1; font-size: .68rem; line-height: 1.42; }

.scc-route-choice { padding: clamp(3rem, 5vw, 5rem) 0; color: var(--white); background: #081011; border-top: 1px solid rgba(25,198,207,.24); }
.scc-route-choice h2 { max-width: 900px; margin: 0; font-size: clamp(2.5rem, 4.8vw, 4.6rem); line-height: .92; text-transform: uppercase; }
.scc-route-choice-intro { max-width: 800px; margin: 1.2rem 0 0; color: #BCCAC9; font-size: 1.05rem; }
.scc-route-choice-grid { display: grid; grid-template-columns: 1.22fr .78fr; gap: 1rem; margin-top: 2.2rem; }
.scc-route-choice-card { display: grid; min-height: 138px; grid-template-columns: auto 1fr auto; gap: 1.25rem; align-items: center; padding: 1.5rem; color: var(--white); background: #102022; border: 1px solid rgba(255,255,255,.17); text-decoration: none; transition: transform 160ms ease, border-color 160ms ease, background 160ms ease; }
.scc-route-choice-card:hover,
.scc-route-choice-card:focus-visible { transform: translateY(-4px); background: #173438; border-color: var(--scc-cyan); }
.scc-route-choice-card > span { display: grid; width: 68px; height: 68px; place-items: center; color: var(--black); background: var(--scc-cyan); font-family: var(--scc-display); font-size: 2.4rem; }
.scc-route-choice-card strong { display: block; font-family: var(--scc-display); font-size: clamp(1.25rem, 2vw, 1.75rem); letter-spacing: -.03em; text-transform: uppercase; }
.scc-route-choice-card small { display: block; margin-top: .45rem; color: #B8C8C7; font-size: .78rem; }
.scc-route-choice-card b { color: var(--scc-cyan); font-size: 2rem; }
.scc-route-choice-anonymous { background: #0D1A1C; }
.scc-route-choice-anonymous > span { color: #D4E1E0; background: #243739; }
.scc-route-choice-personal { background: linear-gradient(135deg, #12383C, #102022); border: 2px solid rgba(25,198,207,.72); border-left: 7px solid var(--scc-cyan); }

.scc-live-counts { padding: 1rem 0; color: var(--white); background: #071112; border-top: 1px solid rgba(25,198,207,.24); border-bottom: 1px solid rgba(25,198,207,.24); }
.scc-live-count-grid { display: grid; grid-template-columns: .72fr .72fr 1.1fr; gap: .8rem; }
.scc-live-count-card { position: relative; min-height: 190px; padding: 1.4rem 1.55rem 1.5rem; overflow: hidden; background: #0D1B1C; border: 1px solid rgba(255,255,255,.14); }
.scc-live-count-card::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--scc-cyan); }
.scc-live-count-anonymous::before { background: #7EDCE1; }
.scc-live-count-grid .scc-count-route { display: block; margin: 0; color: #94E9EC; font-family: Arial, Helvetica, sans-serif; font-size: .68rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.scc-live-count-card > strong { display: block; margin-top: 1.2rem; color: var(--scc-cyan); font-family: var(--scc-display); font-size: clamp(3.2rem, 5.2vw, 5rem); letter-spacing: -.06em; line-height: .88; }
.scc-live-count-grid .scc-count-label { display: block; max-width: 260px; margin-top: .75rem; color: #D6E1E0; font-size: .77rem; font-weight: 800; line-height: 1.35; text-transform: uppercase; }
.scc-count-method { display: grid; min-height: 190px; grid-template-columns: auto 1fr; gap: 1rem; align-items: start; padding: 1.55rem; color: var(--white); background: linear-gradient(135deg, #113438, #0B1C1E); border: 1px solid rgba(25,198,207,.48); border-top: 5px solid var(--scc-cyan); }
.scc-count-method-mark { display: grid; width: 42px; height: 42px; place-items: center; margin: 0; color: var(--black); background: var(--scc-cyan); border-radius: 50%; font-size: 1.2rem; font-weight: 900; }
.scc-count-method strong { display: block; font-family: var(--scc-display); font-size: 1.05rem; letter-spacing: -.025em; text-transform: uppercase; }
.scc-count-method p { margin: .55rem 0 0; color: #C7D4D3; font-size: .88rem; line-height: 1.48; }

.scc-path-nav { position: sticky; top: var(--scc-path-nav-top, 96px); z-index: 60; background: #080D0E; border-bottom: 1px solid var(--scc-line-dark); }
.scc-path-nav-anchor,
.scc-path-nav-spacer { height: 0; }
.scc-path-nav.is-fixed { position: fixed; top: var(--scc-path-nav-top, 96px); right: 0; left: 0; width: 100%; box-shadow: 0 12px 28px rgba(0,0,0,.28); }
.scc-path-nav .shell { display: grid; grid-template-columns: repeat(2, 1fr); }
.scc-path-nav a { display: grid; min-height: 76px; grid-template-columns: auto 1fr; gap: .05rem 1rem; align-content: center; padding: 1rem 1.2rem; color: var(--white); text-decoration: none; border-right: 1px solid var(--scc-line-dark); }
.scc-path-nav a:hover,
.scc-path-nav a:focus-visible { background: #133C40; }
.scc-path-nav a > span { grid-row: 1 / 3; align-self: center; color: var(--scc-cyan); font-family: var(--scc-display); font-size: 2rem; }
.scc-path-nav strong { font-size: .9rem; }
.scc-path-nav small { color: var(--scc-muted-dark); }

.scc-mail-action,
.scc-anonymous-action { padding: clamp(5rem, 9vw, 9rem) 0; }
.scc-mail-action { color: var(--black); background: var(--white); --freiraum-wordmark-color: var(--scc-petrol); }
.scc-anonymous-action { background: #092E31; }
.scc-action-section-heading { display: grid; grid-template-columns: 110px 1fr; gap: 2rem; align-items: start; }
.scc-action-section-heading > * { min-width: 0; }
.scc-route-letter { display: grid; width: 95px; height: 95px; place-items: center; color: var(--black); background: var(--scc-cyan); font-family: var(--scc-display); font-size: 3.3rem; line-height: 1; }
.scc-action-section-heading h2 { max-width: 1050px; margin: 0; font-size: clamp(2.8rem, 4.55vw, 4.5rem); line-height: .92; hyphens: none; overflow-wrap: normal; word-break: normal; text-transform: uppercase; }
.scc-action-section-heading p:last-child { max-width: 780px; color: #4E595A; }
.scc-anonymous-action .scc-action-section-heading p:last-child { color: #C7D3D2; }
.scc-count-reminder { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: start; max-width: 980px; margin: 2rem 0 0 127px; padding: 1.2rem 1.35rem; color: var(--white); background: #102729; border-left: 6px solid var(--scc-cyan); box-shadow: 10px 10px 0 rgba(13,92,99,.1); }
.scc-count-reminder > span { display: grid; width: 42px; height: 42px; place-items: center; color: var(--black); background: var(--scc-cyan); border-radius: 50%; font-size: 1.15rem; font-weight: 900; }
.scc-count-reminder strong { display: block; font-family: var(--scc-display); font-size: 1.05rem; letter-spacing: -.02em; text-transform: uppercase; }
.scc-count-reminder p { margin: .45rem 0 0; color: #D7E3E2; font-size: .88rem; line-height: 1.5; }

.scc-action-steps { margin-top: 4rem; border-top: 1px solid #BDC8C7; }
.scc-step { display: grid; grid-template-columns: minmax(360px, .66fr) minmax(0, 1.34fr); gap: clamp(2.5rem, 5vw, 5.5rem); padding: clamp(2.5rem, 5vw, 4.5rem) 0; border-bottom: 1px solid #BDC8C7; }
.scc-step > * { min-width: 0; }
.scc-step-head > span { color: var(--scc-petrol); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .68rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.scc-step-head h3 { max-width: 100%; margin: .7rem 0 0; font-size: clamp(1.65rem, 2.25vw, 2.2rem); line-height: 1.02; overflow-wrap: normal; }

.scc-mep-picker { min-width: 0; }
.scc-mep-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .7rem; }
.scc-mep-controls label { grid-column: 1 / -1; font-weight: 800; }
.scc-mep-controls input,
.scc-personal-copy textarea { width: 100%; color: var(--black); background: #F5F7F6; border: 1px solid #9AABAA; border-radius: 0; }
.scc-mep-controls input { min-height: 54px; padding: .8rem 1rem; }
.scc-mep-controls input:focus,
.scc-personal-copy textarea:focus { outline: 3px solid rgba(25,198,207,.35); border-color: var(--scc-petrol); }
.scc-mep-filter-row { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; margin-top: .15rem; }
.scc-mep-filter-row label { display: grid; gap: .4rem; color: #465354; font-size: .72rem; font-weight: 900; text-transform: uppercase; }
.scc-mep-filter-row select { width: 100%; min-height: 48px; padding: .65rem 2.4rem .65rem .8rem; color: var(--black); background: var(--white); border: 1px solid #9AABAA; border-radius: 0; font-weight: 700; }
.scc-mep-filter-row select:focus { outline: 3px solid rgba(25,198,207,.35); border-color: var(--scc-petrol); }
.scc-mep-list-head { display: flex; gap: 1rem; align-items: center; justify-content: space-between; margin-top: 1.25rem; padding-bottom: .65rem; color: #465354; border-bottom: 1px solid #C7D1D0; }
.scc-mep-list-head span { font-size: .82rem; font-weight: 900; }
.scc-mep-list-head small { color: var(--scc-petrol); font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.scc-mep-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; max-height: 340px; padding: .1rem .65rem .1rem 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; scrollbar-color: var(--scc-petrol) #DDE7E6; scrollbar-gutter: stable; }
.scc-mep-results::-webkit-scrollbar { width: 11px; }
.scc-mep-results::-webkit-scrollbar-track { background: #DDE7E6; }
.scc-mep-results::-webkit-scrollbar-thumb { background: var(--scc-petrol); border: 2px solid #DDE7E6; }
.scc-mep-option { display: flex; min-width: 0; min-height: 126px; flex-direction: column; color: var(--black); background: var(--white); border: 1px solid #B6C4C3; text-align: left; }
.scc-mep-select { display: flex; width: 100%; min-height: 124px; flex: 1; flex-direction: column; align-items: flex-start; padding: 1rem; color: inherit; background: transparent; border: 0; text-align: left; cursor: pointer; }
.scc-mep-option:hover,
.scc-mep-option:focus-visible,
.scc-mep-option:focus-within { border-color: var(--scc-petrol); box-shadow: 0 0 0 2px rgba(13,92,99,.2); }
.scc-mep-option:hover { background: #EAF6F5; border-color: var(--scc-petrol); }
.scc-mep-option[aria-selected="true"] { color: var(--white); background: var(--scc-ink); border-color: var(--scc-ink); border-top: 6px solid var(--scc-cyan); }
.scc-mep-select strong { max-width: 100%; font-size: 1rem; overflow-wrap: anywhere; }
.scc-mep-select span { color: #526061; font-size: .82rem; }
.scc-mep-option[aria-selected="true"] .scc-mep-select span { color: #B8C7C6; }
.scc-mep-select small { margin-top: auto; color: var(--scc-petrol); font-family: Arial, Helvetica, sans-serif; font-size: .65rem; font-weight: 900; text-transform: uppercase; }
.scc-mep-option[aria-selected="true"] .scc-mep-select small { color: var(--scc-cyan); }
.scc-mep-inline-actions { display: grid; gap: .6rem; padding: .9rem 1rem 1rem; border-top: 1px solid rgba(255,255,255,.16); }
.scc-mep-inline-actions[hidden] { display: none; }
.scc-mep-inline-actions code { color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .72rem; overflow-wrap: anywhere; }
.scc-mep-inline-actions button,
.scc-mep-inline-actions a { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; padding: .55rem .7rem; color: var(--white); background: #14383B; border: 1px solid rgba(25,198,207,.4); font-size: .68rem; font-weight: 800; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.scc-mep-inline-actions button:hover,
.scc-mep-inline-actions a:hover { color: var(--black); background: var(--scc-cyan); }
.scc-loading,
.scc-no-results,
.scc-error-message { grid-column: 1 / -1; padding: 1.2rem; background: #F1F4F3; }
.scc-error-message { color: #8A1D1D; border-left: 4px solid #B63232; }

.scc-personal-copy label { display: block; margin-bottom: .7rem; font-weight: 800; }
.scc-optional-badge { display: inline-flex; margin-left: .45rem; padding: .18rem .45rem; color: var(--white); background: var(--scc-petrol); font-size: .64rem; letter-spacing: .06em; text-transform: uppercase; vertical-align: .12em; }
.scc-optional-help { margin: -.15rem 0 1rem; color: #566263; font-size: .86rem; }
.scc-template-picker { margin-bottom: 1.5rem; padding: 1.2rem; background: #EAF5F4; border-left: 5px solid var(--scc-petrol); }
.scc-template-picker select { width: 100%; min-height: 52px; padding: .75rem 2.8rem .75rem .9rem; color: var(--black); background: var(--white); border: 1px solid #9AABAA; border-radius: 0; font-weight: 800; }
.scc-template-picker select:focus { outline: 3px solid rgba(25,198,207,.35); border-color: var(--scc-petrol); }
.scc-template-picker p { margin: .65rem 0 0; color: #526061; font-size: .82rem; }
.scc-personal-copy textarea { min-height: 145px; padding: 1rem; resize: vertical; }
.scc-character-row { display: flex; gap: 1rem; justify-content: space-between; margin-top: .55rem; color: #596566; font-size: .75rem; }
.scc-character-row strong { white-space: nowrap; }
.scc-draft-workspace { display: grid; grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr); gap: 1rem; margin-top: 1.5rem; }
.scc-draft-workspace > * { min-width: 0; }
.scc-button-help { margin: .8rem 0 0; color: #667172; font-size: .78rem; }
.scc-mail-preview { padding: 1.5rem; color: var(--white); background: var(--scc-panel); }
.scc-mail-preview > span { color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .65rem; letter-spacing: .1em; }
.scc-mail-preview dl { margin: 1rem 0 0; }
.scc-mail-preview dl > div { display: grid; grid-template-columns: 75px 1fr; gap: .8rem; padding: .75rem 0; border-top: 1px solid var(--scc-line-dark); }
.scc-mail-preview dt { color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .68rem; text-transform: uppercase; }
.scc-mail-preview dd { margin: 0; color: #D1DBDA; font-size: .88rem; overflow-wrap: anywhere; }
.scc-preview-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; margin-top: 1rem; }
.scc-preview-actions button,
.scc-preview-actions a { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; padding: .6rem; color: var(--white); background: #163638; border: 1px solid rgba(25,198,207,.45); font-size: .68rem; font-weight: 800; text-align: center; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.scc-preview-actions button:disabled { opacity: .45; cursor: not-allowed; }
.scc-preview-actions button:not(:disabled):hover,
.scc-preview-actions a:hover { color: var(--black); background: var(--scc-cyan); }
.scc-draft-copybox { color: var(--white); background: #10191A; border: 1px solid #293536; }
.scc-draft-copybox summary { position: relative; padding: 1rem 3rem 1rem 1.1rem; color: var(--scc-cyan); font-size: .78rem; font-weight: 900; list-style: none; text-transform: uppercase; cursor: pointer; }
.scc-draft-copybox summary::-webkit-details-marker { display: none; }
.scc-draft-copybox summary::after { content: '+'; position: absolute; right: 1.1rem; top: .7rem; font-size: 1.35rem; }
.scc-draft-copybox[open] summary::after { content: '−'; }
.scc-draft-copybox > div { padding: 0 1.1rem 1.1rem; }
.scc-draft-copybox pre { max-height: 430px; margin: 0 0 1rem; padding: 1rem; overflow: auto; overscroll-behavior: contain; white-space: pre-wrap; color: #D8E2E1; background: #071112; border: 1px solid rgba(255,255,255,.12); font-family: Arial, Helvetica, sans-serif; font-size: .86rem; line-height: 1.55; }
.scc-draft-copybox p { margin: .75rem 0 0; color: var(--scc-cyan); font-size: .78rem; }
.scc-draft-copybox-visible { padding: 1.1rem; }
.scc-draft-copybox-head { display: flex; gap: 1rem; align-items: baseline; justify-content: space-between; margin-bottom: .8rem; }
.scc-draft-copybox-head strong { color: var(--scc-cyan); font-size: .78rem; text-transform: uppercase; }
.scc-draft-copybox-head span { color: #9FB0AF; font-size: .7rem; }
.scc-draft-copybox-visible pre { max-height: 380px; }
.scc-send-panel { padding: clamp(1.4rem, 3vw, 2.3rem); background: #E8F4F3; border-left: 6px solid var(--scc-petrol); }
.scc-send-panel p:first-child { margin-top: 0; }
.scc-send-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.2rem; }
.scc-button-outline-dark { color: var(--scc-petrol); background: transparent; border-color: var(--scc-petrol); }
.scc-button-outline-dark:hover,
.scc-button-outline-dark:focus-visible { color: var(--black); background: var(--scc-cyan); border-color: var(--scc-cyan); }
.scc-button[aria-disabled="true"] { opacity: .42; cursor: not-allowed; transform: none; }
.scc-inline-status { margin: 1rem 0 0; color: var(--scc-petrol); font-weight: 700; }

.scc-sent-confirmation { display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, auto); gap: clamp(2rem, 5vw, 5rem); align-items: center; margin-top: 2rem; padding: clamp(2rem, 4vw, 4rem); color: var(--white); background: var(--scc-petrol); border: 1px solid rgba(255,255,255,.2); border-top: 9px solid var(--scc-cyan); box-shadow: 0 18px 45px rgba(4,28,30,.18); }
.scc-confirm-question { margin: 0 0 .55rem; color: #A9F0F2; font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .75rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.scc-sent-confirmation h3 { max-width: 760px; margin: 0; font-size: clamp(2.15rem, 4.2vw, 4.1rem); line-height: .92; text-transform: uppercase; }
.scc-sent-confirmation div > p:last-child { max-width: 780px; margin: 1.1rem 0 0; color: #E6F0EF; font-size: 1rem; }
.scc-confirm-actions { display: flex; flex-direction: column; gap: .7rem; align-items: stretch; }
.scc-text-button { padding: .5rem; color: var(--white); background: transparent; border: 0; text-decoration: underline; cursor: pointer; }

.scc-anonymous-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 7vw, 7rem); margin-top: 4rem; align-items: start; }
.scc-anonymous-form { padding: clamp(1.5rem, 3vw, 2.6rem); color: var(--black); background: var(--white); }
.scc-form-label { margin-top: 0; color: var(--scc-petrol); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .68rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.scc-confirmation-check { display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: start; padding: 1.2rem; background: #ECF5F4; border: 1px solid #C2D1D0; cursor: pointer; }
.scc-confirmation-check input { width: 22px; height: 22px; margin-top: .2rem; accent-color: var(--scc-petrol); }
.scc-anonymous-form .scc-button { width: 100%; margin-top: 1rem; }
.scc-anonymous-form .scc-inline-status { color: var(--scc-petrol); }
.scc-collective-plan { margin: 0 0 2rem; padding: clamp(1.25rem, 2.5vw, 2rem); color: var(--white); background: #0B2528; border-top: 6px solid var(--scc-cyan); }
.scc-collective-plan .scc-form-label { color: #8BE7EA; }
.scc-collective-plan h3 { margin: .6rem 0 1.25rem; font-size: clamp(1.45rem, 2.5vw, 2rem); line-height: 1; }
.scc-collective-plan ol { display: grid; gap: .8rem; margin: 0; padding: 0; list-style: none; counter-reset: collective-step; }
.scc-collective-plan li { display: grid; grid-template-columns: minmax(105px, auto) 1fr; gap: .8rem; padding-top: .8rem; border-top: 1px solid rgba(255,255,255,.16); counter-increment: collective-step; }
.scc-collective-plan li strong { color: var(--scc-cyan); font-size: .77rem; text-transform: uppercase; }
.scc-collective-plan li span { color: #D7E3E2; font-size: .85rem; line-height: 1.5; }
.scc-transfer-status { display: grid; grid-template-columns: auto 1fr; gap: .2rem 1rem; align-items: center; margin-top: 1.2rem; padding: .9rem 1rem; color: var(--black); background: var(--scc-cyan); }
.scc-transfer-status > span { grid-row: 1 / 3; font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .62rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.scc-transfer-status > strong { font-size: .9rem; text-transform: uppercase; }
.scc-transfer-status > small { font-size: .7rem; line-height: 1.35; }
.scc-collective-plan > p:last-child { margin: 1rem 0 0; color: #AFC1C0; font-size: .72rem; line-height: 1.45; }
.scc-support-field-wrap { padding: clamp(1.5rem, 3vw, 2.6rem); background: #061011; border: 1px solid rgba(25,198,207,.42); }
.scc-support-total strong { display: block; color: var(--scc-cyan); font-family: var(--scc-display); font-size: clamp(3.4rem, 7vw, 6.4rem); letter-spacing: -.06em; line-height: .82; }
.scc-support-total span { display: block; margin-top: .8rem; font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.scc-support-field { position: relative; width: min(100%, 620px); aspect-ratio: 1; margin: 1.8rem auto 0; overflow: hidden; background: radial-gradient(circle at center, rgba(25,198,207,.13), transparent 66%), #071112; border: 1px solid rgba(25,198,207,.25); }
.scc-support-field > img { position: absolute; inset: 4%; width: 92%; height: 92%; object-fit: contain; opacity: .09; filter: grayscale(1); }
.scc-support-pixel-grid { position: absolute; inset: 4%; display: grid; grid-template-columns: repeat(112, 1fr); grid-template-rows: repeat(112, 1fr); gap: 0; }
.scc-support-tile { position: relative; width: 100%; aspect-ratio: 1; align-self: center; opacity: .15; background: #769091; box-shadow: inset 0 0 0 1px rgba(255,255,255,.04); animation: scc-tile-in 420ms ease forwards;
    animation-delay: var(--tile-delay, 0ms);
}
.scc-support-tile.is-active { opacity: 0; background: var(--pixel-color, var(--scc-cyan)); box-shadow: 0 0 5px rgba(25,198,207,.9), 0 0 12px rgba(25,198,207,.42); }
.scc-support-field.is-empty .scc-support-tile { opacity: .11; }
@keyframes scc-tile-in { to { opacity: .22; } }
.scc-support-tile.is-active { animation-name: scc-tile-active-in; }
@keyframes scc-tile-active-in { to { opacity: 1; } }
.scc-support-field-wrap > p { margin-bottom: 0; color: #9FB0AF; font-size: .78rem; }

.scc-method { padding: clamp(5rem, 8vw, 8rem) 0; color: var(--black); background: var(--scc-paper); --freiraum-wordmark-color: var(--scc-petrol); }
.scc-method-grid { display: block; }
.scc-method-grid > div:first-child { max-width: 920px; }
.scc-method h2 { margin: 0; font-size: clamp(2.8rem, 4.7vw, 4.7rem); line-height: .92; text-transform: uppercase; }
.scc-method-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 3rem; background: #B7C5C4; border: 1px solid #B7C5C4; }
.scc-method-cards article { display: block; min-width: 0; padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--scc-paper); }
.scc-method-cards span { color: var(--scc-petrol); font-family: 'IBM Plex Mono FREIRAUM', monospace; }
.scc-method-cards h3 { margin: 1.2rem 0 .8rem; font-size: 1.35rem; letter-spacing: -.025em; }
.scc-method-cards p { margin: 0; color: #566263; font-size: .9rem; }
.scc-method-note { margin: 1rem 0 0; padding: 1rem 1.2rem; background: #DFF3F2; border-left: 5px solid var(--scc-cyan); }

.scc-share { padding: clamp(5rem, 8vw, 8rem) 0; background: var(--scc-ink); }
.scc-share-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(3rem, 8vw, 8rem); align-items: center; }
.scc-share-grid > * { min-width: 0; }
.scc-share h2 { margin: 0; font-size: clamp(2.8rem, 5.3vw, 5.2rem); line-height: .92; text-transform: uppercase; }
.scc-share-grid > div:first-child > p:last-child { color: var(--scc-muted-dark); }
.scc-share-actions { display: grid; gap: .75rem; }
.scc-share-actions .scc-button { width: 100%; }
.scc-share-actions p { margin: .3rem 0 0; color: var(--scc-cyan); font-family: 'IBM Plex Mono FREIRAUM', monospace; font-size: .72rem; }
.scc-share-brand { gap: .75rem; }
.scc-share-brand svg { width: 21px; height: 21px; flex: 0 0 auto; fill: currentColor; }
.scc-button-whatsapp { color: var(--white); background: #25D366; border-color: #25D366; }
.scc-button-whatsapp:hover,
.scc-button-whatsapp:focus-visible { color: var(--white); background: #128C7E; border-color: #128C7E; }

.scc-share-float { position: fixed; z-index: 75; right: 18px; top: 50%; width: 252px; min-height: 0; padding: 1.1rem; color: var(--white); background: #050C0D; border: 1px solid rgba(25,198,207,.72); border-left: 6px solid var(--scc-cyan); box-shadow: 0 16px 40px rgba(0,0,0,.32); transform: translateY(-50%); transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease; }
.scc-share-float:hover,
.scc-share-float:focus-within { transform: translateY(-50%) translateX(-4px); border-color: var(--scc-cyan); box-shadow: 0 22px 50px rgba(0,0,0,.4); }
.scc-share-float[hidden] { display: none; }
.scc-share-float-close { position: absolute; top: .35rem; right: .4rem; width: 31px; height: 31px; padding: 0; color: #AFC0BF; background: transparent; border: 0; font: 400 1.35rem/1 Arial, Helvetica, sans-serif; cursor: pointer; }
.scc-share-float-close:hover,
.scc-share-float-close:focus-visible { color: var(--scc-cyan); outline: 2px solid var(--scc-cyan); outline-offset: 1px; }
.scc-share-float-copy { padding-right: 1.6rem; }
.scc-share-float-copy > span { color: var(--scc-cyan); font-family: Arial, Helvetica, sans-serif; font-size: .66rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.scc-share-float-copy > strong { display: block; margin-top: .45rem; font-family: Arial, Helvetica, sans-serif; font-size: .92rem; font-weight: 900; line-height: 1.15; letter-spacing: -.015em; text-transform: uppercase; }
.scc-share-float-actions { display: grid; grid-template-columns: repeat(4, 44px); gap: .45rem; margin-top: .85rem; }
.scc-share-float-actions a,
.scc-share-float-actions button { display: grid; width: 44px; height: 44px; padding: 0; place-items: center; color: var(--white); background: #162123; border: 1px solid rgba(255,255,255,.18); cursor: pointer; text-decoration: none; }
.scc-share-float-actions .is-whatsapp { background: #25D366; border-color: #25D366; }
.scc-share-float-actions .is-telegram { background: #229ED9; border-color: #229ED9; }
.scc-share-native { display: none !important; }
.scc-share-float-actions a:hover,
.scc-share-float-actions a:focus-visible,
.scc-share-float-actions button:hover,
.scc-share-float-actions button:focus-visible { color: var(--black); background: var(--scc-cyan); border-color: var(--scc-cyan); outline: 2px solid var(--white); outline-offset: 2px; }
.scc-share-float-actions svg { width: 20px; height: 20px; fill: currentColor; }
.scc-share-label { display: none; }
.scc-share-float > p { margin: .55rem 0 0; color: var(--scc-cyan); font-size: .68rem; line-height: 1.3; }

.campaign-page-hybrid .campaign-page-logo { display: block; width: min(430px, 84%); height: auto; margin: -3.5rem 0 -.2rem; }

@media (max-width: 1180px) {
    .scc-action-hero-grid { grid-template-columns: minmax(0, 1fr); align-items: start; }
    .scc-action-hero h1 { max-width: 880px; }
    .scc-data-promise { max-width: 760px; }
    .scc-hero-light-panel { width: min(100%, 720px); }
    .scc-support-field.scc-support-field-hero { width: min(100%, 520px); }
    .scc-step { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
    .scc-step-head { max-width: 820px; }
}

@media (max-width: 1000px) {
    .scc-hero-grid,
    .scc-status-grid,
    .scc-stakes-grid,
    .scc-choice-heading,
    .scc-faq-grid,
    .scc-anonymous-grid,
    .scc-method-grid,
    .scc-share-grid { grid-template-columns: minmax(0, 1fr); }
    .scc-section-heading { position: static; }
    .scc-hero-symbol { justify-self: start; width: min(620px, 88vw); }
    .scc-choice-heading > p { max-width: 760px; }
    .scc-live-count-grid { grid-template-columns: repeat(2, 1fr); }
    .scc-live-count-grid .scc-count-method { grid-column: 1 / -1; min-height: 0; }
    .scc-draft-workspace { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 760px) {
    .scc-action-hero .shell { width: min(100% - 28px, 1280px); }
    .scc-site-header .header-inner { min-height: 86px; gap: .42rem; }
    .scc-site-header .brand { width: 98px; }
    .scc-site-header .main-nav { top: 100%; }
    .scc-back-link { max-width: none; margin-left: auto; font-size: 0; line-height: 1.15; text-align: right; }
    .scc-back-link::after { content: '← Kampagne'; font-size: .67rem; }
    .scc-header-share { gap: .2rem; padding: .25rem; border-left-width: 3px; }
    .scc-header-share > span:first-child { display: none; }
    .scc-header-share a,
    .scc-header-share button { width: 31px; height: 31px; }
    .scc-header-share svg { width: 15px; height: 15px; }
    .scc-header-share-status:not(:empty) { position: fixed; top: 92px; right: 12px; max-width: calc(100vw - 24px); }
    .scc-hero { min-height: auto; }
    .scc-hero-grid { min-height: 0; padding: 3.2rem 0 5rem; }
    .scc-hero h1 { max-width: 100%; font-size: clamp(1.75rem, 7.6vw, 3.2rem); overflow-wrap: normal; }
    .scc-action-hero h1 { max-width: 100%; font-size: clamp(2rem, 9vw, 3.35rem); overflow-wrap: normal; }
    .scc-hero .scc-kicker { max-width: 100%; font-size: .62rem; letter-spacing: .09em; }
    .scc-hero-symbol { width: 100%; padding: .8rem; box-shadow: 14px 14px 0 rgba(25,198,207,.08); }
    .scc-scroll-note { display: none; }
    .scc-actions { flex-direction: column; }
    .scc-actions .scc-button { width: 100%; }
    .scc-demand-grid,
    .scc-choice-grid,
    .scc-mep-results,
    .scc-live-count-grid { grid-template-columns: 1fr; }
    .scc-route-choice-grid { grid-template-columns: minmax(0, 1fr); }
    .scc-demand-grid article { min-height: 0; }
    .scc-choice-card { min-height: 0; }
    .scc-choice-cta { flex-direction: column; align-items: stretch; }
    .scc-choice-cta .scc-button { width: 100%; }
    .scc-source-list a { grid-template-columns: 42px 1fr; gap: .4rem 1rem; }
    .scc-source-list small { grid-column: 2; }
    .scc-stakes-art { min-height: 360px; }
    .scc-action-section-heading { grid-template-columns: 64px 1fr; gap: 1rem; }
    .scc-route-letter { width: 62px; height: 62px; font-size: 2.2rem; }
    .scc-action-section-heading h2 { font-size: clamp(2rem, 9.2vw, 3.45rem); hyphens: none; overflow-wrap: normal; word-break: normal; }
    .scc-status-grid,
    .scc-faq-grid,
    .scc-action-hero-grid,
    .scc-anonymous-grid,
    .scc-share-grid,
    .scc-step { grid-template-columns: minmax(0, 1fr); }
    .scc-status h2,
    .scc-faq h2,
    .scc-share h2,
    .scc-final-cta h2 { max-width: 100%; font-size: clamp(2.25rem, 10.8vw, 3.4rem); overflow-wrap: break-word; }
    .scc-step { gap: 1.5rem; }
    .scc-mep-controls,
    .scc-send-grid { grid-template-columns: minmax(0, 1fr); }
    .scc-mep-results { max-height: 380px; padding-right: .45rem; }
    .scc-step-head h3 { overflow-wrap: anywhere; }
    .scc-character-row { flex-direction: column; gap: .2rem; }
    .scc-sent-confirmation { grid-template-columns: 1fr; }
    .scc-path-nav { top: var(--scc-path-nav-top, 86px); }
    .scc-path-nav a { grid-template-columns: auto 1fr; gap: .05rem .55rem; padding: .7rem .55rem; }
    .scc-path-nav a > span { font-size: 1.4rem; }
    .scc-path-nav strong { font-size: .73rem; }
    .scc-path-nav small { display: none; }
    .scc-method-cards { grid-template-columns: 1fr; }
    .scc-count-reminder { margin-left: 0; }
    .scc-hero-light-head { grid-template-columns: minmax(0, 1fr); gap: .8rem; }
    .scc-hero-light-impact { align-items: flex-start; flex-direction: column; }
    .scc-hero-privacy { grid-template-columns: minmax(0, 1fr); }
    .scc-hero-privacy p { grid-column: auto; }
    .scc-share-float { top: auto; right: 12px; bottom: 12px; left: 12px; width: auto; min-height: 0; max-width: none; padding: .72rem 2.65rem .72rem .75rem; transform: none; border: 1px solid rgba(25,198,207,.72); border-top: 4px solid var(--scc-cyan); }
    .scc-share-float:hover,
    .scc-share-float:focus-within { transform: translateY(-3px); }
    .scc-share-float-close { top: .3rem; right: .35rem; }
    .scc-share-float-copy { padding-right: 0; }
    .scc-share-float-copy > span { display: block; }
    .scc-share-float-copy > strong { display: none; }
    .scc-share-float-actions { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .35rem; margin-top: .45rem; }
    .scc-share-float-actions a,
    .scc-share-float-actions button { display: flex; width: auto; height: 46px; gap: .36rem; align-items: center; justify-content: center; padding: .35rem .42rem; }
    .scc-share-float-actions svg { width: 18px; height: 18px; flex: 0 0 auto; }
    .scc-share-label { display: inline; font-family: Arial, Helvetica, sans-serif; font-size: .65rem; font-weight: 800; }
    .scc-share-copy { display: none !important; }
    .scc-share-native { display: flex !important; }
    .scc-share-float > p:not(:empty) { position: absolute; right: 0; bottom: 100%; display: block; width: 230px; padding: .5rem; color: var(--black); background: var(--scc-cyan); }
    .scc-collective-plan li { grid-template-columns: minmax(0, 1fr); gap: .25rem; }
    .scc-transfer-status { grid-template-columns: minmax(0, 1fr); }
    .scc-transfer-status > span { grid-row: auto; }
}

@media (max-width: 520px) {
    .scc-live-count-grid { grid-template-columns: minmax(0, 1fr); }
    .scc-live-count-grid .scc-count-method { grid-column: auto; }
    .scc-live-count-card,
    .scc-count-method { min-height: 0; }
    .scc-mep-list-head { align-items: flex-start; flex-direction: column; gap: .15rem; }
    .scc-preview-actions { grid-template-columns: minmax(0, 1fr); }
    .scc-draft-copybox .scc-button { width: 100%; }
    .scc-mep-filter-row { grid-template-columns: minmax(0, 1fr); }
    .scc-route-choice-card { min-height: 0; grid-template-columns: auto 1fr; gap: .9rem; padding: 1rem; }
    .scc-route-choice-card > span { width: 50px; height: 50px; font-size: 1.8rem; }
    .scc-route-choice-card > b { display: none; }
    .scc-send-actions { flex-direction: column; }
    .scc-send-actions .scc-button { width: 100%; }
    .scc-draft-copybox-head { align-items: flex-start; flex-direction: column; gap: .25rem; }
    .scc-unscanned-logo { width: 100%; margin-top: -.7rem; }
    .campaign-page-hybrid .campaign-page-logo { width: 100%; margin-top: -2rem; }
}

@media (prefers-reduced-motion: reduce) {
    .scc-support-tile { opacity: .22; animation: none; }
    .scc-support-tile.is-active { opacity: 1; }
}

/* Hybrid-Kampagnenseite: bestehende FREIRAUM-Seitenwelt + neue Mitmachstrecke */
.campaign-hybrid { background: var(--paper); }
.campaign-page-hybrid { --freiraum-wordmark-color: var(--white); }
.campaign-page-hybrid .campaign-page-hero-grid { min-height: min(800px, calc(100vh - 92px)); }
.campaign-hybrid-alert {
    max-width: 690px;
    margin: 0 0 1rem;
    color: var(--turquoise);
    font-size: clamp(1.65rem, 2.9vw, 2.65rem);
    font-weight: 900;
    letter-spacing: -.035em;
    line-height: 1.02;
    text-transform: uppercase;
}
.campaign-hybrid-privacy {
    margin: 1.3rem 0 0;
    color: #AFC0BF;
    font-size: .78rem;
    font-weight: 700;
}
.campaign-hybrid-privacy span { margin-right: .45rem; color: var(--turquoise); }
.campaign-hybrid-analogy {
    max-width: 850px;
    margin: 2rem 0 1.6rem;
    padding: clamp(1.35rem, 3vw, 2.3rem);
    color: var(--black);
    background: var(--turquoise);
    box-shadow: 16px 16px 0 rgba(0,0,0,.13);
}
.campaign-hybrid-analogy span {
    display: block;
    margin-bottom: 1rem;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.campaign-hybrid-analogy strong {
    display: block;
    font-size: clamp(1.45rem, 2.4vw, 2.2rem);
    line-height: 1.08;
}
.campaign-hybrid-analogy p { margin: 1rem 0 0; color: #173134 !important; }
.campaign-hybrid-fact {
    margin-top: 2rem;
    padding: 1.15rem 0;
    color: var(--black) !important;
    border-top: 4px solid var(--turquoise);
    border-bottom: 1px solid #B7C5C4;
    font-size: 1.1rem;
}
.campaign-hybrid-fact strong { color: var(--petrol); }

.campaign-hybrid-action .shell { position: relative; }
.campaign-hybrid-action-heading {
    display: grid;
    grid-template-columns: 1fr .72fr;
    gap: clamp(2.5rem, 7vw, 7rem);
    align-items: end;
}
.campaign-hybrid-action-heading > * { min-width: 0; }
.campaign-hybrid-action-heading h2 {
    max-width: 760px;
    margin: 0;
    font-size: clamp(2.5rem, 5vw, 4.7rem);
    line-height: .94;
}
.campaign-hybrid-action-heading > p { margin: 0; color: #C0CDCC; }
.campaign-hybrid-counts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: clamp(2.7rem, 5vw, 4.5rem);
}
.campaign-hybrid-count {
    min-height: 405px;
    padding: clamp(1.6rem, 3.8vw, 3.2rem);
    overflow: hidden;
}
.campaign-hybrid-count-personal {
    background: #092F33;
    border-top: 6px solid var(--turquoise);
}
.campaign-hybrid-count-anonymous {
    color: var(--black);
    background: var(--white);
    border-top: 6px solid var(--petrol);
}
.campaign-hybrid-route {
    display: block;
    font-size: .73rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.campaign-hybrid-count-personal .campaign-hybrid-route { color: var(--turquoise); }
.campaign-hybrid-count-anonymous .campaign-hybrid-route { color: var(--petrol); }
.campaign-hybrid-count > strong {
    display: block;
    margin-top: 2.2rem;
    font-family: 'Arial Black', Arial, Helvetica, sans-serif;
    font-size: clamp(4.2rem, 8vw, 7.5rem);
    font-weight: 800;
    letter-spacing: -.08em;
    line-height: .78;
}
.campaign-hybrid-count-personal > strong { color: var(--turquoise); }
.campaign-hybrid-count > small {
    display: block;
    margin-top: .9rem;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.campaign-hybrid-count > p { margin: 2rem 0 0; }
.campaign-hybrid-count-personal > p { color: #BFCDCC; }
.campaign-hybrid-count-anonymous > p { color: #4B5858; }
.campaign-hybrid-action-footer {
    display: flex;
    gap: 2rem;
    align-items: center;
    justify-content: space-between;
    margin-top: 1rem;
    padding: 1.5rem 1.7rem;
    background: #061112;
    border: 1px solid rgba(255,255,255,.15);
}
.campaign-hybrid-action-footer p { max-width: 780px; margin: 0; color: #BFCBCB; }
.campaign-hybrid-action-footer strong { color: var(--white); }
.campaign-hybrid-action-footer .button { flex: 0 0 auto; }

.campaign-hybrid-faq {
    color: var(--black);
    background: var(--white);
    --freiraum-wordmark-color: var(--petrol);
}
.campaign-hybrid-faq-grid {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: clamp(3rem, 9vw, 9rem);
    align-items: start;
}
.campaign-hybrid-faq h2 { margin: 0; font-size: clamp(2.6rem, 5vw, 4.7rem); line-height: .95; }
.campaign-hybrid-accordion { border-top: 1px solid #B9C6C5; }
.campaign-hybrid-accordion details { border-bottom: 1px solid #B9C6C5; }
.campaign-hybrid-accordion summary {
    position: relative;
    padding: 1.5rem 3.2rem 1.5rem 0;
    font-weight: 900;
    cursor: pointer;
    list-style: none;
}
.campaign-hybrid-accordion summary::-webkit-details-marker { display: none; }
.campaign-hybrid-accordion summary::after {
    content: '+';
    position: absolute;
    top: 1rem;
    right: .4rem;
    color: var(--petrol);
    font-size: 1.8rem;
    font-weight: 400;
}
.campaign-hybrid-accordion details[open] summary::after { content: '−'; }
.campaign-hybrid-accordion details p { margin: 0 0 1.5rem; color: #526060; }

.campaign-hybrid-final {
    padding: clamp(5rem, 9vw, 9rem) 0;
    color: var(--white);
    text-align: center;
    background: var(--black);
}
.campaign-hybrid-final img { width: min(310px, 70%); margin: 0 auto 2rem; }
.campaign-hybrid-final h2 {
    margin: 0 0 2.3rem;
    font-family: 'Arial Black', Arial, Helvetica, sans-serif;
    font-size: clamp(3rem, 7vw, 7rem);
    font-weight: 800;
    letter-spacing: -.055em;
    line-height: .87;
    text-transform: uppercase;
}
.campaign-hybrid-final h2 span { color: var(--turquoise); }

@media (max-width: 900px) {
    .campaign-hybrid-action-heading,
    .campaign-hybrid-faq-grid { grid-template-columns: minmax(0, 1fr); }
    .campaign-hybrid-action-heading > p { max-width: 760px; }
}

@media (max-width: 700px) {
    .campaign-hybrid-alert { font-size: clamp(1.45rem, 7.4vw, 2.2rem); }
    .campaign-hybrid-counts { grid-template-columns: minmax(0, 1fr); }
    .campaign-hybrid-count { min-height: 0; }
    .campaign-hybrid-action-footer { flex-direction: column; align-items: stretch; }
    .campaign-hybrid-action-footer .button { width: 100%; }
    .campaign-hybrid-final h2 { font-size: clamp(2.55rem, 12vw, 4.2rem); }
}
