/*
 * CLAWOLF Public Prestige Pass — 2026-08-14
 * Applies to public marketing surfaces except CNDA.
 * White / silver / near-black / cobalt. No violet. No commodity card grids.
 */

body.d1r2-site:not(.cnda-premium) {
  --prestige-ink: #061328;
  --prestige-ink-soft: #19314d;
  --prestige-muted: #465f7d;
  --prestige-blue: #155ee8;
  --prestige-blue-bright: #2b86ff;
  --prestige-navy: #061a3f;
  --prestige-line: rgba(14, 70, 155, 0.17);
  --prestige-line-strong: rgba(21, 94, 232, 0.32);
  --prestige-white: rgba(255, 255, 255, 0.88);
  color: var(--prestige-ink);
  background-color: #f8fbff !important;
  background-image:
    linear-gradient(rgba(249,252,255,.84), rgba(249,252,255,.84)),
    url('/assets/website-art-v4/clawolf-public-prestige-bg.webp') !important;
  background-position: center top, center top !important;
  background-repeat: repeat-y, repeat-y !important;
  background-size: 100% auto, 100% auto !important;
  background-attachment: scroll, fixed !important;
}

body.d1r2-site:not(.cnda-premium) main,
body.d1r2-site:not(.cnda-premium) .d1r2-route-surface,
body.d1r2-site:not(.cnda-premium) .d1r2-scene,
body.d1r2-site:not(.cnda-premium) .d1r2-chapter,
body.d1r2-site:not(.cnda-premium) .d1r2-scene--paper,
body.d1r2-site:not(.cnda-premium) .d1r2-chapter--architecture,
body.d1r2-site:not(.cnda-premium) .d1r2-chapter--runtime,
body.d1r2-site:not(.cnda-premium) .d1r2-chapter--decision,
body.strategy-page:not(.cnda-premium) .strategy-section,
body.strategy-page:not(.cnda-premium) .strategy-section--soft {
  background: transparent !important;
}

body.d1r2-site:not(.cnda-premium) .d1r2-route-surface,
body.d1r2-site:not(.cnda-premium) .d1r2-chapter {
  border-color: var(--prestige-line) !important;
}

/* Keep content readable while allowing the owned background to remain visible. */
body.d1r2-site:not(.cnda-premium) .d1r2-route-hero > .d1r2-shell,
body.d1r2-site:not(.cnda-premium) .d1r2-chapter__intro,
body.d1r2-site:not(.cnda-premium) .d1r2-scene > .d1r2-shell {
  position: relative;
  z-index: 2;
}

/* User-approved readability increase: major explanatory copy is at least ~6px larger. */
body.d1r2-site:not(.cnda-premium) .d1r2-lede,
body.d1r2-site:not(.cnda-premium) .strategy-section__lede,
body.d1r2-site:not(.cnda-premium) .strategy-hero__lede {
  font-size: clamp(1.55rem, 2.05vw, 1.82rem) !important;
  line-height: 1.58 !important;
  max-width: 66ch !important;
  color: #2e496a !important;
  letter-spacing: -0.012em;
}

body.d1r2-site:not(.cnda-premium) main p:not(.d1r2-eyebrow):not(.d1r2-lede),
body.d1r2-site:not(.cnda-premium) main li {
  font-size: clamp(1.16rem, 1.25vw, 1.3rem) !important;
  line-height: 1.68 !important;
}

body.d1r2-site:not(.cnda-premium) .d1r2-eyebrow {
  color: #0d56cf !important;
  font-family: var(--d1r2-font-ui), Inter, system-ui, sans-serif !important;
  font-size: .88rem !important;
  font-weight: 820 !important;
  letter-spacing: .15em !important;
}

body.d1r2-site:not(.cnda-premium) .d1r2-display {
  color: var(--prestige-ink) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.65);
}

/* Remove violet remnants globally, even in old component tokens. */
body.d1r2-site:not(.cnda-premium) {
  --d1r2-violet: #0b3b91 !important;
  --art-v3-violet: #0b3b91 !important;
  --strategy-violet: #0b3b91 !important;
  --strategy-cyan: #2b86ff !important;
  --strategy-cobalt: #155ee8 !important;
}

/* Architecture — one authoritative visual, not a stack of mini cards. */
.public-architecture .architecture-runtime-feature {
  padding: clamp(2rem, 5vw, 4.5rem) 0 clamp(4rem, 8vw, 7rem);
}

.public-architecture .architecture-runtime-feature__intro {
  max-width: 70rem;
  margin-bottom: clamp(1.6rem, 3vw, 2.5rem);
}

.public-architecture .architecture-runtime-feature__intro h2 {
  margin: 0;
  max-width: 18ch;
  font-family: var(--d1r2-font-display), Georgia, serif;
  font-size: clamp(2.6rem, 4.8vw, 4.7rem);
  line-height: 1.02;
  letter-spacing: -.045em;
  color: var(--prestige-ink);
}

.public-architecture .architecture-runtime-feature__intro p {
  max-width: 66ch;
  margin: 1.1rem 0 0;
  color: #304b6b !important;
  font-size: clamp(1.45rem, 1.9vw, 1.7rem) !important;
  line-height: 1.62 !important;
}

.public-architecture .architecture-runtime-feature__visual {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: 1.4rem;
  border: 1px solid rgba(21, 94, 232, .22);
  background: rgba(255,255,255,.72);
  box-shadow: 0 30px 80px rgba(7,37,86,.13), 0 0 0 1px rgba(255,255,255,.8) inset;
}

.public-architecture .architecture-runtime-feature__visual img {
  display: block;
  width: 100%;
  height: auto;
}

.public-architecture .architecture-runtime-feature__clarity {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 1.25rem;
  border-top: 1px solid var(--prestige-line-strong);
  border-bottom: 1px solid var(--prestige-line);
}

.public-architecture .architecture-runtime-feature__clarity div {
  padding: 1.15rem 1.25rem;
  border-right: 1px solid var(--prestige-line);
  background: rgba(255,255,255,.42);
}

.public-architecture .architecture-runtime-feature__clarity div:last-child { border-right: 0; }
.public-architecture .architecture-runtime-feature__clarity strong {
  display: block;
  color: #0b54ca;
  font-family: var(--d1r2-font-ui), Inter, system-ui, sans-serif;
  font-size: .84rem;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.public-architecture .architecture-runtime-feature__clarity span {
  display: block;
  margin-top: .45rem;
  color: #1e3859;
  font-size: 1.08rem;
  line-height: 1.5;
}

/* Proof — editorial evidence ledger. No floating card grid. */
.public-proof .d1r2-route-surface {
  padding: clamp(3.5rem, 7vw, 6rem) 0;
}

.public-proof .art-v3-proof-ledger {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.public-proof .art-v3-proof-ledger::before,
.public-proof .art-v3-proof-ledger::after { display: none !important; }

.public-proof .art-v3-proof-ledger .d1r2-route-card {
  display: grid !important;
  grid-template-columns: minmax(10rem, .35fr) minmax(20rem, 1.15fr) minmax(11rem, .45fr);
  gap: clamp(1rem, 3vw, 2.5rem);
  align-items: start;
  margin: 0 !important;
  padding: clamp(1.7rem, 3vw, 2.4rem) .25rem !important;
  border: 0 !important;
  border-bottom: 1px solid var(--prestige-line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.public-proof .art-v3-proof-ledger .d1r2-route-card:first-child {
  border-top: 2px solid #155ee8 !important;
}

.public-proof .art-v3-proof-ledger .d1r2-route-card .d1r2-eyebrow {
  grid-column: 1;
  margin: .2rem 0 0 !important;
}

.public-proof .art-v3-proof-ledger .d1r2-route-card h3 {
  grid-column: 2;
  margin: 0 !important;
  font-family: var(--d1r2-font-display), Georgia, serif;
  font-size: clamp(2rem, 3vw, 3rem) !important;
  line-height: 1.05 !important;
  color: var(--prestige-ink) !important;
}

.public-proof .art-v3-proof-ledger .d1r2-route-card > p:not(.d1r2-eyebrow) {
  grid-column: 2;
  margin: .8rem 0 0 !important;
  color: #385473 !important;
  font-size: 1.22rem !important;
}

.public-proof .art-v3-proof-ledger .d1r2-route-links {
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .55rem;
  margin: 0 !important;
}

.public-proof .d1r2-route-note {
  margin-top: 2.25rem;
  padding: 1.25rem 0 1.25rem 1.25rem !important;
  border: 0 !important;
  border-left: 3px solid #155ee8 !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.4) !important;
  box-shadow: none !important;
  color: #294766;
  font-size: 1.18rem !important;
}

/* Reference — authoritative index, not six independent cards. */
.public-reference .d1r2-route-surface {
  padding: clamp(3.5rem, 7vw, 6rem) 0;
}

.public-reference .art-v3-atlas {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.public-reference .art-v3-atlas::before,
.public-reference .art-v3-atlas::after { display: none !important; }

.public-reference .art-v3-atlas .d1r2-route-card {
  display: grid !important;
  grid-template-columns: minmax(9rem, .3fr) minmax(18rem, .7fr) minmax(24rem, 1fr) minmax(10rem, .35fr);
  gap: clamp(1rem, 2.5vw, 2rem);
  align-items: center;
  margin: 0 !important;
  padding: clamp(1.45rem, 2.6vw, 2.1rem) .25rem !important;
  border: 0 !important;
  border-bottom: 1px solid var(--prestige-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.public-reference .art-v3-atlas .d1r2-route-card:first-child {
  border-top: 2px solid #155ee8 !important;
}

.public-reference .art-v3-atlas .d1r2-route-card .d1r2-eyebrow { grid-column: 1; margin: 0 !important; }
.public-reference .art-v3-atlas .d1r2-route-card h3 {
  grid-column: 2;
  margin: 0 !important;
  font-family: var(--d1r2-font-display), Georgia, serif;
  font-size: clamp(1.7rem, 2.4vw, 2.4rem) !important;
  line-height: 1.08 !important;
  color: var(--prestige-ink) !important;
}
.public-reference .art-v3-atlas .d1r2-route-card > p:not(.d1r2-eyebrow) {
  grid-column: 3;
  margin: 0 !important;
  color: #385473 !important;
  font-size: 1.18rem !important;
}
.public-reference .art-v3-atlas .d1r2-route-links {
  grid-column: 4;
  justify-content: flex-end;
  margin: 0 !important;
}

.public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0 !important;
  margin-top: 2.8rem !important;
  border-top: 1px solid var(--prestige-line-strong);
  border-bottom: 1px solid var(--prestige-line);
}

.public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links a {
  min-height: 5rem;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 1rem !important;
  border-right: 1px solid var(--prestige-line);
  background: rgba(255,255,255,.35) !important;
  color: #0b4ebd !important;
  font-size: 1.05rem !important;
  font-weight: 760 !important;
  text-decoration: none !important;
  text-align: center;
}
.public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links a:last-child { border-right: 0; }
.public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links a:hover,
.public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links a:focus-visible {
  background: rgba(228,241,255,.7) !important;
  color: #06388c !important;
}

/* General card de-emphasis outside the specifically redesigned routes. */
body.d1r2-site:not(.cnda-premium):not(.public-proof):not(.public-reference) .d1r2-route-card,
body.d1r2-site:not(.cnda-premium) .d1r2-explore-card,
body.d1r2-site:not(.cnda-premium) .d1r2-semantic-card {
  border-radius: .75rem !important;
  border-color: rgba(21,94,232,.13) !important;
  background: rgba(255,255,255,.64) !important;
  box-shadow: 0 14px 34px rgba(7,37,86,.06) !important;
}

/* Header/footer stay crisp over the richer page substrate. */
body.d1r2-site:not(.cnda-premium) .d1r2-header {
  background: rgba(248,251,255,.72) !important;
}

body.d1r2-site:not(.cnda-premium) .d1r2-header__bar {
  border-color: rgba(21,94,232,.2) !important;
  background: rgba(255,255,255,.9) !important;
  box-shadow: 0 14px 44px rgba(7,37,86,.12) !important;
}

body.d1r2-site:not(.cnda-premium) .d1r2-footer::before { display: none !important; }
body.d1r2-site:not(.cnda-premium) .d1r2-footer__grid {
  border: 1px solid rgba(21,94,232,.18) !important;
  background: rgba(250,252,255,.9) !important;
  box-shadow: 0 24px 70px rgba(7,37,86,.1) !important;
}

@media (max-width: 980px) {
  body.d1r2-site:not(.cnda-premium) {
    background-attachment: scroll, scroll !important;
    background-size: auto, auto 100vh !important;
  }

  .public-architecture .architecture-runtime-feature__clarity { grid-template-columns: 1fr; }
  .public-architecture .architecture-runtime-feature__clarity div { border-right: 0; border-bottom: 1px solid var(--prestige-line); }
  .public-architecture .architecture-runtime-feature__clarity div:last-child { border-bottom: 0; }

  .public-proof .art-v3-proof-ledger .d1r2-route-card,
  .public-reference .art-v3-atlas .d1r2-route-card {
    grid-template-columns: 1fr !important;
    gap: .7rem !important;
  }

  .public-proof .art-v3-proof-ledger .d1r2-route-card .d1r2-eyebrow,
  .public-proof .art-v3-proof-ledger .d1r2-route-card h3,
  .public-proof .art-v3-proof-ledger .d1r2-route-card > p:not(.d1r2-eyebrow),
  .public-proof .art-v3-proof-ledger .d1r2-route-links,
  .public-reference .art-v3-atlas .d1r2-route-card .d1r2-eyebrow,
  .public-reference .art-v3-atlas .d1r2-route-card h3,
  .public-reference .art-v3-atlas .d1r2-route-card > p:not(.d1r2-eyebrow),
  .public-reference .art-v3-atlas .d1r2-route-links {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  .public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links { grid-template-columns: 1fr 1fr; }
  .public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links a { border-bottom: 1px solid var(--prestige-line); }
}

@media (max-width: 620px) {
  body.d1r2-site:not(.cnda-premium) .d1r2-lede,
  body.d1r2-site:not(.cnda-premium) .strategy-section__lede,
  body.d1r2-site:not(.cnda-premium) .strategy-hero__lede {
    font-size: 1.38rem !important;
  }
  .public-reference .d1r2-route-surface > .d1r2-shell > .d1r2-route-links { grid-template-columns: 1fr; }
}
