
.network-page { background:var(--paper); }
.network-page .topbar { margin-bottom:4px; }
.page-hero { padding-top:24px; }
.page-hero-card {
  min-height:470px; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr); gap:18px;
  padding:18px; border-radius:var(--radius-xl); background:var(--surface-veil); border:1px solid var(--line); box-shadow:var(--shadow);
}
.page-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(42px,5vw,78px); }
.page-hero-copy .section-kicker { margin:0 0 22px; }
.page-hero-copy h1 { margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(58px,6.1vw,92px); line-height:.96; letter-spacing:-.055em; font-weight:600; }
.page-hero-copy h1 span { color:var(--blue); }
.page-hero-copy > p:last-child { max-width:720px; margin:26px 0 0; color:var(--muted); font-size:clamp(17px,1.45vw,20px); line-height:1.65; }
.page-hero-panel { align-self:stretch; display:flex; flex-direction:column; justify-content:flex-end; padding:38px; border-radius:calc(var(--radius-xl) - 10px); }
.page-hero-panel--blue { color:#fff; background:linear-gradient(145deg,#4959e6,#3343c8); box-shadow:inset 0 1px 0 rgba(255,255,255,.14); }
.page-hero-panel > span { font-size:11px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; opacity:.7; }
.page-hero-panel > strong { margin:12px 0 18px; font-family:Lexend,Inter,sans-serif; font-size:clamp(42px,4vw,62px); line-height:1; letter-spacing:-.04em; }
.page-hero-panel > p { max-width:360px; margin:0; color:rgba(255,255,255,.78); font-size:14px; line-height:1.65; }

.content-layout { display:grid; grid-template-columns:270px minmax(0,1fr); gap:24px; align-items:start; padding-top:90px; padding-bottom:130px; }
.sticky-index { position:sticky; top:104px; display:grid; gap:2px; padding:14px; border:1px solid var(--line); border-radius:24px; background:var(--surface-veil); }
.index-label { padding:10px 12px 14px; color:var(--muted-2); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }
.sticky-index a { padding:10px 12px; border-radius:13px; color:var(--muted); font-size:12px; line-height:1.3; font-weight:600; transition:.18s ease; }
.sticky-index a:hover, .sticky-index a.is-active { color:var(--ink); background:var(--surface); box-shadow:0 5px 16px rgba(20,24,34,.05); }
.content-card { min-width:0; padding:clamp(34px,4.5vw,68px); border:1px solid var(--line); border-radius:34px; background:var(--surface); box-shadow:0 14px 40px rgba(20,24,34,.035); }
.rules-document > .rules-category { margin:66px 0 22px; font-family:Lexend,Inter,sans-serif; font-size:clamp(27px,2.5vw,38px); line-height:1.1; letter-spacing:-.03em; font-weight:500; }
.rules-document > .rules-category:first-child { margin-top:0; }
.rule-section-card { position:relative; scroll-margin-top:116px; padding:30px 30px 27px; margin:0 0 12px; border:1px solid var(--line); border-radius:23px; background:var(--surface-soft); }
.rule-card__number { display:inline-block; margin-bottom:13px; color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.rule-section-card h3 { margin:0 0 15px; font-family:Lexend,Inter,sans-serif; font-size:21px; letter-spacing:-.025em; font-weight:600; }
.rule-section-card ul { margin:0; padding:0; list-style:none; display:grid; gap:11px; }
.rule-section-card li { position:relative; padding-left:18px; color:var(--muted); font-size:14px; line-height:1.65; }
.rule-section-card li::before { content:""; position:absolute; left:0; top:.72em; width:5px; height:5px; border-radius:50%; background:var(--blue); opacity:.7; }
.support-note { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-top:52px; padding:32px; border-radius:25px; background:var(--tint-blue); }
.support-note > div > span { color:var(--blue-ink); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.09em; }
.support-note h2 { margin:8px 0 9px; font-family:Lexend,Inter,sans-serif; font-size:28px; letter-spacing:-.03em; }
.support-note p { max-width:620px; margin:0; color:var(--muted); font-size:14px; line-height:1.6; }

.application-section { padding-top:110px; padding-bottom:130px; }
.application-intro { display:grid; grid-template-columns:.32fr 1.1fr .8fr; align-items:end; gap:42px; margin-bottom:34px; }
.application-intro .section-kicker { align-self:start; }
.application-intro h2 { margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(38px,4vw,58px); line-height:1.05; letter-spacing:-.04em; font-weight:500; }
.application-intro > p:last-child { margin:0 0 4px; color:var(--muted); font-size:15px; line-height:1.65; }
.application-workspace { display:grid; grid-template-columns:260px minmax(0,1fr); gap:16px; align-items:start; }
.application-ranks { position:sticky; top:104px; display:grid; gap:7px; padding:10px; border:1px solid var(--line); border-radius:26px; background:var(--surface-veil); }
.application-rank { position:relative; display:grid; gap:4px; text-align:left; padding:16px 16px; border:1px solid transparent; border-radius:17px; background:transparent; color:var(--muted); cursor:pointer; transition:.18s ease; }
.application-rank span { font-size:14px; font-weight:700; }
.application-rank small { color:var(--muted-2); font-size:11px; }
.application-rank:hover { color:var(--ink); background:var(--surface); }
.application-rank.is-active { color:var(--ink); background:var(--surface); border-color:var(--line); box-shadow:0 8px 24px rgba(20,24,34,.055); }
.application-rank.is-active::before { content:""; position:absolute; left:0; top:14px; bottom:14px; width:3px; border-radius:3px; background:var(--rank-accent,var(--blue)); }
.application-rank[data-application-rank="Developer"] { --rank-accent:#15abc2; }
.application-rank[data-application-rank="Supporter"] { --rank-accent:#9ac7ee; }
.application-rank[data-application-rank="Builder"] { --rank-accent:#34c458; }
.application-rank[data-application-rank="Content"] { --rank-accent:#7b93fc; }
.application-rank[data-application-rank="Media"] { --rank-accent:#5865f2; }
.application-rank[data-application-rank="Media+"] { --rank-accent:#8b5cf6; }
.application-form { min-width:0; padding:clamp(28px,4vw,48px); border:1px solid var(--line); border-radius:32px; background:var(--surface); box-shadow:0 16px 42px rgba(20,24,34,.04); }
.application-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.application-form__head { padding-bottom:30px; margin-bottom:30px; border-bottom:1px solid var(--line); }
.application-form__head-row { display:flex; justify-content:space-between; align-items:flex-start; gap:26px; }
.application-form__head-copy > span { display:block; margin-bottom:8px; color:var(--blue); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.application-form__head h2 { margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(30px,3vw,44px); letter-spacing:-.04em; font-weight:600; }
.application-form__head > p { max-width:720px; margin:13px 0 0; color:var(--muted); font-size:14px; line-height:1.65; }
.application-requirements-button { flex:0 0 auto; min-height:42px; padding:0 15px; border:1px solid var(--line); border-radius:999px; background:var(--surface-soft); color:var(--muted); font-weight:700; font-size:12px; cursor:pointer; }
.application-requirements-button:hover { background:var(--surface-soft); color:var(--ink); }
.application-form__grid, .application-form__rank-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.application-form__rank-fields { margin-top:16px; }
.application-field { display:grid; gap:9px; }
.application-field--wide { grid-column:1/-1; }
.application-field > span { color:var(--muted); font-size:12px; font-weight:700; }
.application-field input, .application-field textarea { width:100%; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); color:var(--ink); padding:14px 15px; font:500 14px/1.5 Inter,sans-serif; resize:vertical; transition:border-color .18s ease, box-shadow .18s ease, background .18s ease; }
.application-field input { min-height:50px; }
.application-field textarea { min-height:108px; }
.application-field input:focus, .application-field textarea:focus { border-color:rgba(56,72,216,.45); background:var(--surface); box-shadow:0 0 0 4px rgba(56,72,216,.08); }
.application-field input::placeholder, .application-field textarea::placeholder { color:var(--muted-2); }
.application-form__actions { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-top:30px; margin-top:30px; border-top:1px solid var(--line); }
.application-form__message { margin:0; font-size:13px; line-height:1.45; color:var(--muted); }
.application-form__message[data-type="success"] { color:var(--success); }
.application-form__message[data-type="error"] { color:var(--danger); }
.application-form__actions .btn { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; border-radius:999px; padding:0 20px; background:var(--contrast); color:var(--contrast-ink); font-weight:700; cursor:pointer; }
.application-form__actions .btn:disabled { opacity:.55; cursor:wait; }
.application-requirements-modal { position:fixed; inset:0; z-index:120; display:grid; place-items:center; padding:24px; opacity:0; visibility:hidden; transition:.18s ease; }
.application-requirements-modal.is-open { opacity:1; visibility:visible; }
.application-requirements-modal__backdrop { position:absolute; inset:0; background:rgba(15,17,20,.58); backdrop-filter:blur(8px); }
.application-requirements-modal__dialog { position:relative; z-index:1; width:min(860px,100%); max-height:min(82vh,820px); overflow:auto; padding:36px; border-radius:30px; background:var(--surface); box-shadow:0 30px 80px rgba(0,0,0,.22); }
.application-requirements-modal__close { position:absolute; top:18px; right:18px; width:40px; height:40px; border:1px solid var(--line); border-radius:50%; background:var(--surface-soft); color:var(--ink); font-size:24px; line-height:1; cursor:pointer; }
.application-requirements-modal__eyebrow { display:block; padding-right:50px; margin-bottom:8px; color:var(--blue); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.application-requirements-modal__dialog > h2 { padding-right:50px; margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(30px,4vw,44px); letter-spacing:-.04em; }
.application-requirements-modal__dialog > p { max-width:720px; margin:12px 0 26px; color:var(--muted); line-height:1.6; }
.application-requirements-platforms { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.application-requirements-platform, .application-requirements-trial { padding:21px; border:1px solid var(--line); border-radius:20px; background:var(--surface-soft); }
.application-requirements-platform h3, .application-requirements-trial h3 { margin:0 0 10px; font-family:Lexend,Inter,sans-serif; font-size:16px; }
.application-requirements-platform p, .application-requirements-trial p { color:var(--muted); font-size:13px; line-height:1.55; }
.application-requirements-platform__note { font-weight:700; }
.application-requirements-list { margin:0; padding-left:18px; color:var(--muted); font-size:13px; line-height:1.6; }
.application-requirements-list li + li { margin-top:7px; }
.application-requirements-evaluation, .application-requirements-trial { margin-top:10px; }
.application-requirements-open { overflow:hidden; }

.vote-section { padding-top:110px; padding-bottom:130px; }
.page-section-heading { margin-bottom:36px; }
.page-section-heading > div > p:last-child { max-width:680px; margin:14px 0 0; color:var(--muted); font-size:15px; line-height:1.65; }
.vote-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(248px,1fr)); gap:16px; }
.vote-card { min-height:330px; position:relative; display:flex; flex-direction:column; justify-content:space-between; gap:28px; padding:30px; border:1px solid var(--line); border-radius:30px; background:var(--surface); box-shadow:0 14px 36px rgba(20,24,34,.035); transition:transform .2s ease, box-shadow .2s ease; }
.vote-card:hover { transform:translateY(-4px); box-shadow:0 20px 48px rgba(20,24,34,.075); }
.vote-number { position:absolute; top:28px; right:30px; color:var(--muted-2); font-family:Lexend,Inter,sans-serif; font-size:12px; }
.vote-domain { margin:0 0 12px; color:var(--blue); font-size:11px!important; text-transform:uppercase; letter-spacing:.09em; font-weight:800; }
.vote-card h3 { max-width:300px; margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(25px,2.3vw,34px); line-height:1.08; letter-spacing:-.035em; overflow-wrap:anywhere; }
.vote-card p { max-width:340px; margin:16px 0 0; color:var(--muted); font-size:14px; line-height:1.6; }
.vote-action { align-self:flex-end; }
.reward-panel { display:grid; grid-template-columns:.8fr 1.2fr; gap:40px; margin-top:18px; padding:38px; border-radius:30px; color:#fff; background:linear-gradient(135deg,#4354df,#2f3fc0); }
.reward-panel-head h2 { margin:10px 0 0; font-family:Lexend,Inter,sans-serif; font-size:clamp(32px,3.2vw,48px); line-height:1.04; letter-spacing:-.04em; }
.reward-panel .section-kicker { color:rgba(255,255,255,.66); }
.reward-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.reward-item { padding:23px; border:1px solid rgba(255,255,255,.13); border-radius:21px; background:rgba(255,255,255,.08); }
.reward-item > span { display:block; color:rgba(255,255,255,.6); font-size:10px; text-transform:uppercase; letter-spacing:.09em; font-weight:800; }
.reward-item > strong { display:block; margin:8px 0 9px; font-family:Lexend,Inter,sans-serif; font-size:18px; }
.reward-item p strong { color:#fff; font-weight:700; }
.reward-item p { margin:0; color:rgba(255,255,255,.76); font-size:13px; line-height:1.55; }

.page-footer { padding-top:0; }

@media (max-width:1100px) {
  .page-hero-card { grid-template-columns:1fr .55fr; }
  .application-intro { grid-template-columns:1fr; gap:14px; }
  .application-intro > p:last-child { max-width:680px; }
  .vote-grid { grid-template-columns:1fr 1fr; }
  .vote-card:last-child { grid-column:1/-1; min-height:250px; }
}
@media (max-width:900px) {
  .page-hero-card { grid-template-columns:1fr; min-height:0; padding:10px; }
  .page-hero-copy { padding:42px 28px 32px; }
  .page-hero-panel { min-height:220px; padding:28px; }
  .content-layout, .application-workspace { grid-template-columns:1fr; }
  .sticky-index, .application-ranks { position:static; }
  .sticky-index { display:flex; overflow-x:auto; gap:6px; padding:10px; scrollbar-width:none; }
  .sticky-index::-webkit-scrollbar { display:none; }
  .index-label { display:none; }
  .sticky-index a { flex:0 0 auto; white-space:nowrap; }
  .application-ranks { grid-template-columns:repeat(3,1fr); }
  .reward-panel { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .content-layout, .application-section, .vote-section { padding-top:72px; padding-bottom:92px; }
  .content-card { padding:24px 18px; border-radius:26px; }
  .rule-section-card { padding:23px 20px; }
  .support-note { align-items:flex-start; flex-direction:column; padding:24px; }
  .application-ranks { grid-template-columns:1fr 1fr; }
  .application-form { padding:24px 18px; border-radius:25px; }
  .application-form__head-row { flex-direction:column; }
  .application-form__grid, .application-form__rank-fields { grid-template-columns:1fr; }
  .application-field--wide { grid-column:auto; }
  .application-form__actions { align-items:stretch; flex-direction:column; }
  .application-form__actions .btn { width:100%; }
  .application-requirements-modal { padding:12px; }
  .application-requirements-modal__dialog { padding:28px 20px; border-radius:24px; }
  .application-requirements-platforms { grid-template-columns:1fr; }
  .vote-grid { grid-template-columns:1fr; }
  .vote-card:last-child { grid-column:auto; }
  .vote-card { min-height:270px; padding:25px; }
  .reward-panel { padding:26px 20px; }
  .reward-list { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .page-hero-copy h1 { font-size:clamp(46px,14vw,65px); }
  .application-ranks { grid-template-columns:1fr; }
}


/* Partner */
.partner-current { padding:110px 0 120px; }
.current-partner-card { display:grid; grid-template-columns:.8fr 1.2fr; min-height:430px; overflow:hidden; border:1px solid var(--line); border-radius:34px; background:var(--surface); box-shadow:0 18px 48px rgba(20,24,34,.045); }
.current-partner-brand { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; min-height:430px; padding:45px; color:#fff; background:linear-gradient(145deg,#14171b,#252a31); text-align:center; }
.current-partner-brand::after { content:""; position:absolute; right:-90px; bottom:-110px; width:300px; height:300px; border-radius:50%; background:radial-gradient(circle,rgba(56,72,216,.45),transparent 66%); }
.velohost-logo { position:relative; z-index:1; width:min(100%, 520px); height:auto; object-fit:contain; }
.current-partner-brand small { position:relative; z-index:1; color:rgba(255,255,255,.62); font-size:11px; text-transform:uppercase; letter-spacing:.13em; font-weight:800; }
.current-partner-copy { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:54px 58px; }
.partner-overline { margin:0 0 11px!important; color:var(--blue)!important; font-size:11px!important; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.current-partner-copy h3 { margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(34px,4vw,56px); line-height:1; letter-spacing:-.045em; }
.current-partner-copy > p:not(.partner-overline) { max-width:670px; margin:20px 0 0; color:var(--muted); font-size:16px; line-height:1.7; }
.partner-facts { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0 0; }
.partner-facts span { padding:8px 11px; border-radius:999px; background:var(--surface-soft); color:var(--muted); font-size:11px; font-weight:700; }
.partner-visit { margin-top:30px; }
.partner-info { padding-bottom:120px; }
.partner-info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.partner-info-card { position:relative; min-height:390px; padding:32px; border:1px solid var(--line); border-radius:30px; background:var(--surface); box-shadow:0 14px 36px rgba(20,24,34,.035); }
.partner-info-card--blue { color:#fff; border-color:transparent; background:linear-gradient(145deg,#4354df,#2f3fc0); }
.partner-info-card--blue .partner-overline { color:rgba(255,255,255,.66)!important; }
.partner-index { position:absolute; top:30px; right:30px; color:var(--muted-2); font:600 12px Lexend,Inter,sans-serif; }
.partner-info-card--blue .partner-index { color:rgba(255,255,255,.45); }
.partner-info-card h3 { max-width:320px; margin:0; font-family:Lexend,Inter,sans-serif; font-size:clamp(27px,2.5vw,38px); line-height:1.08; letter-spacing:-.035em; }
.partner-info-card > p:not(.partner-overline) { margin:18px 0 0; color:var(--muted); font-size:14px; line-height:1.65; }
.partner-info-card--blue > p:not(.partner-overline) { color:rgba(255,255,255,.77); }
.partner-info-card ul { list-style:none; display:grid; gap:11px; margin:28px 0 0; padding:22px 0 0; border-top:1px solid var(--line); }
.partner-info-card--blue ul { border-color:rgba(255,255,255,.14); }
.partner-info-card li { position:relative; padding-left:18px; color:var(--muted); font-size:13px; line-height:1.5; }
.partner-info-card--blue li { color:rgba(255,255,255,.83); }
.partner-info-card li::before { content:""; position:absolute; left:0; top:.62em; width:6px; height:6px; border-radius:50%; background:var(--blue); }
.partner-info-card--blue li::before { background:var(--surface); }
.partner-requirements-new { padding-bottom:120px; }
.partner-requirements-card { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; padding:48px; border-radius:32px; background:var(--surface-mute); }
.partner-requirements-card h2 { max-width:550px; margin:12px 0 18px; font-family:Lexend,Inter,sans-serif; font-size:clamp(34px,3.7vw,55px); line-height:1.04; letter-spacing:-.04em; font-weight:500; }
.partner-requirements-card > div:first-child > p:last-child { max-width:520px; margin:0; color:var(--muted); line-height:1.65; }
.partner-checks { display:grid; gap:10px; }
.partner-checks > div { padding:22px 24px; border-radius:20px; background:var(--surface-veil); border:1px solid rgba(17,19,20,.05); }
.partner-checks strong { font-family:Lexend,Inter,sans-serif; font-size:16px; }
.partner-checks p { margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.55; }
.partner-cta { padding-bottom:34px; }
.partner-cta-card, .wiki-help-card { display:flex; justify-content:space-between; align-items:center; gap:35px; padding:44px 48px; border-radius:32px; color:#fff; background:linear-gradient(135deg,#4354df,#2f3fc0); }
.partner-cta-card .section-kicker, .wiki-help-card .section-kicker { color:rgba(255,255,255,.62); }
.partner-cta-card h2, .wiki-help-card h2 { margin:10px 0 10px; font-family:Lexend,Inter,sans-serif; font-size:clamp(32px,3vw,46px); letter-spacing:-.04em; }
.partner-cta-card p:last-child, .wiki-help-card p:last-child { max-width:650px; margin:0; color:rgba(255,255,255,.78); line-height:1.6; }

/* Wiki */
.wiki-shell { padding:100px 0 120px; }
.wiki-toolbar { position:sticky; top:92px; z-index:20; display:flex; align-items:center; justify-content:space-between; gap:28px; margin-bottom:64px; padding:12px 14px 12px 22px; border:1px solid var(--line); border-radius:24px; background:var(--surface-glass); box-shadow:0 12px 34px rgba(20,24,34,.06); }
.wiki-toolbar > div { min-width:0; display:flex; align-items:center; gap:22px; }
.wiki-toolbar > div > span { color:var(--muted-2); font-size:10px; text-transform:uppercase; letter-spacing:.11em; font-weight:800; }
.wiki-toolbar nav { display:flex; gap:4px; }
.wiki-toolbar nav a { padding:9px 12px; border-radius:999px; color:var(--muted); font-size:12px; font-weight:700; }
.wiki-toolbar nav a:hover { color:var(--ink); background:var(--surface-soft); }
.wiki-search { flex:0 0 min(310px,30vw); }
.wiki-search input { width:100%; height:42px; border:1px solid var(--line); border-radius:999px; padding:0 16px; background:var(--surface-soft); color:var(--ink); font:600 12px Inter,sans-serif; }
.wiki-search input:focus { border-color:rgba(56,72,216,.35); box-shadow:0 0 0 4px rgba(56,72,216,.07); }
.wiki-topic { scroll-margin-top:185px; padding:0 0 100px; }
.wiki-topic:last-of-type { padding-bottom:0; }
.wiki-topic-head { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:28px; }
.wiki-topic-head h2 { margin:10px 0 0; font-family:Lexend,Inter,sans-serif; font-size:clamp(35px,4vw,58px); line-height:1.06; letter-spacing:-.04em; font-weight:500; }
.wiki-topic-head > div > p:last-child { max-width:690px; margin:14px 0 0; color:var(--muted); font-size:15px; line-height:1.65; }
.wiki-topic-head > span { flex:0 0 auto; padding-bottom:5px; color:var(--muted-2); font-size:11px; font-weight:700; }
.wiki-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.wiki-card { position:relative; min-height:255px; display:flex; flex-direction:column; align-items:stretch; justify-content:space-between; text-align:left; padding:26px; border:1px solid var(--line); border-radius:27px; background:var(--surface); color:var(--ink); cursor:pointer; box-shadow:0 12px 30px rgba(20,24,34,.025); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.wiki-card:hover { transform:translateY(-3px); border-color:rgba(56,72,216,.18); box-shadow:0 18px 42px rgba(20,24,34,.065); }
.wiki-card[hidden] { display:none; }
.wiki-card-tag { align-self:flex-start; padding:7px 9px; border-radius:999px; background:var(--blue-soft); color:var(--blue-ink); font-size:10px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.wiki-card-index { position:absolute; top:28px; right:27px; color:var(--muted-2); font:600 11px Lexend,Inter,sans-serif; }
.wiki-card h3 { margin:28px 0 11px; font-family:Lexend,Inter,sans-serif; font-size:clamp(23px,2.1vw,31px); line-height:1.08; letter-spacing:-.03em; font-weight:500; }
.wiki-card p { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.wiki-card-more { display:inline-flex; align-items:center; gap:8px; margin-top:25px; color:var(--ink); font-size:11px; font-weight:800; }
.wiki-empty { margin:20px 0 0; padding:35px; text-align:center; border:1px dashed var(--line); border-radius:25px; color:var(--muted); }
.wiki-help { padding-bottom:34px; }
.wiki-modal { position:fixed; inset:0; z-index:120; display:grid; place-items:center; padding:20px; }
.wiki-modal[hidden] { display:none; }
.wiki-modal-backdrop { position:absolute; inset:0; background:rgba(13,15,19,.52); backdrop-filter:blur(8px); }
.wiki-modal-dialog { position:relative; z-index:1; width:min(620px,100%); padding:38px; border-radius:30px; background:var(--surface); box-shadow:0 30px 100px rgba(0,0,0,.22); }
.wiki-modal-close { position:absolute; top:17px; right:17px; width:40px; height:40px; border:0; border-radius:50%; background:var(--surface-soft); color:var(--ink); font-size:24px; line-height:1; cursor:pointer; }
.wiki-modal-tag { margin:0 0 12px; color:var(--blue); font-size:10px; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.wiki-modal-dialog h2 { max-width:520px; margin:0; padding-right:40px; font-family:Lexend,Inter,sans-serif; font-size:clamp(30px,4vw,46px); line-height:1.05; letter-spacing:-.04em; }
.wiki-modal-copy { margin:22px 0 0; color:var(--muted); font-size:15px; line-height:1.75; }
.wiki-modal-link { margin-top:28px; }
body.wiki-modal-open { overflow:hidden; }

@media (max-width:1000px) {
  .current-partner-card, .partner-requirements-card { grid-template-columns:1fr; }
  .current-partner-brand { min-height:300px; }
  .partner-info-grid, .wiki-grid { grid-template-columns:1fr 1fr; }
  .partner-info-card:last-child { grid-column:1/-1; min-height:300px; }
  .wiki-toolbar { position:static; align-items:stretch; flex-direction:column; }
  .wiki-toolbar > div { overflow-x:auto; }
  .wiki-search { flex:auto; width:100%; }
}
@media (max-width:700px) {
  .partner-current, .wiki-shell { padding-top:72px; padding-bottom:90px; }
  .current-partner-brand { min-height:230px; padding:30px; }
  .current-partner-copy { padding:32px 24px; }
  .partner-info { padding-bottom:90px; }
  .partner-info-grid, .wiki-grid { grid-template-columns:1fr; }
  .partner-info-card, .partner-info-card:last-child { grid-column:auto; min-height:320px; padding:26px; }
  .partner-requirements-new { padding-bottom:90px; }
  .partner-requirements-card { gap:34px; padding:30px 22px; }
  .partner-cta-card, .wiki-help-card { align-items:flex-start; flex-direction:column; padding:30px 24px; }
  .partner-cta-card .button, .wiki-help-card .button { width:100%; }
  .wiki-toolbar { margin-bottom:44px; padding:10px; }
  .wiki-toolbar > div { display:block; }
  .wiki-toolbar > div > span { display:none; }
  .wiki-toolbar nav { overflow-x:auto; padding-bottom:4px; }
  .wiki-topic { padding-bottom:74px; }
  .wiki-topic-head { align-items:flex-start; flex-direction:column; }
  .wiki-topic-head > span { padding:0; }
  .wiki-card { min-height:230px; padding:23px; }
  .wiki-modal-dialog { padding:31px 23px; border-radius:25px; }
}

/* --- Systeme-Seite (/features) --------------------------------------------
   Nutzt die Kartenoptik des Wikis, aber als statische Karten mit Wiki-Link
   statt als Buttons mit Detailansicht.
   -------------------------------------------------------------------------- */
.feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.feature-card {
  position:relative; min-height:250px; display:flex; flex-direction:column; justify-content:space-between;
  padding:26px; border:1px solid var(--line); border-radius:27px; background:var(--surface);
  box-shadow:0 12px 30px rgba(20,24,34,.025);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.feature-card:hover { transform:translateY(-3px); border-color:rgba(56,72,216,.18); box-shadow:0 18px 42px rgba(20,24,34,.065); }
.feature-card .wiki-card-tag { align-self:flex-start; }
.feature-card h3 { margin:24px 0 11px; font-family:Lexend,Inter,sans-serif; font-size:clamp(21px,1.9vw,27px); line-height:1.1; letter-spacing:-.03em; font-weight:500; }
.feature-card p { flex:1 1 auto; margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.feature-card .wiki-card-more { margin-top:22px; color:var(--blue); transition:gap .18s ease; }
.feature-card:hover .wiki-card-more { gap:11px; }
.section-note { margin:44px 0 0; color:var(--muted); font-size:14px; }
.section-note a { color:var(--blue); font-weight:600; text-decoration:underline; text-underline-offset:3px; }

@media (max-width:1180px) { .feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:900px)  { .feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px)  { .feature-grid { grid-template-columns:1fr; } .feature-card { min-height:0; padding:23px; } }

/* --- Fehlerseite (404) ----------------------------------------------------- */
.error-actions { margin-top:34px; }
