/* Advertiser page. Inherits the corporate type, buttons, tokens and motion. */
.marketing-page .mp-hero { margin:24px; padding:72px 0; border:1px solid #e4eff3; border-radius:var(--radius-panel); background:linear-gradient(120deg,#f3fafd 0%,#fff 72%); }
.marketing-page .mp-hero-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr); align-items:center; gap:64px; }
.marketing-page .mp-hero .eyebrow { margin-bottom:18px; }
.marketing-page .mp-audience { color:var(--blue-deep); font-size:.875rem; font-weight:600; margin-bottom:22px; }
.marketing-page .mp-hero h1 { color:var(--ink); font-size:clamp(2rem,3.4vw,3.15rem); line-height:1.55; letter-spacing:-.04em; margin-bottom:28px; }
.marketing-page .mp-hero-copy .body-copy { font-size:1rem; max-width:570px; }
.marketing-page .mp-hero-copy .mp-hero-note { font-size:.9375rem; margin-bottom:30px; }
.marketing-page .mp-hero .actions { align-items:center; gap:16px 24px; }
.marketing-page .mp-hero .actions .text-link { font-size:.875rem; }
.marketing-page .mp-hero-panel { padding:36px; border:1px solid #dcebf0; border-radius:var(--radius-card); background:#fff; box-shadow:0 16px 48px #0b6f9707; min-width:0; }
.marketing-page .mp-panel-label { font:600 .75rem/1.5 var(--font-en); color:var(--blue); margin-bottom:12px; }
.marketing-page .mp-panel-title { font-size:1.5rem; font-weight:600; line-height:1.6; letter-spacing:-.025em; margin-bottom:28px; }
.marketing-page .mp-field-list { margin:0; padding:0; list-style:none; }
.marketing-page .mp-field-list li { display:flex; align-items:center; gap:16px; padding:20px 0; }
.marketing-page .mp-field-list li+li { border-top:1px solid var(--line); }
.marketing-page .mp-field-icon { display:grid; place-items:center; width:52px; height:52px; flex:0 0 52px; border-radius:16px; background:var(--pale); }
.marketing-page .mp-field-icon .brand-icon { width:30px; height:30px; }
.marketing-page .mp-field-list li:nth-child(2) .mp-field-icon { background:var(--orange-pale); }
.marketing-page .mp-field-list li:nth-child(2) .brand-icon { stroke:var(--orange-ink); }
.marketing-page .mp-field-list li>div>span { display:block; color:var(--body); font:600 .6875rem/1.6 var(--font-en); margin-bottom:5px; }
.marketing-page .mp-field-list strong { display:block; font-size:.875rem; font-weight:600; line-height:1.65; }
.marketing-page .mp-panel-foot { font-size:.75rem; line-height:1.8; color:var(--body); margin:20px 0 0; padding-top:20px; border-top:1px solid var(--line); }
.marketing-page .mp-section { padding-block:104px; }
.marketing-page .mp-section[id] { scroll-margin-top:-64px; }
.marketing-page .mp-heading { max-width:760px; margin-bottom:44px; }
.marketing-page .mp-heading .body-copy { margin-bottom:0; }
.marketing-page .mp-mobile-break { display:none; }
.marketing-page .mp-challenge-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.marketing-page .mp-challenge { min-width:0; display:flex; flex-direction:column; padding:30px; border-radius:var(--radius-card); background:#fff; border:1px solid var(--line); }
.marketing-page .mp-number { color:var(--blue); font:600 .8125rem/1.6 var(--font-en); font-variant-numeric:tabular-nums; }
.marketing-page .mp-challenge .mp-number { margin-bottom:22px; }
.marketing-page .mp-challenge h3 { font-size:1.125rem; line-height:1.8; margin-bottom:18px; }
.marketing-page .mp-challenge>p { color:var(--body); font-size:.9375rem; line-height:1.9; margin-bottom:22px; }
.marketing-page .mp-challenge .text-link { margin-top:auto; padding-top:16px; border-top:1px solid var(--line); font-size:.875rem; font-weight:600; line-height:1.7; justify-content:space-between; }
.marketing-page .mp-challenge .button-arrow { width:16px; height:16px; flex-basis:16px; }
.marketing-page .mp-services { background:var(--surface-soft); }
.marketing-page .mp-service-list { display:grid; gap:18px; }
.marketing-page .mp-service { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; align-items:start; padding:40px 44px; border:1px solid var(--line); border-radius:var(--radius-card); background:#fff; }
.marketing-page .mp-service-heading .mp-number { display:block; margin-bottom:20px; }
.marketing-page .mp-service-name { color:var(--blue); font:600 .875rem/1.6 var(--font-en); margin-bottom:14px; }
.marketing-page .mp-service-heading h3 { font-size:1.375rem; line-height:1.7; margin-bottom:0; }
.marketing-page .mp-service-content .body-copy { font-size:.9375rem; margin-bottom:24px; }
.marketing-page .mp-scope { padding:18px 0 0; border-top:1px solid var(--line); margin:0; display:grid; gap:10px; list-style:none; }
.marketing-page .mp-scope li { position:relative; padding-left:18px; font-size:.875rem; line-height:1.8; }
.marketing-page .mp-scope li::before { content:''; position:absolute; left:0; top:.75em; width:6px; height:6px; background:var(--detail); border-radius:50%; }
.marketing-page .mp-service:nth-child(2) { border-color:var(--line-warm); }
.marketing-page .mp-service:nth-child(2) .mp-service-name { color:var(--orange-ink); }
.marketing-page .mp-service:nth-child(2) .mp-scope li::before { background:var(--orange); }
.marketing-page .mp-approach-heading { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; margin-bottom:44px; }
.marketing-page .mp-approach-heading h2,.marketing-page .mp-approach-heading .body-copy { margin-bottom:0; }
.marketing-page .mp-process { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; list-style:none; padding:0; margin:0; }
.marketing-page .mp-process li { min-width:0; border-top:1px solid var(--line); padding-top:26px; display:flex; flex-direction:column; }
.marketing-page .mp-process-heading { display:flex; align-items:baseline; gap:14px; margin-bottom:18px; }
.marketing-page .mp-process h3 { font-size:1.125rem; margin:0; }
.marketing-page .mp-process li>p { font-size:.9375rem; color:var(--body); line-height:1.95; margin-bottom:22px; }
.marketing-page .mp-process-detail { display:block; padding-top:16px; border-top:1px solid var(--line); font-size:.75rem; color:var(--blue); margin-top:auto; }
.marketing-page .mp-agency-note { margin-top:48px; display:flex; align-items:flex-start; gap:24px; padding:30px 34px; border-radius:var(--radius-inset); background:var(--surface-warm); border:1px solid var(--line-warm); }
.marketing-page .mp-agency-note>.brand-icon { width:30px; height:30px; margin-top:3px; stroke:var(--orange-ink); }
.marketing-page .mp-agency-note h3 { font-size:1rem; margin-bottom:10px; }
.marketing-page .mp-agency-note p { font-size:.9375rem; color:var(--body); margin:0; }
.marketing-page .mp-media { padding-top:48px; background:linear-gradient(180deg,#fff,var(--surface-soft) 50%,#fff); }
.marketing-page .mp-media-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); align-items:center; gap:88px; }
.marketing-page .mp-media-card { display:block; padding:36px; border:1px solid var(--line); background:#fff; border-radius:var(--radius-card); box-shadow:var(--shadow-card); transition:box-shadow 240ms ease,border-color 240ms ease; }
.marketing-page .mp-media-card-head { display:flex; align-items:center; gap:20px; margin-bottom:26px; }
.marketing-page .mp-media-card-head>img { width:84px; height:84px; flex:0 0 84px; object-fit:cover; border-radius:50%; }
.marketing-page .mp-media-card-head p { color:var(--ink); font:700 1.25rem/1.5 var(--font-en); margin-bottom:4px; }
.marketing-page .mp-media-card-head span { display:block; font:500 .6875rem/1.7 var(--font-en); color:var(--body); }
.marketing-page .mp-media-card h3 { font-size:1.5rem; line-height:1.65; margin-bottom:10px; }
.marketing-page .mp-handle { display:block; color:var(--blue); font:600 .8125rem/1.6 var(--font-en); margin-bottom:24px; }
.marketing-page .mp-media-note { color:var(--body); font-size:.875rem; line-height:1.9; margin-bottom:22px; }
.marketing-page .mp-media-link { display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--line); padding-top:22px; color:var(--blue); font-size:.8125rem; font-weight:600; }
.marketing-page .mp-contact { padding-block:16px 72px; }
.marketing-page .mp-contact-panel { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr); gap:56px; align-items:center; border-radius:var(--radius-panel); background:var(--pale); padding:56px; }
.marketing-page .mp-contact-note { color:var(--body); font-size:.875rem; line-height:1.9; margin:0; }
.marketing-page .mp-contact-actions { display:flex; flex-direction:column; align-items:center; min-width:0; }
.marketing-page .mp-contact-actions .button { width:100%; }
.marketing-page .mp-contact-actions>p { color:var(--body); font-size:.75rem; margin:18px 0 0; }
.marketing-page .mp-company-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; margin-top:12px; color:var(--blue); font-size:.8125rem; font-weight:500; text-underline-offset:5px; }
.marketing-page .mp-company-link .button-arrow { width:16px; height:16px; flex-basis:16px; }
.marketing-page .mp-creator-route { margin:28px 0 0; text-align:center; color:var(--body); font-size:.8125rem; line-height:2; }
.marketing-page .mp-creator-route a { display:inline-block; color:var(--blue); text-decoration:underline; text-underline-offset:5px; padding:8px 0; }
@media (hover:hover) and (pointer:fine) {
  .marketing-page .mp-media-card:hover { border-color:#aacddb; box-shadow:var(--shadow-hover); }
  .marketing-page .mp-media-card:hover .button-arrow { transform:translate(2px,-2px); }
  .marketing-page .mp-company-link:hover { text-decoration:underline; text-underline-offset:5px; }
}
@media (max-width:1100px) {
  .marketing-page .mp-hero-layout { gap:36px; }
  .marketing-page .mp-hero-panel { padding:28px; }
  .marketing-page .mp-hero h1 { font-size:2.15rem; }
  .marketing-page .mp-field-list { margin-top:12px; }
  .marketing-page .mp-field-list li { gap:12px; }
  .marketing-page .mp-field-icon { width:44px; height:44px; flex-basis:44px; border-radius:13px; }
  .marketing-page .mp-field-icon .brand-icon { width:27px; height:27px; }
  .marketing-page .mp-challenge { padding:26px; }
  .marketing-page .mp-challenge h3 { font-size:1rem; }
  .marketing-page .mp-service { gap:40px; padding:36px; }
  .marketing-page .mp-media-layout { gap:48px; }
  .marketing-page .mp-contact-panel { padding:44px; gap:36px; }
}
@media (max-width:900px) {
  .marketing-page .mp-hero-layout { grid-template-columns:1fr; }
  .marketing-page .mp-hero-copy { max-width:640px; }
  .marketing-page .mp-hero-panel { padding:30px; }
  .marketing-page .mp-panel-title { font-size:1.25rem; }
  .marketing-page .mp-panel-title br { display:none; }
  .marketing-page .mp-field-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
  .marketing-page .mp-field-list li { display:block; padding:0; }
  .marketing-page .mp-field-list li+li { border:0; }
  .marketing-page .mp-field-icon { margin-bottom:16px; }
  .marketing-page .mp-field-list strong { font-size:.8125rem; }
  .marketing-page .mp-field-list li>div>span { font-size:.6875rem; }
  .marketing-page .mp-challenge-grid { grid-template-columns:1fr; gap:16px; }
  .marketing-page .mp-challenge h3 { font-size:1.25rem; }
  .marketing-page .mp-challenge h3 br { display:none; }
  .marketing-page .mp-challenge .text-link { max-width:300px; width:100%; }
  .marketing-page .mp-approach-heading { gap:40px; }
  .marketing-page .mp-process { gap:24px; }
  .marketing-page .mp-process-heading { display:block; }
  .marketing-page .mp-process-heading .mp-number { display:block; margin-bottom:12px; }
  .marketing-page .mp-media-layout { grid-template-columns:1fr 1fr; gap:32px; }
  .marketing-page .mp-media-card { padding:28px; }
  .marketing-page .mp-media-card-head { gap:14px; }
  .marketing-page .mp-media-card-head>img { width:64px; height:64px; flex-basis:64px; }
  .marketing-page .mp-contact-panel { grid-template-columns:1fr; }
  .marketing-page .mp-contact-actions { align-items:flex-start; }
  .marketing-page .mp-contact-actions .button { width:auto; }
}
@media (max-width:760px) {
  .marketing-page .mp-hero { margin:12px 12px 0; padding:30px 0 24px; border-radius:24px; }
  .marketing-page .mp-hero>.wrap { width:calc(100% - 40px); }
  .marketing-page .mp-hero h1 { font-size:clamp(1.625rem,5.7vw,2.35rem); line-height:1.65; }
  .marketing-page .mp-hero .eyebrow { font-size:.75rem; }
  .marketing-page .mp-audience { font-size:.8125rem; margin-bottom:18px; }
  .marketing-page .mp-hero-copy .body-copy,.marketing-page .mp-hero-copy .mp-hero-note { font-size:.9375rem; }
  .marketing-page .mp-hero .optional { display:none; }
  .marketing-page .mp-hero .actions { gap:12px; }
  .marketing-page .mp-hero .actions .button { width:100%; font-size:.8125rem; padding-inline:14px; }
  .marketing-page .mp-hero .actions .text-link { padding-block:8px; }
  .marketing-page .mp-hero-layout { gap:28px; }
  .marketing-page .mp-hero-panel { padding:20px; }
  .marketing-page .mp-panel-title { font-size:1.0625rem; margin-bottom:12px; }
  .marketing-page .mp-panel-title br { display:none; }
  .marketing-page .mp-field-list { display:block; }
  .marketing-page .mp-field-list li { display:flex; padding:12px 0; gap:12px; }
  .marketing-page .mp-field-list li+li { border-top:1px solid var(--line); }
  .marketing-page .mp-field-icon { margin-bottom:0; }
  .marketing-page .mp-panel-foot { font-size:.75rem; margin-top:8px; }
  .marketing-page .mp-section { padding-block:56px; }
  .marketing-page .mp-section[id] { scroll-margin-top:-24px; }
  .marketing-page .mp-heading { margin-bottom:32px; }
  .marketing-page .mp-mobile-break { display:block; }
  .marketing-page .mp-challenge { padding:26px; }
  .marketing-page .mp-challenge .mp-number { margin-bottom:16px; }
  .marketing-page .mp-challenge h3 { font-size:1.0625rem; }
  .marketing-page .mp-service { grid-template-columns:1fr; gap:20px; padding:24px; }
  .marketing-page .mp-service-heading .mp-number { float:right; margin:2px 0 8px 12px; }
  .marketing-page .mp-service-name { font-size:.8125rem; margin-bottom:10px; }
  .marketing-page .mp-service-heading h3 { font-size:1.25rem; }
  .marketing-page .mp-service-content .body-copy { margin-bottom:18px; }
  .marketing-page .mp-approach-heading { grid-template-columns:1fr; gap:24px; margin-bottom:32px; }
  .marketing-page .mp-process { grid-template-columns:1fr; gap:30px; }
  .marketing-page .mp-process-heading { display:flex; align-items:baseline; }
  .marketing-page .mp-process-heading .mp-number { margin-bottom:0; }
  .marketing-page .mp-process li>p { margin-bottom:18px; }
  .marketing-page .mp-agency-note { padding:26px; gap:16px; }
  .marketing-page .mp-agency-note>.brand-icon { width:24px; height:24px; }
  .marketing-page .mp-agency-note h3 { font-size:.9375rem; }
  .marketing-page .mp-agency-note p { font-size:.875rem; }
  .marketing-page .mp-media { padding-top:16px; }
  .marketing-page .mp-media-layout { grid-template-columns:1fr; gap:28px; }
  .marketing-page .mp-media-card { padding:30px; }
  .marketing-page .mp-media-card-head>img { width:80px; height:80px; flex-basis:80px; }
  .marketing-page .mp-contact { padding-block:0 56px; }
  .marketing-page .mp-contact>.wrap { width:calc(100% - 24px); }
  .marketing-page .mp-contact-panel { padding:36px 26px; gap:28px; border-radius:24px; }
  .marketing-page .mp-contact-panel h2 { font-size:clamp(1.5rem,6.5vw,2rem); }
  .marketing-page .mp-contact-actions .button { width:100%; font-size:.8125rem; padding-inline:14px; }
  .marketing-page .mp-creator-route { text-align:left; margin:22px 16px 0; font-size:.75rem; }
}
@media (max-width:360px) {
  .marketing-page .mp-hero>.wrap { width:calc(100% - 32px); }
  .marketing-page .mp-hero h1 { font-size:1.5rem; }
  .marketing-page .mp-hero-panel { padding:18px; }
  .marketing-page .mp-field-list strong { font-size:.75rem; }
  .marketing-page .mp-field-icon { width:36px; height:36px; flex-basis:36px; }
  .marketing-page .mp-field-icon .brand-icon { width:25px; height:25px; }
  .marketing-page .mp-service,.marketing-page .mp-challenge { padding:24px; }
  .marketing-page .mp-agency-note { display:block; padding:24px; }
  .marketing-page .mp-agency-note>.brand-icon { margin-bottom:16px; }
  .marketing-page .mp-media-card { padding:26px; }
  .marketing-page .mp-media-card h3 { font-size:1.25rem; }
}
