.r2-section { position: relative; padding: 88px 0; }
.r2-section h2,.r2-final h2 { margin: 0; color: var(--brand-navy); font-size: clamp(2.35rem,4.05vw,4.6rem); line-height: 1.08; letter-spacing: -.052em; }
.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size: clamp(2.25rem,3.85vw,4.4rem); }
.r2-section h3 { margin: 0; color: var(--brand-navy); line-height: 1.18; }
.r2-section-heading { margin-bottom: 46px; }
.r2-section-heading-inline { display: flex; justify-content: space-between; gap: 40px; align-items: end; }
.r2-section-heading-inline > div { max-width: 840px; }
.r2-section-heading-split { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(280px,.55fr); gap: 72px; align-items: end; }
.r2-section-heading-split > p { max-width: 430px; margin: 0 0 7px; color: var(--text-secondary); font-size: .98rem; line-height: 1.75; }
.r2-heading-index { padding-bottom: 9px; color: var(--brand-primary); border-bottom: 2px solid var(--brand-primary); font-size: .72rem; font-weight: 900; letter-spacing: .14em; }

/* 01 — editorial hero */
.r2-hero { position: relative; min-height: 780px; display: grid; align-items: center; overflow: hidden; background: #fcfcfd; border-bottom: 1px solid var(--border); }
.r2-hero::before { content: ""; position: absolute; z-index: 0; inset: 0; pointer-events: none; background: conic-gradient(from 220deg at 43% 19%,transparent 0 14%,rgba(221,233,244,.68) 14% 30%,rgba(244,248,251,.64) 30% 43%,transparent 43% 100%),conic-gradient(from 34deg at 52% 57%,transparent 0 18%,rgba(251,224,231,.58) 18% 36%,rgba(249,238,242,.4) 36% 52%,transparent 52% 100%),conic-gradient(from 151deg at 73% 34%,transparent 0 15%,rgba(225,237,247,.74) 15% 33%,rgba(243,247,251,.6) 33% 47%,transparent 47% 100%),linear-gradient(142deg,transparent 0 34%,rgba(250,237,241,.5) 34% 53%,transparent 53% 100%); mask-image: linear-gradient(to right,transparent 0%,rgba(0,0,0,.12) 24%,rgba(0,0,0,.7) 43%,black 68%,rgba(0,0,0,.9)); }
.r2-hero::after { content: ""; position: absolute; z-index: 0; right: -7%; top: -5%; width: 88%; height: 108%; pointer-events: none; background: conic-gradient(from 228deg at 17% 25%,transparent 0 18%,rgba(211,226,240,.72) 18% 36%,rgba(237,244,249,.58) 36% 49%,transparent 49% 100%),conic-gradient(from 135deg at 51% 49%,transparent 0 17%,rgba(252,218,226,.72) 17% 34%,rgba(247,202,212,.5) 34% 46%,transparent 46% 100%),conic-gradient(from 325deg at 76% 71%,transparent 0 24%,rgba(242,174,187,.42) 24% 38%,rgba(249,220,226,.58) 38% 53%,transparent 53% 100%),linear-gradient(144deg,transparent 0 34%,rgba(228,238,246,.68) 34% 53%,transparent 53% 100%); clip-path: polygon(0 8%,44% 0,73% 8%,100% 23%,91% 47%,100% 74%,76% 100%,34% 92%,0 65%); mask-image: linear-gradient(to right,transparent 0%,rgba(0,0,0,.32) 14%,black 32%,black 91%,transparent); }
.r2-hero-grid { position: relative; z-index: 1; width: min(calc(100% - 48px),1320px); margin-inline: auto; display: grid; grid-template-columns: minmax(0,.88fr) minmax(540px,1.12fr); gap: 64px; align-items: center; padding: 64px 0 70px; }
.r2-hero-copy { position: relative; z-index: 2; }
.r2-hero-copy h1 { max-width: 700px; margin: 18px 0 28px; color: var(--brand-navy); font-size: clamp(3rem,4.42vw,4.8rem); line-height: 1.025; letter-spacing: -.062em; }
.r2-hero-lead { max-width: 620px; margin: 0; color: var(--text-secondary); font-size: 1.08rem; line-height: 1.8; }
.r2-inline-points { display: flex; flex-wrap: wrap; gap: 9px; margin: 28px 0 0; padding: 0; list-style: none; }
.r2-inline-points li { padding: 8px 13px; color: var(--brand-navy); background: #f6f8fa; border: 1px solid rgba(23,59,94,.1); border-radius: 999px; font-size: .77rem; font-weight: 820; }
.r2-inline-points li::before { content: ""; display: inline-block; width: 5px; height: 5px; margin-right: 8px; background: var(--brand-primary); border-radius: 50%; vertical-align: 1px; }
.r2-hero-actions { display: flex; margin-top: 32px; }
.r2-hero-actions .button { width: fit-content; }
.r2-qualification { display: flex; gap: 10px; align-items: flex-start; max-width: 600px; margin: 20px 0 0; color: #75808d; font-size: .76rem; line-height: 1.6; }
.r2-qualification span { flex: 0 0 auto; width: 6px; height: 6px; margin-top: 7px; background: var(--brand-gold); border-radius: 50%; }
.r2-hero-artwork { width: 130%; margin: 0 0 0 -15%; }
.r2-hero-artwork img { display: block; width: 100%; height: auto; object-fit: contain; }

/* 02 — platform hierarchy */
.r2-platforms { overflow: hidden; background: #f5f7fa; }
.r2-platforms::after { content: "MEDIA"; position: absolute; right: -16px; top: 10px; color: rgba(23,59,94,.025); font-size: 12rem; font-weight: 950; line-height: 1; letter-spacing: -.08em; }
.r2-platforms .container { position: relative; z-index: 2; }
.r2-platform-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.r2-platform-card { --platform:#173b5e; --preview-width:41%; --preview-ratio:4 / 3; --mobile-preview-width:112px; position: relative; isolation: isolate; min-height: 230px; display: flex; flex-direction: column; padding: 23px 24px; overflow: hidden; color: inherit; background: #fff; border: 1px solid rgba(23,59,94,.1); border-top: 3px solid var(--platform); border-radius: 16px; text-decoration: none; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.r2-platform-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb,var(--platform) 28%,#dce3e9); box-shadow: 0 14px 28px rgba(23,59,94,.08); }
.platform-google { --platform:#4285f4; }.platform-meta { --platform:#1877f2; }.platform-tiktok { --platform:#111827; }.platform-telegram { --platform:#229ed9; }.platform-x { --platform:#111; }.platform-microsoft { --platform:#7fba00; }
.platform-meta { --preview-width:43%; }.platform-tiktok { --preview-width:39%; }.platform-telegram { --preview-width:33%; --preview-ratio:1 / 1; --mobile-preview-width:92px; }.platform-x { --preview-width:34%; --preview-ratio:1 / 1; --mobile-preview-width:92px; }
.r2-platform-number { color: #98a1ab; font-size: .64rem; font-weight: 900; letter-spacing: .12em; }
.r2-platform-brand { position: relative; z-index: 1; display: flex; width: 44px; height: 40px; margin: 14px 0 14px; align-items: center; justify-content: flex-start; }
.r2-platform-brand img { display: block; width: 36px; height: 36px; object-fit: contain; object-position: left center; }
.platform-google .r2-platform-brand img { width: 38px; height: 38px; }.platform-meta .r2-platform-brand img { width: 42px; height: 31px; }.platform-tiktok .r2-platform-brand img { width: 34px; height: 34px; }.platform-telegram .r2-platform-brand img { width: 37px; height: 37px; }.platform-x .r2-platform-brand img { width: 32px; height: 32px; }.platform-microsoft .r2-platform-brand img { width: 33px; height: 33px; }
.r2-platform-card h3,.r2-platform-card ul,.r2-platform-number,.r2-arrow { position: relative; z-index: 1; }
.r2-platform-preview { position: absolute; z-index: 0; right: 18px; bottom: 18px; width: var(--preview-width); aspect-ratio: var(--preview-ratio); display: grid; place-items: center; overflow: hidden; border: 1px solid #d9e1e8; border-radius: 10px; background: #fff; box-shadow: 0 5px 14px rgba(23,59,94,.04); }
.r2-platform-preview img { display: block; width: 100%; height: 100%; object-fit: contain; }
.r2-platform-card h3 { font-size: 1.35rem; }
.r2-platform-card ul { display: flex; flex-wrap: wrap; gap: 7px; margin: auto 0 0; padding: 14px calc(var(--preview-width) + 16px) 0 0; list-style: none; }
.r2-platform-card li { padding: 6px 9px; color: var(--text-secondary); background: #f7f8fa; border-radius: 6px; font-size: .67rem; font-weight: 760; }
.r2-arrow { position: absolute; top: 23px; right: 24px; color: var(--platform); font-size: 1.1rem; font-weight: 900; }
.r2-network-strip { display: grid; grid-template-columns: 180px 1fr; gap: 24px; align-items: center; margin-top: 18px; padding: 18px 20px; background: #fff; border: 1px solid rgba(23,59,94,.1); border-radius: 14px; }
.r2-network-label { color: var(--brand-primary); font-size: .72rem; font-weight: 900; letter-spacing: .1em; }
.r2-network-strip > div { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); }
.r2-network-strip a { display: flex; min-width: 0; gap: 7px; padding: 7px 10px; align-items: center; justify-content: center; color: var(--brand-navy); border-left: 1px solid var(--border); font-size: .7rem; font-weight: 850; text-align: center; text-decoration: none; }
.r2-network-strip a:hover { color: var(--brand-primary); }.r2-network-strip img { flex: 0 0 auto; width: 20px; height: 22px; object-fit: contain; }.r2-network-strip a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.network-amazon img { width: 27px; }.network-sharechat img { width: 21px; height: 21px; }.network-bigo img { width: 22px; height: 22px; }.network-yandex img { width: 18px; height: 18px; }.network-snapchat img { padding: 2px; background: #fffc00; border-radius: 4px; }

/* R10 — compact editorial type scale; layout and card structure remain unchanged. */
.r2-section { padding-block: 80px; }
.r2-section h2,.r2-final h2 { font-size: clamp(2.125rem,2.7vw,2.375rem); line-height: 1.15; letter-spacing: -.04em; }
.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size: clamp(2.125rem,2.7vw,2.375rem); }
.r2-section-heading { margin-bottom: 32px; }
.r2-section-heading-split { gap: 44px; }
.r2-section-heading-split > p,.r2-hero-lead { font-size: 1rem; line-height: 1.7; }
.r2-hero { min-height: 720px; }
.r2-hero-copy h1 { max-width: 650px; margin-block: 16px 20px; font-size: clamp(3rem,3.6vw,3.25rem); line-height: 1.08; }
.r2-inline-points { margin-top: 22px; }.r2-hero-actions { margin-top: 25px; }
@media (max-width: 700px) {
  .r2-section { padding-block: 56px; }
  .r2-section h2,.r2-final h2,.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size: clamp(1.625rem,7.2vw,1.875rem); line-height: 1.2; }
  .r2-section-heading { margin-bottom: 24px; }
  .r2-hero-copy h1 { font-size: clamp(2.125rem,9.4vw,2.375rem); line-height: 1.1; }
  .r2-hero-lead,.r2-section-heading-split > p { font-size: .94rem; line-height: 1.7; }
}

/* 03 — execution placement examples */
.r2-showcase-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 18px; }
.r2-scene { min-height: 390px; display: flex; flex-direction: column; padding: 24px; overflow: hidden; background: #fff; border: 1px solid rgba(23,59,94,.1); border-radius: 16px; box-shadow: 0 10px 28px rgba(23,59,94,.04); }
.r2-scene-meta { display: flex; justify-content: space-between; gap: 18px; align-items: center; }
.r2-scene-meta > span { color: #e52232; font-size: .62rem; font-weight: 900; letter-spacing: .1em; }
.r2-scene-meta h3 { font-size: 1.4rem; }
.r2-scene > ul { display: flex; flex-wrap: wrap; gap: 7px; margin: auto 0 0; padding: 18px 0 0; list-style: none; }
.r2-scene > ul li { padding: 7px 10px; color: var(--brand-navy); background: #f1f5f8; border: 1px solid #e5ebf0; border-radius: 7px; font-size: .68rem; font-weight: 800; }
.search-mockup,.social-mockup { flex: 1; min-height: 238px; margin-top: 18px; padding: 18px; background: #f7f9fb; border: 1px solid #e1e7ec; border-radius: 12px; }
.search-mockup { display: grid; grid-template-columns: 1fr 22px 1.18fr 22px 1.14fr 22px .86fr; gap: 5px; align-items: center; }
.mock-search-step { min-width: 0; display: grid; gap: 10px; align-content: start; }.mock-search-step > b,.social-feed > b,.social-reel > b { color: var(--brand-navy); font-size: .58rem; font-weight: 900; }
.mock-search-keyword > div { display: flex; gap: 6px; align-items: center; margin-top: 36px; padding: 9px 8px; background: #fff; border: 1px solid #dfe5ea; border-radius: 999px; box-shadow: 0 5px 12px rgba(23,59,94,.05); }.mock-search-keyword svg { width: 15px; height: 15px; flex: 0 0 auto; stroke: #63798c; stroke-width: 1.7; }.mock-search-keyword span { overflow: hidden; color: #475d70; font-size: .5rem; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.mock-search-ad > div,.mock-search-landing > div { min-height: 142px; padding: 13px; background: #fff; border: 1px solid #dfe5ea; border-radius: 8px; box-shadow: 0 6px 14px rgba(23,59,94,.045); }.mock-search-ad small { display: block; color: #4a6759; font-size: .43rem; font-weight: 760; }.mock-search-ad strong { display: block; margin-top: 12px; color: #1769aa; font-size: .7rem; line-height: 1.35; }.mock-search-ad i { display: block; width: 88%; height: 5px; margin-top: 10px; background: #dfe4e8; border-radius: 3px; }.mock-search-ad i:last-child { width: 68%; margin-top: 6px; }
.mock-search-landing > div { padding: 0; overflow: hidden; }.mock-search-landing > div > span { display: flex; gap: 4px; padding: 7px 8px; background: #f4f6f8; border-bottom: 1px solid #e2e7eb; }.mock-search-landing > div > span i { width: 4px; height: 4px; background: #cdd4da; border-radius: 50%; }.mock-search-landing > div > span i:first-child { background: #e85d62; }.mock-search-landing small,.mock-search-landing strong,.mock-search-landing em { display: block; margin-inline: 11px; }.mock-search-landing small { margin-top: 10px; color: #677989; font-size: .43rem; font-weight: 800; }.mock-search-landing strong { margin-top: 13px; color: #fff; background: #17496f; padding: 9px 8px; font-size: .59rem; line-height: 1.4; }.mock-search-landing em { margin-top: 7px; color: #637484; font-size: .44rem; font-style: normal; }
.mock-search-conversion > div { min-height: 142px; display: grid; place-items: center; align-content: center; gap: 9px; }.mock-search-conversion svg { width: 55px; height: 55px; stroke: #e85d62; stroke-width: 1.45; }.mock-search-conversion small { color: var(--brand-navy); font-size: .48rem; font-weight: 800; text-align: center; }
.mock-diagram-arrow { color: #e52232; font-size: .85rem; font-style: normal; text-align: center; }
.social-mockup { display: grid; grid-template-columns: 1.12fr .74fr .58fr; gap: 14px; align-items: start; }
.social-feed,.social-reel { min-width: 0; display: grid; gap: 9px; }.social-feed-card { padding: 11px; background: #fff; border: 1px solid #dfe5ea; border-radius: 8px; box-shadow: 0 6px 14px rgba(23,59,94,.045); }
.social-ui-head { display: grid; grid-template-columns: 24px 1fr auto; gap: 7px; align-items: center; }.social-ui-head > i { width: 24px; height: 24px; background: #17496f; border-radius: 50%; }.social-ui-head span { display: grid; gap: 1px; }.social-ui-head strong { color: var(--brand-navy); font-size: .48rem; }.social-ui-head small { color: #758391; font-size: .4rem; }.social-ui-head em { color: #8f9aa5; font-size: .48rem; font-style: normal; letter-spacing: .06em; }
.social-feed-art { position: relative; height: 96px; margin-top: 10px; overflow: hidden; background: #5e7de8; border-radius: 5px; }.social-feed-art::before,.social-feed-art::after { content: ""; position: absolute; bottom: 18px; width: 36px; height: 26px; background: rgba(255,255,255,.2); clip-path: polygon(50% 0,100% 100%,0 100%); }.social-feed-art::before { left: 34%; }.social-feed-art::after { left: 48%; height: 34px; }.social-feed-actions { display: flex; justify-content: space-between; margin-top: 8px; color: #344b62; font-size: .72rem; }
.social-reel-card { position: relative; height: 184px; overflow: hidden; background: #302260; border: 1px solid #dfe5ea; border-radius: 8px; box-shadow: 0 6px 14px rgba(23,59,94,.045); }.social-reel-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 35%,rgba(232,93,98,.48),transparent 28%),linear-gradient(165deg,#445eb4,#2f205e 72%); }.social-reel-card > span { position: absolute; z-index: 2; right: 8px; top: 8px; color: #fff; font-size: .6rem; letter-spacing: .12em; }.social-reel-card > i { position: absolute; z-index: 2; left: 50%; top: 50%; width: 38px; height: 38px; translate: -50% -50%; background: rgba(0,0,0,.2); border: 1px solid rgba(255,255,255,.4); border-radius: 50%; }.social-reel-card > i::after { content: ""; position: absolute; left: 15px; top: 11px; border-block: 7px solid transparent; border-left: 10px solid #fff; }.social-reel-card > em { position: absolute; z-index: 2; right: 7px; bottom: 13px; color: #fff; font-size: .68rem; font-style: normal; line-height: 2.1; text-align: center; }
.social-outcomes { display: grid; gap: 4px; justify-items: center; padding-top: 24px; }.social-outcomes > div { display: grid; gap: 4px; justify-items: center; }.social-outcomes > div > span { width: 38px; height: 38px; display: grid; place-items: center; color: #1b63bc; background: #fff; border: 1px solid #dce4eb; border-radius: 50%; box-shadow: 0 5px 12px rgba(23,59,94,.05); }.social-outcomes svg { width: 21px; height: 21px; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }.social-outcomes b { color: var(--brand-navy); font-size: .48rem; }.social-outcomes > i { color: #e52232; font-size: .65rem; font-style: normal; }

/* 03 — merged execution system */
.r2-execution { overflow: hidden; background: #fff; }
.r2-execution-anchor { position: relative; padding: 28px 28px 40px; overflow: hidden; color: #f8fafc; background: #17496f; border: 1px solid rgba(156,191,215,.22); border-radius: 18px; box-shadow: 0 18px 44px rgba(23,73,111,.14); }
.r2-execution-anchor::before { content: ""; position: absolute; right: -150px; top: -250px; width: 650px; height: 650px; background: radial-gradient(circle,rgba(29,85,127,.62) 0%,rgba(25,78,119,.24) 38%,transparent 68%); pointer-events: none; }
.r2-execution-anchor::after { content: ""; position: absolute; z-index: 1; left: 13%; right: -2%; bottom: -1px; height: 48%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 260'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1'%3E%3Cpath d='M0 255 C260 232 360 160 540 182 S820 220 1000 44' opacity='.05'/%3E%3Cpath d='M0 260 C300 246 390 176 560 194 S830 215 1000 70' opacity='.07'/%3E%3Cpath d='M70 260 C330 230 460 138 630 178 S860 196 1000 92' opacity='.09'/%3E%3Cpath d='M150 260 C410 236 520 188 690 174 S880 160 1000 112' opacity='.1'/%3E%3C/g%3E%3Cpath d='M270 260 C520 238 700 160 1000 142' fill='none' stroke='%23f2a63a' stroke-width='1' opacity='.1'/%3E%3C/svg%3E") right bottom / 100% 100% no-repeat; pointer-events: none; }
.r2-execution-flow { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); margin: 0; padding: 0; list-style: none; border-block: 1px solid rgba(255,255,255,.1); }
.r2-execution-flow > li { --step-accent:#5cb7d8; position: relative; min-height: 360px; padding: 18px 18px 20px; border-right: 1px solid rgba(255,255,255,.1); }.r2-execution-flow > li:nth-child(2) { --step-accent:#e2b34a; }.r2-execution-flow > li:nth-child(3) { --step-accent:#e85d62; }.r2-execution-flow > li:nth-child(4) { --step-accent:#58b7c9; }.r2-execution-flow > li:nth-child(5) { --step-accent:#73aee2; }.r2-execution-flow > li:nth-child(6) { --step-accent:#f2a63a; }
.r2-execution-flow > li:last-child { border-right: 0; }
.r2-execution-flow > li:not(:last-child)::before { content: ""; position: absolute; z-index: 2; left: calc(50% + 36px); top: 71px; width: calc(100% - 72px); border-top: 1px dashed rgba(217,163,58,.42); }
.r2-execution-flow > li:not(:last-child)::after { content: "→"; position: absolute; z-index: 3; right: -14px; top: 57px; width: 28px; height: 28px; display: grid; place-items: center; color: #d9a33a; background: #17496f; border: 1px solid rgba(217,163,58,.52); border-radius: 50%; font-size: .82rem; }
.r2-execution-step-head { display: grid; gap: 7px; justify-items: center; }
.r2-execution-number { color: #9cbfd7; font-size: .72rem; font-weight: 900; letter-spacing: .12em; }.r2-execution-flow > li:last-child .r2-execution-number { color: #f2a63a; }
.r2-execution-icon { position: relative; width: 68px; height: 68px; display: grid; place-items: center; color: #f8fafc; background: transparent; border: 1px solid rgba(248,250,252,.62); border-radius: 50%; }
.r2-execution-flow > li:last-child .r2-execution-icon { border-color: rgba(242,166,58,.9); }.r2-execution-flow > li:last-child .r2-execution-icon::after { content: ""; position: absolute; right: 9px; top: 8px; width: 5px; height: 5px; background: #e52232; border-radius: 50%; }
.r2-execution-icon svg { width: 52px; height: 52px; overflow: visible; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; }.r2-execution-icon-line { stroke: #f8fafc; }.r2-execution-icon-accent { stroke: var(--step-accent); stroke-width: 1.7; }
.r2-execution-flow h3 { display: flex; justify-content: center; gap: 6px; align-items: baseline; margin-top: 14px; color: #f8fafc; font-size: .96rem; letter-spacing: -.01em; white-space: nowrap; }
.r2-execution-flow h3 small { color: #d9e5ef; font-size: .66rem; font-weight: 740; letter-spacing: .02em; }.r2-execution-flow > li:last-child h3 span { color: #f2a63a; }
.r2-execution-flow ul { margin: 18px 0 0; padding: 0; list-style: none; }
.r2-execution-flow ul li { padding: 6px 0; color: #e8eff5; border-bottom: 1px solid rgba(255,255,255,.1); font-size: .68rem; font-weight: 680; }
.r2-execution-flow ul li::before { content: ""; display: inline-block; width: 5px; height: 5px; margin-right: 8px; background: #e52232; border-radius: 50%; }
.r2-execution-support { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-top: 16px; }
.r2-execution-support a { position: relative; min-height: 86px; display: grid; grid-template-columns: 64px 1fr; gap: 13px; align-items: center; padding: 11px 44px 11px 14px; color: inherit; background: #fff; border: 1px solid #e0e6eb; border-radius: 10px; text-decoration: none; box-shadow: 0 6px 16px rgba(23,59,94,.035); transition: border-color .2s ease,transform .2s ease; }
.r2-execution-support a:hover { transform: translateY(-2px); border-color: #cbd9e4; }
.r2-execution-support-icon { width: 58px; height: 58px; display: grid; place-items: center; color: #e85d62; background: #fff0f1; border-radius: 50%; }.r2-execution-support-creative .r2-execution-support-icon { color: #e8842f; background: #fff4e8; }.r2-execution-support-tracking .r2-execution-support-icon { color: #3e73db; background: #edf3ff; }
.r2-execution-support-icon svg { width: 36px; height: 36px; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.r2-execution-support-copy { display: grid; grid-template-columns: auto 1fr; gap: 3px 10px; align-items: baseline; }.r2-execution-support-copy small { color: #e52232; font-size: .58rem; font-weight: 900; }.r2-execution-support-copy strong { color: var(--brand-navy); font-size: .83rem; letter-spacing: .025em; }.r2-execution-support-copy > span { grid-column: 1 / -1; color: var(--text-secondary); font-size: .63rem; font-weight: 720; }
.r2-execution-support i { position: absolute; right: 18px; top: 50%; translate: 0 -50%; color: #e52232; font-style: normal; font-weight: 900; }

/* 04 — industries and growth modes */
.r2-industries { padding-block: 56px; background: #f1f4f7; }
.r2-industries .r2-section-heading { margin-bottom: 14px; }
.r2-evaluation-dimensions { min-height: 54px; display: grid; grid-template-columns: 132px 1fr; align-items: stretch; margin-bottom: 26px; overflow: hidden; color: var(--brand-navy); background: rgba(255,255,255,.72); border: 1px solid rgba(23,59,94,.1); border-radius: 10px; }
.r2-evaluation-dimensions > strong { display: flex; gap: 9px; align-items: center; padding: 0 20px; border-right: 1px solid rgba(23,59,94,.1); font-size: .7rem; letter-spacing: .08em; white-space: nowrap; }.r2-evaluation-dimensions > strong::before { content: ""; width: 6px; height: 6px; background: var(--brand-primary); border-radius: 50%; }
.r2-evaluation-dimensions ul { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); margin: 0; padding: 0; list-style: none; }
.r2-evaluation-dimensions li { position: relative; display: flex; gap: 8px; align-items: center; justify-content: center; min-width: 0; padding: 10px 12px; color: #53697d; font-size: .67rem; font-weight: 780; white-space: nowrap; }.r2-evaluation-dimensions li:not(:first-child)::before { content: ""; position: absolute; left: 0; top: 17px; bottom: 17px; width: 1px; background: rgba(229,34,50,.17); }
.r2-evaluation-dimensions svg { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: #6f8192; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }.r2-evaluation-dimensions .r2-evaluation-accent { stroke: var(--brand-primary); }
.r2-industry-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 14px; }
.r2-industry-tile { position: relative; min-height: 148px; grid-column: span 3; display: grid; grid-template-columns: minmax(0,1.12fr) minmax(94px,.78fr); overflow: hidden; background: rgba(255,255,255,.94); border: 1px solid rgba(23,59,94,.1); border-radius: 15px; box-shadow: 0 8px 24px rgba(23,59,94,.045); transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.r2-industry-tile:nth-child(n+5) { grid-column: span 4; }
.r2-industry-tile::after { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(180deg,var(--brand-primary),#f07b84); opacity: .85; }
.r2-industry-tile:hover { transform: translateY(-2px); border-color: rgba(229,34,50,.18); box-shadow: 0 13px 30px rgba(23,59,94,.075); }
.r2-industry-visual { position: relative; min-width: 0; display: grid; place-items: center; padding: 18px 8px 9px 12px; overflow: hidden; background: linear-gradient(145deg,#f8fafc,#eef2f6); }
.r2-industry-visual::after { content: ""; position: absolute; right: 8%; bottom: 3px; width: 68%; height: 12px; background: radial-gradient(ellipse,rgba(23,59,94,.13),transparent 70%); filter: blur(4px); }
.r2-industry-visual > span { position: absolute; z-index: 2; left: 13px; top: 11px; color: var(--brand-primary); font-size: .56rem; font-weight: 900; letter-spacing: .12em; }
.r2-industry-visual img { position: relative; z-index: 1; width: 100%; height: 118px; object-fit: contain; filter: drop-shadow(0 7px 7px rgba(23,59,94,.1)); transition: transform .25s ease; }
.r2-industry-tile:hover .r2-industry-visual img { transform: scale(1.025); }
.r2-industry-copy { min-width: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 18px 14px 18px 13px; }
.r2-industry-tile h3 { font-size: 1.08rem; }.r2-industry-tile small { display: block; margin-top: 9px; color: var(--text-secondary); font-size: .62rem; font-weight: 650; line-height: 1.5; }
.r2-mobile-growth-tile { display: none; }
.r2-growth-modes { display: grid; grid-template-columns: minmax(260px,.65fr) 1.35fr; gap: 36px; align-items: center; margin-top: 24px; padding: 20px 24px; background: #fff; border: 1px solid rgba(23,59,94,.11); border-radius: 14px; }
.r2-growth-modes > div > span { color: var(--brand-primary); font-size: .6rem; font-weight: 900; letter-spacing: .13em; }
.r2-growth-modes h3 { margin-top: 7px; font-size: 1.25rem; }
.r2-growth-modes p { margin: 8px 0 0; color: var(--text-secondary); font-size: .72rem; line-height: 1.55; }
.r2-growth-modes nav { display: grid; grid-template-columns: repeat(5,1fr); }
.r2-growth-modes a { display: flex; justify-content: space-between; gap: 8px; padding: 14px 16px; color: var(--brand-navy); border-left: 1px solid var(--border); font-size: .72rem; font-weight: 850; text-decoration: none; }
.r2-growth-modes a span { color: var(--brand-primary); }

/* 05 — process and reasons */
.r2-cooperation { background: #f7f9fb; }
.r2-process-intro { max-width: 610px; margin: 18px 0 0; color: var(--text-secondary); font-size: .92rem; line-height: 1.7; }
.r2-process-flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.r2-process-flow > li { position: relative; min-width: 0; min-height: 330px; display: grid; grid-template-rows: auto 170px 1fr; padding: 18px 20px 22px; background: rgba(255,255,255,.96); border: 1px solid rgba(23,59,94,.11); border-radius: 15px; box-shadow: 0 9px 24px rgba(23,59,94,.045); }.r2-process-flow > li:not(:last-child)::after { content: "→"; position: absolute; z-index: 3; right: -20px; top: 50%; width: 25px; height: 20px; display: grid; place-items: center; color: var(--brand-primary); background: #f7f9fb; font-size: .72rem; font-weight: 900; translate: 0 -50%; }
.r2-process-flow > li > span { position: relative; z-index: 2; color: var(--brand-primary); font-size: .65rem; font-weight: 900; letter-spacing: .12em; }.r2-process-visual { display: grid; place-items: center; min-width: 0; overflow: hidden; }.r2-process-visual img { display: block; width: min(100%,205px); height: 160px; object-fit: contain; }.r2-process-copy { padding-top: 10px; border-top: 1px solid rgba(23,59,94,.08); }.r2-process-flow h3 { font-size: 1.18rem; }.r2-process-flow p { margin: 8px 0 0; color: var(--text-secondary); font-size: .73rem; line-height: 1.65; }
.r2-why-strip { display: grid; grid-template-columns: 230px 1fr; gap: 30px; align-items: center; margin-top: 20px; padding: 24px 26px; background: #eef4f8; border: 1px solid rgba(23,59,94,.09); border-radius: 14px; }.r2-why-strip > div > span { color: var(--brand-primary); font-size: .62rem; font-weight: 900; letter-spacing: .13em; }.r2-why-strip h3 { margin-top: 8px; font-size: 1.25rem; }.r2-why-strip ul { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; padding: 0; list-style: none; }.r2-why-strip li { min-width: 0; display: grid; grid-template-columns: 34px 1fr; gap: 10px; align-items: center; padding: 8px 14px; color: var(--brand-navy); border-left: 1px solid rgba(23,59,94,.1); }.r2-why-strip svg { width: 29px; height: 29px; fill: none; stroke: #526f89; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }.r2-why-strip .r2-why-accent { fill: var(--brand-primary); stroke: var(--brand-primary); }.r2-why-strip strong { display: block; font-size: .72rem; line-height: 1.35; }.r2-why-strip li p { margin: 4px 0 0; color: var(--text-secondary); font-size: .6rem; line-height: 1.45; }
.r2-faq { padding-block: 56px; background: #f8fafc; border-top: 1px solid rgba(23,59,94,.08); }
.r2-faq-layout { display: grid; grid-template-columns: minmax(0,.58fr) minmax(0,1fr); gap: 68px; align-items: start; }
.r2-faq-intro { align-self: start; }.r2-faq-intro h2 { max-width: 470px; margin-top: 16px; font-size: clamp(2rem,3.3vw,3.7rem); line-height: 1.1; }.r2-faq-support { max-width: 410px; margin: 22px 0 0; color: #53697d; font-size: .88rem; line-height: 1.75; }.r2-faq-underline { width: 45px; height: 2px; display: block; margin-top: 16px; background: var(--brand-primary); }.r2-faq-contact { grid-column: 1; width: fit-content; display: inline-flex; gap: 4px; align-items: center; margin-top: -60px; color: var(--brand-primary); font-size: .76rem; font-weight: 850; text-decoration: none; }.r2-faq-contact > span { color: var(--brand-navy); }.r2-faq-contact i { margin-left: 5px; font-style: normal; }
.r2-faq-illustration { width: min(100%,300px); height: 192px; margin: 14px 0 0; }.r2-faq-illustration svg { display: block; width: 100%; height: 100%; overflow: visible; }.r2-faq-halo-blue { fill: #dceaf6; opacity: .38; }.r2-faq-halo-blush { fill: #f8dfe4; opacity: .32; }.r2-faq-orbit { fill: none; stroke: #a9c5df; stroke-width: 1.2; opacity: .65; }.r2-faq-orbit-node { fill: #c7dcef; }.r2-faq-bubble-navy { fill: #1f5795; stroke: #173b5e; stroke-width: 1.5; }.r2-faq-question { fill: none; stroke: #fff; stroke-width: 10; stroke-linecap: round; stroke-linejoin: round; }.r2-faq-bubble-white { fill: #fff; stroke: #d9e3ec; stroke-width: 1.5; }.r2-faq-dot { fill: var(--brand-primary); }
.r2-faq-list { padding-top: 4px; }.r2-faq-list details { border-bottom: 1px solid rgba(23,59,94,.12); }.r2-faq-list details:first-child:not([open]) { border-top: 1px solid rgba(23,59,94,.12); }.r2-faq-list details[open] { margin-bottom: 10px; background: #f5f8fb; border: 1px solid rgba(23,59,94,.1); border-radius: 11px; box-shadow: 0 8px 24px rgba(23,59,94,.05); }.r2-faq-list summary { position: relative; min-height: 76px; display: grid; grid-template-columns: 48px 1fr 18px; gap: 16px; align-items: center; padding: 18px 22px 18px 36px; color: var(--brand-navy); cursor: pointer; list-style: none; }.r2-faq-list summary::-webkit-details-marker { display: none; }.r2-faq-list summary > span { color: var(--brand-primary); font-size: 1.12rem; font-weight: 900; letter-spacing: -.03em; }.r2-faq-list summary strong { font-size: 1.05rem; font-weight: 820; line-height: 1.45; }.r2-faq-list summary > i,.r2-faq-list summary > i::after { width: 14px; height: 2px; display: block; background: var(--brand-primary); content: ""; }.r2-faq-list summary > i { position: relative; justify-self: end; }.r2-faq-list summary > i::after { position: absolute; inset: 0; transform: rotate(90deg); }.r2-faq-list details[open] summary > i::after { display: none; }.r2-faq-list details p { margin: 0; padding: 0 58px 27px 100px; color: #53697d; font-size: .84rem; line-height: 1.75; }

.r2-faq-illustration { height: 174px; margin-top: 10px; }
.r2-faq-list { grid-column: 2; grid-row: 1 / span 2; }
.r2-faq-list summary strong { font-size: 1.12rem; }

/* 07 — final conversion section */
.r2-final { padding: 72px 0; overflow: hidden; background: #f4f7fa; }
.r2-final-shell { overflow: hidden; background: #fcfcfd; border: 1px solid rgba(23,59,94,.09); border-radius: 20px; box-shadow: 0 12px 32px rgba(23,59,94,.045); }
.r2-final-main { min-height: 382px; display: grid; grid-template-columns: minmax(0,.47fr) minmax(0,.53fr); align-items: center; }
.r2-final-copy { position: relative; z-index: 2; padding: 52px 24px 48px 54px; }.r2-final .eyebrow { color: var(--brand-primary); }.r2-final .eyebrow::before { background: var(--brand-primary); box-shadow: 10px 0 0 -2px var(--brand-gold); }.r2-final h2 { max-width: 610px; margin-top: 17px; color: var(--brand-navy); font-size: clamp(2.7rem,4.2vw,4.7rem); line-height: 1.06; }.r2-final h2 span { color: var(--brand-primary); }
.r2-final-support { margin: 24px 0 0; color: #53697d; font-size: .93rem; line-height: 1.8; }.r2-final-actions { display: flex; gap: 11px; margin-top: 30px; }.r2-final-actions .button { min-height: 48px; }.r2-final-primary { gap: 9px; color: #fff; background: var(--brand-primary); border-color: var(--brand-primary); box-shadow: 0 8px 18px rgba(229,34,50,.14); }.r2-final-primary svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }.r2-final-secondary { color: var(--brand-navy); background: transparent; border-color: rgba(23,59,94,.25); }.r2-final-secondary span { color: var(--brand-primary); }
.r2-final-map { position: relative; height: 100%; margin: 0; overflow: hidden; }.r2-final-map::before { content: ""; position: absolute; inset: 12% 8% 4% 4%; background: #e8eff5; border-radius: 50%; filter: blur(54px); opacity: .48; }.r2-final-map img { position: absolute; left: -8%; top: 50%; width: 122%; max-width: none; height: auto; display: block; object-fit: contain; opacity: .21; translate: 0 -50%; }
.r2-final-trust { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; padding: 0 28px; list-style: none; border-top: 1px solid rgba(23,59,94,.09); }.r2-final-trust li { position: relative; min-width: 0; min-height: 112px; display: grid; grid-template-columns: 30px 34px 1fr; gap: 10px; align-items: center; padding: 19px 20px; }.r2-final-trust li:not(:first-child) { border-left: 1px solid rgba(23,59,94,.09); }.r2-final-trust li > span { align-self: start; padding-top: 3px; color: var(--brand-primary); font-size: .57rem; font-weight: 900; letter-spacing: .08em; }.r2-final-trust svg { width: 30px; height: 30px; fill: none; stroke: #536f88; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }.r2-final-trust .r2-final-icon-accent { fill: var(--brand-primary); stroke: var(--brand-primary); }.r2-final-trust strong { display: block; color: var(--brand-navy); font-size: .7rem; line-height: 1.4; }.r2-final-trust p { margin: 5px 0 0; color: var(--text-secondary); font-size: .58rem; line-height: 1.5; }

.r2-final-map img { left: -43%; width: 210%; opacity: .18; }

/* Responsive refinement */
@media (max-width: 1100px) {
  .r2-section { padding: 82px 0; }
  .r2-hero { min-height: auto; }
  .r2-hero-grid { grid-template-columns: minmax(0,.9fr) minmax(480px,1.1fr); gap: 30px; padding: 54px 0 62px; }
  .r2-platform-grid { grid-template-columns: repeat(3,1fr); }.r2-network-strip > div { grid-template-columns: repeat(4,1fr); row-gap: 8px; }.r2-network-strip a:nth-child(5) { border-left: 0; }
  .r2-industry-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }.r2-industry-tile,.r2-industry-tile:nth-child(n+5) { grid-column: span 1; }.r2-industry-tile:nth-child(7) { grid-column: 1 / -1; }
  .r2-execution-flow { grid-template-columns: repeat(3,1fr); }.r2-execution-flow > li { min-height: 330px; border-bottom: 1px solid rgba(255,255,255,.1); }.r2-execution-flow > li:nth-child(3) { border-right: 0; }.r2-execution-flow > li:nth-child(3)::before,.r2-execution-flow > li:nth-child(3)::after { display: none; }
}

@media (max-width: 900px) {
  .r2-section-heading-inline,.r2-section-heading-split { grid-template-columns: 1fr; display: grid; gap: 24px; align-items: start; }.r2-heading-index { width: fit-content; }
  .r2-hero-grid { grid-template-columns: 1fr; gap: 48px; }.r2-hero-copy { max-width: 720px; }.r2-hero-artwork { width: min(100%,700px); margin-inline: auto; }
  .r2-showcase-grid { grid-template-columns: 1fr; }.r2-scene { min-height: 430px; }
  .r2-growth-modes { grid-template-columns: 1fr; gap: 20px; }.r2-growth-modes nav { grid-template-columns: repeat(5,1fr); }
  .r2-process-flow { grid-template-columns: repeat(2,minmax(0,1fr)); }.r2-process-flow > li:nth-child(2)::after { display: none; }.r2-why-strip { grid-template-columns: 1fr; gap: 18px; }.r2-why-strip ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .r2-faq-layout { grid-template-columns: 1fr; gap: 32px; }.r2-faq-intro { position: static; }.r2-faq-list { grid-column: 1; grid-row: auto; }.r2-faq-contact { grid-column: 1; margin-top: 0; }
  .r2-final-main { grid-template-columns: minmax(0,.52fr) minmax(0,.48fr); }
}

@media (max-width: 700px) {
  .r2-section { padding: 70px 0; }.r2-section h2,.r2-final h2 { font-size: clamp(2.05rem,9.65vw,2.95rem); }.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size: clamp(2rem,9.25vw,2.8rem); }.r2-section-heading { margin-bottom: 36px; }
  .r2-hero { min-height: auto; }.r2-hero::before { background: conic-gradient(from 220deg at 43% 22%,transparent 0 16%,rgba(221,233,244,.28) 16% 31%,rgba(248,250,252,.34) 31% 45%,transparent 45% 100%),conic-gradient(from 34deg at 57% 62%,transparent 0 20%,rgba(251,224,231,.25) 20% 38%,transparent 38% 100%),linear-gradient(142deg,transparent 0 42%,rgba(250,237,241,.24) 42% 58%,transparent 58% 100%); mask-image: linear-gradient(to bottom,transparent 0 43%,rgba(0,0,0,.1) 54%,rgba(0,0,0,.45) 69%,rgba(0,0,0,.7) 86%,transparent); }.r2-hero::after { right: -24%; top: 57%; width: 128%; height: 43%; background: conic-gradient(from 228deg at 17% 25%,transparent 0 18%,rgba(211,226,240,.52) 18% 36%,rgba(237,244,249,.46) 36% 49%,transparent 49% 100%),conic-gradient(from 135deg at 51% 49%,transparent 0 17%,rgba(252,218,226,.5) 17% 34%,rgba(247,202,212,.34) 34% 46%,transparent 46% 100%),linear-gradient(144deg,transparent 0 34%,rgba(228,238,246,.48) 34% 53%,transparent 53% 100%); mask-image: linear-gradient(to bottom,transparent,black 30%,transparent); }.r2-hero-grid { width: calc(100% - 32px); gap: 38px; padding: 42px 0 52px; }.r2-hero-copy h1 { margin: 16px 0 25px; font-size: clamp(2.55rem,12.1vw,3.8rem); }.r2-hero-lead { font-size: .98rem; line-height: 1.72; }.r2-hero-actions { margin-top: 28px; }.r2-hero-actions .button { width: fit-content; }.r2-inline-points { gap: 7px; margin-top: 25px; }.r2-inline-points li { font-size: .71rem; }.r2-qualification { margin-top: 18px; }
  .r2-hero-artwork { overflow: hidden; }
  .r2-hero-artwork img { width: 135%; max-width: none; margin-left: -28%; }
  .r2-platform-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.r2-platform-card { min-height: 262px; padding: 18px 16px; }.r2-platform-card h3 { font-size: 1.05rem; }.r2-platform-card li { font-size: .59rem; }.r2-platform-brand { width: 40px; height: 34px; margin: 12px 0; }.r2-platform-brand img { width: 31px; height: 31px; }.platform-google .r2-platform-brand img { width: 34px; height: 34px; }.platform-meta .r2-platform-brand img { width: 36px; height: 27px; }.platform-tiktok .r2-platform-brand img { width: 31px; height: 31px; }.platform-telegram .r2-platform-brand img { width: 33px; height: 33px; }.platform-x .r2-platform-brand img { width: 29px; height: 29px; }.platform-microsoft .r2-platform-brand img { width: 30px; height: 30px; }.r2-platform-preview { position: static; width: min(100%,var(--mobile-preview-width)); margin: 8px auto 0; align-self: center; border-radius: 8px; }.r2-platform-card ul { padding: 13px 0 0; }.r2-network-strip { grid-template-columns: 1fr; gap: 12px; padding: 16px; }.r2-network-strip > div { grid-template-columns: repeat(4,1fr); row-gap: 7px; }.r2-network-strip a { padding: 7px 4px; font-size: .62rem; }.r2-network-strip img { width: 15px; height: 15px; }.network-amazon img { width: 20px; }.network-sharechat img { width: 16px; height: 16px; }.network-bigo img { width: 17px; height: 17px; }.network-yandex img { width: 15px; height: 15px; }.r2-network-strip a:nth-child(5) { border-left: 1px solid var(--border); }
  .r2-execution-anchor { padding: 16px 16px 30px; }.r2-execution-anchor::after { left: 26%; height: 34%; }.r2-scene { min-height: 430px; padding: 21px; }.r2-scene-meta { align-items: start; }.r2-scene-meta h3 { font-size: 1.1rem; text-align: right; }.search-mockup,.social-mockup { min-height: 330px; padding: 14px; }.search-mockup { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; align-items: start; }.mock-diagram-arrow { display: none; }.mock-search-keyword > div { margin-top: 0; }.mock-search-ad > div,.mock-search-landing > div,.mock-search-conversion > div { min-height: 124px; }.mock-search-conversion svg { width: 46px; height: 46px; }.social-mockup { grid-template-columns: 1.05fr .8fr; gap: 10px; }.social-reel-card { height: 184px; }.social-outcomes { grid-column: 1 / -1; grid-template-columns: repeat(5,auto); gap: 8px; justify-content: center; align-items: center; padding-top: 3px; }
  .r2-execution-flow { grid-template-columns: 1fr; }.r2-execution-flow > li { min-height: 0; display: grid; grid-template-columns: 56px 116px 1fr; gap: 10px; align-items: start; padding: 18px 16px; border-right: 0; }.r2-execution-flow > li:not(:last-child)::before { left: 39px; top: 73px; width: 1px; height: calc(100% - 61px); display: block; border: 0; background: rgba(217,163,58,.28); }.r2-execution-flow > li:not(:last-child)::after { content: "↓"; right: auto; top: auto; bottom: -12px; left: 27px; display: grid; }.r2-execution-step-head { gap: 6px; justify-items: start; }.r2-execution-number { font-size: .63rem; }.r2-execution-icon { width: 48px; height: 48px; }.r2-execution-icon svg { width: 36px; height: 36px; }.r2-execution-flow h3 { display: grid; justify-content: start; gap: 2px; margin: 3px 0 0; font-size: .88rem; }.r2-execution-flow h3 small { font-size: .61rem; }.r2-execution-flow ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 1px 0 0; }.r2-execution-flow ul li { padding: 4px 7px; background: rgba(255,255,255,.065); border: 0; border-radius: 5px; font-size: .59rem; }.r2-execution-flow ul li::before { display: none; }.r2-execution-support { grid-template-columns: 1fr; gap: 8px; }.r2-execution-support a { min-height: 80px; border: 1px solid #dfe6ec; }.r2-execution-support-icon { width: 52px; height: 52px; }.r2-execution-support-icon svg { width: 34px; height: 34px; }
  .r2-industries { padding-block: 56px; }.r2-industries .r2-section-heading { margin-bottom: 12px; }.r2-evaluation-dimensions { grid-template-columns: 1fr; margin-bottom: 18px; padding: 8px; }.r2-evaluation-dimensions > strong { gap: 7px; padding: 0 0 5px; border-right: 0; border-bottom: 1px solid rgba(23,59,94,.09); font-size: .62rem; }.r2-evaluation-dimensions > strong::before { width: 5px; height: 5px; }.r2-evaluation-dimensions ul { grid-template-columns: repeat(3,minmax(0,1fr)); padding-top: 2px; }.r2-evaluation-dimensions li { justify-content: flex-start; gap: 5px; padding: 4px 6px; font-size: .58rem; }.r2-evaluation-dimensions li:not(:first-child)::before { display: none; }.r2-evaluation-dimensions svg { width: 14px; height: 14px; }.r2-industry-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.r2-industry-tile,.r2-industry-tile:nth-child(n+5),.r2-industry-tile:nth-child(7) { min-height: 194px; grid-column: span 1; grid-template-columns: 1fr; grid-template-rows: 120px auto; }.r2-industry-visual { padding: 17px 7px 4px; }.r2-industry-visual > span { left: 10px; top: 9px; }.r2-industry-visual img { height: 108px; }.r2-industry-copy { justify-content: flex-start; padding: 11px 12px 14px; }.r2-industry-tile small { margin-top: 6px; }.r2-mobile-growth-tile { position: relative; min-height: 194px; display: grid; grid-template-rows: 120px auto; overflow: hidden; color: var(--brand-navy); background: rgba(255,255,255,.94); border: 1px solid rgba(23,59,94,.1); border-radius: 15px; box-shadow: 0 8px 24px rgba(23,59,94,.045); }.r2-mobile-growth-tile::after { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(180deg,var(--brand-primary),#f07b84); opacity: .85; }.r2-mobile-growth-visual { position: relative; display: grid; place-items: center; background: linear-gradient(145deg,#f8fafc,#eef2f6); }.r2-mobile-growth-visual > span { position: absolute; left: 10px; top: 9px; color: var(--brand-primary); font-size: .56rem; font-weight: 900; letter-spacing: .12em; }.r2-mobile-growth-visual svg { width: 58px; height: 58px; fill: none; stroke: #60788d; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }.r2-mobile-growth-visual .r2-mobile-growth-accent { stroke: var(--brand-primary); }.r2-mobile-growth-copy { padding: 10px 11px 12px; }.r2-mobile-growth-copy h3 { font-size: .94rem; }.r2-mobile-growth-copy p { margin: 6px 0 0; color: var(--text-secondary); font-size: .5rem; font-weight: 680; line-height: 1.55; white-space: nowrap; }.r2-growth-modes { display: none; }
  .r2-cooperation .r2-section-heading { margin-bottom: 26px; }.r2-process-intro { margin-top: 14px; font-size: .82rem; }.r2-process-flow { position: relative; grid-template-columns: 1fr; gap: 10px; padding-left: 28px; }.r2-process-flow::before { content: ""; position: absolute; left: 10px; top: 23px; bottom: 23px; width: 1px; background: rgba(229,34,50,.42); }.r2-process-flow > li { min-height: 136px; grid-template-columns: 28px 98px 1fr; grid-template-rows: 1fr; gap: 8px; align-items: center; padding: 12px 13px 12px 10px; }.r2-process-flow > li::before { content: ""; position: absolute; left: -23px; top: 50%; width: 7px; height: 7px; background: #fff; border: 2px solid var(--brand-primary); border-radius: 50%; translate: 0 -50%; }.r2-process-flow > li:not(:last-child)::after,.r2-process-flow > li:nth-child(2)::after { display: none; }.r2-process-flow > li > span { align-self: start; padding-top: 3px; }.r2-process-visual { height: 108px; }.r2-process-visual img { width: 100%; height: 104px; }.r2-process-copy { align-self: center; padding: 0 0 0 9px; border-top: 0; border-left: 1px solid rgba(23,59,94,.08); }.r2-process-flow h3 { font-size: 1rem; }.r2-process-flow p { margin-top: 6px; font-size: .65rem; line-height: 1.5; }.r2-why-strip { grid-template-columns: 1fr; gap: 16px; padding: 19px 16px; }.r2-why-strip ul { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; }.r2-why-strip li { grid-template-columns: 27px 1fr; gap: 7px; padding: 10px 8px; border-left: 0; border-top: 1px solid rgba(23,59,94,.09); }.r2-why-strip li:nth-child(even) { border-left: 1px solid rgba(23,59,94,.09); }.r2-why-strip svg { width: 24px; height: 24px; }.r2-why-strip strong { font-size: .65rem; }.r2-why-strip li p { font-size: .54rem; }.r2-faq { padding-top: 62px; }.r2-faq-layout { gap: 34px; }.r2-faq-list summary { min-height: 70px; padding-block: 14px; font-size: .88rem; }.r2-faq-list details p { padding-left: 0; padding-right: 30px; padding-bottom: 18px; font-size: .82rem; }
  .r2-final { padding: 54px 0; }.r2-final-shell { border-radius: 15px; }.r2-final-main { min-height: 0; grid-template-columns: 1fr; }.r2-final-copy { padding: 34px 22px 32px; }.r2-final h2 { margin-top: 14px; font-size: clamp(2.25rem,10.8vw,3.1rem); }.r2-final-support { margin-top: 19px; font-size: .82rem; line-height: 1.7; }.r2-final-actions { display: grid; gap: 9px; margin-top: 24px; }.r2-final-actions .button { width: 100%; min-height: 48px; }.r2-final-map { display: none; }.r2-final-trust { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 0 10px; }.r2-final-trust li { min-height: 104px; grid-template-columns: 25px 1fr; gap: 5px 8px; align-content: center; padding: 14px 10px; }.r2-final-trust li:nth-child(odd) { border-left: 0; }.r2-final-trust li:nth-child(n+3) { border-top: 1px solid rgba(23,59,94,.09); }.r2-final-trust li > span { grid-row: 1 / span 2; }.r2-final-trust svg { width: 25px; height: 25px; }.r2-final-trust li > svg { grid-column: 2; }.r2-final-trust li > div { grid-column: 2; }.r2-final-trust strong { font-size: .64rem; }.r2-final-trust p { font-size: .53rem; }
  .r2-faq { padding-block: 54px; }.r2-faq-layout { gap: 24px; }.r2-faq-intro h2 { margin-top: 13px; font-size: clamp(2rem,9.25vw,2.65rem); }.r2-faq-support { margin-top: 16px; font-size: .78rem; line-height: 1.65; }.r2-faq-underline { margin-top: 13px; }.r2-faq-illustration { display: none; }.r2-faq-list { padding-top: 0; }.r2-faq-list details,.r2-faq-list details:first-child:not([open]) { margin-bottom: 9px; overflow: hidden; background: rgba(255,255,255,.78); border: 1px solid rgba(23,59,94,.1); border-radius: 9px; }.r2-faq-list details[open] { margin-bottom: 9px; background: #f5f8fb; }.r2-faq-list summary { min-height: 66px; grid-template-columns: 32px 1fr 14px; gap: 8px; padding: 14px 15px; }.r2-faq-list summary > span { font-size: .98rem; }.r2-faq-list summary strong { font-size: .85rem; line-height: 1.4; }.r2-faq-list summary > i,.r2-faq-list summary > i::after { width: 12px; }.r2-faq-list details p { padding: 0 42px 17px 55px; font-size: .76rem; line-height: 1.65; }.r2-faq-contact { margin-top: 0; font-size: .74rem; }
  .r2-final h2 { font-size: clamp(2rem,8.8vw,2.35rem); }
  .r2-mobile-growth-visual { background: #f2f6fa; }
  .r2-mobile-growth-visual svg { width: 108px; height: 76px; stroke: none; }
  .r2-mobile-growth-visual .r2-growth-route { fill: none; stroke: #7e93a6; stroke-width: 1.5; }
  .r2-mobile-growth-visual .r2-growth-node { fill: #fff; stroke: #173b5e; stroke-width: 2; }
  .r2-mobile-growth-visual .r2-growth-node-gold { fill: #f2a63a; stroke: #f2a63a; }
  .r2-mobile-growth-visual .r2-growth-target { fill: #fff; stroke: #173b5e; stroke-width: 2; }
  .r2-mobile-growth-visual .r2-growth-target-core { fill: #173b5e; }
  .r2-mobile-growth-visual .r2-mobile-growth-accent { fill: none; stroke: #e52232; stroke-width: 2.4; }
}

@media (max-width: 390px) {
  .r2-hero-grid { width: calc(100% - 24px); }
  .r2-platform-card { min-height: 250px; padding-inline: 14px; }.r2-platform-preview { width: min(100%,var(--mobile-preview-width)); }.r2-platform-card ul { gap: 5px; }.r2-platform-card li { padding-inline: 6px; }
  .r2-scene { padding-inline: 16px; }.mock-search-ad > div,.mock-search-landing > div { padding-inline: 9px; }.mock-search-landing strong { margin-inline: 8px; padding-inline: 6px; }.social-ui-head { grid-template-columns: 22px 1fr; }.social-ui-head > i { width: 22px; height: 22px; }.social-ui-head em { display: none; }.social-feed-card { padding: 8px; }.social-feed-art { height: 88px; }.social-outcomes { gap: 5px; }.social-outcomes > div > span { width: 34px; height: 34px; }.social-outcomes svg { width: 19px; height: 19px; }
  .r2-execution-flow > li { grid-template-columns: 54px 102px 1fr; padding-inline: 13px; }.r2-execution-flow > li:not(:last-child)::before { left: 36px; }.r2-execution-flow > li:not(:last-child)::after { left: 24px; }
  .r2-industry-tile h3 { font-size: 1.05rem; }.r2-industry-tile small { font-size: .59rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* R10 final overrides: compact hierarchy without changing the homepage architecture. */
.r2-section { padding-block: 80px; }
.r2-section h2,.r2-final h2,.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size: clamp(2.125rem,2.7vw,2.375rem); line-height: 1.15; letter-spacing: -.04em; }
.r2-section-heading { margin-bottom: 32px; }.r2-section-heading-split { gap: 44px; }
.r2-section-heading-split > p,.r2-hero-lead { font-size: 1rem; line-height: 1.7; }
.r2-hero { min-height: 720px; }.r2-hero-copy h1 { max-width: 650px; margin-block: 16px 20px; font-size: clamp(3rem,3.6vw,3.25rem); line-height: 1.08; }.r2-inline-points { margin-top: 22px; }.r2-hero-actions { margin-top: 25px; }
@media (max-width:700px) { .r2-section { padding-block:56px; }.r2-section h2,.r2-final h2,.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size:clamp(1.625rem,7.2vw,1.875rem); line-height:1.2; }.r2-section-heading { margin-bottom:24px; }.r2-hero-copy h1 { font-size:clamp(2.125rem,9.4vw,2.375rem); line-height:1.1; }.r2-hero-lead,.r2-section-heading-split > p { font-size:.94rem; line-height:1.7; } }

/* R10.1 — final homepage hierarchy and protected Chinese phrase groups. */
.r2-section h2,.r2-final h2,.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size:clamp(1.875rem,2.2vw,2rem); }
.r2-hero-copy h1 { max-width:620px; font-size:clamp(2.875rem,3.2vw,3rem); }
.r2-hero-copy h1 > span { display:block; }.r2-keep-word { white-space:nowrap; }
@media (max-width:700px) {
  .r2-section h2,.r2-final h2,.r2-execution h2,.r2-industries h2,.r2-cooperation h2,.r2-faq h2 { font-size:clamp(1.5rem,6.4vw,1.625rem); }
  .r2-hero-copy h1 { font-size:clamp(2rem,8.7vw,2.125rem); }
}
