/* Plink Exchange — home visual enhancement layer (additive, loaded after Astro bundle)
   Brand: orange #F25C1F / #C84711, paper #F4F1EA/#EFEAE0/#E5DFD2, charcoal #2D363D/#1F2528,
   topo-sage #5A8F3A, range-tan #C9B68A */

/* ---------- HERO: depth, texture, scale ---------- */
.hero {
  position: relative;
  overflow: hidden;
}
.hero::before {
  /* faint topographic contour field behind the hero */
  content: "";
  position: absolute;
  inset: -10% -5%;
  pointer-events: none;
  opacity: 0.5;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='600' viewBox='0 0 900 600'%3E%3Cg fill='none' stroke='%23C9B68A' stroke-opacity='0.28' stroke-width='1.1'%3E%3Cpath d='M-20 120 C160 60 320 180 520 110 S 840 60 940 130'/%3E%3Cpath d='M-20 170 C170 110 330 230 530 160 S 850 110 940 180'/%3E%3Cpath d='M-20 225 C180 165 340 285 540 215 S 860 165 940 235'/%3E%3Cpath d='M-20 430 C150 500 360 380 560 460 S 830 520 940 450'/%3E%3Cpath d='M-20 485 C160 555 370 435 570 515 S 840 575 940 505'/%3E%3Cpath d='M-20 540 C170 610 380 490 580 570 S 850 630 940 560'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 900px 600px;
}
.hero::after {
  /* warm orange light bleed top-right, behind the floating map composition */
  content: "";
  position: absolute;
  top: -180px;
  right: -160px;
  width: 720px;
  height: 720px;
  pointer-events: none;
  background: radial-gradient(circle at center,
    rgba(242, 92, 31, 0.13) 0%,
    rgba(242, 92, 31, 0.06) 38%,
    rgba(242, 92, 31, 0) 68%);
}
.hero > * { position: relative; z-index: 1; }

/* Bigger, tighter display title */
.hero h1, .hero .hero-title {
  font-size: clamp(44px, 5.6vw, 84px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.028em;
}

/* ---------- HERO STATS: charcoal band, mono orange numerals ---------- */
div.wrap.hero-stats, .hero-stats[data-astro-cid-j7pv25f6] {
  background: linear-gradient(135deg, #2D363D 0%, #1F2528 100%) !important;
  border-radius: 18px;
  padding: clamp(22px, 3vw, 34px) clamp(20px, 3.5vw, 44px) !important;
  box-shadow: 0 24px 56px -24px rgba(31, 37, 40, 0.55);
  position: relative;
  overflow: hidden;
}
div.wrap.hero-stats::before, .hero-stats[data-astro-cid-j7pv25f6]::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #F25C1F, #C84711 55%, rgba(242,92,31,0));
}
.hero-stats .stat-num,
.hero-stats .stat-num span {
  font-family: 'JetBrains Mono', monospace !important;
  color: #F25C1F !important;
  font-weight: 600;
  font-size: clamp(30px, 3.4vw, 46px) !important;
  letter-spacing: -0.02em;
}
.hero-stats .stat-label {
  color: #C9B68A !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 11.5px !important;
  font-weight: 700;
}
.hero-stats .stat-divider {
  background: rgba(244, 241, 234, 0.14) !important;
  width: 1px;
}

/* ---------- TOOL CARDS: lift + orange edge on hover ---------- */
.tool-card, [class*="tool-card"]:not([class*="title"]):not([class*="icon"]):not([class*="head"]):not([class*="blurb"]):not([class*="link"]) {
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.22s ease, border-color 0.22s ease;
}
a.tool-card:hover, .tool-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 44px -18px rgba(31, 37, 40, 0.28), inset 0 0 0 1.5px #F25C1F;
}
.tool-card:hover .tool-card-icon { color: #F25C1F; }

/* ---------- SECTION HEADS: anchored rule + breathing room ---------- */
.section-head {
  position: relative;
  padding-top: 8px;
}
.section-head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 56px;
  height: 4px;
  border-radius: 2px;
  background: linear-gradient(90deg, #F25C1F, #C84711);
}

/* ---------- MARKETPLACE (ink section): subtle vignette ---------- */
.marketplace.section--ink, .section--ink {
  background-image: radial-gradient(ellipse 90% 70% at 50% 0%,
    rgba(242, 92, 31, 0.07), rgba(242, 92, 31, 0) 60%);
}

/* ---------- PRIMARY CTA: weightier hover ---------- */
.btn-primary {
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px -10px rgba(242, 92, 31, 0.55);
}

/* ---------- Scroll-reveal: slightly stronger entrance ---------- */
[data-reveal] { transition-duration: 0.7s !important; }

@media (prefers-reduced-motion: reduce) {
  .tool-card, .btn-primary, [data-reveal] { transition: none !important; transform: none !important; }
}

/* ---------- COMMUNITY: action cards ---------- */
a.respect-card--link {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.22s ease;
}
a.respect-card--link:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px -16px rgba(31, 37, 40, 0.25), inset 0 0 0 1.5px #F25C1F;
}
.respect-card-arrow {
  display: inline-block;
  margin-top: 4px;
  font-weight: 700;
  font-size: 14px;
  color: #C84711;
}
a.respect-card--link:hover .respect-card-arrow { color: #F25C1F; }
