/* AI Visibility landing — dark stage, white cards, gold CTA (design v1). */
.av3 { margin: 0; background: #171511; color: #FAF9F5; font-family: -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif; }
.av3 a { color: #DCA92E; text-decoration: none; }
.av3 a:hover { color: #FAF9F5; }
.av3 ::placeholder { color: #A9A498; }
.av3-wrap { max-width: 1120px; margin: 0 auto; padding: 0 28px 72px; }
@keyframes av3Pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.25; } }
@keyframes av3Pop { 0% { transform: scale(0.3); } 70% { transform: scale(1.3); } 100% { transform: scale(1); } }

.av3-top { display: flex; align-items: center; justify-content: space-between; padding: 26px 0; }
.av3-brand { display: flex; align-items: baseline; gap: 2px; }
.av3-word { font-family: Georgia, serif; font-size: 20px; font-weight: 600; }
.av3-tld { font-size: 13px; color: #A9A498; }
.av3-top-r { display: flex; align-items: center; gap: 22px; }
.av3-top-here { font-size: 14px; font-weight: 600; color: #DCA92E; }
.av3-pill { border: 1px solid #3A382F; border-radius: 999px; padding: 8px 18px; font-size: 13.5px; font-weight: 600; color: #FAF9F5; }
.av3-pill:hover { border-color: #FAF9F5; color: #FAF9F5; }

.av3-hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: 56px; align-items: start; padding-top: 54px; }
.av3-kicker { margin: 0 0 18px; font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: #DCA92E; font-weight: 700; }
.av3-h1 { font-family: Georgia, serif; font-size: 62px; line-height: 1.05; letter-spacing: -0.015em; margin: 0 0 24px; font-weight: 600; text-wrap: pretty; }
.av3-h1 em { font-style: normal; color: #DCA92E; }
.av3-lede { margin: 0 0 36px; font-size: 17px; line-height: 1.7; color: #C9C4B8; max-width: 560px; text-wrap: pretty; }

.av3-card { background: #FAF9F5; color: #191919; border-radius: 20px; box-shadow: 0 24px 70px rgba(0, 0, 0, 0.5); box-sizing: border-box; }
.av3-form { padding: 28px 30px; max-width: 560px; }
.av3-form-t { margin: 0 0 10px; font-size: 14px; font-weight: 700; }
.av3-form input[type="text"] { width: 100%; box-sizing: border-box; background: #FFFFFF; border: 1px solid #E9E4D8; border-radius: 12px; padding: 14px 16px; font-size: 16px; color: #191919; outline: none; }
.av3-form input[type="text"]:focus { border-color: #C69A28; box-shadow: 0 0 0 3px #FBF3DC; }
.av3-form-help { margin: 10px 0 0; font-size: 13px; line-height: 1.55; color: #6B6B66; }
.av3-manual { margin: 16px 0 0; }
.av3-manual summary { font-size: 13px; color: #6B6B66; cursor: pointer; list-style: none; }
.av3-manual summary::-webkit-details-marker { display: none; }
.av3-manual summary:hover { color: #191919; }
.av3-manual[open] summary { margin-bottom: 12px; }
.av3-manual label { display: block; margin: 12px 0 5px; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #6B6B66; font-weight: 700; }
.av3-manual input[type="text"] { padding: 10px 12px; font-size: 14px; }
.av3-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.av3-comp-k { margin: 16px 0 0; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #6B6B66; font-weight: 700; }
.av3-comp-k span { text-transform: none; letter-spacing: 0; font-weight: 400; }
.av3-error { margin: 14px 0 0; font-size: 14px; color: #C2402A; font-weight: 600; }
.av3-cta { display: block; width: 100%; text-align: center; margin-top: 18px; background: linear-gradient(180deg, #F0C75E, #DCA92E); color: #3A2B05; border: none; border-radius: 999px; padding: 15px 16px; font-size: 15px; font-weight: 700; cursor: pointer; font-family: inherit; }
.av3-cta:hover { filter: brightness(1.06); }
.av3-fine { margin: 16px 0 0; font-size: 12.5px; line-height: 1.6; color: #6B6B66; }

.av3-side { display: flex; flex-direction: column; gap: 14px; padding-top: 68px; }
.av3-demo { padding: 20px 22px; border-radius: 18px; }
.av3-demo-k { margin: 0 0 8px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: #D97757; font-weight: 700; }
.av3-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #D97757; animation: av3Pulse 1.4s infinite; margin-right: 6px; vertical-align: 1px; }
.av3-dot--sm { width: 6px; height: 6px; background: #DCA92E; animation-duration: 1.8s; }
.av3-demo-q { font-family: Georgia, serif; font-size: 16.5px; font-style: italic; line-height: 1.35; margin: 0 0 12px; letter-spacing: -0.01em; }
.av3-demo-sqs { display: flex; gap: 4px; margin-bottom: 16px; }
.av3-sq { width: 16px; height: 16px; border-radius: 4px; box-sizing: border-box; background: #F1EDE3; border: 1px solid transparent; }
.av3-sq--g { background: #E4B33C; border-color: #C69A28; }
.av3-sq--s { background: #C6CAD3; border-color: #A8AEBA; }
.av3-sq--b { background: #B5835A; border-color: #9A6A40; }
.av3-sq--x { background: #C2402A; border-color: #A93722; }
.av3-sq.is-new { animation: av3Pop 0.45s ease; }
.av3-demo-tally { display: flex; gap: 14px; align-items: center; border-top: 1px solid #F1EDE3; padding-top: 14px; }
.av3-demo-m { display: flex; gap: 6px; align-items: center; }
.av3-demo-m b, .av3-demo-tally > span > b { font-family: Georgia, serif; font-size: 20px; font-weight: 600; }
.av3-disc { width: 18px; height: 18px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 800; flex: none; }
.av3-disc--g { background: radial-gradient(circle at 32% 30%, #F5D67E, #DCA92E 62%, #BC8A14); border: 1px solid #A8790F; color: #4A3606; }
.av3-disc--s { background: radial-gradient(circle at 32% 30%, #ECEEF2, #C3C8D1 62%, #9CA3AF); border: 1px solid #8F96A3; color: #474D57; }
.av3-disc--b { background: radial-gradient(circle at 32% 30%, #D8A97E, #B57F52 62%, #935F35); border: 1px solid #7E5230; color: #FFFFFF; }
.av3-out { width: 12px; height: 12px; border-radius: 3px; background: #C2402A; color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-size: 8px; font-weight: 800; flex: none; }
.av3-demo-duel { margin-left: auto; font-size: 12px; font-weight: 600; color: #8A6410; }
.av3-demo-cap { margin: 0; font-size: 13px; line-height: 1.6; color: #A9A498; padding: 0 4px; }

.av3-roster { border: 1px solid #2C2A23; border-radius: 18px; padding: 18px 22px; margin-top: 8px; }
.av3-roster-k { margin: 0 0 6px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: #A9A498; font-weight: 700; }
.av3-roster-row { display: flex; justify-content: space-between; align-items: center; padding: 9px 0; border-bottom: 1px solid #24221C; font-size: 14px; }
.av3-roster-row:last-child { border-bottom: none; }
.av3-roster-s { font-size: 12.5px; color: #A9A498; }

@media (max-width: 900px) {
  .av3-hero { grid-template-columns: 1fr; gap: 34px; padding-top: 26px; }
  .av3-h1 { font-size: 42px; }
  .av3-side { padding-top: 0; }
  .av3-form { max-width: none; }
}

/* Roster marks */
.av3-roster-id { display: flex; align-items: center; gap: 10px; }
.av3-roster-tile { width: 26px; height: 26px; border-radius: 8px; display: flex; align-items: center; justify-content: center; flex: none; }
.av3-roster-tile img { width: 15px; height: 15px; display: block; }
.av3-tile--perplexity { background: #20808D; }
.av3-tile--chatgpt { background: #10A37F; }
.av3-tile--claude { background: #CC785C; }
.av3-tile--gemini { background: #4285F4; }
.av3-tile--grok { background: #191919; }

/* SL-28: email gate + competitor choice + consent. */
.av3-form input[type="email"] { width: 100%; box-sizing: border-box; background: #FFFFFF; border: 1px solid #E9E4D8; border-radius: 12px; padding: 14px 16px; font-size: 16px; color: #191919; outline: none; font-family: inherit; }
.av3-form input[type="email"]:focus { border-color: #C69A28; box-shadow: 0 0 0 3px #FBF3DC; }
.av3-form-t label { cursor: text; }
.av3-form-t--gap { margin-top: 18px; }
.av3-choice { border: none; margin: 16px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; align-items: center; }
.av3-choice legend { padding: 0; margin: 0 0 8px; float: left; width: 100%; }
.av3-radio { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: #191919; cursor: pointer; }
.av3-radio input { accent-color: #C69A28; width: 16px; height: 16px; margin: 0; }
.av3-comps { margin-top: 6px; }
.av3-comps label { display: block; margin: 10px 0 5px; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #6B6B66; font-weight: 700; }
.av3-comps input[type="text"] { padding: 10px 12px; font-size: 14px; }
.av3-comps[hidden] { display: none; }
.av3-consent { margin: 12px 0 0; font-size: 12.5px; line-height: 1.55; color: #6B6B66; }

/* ==========================================================================
   SL-31 — the WRPM look on the intake (brand.theme = "wrpm"). Every rule is
   scoped to body[data-aiv-theme="wrpm"], so aeo.swanlabs.ai, whose body
   carries an empty attribute, cannot see one of them.
   ========================================================================== */
body.av3[data-aiv-theme="wrpm"] {
  --w-navy: #0A1428;
  --w-ink: #0E1A2F;
  --w-accent: #4557D6;
  --w-accent-d: #3F51D1;
  --w-on-dark: #8E9CFF;
  --w-page: #F2F5FC;
  --w-line: #DCE3F3;
  --w-muted: #4B5870;
  --w-sans: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  background: var(--w-page);
  color: var(--w-ink);
  font-family: var(--w-sans);
}
body.av3[data-aiv-theme="wrpm"] a { color: var(--w-accent-d); }
body.av3[data-aiv-theme="wrpm"] .av3-top {
  background: var(--w-navy); color: #FFFFFF; border-bottom: 0;
  box-shadow: 0 0 0 100vmax var(--w-navy);
  clip-path: inset(0 -100vmax);
  min-height: 64px; padding: 12px 0;
}
body.av3[data-aiv-theme="wrpm"] .av3-word {
  font-family: var(--w-sans); font-size: 24px; font-weight: 800; letter-spacing: -0.02em;
}
body.av3[data-aiv-theme="wrpm"] .av3-tld { color: rgba(255, 255, 255, 0.7); }
body.av3[data-aiv-theme="wrpm"] .av3-top-here {
  color: var(--w-on-dark); font-size: 12px; font-weight: 700; letter-spacing: 0.22em;
  text-transform: uppercase;
}
body.av3[data-aiv-theme="wrpm"] .av3-pill {
  color: #FFFFFF; border-color: rgba(255, 255, 255, 0.35);
}
body.av3[data-aiv-theme="wrpm"] .av3-card,
body.av3[data-aiv-theme="wrpm"] .av3-roster {
  background: #FFFFFF; border: 1px solid var(--w-line); border-radius: 18px; box-shadow: none;
}
body.av3[data-aiv-theme="wrpm"] .av3-kicker { color: var(--w-accent-d); font-weight: 800; letter-spacing: 0.2em; }
body.av3[data-aiv-theme="wrpm"] .av3-h1 {
  font-family: var(--w-sans); font-weight: 800; letter-spacing: -0.02em;
}
body.av3[data-aiv-theme="wrpm"] .av3-h1 em { color: var(--w-accent); font-style: normal; }
body.av3[data-aiv-theme="wrpm"] .av3-one {
  border-color: #CBD3E6; border-radius: 12px; font-family: inherit;
}
body.av3[data-aiv-theme="wrpm"] .av3-one:focus {
  border-color: var(--w-accent); box-shadow: 0 0 0 3px rgba(69, 87, 214, 0.18); outline: none;
}
body.av3[data-aiv-theme="wrpm"] .av3-cta {
  background: var(--w-accent); border-color: var(--w-accent); color: #FFFFFF;
  border-radius: 999px; font-weight: 700;
}
body.av3[data-aiv-theme="wrpm"] .av3-cta:hover { opacity: 0.92; }
body.av3[data-aiv-theme="wrpm"] .av3-form-t label { color: var(--w-ink); font-weight: 700; }
body.av3[data-aiv-theme="wrpm"] .av3-form-help,
body.av3[data-aiv-theme="wrpm"] .av3-consent,
body.av3[data-aiv-theme="wrpm"] .av3-fine { color: var(--w-muted); }
body.av3[data-aiv-theme="wrpm"] .av3-error { color: #B23A26; }
/* The Turnstile widget sits between the form and its button, with room of its
   own so a challenge that grows does not push the button off the card. */
.av3-turnstile { margin: 16px 0 4px; min-height: 0; }
@media (max-width: 720px) {
  body.av3[data-aiv-theme="wrpm"] .av3-top { min-height: 52px; padding: 10px 0; }
  body.av3[data-aiv-theme="wrpm"] .av3-word { font-size: 20px; }
  body.av3[data-aiv-theme="wrpm"] .av3-top-here { font-size: 10px; }
}
/* The pieces that were light text on the dark stage and now sit on a pale
   page. Every one still scoped to the theme. */
body.av3[data-aiv-theme="wrpm"] .av3-lede { color: #3A4458; }
body.av3[data-aiv-theme="wrpm"] .av3-demo-cap,
body.av3[data-aiv-theme="wrpm"] .av3-roster-k,
body.av3[data-aiv-theme="wrpm"] .av3-roster-s { color: var(--w-muted); }
body.av3[data-aiv-theme="wrpm"] .av3-roster,
body.av3[data-aiv-theme="wrpm"] .av3-roster-row { border-color: var(--w-line); }
body.av3[data-aiv-theme="wrpm"] .av3-demo-k { color: var(--w-accent-d); }
body.av3[data-aiv-theme="wrpm"] .av3-dot { background: var(--w-accent); }
body.av3[data-aiv-theme="wrpm"] .av3-dot--sm { background: #22A06B; }
body.av3[data-aiv-theme="wrpm"] .av3-demo-q { font-family: var(--w-sans); font-style: normal; font-weight: 700; }
body.av3[data-aiv-theme="wrpm"] .av3-demo-m b,
body.av3[data-aiv-theme="wrpm"] .av3-demo-tally > span > b { font-family: var(--w-sans); font-weight: 800; }
body.av3[data-aiv-theme="wrpm"] .av3-comp-k,
body.av3[data-aiv-theme="wrpm"] .av3-manual label,
body.av3[data-aiv-theme="wrpm"] .av3-manual summary { color: var(--w-muted); }
body.av3[data-aiv-theme="wrpm"] .av3-choice legend,
body.av3[data-aiv-theme="wrpm"] .av3-radio { color: var(--w-ink); }
body.av3[data-aiv-theme="wrpm"] ::placeholder { color: #8F99AD; }
