/* Campaign presentation; shared forms, policy pages and API contracts stay separate. */
.sellby-campaign { --campaign-ink: #070f20; --campaign-mint: #8cf8e8; }
.sellby-campaign .sellby-header { background: rgba(7,15,32,.96); border-bottom-color: #ffffff12; color: #fff; backdrop-filter: blur(18px); }
.sellby-campaign .campaign-brand { display: inline-flex; align-items: center; padding: 2px 12px; background: #f6faff; border: 1px solid #c6d7e955; border-radius: 12px; box-shadow: 0 3px 18px #00000016; }
.sellby-campaign .brand-logo { filter: none; }
.sellby-campaign .main-nav { color: #b9c4d8; }
.sellby-campaign .main-nav a:hover { color: #8cf8e8; }
.campaign-nav-cta { color: #eafbf9; border: 1px solid #6d998d66; background: #b6f8ee0b; }
.sellby-campaign .section-space { padding-block: 110px; }
.campaign-hero { position: relative; isolation: isolate; overflow: hidden; color: #fff; background: #030c19; }
.campaign-hero-art { position: absolute; inset: 0; z-index: -2; }
.campaign-hero-art img { width: 100%; height: 100%; object-fit: cover; object-position: center 49%; }
.campaign-hero-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,#030c19f5 0%,#030c19d9 28%,#030c1959 51%,#030c1900 76%),linear-gradient(0deg,#030c19 0%,transparent 25%,transparent 80%,#030c1933); }
.campaign-hero-inner { position: relative; min-height: 698px; display: flex; align-items: center; padding-block: 80px 94px; }
.campaign-hero-copy { max-width: 700px; }
.campaign-eyebrow { display: flex; align-items: center; gap: 10px; color: #aac9e8; font-size: 13px; font-weight: 700; letter-spacing: .06em; margin-bottom: 28px; }
.campaign-eyebrow>span,.campaign-signal { width: 7px; height: 7px; background: #8cf8e8; border-radius: 50%; box-shadow: 0 0 16px #8cf8e866; flex-shrink: 0; }
.campaign-hero h1 { font-size: clamp(48px,4.7vw,76px); line-height: 1.2; font-weight: 800; letter-spacing: -.065em; }
.campaign-hero h1 em { font-style: normal; color: #8cf8e8; }
.campaign-hero-description { max-width: 405px; margin-block: 27px 33px; color: #bbc9df; font-size: 18px; line-height: 1.85; }
.campaign-button { min-height: 62px; padding: 18px 26px; border-radius: 10px; gap: 40px; background: #8cf8e8; color: #061e29; font-weight: 800; box-shadow: 0 8px 36px #55ebd926; }
.campaign-button:hover { background: #b4fff2; box-shadow: 0 8px 42px #55ebd946; }
.campaign-hero-note { font-size: 12px; color: #9caec7; margin-top: 16px; }
.campaign-hero-note span { padding-inline: 7px; }
.campaign-visual-label { position: absolute; right: 6%; bottom: 104px; display: flex; gap: 12px; align-items: center; border-left: 1px solid #a7dbff55; padding: 13px 20px; background: #07162899; backdrop-filter: blur(8px); }
.campaign-visual-label>span:last-child { color: #9fcced; font-size: 10px; letter-spacing: .15em; line-height: 2; }
.campaign-visual-label strong { color: #e5f6ff; font-size: 10px; }
.campaign-hero-bottom { position: relative; display: flex; align-items: center; gap: 32px; min-height: 86px; border-top: 1px solid #a8c0e326; color: #b4c0d2; font-size: 12px; }
.campaign-hero-bottom>div { display: flex; gap: 22px; letter-spacing: .13em; color: #7f94b0; font-size: 11px; }
.campaign-hero-bottom>a { margin-left: auto; color: #e5f3ff; display: flex; gap: 26px; }
.campaign-heading { text-align: center; margin-bottom: 54px; }
.campaign-heading .section-label { color: #3467d6; font-size: 11px; letter-spacing: .13em; font-weight: 800; }
.campaign-heading h2 { font-size: clamp(32px,3.3vw,50px); line-height: 1.3; margin-block: 20px; font-weight: 800; }
.campaign-heading h2 em { color: #305ce6; font-style: normal; }
.campaign-heading p { font-size: 16px; color: #69758a; line-height: 1.85; }
.campaign-workflow { overflow: hidden; border-radius: 24px; background: #0b1529; color: #fff; box-shadow: 0 24px 65px #10204818; }
.campaign-stage-tabs { display: grid; grid-template-columns: repeat(3,1fr); background: #101e35; border-bottom: 1px solid #ffffff12; }
.campaign-stage-tabs button { position: relative; border: 0; padding: 25px 30px; display: flex; align-items: center; gap: 15px; text-align: left; background: transparent; color: #9eadc4; transition: color .2s,background .2s; }
.campaign-stage-tabs button[aria-selected=true] { background: #172b48; color: #8cf8e8; }
.campaign-stage-tabs button::after { content: ''; position: absolute; height: 3px; bottom: 0; left: 0; right: 0; background: #8cf8e8; transform: scaleX(0); transition: transform .25s; }
.campaign-stage-tabs button[aria-selected=true]::after { transform: scaleX(1); }
.campaign-stage-tabs button>span:first-child { font-size: 11px; letter-spacing: .12em; opacity: .75; }
.campaign-stage-tabs strong { font-size: 17px; font-weight: 700; }
.campaign-stage-tabs .stage-arrow { margin-left: auto; }
.campaign-stage-panel { display: grid; grid-template-columns: 1fr 1fr; align-items: center; min-height: 414px; padding: 35px 54px; gap: 48px; }
.campaign-stage-copy { animation: campaign-content-in .35s ease both; }
.campaign-stage-kicker { display: block; font-size: 11px; font-weight: 700; letter-spacing: .1em; color: #8cf8e8; margin-bottom: 22px; }
.campaign-stage-copy h3 { max-width: 400px; font-size: 32px; line-height: 1.4; }
.campaign-stage-copy p { max-width: 380px; margin-top: 19px; font-size: 15px; color: #aebdd3; line-height: 1.9; }
.campaign-stage-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 26px; }
.campaign-stage-tags span { padding: 7px 10px; border: 1px solid #91b4db2e; border-radius: 5px; color: #bfcee3; font-size: 11px; }
.campaign-engine { position: relative; height: 340px; min-width: 0; background: radial-gradient(ellipse at center,#17579835,transparent 65%); }
.engine-orbit { position: absolute; left: 50%; top: 48%; border: 1px solid #6e9dc229; border-radius: 50%; transform: translate(-50%,-50%); }
.engine-orbit-outer { width: 294px; height: 294px; border-style: dashed; }
.engine-orbit-inner { width: 205px; height: 205px; border-color: #74d1e13b; }
.engine-axis { position: absolute; left: 50%; top: 48%; background: #4cb4d527; transform: translate(-50%,-50%); }
.axis-horizontal { width: 85%; height: 1px; }
.axis-vertical { width: 1px; height: 85%; }
.engine-core { position: absolute; top: 48%; left: 50%; transform: translate(-50%,-50%); width: 132px; height: 132px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; background: linear-gradient(140deg,#294265,#101f39); border: 1px solid #72c8e679; border-radius: 30px; box-shadow: 0 0 50px #317fcc2c,inset 0 0 24px #a0eff21c; color: #8cf8e8; }
.engine-core svg { width: 57px; height: 57px; }
.engine-core strong { letter-spacing: .15em; font-size: 9px; }
.engine-node { position: absolute; min-width: 105px; text-align: center; padding: 12px 15px; border: 1px solid #8dc2e333; border-radius: 9px; background: #10263de8; font-size: 12px; color: #d6e9fa; box-shadow: 0 10px 25px #0000001a; transition: border-color .3s,background .3s; }
.engine-node span { display: inline-block; width: 4px; height: 4px; margin-right: 6px; vertical-align: middle; background: #8cf8e8; border-radius: 50%; }
.engine-node-0 { top: 26px; left: 11%; }
.engine-node-1 { top: 67px; right: 0; }
.engine-node-2 { bottom: 70px; left: 0; }
.engine-node-3 { bottom: 37px; right: 8%; }
.engine-stage-1 .engine-core { border-color: #8cf8e8; }
.engine-stage-2 .engine-node { border-color: #8cf8e877; background: #123847; }
.engine-caption { position: absolute; bottom: 0; left: 0; right: 0; text-align: center; font-size: 8px; letter-spacing: .23em; color: #6785a8; }
.campaign-screens { margin-top: 24px; border-bottom: 1px solid #dfe6f0; }
.campaign-screens summary { padding: 20px 3px; color: #657187; font-size: 13px; cursor: pointer; display: flex; justify-content: center; gap: 20px; list-style: none; }
.campaign-screens summary::-webkit-details-marker { display: none; }
.campaign-screens[open] summary>span { transform: rotate(45deg); }
.campaign-screen-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding-top: 14px; }
.campaign-screen-grid figure { margin: 0; padding: 12px; border: 1px solid #dce5ef; border-radius: 20px; background: #f5f8fc; box-shadow: 0 12px 30px #122b4e0b; overflow: hidden; }
.campaign-screen-grid .screenshot-button { border-radius: 12px; overflow: hidden; background: #0b141e; }
.campaign-screen-grid img { display: block; width: 100%; height: auto; object-fit: contain; border-radius: 12px; }
.campaign-screen-grid figcaption { display: flex; justify-content: space-between; padding: 16px 5px 5px; font-size: 13px; }
.campaign-screen-grid figcaption span { color: #717e94; font-size: 11px; }
.campaign-screens .screen-disclosure { padding-bottom: 22px; }
.campaign-features { background: #f2f5fa; }
.campaign-heading-split { display: flex; justify-content: space-between; align-items: end; text-align: left; }
.campaign-heading-split h2 { margin-bottom: 0; }
.campaign-heading-split>p { padding-bottom: 5px; }
.campaign-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.campaign-feature { position: relative; overflow: hidden; padding: 27px 30px 36px; min-width: 0; border-radius: 20px; background: #fff; box-shadow: 0 12px 40px #1e315608; border: 1px solid #e3e9f2; }
.campaign-feature-1 { background: #2d58dc; color: #fff; border-color: #2d58dc; }
.campaign-feature-2 { background: #0d1a30; color: #fff; border-color: #0d1a30; }
.campaign-feature-top { display: flex; justify-content: space-between; align-items: center; color: #7290b8; }
.campaign-feature-top>span:first-child { font-size: 22px; font-weight: 500; letter-spacing: -.06em; }
.campaign-feature-top>span:last-child { font-size: 9px; letter-spacing: .09em; }
.campaign-feature-1 .campaign-feature-top { color: #c5d7ff; }
.campaign-feature-2 .campaign-feature-top { color: #8bb1c5; }
.campaign-feature-art { position: relative; height: 218px; margin-block: 20px 22px; overflow: hidden; }
.campaign-feature h3 { font-size: 24px; line-height: 1.4; letter-spacing: -.06em; }
.campaign-feature>p { font-size: 14px; line-height: 1.85; margin-top: 13px; color: #6b7890; }
.campaign-feature-1>p { color: #d6e3ff; }
.campaign-feature-2>p { color: #9cb1ca; }
.feature-scan-grid { position: absolute; inset: 8px 0 35px; background-image: linear-gradient(#c9d8f659 1px,transparent 1px),linear-gradient(90deg,#c9d8f659 1px,transparent 1px); background-size: 29px 29px; mask-image: radial-gradient(ellipse,#000 25%,transparent 70%); }
.feature-scan-ring { position: absolute; width: 134px; height: 134px; left: 50%; top: 18px; transform: translateX(-50%); border: 1px solid #5988ff; border-radius: 50%; box-shadow: 0 0 0 20px #628fff0c,0 0 0 40px #628fff07,inset 0 0 30px #628fff1a; }
.feature-scan-ring::before,.feature-scan-ring::after { content: ''; position: absolute; inset: 20px; border: 1px solid #628fff55; border-radius: 50%; }
.feature-scan-ring::after { inset: 43px; background: #2c64f4; border: 7px solid #e8efff; box-shadow: 0 0 20px #5d98ff55; }
.feature-scan-line { position: absolute; top: 84px; width: 190px; left: 50%; transform: translateX(-50%) rotate(-28deg); height: 1px; background: linear-gradient(90deg,transparent,#5884f7,transparent); }
.scan-point { position: absolute; width: 8px; height: 8px; background: #5988ff; border: 2px solid #e7eeff; border-radius: 50%; box-shadow: 0 0 0 5px #5988ff16; }
.point-a { top: 39px; left: 36%; }.point-b { top: 101px; left: 25%; }.point-c { top: 123px; right: 33%; }
.feature-art-label { position: absolute; bottom: 10px; left: 0; right: 0; text-align: center; font-size: 11px; color: #5c7cb1; }
.feature-control { position: absolute; width: 85%; max-width: 244px; height: 55px; border-radius: 10px; border: 1px solid #d4e3ff55; background: #f8fbff14; display: flex; align-items: center; padding: 16px; gap: 20px; box-shadow: 0 10px 24px #0c2e8417; }
.feature-control>span { font-size: 11px; white-space: nowrap; }
.feature-control i { position: relative; display: block; flex: 1; height: 3px; background: #d6e7ff44; border-radius: 5px; }
.feature-control i::after { content: ''; position: absolute; top: -5px; left: 66%; width: 13px; height: 13px; border: 3px solid #fff; border-radius: 50%; background: #9bf5e6; box-shadow: 0 0 15px #ffffff77; }
.control-one { top: 15px; left: 0; transform: rotate(-5deg); }.control-two { top: 85px; right: 0; transform: rotate(4deg); }.control-two i::after { left: 30%; }
.control-three { bottom: 7px; left: 4%; transform: rotate(-3deg); }
.feature-control b { margin-left: auto; padding: 4px 10px; font-size: 9px; color: #8cf8e8; border: 1px solid #8cf8e888; border-radius: 4px; letter-spacing: .1em; }
.feature-shield { position: absolute; width: 145px; height: 155px; top: 1px; left: 50%; transform: translateX(-50%); color: #8cf8e8; filter: drop-shadow(0 0 15px #8cf8e82b); }
.feature-monitor-tag { position: absolute; left: 50%; bottom: 15px; transform: translateX(-50%); white-space: nowrap; font-size: 11px; padding: 10px 16px; border: 1px solid #8cf8e837; border-radius: 7px; color: #b4eadd; background: #122c3b; }
.campaign-feature-note { margin-top: 30px; display: flex; gap: 20px; justify-content: space-between; align-items: center; }
.campaign-feature-note p { font-size: 12px; color: #737f92; }
.campaign-feature-note .text-link { font-size: 13px; }
.campaign-apply { position: relative; color: #fff; background: radial-gradient(ellipse at 50% 35%,#123452 0,transparent 55%),#080f20; }
.campaign-apply-inner { position: relative; }
.campaign-apply .campaign-heading { margin-bottom: 38px; }
.campaign-apply .section-label { color: #83b4c7; }
.campaign-apply .campaign-heading h2 em { color: #8cf8e8; }
.campaign-apply .campaign-heading p { color: #a6b6cc; font-size: 14px; }
.campaign-apply .sellby-form { max-width: 660px; margin-inline: auto; color: #131a30; }
.campaign-trial-steps { list-style: none; display: flex; justify-content: center; gap: 30px; padding: 0; margin: 30px 0 20px; color: #c0cee1; font-size: 12px; }
.campaign-trial-steps li { display: flex; gap: 8px; align-items: center; }
.campaign-trial-steps span { font-size: 9px; color: #87b3c5; }
.campaign-apply-contact { text-align: center; color: #8496af; font-size: 12px; }
.campaign-apply-contact a { color: #bbcde4; margin-left: 12px; }
.sellby-campaign [data-reveal] { transition: opacity .65s ease,transform .75s cubic-bezier(.16,1,.3,1); transition-delay: var(--reveal-delay,0ms); }
.sellby-campaign .reveal-pending { opacity: 0; transform: translateY(38px) scale(.97); }
@keyframes campaign-content-in { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: none; } }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .campaign-feature:hover .feature-scan-ring { transform: translateX(-50%) scale(1.08); }
  .campaign-feature:hover .feature-shield { transform: translateX(-50%) translateY(-7px); }
  .feature-scan-ring,.feature-shield { transition: transform .5s cubic-bezier(.16,1,.3,1); }
  .campaign-feature:hover .control-one { transform: rotate(0deg) translateY(-4px); }
  .campaign-feature:hover .control-two,.campaign-feature:hover .control-three { transform: rotate(0deg); }
  .feature-control { transition: transform .5s cubic-bezier(.16,1,.3,1); }
}
@media(max-width:1100px) {
  .campaign-hero-inner { min-height: 640px; }
  .campaign-hero h1 { font-size: 57px; }
  .campaign-hero-description { font-size: 16px; max-width: 360px; }
  .campaign-hero-art img { object-position: 58% center; }
  .campaign-stage-panel { padding-inline: 35px; gap: 26px; }
  .campaign-stage-tabs button { padding: 22px; gap: 9px; }
  .campaign-stage-tabs strong { font-size: 15px; }
  .campaign-stage-copy h3 { font-size: 29px; }
  .campaign-feature { padding: 24px 23px 30px; }
  .campaign-feature h3 { font-size: 21px; }
  .campaign-feature-grid { gap: 14px; }
}
@media(max-width:800px) {
  .sellby-campaign .section-space { padding-block: 80px; }
  .campaign-hero h1 { font-size: 48px; }
  .campaign-hero-copy { max-width: 530px; }
  .campaign-visual-label { right: 0; bottom: 44px; }
  .campaign-hero-bottom { gap: 16px; }
  .campaign-hero-bottom>div { display: none; }
  .campaign-heading { margin-bottom: 36px; }
  .campaign-heading p { font-size: 14px; }
  .campaign-stage-panel { grid-template-columns: 1fr; gap: 10px; padding: 32px; }
  .campaign-stage-copy h3,.campaign-stage-copy p { max-width: none; }
  .campaign-engine { max-width: 400px; width: 100%; margin-inline: auto; height: 300px; }
  .engine-orbit-outer { height: 255px; width: 255px; }
  .campaign-stage-tabs button { padding: 20px 14px; flex-wrap: wrap; gap: 7px; }
  .campaign-stage-tabs strong { font-size: 13px; }
  .stage-arrow { display: none; }
  .campaign-heading-split { display: block; }
  .campaign-heading-split>p { margin-top: 20px; }
  .campaign-feature-grid { grid-template-columns: 1fr; gap: 18px; }
  .campaign-feature { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; padding: 26px 30px; }
  .campaign-feature-top { grid-column: 1; margin-bottom: 28px; }
  .campaign-feature-art { grid-column: 2; grid-row: 1/4; margin: 0; align-self: center; }
  .campaign-feature h3 { grid-column: 1; font-size: 25px; align-self: end; }
  .campaign-feature>p { grid-column: 1; padding-bottom: 15px; }
  .campaign-feature-note { align-items: start; flex-direction: column; gap: 15px; }
}
@media(max-width:600px) {
  .sellby-campaign .campaign-brand { padding: 2px 9px; border-radius: 9px; }
  .campaign-hero-inner { min-height: 748px; align-items: flex-start; padding-block: 57px 300px; }
  .campaign-hero-copy { width: 100%; }
  .campaign-hero h1 { font-size: clamp(34px,8.4vw,48px); letter-spacing: -.06em; line-height: 1.25; }
  .campaign-eyebrow { font-size: 10px; margin-bottom: 22px; }
  .campaign-hero-description { max-width: 330px; font-size: 14px; line-height: 1.8; margin-block: 23px; }
  .campaign-button { min-height: 56px; padding: 16px 22px; font-size: 15px; gap: 32px; }
  .campaign-hero-note { font-size: 10px; margin-top: 13px; }
  .campaign-hero-art { top: 315px; left: -90px; right: -30px; bottom: 32px; }
  .campaign-hero-art img { object-fit: cover; object-position: 68% center; }
  .campaign-hero-art::after { background: linear-gradient(180deg,#030c19 0%,#030c1900 28%,#030c1900 80%,#030c19 100%); }
  .campaign-visual-label { right: 0; bottom: 33px; padding: 9px 13px; }
  .campaign-visual-label>span:last-child,.campaign-visual-label strong { font-size: 8px; }
  .campaign-hero-bottom { min-height: 67px; font-size: 10px; gap: 6px; }
  .campaign-hero-bottom>a { gap: 10px; }
  .campaign-heading .section-label { font-size: 9px; letter-spacing: .1em; }
  .campaign-heading h2 { font-size: 31px; margin-block: 17px; }
  .campaign-heading p { font-size: 13px; }
  .sellby-campaign .section-space { padding-block: 68px; }
  .campaign-stage-tabs button { padding: 16px 9px; display: block; text-align: center; }
  .campaign-stage-tabs button>span:first-child { display: block; margin-bottom: 7px; font-size: 9px; }
  .campaign-stage-tabs strong { font-size: 11px; word-break: keep-all; }
  .campaign-workflow { border-radius: 16px; }
  .campaign-stage-panel { padding: 29px 22px 20px; }
  .campaign-stage-kicker { font-size: 9px; margin-bottom: 14px; }
  .campaign-stage-copy h3 { font-size: 25px; }
  .campaign-stage-copy p { font-size: 13px; margin-top: 15px; }
  .campaign-stage-tags { margin-top: 20px; }
  .campaign-stage-tags span { font-size: 10px; padding: 6px 8px; }
  .campaign-engine { height: 286px; margin-top: 17px; }
  .engine-core { height: 113px; width: 113px; border-radius: 24px; }
  .engine-node { min-width: 86px; font-size: 10px; padding: 10px; }
  .engine-node-0 { left: 5%; }.engine-node-3 { right: 0; bottom: 28px; }
  .engine-orbit-inner { width: 170px; height: 170px; }
  .engine-orbit-outer { width: 236px; height: 236px; }
  .campaign-screens { margin-top: 12px; }
  .campaign-screens summary { font-size: 11px; }
  .campaign-screen-grid { grid-template-columns: 1fr; gap: 15px; }
  .campaign-feature { display: block; padding: 23px 28px 30px; }
  .campaign-feature-top { margin-bottom: 0; }
  .campaign-feature-art { height: 200px; margin: 18px auto 24px; max-width: 270px; }
  .campaign-feature h3 { font-size: 25px; }
  .campaign-feature>p { font-size: 14px; padding: 0; }
  .campaign-feature-note p { font-size: 11px; }
  .campaign-apply .campaign-heading p { font-size: 12px; }
  .campaign-trial-steps { font-size: 10px; gap: 16px; margin-top: 24px; }
  .campaign-trial-steps li { gap: 5px; }
  .campaign-apply-contact { font-size: 11px; }
}
@media(prefers-reduced-motion:reduce) {
  .sellby-campaign [data-reveal],.campaign-stage-tabs button,.campaign-stage-tabs button::after,.engine-node { transition: none; }
  .sellby-campaign .reveal-pending { opacity: 1; transform: none; }
  .campaign-stage-copy { animation: none; }
}
