/* score.provaeon.com landing + assessment: craft pass (Taste Skill inspector + Impeccable craft floor), 2026-10-21.
   Same rules as the results page: flat grounds stepped in tone, no eyebrows, no 01/02 numbers,
   no tracked micro-caps, no italic emphasis word, no glow, no 1px outlined boxes, nothing under 13px.
   Type scale: 64 / 46 / 30 / 21 / 17 / 15 / 13. Tokens from css/styles.css only. */

.sc-land, .sc-page { --l-body: rgba(18,20,26,0.74); --l-mute: rgba(18,20,26,0.6); --l-d-body: rgba(245,246,248,0.8); --l-d-mute: rgba(245,246,248,0.62); }
.sc-land ::selection, .sc-page ::selection { background: var(--blue-light); color: var(--ink); }
.sc-land a:focus-visible, .sc-land button:focus-visible, .sc-page a:focus-visible, .sc-page button:focus-visible { outline: 2px solid var(--blue-light); outline-offset: 3px; }

/* Buttons: flat fill, no glow, no lift */
.sc-land .btn, .sc-land .btn:hover, .sc-page .btn, .sc-page .btn:hover, .sc-land .btn-cta, .sc-page .btn-cta { box-shadow: none !important; transform: none !important; }
.sc-land .btn, .sc-page .btn, .sc-land .btn-cta { font-size: 15px; letter-spacing: 0; }

/* ---------- Landing ---------- */
/* Flat grounds: hero near-black, dark bands slate, footer ink */
.sc-land .as-hero { background: var(--near-black); }
.sc-land .sc-wrong, .sc-land .sc-case, .sc-land .sc-doc { background: var(--slate-800); }
.sc-land .sc-case { background: var(--near-black); }
.sc-land .f-cta { background: var(--near-black); }
.sc-land .f-footer { background: var(--ink); }
.sc-land .f-footer .tagline { text-transform: none; letter-spacing: 0; font-size: 15px; }
.sc-land .f-footer .copy, .sc-land .f-footer .disc { font-size: 13px; }

/* Hero: one dominant title; the second line is the same face, not italic */
.sc-land .as-hero h1 { font-size: clamp(38px, 4.6vw, 64px); line-height: 1.04; letter-spacing: -0.02em; }
.sc-land .as-hero h1 .accent { font-style: normal; display: block; }
.sc-land h2 em, .sc-land h1 em { font-style: normal; color: inherit; }
.sc-land .sc-lp-video { box-shadow: none; border-radius: 8px; }

/* Trust strip: no rules, readable captions */
.sc-land .sc-logos { border-top: 0; border-bottom: 0; }
.sc-land .sc-trust-line { font-size: 15px; letter-spacing: 0; color: var(--l-d-mute); }
.sc-land .sc-stats span, .sc-land .sc-doc-stats span, .sc-land .sc-case-stats span { font-size: 13px; letter-spacing: 0; text-transform: none; color: var(--l-d-mute); line-height: 1.4; }

/* Pain cards: filled, no outline, no coloured left bar */
.sc-land .sc-pain-card { border: 0; background: var(--white); border-radius: 8px; }
.sc-land .sc-pain-card::before { content: none; }
.sc-land .sc-pain-card h3 { font-size: 21px; margin-top: 0; }
.sc-land .sc-pain-card p, .sc-land .sc-sub, .sc-land .lead { font-size: 17px; }
.sc-land .sc-pain-card p { color: var(--l-body); }
.sc-land .sc-hl { color: inherit; }

/* Anchor: filled panel, no border */
.sc-land .sc-anchor { border: 0; border-radius: 8px; background: rgba(245,246,248,0.06); padding: 24px 26px; }

/* The 3 needs: filled tiles, sentence-case names, no ghost numbers */
.sc-land .so-card { border: 0 !important; box-shadow: none !important; background: var(--bg-light); border-radius: 8px; }
.sc-land .so-label { text-transform: none; letter-spacing: 0; font-size: 17px; font-weight: 600; color: var(--blue-ink); }
.sc-land .so-desc { font-size: 15px; color: var(--l-body); }
.sc-land .so-num { display: none; }

/* Case + doctor: photos without glow or outline, stats without rules */
.sc-land .sc-case-photo, .sc-land .sc-doc-photo { box-shadow: none; border: 0; border-radius: 10px; }
.sc-land .sc-case-stats { border-top: 0; border-bottom: 0; padding: 8px 0; }
.sc-land .sc-label { text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 600; color: var(--blue-light); }
.sc-land .sc-quote { border-left: 0; padding-left: 0; }
.sc-land .sc-disc { font-size: 13px; }
.sc-land .sc-role { font-size: 17px; color: var(--l-d-mute); margin: -8px 0 24px; }

/* How it works: filled steps, no outline */
.sc-land .as-step { border: 0; background: var(--bg-light); border-radius: 8px; }
.sc-land .as-step h3 { font-size: 21px; margin-top: 0; }
.sc-land .as-step p { font-size: 15px; color: var(--l-body); }

/* ---------- Assessment ---------- */
.sc-page .ap-head h1 { font-size: clamp(36px, 4.4vw, 64px); }
.sc-page .ap-shell { background: color-mix(in srgb, var(--blue-ink) 72%, #0B1730); border: 0; box-shadow: none; border-radius: 14px; }
.sc-page .qghost { display: none; }
.sc-page .as-sec { text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 500; }
.sc-page .ap-progress { max-width: 100%; }
.sc-page .qkeys, .sc-page .qfine { font-size: 13px; }
.sc-page .ap-sub { font-size: 17px; }

@media (max-width: 600px) {
  .sc-land .as-hero h1 { font-size: 34px; }
  .sc-land h2 { font-size: 30px; }
  .sc-land .sc-pain-card h3, .sc-land .as-step h3 { font-size: 19px; }
  .sc-page .ap-head h1 { font-size: 34px; }
}

/* Fixes after first inspect */
@media (min-width: 810px) {
  .sc-land .as-hero h1.as-h1-long { font-size: clamp(40px, 4.4vw, 64px) !important; line-height: 1.06 !important; letter-spacing: -0.02em !important; max-width: 20ch; }
  .sc-land .as-hero h1.as-h1-long .accent { font-size: 0.72em; margin-top: 14px; }
}
.sc-land .sc-lp-video { box-shadow: none !important; }
.sc-land #systems, .sc-land .gap { border: 0 !important; }
.sc-land .sc-doc-stats { border-top: 0; padding-top: 8px; }
.sc-land .so-label { color: color-mix(in srgb, var(--blue-ink) 78%, #12141A); }
.sc-page .qstep .qsub { font-size: 16px; color: rgba(245,246,248,0.82); }
.sc-page .ap-head { max-width: 760px; }
.sc-land .f-sticky { border-top: 0; }
.sc-land .sc-sub, .sc-land .sc-pain-card p, .sc-land .so-desc, .sc-land .as-step p { color: rgba(18,20,26,0.8); }
.sc-land .sc-wrong .sc-sub, .sc-land .sc-case .sc-sub, .sc-land .sc-doc p, .sc-land .sc-case-body p { color: var(--l-d-body); }

/* Logo marquee (modeled on secondprime.io): one row, two copies, loops left, edges fade */
.sc-land .sc-logos.lw-marquee { display:block; position:relative; overflow:hidden; padding:22px 0;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 10%, #000 90%, transparent 100%);
          mask-image: linear-gradient(to right, transparent 0%, #000 10%, #000 90%, transparent 100%); }
.lw-track { display:flex; align-items:center; width:max-content; animation: lwScroll 52s linear infinite; }
.lw-track > * { margin-right:72px; flex:0 0 auto; }
@media (hover: hover) { .lw-marquee:hover .lw-track { animation-play-state: paused; } }
@keyframes lwScroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.sc-land .sc-logos .lw-logo { height:32px; width:auto; filter: brightness(0) invert(1); opacity:.62; transition: opacity var(--dur-ui) var(--ease); }
.sc-land .sc-logos .lw-logo:hover { opacity:1; }
.sc-land .sc-logos .lw-wide { height:27px; }
.sc-land .sc-logos .lw-tall { height:40px; }
.sc-land .sc-logos .lw-emblem { height:45px; }
.sc-land .sc-logos .lw-bw { height:24px; }
.sc-land .sc-logos .lw-word { height:auto; filter:none; font-weight:700; font-size:24px; line-height:1; color:#fff; }
@media (max-width: 760px) {
  .lw-track { animation-duration: 36s; }
  .lw-track > * { margin-right:48px; }
  .sc-land .sc-logos .lw-logo { height:25px; }
  .sc-land .sc-logos .lw-wide { height:21px; }
  .sc-land .sc-logos .lw-tall { height:31px; }
  .sc-land .sc-logos .lw-emblem { height:35px; }
  .sc-land .sc-logos .lw-bw { height:19px; }
  .sc-land .sc-logos .lw-word { font-size:19px; }
}
@media (prefers-reduced-motion: reduce) {
  .lw-track { animation:none; flex-wrap:wrap; justify-content:center; width:100%; gap:24px 44px; }
  .lw-track > * { margin-right:0; }
  .lw-dup { display:none; }
}
.sc-land .sc-logos .lw-own { filter:none; opacity:.78; }
.sc-land .sc-trust { width:100%; min-width:0; max-width:860px; }
.sc-land .sc-logos.lw-marquee { width:100%; max-width:100%; min-width:0; }
.sc-land .f-hero > .container { min-width:0; width:100%; max-width:100%; }
@media (min-width: 761px) { .sc-land .f-hero > .container { max-width: var(--container, 1200px); } }
/* Video box: aspect-ratio, not padding-% (padding-% tracks the now full-width container and letterboxed the video) */
.sc-land .sc-lp-video { padding:0 !important; width:100%; aspect-ratio:16/9; height:auto; }
.sc-land .as-hero .f-hero-note:not(.sc-note-2) { color: rgba(245,246,248,.85); font-weight: 500; letter-spacing: .01em; }
.sc-land .as-hero .sc-note-2 { margin-top: 4px; font-size: 13px; opacity: .7; }
.sc-land .f-cta .f-hero-note { color: inherit; opacity: .75; }
@media (max-width: 640px) { .sc-land .d-br { display: none; } }
/* Hero hierarchy: one headline, a smaller accent line, sub never hyphen-breaks */
.sc-land .as-hero h1.as-h1-long .accent { font-size: 0.56em; margin-top: 16px; line-height: 1.25; }
.sc-land .as-hero .f-hero-sub { hyphens: none; -webkit-hyphens: none; text-wrap: balance; max-width: 52ch; margin-left: auto; margin-right: auto; }
@media (max-width: 640px) { .sc-land .as-hero .as-h1-long .accent { font-size: 0.72em; margin-top: 8px; } }
.sc-land .as-hero .f-hero-sub .sub-step { display: inline-block; margin-top: 6px; color: rgba(245,246,248,.88); }
@media (max-width: 640px) { .sc-land .as-hero h1.as-h1-long .accent { font-size: 0.74em; margin-top: 8px; } }
/* Three steps as a track with stops, not a row of boxes (craft-floor) */
.sc-land .as-steps { position: relative; gap: 40px; padding-top: 34px; }
.sc-land .as-steps::before { content: ""; position: absolute; top: 7px; left: 8px; right: 8px; height: 2px; background: color-mix(in srgb, var(--blue-deep) 22%, transparent); }
.sc-land .as-step { background: none; border: 0; border-radius: 0; padding: 0; position: relative; }
.sc-land .as-step::before { content: ""; position: absolute; top: -34px; left: 0; width: 16px; height: 16px; border-radius: 50%; background: var(--blue-deep); box-shadow: 0 0 0 5px var(--white); }
.sc-land .as-step:last-child::before { background: var(--blue-light); }
@media (max-width: 809px) {
  .sc-land .as-steps { padding-top: 0; padding-left: 34px; gap: 30px; }
  .sc-land .as-steps::before { top: 8px; bottom: 8px; left: 7px; right: auto; width: 2px; height: auto; }
  .sc-land .as-step::before { top: 4px; left: -34px; }
}
/* Case story close: room above the button, quieter disclaimer below */
.sc-land .sc-case-body .sc-case-close { margin-bottom: 28px; }
.sc-land .sc-case-body .as-cta { margin-top: 0; }
.sc-land .sc-case-body .sc-disc { margin-top: 18px; font-size: 12px; line-height: 1.5; opacity: .6; }

/* ===== Careful pass 2026-10-22 ===== */
/* Nav: keep the glass, give the button the CTA color so it reads on light and dark */
.sc-land .nav .btn-ghost, .sc-land .nav.scrolled .btn-ghost, .sc-land .nav.light .btn-ghost { background: var(--cta); border-color: var(--cta); color: var(--near-black); font-weight: 600; }
.sc-land .nav .btn-ghost:hover { background: var(--cta); color: var(--near-black); filter: brightness(1.06); }
/* Hero notes: readable, same measure as the video */
.sc-land .as-hero .f-hero-note { max-width: 640px; margin-left: auto; margin-right: auto; text-wrap: balance; }
.sc-land .as-hero .sc-note-2 { opacity: 1; color: rgba(245,246,248,.6); }
.sc-land .as-hero .f-hero-sub .nw { white-space: nowrap; }
/* Logos: our PNGs match the white wordmarks */
.sc-land .sc-logos .lw-own { filter: grayscale(1) brightness(1.5); opacity: .7; }
.sc-land .sc-logos img[alt="Merrill Lynch"] { height: 44px; }
/* Hero stats: equal columns so labels wrap the same */
.sc-land .sc-stats { grid-template-columns: 1fr 1fr; max-width: 560px; }
.sc-land .sc-stats span { max-width: 22ch; margin: 0 auto; }
/* Balance short closing lines (no orphans) */
.sc-land .sc-pain-close, .sc-land .sc-anchor-k, .sc-land .as-h1-long .accent, .sc-land h2, .sc-land .sc-case-close { text-wrap: balance; }
/* Case story: photo travels with the long copy instead of leaving an empty column */
@media (min-width: 810px) { .sc-land .sc-case-photo { position: sticky; top: 100px; align-self: start; } }
/* Mobile: every in-page CTA full width, same as hero */
@media (max-width: 640px) { .sc-land .as-cta.btn-lg { display: flex; width: 100%; justify-content: center; } }
/* overflow-x:hidden on html/body makes them scroll containers and kills sticky; clip does not */
html:has(body.sc-land), body.sc-land { overflow-x: clip; overflow-y: visible; }
.sc-land .sc-stats span { max-width: 17ch; }
@media (max-width: 640px) { .sc-land .as-hero .f-hero-sub .nw { display: block; } }
@media (max-width: 640px) { .sc-land .as-hero .f-hero-sub .sub-br { display: none; } .sc-land .as-hero .f-hero-sub .sub-step { display: block; margin-top: 10px; } }
/* One orange only: hover no longer swaps to a near-identical lighter orange; it lifts instead */
.sc-land .as-cta:hover, .sc-land .btn.as-cta:hover, .sc-land .btn-teal:hover, .sc-land .nav .btn-ghost:hover { background: var(--cta) !important; filter: none; transform: translateY(-1px); box-shadow: 0 8px 22px -10px color-mix(in srgb, var(--cta) 70%, transparent); }
.sc-land .as-cta, .sc-land .nav .btn-ghost { transition: transform .18s ease-out, box-shadow .18s ease-out; }
/* Final CTA + footer share one black, divided by a hairline instead of a tone shift */
.sc-land .f-footer { background: var(--near-black); border-top: 1px solid rgba(253,251,248,0.08); }
/* Premium lit button (aniakubow reel John sent 2026-10-22): gradient + 4 shadows, flips on press */
.sc-land .as-cta, .sc-land .btn.as-cta, .sc-land .nav .btn-ghost, .sc-land .f-sticky .btn-teal {
  background: linear-gradient(180deg, color-mix(in srgb, var(--cta) 72%, #fff), var(--cta)) !important;
  border: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), inset 0 -2px 0 rgba(0,0,0,.2), 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -6px color-mix(in srgb, var(--cta) 60%, transparent) !important;
  transition: transform .15s ease-out, box-shadow .15s ease-out !important;
}
.sc-land .as-cta:hover, .sc-land .btn.as-cta:hover, .sc-land .nav .btn-ghost:hover, .sc-land .f-sticky .btn-teal:hover {
  background: linear-gradient(180deg, color-mix(in srgb, var(--cta) 72%, #fff), var(--cta)) !important;
  transform: translateY(-1px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), inset 0 -2px 0 rgba(0,0,0,.2), 0 1px 2px rgba(0,0,0,.4), 0 12px 28px -6px color-mix(in srgb, var(--cta) 70%, transparent) !important;
}
.sc-land .as-cta:active, .sc-land .btn.as-cta:active, .sc-land .nav .btn-ghost:active, .sc-land .f-sticky .btn-teal:active {
  transform: translateY(1px); box-shadow: inset 0 2px 4px rgba(0,0,0,.27) !important;
}
/* Exact Amazon orange (#FF9900, Amazon brand spec); gradient top light kept subtle so it still reads as Amazon orange */
:root { --cta: #FF9900; --cta-hover: #FF9900; }
.sc-land .as-cta, .sc-land .btn.as-cta, .sc-land .nav .btn-ghost, .sc-land .f-sticky .btn-teal,
.sc-land .as-cta:hover, .sc-land .btn.as-cta:hover, .sc-land .nav .btn-ghost:hover, .sc-land .f-sticky .btn-teal:hover {
  background: linear-gradient(180deg, color-mix(in srgb, var(--cta) 88%, #fff), var(--cta)) !important;
}
