/* Creator Partnership shares the corporate typography, geometry and motion. */
.creator-page { --creator-muted:#4d7283; }
.creator-page .eyebrow::before { background:var(--detail); }
.creator-page .brand-icon .icon-accent { stroke:var(--blue); }
.creator-page .cp-section[id] { scroll-margin-top:-64px; }
.cp-hero { position:relative; margin:24px; padding:72px 32px 64px; border-radius:var(--radius-panel); background:linear-gradient(145deg,var(--pale),#f7fbfd 70%); overflow:hidden; text-align:center; }
.cp-hero::before,.cp-hero::after { content:''; position:absolute; width:240px; height:240px; border:1px solid #c9e5ef; border-radius:50%; pointer-events:none; opacity:.45; }
.cp-hero::before { left:-155px; top:18%; }
.cp-hero::after { right:-145px; bottom:-120px; width:360px; height:360px; }
.cp-hero-inner { max-width:840px; margin:auto; position:relative; }
.cp-hero .eyebrow { justify-content:center; margin-bottom:30px; }
.cp-hero h1 { color:var(--blue-deep); font-size:clamp(2.5rem,4.65vw,4.1rem); line-height:1.5; letter-spacing:-.035em; margin-bottom:30px; }
.cp-hero .body-copy { font-size:1.0625rem; line-height:2; max-width:640px; margin:0 auto 16px; }
.cp-hero .text-link { margin-top:20px; font-size:.875rem; }
.cp-section { padding-block:104px; }
.cp-section-heading { margin-bottom:44px; }
.cp-section-heading h2 { color:var(--ink); }
.cp-approach-layout { display:grid; grid-template-columns:1fr 1fr; gap:88px; align-items:start; }
.cp-approach-layout h2 { margin-bottom:0; }
.cp-approach-copy .body-copy { font-size:1.0625rem; }
.cp-partnership-note { padding-top:24px; margin:32px 0 0; border-top:1px solid var(--line); color:var(--blue-deep); font-size:.9375rem; line-height:1.95; }
.cp-cases { background:linear-gradient(180deg,#fff,var(--surface-soft) 20%,var(--surface-soft) 80%,#fff); }
.cp-cases .cp-section-heading { text-align:center; max-width:720px; margin-inline:auto; }
.cp-cases .eyebrow { justify-content:center; }
.cp-cases h2 { font:700 clamp(1.75rem,3.4vw,2.875rem)/1.35 var(--font-en); color:var(--blue-deep); letter-spacing:-.035em; margin-bottom:20px; }
.cp-cases .body-copy { margin:0; }
.cp-case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.cp-case { min-width:0; padding:32px; border-radius:var(--radius-card); background:#fff; border:1px solid var(--line); box-shadow:var(--shadow-card); }
.cp-case:nth-child(2) { border-color:#b9dae7; background:linear-gradient(160deg,#fff 30%,var(--pale)); }
.cp-case-type { color:var(--body); font-size:.8125rem; margin:0 0 8px; }
.cp-case h3 { margin:0 0 36px; font:700 1rem/1.5 var(--font-en); color:var(--ink); }
.cp-case-platform { display:flex; align-items:center; gap:4px; }
.cp-platform-mark { display:flex; align-items:center; justify-content:center; width:117px; height:100px; flex:0 0 117px; margin-left:-16px; }
.cp-platform-name>span { display:block; }
.cp-platform-logo { display:block; object-fit:contain; }
.cp-platform-logo--youtube { width:auto; height:100px; max-width:none; }
.cp-platform-logo--instagram { width:54px; height:54px; }
.cp-case-growth { display:flex; align-items:baseline; gap:10px; margin:0; color:var(--blue-deep); white-space:nowrap; }
.cp-case-growth strong { font:600 clamp(3.75rem,6.4vw,5.6rem)/1.1 var(--font-en); font-variant-numeric:tabular-nums; letter-spacing:-.06em; }
.cp-case-growth>span { font-size:1.625rem; font-weight:600; line-height:1; }
.cp-case-result { display:flex; flex-direction:column; gap:8px; margin:26px 0 0; padding-top:22px; border-top:1px solid var(--line); color:var(--body); font-size:.875rem; line-height:1.9; }
.cp-case-result>strong { color:var(--blue-deep); font-size:.9375rem; font-weight:600; }
.cp-nowrap { display:inline-block; }
.cp-case-notes { margin-top:24px; color:var(--body); font-size:.8125rem; line-height:1.9; }
.cp-case-notes p { margin:0 0 4px; }
.cp-support .cp-section-heading { display:grid; grid-template-columns:1fr 1fr; gap:88px; align-items:center; margin-bottom:48px; }
.cp-support .cp-section-heading h2 { margin-bottom:0; }
.cp-support-copy .body-copy:last-child { margin-bottom:0; }
.cp-support-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; padding:0; margin:0; gap:0 40px; }
.cp-support-grid li { position:relative; min-width:0; padding:30px 0; border-top:1px solid var(--line); }
.cp-support-grid .brand-icon { width:32px; height:32px; margin-bottom:20px; }
.cp-support-grid h3 { color:var(--blue-deep); font:700 .9375rem/1.5 var(--font-en); margin-bottom:10px; }
.cp-support-grid p { color:var(--body); font-size:.9375rem; line-height:1.85; margin:0; }
.cp-channel { margin-top:20px; padding:20px 24px; background:var(--surface-soft); border-radius:var(--radius-inset); display:flex; align-items:baseline; gap:24px; }
.cp-channel h3 { flex-shrink:0; color:var(--blue); font:700 .75rem/1.5 var(--font-en); margin:0; }
.cp-channel p { margin:0; color:var(--body); font-size:.8125rem; }
.cp-conditions { margin:28px 0 0; color:var(--body); font-size:.875rem; line-height:1.9; }
.cp-contact { padding-block:16px 88px; }
.cp-contact-panel { border-radius:var(--radius-panel); padding:64px; background:linear-gradient(120deg,var(--pale),var(--surface-soft)); border:1px solid var(--line); text-align:center; }
.cp-contact-panel .eyebrow { justify-content:center; }
.cp-contact-panel h2 { color:var(--blue-deep); margin-bottom:24px; }
.cp-contact-panel .body-copy { margin-bottom:28px; }
.cp-reply { margin:0 0 32px; color:var(--blue-deep); font-weight:600; font-size:1.0625rem; }
.cp-contact-actions { display:flex; flex-direction:column; align-items:center; gap:16px; }
.cp-contact-actions .button { min-width:220px; }
.cp-contact-actions p { margin:0; font-size:.75rem; color:var(--body); }
.cp-contact-actions .cp-contact-alternative { font-size:.875rem; line-height:1.85; margin-bottom:4px; }
@media (min-width:1700px) { .cp-hero { max-width:1664px; margin-inline:auto; } }
@media (max-width:1150px) {
  .cp-hero { margin-inline:20px; padding:64px 32px 56px; }
  .cp-approach-layout,.cp-support .cp-section-heading { gap:44px; }
  .cp-case-grid { gap:18px; }
  .cp-case { padding:24px; }
  .cp-case h3 { margin-bottom:30px; }
  .cp-case-growth strong { font-size:clamp(3.5rem,6.4vw,5rem); }
  .cp-support-grid { gap:0 28px; }
  .cp-contact-panel { padding:52px 40px; }
}
@media (max-width:900px) {
  .cp-approach-layout,.cp-support .cp-section-heading { grid-template-columns:1fr; gap:28px; }
  .cp-approach-copy { max-width:680px; }
  .cp-case { padding:24px 18px; }
  .cp-case-platform { gap:0; }
  .cp-platform-mark { margin-left:-20px; }
  .cp-case h3 { font-size:.8125rem; }
  .cp-case-growth strong { font-size:clamp(3.125rem,6.4vw,3.75rem); }
  .cp-case-growth>span { font-size:1.375rem; }
  .cp-support-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; }
}
@media (max-width:760px) {
  .cp-partnership-note { margin-top:24px; font-size:.875rem; }
  .cp-hero { margin:12px; padding:32px 24px; text-align:left; }
  .cp-hero .eyebrow { justify-content:flex-start; font-size:.75rem; margin-bottom:24px; }
  .cp-hero h1 { font-size:clamp(1.8rem,7.7vw,2.8rem); margin-bottom:26px; }
  .cp-hero .body-copy { font-size:.9375rem; line-height:1.95; margin-bottom:18px; }
  .cp-hero .optional { display:none; }
  .cp-hero .text-link { margin-top:10px; font-size:.8125rem; }
  .cp-section { padding-block:56px; }
  .creator-page .cp-section[id] { scroll-margin-top:-24px; }
  .cp-section-heading { margin-bottom:32px; }
  .cp-approach-copy .body-copy { font-size:.9375rem; }
  .cp-cases .cp-section-heading { text-align:left; }
  .cp-cases .eyebrow { justify-content:flex-start; }
  .cp-cases h2 { font-size:clamp(1.6rem,6.7vw,2rem); }
  .cp-case-grid { grid-template-columns:1fr; gap:18px; }
  .cp-case { padding:22px; }
  .cp-case h3 { margin-bottom:10px; font-size:.9375rem; }
  .cp-case-platform { gap:4px; }
  .cp-platform-mark { width:84px; height:72px; flex-basis:84px; margin-left:-12px; }
  .cp-platform-logo--youtube { height:72px; }
  .cp-platform-logo--instagram { width:39px; height:39px; }
  .cp-case-growth strong { font-size:clamp(3.4rem,15vw,4.25rem); }
  .cp-case-growth>span { font-size:1.625rem; }
  .cp-case-result { flex-direction:row; align-items:baseline; gap:14px; margin-top:16px; padding-top:14px; font-size:.8125rem; }
  .cp-case-result>strong { flex-shrink:0; font-size:.875rem; }
  .cp-case-notes { margin-top:20px; font-size:.8125rem; }
  .cp-support .cp-section-heading { margin-bottom:36px; }
  .cp-support-grid { gap:0 24px; }
  .cp-support-grid li { padding:24px 0; }
  .cp-support-grid h3 { font-size:.875rem; }
  .cp-support-grid p { font-size:.9375rem; }
  .cp-channel { display:block; padding:20px; }
  .cp-channel h3 { margin-bottom:8px; }
  .cp-conditions { font-size:.8125rem; }
  .cp-contact { padding-block:0 64px; }
  .cp-contact>.wrap { width:calc(100% - 24px); }
  .cp-contact-panel { padding:40px 24px; text-align:left; }
  .cp-contact-panel .eyebrow { justify-content:flex-start; }
  .cp-contact-panel h2 { font-size:clamp(1.5rem,6.5vw,2rem); }
  .cp-reply { font-size:.9375rem; }
  .cp-contact-actions { align-items:stretch; }
  .cp-contact-actions .button { min-width:0; width:100%; }
}
@media (max-width:360px) {
  .cp-case { padding:20px; }
  .cp-support-grid { grid-template-columns:1fr; }
  .cp-support-grid li { padding-left:48px; }
  .cp-support-grid .brand-icon { position:absolute; left:0; top:24px; width:28px; height:28px; }
}
