:root { --ink:#14110f; --paper:#f1ecdf; --red:#66001a; --blue:#4d65ff; --line:rgba(20,17,15,.22); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; width:100%; }
main { overflow:hidden; }
.topbar { position:fixed; z-index:50; top:18px; left:50%; transform:translateX(-50%); width:min(1120px,calc(100% - 32px)); display:flex; align-items:center; justify-content:space-between; padding:12px 14px; border:1px solid rgba(255,255,255,.35); border-radius:999px; background:rgba(20,17,15,.78); color:white; backdrop-filter:blur(16px); }
.logo { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:var(--red); color:white; font-size:22px; line-height:1; font-weight:900; }
.topbar nav { display:flex; gap:28px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.topbar nav a:hover { color:#dca0b1; }
.mini-cta { padding:10px 15px; border:1px solid rgba(255,255,255,.5); border-radius:999px; font-size:12px; font-weight:700; }
.mobile-menu { display:none; }
.hero { min-height:100svh; position:relative; display:grid; grid-template-columns:1.1fr .9fr; padding:120px max(5vw,28px) 56px; background:var(--red); color:white; }
.hero-copy { align-self:center; z-index:2; }
.eyebrow,.section-index { font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.hero h1,.manifesto h2,.section-heading h2,footer h2 { margin:18px 0; font-family:Impact, "Arial Black", sans-serif; font-weight:900; text-transform:uppercase; letter-spacing:-.055em; line-height:.94; }
.hero h1 { max-width:none; font-size:clamp(48px,6vw,96px); white-space:nowrap; }
.hero-lead { max-width:510px; color:rgba(255,255,255,.85); font-size:clamp(22px,2.5vw,38px); line-height:1.08; letter-spacing:-.035em; }
.hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.button { padding:16px 22px; border-radius:999px; border:1.5px solid currentColor; font-weight:800; text-transform:uppercase; font-size:12px; letter-spacing:.06em; }
.button.primary { background:var(--ink); color:white; }
.button:hover { transform:translateY(-2px); }
.hero-visual { margin:0; position:relative; align-self:center; height:min(76vh,780px); }
.hero-visual::after { content:""; position:absolute; z-index:0; left:8%; right:4%; bottom:0; height:28%; border-radius:48% 52% 44% 56% / 54% 42% 58% 46%; background:#4d0014; transform:rotate(-3deg); }
.hero-visual img { position:relative; z-index:1; height:100%; object-fit:contain; object-position:center bottom; }
.burst { position:absolute; right:-36px; top:9%; display:grid; place-items:center; width:130px; aspect-ratio:1; border-radius:50%; background:var(--blue); color:white; font-weight:900; text-align:center; text-transform:uppercase; transform:rotate(10deg); }
.scroll-note { position:absolute; bottom:28px; left:50%; font-size:11px; text-transform:uppercase; writing-mode:vertical-rl; }
.manifesto { padding:110px max(5vw,28px) 50px; }
.manifesto-grid { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:start; }
.manifesto h2 { font-size:clamp(62px,8.6vw,138px); }
.about-groups { display:grid; grid-template-columns:1fr 1.35fr; gap:7vw; margin-top:58px; }
.about-group h3 { margin:0 0 28px; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(32px,3.5vw,54px); line-height:1.05; text-transform:uppercase; }
.about-group .strength-grid { grid-template-columns:1fr; margin-top:0; }
.manifesto-copy { padding-top:30px; max-width:640px; }
.manifesto-copy .big-copy { font-size:clamp(26px,3.1vw,48px); line-height:1.04; letter-spacing:-.045em; }
.manifesto-copy p:last-child { max-width:500px; font-size:17px; line-height:1.5; }
.strength-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-top:70px; }
.strength-grid article { min-height:280px; padding:22px; border:1.5px solid var(--ink); border-radius:22px; display:flex; flex-direction:column; }
.strength-grid span { font-family:Impact,sans-serif; font-size:38px; color:var(--red); }
.strength-grid h3 { margin:44px 0 12px; font-size:22px; line-height:1; text-transform:uppercase; }
.strength-grid p { margin:auto 0 0; font-size:14px; line-height:1.45; }
.topic-row { display:flex; gap:10px; flex-wrap:wrap; margin-top:70px; border-top:1px solid var(--line); padding-top:24px; }
.topic-row span { padding:11px 15px; border:1px solid var(--ink); border-radius:999px; font-size:12px; font-weight:700; text-transform:uppercase; }
.numbers { display:grid; grid-template-columns:repeat(4,1fr); border-block:2px solid var(--ink); background:var(--blue); color:white; }
.numbers div { padding:42px 24px; border-right:1px solid rgba(255,255,255,.5); }
.numbers div:last-child { border:0; }
.numbers strong { display:block; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(44px,6vw,96px); letter-spacing:-.04em; }
.numbers span { display:block; margin-top:8px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.stats,.audience,.cases,.formats { padding:110px max(5vw,28px); }
.stats { background:var(--ink); color:white; }
.section-heading { display:grid; grid-template-columns:.7fr 1.3fr; gap:7vw; margin-bottom:60px; }
.section-heading h2 { font-size:clamp(70px,10vw,150px); grid-column:1/-1; }
.section-heading > p:last-child { max-width:430px; line-height:1.5; align-self:end; }
.stat-shots { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.shot { aspect-ratio:9/16; padding:24px; border-radius:24px; display:flex; flex-direction:column; justify-content:space-between; border:1px solid rgba(255,255,255,.28); }
.shot span { font-family:Impact,sans-serif; font-size:58px; opacity:.35; }
.shot b { font-size:clamp(24px,3vw,42px); line-height:.95; text-transform:uppercase; }
.shot b em { display:block; margin-top:8px; font-family:Arial,sans-serif; font-size:12px; font-style:normal; letter-spacing:.08em; line-height:1.2; }
.shot small { text-transform:uppercase; letter-spacing:.08em; }
.shot-data { display:grid; gap:8px; }
.shot-data strong { font-family:Impact,"Arial Black",sans-serif; font-size:clamp(40px,5vw,72px); line-height:.9; }
.shot-red { background:var(--red); color:white; transform:rotate(-2deg); }
.shot-cream { background:var(--paper); color:var(--ink); transform:translateY(34px); }
.shot-blue { background:var(--blue); transform:rotate(2deg); }
.audience { background:var(--paper); }
.audience-summary { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
.audience-summary article,.audience-charts article { padding:34px; border:2px solid var(--ink); border-radius:24px; background:#fffdf6; }
.audience-summary small { display:block; text-transform:uppercase; letter-spacing:.1em; }
.audience-summary strong { display:block; margin:18px 0 10px; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(66px,9vw,140px); line-height:.8; }
.audience-summary span { font-size:12px; text-transform:uppercase; letter-spacing:.06em; }
.gender-track,.bar-row > div { overflow:hidden; height:14px; margin:22px 0 12px; border-radius:99px; background:#d8d1c5; }
.gender-track i,.bar-row i { display:block; height:100%; background:var(--red); border-radius:inherit; }
.audience-charts { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.audience-charts h3 { margin:0 0 30px; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(42px,5vw,76px); text-transform:uppercase; }
.bar-row { display:grid; grid-template-columns:92px 1fr 58px; gap:14px; align-items:center; margin:15px 0; }
.bar-row > div { margin:0; height:12px; }
.bar-row b { text-align:right; }
.cases { background:var(--paper); }
.section-heading.horizontal { display:flex; align-items:end; justify-content:space-between; }
.section-heading.horizontal h2 { font-size:clamp(84px,12vw,180px); margin-bottom:0; }
.case-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.case-card { display:grid; grid-template-columns:1.05fr .95fr; min-height:420px; border:2px solid var(--ink); background:#fffdf6; transition:.2s ease; }
.case-card:hover { transform:translate(-5px,-5px); box-shadow:9px 9px 0 var(--ink); }
.case-image { position:relative; min-height:340px; overflow:hidden; border-right:2px solid var(--ink); }
.case-image img { height:100%; object-fit:cover; }
.case-image span { position:absolute; top:12px; left:12px; padding:8px 10px; border-radius:50%; background:var(--red); color:white; font-weight:900; }
.case-body { padding:24px; display:flex; flex-direction:column; }
.case-body > p { font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.case-body h3 { font-family:Impact,"Arial Black",sans-serif; font-size:clamp(34px,4vw,62px); line-height:.9; margin:20px 0; }
.case-body > div { line-height:1.45; }
.case-body b { margin-top:auto; padding-top:24px; font-size:12px; text-transform:uppercase; }
.formats { background:var(--red); color:white; }
.format-list { border-top:2px solid white; }
.format-list article { display:grid; grid-template-columns:80px 1fr 1fr; gap:28px; align-items:center; padding:32px 0; border-bottom:1px solid rgba(255,255,255,.55); }
.format-list span { font-family:Impact,sans-serif; font-size:40px; }
.format-list h3 { margin:0; font-size:clamp(26px,3vw,44px); text-transform:uppercase; letter-spacing:-.04em; }
.format-list p { max-width:520px; line-height:1.5; }
.price-note { display:block; width:max-content; margin:50px auto 0; padding:14px 18px; border-radius:999px; background:var(--ink); color:white; font-weight:800; text-align:center; text-transform:uppercase; font-size:12px; }
.mosaic { display:grid; grid-template-columns:1.2fr .8fr 1fr 1.2fr; min-height:70vh; background:var(--ink); gap:4px; }
.mosaic img { height:100%; object-fit:cover; filter:saturate(.8); }
.mosaic-copy { display:grid; place-items:center; padding:20px; background:var(--blue); color:white; font-family:Impact,sans-serif; font-size:clamp(48px,6vw,90px); text-transform:uppercase; line-height:.82; text-align:center; transform:rotate(-3deg) scale(1.04); z-index:2; }
footer { padding:80px max(5vw,28px) 30px; background:var(--ink); color:white; }
footer h2 { max-width:1050px; font-size:clamp(62px,10vw,150px); line-height:1.02; }
footer h2 i { color:var(--red); font-style:normal; }
.instagram-direct { display:inline-flex; margin:14px 0 70px; padding:16px 22px; border-radius:999px; background:var(--red); color:white; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.social-title { margin:0 0 24px; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(36px,5vw,70px); line-height:1.05; text-transform:uppercase; }
.contact-links { margin:70px 0; border-top:1px solid rgba(255,255,255,.4); }
.contact-links a { display:flex; justify-content:space-between; padding:22px 0; border-bottom:1px solid rgba(255,255,255,.4); font-size:clamp(24px,4vw,56px); text-transform:uppercase; }
.contact-links a:hover { color:var(--red); }
.footer-bottom { display:flex; justify-content:space-between; padding-top:28px; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }

@media (max-width:900px) {
  .topbar nav { display:none; }
  .hero { grid-template-columns:1fr; gap:50px; padding-top:105px; }
  .hero-visual { width:min(88%,560px); justify-self:center; height:62vh; }
  .burst { right:-24px; width:105px; }
  .scroll-note { display:none; }
  .manifesto-grid,.section-heading { grid-template-columns:1fr; gap:10px; }
  .strength-grid { grid-template-columns:repeat(2,1fr); }
  .numbers { grid-template-columns:repeat(2,1fr); }
  .numbers div:nth-child(2) { border-right:0; }
  .numbers div:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.5); }
  .case-grid { grid-template-columns:1fr; }
  .audience-summary,.audience-charts { grid-template-columns:1fr; }
  .mosaic { grid-template-columns:1fr 1fr; }
  .section-heading.horizontal { display:block; }
  .about-groups { grid-template-columns:1fr; gap:56px; }
}
@media (max-width:620px) {
  .mini-cta { padding:9px 11px; }
  .hero h1 { font-size:20vw; }
  .hero-visual { width:94%; height:56vh; }
  .hero-lead { font-size:26px; }
  .manifesto,.stats,.audience,.cases,.formats { padding:76px 20px; }
  .manifesto h2,.section-heading h2 { font-size:16vw; }
  .stat-shots { grid-template-columns:1fr; gap:28px; }
  .audience-summary article,.audience-charts article { padding:24px; }
  .strength-grid { grid-template-columns:1fr; margin-top:44px; }
  .strength-grid article { min-height:230px; }
  .bar-row { grid-template-columns:72px 1fr 54px; gap:8px; font-size:13px; }
  .shot { aspect-ratio:4/5; }
  .shot-cream { transform:none; }
  .case-card { grid-template-columns:1fr; }
  .case-image { border-right:0; border-bottom:2px solid var(--ink); min-height:390px; }
  .format-list article { grid-template-columns:50px 1fr; gap:14px; }
  .format-list article p { grid-column:2; margin-top:0; }
  .mosaic { min-height:auto; grid-template-columns:1fr 1fr; }
  .mosaic > * { aspect-ratio:3/4; }
  footer { padding:76px 20px 24px; }
  footer h2 { font-size:19vw; }
  .instagram-direct { margin-bottom:56px; }
  .footer-bottom { flex-wrap:wrap; gap:18px; }
}

/* revision-8 */
.manager-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.manager-stats article { position:relative; min-height:164px; padding:22px 20px 18px; border-radius:20px; background:var(--red); color:white; display:flex; flex-direction:column; }
.manager-stats article:nth-child(2) { background:var(--paper); color:var(--ink); }
.manager-stats article:nth-child(3) { background:#fff; color:var(--ink); }
.manager-stats article:nth-child(5) { background:var(--paper); color:var(--ink); }
.manager-stats small,.content-reach span,.content-reach small { font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.manager-stats article > small { max-width:52%; line-height:1.3; }
.manager-stats strong { margin:auto 0 4px; padding-top:35px; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(34px,4.2vw,60px); line-height:.9; text-transform:uppercase; }
.manager-stats p { margin:0; font-size:13px; }
.card-proof { position:absolute; top:14px; right:14px; padding:7px 9px; border:1px solid currentColor; border-radius:999px; font-size:8px; font-weight:800; letter-spacing:.06em; line-height:1; text-transform:uppercase; opacity:.78; }
.card-proof:hover { opacity:1; }
.content-reach { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:14px; }
.content-reach > div { padding:22px 24px; border:1px solid rgba(255,255,255,.32); border-radius:18px; }
.content-reach b { display:block; margin:14px 0; font-size:clamp(27px,3vw,42px); }
.content-reach i { display:block; height:7px; margin-bottom:12px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.18); }
.content-reach em { display:block; height:100%; min-width:8px; border-radius:inherit; background:var(--red); }
.content-reach small { color:rgba(255,255,255,.7); }
.stats-note { max-width:440px; align-self:end; }
.stats-note p { margin:0 0 18px; line-height:1.5; }
.insights-proof { display:inline-flex; width:max-content; padding:11px 15px; border:1px solid rgba(255,255,255,.55); border-radius:999px; color:white; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.insights-proof:hover { background:white; color:var(--ink); }
.format-list article.special-format { border:0 !important; }
@media (max-width:900px) {
  .manager-stats,.content-reach { grid-template-columns:1fr; }
  .manager-stats article { min-height:150px; }
}
@media (max-width:620px) {
  .topbar { justify-content:flex-start; gap:10px; }
  .topbar .mini-cta { margin-left:auto; }
  .mobile-menu { display:block; position:relative; }
  .mobile-menu summary { width:40px; height:40px; display:grid; place-content:center; gap:4px; border:1px solid rgba(255,255,255,.45); border-radius:50%; cursor:pointer; list-style:none; }
  .mobile-menu summary::-webkit-details-marker { display:none; }
  .mobile-menu summary span { display:block; width:16px; height:1.5px; background:white; transition:.2s ease; }
  .mobile-menu[open] summary span:nth-child(1) { transform:translateY(5.5px) rotate(45deg); }
  .mobile-menu[open] summary span:nth-child(2) { opacity:0; }
  .mobile-menu[open] summary span:nth-child(3) { transform:translateY(-5.5px) rotate(-45deg); }
  .mobile-menu > div { position:absolute; right:0; top:50px; width:min(260px,calc(100vw - 40px)); padding:12px; border-radius:18px; background:var(--ink); box-shadow:0 14px 35px rgba(0,0,0,.28); }
  .mobile-menu > div a { display:block; padding:12px 10px; border-bottom:1px solid rgba(255,255,255,.16); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
  .mobile-menu > div a:last-child { border-bottom:0; }
  .manager-stats article { min-height:132px; padding:16px; }
  .manager-stats strong { padding-top:32px; font-size:38px; }
  .card-proof { top:11px; right:11px; padding:6px 8px; font-size:7px; }
  .content-reach > div { padding:18px; }
  .example-links { justify-items:start; }
  .format-list article > div .example-links a { width:max-content; max-width:100%; }
  .format-list article > div .example-links a { padding:5px 0; border:0; border-bottom:1px solid rgba(255,255,255,.55); border-radius:0; line-height:1.25; }
  .special-format .example-links { gap:5px; }
}

/* revision-7 */
.hero h1 { letter-spacing:.015em; }
.hero-visual::after { display:none; }
.hero-visual img {
  -webkit-mask-image:linear-gradient(to bottom, transparent 0%, #000 11%, #000 78%, transparent 100%);
  mask-image:linear-gradient(to bottom, transparent 0%, #000 11%, #000 78%, transparent 100%);
  transform:translateY(3%);
}
.case-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.case-card { border:0; background:#fffdf6; overflow:hidden; border-radius:14px; }
.case-card:hover { transform:translateY(-4px); box-shadow:0 10px 24px rgba(20,17,15,.18); }
.case-image { aspect-ratio:4/5; border:0; }
.case-body { min-height:108px; padding:11px 12px 12px; }
.case-body > p { font-size:8px; }
.case-body h3 { margin:7px 0; font-size:clamp(18px,2vw,27px); }
.case-body b { padding-top:8px; font-size:8px; }
.format-list article.special-format { margin:0; padding:32px 0; border-left:0; border-right:0; border-top:0; border-radius:0; }
@media (max-width:1100px) { .case-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:760px) { .case-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:620px) {
  .hero h1 { font-size:8.8vw; letter-spacing:.02em; }
  .hero-visual { height:51vh; }
  .hero-visual img { transform:translateY(1%); }
  .case-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .case-body { min-height:100px; padding:10px; }
  .case-body h3 { font-size:18px; }
  .format-list article.special-format { padding:28px 0; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none !important; } }

/* revision-4 */
.button.no-outline { border-color:transparent; }
.strength-grid { display:grid; grid-template-columns:1fr; gap:0; margin-top:70px; border-top:1px solid var(--line); }
.strength-grid article { min-height:0; padding:24px 0; border:0; border-bottom:1px solid var(--line); border-radius:0; display:grid; grid-template-columns:76px 1fr; align-items:center; gap:24px; }
.strength-grid span { width:56px; height:56px; display:grid; place-items:center; border-radius:50%; background:var(--red); color:white; font-family:Arial,sans-serif; font-size:24px; }
.strength-grid p { margin:0; max-width:950px; font-size:clamp(20px,2.4vw,36px); line-height:1.15; letter-spacing:-.025em; }
.instagram-shot { padding:0 !important; overflow:hidden; background:#080d11 !important; display:flex; align-items:center; }
.instagram-shot img { width:100%; height:100%; object-fit:contain; }
.case-grid { grid-template-columns:repeat(4,1fr); }
.case-card { display:block; min-height:0; }
.case-image { min-height:0; aspect-ratio:4/5; border-right:0; border-bottom:2px solid var(--ink); }
.case-body { min-height:255px; padding:18px; }
.case-body h3 { font-size:clamp(28px,3vw,44px); margin:14px 0; }
.case-body > div { font-size:13px; }
.show-more { display:block; margin:38px auto 0; padding:16px 28px; border:1.5px solid var(--ink); border-radius:999px; background:transparent; color:var(--ink); font:inherit; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; opacity:1; cursor:default; }
.format-list article > div a { display:inline-block; margin-top:10px; border-bottom:1px solid currentColor; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
@media (max-width:1100px) { .case-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:620px) {
  .strength-grid article { grid-template-columns:56px 1fr; gap:14px; }
  .strength-grid span { width:46px; height:46px; font-size:20px; }
  .case-grid { grid-template-columns:1fr; }
  .case-body { min-height:220px; }
}

/* revision-5 */
.strength-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 5vw; border-top:0; }
.strength-grid article { padding:0; border-bottom:0; grid-template-columns:34px 1fr; gap:12px; align-items:start; }
.strength-grid span { width:28px; height:28px; border-radius:50%; font-size:10px; font-weight:800; }
.strength-grid p { font-size:clamp(15px,1.5vw,20px); line-height:1.35; letter-spacing:-.01em; }
.gender-card h3 { margin:0 0 30px; font-family:Impact,"Arial Black",sans-serif; font-size:clamp(42px,5vw,76px); text-transform:uppercase; }
.gender-card .bar-row { grid-template-columns:105px 1fr 64px; }
.gender-card .male { background:#c683a0; }
.section-heading h2 { line-height:.94; }
.format-list article > div { min-width:0; }
.format-list article > div p { margin:0; }
@media (max-width:620px) {
  .hero h1 { font-size:9.5vw; white-space:nowrap; letter-spacing:-.06em; }
  .hero-lead { font-size:22px; line-height:1.16; }
  .manifesto h2,.section-heading h2 { font-size:15vw; line-height:.98; }
  .strength-grid { grid-template-columns:1fr; gap:22px; }
  .strength-grid article { grid-template-columns:30px minmax(0,1fr); gap:12px; }
  .strength-grid span { width:26px; height:26px; font-size:9px; }
  .strength-grid p { font-size:15px; line-height:1.4; }
  .gender-card .bar-row { grid-template-columns:78px minmax(0,1fr) 52px; }
  .format-list article { grid-template-columns:42px minmax(0,1fr); gap:10px 14px; align-items:start; padding:28px 0; }
  .format-list article > span { grid-column:1; grid-row:1; font-size:34px; }
  .format-list article > h3 { grid-column:2; grid-row:1; font-size:26px; line-height:1.04; overflow-wrap:normal; word-break:normal; }
  .format-list article > div { grid-column:2; grid-row:2; }
  .format-list article > div p { font-size:15px; line-height:1.45; }
  .format-list article > div a { font-size:10px; line-height:1.4; }
}

/* revision-6 */
.case-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.case-card { min-height:0; border-width:1.5px; }
.case-image { aspect-ratio:1/1; border-bottom-width:1.5px; }
.case-body { min-height:138px; padding:14px; }
.case-body > p { margin:0; font-size:9px; }
.case-body h3 { margin:10px 0; font-size:clamp(22px,2.4vw,34px); line-height:.95; }
.case-body b { padding-top:12px; font-size:10px; }
.case-more { margin-top:34px; }
.case-more summary { width:max-content; margin:0 auto; padding:15px 24px; border:1.5px solid var(--ink); border-radius:999px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; cursor:pointer; list-style:none; }
.case-more summary::-webkit-details-marker { display:none; }
.case-more summary::after { content:" +"; }
.case-more[open] summary { margin-bottom:34px; }
.case-more[open] summary::after { content:" –"; }
.case-grid-more { animation:reveal-cases .28s ease both; }
@keyframes reveal-cases { from { opacity:0; transform:translateY(10px); } }
.example-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.format-list article > div .example-links a { margin:0; padding:9px 12px; border:1px solid rgba(255,255,255,.65); border-radius:999px; font-size:9px; text-decoration:none; }
.format-list article.special-format { margin:18px 0; padding:32px 24px; border:1.5px solid rgba(255,255,255,.75); border-radius:24px; }
@media (max-width:900px) { .case-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) {
  .case-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .case-body { min-height:120px; padding:11px; }
  .case-body h3 { font-size:22px; }
  .case-image span { top:8px; left:8px; padding:6px 8px; font-size:10px; }
  .format-list article.special-format { padding:24px 16px; }
  .example-links { display:grid; grid-template-columns:1fr; }
  .format-list article > div .example-links a { width:100%; }
}

/* revision-11 */
.format-list article > div p { opacity:.8; }
.format-list article.special-format {
  margin:0;
  padding:32px 0;
  border:0 !important;
  border-bottom:1px solid rgba(255,255,255,.55) !important;
  border-radius:0;
}
@media (max-width:620px) {
  .format-list article.special-format {
    grid-template-columns:42px minmax(0,1fr);
    gap:10px 14px;
    padding:28px 0;
  }
  .example-links { display:flex; align-items:flex-start; gap:6px; }
  .format-list article > div .example-links a {
    display:inline-flex;
    width:max-content;
    max-width:100%;
    padding:5px 0;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.55);
    border-radius:0;
    line-height:1.25;
  }
}

/* revision-19 */
.section-heading h2,
footer h2 { line-height:1.1; }
.social-title { margin-bottom:8px; }
.social-title + .contact-links { margin-top:0; border-top:0; }
.social-title + .contact-links a:first-child { border-top:0; }

@media (max-width:1100px) and (min-width:901px) {
  .topbar nav { gap:16px; font-size:10px; }
}

@media (max-width:900px) {
  .topbar { justify-content:flex-start; gap:10px; }
  .topbar .mini-cta { margin-left:auto; }
  .mobile-menu { display:block; position:relative; }
  .mobile-menu summary { width:40px; height:40px; display:grid; place-content:center; gap:4px; border:1px solid rgba(255,255,255,.45); border-radius:50%; cursor:pointer; list-style:none; }
  .mobile-menu summary::-webkit-details-marker { display:none; }
  .mobile-menu summary span { display:block; width:16px; height:1.5px; background:white; transition:.2s ease; }
  .mobile-menu[open] summary span:nth-child(1) { transform:translateY(5.5px) rotate(45deg); }
  .mobile-menu[open] summary span:nth-child(2) { opacity:0; }
  .mobile-menu[open] summary span:nth-child(3) { transform:translateY(-5.5px) rotate(-45deg); }
  .mobile-menu > div { position:absolute; right:0; top:50px; width:min(260px,calc(100vw - 40px)); padding:12px; border-radius:18px; background:var(--ink); box-shadow:0 14px 35px rgba(0,0,0,.28); }
  .mobile-menu > div a { display:block; padding:12px 10px; border-bottom:1px solid rgba(255,255,255,.16); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
  .mobile-menu > div a:last-child { border-bottom:0; }
}

@media (max-width:620px) {
  .manifesto h2,
  .section-heading h2,
  footer h2 { line-height:1.08; }
}

/* revision-20 */
.hero-visual img {
  -webkit-mask-image:radial-gradient(ellipse 78% 82% at 50% 48%, #000 58%, transparent 100%);
  mask-image:radial-gradient(ellipse 78% 82% at 50% 48%, #000 58%, transparent 100%);
  object-fit:contain;
  object-position:center center;
  transform:none;
}

/* revision-21 */
.hero-visual {
  align-self:end;
  margin-bottom:-56px;
}

/* revision-22 */
.hero h1 {
  line-height:1.12;
  margin-block:24px;
}
.manifesto h2,
.section-heading h2,
footer h2 {
  line-height:1.16;
}
.case-body .case-format {
  color:var(--ink);
  opacity:.62;
}
.case-body b {
  align-self:flex-start;
  margin-top:auto;
  padding:10px 14px;
  border-radius:999px;
  background:var(--red);
  color:#fff;
  font-size:10px;
  line-height:1;
  letter-spacing:.06em;
}
.case-card:hover .case-body b,
.case-card:focus-visible .case-body b {
  background:#8b0024;
}
@media (max-width:620px) {
  .hero h1 {
    line-height:1.16;
    margin-block:20px;
  }
  .manifesto h2,
  .section-heading h2,
  footer h2 { line-height:1.2; }
  .case-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .case-body {
    min-height:265px;
    padding:11px;
  }
  .case-body > p:first-child { font-size:8px; }
  .case-body h3 {
    font-size:20px;
    line-height:1.02;
  }
  .case-body .case-task {
    font-size:10px;
    line-height:1.38;
  }
  .case-body .case-format {
    margin-top:10px;
    font-size:8px;
    line-height:1.3;
  }
  .case-body b {
    margin-top:14px;
    padding:9px 11px;
    font-size:9px;
  }
}
@media (max-width:370px) {
  .case-grid { grid-template-columns:1fr; }
  .case-body { min-height:0; }
}
.hero-visual img {
  object-position:center bottom;
}
.case-body {
  min-height:290px;
  display:flex;
  flex-direction:column;
}
.case-body .case-task {
  margin:0;
  font-size:12px;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
}
.case-task strong { font-weight:800; }
.case-body .case-format {
  margin:14px 0 0;
  color:var(--red);
  font-size:9px;
  line-height:1.35;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.case-body b { margin-top:auto; }
@media (max-width:900px) {
  .hero { padding-bottom:0; }
  .hero-visual { margin-bottom:0; }
  .case-body { min-height:250px; }
}
@media (max-width:620px) {
  .case-grid { grid-template-columns:1fr; }
  .case-body { min-height:0; }
}
@media (max-width:900px) {
  .hero-visual { height:min(68vh,680px); }
}
@media (max-width:620px) {
  .hero { gap:24px; }
  .hero-visual { width:100%; height:min(54vh,540px); }
  .hero-visual img { transform:none; }
}

/* revision-23: compact case cards */
.hero h1 {
  line-height:1.2;
  margin-block:28px;
}
.manifesto h2,
.section-heading h2,
footer h2 {
  line-height:1.24;
}
.case-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.case-card {
  display:flex;
  min-width:0;
  flex-direction:column;
}
.case-image {
  flex:none;
  aspect-ratio:1/1;
}
.case-body {
  min-height:220px;
  padding:14px;
}
.case-body > p:first-child {
  color:var(--red);
  font-size:9px;
  font-weight:800;
  line-height:1.25;
}
.case-body h3 {
  margin:10px 0;
  font-size:clamp(22px,2.4vw,34px);
  line-height:1.04;
}
.case-body .case-task {
  display:-webkit-box;
  overflow:hidden;
  margin:0;
  font-size:11px;
  line-height:1.4;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
}
.case-body b {
  margin-top:16px;
  padding:10px 14px;
  background:var(--red);
}
.case-card:nth-child(4n + 2) .case-body b { background:#4d65ff; }
.case-card:nth-child(4n + 3) .case-body b { background:#14110f; }
.case-card:nth-child(4n + 4) .case-body b { background:#a44961; }
.case-card:hover .case-body b,
.case-card:focus-visible .case-body b { filter:brightness(1.16); }

@media (max-width:900px) {
  .case-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-body { min-height:210px; }
}
@media (max-width:620px) {
  .hero h1 {
    line-height:1.22;
    margin-block:22px;
  }
  .manifesto h2,
  .section-heading h2,
  footer h2 { line-height:1.26; }
  .case-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .case-body {
    min-height:205px;
    padding:11px;
  }
  .case-body h3 {
    font-size:20px;
    line-height:1.06;
  }
  .case-body .case-task {
    font-size:10px;
    line-height:1.35;
    -webkit-line-clamp:4;
  }
  .case-body b {
    margin-top:13px;
    padding:9px 11px;
    font-size:9px;
  }
}
@media (max-width:350px) {
  .case-grid { grid-template-columns:1fr; }
  .case-body { min-height:0; }
}

/* revision-24: aligned case actions */
.case-body {
  flex:1;
  height:100%;
}
.case-body b,
.case-card:nth-child(4n + 2) .case-body b,
.case-card:nth-child(4n + 3) .case-body b,
.case-card:nth-child(4n + 4) .case-body b {
  margin-top:16px;
  background:var(--red);
}

/* revision-25: cards follow their content height */
.case-grid {
  align-items:start;
}
.case-card {
  height:auto;
  align-self:start;
}
.case-body {
  flex:none;
  height:auto;
  min-height:0;
}
@media (max-width:900px) {
  .case-body { min-height:0; }
}
@media (max-width:620px) {
  .case-body { min-height:0; }
}

/* revision-26: equal cards per grid row without auto margins */
.case-grid {
  align-items:stretch;
}
.case-card {
  height:100%;
  align-self:stretch;
}
.case-body {
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  flex:1;
  height:100%;
  min-height:0;
}
.case-body b,
.case-card:nth-child(4n + 2) .case-body b,
.case-card:nth-child(4n + 3) .case-body b,
.case-card:nth-child(4n + 4) .case-body b {
  align-self:end;
  justify-self:start;
  margin-top:16px;
}

/* revision-27: manager feedback and iPhone layout */
body { overflow-x:hidden; }
.topic-row { gap:12px 0; }
.topic-row span {
  padding:0;
  border:0;
  border-radius:0;
  color:rgba(20,17,15,.78);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
}
.topic-row span:not(:last-child)::after {
  content:"/";
  margin:0 13px;
  color:var(--red);
  opacity:.75;
}
.audience-summary,
.audience-charts,
.audience-summary article,
.audience-charts article,
.bar-row,
.bar-row > div { min-width:0; }
.stats-explainer {
  max-width:580px;
  color:rgba(255,255,255,.68);
  font-size:13px;
}
.price-note {
  width:fit-content;
  max-width:100%;
  line-height:1.35;
  white-space:normal;
}
.secondary-social-stats {
  margin-top:72px;
  padding-top:30px;
  border-top:1px solid rgba(255,255,255,.28);
}
.instagram-social-stats { margin-top:38px; }
.instagram-social-stats .social-platform-heading {
  grid-template-columns:1fr auto;
}
.social-platform-heading {
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(280px,1fr) auto;
  align-items:end;
  gap:24px;
  margin-bottom:22px;
}
.social-platform-heading h3 {
  margin:5px 0 0;
  font-family:Impact,"Arial Black",sans-serif;
  font-size:clamp(48px,6.5vw,96px);
  line-height:1;
  text-transform:uppercase;
}
.social-platform-heading > p {
  max-width:540px;
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.5;
}
.social-platform-label,
.telegram-metrics small,
.social-proof-row {
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.social-platform-label { margin:0; color:rgba(255,255,255,.58); }
.social-platform-link,
.social-proof-row a {
  width:max-content;
  color:white;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.social-platform-link { padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.6); }
.telegram-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.telegram-metrics.social-metrics-pair { grid-template-columns:repeat(2,minmax(0,1fr)); }
.telegram-metrics article {
  min-height:150px;
  padding:22px 20px 18px;
  border-radius:20px;
  background:var(--paper);
  color:var(--ink);
  display:flex;
  flex-direction:column;
}
.telegram-metrics article:nth-child(2) { background:white; }
.telegram-metrics article:nth-child(3) { background:var(--red); color:white; }
.telegram-metrics strong {
  margin:auto 0 4px;
  padding-top:26px;
  font-family:Impact,"Arial Black",sans-serif;
  font-size:clamp(38px,4.5vw,66px);
  line-height:.9;
  text-transform:uppercase;
}
.telegram-metrics p { margin:0; font-size:13px; }
.social-proof-row {
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-top:14px;
  color:rgba(255,255,255,.55);
}
.social-proof-row a { color:rgba(255,255,255,.8); }
.hero h1 {
  font-size:clamp(48px,5.4vw,88px);
  letter-spacing:.045em;
}
.threads-social-stats { margin-top:56px; }
.threads-audience-strip {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  margin-top:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.3);
  border-radius:18px;
  background:rgba(255,255,255,.3);
}
.threads-audience-strip p {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin:0;
  padding:16px 18px;
  background:var(--red);
  color:white;
}
.threads-audience-strip strong {
  font-family:Impact,"Arial Black",sans-serif;
  font-size:28px;
  line-height:1;
}
.threads-audience-strip span {
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-align:right;
  text-transform:uppercase;
}

@media (max-width:620px) {
  .hero h1 {
    font-size:8.2vw;
    letter-spacing:.045em;
  }
  .topbar {
    top:10px;
    width:calc(100% - 20px);
    padding:8px 9px;
  }
  .logo,
  .mobile-menu summary {
    width:36px;
    height:36px;
  }
  .logo { font-size:19px; }
  .mini-cta {
    padding:8px 10px;
    font-size:11px;
  }
  .manifesto,
  .stats,
  .audience,
  .cases,
  .formats { padding-inline:16px; }
  .topic-row {
    margin-top:48px;
    padding-top:18px;
  }
  .topic-row span {
    font-size:11px;
    line-height:1.4;
  }
  .topic-row span:not(:last-child)::after { margin-inline:9px; }
  .audience-summary article,
  .audience-charts article {
    padding:20px 16px;
    border-radius:20px;
  }
  .audience-charts h3,
  .gender-card h3 {
    margin-bottom:24px;
    font-size:46px;
    line-height:1.05;
  }
  .bar-row,
  .gender-card .bar-row {
    grid-template-columns:64px minmax(0,1fr) 44px;
    gap:6px;
    font-size:11px;
  }
  .bar-row span {
    min-width:0;
    font-size:11px;
    letter-spacing:0;
  }
  .bar-row b {
    min-width:0;
    font-size:11px;
    white-space:nowrap;
  }
  .manager-stats article > small {
    max-width:58%;
    padding-right:6px;
  }
  .stats-explainer {
    margin-bottom:0 !important;
    font-size:12px;
    line-height:1.45;
  }
  .format-list article,
  .format-list article.special-format {
    grid-template-columns:38px minmax(0,1fr);
    gap:10px 12px;
    padding:26px 0;
  }
  .format-list article > span { font-size:30px; }
  .format-list article > h3 {
    min-width:0;
    font-size:24px;
    line-height:1.08;
  }
  .format-list article > div { min-width:0; }
  .price-note {
    width:100%;
    margin-top:36px;
    padding:13px 14px;
    font-size:10px;
    overflow-wrap:anywhere;
  }
  .secondary-social-stats { margin-top:54px; padding-top:24px; }
  .instagram-social-stats { margin-top:32px; }
  .instagram-social-stats .social-platform-heading { grid-template-columns:1fr; }
  .social-platform-heading { grid-template-columns:1fr; gap:12px; }
  .social-platform-heading h3 { font-size:54px; }
  .social-platform-heading > p { font-size:13px; }
  .social-platform-link { margin-top:4px; }
  .telegram-metrics { grid-template-columns:1fr; }
  .telegram-metrics article { min-height:126px; padding:18px 16px; }
  .telegram-metrics strong { font-size:44px; }
  .threads-social-stats { margin-top:42px; }
  .threads-audience-strip { grid-template-columns:1fr; }
  .threads-audience-strip p { padding:14px 16px; }
  .social-proof-row { align-items:flex-start; flex-direction:column; line-height:1.5; }
}

/* revision-28: portrait navbar with scroll identity */
.topbar {
  transition:width .35s ease, background-color .35s ease, box-shadow .35s ease;
}
.topbar.is-scrolled {
  width:min(1120px,calc(100% - 32px));
  background:rgba(20,17,15,.92);
  box-shadow:0 12px 34px rgba(20,17,15,.18);
}
.nav-brand {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  flex:none;
}
.logo {
  flex:none;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.36);
  background:#292421;
}
.logo img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 35%;
}
.nav-handle {
  max-width:0;
  overflow:hidden;
  color:white;
  font-size:12px;
  font-weight:800;
  letter-spacing:.055em;
  opacity:0;
  text-transform:uppercase;
  transform:translateX(-8px);
  transition:max-width .35s ease, margin-left .35s ease, opacity .25s ease, transform .35s ease;
  white-space:nowrap;
}
.topbar.is-scrolled .nav-handle {
  max-width:190px;
  margin-left:11px;
  opacity:1;
  transform:translateX(0);
}
.nav-project-cta {
  max-width:0;
  overflow:hidden;
  padding:0;
  border:0 solid rgba(255,255,255,.55);
  border-radius:999px;
  color:white;
  font-size:10px;
  font-weight:800;
  letter-spacing:.055em;
  line-height:1;
  opacity:0;
  pointer-events:none;
  text-transform:uppercase;
  transform:translateX(8px);
  transition:max-width .35s ease, padding .35s ease, border-width .35s ease, opacity .25s ease, transform .35s ease;
  white-space:nowrap;
}
.topbar.is-scrolled .nav-project-cta {
  max-width:170px;
  padding:11px 14px;
  border-width:1px;
  opacity:1;
  pointer-events:auto;
  transform:translateX(0);
}
.topbar.is-scrolled nav { gap:20px; }
.hero h1 {
  font-size:clamp(60px,7vw,116px);
  letter-spacing:.025em;
}

@media (max-width:620px) {
  .topbar,
  .topbar.is-scrolled { width:calc(100% - 20px); }
  .topbar .mobile-menu { margin-left:auto; }
  .nav-handle {
    font-size:10px;
    letter-spacing:.035em;
  }
  .topbar.is-scrolled .nav-handle {
    max-width:125px;
    margin-left:8px;
  }
  .nav-project-cta { margin-left:auto; }
  .topbar.is-scrolled .nav-project-cta {
    max-width:92px;
    padding:9px 10px;
    font-size:0;
  }
  .topbar.is-scrolled .nav-project-cta::after {
    content:"Обсудить";
    font-size:8px;
    letter-spacing:.045em;
  }
  .topbar.is-scrolled .mobile-menu { margin-left:8px; }
  .hero h1 {
    font-size:9.8vw;
    letter-spacing:.018em;
  }
}

/* revision-29: keep the hero portrait large independently of the headline */
.hero-visual img {
  transform:scale(1.27);
  transform-origin:center bottom;
}

@media (max-width:900px) {
  .hero-visual img { transform:scale(1.1); }
}

/* revision-30: calmer typography and compact statistics intro */
.hero h1 {
  font-size:clamp(54px,6vw,102px);
}
.manifesto h2,
.section-heading h2,
.section-heading.horizontal h2,
footer h2 {
  font-size:clamp(58px,8vw,118px);
  line-height:1.12;
}
.social-platform-heading h3 {
  font-size:clamp(44px,5.4vw,78px);
}
.about-group h3,
.audience-charts h3,
.gender-card h3 {
  font-size:clamp(36px,4.2vw,62px);
}
.social-title {
  font-size:clamp(32px,4.2vw,58px);
}
.stats > .section-heading {
  grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);
  align-items:end;
  gap:22px 64px;
  margin-bottom:48px;
}
.stats > .section-heading .section-index {
  grid-column:1/-1;
  margin-bottom:0;
}
.stats > .section-heading h2 {
  grid-column:1;
  margin:0;
}
.stats > .section-heading .stats-note {
  grid-column:2;
  align-self:end;
  max-width:520px;
  padding-bottom:8px;
}
.stats > .section-heading .stats-note p:last-child {
  margin-bottom:0;
}
.contact-links a {
  border-bottom-color:rgba(255,255,255,.14);
}

@media (max-width:900px) {
  .stats > .section-heading {
    grid-template-columns:1fr;
    gap:14px;
  }
  .stats > .section-heading .section-index,
  .stats > .section-heading h2,
  .stats > .section-heading .stats-note {
    grid-column:1;
  }
  .stats > .section-heading .stats-note {
    padding-bottom:0;
  }
}

@media (max-width:620px) {
  .hero h1 {
    font-size:8.8vw;
  }
  .manifesto h2,
  .section-heading h2,
  .section-heading.horizontal h2,
  footer h2 {
    font-size:13.5vw;
    line-height:1.16;
  }
  .social-platform-heading h3 {
    font-size:48px;
  }
  .about-group h3,
  .audience-charts h3,
  .gender-card h3 {
    font-size:42px;
  }
  .social-title {
    font-size:11vw;
  }
}
