.fokus21-rep-report {
--rp-ink: #241520;
--rp-muted: #6a5560;
--rp-red: #b3213a;
--rp-red-d: #8f1a2e;
--rp-red-l: #fbe3e7;
--rp-gold: #d9a441;
--rp-gold-d: #8a5a00;
--rp-gold-l: #fff0cf;
--rp-teal: #1f7a77;
--rp-teal-d: #14605d;
--rp-teal-l: #dcefed;
--rp-ivory: #fbf6ee;
--rp-paper: #fffdf9;
--rp-line: #eadfcf;
--rp-track: #f0e6d6;
--rp-orn: url(//fokus21.ru/wp-content/themes/fokus21/assets/images/report-2025/ornament.svg);
color: var(--rp-ink);
background:
radial-gradient(circle at 4% 5%, rgba(217,164,65,.16), transparent 26rem),
radial-gradient(circle at 96% 24%, rgba(179,33,58,.09), transparent 30rem),
radial-gradient(circle at 50% 98%, rgba(31,122,119,.1), transparent 34rem),
#f7f0e3;
font-family: "Manrope", "Segoe UI", Arial, sans-serif;
padding: 34px 0 72px;
}
.fokus21-rep-report *,
.fokus21-rep-report *::before,
.fokus21-rep-report *::after { box-sizing: border-box; }
.fokus21-rep-report .content-area,
.fokus21-rep-report .site-main { float: none; width: 100%; max-width: none; }
.fokus21-rep-report .site-main { display: block; }
.fokus21-rep-report .site-main > article,
.fokus21-rep-report .site-main > section,
.fokus21-rep-report .site-main > nav.fokus21-rep-nav { max-width: 1280px; margin-left: auto; margin-right: auto; }
.fokus21-rep-report h1,
.fokus21-rep-report h2,
.fokus21-rep-report h3,
.fokus21-rep-report p { overflow-wrap: anywhere; }
.fokus21-rep-report img { max-width: 100%; height: auto; }
.fokus21-rep-report a { transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease, color .2s ease; }
.fokus21-rep-report button { height: auto; font-family: inherit; line-height: 1.2; cursor: pointer; }
.fokus21-rep-report [hidden] { display: none !important; }
.fokus21-rep-article { margin-bottom: 18px; } .fokus21-rep-hero {
position: relative;
isolation: isolate;
display: grid;
grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
gap: clamp(24px, 4vw, 54px);
align-items: center;
padding: clamp(34px, 5vw, 64px) clamp(22px, 5vw, 64px) 56px;
overflow: hidden;
border: 1px solid rgba(179,33,58,.22);
border-radius: 30px;
background: linear-gradient(125deg, #fffdf9 0%, #fff5e1 62%, #ffe9c4 100%);
box-shadow: 0 30px 80px rgba(74,40,25,.13);
}
.fokus21-rep-hero::before {
content: "";
position: absolute;
inset: 0 0 auto 0;
height: 22px;
background: var(--rp-orn) repeat-x;
background-size: 22px 22px;
}
.fokus21-rep-hero::after {
content: "";
position: absolute;
inset: auto 0 0 0;
height: 22px;
background: var(--rp-orn) repeat-x;
background-size: 22px 22px;
}
.fokus21-rep-hero-copy { position: relative; z-index: 2; min-width: 0; padding-top: 14px; }
.fokus21-rep-brand { display: flex; align-items: center; gap: 13px; margin-bottom: 34px; }
.fokus21-rep-brand b { padding: 7px 10px 6px; border-radius: 6px; color: #fff; background: var(--rp-red); font-size: 13px; letter-spacing: .16em; }
.fokus21-rep-brand span { color: var(--rp-muted); font-size: 12px; font-weight: 700; line-height: 1.3; }
.fokus21-rep-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; color: var(--rp-red); font-size: 12px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.fokus21-rep-eyebrow .nw { white-space: nowrap; }
.fokus21-rep-eyebrow::before { content: ""; flex: 0 0 34px; height: 3px; border-radius: 3px; background: var(--rp-gold); }
.fokus21-rep-hero h1 {
margin: 0 0 20px; color: var(--rp-ink);
font-family: "Montserrat", "Segoe UI", Arial, sans-serif;
font-size: clamp(36px, 4.4vw, 64px); font-weight: 850; line-height: 1; letter-spacing: -.04em;
overflow-wrap: normal; word-break: normal;
}
.fokus21-rep-hero h1 > span,
.fokus21-rep-hero h1 > small { display: block; }
.fokus21-rep-hero h1 > small {
margin-top: 6px; font-size: 1.08em; line-height: 1.05; letter-spacing: -.03em;
background: linear-gradient(90deg, var(--rp-red), var(--rp-gold-d));
-webkit-background-clip: text; background-clip: text; color: var(--rp-red); -webkit-text-fill-color: transparent;
}
.fokus21-rep-lead { max-width: 540px; margin: 0; color: #4d3b46; font-size: clamp(16px, 1.45vw, 19px); line-height: 1.6; }
.fokus21-rep-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.fokus21-rep-hero-actions a,
.fokus21-rep-hero-actions a:visited {
display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px;
color: #fff; background: var(--rp-red); border: 1px solid var(--rp-red); border-radius: 999px;
font-size: 14px; font-weight: 800; text-decoration: none;
}
.fokus21-rep-hero-actions a:hover { transform: translateY(-2px); background: var(--rp-red-d); box-shadow: 0 12px 26px rgba(143,26,46,.28); }
.fokus21-rep-hero-actions .is-quiet,
.fokus21-rep-hero-actions .is-quiet:visited { color: var(--rp-ink); background: transparent; border-color: #c9b8b0; }
.fokus21-rep-hero-actions .is-quiet:hover { color: var(--rp-ink); background: #fff; }
.fokus21-rep-hero-art { position: relative; z-index: 1; min-width: 0; margin: 0; }
.fokus21-rep-hero-art img {
display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover;
border-radius: 22px; box-shadow: 0 24px 56px rgba(74,40,25,.2); background: var(--rp-ivory);
}
.fokus21-rep-hero-art figcaption { margin: 14px 4px 0; color: var(--rp-muted); font-size: 12.5px; line-height: 1.5; }
.fokus21-rep-kpis { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 4px 0 0; padding: 0; border: 0; background: none; }
.fokus21-rep-kpis > div {
min-width: 0; margin: 0; padding: 18px 18px 16px; border: 1px solid var(--rp-line); border-top: 5px solid var(--kpi, var(--rp-red));
border-radius: 14px; background: rgba(255,255,255,.9); box-shadow: 0 10px 26px rgba(74,40,25,.07);
}
.fokus21-rep-kpis .is-red { --kpi: var(--rp-red); --kpi-d: var(--rp-red); }
.fokus21-rep-kpis .is-gold { --kpi: var(--rp-gold); --kpi-d: var(--rp-gold-d); }
.fokus21-rep-kpis .is-teal { --kpi: var(--rp-teal); --kpi-d: var(--rp-teal-d); }
.fokus21-rep-kpis .is-ink { --kpi: var(--rp-ink); --kpi-d: var(--rp-ink); }
.fokus21-rep-kpis dt { margin: 0; padding: 0; color: var(--kpi-d); font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: clamp(26px, 2.8vw, 38px); font-weight: 850; line-height: 1; letter-spacing: -.04em; white-space: nowrap; }
.fokus21-rep-kpis dd { margin: 8px 0 0; padding: 0; color: var(--rp-muted); font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.fokus21-rep-editable { margin-top: 18px; border-radius: 14px; } .fokus21-rep-nav {
display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); overflow: hidden; margin-bottom: 18px;
border: 1px solid var(--rp-line); border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 12px 32px rgba(74,40,25,.07);
}
.fokus21-rep-nav a,
.fokus21-rep-nav a:visited { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 15px 14px; color: var(--rp-ink); text-decoration: none; }
.fokus21-rep-nav a + a { border-left: 1px solid var(--rp-line); }
.fokus21-rep-nav a:hover { background: var(--rp-gold-l); }
.fokus21-rep-nav b { color: var(--rp-red); font-size: 13px; letter-spacing: .06em; }
.fokus21-rep-nav span { color: var(--rp-ink); font-size: 13px; font-weight: 700; line-height: 1.25; }
.fokus21-rep-dots { position: fixed; top: 50%; right: 14px; z-index: 50; display: none; flex-direction: column; gap: 4px; transform: translateY(-50%); opacity: 0; pointer-events: none; transition: opacity .3s ease; }
.fokus21-rep-dots.is-visible { opacity: 1; pointer-events: auto; }
.fokus21-rep-dots a,
.fokus21-rep-dots a:visited { position: relative; display: flex; align-items: center; justify-content: center; width: 30px; height: 26px; color: var(--rp-ink); text-decoration: none; }
.fokus21-rep-dots i { display: block; width: 10px; height: 10px; border: 2px solid var(--rp-red); border-radius: 50%; background: #fff; transition: transform .2s ease, background-color .2s ease; }
.fokus21-rep-dots a.is-active i { background: var(--rp-red); transform: scale(1.35); }
.fokus21-rep-dots span { position: absolute; right: 34px; padding: 5px 10px; border-radius: 8px; color: #fff; background: var(--rp-ink); font-size: 12px; font-weight: 700; white-space: nowrap; opacity: 0; pointer-events: none; transform: translateX(6px); transition: opacity .2s ease, transform .2s ease; }
.fokus21-rep-dots a:hover span,
.fokus21-rep-dots a:focus-visible span { opacity: 1; transform: none; }
.fokus21-rep-dots .to-top i { display: grid; place-items: center; width: 24px; height: 24px; margin-top: 4px; border-color: var(--rp-ink); color: var(--rp-ink); font-size: 13px; font-style: normal; font-weight: 800; }
@media (min-width: 1400px) { .fokus21-rep-dots { display: flex; } } .fokus21-rep-section { margin-bottom: 18px; padding: clamp(30px, 5vw, 60px); border: 1px solid var(--rp-line); border-radius: 20px; background: rgba(255,253,249,.97); }
.fokus21-rep-heading { display: grid; grid-template-columns: 190px minmax(0, 1fr); column-gap: 30px; align-items: start; margin-bottom: 34px; }
.fokus21-rep-heading > p { margin: 8px 0 0; color: var(--rp-red); font-size: 12px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.fokus21-rep-heading h2 { margin: 0; max-width: 860px; color: var(--rp-ink); font-size: clamp(25px, 2.7vw, 37px); line-height: 1.12; letter-spacing: -.028em; }
.fokus21-rep-heading > span { grid-column: 2; max-width: 780px; margin-top: 14px; color: var(--rp-muted); font-size: 15px; line-height: 1.58; }
.fokus21-rep-heading.is-light > p { color: #ffd68a; }
.fokus21-rep-heading.is-light h2 { color: #fff; }
.fokus21-rep-heading.is-light > span { color: #eadbe0; }
.fokus21-rep-report .k { margin: 0 0 6px; color: var(--rp-red); font-size: 12px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; } .fokus21-rep-blocks { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.fokus21-rep-block,
.fokus21-rep-block:visited {
--bk: var(--rp-red); --bk-l: var(--rp-red-l);
position: relative; display: flex; flex-direction: column; min-width: 0; padding: 22px 20px 18px; overflow: hidden;
border: 1px solid var(--rp-line); border-top: 6px solid var(--bk); border-radius: 16px; background: #fff; color: var(--rp-ink); text-decoration: none;
box-shadow: 0 12px 30px rgba(74,40,25,.06);
}
.fokus21-rep-block.is-b2 { --bk: var(--rp-gold); --bk-l: var(--rp-gold-l); }
.fokus21-rep-block.is-b3 { --bk: var(--rp-teal); --bk-l: var(--rp-teal-l); }
.fokus21-rep-block.is-b4 { --bk: var(--rp-ink); --bk-l: #efe6ea; }
.fokus21-rep-block:hover { transform: translateY(-4px); box-shadow: 0 22px 44px rgba(74,40,25,.14); }
.fokus21-rep-block header { margin-bottom: 14px; }
.fokus21-rep-block header span { display: inline-block; margin-bottom: 8px; padding: 3px 10px; border-radius: 999px; color: var(--rp-ink); background: var(--bk-l); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.fokus21-rep-block h3 { margin: 0; color: var(--rp-ink); font-size: 21px; line-height: 1.15; letter-spacing: -.02em; }
.fokus21-rep-block ul { display: grid; gap: 12px; margin: 0 0 16px; padding: 0; list-style: none; }
.fokus21-rep-block li { display: grid; gap: 2px; padding-bottom: 12px; border-bottom: 1px dashed var(--rp-line); }
.fokus21-rep-block li:last-child { padding-bottom: 0; border-bottom: 0; }
.fokus21-rep-block li b { color: var(--rp-ink); font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 24px; font-weight: 850; line-height: 1.05; letter-spacing: -.03em; white-space: nowrap; }
.fokus21-rep-block.is-b1 li b { color: var(--rp-red); }
.fokus21-rep-block.is-b2 li b { color: var(--rp-gold-d); }
.fokus21-rep-block.is-b3 li b { color: var(--rp-teal-d); }
.fokus21-rep-block li span { color: var(--rp-muted); font-size: 13px; line-height: 1.4; }
.fokus21-rep-block em { margin-top: auto; color: var(--rp-red); font-size: 13px; font-style: normal; font-weight: 800; } .fokus21-rep-dynamics { background: linear-gradient(160deg, #fffdf9, #fff4e0); }
.fokus21-rep-yearbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 20px; }
.fokus21-rep-yearbar > span { margin-right: 6px; color: var(--rp-muted); font-size: 12px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.fokus21-rep-yearbar button { min-width: 84px; min-height: 44px; padding: 8px 22px; border: 2px solid #d9c6bb; border-radius: 999px; color: var(--rp-ink); background: #fff; font-size: 17px; font-weight: 850; transition: all .2s ease; }
.fokus21-rep-yearbar button:hover { border-color: var(--rp-red); }
.fokus21-rep-yearbar button[aria-pressed="true"] { color: #fff; background: var(--rp-red); border-color: var(--rp-red); box-shadow: 0 10px 22px rgba(179,33,58,.28); }
.fokus21-rep-report button:focus-visible,
.fokus21-rep-report summary:focus-visible,
.fokus21-rep-report .panel:focus-visible { outline: 3px solid var(--rp-gold); outline-offset: 3px; }
.fokus21-rep-ycards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.fokus21-rep-ycards .ycard { display: flex; flex-direction: column; min-width: 0; padding: 24px; border: 1px solid var(--rp-line); border-radius: 18px; background: #fff; box-shadow: 0 14px 34px rgba(74,40,25,.07); }
.ycard header span { color: var(--rp-red); font-size: 12px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.ycard header h3 { margin: 4px 0 18px; color: var(--rp-ink); font-size: 22px; line-height: 1.15; letter-spacing: -.02em; }
.ycard .chart { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; align-items: end; }
.ycard .col { height: auto; display: grid; grid-template-rows: auto 150px auto; justify-items: center; gap: 8px; min-width: 0; padding: 8px 4px; border: 0; border-radius: 12px; background: transparent; color: var(--rp-ink); opacity: .5; transition: opacity .25s ease, background-color .25s ease, transform .25s ease; }
.ycard .col:hover { opacity: .85; transform: translateY(-2px); }
.ycard .col b { font-size: 15px; font-weight: 850; letter-spacing: -.02em; white-space: nowrap; }
.ycard .col .zone { display: flex; align-items: flex-end; width: min(100%, 74px); height: 150px; }
.ycard .col .zone i { display: block; width: 100%; height: var(--h); min-height: 6px; border-radius: 12px 12px 4px 4px; background: linear-gradient(180deg, #d6495f, var(--rp-red)); transform-origin: bottom center; }
.ycard.is-expense .zone i { background: linear-gradient(180deg, #f0c06a, var(--rp-gold)); }
.ycard.is-team .zone i { background: linear-gradient(180deg, #3aa09b, var(--rp-teal)); }
.ycard .col em { color: var(--rp-muted); font-size: 13px; font-style: normal; font-weight: 800; letter-spacing: .04em; }
.ycard .chart-note { margin: 4px 0 0; color: var(--rp-muted); font-size: 12px; text-align: center; }
.ycard .now { margin-top: auto; padding-top: 18px; border-top: 2px dashed var(--rp-line); }
.ycard .now .val { margin: 0; animation: fokus21-rep-pop .35s ease; }
.ycard .now strong { display: block; color: var(--rp-red); font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: clamp(26px, 2.5vw, 34px); font-weight: 850; line-height: 1.05; letter-spacing: -.04em; white-space: nowrap; }
.ycard.is-expense .now strong { color: var(--rp-gold-d); }
.ycard.is-team .now strong { color: var(--rp-teal-d); }
.ycard .now span { display: block; margin-top: 4px; color: var(--rp-muted); font-size: 13px; line-height: 1.4; }
.ycard .now em { display: inline-block; margin-top: 10px; padding: 4px 10px; border-radius: 999px; color: var(--rp-ink); background: var(--rp-gold-l); font-size: 12px; font-style: normal; font-weight: 800; }
.ycard .now .team { gap: 10px; }
.ycard .now .team p { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 2px 12px; align-items: center; margin: 0; }
.ycard .now .team strong { grid-row: 1 / span 2; font-size: 30px; }
.ycard .now .team span { margin: 0; overflow-wrap: anywhere; }
.ycard .now .team em { grid-column: 2; justify-self: start; margin-top: 2px; }
.fokus21-rep-years .ycard .now .val { display: none; }
.fokus21-rep-years[data-year="2023"] .ycard .now .val[data-y="2023"],
.fokus21-rep-years[data-year="2024"] .ycard .now .val[data-y="2024"],
.fokus21-rep-years[data-year="2025"] .ycard .now .val[data-y="2025"] { display: block; }
.fokus21-rep-years[data-year="2023"] .ycard .now .val.team[data-y="2023"],
.fokus21-rep-years[data-year="2024"] .ycard .now .val.team[data-y="2024"],
.fokus21-rep-years[data-year="2025"] .ycard .now .val.team[data-y="2025"] { display: grid; }
.fokus21-rep-years[data-year="2023"] .col[data-y="2023"],
.fokus21-rep-years[data-year="2024"] .col[data-y="2024"],
.fokus21-rep-years[data-year="2025"] .col[data-y="2025"] { opacity: 1; background: rgba(217,164,65,.14); }
@keyframes fokus21-rep-pop { from { opacity: 0; transform: translateY(8px); } } .fokus21-rep-projects { margin-bottom: 18px; }
.fokus21-rep-projects .tablist { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.fokus21-rep-projects [role="tab"] { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 8px 20px 8px 10px; border: 2px solid var(--rp-line); border-radius: 999px; color: var(--rp-ink); background: #fff; font-size: 15px; font-weight: 800; transition: all .2s ease; }
.fokus21-rep-projects [role="tab"] i { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: #fff; background: var(--rp-muted); font-size: 14px; font-style: normal; }
.fokus21-rep-projects [role="tab"]:hover { border-color: var(--rp-red); }
.fokus21-rep-projects [role="tab"][aria-selected="true"] { color: #fff; background: var(--rp-ink); border-color: var(--rp-ink); box-shadow: 0 10px 22px rgba(36,21,32,.25); }
.fokus21-rep-projects [role="tab"][aria-selected="true"] i { background: var(--rp-gold); color: var(--rp-ink); }
.fokus21-rep-projects .panel { --pc: var(--rp-teal); --pc-l: var(--rp-teal-l); display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(18px, 3vw, 40px); align-items: center; margin-bottom: 14px; padding: clamp(20px, 3vw, 34px); border: 1px solid var(--rp-line); border-radius: 18px; background: linear-gradient(135deg, var(--pc-l), #fff 62%); animation: fokus21-rep-pop .4s ease; }
.fokus21-rep-projects .panel.is-pulash { --pc: var(--rp-red); --pc-l: var(--rp-red-l); }
.fokus21-rep-projects .panel.is-stop { --pc: var(--rp-teal); --pc-l: var(--rp-teal-l); }
.fokus21-rep-projects .panel.is-tree { --pc: var(--rp-gold-d); --pc-l: #e6f3ea; }
.fokus21-rep-projects .panel figure { margin: 0; min-width: 0; }
.fokus21-rep-projects .panel figure img { display: block; width: 100%; }
.fokus21-rep-projects .body { min-width: 0; }
.fokus21-rep-projects .no { margin: 0 0 4px; color: var(--pc); font-size: 12px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.fokus21-rep-projects h3 { margin: 0 0 18px; color: var(--rp-ink); font-size: clamp(26px, 2.8vw, 36px); line-height: 1.05; letter-spacing: -.03em; }
.fokus21-rep-projects h3 small { display: block; margin-top: 6px; color: var(--rp-muted); font-size: 16px; font-weight: 700; letter-spacing: 0; }
.fokus21-rep-projects .stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 0 18px; padding: 0; list-style: none; }
.fokus21-rep-projects .stats li { padding: 12px 14px; border: 1px solid var(--rp-line); border-left: 4px solid var(--pc); border-radius: 4px 12px 12px 4px; background: rgba(255,255,255,.92); }
.fokus21-rep-projects .stats strong { display: block; color: var(--rp-ink); font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 25px; font-weight: 850; line-height: 1.05; letter-spacing: -.03em; white-space: nowrap; }
.fokus21-rep-projects .stats span { display: block; margin-top: 3px; color: var(--rp-muted); font-size: 12.5px; line-height: 1.35; }
.fokus21-rep-projects .money .bar { display: flex; gap: 3px; height: 16px; margin-bottom: 10px; }
.fokus21-rep-projects .money .bar i { display: block; flex: 0 0 calc(var(--w) - 2px); border-radius: 8px; }
.fokus21-rep-projects .money .g, .fokus21-rep-fin-grid .legend .g, .fokus21-rep-fin-grid .bars .g { background: var(--rp-red); }
.fokus21-rep-projects .money .c, .fokus21-rep-fin-grid .legend .c, .fokus21-rep-fin-grid .bars .c { background: var(--rp-gold); }
.fokus21-rep-projects .money p { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 4px 0 0; color: var(--rp-muted); font-size: 13.5px; }
.fokus21-rep-projects .money p b { color: var(--rp-ink); font-size: 15px; white-space: nowrap; }
.fokus21-rep-projects .money .dot { width: 12px; height: 12px; border-radius: 4px; }
.fokus21-rep-events { display: grid; grid-template-columns: minmax(240px, .6fr) minmax(0, 1.4fr); gap: clamp(20px, 3vw, 44px); align-items: start; margin-bottom: 18px; padding: clamp(22px, 3vw, 34px); border: 1px solid var(--rp-line); border-radius: 18px; background: var(--rp-ivory); }
.fokus21-rep-events .intro p { margin: 0 0 6px; color: var(--rp-red); font-size: 12px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.fokus21-rep-events .intro h3 { margin: 0 0 10px; color: var(--rp-ink); font-size: 24px; line-height: 1.15; letter-spacing: -.02em; }
.fokus21-rep-events .intro span { color: var(--rp-muted); font-size: 14px; line-height: 1.55; }
.fokus21-rep-events ol { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.fokus21-rep-events li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 14px; align-items: end; }
.fokus21-rep-events .t { color: var(--rp-ink); font-size: 14.5px; font-weight: 700; line-height: 1.3; }
.fokus21-rep-events li b { color: var(--rp-red); font-size: 18px; font-weight: 850; white-space: nowrap; }
.fokus21-rep-events li b small { color: var(--rp-muted); font-size: 12px; font-weight: 700; }
.fokus21-rep-events li i { position: relative; grid-column: 1 / -1; display: block; height: 14px; border-radius: 8px; background: var(--rp-track); }
.fokus21-rep-events li i::before { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--w); min-width: 8px; border-radius: inherit; background: linear-gradient(90deg, var(--rp-gold), var(--rp-red)); transform-origin: left center; transition: transform 1s cubic-bezier(.2,.7,.2,1); }
.fokus21-rep-tools { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.fokus21-rep-tools article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 22px; align-items: center; padding: 26px; border: 1px solid var(--rp-line); border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(74,40,25,.06); }
.fokus21-rep-tools h3 { margin: 0 0 8px; color: var(--rp-ink); font-size: 21px; line-height: 1.15; letter-spacing: -.02em; }
.fokus21-rep-tools p { margin: 0; color: var(--rp-muted); font-size: 14px; line-height: 1.55; }
.fokus21-rep-tools .big { display: flex; align-items: baseline; gap: 8px; margin: 2px 0 8px; color: var(--rp-teal-d); font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 54px; font-weight: 850; line-height: 1; letter-spacing: -.05em; }
.fokus21-rep-tools .big small { color: var(--rp-muted); font-size: 15px; font-weight: 700; letter-spacing: 0; }
.fokus21-rep-tools .is-agents { grid-template-columns: minmax(0, 1fr) minmax(150px, .8fr); }
.fokus21-rep-tools .dots { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 5px; }
.fokus21-rep-tools .dots i { display: block; aspect-ratio: 1; border-radius: 50%; background: var(--rp-teal); opacity: .9; }
.fokus21-rep-tools .dots i:nth-child(3n) { background: var(--rp-gold); }
.fokus21-rep-tools .dots i:nth-child(5n) { background: var(--rp-red); } .fokus21-rep-report .gauge,
.fokus21-rep-report .ring { position: relative; width: 132px; aspect-ratio: 1; flex: 0 0 auto; }
.fokus21-rep-report .gauge svg,
.fokus21-rep-report .ring svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.fokus21-rep-report .gauge circle,
.fokus21-rep-report .ring circle { fill: none; stroke-width: 13; }
.fokus21-rep-report .gauge .track,
.fokus21-rep-report .ring .track { stroke: var(--rp-track); }
.fokus21-rep-report .gauge .val { stroke: var(--rp-teal); stroke-linecap: round; transition: stroke-dasharray 1.2s cubic-bezier(.2,.7,.2,1); }
.fokus21-rep-report .gauge strong { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--rp-ink); font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 28px; font-weight: 850; letter-spacing: -.05em; white-space: nowrap; }
.fokus21-rep-report .gauge strong small { margin: 4px 0 0 1px; font-size: 14px; letter-spacing: 0; } .fokus21-rep-effect { position: relative; overflow: hidden; border-color: transparent; color: #fff; background: radial-gradient(circle at 100% 0%, rgba(217,164,65,.28), transparent 22rem), linear-gradient(150deg, #8f1a2e, #5b1226 70%, #3b0e1d); }
.fokus21-rep-effect::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 20px; background: var(--rp-orn) repeat-x; background-size: 20px 20px; opacity: .95; }
.fokus21-rep-effect .fokus21-rep-heading { margin-top: 12px; }
.fokus21-rep-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.fokus21-rep-kpi-grid article { display: flex; flex-direction: column; align-items: center; min-width: 0; padding: 26px 18px 22px; border: 1px solid rgba(255,255,255,.22); border-radius: 18px; text-align: center; background: rgba(255,255,255,.08); backdrop-filter: blur(4px); transition: transform .25s ease, background-color .25s ease; }
.fokus21-rep-kpi-grid article:hover { transform: translateY(-4px); background: rgba(255,255,255,.13); }
.fokus21-rep-kpi-grid .ring { width: 150px; margin-bottom: 16px; }
.fokus21-rep-kpi-grid .ring .track { stroke: rgba(255,255,255,.18); }
.fokus21-rep-kpi-grid .ring .val { stroke: #ffd68a; stroke-linecap: round; transition: stroke-dasharray 1.3s cubic-bezier(.2,.7,.2,1); }
.fokus21-rep-kpi-grid .ring b { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff; font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 25px; font-weight: 850; letter-spacing: -.05em; white-space: nowrap; }
.fokus21-rep-kpi-grid h3 { margin: 0 0 8px; color: #fff; font-size: 20px; line-height: 1.15; }
.fokus21-rep-kpi-grid p { margin: 0; color: #f0dfe4; font-size: 14px; line-height: 1.5; }
.fokus21-rep-kpi-grid .pair { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 8px; align-items: end; width: 100%; margin-bottom: 16px; }
.fokus21-rep-kpi-grid .pair .col { display: grid; grid-template-rows: auto 110px auto; justify-items: center; gap: 6px; }
.fokus21-rep-kpi-grid .pair b { color: #fff; font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 26px; font-weight: 850; letter-spacing: -.04em; }
.fokus21-rep-kpi-grid .pair .zone { display: flex; align-items: flex-end; width: min(100%, 64px); height: 110px; }
.fokus21-rep-kpi-grid .pair .zone i { display: block; width: 100%; height: var(--h); border-radius: 10px 10px 3px 3px; background: linear-gradient(180deg, #ff9aa9, #ef5d75); transform-origin: bottom center; }
.fokus21-rep-kpi-grid .pair .zone i.after { background: linear-gradient(180deg, #ffe6a8, #ffd68a); }
.fokus21-rep-kpi-grid .pair span { color: #f0dfe4; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.fokus21-rep-kpi-grid .pair .x { align-self: center; padding: 10px 6px; border-radius: 50%; color: var(--rp-ink); background: #ffd68a; width: 64px; height: 64px; display: grid; place-items: center; }
.fokus21-rep-kpi-grid .pair .x strong { font-size: 17px; letter-spacing: -.03em; white-space: nowrap; } .fokus21-rep-finance { background: var(--rp-ivory); }
.fokus21-rep-fin-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(260px, .85fr); gap: 16px; margin-bottom: 16px; }
.fokus21-rep-fin-grid .fin-chart,
.fokus21-rep-fin-grid .fin-share { min-width: 0; padding: 26px; border: 1px solid var(--rp-line); border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(74,40,25,.06); }
.fin-chart header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; margin-bottom: 18px; }
.fin-chart h3 { margin: 0; color: var(--rp-ink); font-size: 20px; line-height: 1.2; letter-spacing: -.02em; }
.fin-chart .legend { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.fin-chart .legend span { display: inline-flex; align-items: center; gap: 7px; color: var(--rp-muted); font-size: 12.5px; }
.fin-chart .legend i { width: 12px; height: 12px; border-radius: 4px; }
.fin-chart .row { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 14px; align-items: center; padding: 14px 0; border-top: 1px dashed var(--rp-line); }
.fin-chart .name { margin: 0; color: var(--rp-ink); font-size: 15px; font-weight: 800; line-height: 1.25; }
.fin-chart .bars { display: grid; gap: 8px; }
.fin-chart .bars p { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; margin: 0; }
.fin-chart .bars i { display: block; width: var(--w); height: 16px; min-width: 8px; border-radius: 8px; transform-origin: left center; }
.fin-chart .bars b { color: var(--rp-ink); font-size: 13.5px; white-space: nowrap; min-width: 118px; text-align: right; }
.fin-chart footer { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; margin-top: 8px; padding: 14px 16px; border-radius: 12px; background: var(--rp-gold-l); }
.fin-chart footer p { margin: 0; color: var(--rp-muted); font-size: 13px; line-height: 1.45; }
.fin-chart footer b { color: var(--rp-ink); font-size: 15px; }
.fokus21-rep-fin-grid .fin-share { display: flex; flex-direction: column; align-items: center; text-align: center; background: linear-gradient(160deg, #fff, var(--rp-teal-l)); }
.fin-share .gauge { width: 160px; margin: 6px 0 14px; }
.fin-share .gauge strong { font-size: 32px; }
.fin-share h3 { margin: 0 0 8px; color: var(--rp-ink); font-size: 21px; }
.fin-share p:not(.k) { margin: 0; color: var(--rp-muted); font-size: 14px; line-height: 1.55; }
.fokus21-rep-calc { border: 1px solid var(--rp-line); border-radius: 14px; background: #fff; overflow: hidden; }
.fokus21-rep-calc summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; color: var(--rp-ink); font-size: 15px; font-weight: 800; cursor: pointer; list-style: none; }
.fokus21-rep-calc summary::-webkit-details-marker { display: none; }
.fokus21-rep-calc summary i { position: relative; flex: 0 0 26px; height: 26px; border-radius: 50%; background: var(--rp-red); }
.fokus21-rep-calc summary i::before,
.fokus21-rep-calc summary i::after { content: ""; position: absolute; left: 7px; top: 12px; width: 12px; height: 2px; border-radius: 2px; background: #fff; transition: transform .25s ease; }
.fokus21-rep-calc summary i::after { transform: rotate(90deg); }
.fokus21-rep-calc[open] summary i::after { transform: rotate(0); }
.fokus21-rep-calc .tablewrap { overflow-x: auto; padding: 0 20px 20px; }
.fokus21-rep-calc table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 14px; }
.fokus21-rep-calc th,
.fokus21-rep-calc td { padding: 11px 12px; border-bottom: 1px solid var(--rp-line); color: var(--rp-ink); text-align: left; background: transparent; }
.fokus21-rep-calc thead th { color: var(--rp-muted); background: var(--rp-ivory); font-size: 12px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.fokus21-rep-calc tbody th { font-weight: 800; }
.fokus21-rep-calc td b { color: var(--rp-red); }
.fokus21-rep-calc .total th,
.fokus21-rep-calc .total td { background: var(--rp-gold-l); font-weight: 800; } .fokus21-rep-resources { background: linear-gradient(160deg, #fffdf9, #eaf5f3); }
.fokus21-rep-res-top { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 44px); align-items: center; margin-bottom: 18px; }
.fokus21-rep-res-top figure,
.fokus21-rep-network figure,
.fokus21-rep-media-grid figure { margin: 0; min-width: 0; }
.fokus21-rep-res-top figure img,
.fokus21-rep-network figure img,
.fokus21-rep-media-grid figure img { display: block; width: 100%; }
.fokus21-rep-res-top h3,
.fokus21-rep-network h3 { margin: 0 0 14px; color: var(--rp-ink); font-size: clamp(24px, 2.5vw, 32px); line-height: 1.1; letter-spacing: -.025em; }
.fokus21-rep-res-top ul { display: grid; gap: 8px; margin: 0 0 16px; padding: 0; list-style: none; }
.fokus21-rep-res-top li { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 12px; padding: 11px 14px; border: 1px solid var(--rp-line); border-radius: 12px; background: #fff; }
.fokus21-rep-res-top li span { color: var(--rp-muted); font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.fokus21-rep-res-top li b { color: var(--rp-ink); font-size: 14.5px; line-height: 1.35; }
.fokus21-rep-res-top .team-now { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.fokus21-rep-res-top .team-now div { padding: 14px 12px; border-radius: 14px; color: #fff; background: var(--rp-teal); text-align: center; }
.fokus21-rep-res-top .team-now div:nth-child(2) { background: var(--rp-red); }
.fokus21-rep-res-top .team-now div:nth-child(3) { background: var(--rp-ink); }
.fokus21-rep-res-top .team-now strong { display: block; font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 34px; font-weight: 850; line-height: 1; }
.fokus21-rep-res-top .team-now span { display: block; margin-top: 4px; font-size: 12px; line-height: 1.3; }
.fokus21-rep-res-top .note { margin: 12px 0 0; color: var(--rp-muted); font-size: 12.5px; }
.fokus21-rep-tech { margin-bottom: 18px; padding: 22px; border: 1px solid var(--rp-line); border-radius: 18px; background: #fff; }
.fokus21-rep-tech .grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.fokus21-rep-tech article { padding: 18px; border: 1px solid var(--rp-line); border-radius: 14px; background: var(--rp-ivory); }
.fokus21-rep-tech article i { display: inline-grid; place-items: center; width: 34px; height: 34px; margin-bottom: 10px; border-radius: 10px; color: #fff; background: var(--rp-red); font-size: 13px; font-style: normal; font-weight: 850; }
.fokus21-rep-tech article:nth-child(2) i { background: var(--rp-gold-d); }
.fokus21-rep-tech article:nth-child(3) i { background: var(--rp-teal); }
.fokus21-rep-tech h3 { margin: 0 0 6px; color: var(--rp-ink); font-size: 17px; line-height: 1.2; }
.fokus21-rep-tech p:not(.k) { margin: 0; color: var(--rp-muted); font-size: 13.5px; line-height: 1.55; }
.fokus21-rep-network { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 44px); align-items: center; }
.fokus21-rep-network ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.fokus21-rep-network li { position: relative; padding: 11px 16px 11px 42px; border: 1px solid var(--rp-line); border-radius: 12px; color: var(--rp-ink); background: #fff; font-size: 14.5px; font-weight: 700; }
.fokus21-rep-network li::before { content: ""; position: absolute; left: 15px; top: 50%; width: 14px; height: 14px; margin-top: -7px; background: var(--rp-red); transform: rotate(45deg); border-radius: 2px; }
.fokus21-rep-network li:nth-child(2)::before { background: var(--rp-teal); }
.fokus21-rep-network li:nth-child(3)::before { background: var(--rp-gold); }
.fokus21-rep-network li:nth-child(4)::before { background: var(--rp-ink); }
.fokus21-rep-network li:nth-child(5)::before { background: #7a4a9a; } .fokus21-rep-media { position: relative; overflow: hidden; border-color: transparent; color: #fff; background: radial-gradient(circle at 0% 100%, rgba(179,33,58,.45), transparent 24rem), linear-gradient(155deg, #2a1827, #1b0f1a); }
.fokus21-rep-media::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 20px; background: var(--rp-orn) repeat-x; background-size: 20px 20px; }
.fokus21-rep-media .fokus21-rep-heading { margin-top: 12px; }
.fokus21-rep-media-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(18px, 3vw, 40px); align-items: center; margin-bottom: 18px; }
.fokus21-rep-media-grid .stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.fokus21-rep-media-grid .stats article { min-width: 0; padding: 20px; border: 1px solid rgba(255,255,255,.18); border-radius: 16px; background: rgba(255,255,255,.07); }
.fokus21-rep-media-grid .stats .wide { grid-column: 1 / -1; }
.fokus21-rep-media .k { color: #ffd68a; }
.fokus21-rep-media-grid .bar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; align-items: end; margin-top: 12px; }
.fokus21-rep-media-grid .bar span { color: #eadbe0; font-size: 13.5px; }
.fokus21-rep-media-grid .bar b { color: #fff; font-size: 18px; font-weight: 850; white-space: nowrap; }
.fokus21-rep-media-grid .bar i { grid-column: 1 / -1; display: block; width: var(--w); height: 14px; min-width: 8px; border-radius: 8px; background: linear-gradient(90deg, #ffd68a, #ef5d75); transform-origin: left center; }
.fokus21-rep-media-grid article:not(.wide) { display: flex; flex-direction: column; justify-content: center; }
.fokus21-rep-media-grid article strong { color: #ffd68a; font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 46px; font-weight: 850; line-height: 1; letter-spacing: -.05em; }
.fokus21-rep-media-grid article:not(.wide) span { margin-top: 6px; color: #eadbe0; font-size: 14px; }
.fokus21-rep-media-grid .split { display: flex; gap: 3px; height: 16px; margin: 12px 0; }
.fokus21-rep-media-grid .split i { display: block; flex: 0 0 calc(var(--w) - 2px); border-radius: 8px; background: #ef5d75; }
.fokus21-rep-media-grid .split i.b { background: #6fd3cd; }
.fokus21-rep-media-grid .flyers p:not(.k) { margin: 0; color: #eadbe0; font-size: 14px; }
.fokus21-rep-media-grid .flyers b { color: #fff; }
.fokus21-rep-channels .grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.fokus21-rep-channels a,
.fokus21-rep-channels a:visited { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 2px 14px; align-items: center; padding: 16px 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 14px; color: #fff; background: rgba(255,255,255,.07); text-decoration: none; }
.fokus21-rep-channels a:hover { transform: translateY(-3px); border-color: #ffd68a; background: rgba(255,255,255,.13); }
.fokus21-rep-channels i { grid-row: 1 / span 2; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; color: var(--rp-ink); background: #ffd68a; font-size: 13px; font-style: normal; font-weight: 850; }
.fokus21-rep-channels b { font-size: 17px; }
.fokus21-rep-channels span { color: #eadbe0; font-size: 12.5px; line-height: 1.4; overflow-wrap: anywhere; } .fokus21-rep-method { position: relative; overflow: hidden; padding-bottom: calc(clamp(30px, 5vw, 60px) + 20px); }
.fokus21-rep-method::after { content: ""; position: absolute; inset: auto 0 0 0; height: 20px; background: var(--rp-orn) repeat-x; background-size: 20px 20px; }
.fokus21-rep-method-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.fokus21-rep-method-grid article { padding: 22px; border: 1px solid var(--rp-line); border-radius: 14px; background: #fff; }
.fokus21-rep-method-grid article:nth-child(1) { border-top: 5px solid var(--rp-red); }
.fokus21-rep-method-grid article:nth-child(2) { border-top: 5px solid var(--rp-gold); }
.fokus21-rep-method-grid article:nth-child(3) { border-top: 5px solid var(--rp-teal); }
.fokus21-rep-method-grid article:nth-child(4) { border-top: 5px solid var(--rp-ink); }
.fokus21-rep-method-grid span { color: var(--rp-red); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.fokus21-rep-method-grid h3 { margin: 8px 0 9px; color: var(--rp-ink); font-size: 18px; line-height: 1.22; }
.fokus21-rep-method-grid p { margin: 0; color: var(--rp-muted); font-size: 13.5px; line-height: 1.58; } .fokus21-rep-report.is-js .zone i[data-reveal]:not(.is-in) { transform: scaleY(0); }
.fokus21-rep-report.is-js .bars i[data-reveal]:not(.is-in),
.fokus21-rep-report.is-js .bar i[data-reveal]:not(.is-in) { transform: scaleX(0); }
.fokus21-rep-report.is-js .zone i[data-reveal],
.fokus21-rep-report.is-js .bars i[data-reveal],
.fokus21-rep-report.is-js .bar i[data-reveal] { transition: transform 1s cubic-bezier(.2,.7,.2,1); }
.fokus21-rep-report.is-js .gauge .val[data-reveal]:not(.is-in),
.fokus21-rep-report.is-js .ring .val[data-reveal]:not(.is-in) { stroke-dasharray: 0 100; }
.fokus21-rep-report.is-js .fokus21-rep-events li i[data-reveal]:not(.is-in)::before { transform: scaleX(0); } @media (max-width: 1180px) {
.fokus21-rep-blocks,
.fokus21-rep-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fokus21-rep-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fokus21-rep-nav { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.fokus21-rep-nav a:nth-child(5) { border-left: 0; }
.fokus21-rep-nav a:nth-child(n+5) { border-top: 1px solid var(--rp-line); }
.fokus21-rep-ycards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fokus21-rep-ycards .is-team { grid-column: 1 / -1; }
.fokus21-rep-fin-grid { grid-template-columns: 1fr; }
.fokus21-rep-method-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 960px) {
.fokus21-rep-report { padding-top: 18px; }
.fokus21-rep-hero { grid-template-columns: 1fr; }
.fokus21-rep-hero-art { max-width: 760px; }
.fokus21-rep-heading { grid-template-columns: 1fr; gap: 9px; }
.fokus21-rep-heading > p { margin-top: 0; }
.fokus21-rep-heading > span { grid-column: auto; }
.fokus21-rep-projects .panel { grid-template-columns: 1fr; }
.fokus21-rep-projects .panel figure { max-width: 460px; margin: 0 auto; }
.fokus21-rep-events,
.fokus21-rep-tools,
.fokus21-rep-res-top,
.fokus21-rep-network,
.fokus21-rep-media-grid { grid-template-columns: 1fr; }
.fokus21-rep-res-top figure,
.fokus21-rep-network figure,
.fokus21-rep-media-grid figure { max-width: 520px; margin: 0 auto; }
.fokus21-rep-tech .grid,
.fokus21-rep-channels .grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
.fokus21-rep-blocks,
.fokus21-rep-kpi-grid,
.fokus21-rep-ycards,
.fokus21-rep-method-grid { grid-template-columns: 1fr; }
.fokus21-rep-ycards .is-team { grid-column: auto; }
.fokus21-rep-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fokus21-rep-nav a + a { border-left: 0; }
.fokus21-rep-nav a:nth-child(even) { border-left: 1px solid var(--rp-line); }
.fokus21-rep-nav a:nth-child(n+3) { border-top: 1px solid var(--rp-line); }
.fin-chart .row { grid-template-columns: 1fr; gap: 8px; }
.fin-chart footer { grid-template-columns: 1fr; }
.fokus21-rep-media-grid .stats { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
.fokus21-rep-report { padding-bottom: 36px; }
.fokus21-rep-report p { font-size: 15px; }
.fokus21-rep-hero { padding: 30px 18px 46px; border-radius: 18px; gap: 26px; }
.fokus21-rep-brand { margin-bottom: 24px; }
.fokus21-rep-eyebrow { font-size: 11px; }
.fokus21-rep-hero h1 { font-size: clamp(32px, 11vw, 44px); }
.fokus21-rep-lead { font-size: 16px; }
.fokus21-rep-hero-actions { display: grid; }
.fokus21-rep-hero-actions a { width: 100%; }
.fokus21-rep-hero-art img { border-radius: 14px; }
.fokus21-rep-kpis { grid-template-columns: 1fr; gap: 9px; margin-top: 0; }
.fokus21-rep-kpis > div { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; }
.fokus21-rep-kpis dt { font-size: 28px; }
.fokus21-rep-kpis dd { margin: 0; font-size: 13px; }
.fokus21-rep-section { padding: 26px 16px; border-radius: 15px; }
.fokus21-rep-heading { margin-bottom: 24px; }
.fokus21-rep-heading h2 { font-size: clamp(23px, 6.8vw, 28px); }
.fokus21-rep-yearbar button { flex: 1 1 0; min-width: 0; padding: 8px 6px; }
.fokus21-rep-yearbar > span { flex: 0 0 100%; }
.fokus21-rep-ycards .ycard { padding: 20px 14px; }
.ycard .col b { font-size: 13px; }
.fokus21-rep-projects .tablist { flex-direction: column; }
.fokus21-rep-projects [role="tab"] { width: 100%; }
.fokus21-rep-projects .stats { grid-template-columns: 1fr; }
.fokus21-rep-tools article,
.fokus21-rep-tools .is-agents { grid-template-columns: 1fr; justify-items: start; padding: 22px 16px; }
.fokus21-rep-tools .dots { width: 100%; }
.fokus21-rep-kpi-grid article { padding: 22px 14px 20px; }
.fin-chart .bars b { min-width: 0; }
.fokus21-rep-fin-grid .fin-chart,
.fokus21-rep-fin-grid .fin-share { padding: 20px 14px; }
.fokus21-rep-res-top li { grid-template-columns: 1fr; gap: 2px; }
.fokus21-rep-res-top .team-now { gap: 6px; }
.fokus21-rep-res-top .team-now strong { font-size: 28px; }
.fokus21-rep-tech { padding: 14px; }
.fokus21-rep-media-grid .stats article { padding: 16px 14px; }
.fokus21-rep-events { padding: 20px 14px; }
}
@media (prefers-reduced-motion: reduce) {
.fokus21-rep-report *,
.fokus21-rep-report *::before,
.fokus21-rep-report *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media print {
.fokus21-rep-report { background: #fff; }
.fokus21-rep-nav,
.fokus21-rep-dots { display: none !important; }
.fokus21-rep-section,
.fokus21-rep-report article { break-inside: avoid; box-shadow: none; }
.fokus21-rep-effect,
.fokus21-rep-media { color: var(--rp-ink); background: #fff; }
.fokus21-rep-report [hidden] { display: block !important; }
} .fokus21-rep-events .t,
.fokus21-rep-res-top .team-now span,
.ycard .now .team span { overflow-wrap: anywhere; hyphens: auto; }
@media (max-width: 480px) {
.ycard .now .team span { font-size: 12.5px; }
.fokus21-rep-res-top .team-now span { font-size: 11.5px; }
}