@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght,SOFT,WONK@9..144,500..800,35..100,0..1&family=Manrope:wght@400;500;600;700;800&display=swap");

:root {
  --op-paper: #f7f0e5;
  --op-paper-warm: #fffaf1;
  --op-paper-cool: #eef6f0;
  --op-ink: #211d18;
  --op-bark: #5b4935;
  --op-muted: #776b5d;
  --op-pine: #173f35;
  --op-forest: #2f6f56;
  --op-sage: #9eb48b;
  --op-glacier: #8ec8cf;
  --op-sky: #cfe8ef;
  --op-clay: #b86f42;
  --op-sun: #d6a84f;
  --op-line: rgba(60, 48, 35, .16);
  --op-line-strong: rgba(60, 48, 35, .28);
  --op-shadow: 0 18px 55px rgba(52, 43, 31, .1);
  --op-display: "Fraunces", "Bebas Neue", Georgia, serif;
  --op-body: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --bg: var(--op-paper);
  --bg-card: rgba(255, 250, 241, .82);
  --bg-raised: rgba(255, 250, 241, .88);
  --card: rgba(255, 250, 241, .74);
  --accent: var(--op-forest);
  --accent-soft: rgba(47, 111, 86, .12);
  --border: var(--op-line);
  --border-strong: var(--op-line-strong);
  --text-1: var(--op-ink);
  --text-2: var(--op-bark);
  --text-3: var(--op-muted);
  --font-h: var(--op-display);
  --font-b: var(--op-body);
}

:root,
html[data-theme],
html[data-theme="dark"],
html[data-theme="light"],
html[data-theme="paper"] {
  --bg: var(--op-paper);
  --bg2: var(--op-paper-warm);
  --bg3: #edf2e8;
  --bg4: #e4eee8;
  --panel: rgba(255, 250, 241, .84);
  --glass: rgba(255, 250, 241, .76);
  --card: rgba(255, 250, 241, .78);
  --surface: rgba(255, 250, 241, .86);
  --surface-soft: rgba(238, 246, 240, .72);
  --accent: var(--op-forest);
  --accent2: var(--op-glacier);
  --accent-soft: rgba(47, 111, 86, .12);
  --accent-s: rgba(47, 111, 86, .12);
  --forest: var(--op-forest);
  --forest-dim: rgba(47, 111, 86, .12);
  --forest-glow: rgba(47, 111, 86, .22);
  --gold: var(--op-sun);
  --border: var(--op-line);
  --border-h: rgba(47, 111, 86, .26);
  --border-hover: rgba(47, 111, 86, .28);
  --line: var(--op-line);
  --t1: var(--op-ink);
  --t2: var(--op-bark);
  --t3: var(--op-muted);
  --text: var(--op-ink);
  --text-1: var(--op-ink);
  --text-2: var(--op-bark);
  --text-3: var(--op-muted);
  --shadow: var(--op-shadow);
  --fh: var(--op-display);
  --fb: var(--op-body);

  /* Legacy page bridges: old pitch/product pages used tactical dark tokens. */
  --dark-navy: var(--op-paper) !important;
  --dark-navy-light: var(--op-paper-warm) !important;
  --deep-brown: var(--op-paper-cool) !important;
  --primary-blue: var(--op-forest) !important;
  --primary-blue-dim: rgba(47, 111, 86, .12) !important;
  --soft-green: var(--op-glacier) !important;
  --soft-green-dim: rgba(142, 200, 207, .14) !important;
  --text-white: var(--op-ink) !important;
  --text-gray: var(--op-muted) !important;
  --font-heading: var(--op-display) !important;
  --font-body: var(--op-body) !important;
  --font-mono: var(--op-body) !important;
}

html {
  background: var(--op-paper);
}

body {
  color: var(--op-ink);
  font-family: var(--op-body);
  letter-spacing: 0;
  background-color: var(--op-paper);
  background-image:
    linear-gradient(116deg, rgba(23, 63, 53, .16) 0%, rgba(23, 63, 53, .05) 23%, transparent 46%),
    linear-gradient(292deg, rgba(142, 200, 207, .3) 0%, rgba(142, 200, 207, .1) 32%, transparent 58%),
    linear-gradient(180deg, #fff7eb 0%, #f3f3e7 45%, #e9f4f3 100%);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  opacity: .74;
  background-image:
    linear-gradient(rgba(33, 29, 24, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(33, 29, 24, .03) 1px, transparent 1px),
    repeating-linear-gradient(97deg, rgba(255, 255, 255, .24) 0 1px, transparent 1px 7px);
  background-size: 44px 44px, 44px 44px, auto;
  mask-image: linear-gradient(#000, rgba(0, 0, 0, .84));
}

body::after {
  content: "";
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  height: min(32vh, 260px);
  pointer-events: none;
  opacity: .34;
  background:
    linear-gradient(145deg, transparent 0 28%, rgba(23, 63, 53, .34) 28.4% 44%, transparent 44.4%),
    linear-gradient(215deg, transparent 0 38%, rgba(142, 200, 207, .26) 38.4% 56%, transparent 56.4%),
    linear-gradient(175deg, transparent 0 48%, rgba(47, 111, 86, .3) 48.4% 64%, transparent 64.4%),
    linear-gradient(180deg, transparent, rgba(23, 63, 53, .12));
}

h1,
h2,
h3,
.hero-title,
.section-title,
.hero h1,
.hero h2,
.section-head h2,
.blog-command h1,
.blog-command h2,
.blog-hero h1,
.catalog-card h3,
.quick-win-card h3,
.service-link h3,
.card h3 {
  font-family: var(--op-display);
  letter-spacing: 0;
  text-transform: none;
  font-weight: 700;
}

h1,
.hero-title,
.hero h1,
.blog-hero h1 {
  line-height: .98;
}

h2,
.section-title,
.section-head h2,
.hero h2 {
  line-height: 1.02;
}

p,
li,
summary,
input,
textarea,
button {
  font-family: var(--op-body);
  letter-spacing: 0;
}

.nav,
.topnav,
.scout-topbar,
.portal-nav,
.mast-nav,
.site-nav,
.navbar,
header nav {
  border-color: rgba(60, 48, 35, .18);
  background: color-mix(in srgb, var(--op-paper-warm) 82%, transparent);
  box-shadow: 0 18px 50px rgba(46, 38, 28, .12);
}

.nav-brand,
.topnav-brand,
.scout-brand,
.footer-brand,
.foot-brand,
.portal-brand,
.mast-logo,
.logo-text {
  color: var(--op-pine);
  font-family: "Bebas Neue", var(--op-display);
  letter-spacing: 0;
}

.nav-links a,
.topnav-links a,
.portal-nav a,
.mast-nav a,
.site-nav a {
  color: color-mix(in srgb, var(--op-bark) 78%, var(--op-pine));
  letter-spacing: 0;
}

.nav-links a:hover,
.nav-links a.active,
.topnav-links a:hover,
.topnav-links a.active,
.portal-nav a:hover,
.portal-nav a.active,
.mast-nav a:hover,
.site-nav a:hover {
  color: var(--op-pine);
  background: rgba(47, 111, 86, .1);
}

.hero,
.blog-hero,
.section,
section {
  position: relative;
}

.hero,
.blog-hero {
  background:
    linear-gradient(120deg, rgba(23, 63, 53, .1), transparent 34%),
    linear-gradient(285deg, rgba(142, 200, 207, .18), transparent 48%),
    linear-gradient(180deg, rgba(255, 250, 241, .46), rgba(238, 246, 240, .24));
}

.hero::after,
.blog-hero::after {
  content: "";
  position: absolute;
  left: clamp(1rem, 5vw, 4rem);
  right: clamp(1rem, 5vw, 4rem);
  bottom: clamp(.8rem, 3vw, 2rem);
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(47, 111, 86, .34), rgba(214, 168, 79, .36), transparent);
}

.eyebrow,
.blog-kicker,
.tag,
.service-kicker,
.hero-kicker,
.kicker,
.label,
.badge,
.chip,
.console-label,
.catalog-tag,
.quick-win-tag,
.hero-tag,
.hero-card-kicker,
.price {
  color: var(--op-forest);
  font-family: "JetBrains Mono", monospace;
  letter-spacing: 0;
}

.btn,
.nav-cta,
.topnav-cta,
.portal-cta,
.cta,
.ol-btn,
.checkout-link,
.details-link,
.quick-win-link,
.assist-prompt,
button[type="submit"] {
  border-color: rgba(47, 111, 86, .26);
  border-radius: 999px;
  box-shadow: 0 10px 26px rgba(47, 111, 86, .12);
  letter-spacing: 0;
}

.btn-fill,
.btn-primary,
.nav-cta,
.topnav-cta,
.portal-cta,
.cta-primary,
.checkout-link,
button[type="submit"] {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest));
  color: #fffaf1;
}

.btn-ghost,
.btn.secondary,
.btn-secondary,
.btn-outline,
.details-link,
.quick-win-link,
.assist-prompt {
  background: rgba(255, 250, 241, .7);
  color: var(--op-pine);
}

.btn:hover,
.nav-cta:hover,
.topnav-cta:hover,
.checkout-link:hover,
.details-link:hover,
.quick-win-link:hover,
.assist-prompt:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(47, 111, 86, .16);
}

.card,
.policy,
.service-link,
.metric,
.blog-card,
.article-card,
.case-card,
.job-card,
.value-card,
.catalog-card,
.quick-win-card,
.helper-panel,
.payment-step,
.hero-card,
.briefing-console,
.source-card,
.use-card,
.side-card,
.domain-box,
.form-card,
.portal-card,
.brand-card,
.console-stat-grid div,
.topic-lane,
.result-card,
.product-card,
.feature-card,
.pricing-card,
.package-card,
.industry-card,
.store-ad,
.band,
.faq-list details {
  border-color: var(--op-line);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255, 250, 241, .86), rgba(239, 246, 240, .56)),
    var(--op-paper-warm);
  box-shadow: var(--op-shadow);
}

.card:hover,
.service-link:hover,
.blog-card:hover,
.article-card:hover,
.case-card:hover,
.job-card:hover,
.value-card:hover,
.catalog-card:hover,
.quick-win-card:hover,
.product-card:hover,
.feature-card:hover,
.industry-card:hover {
  border-color: rgba(47, 111, 86, .32);
  box-shadow: 0 24px 70px rgba(47, 111, 86, .14);
}

.service-visual,
.hero-card img,
.catalog-card img,
.quick-win-card img,
.blog-card img,
.article-card img,
.product-card img,
.media-frame,
.hero-img,
img[class*="hero"],
img[class*="card"] {
  border-radius: 8px;
  box-shadow: 0 18px 44px rgba(52, 43, 31, .12);
}

.hero-glow,
.hero-glow-2,
.blog-hero-glow {
  opacity: .42;
  filter: saturate(.85) hue-rotate(82deg);
}

.hero-grid,
.briefing-console::before {
  opacity: .28;
  background-image:
    linear-gradient(rgba(47, 111, 86, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(142, 200, 207, .08) 1px, transparent 1px);
}

.section-head p,
.lead,
.hero-sub,
.deck,
.lede,
.blog-command-copy > p,
.card p,
.policy p,
.service-link p,
.catalog-card p,
.quick-win-card p,
.helper-panel p {
  color: var(--op-bark);
}

.metrics strong,
.metric strong,
.console-stat-grid strong,
.price,
.quick-win-price {
  color: var(--op-pine);
}

.footer,
footer,
.site-footer,
.portal-footer {
  border-top-color: rgba(60, 48, 35, .16);
  background: linear-gradient(180deg, transparent, rgba(238, 246, 240, .54));
}

.hero-tag,
.badge,
.chip,
.job-tag,
.pill,
.filter,
.blog-filter,
.collection-tab {
  border-color: rgba(47, 111, 86, .22);
  background: rgba(255, 250, 241, .72);
  color: var(--op-forest);
}

.hero-tag .pulse,
.pulse,
.dot,
.term-dot.min {
  background: var(--op-forest);
  box-shadow: 0 0 0 6px rgba(47, 111, 86, .1);
}

.hero-glow,
.hero-glow-2,
.blog-hero-glow,
.article-hero-glow,
[class*="glow"] {
  background: linear-gradient(135deg, rgba(47, 111, 86, .16), rgba(142, 200, 207, .16));
}

.gradient-text,
.glow-sep,
.opp-card::before,
.roadmap-timeline::before,
.report-mock::before,
.cta-box::before {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest), var(--op-glacier)) !important;
}

.opp-card,
.model-card,
.division-card,
.invest-card,
.partner-card,
.use-case,
.use,
.step-card,
.tier-card,
.source-card,
.cta-box,
.report-mock,
.mock-row,
.sample-table,
.roadmap-item,
.opportunity-card {
  background:
    linear-gradient(145deg, rgba(255, 250, 241, .9), rgba(238, 246, 240, .64)),
    var(--op-paper-warm) !important;
  border-color: rgba(60, 48, 35, .16) !important;
  color: var(--op-ink) !important;
}

.g-radar,
.g-sonar-pulse,
.g-uav-scan,
.g-uav-scan-2,
.g-blip,
.g-hud-corner,
.g-crosshair {
  opacity: .14 !important;
  filter: hue-rotate(88deg) saturate(.7) !important;
  mix-blend-mode: multiply;
}

.g-radar .radar-ring,
.g-sonar-pulse,
.g-blip::after,
.g-hud-corner {
  border-color: rgba(47, 111, 86, .18) !important;
}

.g-uav-scan,
.g-uav-scan-2,
.g-radar .radar-sweep,
.g-crosshair::before,
.g-crosshair::after {
  background: linear-gradient(90deg, transparent, rgba(47, 111, 86, .14), rgba(142, 200, 207, .12), transparent) !important;
  box-shadow: none !important;
}

.terminal,
.terminal-card,
.console,
.code-window,
.report-mock,
.sample-table {
  border-color: rgba(60, 48, 35, .18);
  background:
    linear-gradient(145deg, rgba(255, 250, 241, .9), rgba(238, 246, 240, .62)),
    var(--op-paper-warm);
  color: var(--op-ink);
}

html[data-theme="paper"] .accent,
html[data-theme="paper"] h1 .accent,
html[data-theme="paper"] h2 .accent,
html[data-theme="paper"] .hero h1 .accent,
html[data-theme="paper"] .hero h1 .green,
html[data-theme="paper"] .contact-head h2 span,
html[data-theme="paper"] .seo-card h3,
html[data-theme="paper"] .c-success h3 {
  color: var(--op-forest) !important;
}

.grad,
html[data-theme="paper"] .grad,
html[data-theme="paper"] .hero .grad {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest), var(--op-glacier)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
}

html[data-theme="paper"] .btn-fill,
html[data-theme="paper"] .nav-cta,
html[data-theme="paper"] .topnav-cta,
html[data-theme="paper"] .checkout-link {
  background-color: var(--op-pine) !important;
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest)) !important;
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] .btn-ghost,
html[data-theme="paper"] .theme-btn,
html[data-theme="paper"] .mob-menu,
html[data-theme="paper"] .nav-more-menu {
  border-color: rgba(47, 111, 86, .2) !important;
  background: rgba(255, 250, 241, .82) !important;
  color: var(--op-bark) !important;
}

html[data-theme="paper"] .hero-glow,
html[data-theme="paper"] .hero-glow-2,
html[data-theme="paper"] .g-radar .radar-sweep,
html[data-theme="paper"] .g-blip {
  background: linear-gradient(135deg, rgba(47, 111, 86, .16), rgba(142, 200, 207, .14)) !important;
}

/* Final Rockies-paper compatibility pass for legacy one-off pages. */
:root,
html[data-theme="paper"],
html[data-theme="dark"],
html[data-theme="light"],
body[data-theme="paper"] {
  --accent: var(--op-forest) !important;
  --accent2: var(--op-glacier) !important;
  --accent-soft: rgba(47, 111, 86, .12) !important;
  --accent-glow: rgba(47, 111, 86, .1) !important;
  --forest: var(--op-forest) !important;
  --forest-dim: rgba(47, 111, 86, .12) !important;
  --forest-glow: rgba(47, 111, 86, .18) !important;
  --gold: var(--op-sun) !important;
}

html[data-theme="paper"] .nav-links a.nav-cta,
html[data-theme="paper"] .nav-links a.nav-cta:hover,
html[data-theme="paper"] .nav-links a.nav-cta.active,
.nav-links a.nav-cta,
.topnav-links a.topnav-cta {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest)) !important;
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] .ticker,
html[data-theme="paper"] .hero-tag,
html[data-theme="paper"] .edition .count,
html[data-theme="paper"] .read-btn,
html[data-theme="paper"] .blog-strip,
html[data-theme="paper"] .filter-btn.active,
.ticker,
.hero-tag,
.read-btn {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest)) !important;
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] .live-badge,
html[data-theme="paper"] .mast-center h1 .agi,
html[data-theme="paper"] .mast-back:hover,
html[data-theme="paper"] .hero-body .sec,
html[data-theme="paper"] .card .sec,
html[data-theme="paper"] .feat-body .sec,
html[data-theme="paper"] .sec-label,
html[data-theme="paper"] .archive-day .day-date,
html[data-theme="paper"] .blog-board-kicker,
html[data-theme="paper"] .blog-tile .meta,
html[data-theme="paper"] .blog-board-link,
html[data-theme="paper"] .blog-strip a,
.log-header,
.diag-log-line.system {
  color: var(--op-forest) !important;
  border-color: rgba(47, 111, 86, .32) !important;
}

.portal-hero h1 .accent,
html[data-theme="paper"] .portal-hero h1 .accent {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest), var(--op-glacier)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
}

html[data-theme="paper"] .gauge-fill,
html[data-theme="paper"] .telemetry-progress-fill {
  stroke: var(--op-forest) !important;
  background: linear-gradient(90deg, var(--op-pine), var(--op-forest), var(--op-glacier)) !important;
  box-shadow: 0 0 10px rgba(47, 111, 86, .16) !important;
}

html[data-theme="paper"] .gauge-val,
html[data-theme="paper"] .g-radar .radar-center,
.g-radar .radar-center {
  color: var(--op-forest) !important;
  background: var(--op-forest) !important;
  border-color: rgba(47, 111, 86, .3) !important;
  box-shadow: 0 0 10px rgba(47, 111, 86, .24), 0 0 24px rgba(142, 200, 207, .18) !important;
}

.agi-pop-cta,
.agi-pop-list a:hover,
.agi-pop-list a:focus-visible {
  background-color: var(--op-pine) !important;
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest)) !important;
  border-color: rgba(47, 111, 86, .42) !important;
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] .diag-head,
html[data-theme="paper"] .diagnostic-terminal,
html[data-theme="paper"] .diag-logs-window,
html[data-theme="paper"] .terminal-body,
html[data-theme="paper"] .btn-terminal-action {
  border-color: rgba(47, 111, 86, .28) !important;
}

::selection {
  background: rgba(47, 111, 86, .2);
  color: var(--op-ink);
}

/* Legacy article readability bridge.
   Older news posts carried dark-mode inline colors. The paper skin now owns the
   background, so this pass makes inherited article copy readable on light paper. */
html[data-theme="paper"] .article .content p,
html[data-theme="paper"] .article .content li,
html[data-theme="paper"] .article-content p,
html[data-theme="paper"] .article-content li,
html[data-theme="paper"] .article-content span,
html[data-theme="paper"] .source-box,
html[data-theme="paper"] .sources p,
html[data-theme="paper"] .dek,
html[data-theme="paper"] .meta,
html[data-theme="paper"] .stat span,
html[data-theme="paper"] .box span,
html[data-theme="paper"] .signal-card span,
html[data-theme="paper"] .bench-card .bench-name,
html[data-theme="paper"] .mythos-row .fable,
html[data-theme="paper"] .prompt-label {
  color: var(--op-bark) !important;
}

html[data-theme="paper"] .article-content h3,
html[data-theme="paper"] .article-content h4,
html[data-theme="paper"] .article-cta h3,
html[data-theme="paper"] .glasswing-box h3,
html[data-theme="paper"] .bench-card .label,
html[data-theme="paper"] .mythos-row .dim,
html[data-theme="paper"] .foot-brand,
html[data-theme="paper"] .foot-copy,
html[data-theme="paper"] .foot-links a {
  color: var(--op-pine) !important;
}

html[data-theme="paper"] .article-content a:not(.btn),
html[data-theme="paper"] .sources a,
html[data-theme="paper"] .source-list a,
html[data-theme="paper"] .cta a {
  color: var(--op-pine) !important;
  font-weight: 700;
  text-decoration-color: rgba(23, 63, 53, .42);
}

html[data-theme="paper"] .prompt-block p {
  color: #5b2a86 !important;
}

html[data-theme="paper"] .btn-fill,
html[data-theme="paper"] .btn-primary,
html[data-theme="paper"] .read-btn {
  background: linear-gradient(135deg, var(--op-pine), var(--op-forest)), var(--op-pine) !important;
  background-color: var(--op-pine) !important;
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] .content .cta,
html[data-theme="paper"] .article .cta {
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] .content .cta h2,
html[data-theme="paper"] .content .cta h3,
html[data-theme="paper"] .content .cta p,
html[data-theme="paper"] .article .cta h2,
html[data-theme="paper"] .article .cta h3,
html[data-theme="paper"] .article .cta p {
  color: var(--op-paper-warm) !important;
}

html[data-theme="paper"] p[style*="#94949e"],
html[data-theme="paper"] p[style*="#A1A1AA"],
html[data-theme="paper"] p[style*="var(--text-2)"] {
  color: var(--op-bark) !important;
}

html[data-theme="paper"] .article-content .btn-fill,
html[data-theme="paper"] .article-content a.btn-fill,
html[data-theme="paper"] a.btn.btn-fill {
  background: var(--op-pine) !important;
  background-image: none !important;
  background-color: var(--op-pine) !important;
  color: var(--op-paper-warm) !important;
  text-decoration: none !important;
}

html[data-theme="paper"] p.cta {
  color: var(--op-bark) !important;
}

html[data-theme="paper"] p.cta a {
  color: var(--op-pine) !important;
}

.article-content .btn-fill,
.article-content a.btn-fill,
a.btn.btn-fill {
  background: var(--op-pine) !important;
  background-image: none !important;
  background-color: var(--op-pine) !important;
  color: var(--op-paper-warm) !important;
  text-decoration: none !important;
}

p.cta {
  color: var(--op-bark) !important;
}

p.cta a {
  color: var(--op-pine) !important;
  font-weight: 700;
}

.article p.cta,
html[data-theme="paper"] .article p.cta {
  color: var(--op-bark) !important;
}

@media (max-width: 900px) {
  body {
    background-image:
      linear-gradient(118deg, rgba(23, 63, 53, .16) 0%, rgba(23, 63, 53, .04) 34%, transparent 64%),
      linear-gradient(292deg, rgba(142, 200, 207, .25) 0%, rgba(142, 200, 207, .07) 42%, transparent 70%),
      linear-gradient(180deg, #fff7eb 0%, #f3f3e7 56%, #e9f4f3 100%);
  }

  h1,
  .hero-title,
  .blog-hero h1 {
    font-size: clamp(2.8rem, 13vw, 4.25rem);
  }

  .card,
  .policy,
  .service-link,
  .catalog-card,
  .quick-win-card,
  .helper-panel,
  .payment-step,
  .hero-card,
  .blog-card,
  .article-card {
    box-shadow: 0 14px 38px rgba(52, 43, 31, .1);
  }
}

/* Trust polish: late contrast guard for legacy dark-template pages now rendered
   on the lighter Opcelerate paper system. */
body:not(.shop-page) > nav {
  background: rgba(23, 63, 53, .96) !important;
  border-bottom-color: rgba(255, 250, 241, .18) !important;
  box-shadow: 0 12px 34px rgba(33, 29, 24, .16) !important;
}

body:not(.shop-page) > nav .nav-brand,
body:not(.shop-page) > nav .topnav-brand,
body:not(.shop-page) > nav a.nav-back {
  color: var(--op-paper-warm) !important;
  -webkit-text-fill-color: var(--op-paper-warm) !important;
}

body:not(.shop-page) > nav .nav-links a,
body:not(.shop-page) > nav a {
  color: rgba(255, 250, 241, .86) !important;
}

body:not(.shop-page) > nav .nav-links a:hover,
body:not(.shop-page) > nav .nav-links a.active,
body:not(.shop-page) > nav a[style*="var(--accent)"] {
  color: #ffffff !important;
  background: rgba(255, 250, 241, .12) !important;
}

body:not(.shop-page) > nav .nav-cta,
body:not(.shop-page) > nav .topnav-cta {
  background: var(--op-paper-warm) !important;
  color: var(--op-pine) !important;
}

.grad,
.hero .grad,
.hero h1 .gradient-text,
.portal-hero h1 .accent {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: currentColor !important;
  color: var(--op-pine) !important;
}

body:not(.shop-page) .innovation h4,
body:not(.shop-page) .invest-use-item h4,
body:not(.shop-page) .roadmap-item h4,
body:not(.shop-page) .brand-card .bc-info h4,
body:not(.shop-page) .section h3,
body:not(.shop-page) .doc-section h3 {
  color: var(--op-pine) !important;
  -webkit-text-fill-color: var(--op-pine) !important;
}

body:not(.shop-page) label,
body:not(.shop-page) .helper,
body:not(.shop-page) .subtitle,
body:not(.shop-page) .author-block,
body:not(.shop-page) .bc-meta {
  color: var(--op-bark) !important;
}

.btn,
.btn-fill,
.btn-primary,
.nav-cta,
.topnav-cta,
.demo-launch,
.pkg-btn,
.checkout-link,
.quick-win-link,
.map-btn,
a.btn {
  background: var(--op-pine) !important;
  background-color: var(--op-pine) !important;
  background-image: none !important;
  color: var(--op-paper-warm) !important;
  -webkit-text-fill-color: var(--op-paper-warm) !important;
  border-color: rgba(23, 63, 53, .2) !important;
  text-decoration: none !important;
}

.btn:hover,
.btn-fill:hover,
.btn-primary:hover,
.demo-launch:hover,
.pkg-btn:hover,
.checkout-link:hover,
.quick-win-link:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.shop-page .prompt-relief {
  border-color: rgba(216, 255, 232, .45) !important;
  background:
    radial-gradient(circle at 92% 12%, rgba(216, 183, 111, .26), transparent 34%),
    linear-gradient(135deg, #0d342a 0%, #155844 62%, #171612 100%) !important;
}

.shop-page .prompt-relief p,
.shop-page .prompt-relief strong {
  color: #f7fff9 !important;
  -webkit-text-fill-color: #f7fff9 !important;
}

.shop-page .prompt-relief .mini-label {
  color: #dfffe9 !important;
}

.shop-page .prompt-relief a {
  background: #fffaf1 !important;
  color: #0d342a !important;
  -webkit-text-fill-color: #0d342a !important;
}

.innovation {
  background: linear-gradient(135deg, #0a0c10, #17251f) !important;
  color: #f7fff9 !important;
}

.innovation h4 {
  color: #f7fff9 !important;
  -webkit-text-fill-color: #f7fff9 !important;
}

.innovation p {
  color: #dcefe6 !important;
}

.invest-use-item,
.roadmap-item,
.setup-card {
  background: rgba(13, 52, 42, .9) !important;
  border-color: rgba(216, 255, 232, .18) !important;
}

.invest-use-item h4,
.roadmap-item h4,
.setup-card h4 {
  color: #fffaf1 !important;
  -webkit-text-fill-color: #fffaf1 !important;
}

.invest-use-item p,
.roadmap-item p,
.setup-card p {
  color: #dcefe6 !important;
}

.shop-page .lede,
.shop-page .helper-copy p,
.shop-page .helper-panel p,
.shop-page .catalog-card p,
.shop-page .quick-win-card p,
.shop-page .payment-step p,
.shop-page .domain-box p {
  color: #3d352b !important;
  -webkit-text-fill-color: #3d352b !important;
}

.shop-page .prompt-relief p,
.shop-page .prompt-relief strong {
  color: #f7fff9 !important;
  -webkit-text-fill-color: #f7fff9 !important;
}

.showcase-page .showcase-nav a {
  color: #173f35 !important;
  background: rgba(255, 250, 241, .92) !important;
  border-color: rgba(23, 63, 53, .24) !important;
  font-weight: 800 !important;
}

.showcase-page .showcase-head h2,
.showcase-page h2.r,
.showcase-page .r.v {
  color: #fffaf1 !important;
  -webkit-text-fill-color: #fffaf1 !important;
}

#passwordGate,
#docGate {
  background:
    radial-gradient(circle at 18% 8%, rgba(47, 111, 86, .2), transparent 32%),
    radial-gradient(circle at 82% 12%, rgba(184, 147, 90, .16), transparent 30%),
    linear-gradient(135deg, #fffaf1, #eef6f0) !important;
  color: #173f35 !important;
}

#passwordGate::before,
#docGate::before {
  content: "";
  position: absolute;
  inset: 1rem;
  border: 1px solid rgba(47, 111, 86, .16);
  border-radius: 28px;
  pointer-events: none;
  box-shadow: inset 0 1px rgba(255, 255, 255, .7);
}

#passwordGate [style*="gateFadeIn"],
#docGate [style*="docFade"] {
  opacity: 1 !important;
  animation: none !important;
  transform: none !important;
}

#passwordGate > div[style*="font-family:'JetBrains Mono'"],
#docGate > div[style*="font-family:'JetBrains Mono'"] {
  max-width: calc(100vw - 4rem) !important;
  text-align: center !important;
  line-height: 1.55 !important;
  letter-spacing: .14em !important;
  overflow-wrap: anywhere !important;
}

#passwordGate h1,
#docGate h1 {
  color: #173f35 !important;
  -webkit-text-fill-color: #173f35 !important;
}

#passwordGate p,
#docGate p,
#passwordGate div[style*="bottom:2rem"],
#docGate div[style*="bottom:2rem"] {
  color: #5c5142 !important;
}

#passwordGate div[style*="Classified"],
#docGate div[style*="Restricted"] {
  color: #2f6f56 !important;
}

#gateInput,
#docInput {
  background: rgba(255, 250, 241, .92) !important;
  border-color: rgba(47, 111, 86, .28) !important;
  color: #173f35 !important;
  box-shadow: 0 18px 50px rgba(33, 29, 24, .1), inset 0 1px rgba(255, 255, 255, .8) !important;
}

#gateInput::placeholder,
#docInput::placeholder {
  color: #5c5142 !important;
}

body:has(#passwordGate:not(.unlocked)) > :not(#passwordGate):not(style):not(script),
body:has(#docGate:not(.unlocked)) > :not(#docGate):not(style):not(script) {
  visibility: hidden !important;
}

aside.cta a.btn,
.cta a.btn,
.article-cta a.btn,
.blog-cta a.btn {
  color: #fffaf1 !important;
  -webkit-text-fill-color: #fffaf1 !important;
}

.shop-page .prompt-relief {
  background: #0d342a !important;
}

.nav-links li,
.topnav-links li,
.nav-more {
  color: rgba(255, 250, 241, .92) !important;
  -webkit-text-fill-color: rgba(255, 250, 241, .92) !important;
}

h1.grad,
.hero h1.grad {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  color: #173f35 !important;
  -webkit-text-fill-color: #173f35 !important;
}

body[data-price-mode] .hero,
body:has(.sheet) .hero {
  background:
    radial-gradient(circle at 82% 40%, rgba(47, 111, 86, .28), transparent 28%),
    linear-gradient(135deg, #171412 0%, #241d19 58%, #173f35 100%) !important;
  color: #fffaf1 !important;
}

body[data-price-mode] .hero h1,
body[data-price-mode] .hero h1 span,
body[data-price-mode] .hero .lead,
body[data-price-mode] .hero p,
body:has(.sheet) .hero h1,
body:has(.sheet) .hero h1 span,
body:has(.sheet) .hero .lead,
body:has(.sheet) .hero p {
  color: #fffaf1 !important;
  -webkit-text-fill-color: #fffaf1 !important;
}

body[data-price-mode] .hero .eyebrow,
body:has(.sheet) .hero .eyebrow {
  color: #dfffe9 !important;
  -webkit-text-fill-color: #dfffe9 !important;
}

p a:not(.btn),
footer a,
.footer a,
.foot-links a,
.guide-card a {
  color: #173f35 !important;
  -webkit-text-fill-color: #173f35 !important;
  font-weight: 800;
}

footer p,
.footer p,
.foot-copy,
.product-footer p,
.doc-footer p {
  color: #4c4135 !important;
  -webkit-text-fill-color: #4c4135 !important;
}

li.no {
  color: #7a2d2d !important;
  -webkit-text-fill-color: #7a2d2d !important;
}

.hero-copy {
  color: #3d352b !important;
  -webkit-text-fill-color: #3d352b !important;
}

.showcase-page p.r,
.showcase-page .filter-btn {
  color: #fffaf1 !important;
  -webkit-text-fill-color: #fffaf1 !important;
}
