/* Campaign marketing: existing brand primitives remain available to shared pages. */
:root {
  --blue-electric: #3155d9;
  --blue-deep: #203baf;
  --peach-100: #ffede1;
  --lilac-100: #eeebff;
  --mint-100: #e5f3eb;
  --night-900: #19273b;
  --cream-100: #f8f7f2;
  --white: #fff;
  --campaign-muted: #59616b;
  --campaign-on-dark: #dce4fc;
  --campaign-hero-bg: var(--blue-electric);
  --campaign-idea-bg: var(--peach-100);
  --campaign-context-bg: var(--lilac-100);
  --campaign-ai-bg: var(--night-900);
  --campaign-space: clamp(70px, 8vw, 116px);
  --campaign-radius: 24px;
}

.legal-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:50px; padding-top:45px; padding-bottom:70px; align-items:start; }
.legal-toc { position:sticky; top:105px; min-width:0; }
.legal-toc details { background:var(--white); border:1px solid #e0ded9; border-radius:16px; overflow:hidden; }
.legal-toc summary { font-size:12px; font-weight:600; padding:18px; cursor:pointer; }
.legal-toc nav { padding:0 18px 15px; display:grid; gap:0; }
.legal-toc nav a { display:flex; align-items:baseline; gap:12px; font-size:11px; line-height:1.6; padding:8px 0; color:var(--campaign-muted); }
.legal-toc nav a:hover { color:var(--blue-deep); }
.legal-toc nav a>span { flex-shrink:0; font-size:9px; color:var(--blue-deep); }
.legal-toc>.legal-date { display:block; padding:16px 4px 0; margin:0; font-size:10px; color:var(--campaign-muted); }
.legal-content { background:var(--white); border:1px solid #e0ded9; border-radius:22px; padding:38px 42px; min-width:0; }
.legal-content section { padding:0; margin:0 0 30px; scroll-margin-top:110px; }
.legal-content section:last-of-type { margin-bottom:0; }
.legal-content section h2 { font-family:inherit; font-size:22px; line-height:1.3; font-weight:550; letter-spacing:-.025em; margin:0 0 13px; }
.legal-content p,.legal-content li { font-size:14px; line-height:1.85; color:#515c64; }
.legal-content p { margin:0 0 12px; }
.legal-content p:last-child { margin-bottom:0; }
.legal-content ul { padding-left:20px; margin:0; }
.legal-content li+li { margin-top:9px; }
.legal-content a { color:var(--blue-deep); text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-content .policy-callout { background:var(--mint-100); border:0; border-radius:12px; padding:22px; margin:0 0 32px; }
.legal-content .policy-callout strong { display:block; font-size:21px; font-weight:550; margin-bottom:8px; }
.legal-content .policy-callout p { font-size:12px; }
.legal-content .policy-bottom { margin-top:32px; padding-top:23px; border-color:#e0ded9; font-size:11px; line-height:2; }
.info-page .error-actions { display:flex; gap:15px; padding-block:42px 70px; }

/* Shared public pages: the campaign palette, concise headings and readable surfaces. */
.header { background:var(--campaign-hero-bg); color:var(--white); border-color:#ffffff24; }
.header .brand-logo,.header nav>a { color:var(--white); }
.header nav>a:is(:hover,[aria-current]) { color:#d5f3b1; }
.header .nav-cta { color:var(--blue-deep); background:var(--white); border-color:var(--white); border-radius:100px; }
.header .nav-cta:hover { background:#d5f3b1; border-color:#d5f3b1; color:var(--blue-deep); }
.header .menu-toggle { color:var(--white); border-color:#ffffff50; background:transparent; }
.header :is(a,button):focus-visible { outline:2px solid #d5f3b1; outline-offset:5px; }
.page-hero { padding-block:64px 36px; }
.page-hero h1 { font-size:clamp(42px,5vw,64px); font-weight:550; margin-bottom:22px; }
.page-hero .lead { margin:0; font-size:18px; line-height:1.7; }
.page-hero .eyebrow { font-size:11px; color:var(--product-accent); margin-bottom:20px; }

/* Footer links identify the current page's sections separately from page navigation.
   The current shared footer uses Product, Support and Legal destinations. */
.site-footer { background:#f1f0ea; border-top:1px solid var(--product-line); padding-top:48px; color:var(--product-ink); }
.site-footer-grid { display:grid; grid-template-columns:1.5fr 1fr .8fr 1fr; gap:40px; padding-bottom:40px; }
.site-footer .brand-logo { color:var(--product-ink); }
.site-footer-brand p { font-size:13px; line-height:1.7; color:var(--campaign-muted); max-width:240px; margin:18px 0 20px; }
.site-footer nav h2 { font-size:13px; font-weight:600; letter-spacing:0; margin:7px 0 15px; }
.site-footer nav a { display:flex; align-items:center; width:fit-content; color:var(--campaign-muted); font-size:13px; line-height:1.5; min-height:36px; padding:6px 0; }
.site-footer nav a[aria-current=page] { color:var(--blue-deep); text-decoration:underline; text-underline-offset:4px; }
.site-footer a:hover { color:var(--blue-deep); text-decoration:underline; text-underline-offset:4px; }
.site-footer .footer-email { display:inline-flex; align-items:center; gap:12px; font-size:13px; overflow-wrap:anywhere; }
.site-footer-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--product-line); padding-block:22px; }
.site-footer-bottom p { font-size:12px; margin:0; line-height:1.6; }

/* Small-screen compositions keep all artwork and controls within the viewport. */
@media(max-width:900px) {
  .header nav { background:var(--blue-deep); border-color:#ffffff30; }
  .header nav>.nav-mobile-cta { color:var(--white); }
  .legal-layout { grid-template-columns:1fr; gap:20px; }
  .legal-toc { position:static; }
  .site-footer-grid { grid-template-columns:repeat(3,1fr); gap:30px; }
  .site-footer-brand { grid-column:1/-1; }
}
@media(max-width:700px) {
  .page-hero { padding-block:44px 24px; }
  .page-hero h1 { font-size:42px; }
  .page-hero .lead { font-size:17px; }
  .legal-layout { padding-top:24px; padding-bottom:48px; }
  .legal-content { padding:26px 22px; border-radius:16px; }
  .legal-content section h2 { font-size:22px; }
  .site-footer { padding-top:36px; }
  .site-footer-grid { grid-template-columns:1fr 1fr; gap:28px; }
  .site-footer-bottom { flex-direction:column; gap:8px; }
}

.campaign-page .button { border-radius:100px; min-height:54px; padding-inline:27px; }
.campaign-page h1,.campaign-page h2,.campaign-page h3 { text-wrap:balance; }
.campaign-page h2 { font-size:clamp(35px,4.3vw,56px); font-weight:550; line-height:1.1; letter-spacing:-.055em; margin:0 0 26px; }
.campaign-page h2 em { font-family:inherit; font-style:normal; color:var(--blue-deep); }
.campaign-page .campaign-eyebrow { font-size:10px; font-weight:650; line-height:1.6; letter-spacing:.16em; margin:0 0 23px; display:flex; align-items:center; gap:10px; }
.campaign-page .campaign-hero { background:var(--campaign-hero-bg); color:var(--white); position:relative; overflow:hidden; }
.campaign-page .hero-grid { position:absolute; inset:0; background:linear-gradient(90deg,#ffffff08 1px,transparent 1px),linear-gradient(#ffffff08 1px,transparent 1px); background-size:88px 88px; mask-image:linear-gradient(transparent,#000); pointer-events:none; }
.campaign-page .campaign-hero::after { content:""; position:absolute; width:800px; height:600px; left:50%; bottom:-380px; transform:translateX(-50%); background:#94b7ff; border-radius:50%; filter:blur(100px); opacity:.35; pointer-events:none; }
.campaign-page .campaign-hero-content { position:relative; z-index:1; text-align:center; padding-top:70px; padding-bottom:24px; }
.campaign-page .campaign-hero .campaign-eyebrow { justify-content:center; color:var(--campaign-on-dark); }
.campaign-page .ai-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:#c9f49a; box-shadow:0 0 0 5px #c9f49a18; }
.campaign-page .campaign-hero h1 { font-size:clamp(48px,6.3vw,84px); font-weight:540; line-height:1.04; letter-spacing:-.065em; margin:0 auto 25px; max-width:1020px; }
.campaign-page .campaign-hero h1>span { color:#d5f3b1; }
.campaign-page .campaign-lead { color:var(--campaign-on-dark); max-width:620px; margin:0 auto; font-size:17px; line-height:1.7; }
.campaign-page .campaign-actions { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:28px; flex-wrap:wrap; }
.campaign-page .campaign-hero .button-primary,.campaign-page .campaign-cta .button-primary { color:var(--blue-deep); background:var(--white); border-color:var(--white); box-shadow:0 5px 20px #15266c15; }
.campaign-page .campaign-hero .button-outline { color:var(--white); border-color:#ffffff65; background:transparent; }
.campaign-page .campaign-hero .button-outline:hover { background:#ffffff14; }
.campaign-page .campaign-reassurance { color:var(--campaign-on-dark); font-size:11px; margin-top:16px; }
.campaign-page .campaign-reassurance>span { margin-inline:8px; }
.campaign-page .creative-stage { height:420px; position:relative; margin:40px auto 0; max-width:1050px; }
.campaign-page .stage-orbit { position:absolute; inset:25px 12% -85px; border:1px solid #ffffff25; border-radius:50%; transform:rotate(-12deg); }
.campaign-page .stage-card { position:absolute; margin:0; background:var(--white); padding:8px; border-radius:15px; box-shadow:0 24px 60px #11245d40; text-align:left; transition:transform .35s ease; }
.campaign-page .stage-card picture,.campaign-page .stage-card img { display:block; width:100%; border-radius:9px; height:auto; }
.campaign-page .stage-card figcaption { display:flex; justify-content:space-between; color:#353b48; gap:10px; padding:12px 6px 5px; font-size:8px; font-weight:600; }
.campaign-page .stage-card figcaption>span:last-child { font-weight:400; }
.campaign-page .stage-landscape { width:37%; left:0; top:104px; transform:rotate(-9deg); z-index:1; }
.campaign-page .stage-square { width:34%; left:33%; top:0; transform:rotate(-2deg); z-index:3; }
.campaign-page .stage-portrait { width:27%; right:2%; top:23px; transform:rotate(10deg); z-index:2; }
.campaign-page .stage-card:hover { transform:translateY(-10px) rotate(0deg); z-index:4; }
.campaign-page .stage-note { position:absolute; top:6px; left:2%; display:flex; gap:12px; align-items:center; text-align:left; color:var(--campaign-on-dark); font-size:12px; line-height:1.7; transform:rotate(-6deg); }
.campaign-page .note-spark { width:34px; height:34px; color:#c9f49a; }
.campaign-page .note-spark svg,.campaign-page .stage-badge svg,.campaign-page .mini-spark svg { width:100%; height:100%; }
.campaign-page .stage-note strong { color:var(--white); font-weight:500; }
.campaign-page .stage-badge { position:absolute; left:21%; top:265px; z-index:5; width:116px; height:116px; color:#d5f3b1; transform:rotate(-12deg); }
.campaign-page .stage-badge svg { position:absolute; inset:0; }
.campaign-page .stage-badge>span { position:absolute; inset:0; display:grid; place-content:center; color:#273d20; font-size:9px; font-weight:750; line-height:1.5; }
.campaign-page .campaign-art-caption { font-size:10px; color:var(--campaign-on-dark); margin:0; }
.campaign-page .benefit-ribbon { background:#d5f3b1; color:#273d20; padding-block:24px; }
.campaign-page .benefit-ribbon>.container { display:flex; justify-content:space-between; align-items:center; gap:24px; font-size:12px; font-weight:600; }
.campaign-page .benefit-ribbon i { font-size:22px; font-style:normal; }
.campaign-page .campaign-section { padding-block:var(--campaign-space); position:relative; scroll-margin-top:82px; }
.campaign-page .anchor-alias { position:absolute; top:0; scroll-margin-top:82px; }
.campaign-page .campaign-split { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:82px; }
.campaign-page .campaign-copy>p:not(.campaign-eyebrow) { color:var(--campaign-muted); font-size:15px; line-height:1.85; max-width:490px; margin:0 0 17px; }
.campaign-page .campaign-text-link { display:inline-flex; gap:28px; align-items:center; font-size:14px; font-weight:600; margin-top:12px; padding-block:10px; text-underline-offset:5px; }
.campaign-page .campaign-text-link:hover { text-decoration:underline; }
.campaign-page .campaign-benefits { list-style:none; padding:0; margin:25px 0 17px; }
.campaign-page .campaign-benefits li { position:relative; padding:7px 0 7px 26px; font-size:13px; }
.campaign-page .campaign-benefits li::before { content:"✓"; position:absolute; left:0; color:var(--blue-deep); }
.campaign-page .suite-section { background:var(--campaign-idea-bg); overflow:hidden; }
.campaign-page .suite-visual { position:relative; padding:30px 0; min-width:0; }
.campaign-page .suite-window { background:var(--white); padding:22px; border:1px solid #eadbd0; border-radius:18px; box-shadow:0 22px 50px #81552b14; transform:rotate(2deg); }
.campaign-page .visual-toolbar { display:flex; justify-content:space-between; font-size:9px; font-weight:600; letter-spacing:.08em; padding-bottom:22px; align-items:center; }
.campaign-page .visual-toolbar>span:first-child { display:flex; gap:4px; }
.campaign-page .visual-toolbar i { display:block; width:6px; height:6px; border-radius:50%; background:#d6d6df; }
.campaign-page .suite-brief { display:flex; gap:12px; align-items:center; padding:15px; background:#f5f3fb; border-radius:9px; margin-bottom:16px; }
.campaign-page .mini-spark { width:30px; height:30px; color:var(--blue-electric); flex-shrink:0; }
.campaign-page .suite-brief small { display:block; font-size:8px; letter-spacing:.08em; margin-bottom:5px; }
.campaign-page .suite-brief strong { font-size:12px; font-weight:550; }
.campaign-page .suite-art-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:10px; }
.campaign-page .suite-main { grid-column:1/-1; }
.campaign-page .suite-main picture,.campaign-page .suite-main img { display:block; width:100%; height:auto; border-radius:8px; }
.campaign-page .suite-type { background:#d8c5f6; padding:17px; border-radius:8px; color:#31284f; display:flex; flex-direction:column; align-items:flex-start; gap:15px; }
.campaign-page .suite-type>span:first-child { font-size:8px; }
.campaign-page .suite-type strong { font-size:31px; letter-spacing:-.06em; line-height:1.03; font-weight:550; }
.campaign-page .illustrative-cta { background:#40305e; color:white; border-radius:20px; padding:7px 10px; font-size:7px; }
.campaign-page .suite-swatch { border-radius:8px; background:#efebfa; padding:20px; display:flex; flex-direction:column; justify-content:space-between; }
.campaign-page .suite-swatch>span { width:52px; height:52px; color:#9272cb; }
.campaign-page .suite-swatch p { font-size:13px; line-height:1.4; }
.campaign-page .suite-bottom { display:flex; justify-content:space-between; align-items:center; margin-top:17px; font-size:8px; gap:6px; }
.campaign-page .suite-bottom i { display:inline-block; width:5px; height:5px; border-radius:50%; background:#388166; margin-right:4px; }
.campaign-page .zip-label { border:1px solid #dddde4; border-radius:6px; padding:8px; }
.campaign-page .suite-sticker { position:absolute; top:0; right:-20px; background:#f7c872; color:#5a3a13; padding:18px; font-size:10px; line-height:1.7; transform:rotate(9deg); box-shadow:0 7px 16px #b78e3320; }
.campaign-page .visual-caption { font-size:9px; line-height:1.6; text-align:center; color:var(--campaign-muted); margin:24px 0 0; }
.campaign-page .difference-section { background:var(--cream-100); }
.campaign-page .campaign-centered { text-align:center; max-width:760px; margin:0 auto 44px; }
.campaign-page .campaign-centered .campaign-eyebrow { justify-content:center; }
.campaign-page .campaign-centered>p:last-child { color:var(--campaign-muted); font-size:15px; line-height:1.8; max-width:660px; margin:0 auto; }
.campaign-page .difference-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.campaign-page .difference-grid article { padding:36px; border-radius:var(--campaign-radius); }
.campaign-page .manual-card { background:#ecebe5; border:1px solid #e1e0d8; }
.campaign-page .craftad-card { background:var(--mint-100); border:1px solid #cddfd4; }
.campaign-page .comparison-label { font-size:10px; letter-spacing:.12em; display:flex; align-items:center; gap:9px; min-height:24px; margin-bottom:20px; font-weight:650; }
.campaign-page .difference-grid h3 { font-size:29px; line-height:1.2; font-weight:550; letter-spacing:-.04em; margin:0; }
.campaign-page .prompt-pile { height:180px; padding:22px 25px; display:flex; flex-direction:column; align-items:center; }
.campaign-page .prompt-pile span { background:#fff; border:1px solid #dcdcd5; border-radius:8px; font-size:12px; padding:12px 20px; width:90%; box-shadow:0 5px 9px #29292706; transform:rotate(-4deg); }
.campaign-page .prompt-pile span:nth-child(2) { transform:translateX(12px) rotate(3deg); }
.campaign-page .prompt-pile span:nth-child(3) { transform:translateX(-4px) rotate(-2deg); }
.campaign-page .difference-grid ul { list-style:none; padding:18px 0 0; margin:0; border-top:1px solid #17212620; }
.campaign-page .difference-grid li { padding:7px 0 7px 24px; font-size:13px; position:relative; }
.campaign-page .difference-grid li::before { position:absolute; left:0; content:"−"; }
.campaign-page .craftad-card li::before { content:"✓"; color:#25644f; }
.campaign-page .connected-brief { height:180px; display:flex; align-items:center; gap:20px; }
.campaign-page .connected-brief>span { padding:20px 14px; color:var(--blue-deep); background:var(--white); border-radius:12px; box-shadow:0 10px 25px #2349350a; font-size:10px; font-weight:650; }
.campaign-page .connected-brief>b { font-size:25px; font-weight:400; color:#4c7762; }
.campaign-page .connected-brief>div { display:grid; gap:8px; flex:1; }
.campaign-page .connected-brief>div>span { padding:9px 12px; background:#ffffff90; border:1px solid #bcd5c6; border-radius:7px; font-size:11px; }
.campaign-page .comparison-note { text-align:center; color:var(--campaign-muted); font-size:10px; line-height:1.7; margin:20px 0 0; }
.campaign-page .ai-section { background:var(--campaign-ai-bg); color:var(--white); overflow:hidden; }
.campaign-page .ai-section::before { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 15% 60%,#5d6bce32,transparent 55%); pointer-events:none; }
.campaign-page .ai-section h2 em { color:#b8baff; }
.campaign-page .ai-section .campaign-copy>p:not(.campaign-eyebrow) { color:#c0ccdc; }
.campaign-page .ai-section .campaign-eyebrow { color:#c8ccff; }
.campaign-page .ai-section .campaign-split { position:relative; }
.campaign-page .ai-visual { position:relative; height:440px; display:grid; place-items:center; }
.campaign-page .ai-ring { position:absolute; border:1px solid #a4b6ff35; border-radius:50%; width:320px; height:320px; }
.campaign-page .ai-ring-two { width:420px; height:420px; border-style:dashed; border-color:#a4b6ff20; transform:rotate(22deg); }
.campaign-page .ai-core { width:175px; height:175px; border-radius:38px; background:linear-gradient(135deg,#677ae6,#394ab0); border:1px solid #a9baff70; box-shadow:0 0 80px #7b7dff25,inset 0 1px #ffffff40; display:flex; flex-direction:column; align-items:center; justify-content:center; z-index:1; }
.campaign-page .ai-core svg { width:48px; height:48px; color:#d7f4b2; margin-bottom:12px; }
.campaign-page .ai-core>span { font-size:25px; letter-spacing:-.05em; }
.campaign-page .ai-core small { font-size:7px; letter-spacing:.14em; margin-top:8px; color:#e1e5ff; }
.campaign-page .ai-node { position:absolute; border:1px solid #8096c947; background:#25354e; padding:12px 16px; font-size:11px; border-radius:100px; z-index:2; box-shadow:0 8px 20px #0001; }
.campaign-page .node-context { left:0; top:90px; }.campaign-page .node-model { right:0; top:105px; }.campaign-page .node-copy { left:15px; bottom:105px; }.campaign-page .node-output { right:-8px; bottom:85px; }
.campaign-page .ai-footnote { position:absolute; bottom:-12px; display:flex; gap:12px; align-items:center; font-size:11px; color:#c0ccdc; }
.campaign-page .ai-capabilities { display:flex; flex-wrap:wrap; gap:8px; margin:26px 0 14px; }
.campaign-page .ai-capabilities>span { border:1px solid #8193b554; border-radius:100px; font-size:10px; padding:8px 12px; color:#d3def1; }
.campaign-page .brand-section { background:var(--campaign-context-bg); overflow:hidden; }
.campaign-page .brand-visual { position:relative; padding:16px 30px; }
.campaign-page .brand-board { border-radius:16px; padding:18px; border:1px solid #d3cfeb; background:#faf9ff; transform:rotate(-4deg); box-shadow:0 16px 44px #65549313; }
.campaign-page .brand-board-heading { display:flex; justify-content:space-between; font-size:8px; letter-spacing:.08em; font-weight:600; margin-bottom:16px; gap:10px; }
.campaign-page .brand-image picture,.campaign-page .brand-image img { display:block; width:100%; height:auto; border-radius:9px; }
.campaign-page .brand-palette { display:flex; align-items:center; gap:6px; margin-top:16px; }
.campaign-page .brand-palette i { width:23px; height:23px; border-radius:50%; background:#f78025; }.campaign-page .brand-palette i:nth-child(2) {background:#f8d18e;}.campaign-page .brand-palette i:nth-child(3) {background:#333b47;}
.campaign-page .brand-palette>span { font-size:9px; margin-left:auto; }
.campaign-page .brand-profile { position:absolute; right:0; bottom:80px; background:var(--white); display:flex; align-items:center; gap:13px; padding:14px 20px; border-radius:12px; box-shadow:0 10px 30px #302b6020; transform:rotate(3deg); }
.campaign-page .brand-profile img { border-radius:9px; object-fit:cover; }
.campaign-page .brand-profile small { display:block; font-size:8px; letter-spacing:.07em; margin-bottom:4px; color:var(--campaign-muted); }
.campaign-page .brand-profile strong { font-size:14px; font-weight:550; }.campaign-page .brand-profile b { margin-left:25px; color:#2e7655; }
.campaign-page .campaign-faq { background:var(--cream-100); }
.campaign-page .campaign-faq details { border-color:#dadcd6; }
.campaign-page .campaign-cta { position:relative; overflow:hidden; text-align:center; padding-block:90px; background:var(--blue-electric); color:var(--white); }
.campaign-page .campaign-cta>.container { position:relative; }
.campaign-page .campaign-cta .campaign-eyebrow { justify-content:center; color:var(--campaign-on-dark); }
.campaign-page .campaign-cta h2 { font-size:clamp(38px,5.4vw,70px); }.campaign-page .campaign-cta h2 em {color:#d5f3b1;}
.campaign-page .campaign-cta .button { margin:10px 0 12px; }.campaign-page .campaign-cta p:last-child { font-size:12px; color:var(--campaign-on-dark); }
.campaign-page .cta-rays { position:absolute; inset:0; opacity:.08; background:repeating-conic-gradient(from 0deg at 50% 130%, transparent 0deg 12deg, white 12deg 13deg); }
/* Pricing stays compact; its own tinted canvas and colored plan cards give it depth. */
@media(min-width:901px) {
  .campaign-page .creative-stage { animation:stage-arrive .8s ease-out both; }
  .campaign-page .ai-visual.product-entered .ai-core { animation:engine-arrive .9s ease-out both; }
}
@keyframes stage-arrive { from {opacity:.2;transform:translateY(25px);} to {opacity:1;transform:none;} }
@keyframes engine-arrive { from {transform:scale(.88) rotate(-8deg);} to {transform:scale(1) rotate(0);} }
@media(max-width:1100px) {
  .campaign-page .campaign-split { gap:45px; }.campaign-page .creative-stage {height:370px;}.campaign-page .stage-badge {top:230px;}
  .campaign-page .ai-ring-two {width:340px;height:340px;}.campaign-page .ai-ring-one {width:270px;height:270px;}
  .campaign-page .ai-node {font-size:10px;padding:10px;}.campaign-page .ai-core {width:150px;height:150px;}
  .campaign-page .difference-grid article {padding:28px;}.campaign-page .stage-card figcaption>span:last-child {display:none;}
}
@media(max-width:900px) {
  .campaign-page .campaign-hero-content {padding-top:52px;}.campaign-page .campaign-hero h1 {font-size:62px;}
  .campaign-page .creative-stage {height:320px;}.campaign-page .stage-badge {top:185px;width:96px;height:96px;}.campaign-page .stage-landscape {top:95px;}
  .campaign-page .campaign-split {gap:30px;}.campaign-page h2 {font-size:38px;}.campaign-page .campaign-copy>p:not(.campaign-eyebrow) {font-size:14px;}
  .campaign-page .suite-window {padding:14px;}.campaign-page .suite-sticker {right:-8px;padding:12px;}.campaign-page .suite-type strong {font-size:26px;}
  .campaign-page .suite-bottom {flex-wrap:wrap;}.campaign-page .ai-node {font-size:9px;}.campaign-page .ai-ring-two {width:300px;height:300px;}
  .campaign-page .node-model {top:70px;}.campaign-page .node-context {top:125px;left:-10px;}.campaign-page .node-output {bottom:100px;right:-5px;}
}
@media(max-width:700px) {
  .campaign-page .campaign-hero-content {padding-top:40px;}.campaign-page .campaign-eyebrow {font-size:9px;letter-spacing:.12em;}
  .campaign-page .campaign-hero h1 {font-size:48px;letter-spacing:-.06em;}.campaign-page .campaign-lead {font-size:15px;}
  .campaign-page .campaign-actions {gap:9px;}.campaign-page .button {font-size:12px;padding-inline:20px;min-height:49px;}
  .campaign-page .creative-stage {height:260px;margin-top:35px;}.campaign-page .stage-note {display:none;}
  .campaign-page .stage-square {width:49%;left:24%;top:0;}.campaign-page .stage-landscape {width:44%;left:-7%;top:64px;}
  .campaign-page .stage-portrait {width:37%;right:-5%;top:28px;}.campaign-page .stage-card {padding:5px;border-radius:10px;}
  .campaign-page .stage-card figcaption {font-size:6px;padding:9px 3px 3px;}.campaign-page .stage-badge {top:150px;left:7%;width:85px;height:85px;}
  .campaign-page .stage-badge>span {font-size:7px;}.campaign-page .campaign-art-caption {font-size:9px;}
  .campaign-page .benefit-ribbon {padding-block:20px;}.campaign-page .benefit-ribbon>.container {flex-direction:column;gap:9px;font-size:11px;}.campaign-page .benefit-ribbon i {display:none;}
  .campaign-page .campaign-split {grid-template-columns:1fr;gap:32px;}.campaign-page h2 {font-size:38px;}
  .campaign-page .campaign-copy>p:not(.campaign-eyebrow) {font-size:14px;max-width:none;}
  .campaign-page .campaign-benefits li {font-size:12px;}.campaign-page .suite-visual {padding:12px 8px 0;}.campaign-page .suite-window {padding:16px;}
  .campaign-page .suite-sticker {top:-8px;right:0;font-size:8px;padding:12px;}.campaign-page .suite-brief {padding:12px;}.campaign-page .suite-brief strong {font-size:11px;}
  .campaign-page .suite-type strong {font-size:30px;}.campaign-page .visual-caption {font-size:8px;}.campaign-page .suite-bottom {font-size:7px;}
  .campaign-page .campaign-centered {margin-bottom:30px;}.campaign-page .campaign-centered>p:last-child {font-size:14px;}
  .campaign-page .difference-grid {grid-template-columns:1fr;gap:16px;}.campaign-page .difference-grid article {padding:27px;}
  .campaign-page .difference-grid h3 {font-size:27px;}.campaign-page .difference-grid li {font-size:12px;}
  .campaign-page .prompt-pile {padding-inline:0;}.campaign-page .connected-brief {gap:12px;}.campaign-page .connected-brief>span {font-size:9px;}
  .campaign-page .ai-visual {height:340px;order:2;max-width:420px;width:100%;margin:0 auto;}
  .campaign-page .ai-ring-one {width:240px;height:240px;}.campaign-page .ai-ring-two {width:310px;height:310px;}
  .campaign-page .node-context {top:65px;left:0;}.campaign-page .node-model {right:0;top:35px;}.campaign-page .node-copy {bottom:70px;left:0;}.campaign-page .node-output {bottom:35px;right:0;}
  .campaign-page .ai-footnote {bottom:-12px;font-size:10px;}.campaign-page .ai-core {width:140px;height:140px;border-radius:28px;}.campaign-page .ai-core>span {font-size:22px;}
  .campaign-page .brand-visual {padding:15px;}.campaign-page .brand-profile {right:0;bottom:72px;padding:10px 14px;gap:10px;}.campaign-page .brand-profile b {margin-left:10px;}
  .campaign-page .brand-board {padding:13px;}.campaign-page .brand-palette>span {font-size:8px;}
  .campaign-page .campaign-faq .product-faq {gap:24px;}.campaign-page .campaign-cta {padding-block:70px;}.campaign-page .campaign-cta h2 {font-size:43px;}
}
@media(prefers-reduced-motion:reduce) {
  .campaign-page *, .campaign-page *::before, .campaign-page *::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; }
}


.campaign-page .brand-visual { max-width:460px; margin-inline:auto; }
.campaign-page .brand-profile { position:relative; right:auto; bottom:auto; max-width:240px; margin:-9px -15px 0 auto; }
.campaign-page .brand-palette i { background:#ff9f80; }.campaign-page .brand-palette i:nth-child(2) { background:#3155d9; }.campaign-page .brand-palette i:nth-child(3) { background:#17223e; }
.campaign-page .suite-type { background:#20314b; color:#daff90; }
.campaign-page .suite-type .illustrative-cta { background:#cefa5d; color:#1b2a15; }
.campaign-page .suite-swatch { background:#edf6db; }.campaign-page .suite-swatch>span { color:#607c35; }

/* Keep the established landing composition; refinements are limited to copy, links and focus. */
.campaign-page :is(.header,.campaign-hero,.campaign-cta) :is(a,button):focus-visible { outline:2px solid #d5f3b1; outline-offset:5px; }
