@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap");

:root {
  --ink: #12131a;
  --text: #3f4450;
  --muted: #747b8a;
  --paper: #ffffff;
  --section: clamp(4.5rem, 8vw, 7.5rem);
  --container: 1180px;
  --nav-height: 4.75rem;
  --trade-navy: #071b2c;
  --trade-navy-soft: #102c42;
  --trade-emerald: #0f8f5f;
  --trade-emerald-dark: #087048;
  --trade-emerald-soft: #eaf8f1;
  --trade-gold: #d9a441;
  --trade-gold-soft: #fff6df;
  --trade-mist: #f5faf8;
  --trade-line: #dcebe4;
  --shadow: 0 18px 48px rgba(7, 27, 44, 0.08);
  --shadow-lg: 0 30px 80px rgba(7, 27, 44, 0.14);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--paper);
  color: var(--text);
  font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

body.modal-open {
  overflow: hidden;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
}

button,
input,
select,
textarea {
  font: inherit;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.match-card:focus-visible {
  outline: 3px solid rgba(15, 143, 95, 0.34);
  outline-offset: 3px;
}

::selection {
  background: rgba(15, 143, 95, 0.16);
  color: var(--ink);
}

.container {
  width: min(var(--container), calc(100% - 2rem));
  margin-inline: auto;
}

h1,
h2,
h3 {
  color: var(--ink);
  font-weight: 850;
  letter-spacing: -0.045em;
}

p {
  max-width: 68ch;
}

.eyebrow,
.business-category {
  color: var(--trade-emerald);
  display: block;
  font-size: 0.73rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  margin-bottom: 0.9rem;
  text-transform: uppercase;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  border-bottom: 1px solid rgba(15, 143, 95, 0.12);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 48px rgba(7, 27, 44, 0.07);
  backdrop-filter: blur(18px);
}

.header-inner {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2rem;
  align-items: center;
  min-height: var(--nav-height);
  position: relative;
}

.logo a,
.brand-link {
  display: inline-flex;
  align-items: center;
  color: var(--trade-navy);
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.site-logo {
  width: auto;
  height: clamp(2.35rem, 5vw, 3.15rem);
  object-fit: contain;
}

.trade-lockup-logo {
  width: auto;
  height: 3.35rem;
  object-fit: contain;
}

.trade-logo-mark {
  width: 3.25rem;
  height: 3.25rem;
  display: inline-grid;
  place-items: center;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--trade-navy) 0 48%, var(--trade-emerald) 48% 72%, var(--trade-gold) 72%);
  color: #fff;
  box-shadow: 0 18px 40px rgba(7, 27, 44, 0.18);
}

.nav-trade-logo {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 10px;
  font-size: 0.68rem;
  box-shadow: 0 12px 24px rgba(15, 143, 95, 0.18);
}

.main-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 0.35rem 1.25rem;
}

.main-nav a {
  border-radius: 999px;
  color: #4d5360;
  font-size: 0.92rem;
  font-weight: 800;
  padding: 0.55rem 0.72rem;
  text-decoration: none;
  transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.main-nav a:hover,
.main-nav a.active {
  background: var(--trade-emerald-soft);
  color: var(--trade-emerald-dark);
  transform: translateY(-1px);
}

.nav-toggle {
  display: none;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid var(--trade-line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
  cursor: pointer;
  padding: 0.7rem;
}

.nav-toggle span {
  display: block;
  width: 1.15rem;
  height: 2px;
  border-radius: 999px;
  background: var(--trade-navy);
  transition: transform 0.22s ease, opacity 0.22s ease;
}

.nav-toggle span + span {
  margin-top: 0.27rem;
}

.nav-toggle.is-open span:nth-child(1) {
  transform: translateY(0.29rem) rotate(45deg);
}

.nav-toggle.is-open span:nth-child(2) {
  opacity: 0;
}

.nav-toggle.is-open span:nth-child(3) {
  transform: translateY(-0.29rem) rotate(-45deg);
}

.btn-primary,
.btn-secondary,
.contact-form button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  border-radius: 999px;
  font-weight: 900;
  text-decoration: none;
  transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
}

.btn-primary,
.contact-form button {
  border: 0;
  background: linear-gradient(135deg, var(--trade-emerald), var(--trade-emerald-dark));
  color: #fff;
  padding: 0 1.35rem;
  box-shadow: 0 18px 42px rgba(15, 143, 95, 0.28);
}

.btn-primary:hover,
.contact-form button:hover {
  background: linear-gradient(135deg, var(--trade-emerald-dark), var(--trade-navy));
  transform: translateY(-2px);
}

.contact-form button:disabled,
.match-actions button:disabled {
  cursor: not-allowed;
  filter: grayscale(1);
  opacity: 0.58;
}

.btn-secondary {
  border: 1px solid rgba(217, 164, 65, 0.42);
  background: #fff;
  color: var(--trade-navy);
  padding: 0 1.35rem;
}

.btn-secondary:hover {
  border-color: var(--trade-gold);
  color: var(--trade-emerald-dark);
  box-shadow: 0 14px 32px rgba(217, 164, 65, 0.16);
  transform: translateY(-2px);
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-top: 2rem;
}

.hero-support {
  color: #526473;
  font-size: 0.94rem;
  font-weight: 750;
  margin-top: 1rem;
}

.section,
.logo-marquee-section {
  padding: var(--section) 0;
}

.section-light {
  background: radial-gradient(circle at 12% 8%, rgba(217, 164, 65, 0.12), transparent 20rem), linear-gradient(180deg, #fbfffd, #f4faf7);
}

.section-heading,
.split-section {
  margin-bottom: clamp(2rem, 5vw, 3.75rem);
}

.section-heading {
  max-width: 760px;
}

.section-heading h2,
.split-section h2,
.trade-feedback-grid h2,
.logo-marquee-heading h2,
.home-cta h2 {
  font-size: clamp(2rem, 5vw, 4.15rem);
  line-height: 1.02;
}

.split-section,
.trade-feedback-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.8fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: center;
}

.split-section {
  align-items: end;
}

.trade-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(4rem, 8vw, 7rem) 0;
  background: radial-gradient(circle at 78% 18%, rgba(15, 143, 95, 0.16), transparent 22rem), radial-gradient(circle at 12% 22%, rgba(217, 164, 65, 0.18), transparent 18rem), linear-gradient(180deg, #ffffff 0%, #f8fcfa 100%);
}

.trade-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(7, 27, 44, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(7, 27, 44, 0.035) 1px, transparent 1px);
  background-size: 4rem 4rem;
  mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
  pointer-events: none;
}

.trade-hero .container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.86fr);
  gap: clamp(2.5rem, 6vw, 5.5rem);
  align-items: center;
}

.trade-brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1.3rem;
  color: var(--trade-navy);
  font-size: 0.86rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.trade-hero h1 {
  max-width: 820px;
  color: var(--trade-navy);
  font-size: clamp(3rem, 7vw, 6.2rem);
  line-height: 0.98;
  margin-bottom: 1.2rem;
}

.trade-hero p:not(.eyebrow) {
  color: #3e5160;
  font-size: clamp(1rem, 1.6vw, 1.18rem);
}

.trade-hero-visual {
  display: grid;
  align-content: center;
  gap: 1rem;
  min-height: 28rem;
}

.trade-stat-card {
  border: 1px solid rgba(15, 143, 95, 0.16);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--shadow);
  padding: 1.35rem;
}

.trade-stat-card strong {
  display: block;
  color: var(--trade-navy);
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: 1;
}

.trade-stat-card span {
  color: #526473;
  font-weight: 850;
}

.trade-map-card {
  position: relative;
  min-height: clamp(26rem, 46vw, 34rem);
  overflow: hidden;
  border: 1px solid rgba(15, 143, 95, 0.16);
  border-radius: 24px;
  background: radial-gradient(circle at 30% 42%, rgba(15, 143, 95, 0.22), transparent 2.4rem), radial-gradient(circle at 68% 28%, rgba(217, 164, 65, 0.24), transparent 2.8rem), radial-gradient(circle at 72% 70%, rgba(7, 27, 44, 0.14), transparent 3rem), linear-gradient(145deg, #ffffff, #edf7f2);
  box-shadow: 0 34px 90px rgba(7, 27, 44, 0.15);
}

.trade-map-card::before {
  content: "";
  position: absolute;
  inset: 2rem;
  border-radius: 22px;
  background-image: radial-gradient(rgba(7, 27, 44, 0.18) 1px, transparent 1px);
  background-size: 1.05rem 1.05rem;
  opacity: 0.5;
}

.trade-map-glow {
  position: absolute;
  inset: 18% 10% auto;
  height: 46%;
  border: 1px solid rgba(15, 143, 95, 0.18);
  border-radius: 50%;
  transform: rotate(-12deg);
}

.trade-node {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 2.35rem;
  border: 1px solid rgba(7, 27, 44, 0.08);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--trade-navy);
  font-size: 0.82rem;
  font-weight: 900;
  padding: 0 0.95rem;
  box-shadow: 0 14px 32px rgba(7, 27, 44, 0.12);
}

.node-zambia { left: 18%; top: 48%; }
.node-usa { right: 16%; top: 24%; }
.node-market { right: 12%; bottom: 26%; }

.trade-route {
  position: absolute;
  z-index: 1;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--trade-gold), var(--trade-emerald), transparent);
  transform-origin: left center;
  animation: trade-route-pulse 3.8s ease-in-out infinite;
}

.route-one {
  left: 29%;
  top: 50%;
  width: 45%;
  transform: rotate(-23deg);
}

.route-two {
  left: 31%;
  top: 55%;
  width: 48%;
  transform: rotate(15deg);
  animation-delay: 0.7s;
}

.trade-visual-stat {
  position: absolute;
  left: 1.35rem;
  right: 1.35rem;
  bottom: 1.35rem;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 18px;
  background: rgba(7, 27, 44, 0.9);
  color: #fff;
  padding: 1.15rem;
  backdrop-filter: blur(16px);
}

.trade-visual-stat strong {
  color: var(--trade-gold);
  font-size: clamp(2.4rem, 5vw, 4rem);
  line-height: 0.9;
}

.trade-visual-stat span {
  max-width: 13rem;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.9rem;
  font-weight: 800;
  text-align: right;
}

@keyframes trade-route-pulse {
  0%, 100% { opacity: 0.48; filter: blur(0); }
  50% { opacity: 1; filter: blur(0.4px); }
}

.trade-metrics-grid,
.business-grid,
.partner-grid,
.champion-grid,
.saved-match-grid {
  display: grid;
  gap: 1rem;
}

.trade-metrics-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.business-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.stat-card,
.business-card,
.contact-form,
.trade-review-card,
.matching-mini-card,
.partner-card,
.champion-card,
.saved-match-card,
.match-card-shell {
  border: 1px solid var(--trade-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--shadow);
}

.stat-card,
.contact-form,
.trade-review-card {
  padding: clamp(1.4rem, 3vw, 2rem);
}

.trade-stat {
  position: relative;
  overflow: hidden;
}

.trade-stat::after {
  content: "";
  position: absolute;
  inset: auto 1rem 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, var(--trade-emerald), var(--trade-gold));
}

.trade-stat strong {
  display: block;
  color: var(--trade-navy);
  font-size: clamp(2.2rem, 5vw, 4.1rem);
  line-height: 1;
  margin-bottom: 0.85rem;
}

.trade-stat span {
  color: #526473;
  font-weight: 850;
}

.trade-readiness-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.9fr);
  gap: 1.5rem 3rem;
  align-items: center;
  margin-top: 1.25rem;
  border: 1px solid rgba(15, 143, 95, 0.14);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(234, 248, 241, 0.92), rgba(255, 246, 223, 0.5)), #fff;
  padding: clamp(1.35rem, 3vw, 2rem);
}

.trade-readiness-panel h2 {
  color: var(--trade-navy);
  font-size: clamp(1.55rem, 3vw, 2.4rem);
  line-height: 1.05;
}

.trade-readiness-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.trade-readiness-list span {
  border: 1px solid rgba(15, 143, 95, 0.18);
  border-radius: 999px;
  background: #fff;
  color: var(--trade-emerald-dark);
  font-size: 0.84rem;
  font-weight: 900;
  padding: 0.55rem 0.85rem;
}

.logo-marquee-section {
  overflow: hidden;
  background: linear-gradient(180deg, #fff, var(--trade-mist));
}

.logo-marquee-heading {
  max-width: 760px;
  margin-bottom: 2rem;
}

.logo-marquee {
  display: flex;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}

.logo-track {
  display: flex;
  gap: 1rem;
  width: max-content;
  animation: logo-scroll 28s linear infinite;
}

.logo-marquee:hover .logo-track {
  animation-play-state: paused;
}

.logo-pill {
  min-width: 13rem;
  min-height: 5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--trade-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: var(--shadow);
  color: var(--trade-navy);
  font-weight: 900;
  padding: 0 1.25rem;
  white-space: nowrap;
}

@keyframes logo-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 0.5rem)); }
}

.business-card {
  overflow: hidden;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.business-card:hover {
  border-color: rgba(15, 143, 95, 0.34);
  box-shadow: var(--shadow-lg);
  transform: translateY(-7px);
}

.business-media {
  position: relative;
  background: var(--trade-emerald-soft);
}

.business-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(7, 27, 44, 0.36));
}

.business-media > img:not(.business-logo) {
  width: 100%;
  height: 14rem;
  object-fit: cover;
}

.business-logo {
  position: absolute;
  left: 1rem;
  bottom: -1.5rem;
  z-index: 1;
  width: 4.5rem;
  height: 4.5rem;
  border: 3px solid #fff;
  border-radius: 14px;
  background: #fff;
  object-fit: contain;
  padding: 0.45rem;
  box-shadow: 0 16px 36px rgba(7, 27, 44, 0.18);
}

.business-body {
  padding: 1.4rem;
}

.business-card h3 {
  font-size: clamp(1.25rem, 2.4vw, 1.65rem);
  line-height: 1.12;
  margin-bottom: 0.75rem;
}

.business-founder {
  color: #526473;
  font-size: 0.88rem;
  font-weight: 750;
  margin: -0.35rem 0 1rem;
}

.business-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: -0.25rem 0 1rem;
}

.status-pill {
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 900;
  line-height: 1;
  padding: 0.48rem 0.62rem;
}

.status-pill.verified {
  background: var(--trade-navy);
  color: #fff;
}

.status-pill.export {
  background: var(--trade-emerald-soft);
  color: var(--trade-emerald-dark);
}

.status-pill.ownership {
  background: var(--trade-gold-soft);
  color: #8b6418;
}

.status-pill.sector {
  background: #eef4f8;
  color: var(--trade-navy-soft);
}

.business-tags,
.business-looking,
.business-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1rem;
}

.business-looking {
  display: grid;
  gap: 0.2rem;
  border-top: 1px solid var(--trade-line);
  color: var(--trade-navy);
  padding-top: 0.95rem;
}

.business-looking strong {
  font-size: 0.8rem;
  font-weight: 900;
}

.business-looking span {
  color: #526473;
  font-size: 0.9rem;
  font-weight: 750;
}

.business-tags span,
.business-links a,
.link-unavailable {
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 800;
  padding: 0.45rem 0.75rem;
}

.business-tags span {
  background: var(--trade-emerald-soft);
  color: var(--trade-emerald-dark);
}

.business-links a {
  border: 1px solid var(--trade-line);
  color: var(--trade-navy);
  text-decoration: none;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.business-links a:hover {
  border-color: var(--trade-emerald);
  background: var(--trade-emerald);
  color: #fff;
  transform: translateY(-2px);
}

.link-unavailable {
  border: 1px solid var(--trade-line);
  color: var(--muted);
}

.sme-card-hidden {
  display: none;
}

.sme-card-hidden.visible {
  display: block;
  animation: sme-reveal 0.5s ease-out forwards;
}

@keyframes sme-reveal {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

.load-more-container {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--trade-line);
}

.btn-load-more {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  border: 1px solid var(--trade-emerald);
  border-radius: 12px;
  background: transparent;
  color: var(--trade-emerald);
  cursor: pointer;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 800;
  padding: 1rem 1.8rem;
  transition: all 0.22s ease;
}

.btn-load-more:hover {
  background: var(--trade-emerald);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(15, 143, 95, 0.28);
}

.contact-form {
  display: grid;
  gap: 1rem;
}

.contact-form label {
  display: grid;
  gap: 0.45rem;
  color: var(--ink);
  font-weight: 800;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
  width: 100%;
  border: 1px solid var(--trade-line);
  border-radius: 10px;
  color: var(--ink);
  padding: 0.85rem 0.9rem;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: var(--trade-emerald);
  box-shadow: 0 0 0 4px rgba(15, 143, 95, 0.12);
  outline: none;
}

.form-status {
  min-height: 1.35rem;
  color: #526473;
  font-size: 0.94rem;
  font-weight: 750;
}

.form-status[data-status="success"] {
  color: var(--trade-emerald-dark);
}

.form-status[data-status="error"] {
  color: #9f2f2f;
}

.form-honey {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.trade-review-list {
  display: grid;
  gap: 1rem;
  margin-top: 1.75rem;
}

.trade-review-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
}

.reviewer-avatar {
  width: 3rem;
  height: 3rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--trade-navy), var(--trade-emerald));
  color: #fff;
  font-size: 0.78rem;
  font-weight: 900;
}

.trade-review-card p {
  color: var(--trade-navy);
  font-weight: 750;
}

.trade-review-card cite {
  display: grid;
  gap: 0.1rem;
  margin-top: 0.95rem;
  color: #5a6d7a;
  font-style: normal;
}

.trade-review-card cite strong {
  color: var(--trade-navy);
}

.trade-review-card cite span {
  color: var(--trade-emerald-dark);
  font-size: 0.82rem;
  font-weight: 850;
}

.matching-hero-panel {
  display: grid;
  gap: 1rem;
}

.matching-mini-card {
  padding: 1.25rem;
}

.matching-mini-card span {
  color: var(--trade-emerald);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.matching-mini-card strong {
  display: block;
  color: var(--trade-navy);
  font-size: 1.2rem;
  line-height: 1.2;
  margin-top: 0.35rem;
}

.matching-section {
  background: linear-gradient(180deg, #fff, var(--trade-mist));
}

.discovery-layout {
  display: grid;
  grid-template-columns: minmax(18rem, 0.72fr) minmax(0, 1.28fr);
  gap: clamp(1.75rem, 5vw, 4rem);
  align-items: center;
}

.discovery-copy h2 {
  color: var(--trade-navy);
  font-size: clamp(2rem, 5vw, 4.15rem);
  line-height: 1.02;
  margin-bottom: 1rem;
}

.match-card-shell {
  padding: clamp(1.25rem, 3vw, 2rem);
}

.discovery-shell {
  overflow: hidden;
}

.match-stack {
  position: relative;
  min-height: clamp(36rem, 58vw, 45rem);
  perspective: 1200px;
}

.match-card {
  position: relative;
  min-height: 29rem;
  display: grid;
  align-content: start;
  gap: 1rem;
  border: 1px solid rgba(15, 143, 95, 0.14);
  border-radius: 20px;
  background: radial-gradient(circle at 88% 10%, rgba(217, 164, 65, 0.18), transparent 16rem), linear-gradient(180deg, #fff, #f8fcfa);
  padding: clamp(1.4rem, 4vw, 2.4rem);
  touch-action: pan-y;
}

.match-stack .match-card {
  position: absolute;
  inset: 0;
  overflow: hidden;
  padding: 0;
  box-shadow: 0 28px 72px rgba(7, 27, 44, 0.14);
  will-change: transform, opacity;
}

.match-card-active {
  z-index: 2;
  cursor: grab;
  transition: transform 0.32s cubic-bezier(0.2, 0.85, 0.24, 1), opacity 0.22s ease, box-shadow 0.22s ease;
}

.match-card-active.is-dragging {
  cursor: grabbing;
  transition: none;
}

.match-card-next {
  z-index: 1;
  opacity: 0.78;
  transform: translateY(1.15rem) scale(0.955);
  pointer-events: none;
}

.match-stack::before,
.match-stack::after {
  position: absolute;
  top: 1.1rem;
  z-index: 4;
  border-radius: 999px;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  opacity: 0;
  padding: 0.55rem 0.8rem;
  text-transform: uppercase;
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.match-stack::before {
  content: "Next";
  left: 1.1rem;
  background: var(--trade-navy);
}

.match-stack::after {
  content: "Interested";
  right: 1.1rem;
  background: var(--trade-emerald);
}

.match-stack[data-intent="skip"]::before,
.match-stack[data-intent="trade"]::after {
  opacity: 1;
  transform: translateY(-0.2rem);
}

.match-media {
  position: relative;
  min-height: 17rem;
  background: var(--trade-emerald-soft);
}

.match-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(7, 27, 44, 0.38));
}

.match-media > img:not(.enterprise-logo-img) {
  width: 100%;
  height: 18rem;
  object-fit: cover;
}

.match-media .enterprise-logo-img {
  position: absolute;
  left: 1.3rem;
  bottom: -2rem;
  z-index: 1;
  width: 5rem;
  height: 5rem;
  border: 3px solid #fff;
}

.match-body {
  display: grid;
  gap: 0.9rem;
  padding: 3.3rem clamp(1.35rem, 3vw, 2rem) clamp(1.35rem, 3vw, 2rem);
}

.match-card.swipe-left {
  animation: swipe-left 0.26s ease;
}

.match-card.swipe-right {
  animation: swipe-right 0.26s ease;
}

@keyframes swipe-left {
  0% { transform: translateX(0) rotate(0); opacity: 1; }
  50% { transform: translateX(-1.5rem) rotate(-1deg); opacity: 0.72; }
  100% { transform: translateX(0) rotate(0); opacity: 1; }
}

@keyframes swipe-right {
  0% { transform: translateX(0) rotate(0); opacity: 1; }
  50% { transform: translateX(1.5rem) rotate(1deg); opacity: 0.72; }
  100% { transform: translateX(0) rotate(0); opacity: 1; }
}

.match-card.throw-left {
  animation: throw-left 0.32s cubic-bezier(0.3, 0.7, 0.3, 1) forwards;
}

.match-card.throw-right {
  animation: throw-right 0.32s cubic-bezier(0.3, 0.7, 0.3, 1) forwards;
}

@keyframes throw-left {
  to { transform: translateX(-120vw) rotate(-15deg); opacity: 0; }
}

@keyframes throw-right {
  to { transform: translateX(120vw) rotate(15deg); opacity: 0; }
}

.match-card h3,
.empty-match h3,
.partner-card h3,
.champion-card h3,
.trade-modal-card h2 {
  color: var(--trade-navy);
}

.match-card h3 {
  font-size: clamp(2rem, 5vw, 3.8rem);
  line-height: 0.98;
}

.match-logo-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}

.enterprise-logo-img {
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 16px;
  background: #fff;
  object-fit: contain;
  padding: 0.35rem;
  box-shadow: 0 18px 40px rgba(7, 27, 44, 0.18);
}

.match-looking {
  display: grid;
  gap: 0.3rem;
  border-top: 1px solid var(--trade-line);
  padding-top: 1rem;
}

.match-looking strong {
  color: var(--trade-navy);
}

.match-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  justify-content: flex-end;
  margin-top: 1rem;
}

.saved-match-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.saved-match-card {
  overflow: hidden;
}

.saved-match-image {
  width: 100%;
  height: 12rem;
  object-fit: cover;
}

.saved-match-body {
  padding: 1.2rem;
}

.saved-match-body h3 {
  color: var(--trade-navy);
  font-size: 1.25rem;
  line-height: 1.15;
  margin-bottom: 0.55rem;
}

.saved-match-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1rem;
}

.saved-match-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.7rem;
  border: 1px solid rgba(217, 164, 65, 0.42);
  border-radius: 999px;
  color: var(--trade-navy);
  font-size: 0.85rem;
  font-weight: 900;
  padding: 0 1rem;
  text-decoration: none;
}

.empty-match {
  display: grid;
  place-items: center;
  gap: 0.85rem;
  min-height: 22rem;
  text-align: center;
}

.trade-modal[hidden] {
  display: none;
}

.trade-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 1rem;
}

.trade-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(7, 27, 44, 0.58);
  backdrop-filter: blur(10px);
}

.trade-modal-card {
  position: relative;
  z-index: 1;
  width: min(34rem, 100%);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 34px 90px rgba(7, 27, 44, 0.28);
  padding: clamp(1.35rem, 4vw, 2rem);
}

.trade-modal-card h2 {
  font-size: clamp(2rem, 7vw, 3.4rem);
  line-height: 1;
  margin-bottom: 0.7rem;
}

.modal-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 2.4rem;
  height: 2.4rem;
  border: 1px solid var(--trade-line);
  border-radius: 50%;
  background: #fff;
  color: var(--trade-navy);
  cursor: pointer;
  font-size: 1.4rem;
  line-height: 1;
}

.modal-business {
  display: grid;
  grid-template-columns: 9rem 1fr;
  gap: 1rem;
  align-items: center;
  border: 1px solid var(--trade-line);
  border-radius: 16px;
  background: var(--trade-mist);
  margin: 1.3rem 0;
  padding: 1rem;
}

.modal-business-image {
  width: 100%;
  height: 7rem;
  border-radius: 12px;
  object-fit: cover;
}

.modal-business h3 {
  color: var(--trade-navy);
  font-size: 1.2rem;
  margin-bottom: 0.1rem;
}

.modal-business a,
.modal-business .link-unavailable {
  display: block;
  width: fit-content;
  margin-top: 0.25rem;
}

.modal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.contact-method-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.contact-method-actions:empty {
  display: none;
}

.contact-method-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  border: 1px solid rgba(217, 164, 65, 0.42);
  border-radius: 999px;
  background: #fff;
  color: var(--trade-navy);
  font-weight: 900;
  padding: 0 1.35rem;
  text-decoration: none;
  transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
}

.contact-method-actions a:hover {
  border-color: var(--trade-emerald);
  background: var(--trade-emerald);
  color: #fff;
  transform: translateY(-2px);
}

.trade-confetti {
  position: fixed;
  inset: 0;
  z-index: 1999;
  pointer-events: none;
  overflow: hidden;
}

.trade-confetti span {
  position: absolute;
  left: 50%;
  top: 52%;
  width: 0.9rem;
  height: 1.15rem;
  border-radius: 999px 999px 85% 85%;
  background: var(--hue);
  opacity: 0;
  transform: translate(-50%, -50%);
}

.trade-confetti span::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  width: 1px;
  height: 1.4rem;
  background: rgba(7, 27, 44, 0.22);
}

.trade-confetti.is-active span {
  animation: trade-confetti-pop 0.95s cubic-bezier(0.17, 0.84, 0.32, 1) var(--delay) forwards;
}

@keyframes trade-confetti-pop {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(0.4); }
  18% { opacity: 1; }
  100% { opacity: 0; transform: translate(calc(-50% + var(--x)), -22rem) rotate(220deg) scale(1); }
}

.partner-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.partner-card {
  padding: 1.2rem;
}

.partner-card img {
  width: 100%;
  height: 8rem;
  border: 1px solid var(--trade-line);
  border-radius: 14px;
  background: var(--trade-mist);
  object-fit: contain;
  padding: 0.7rem;
  margin-bottom: 1.1rem;
}

.partner-card h3 {
  font-size: 1.25rem;
  line-height: 1.15;
  margin-bottom: 0.6rem;
}

.champion-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.champion-card {
  display: grid;
  grid-template-columns: 10rem 1fr;
  gap: 1.2rem;
  align-items: center;
  padding: 1rem;
}

.champion-photo {
  overflow: hidden;
  border-radius: 16px;
}

.champion-photo img {
  width: 100%;
  height: 11rem;
  object-fit: cover;
}

.home-cta {
  padding: clamp(3.5rem, 7vw, 5rem) 0;
  background: radial-gradient(circle at 84% 0%, rgba(217, 164, 65, 0.18), transparent 22rem), var(--trade-emerald-soft);
}

.home-cta-inner {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  align-items: center;
}

.site-footer {
  background: radial-gradient(circle at 18% 0%, rgba(15, 143, 95, 0.24), transparent 24rem), linear-gradient(135deg, var(--trade-navy), #06131f);
  color: #fff;
  padding: 2.5rem 0;
}

.footer-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
}

.footer-copy {
  display: grid;
  gap: 0.25rem;
}

.site-footer p {
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.92rem;
}

.footer-copy p + p {
  color: rgba(255, 255, 255, 0.66);
}

.footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 1rem;
  justify-content: flex-end;
}

.footer-links a {
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.9rem;
  font-weight: 800;
  padding: 0.45rem 0.65rem;
  text-decoration: none;
  transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.footer-links a:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  transform: translateY(-1px);
}

.reveal-on-scroll {
  opacity: 0;
  transform: translateY(1.75rem);
  transition: opacity 0.72s ease, transform 0.72s ease;
}

.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 980px) {
  .header-inner {
    grid-template-columns: 1fr auto;
    gap: 1rem;
  }

  .nav-toggle {
    display: grid;
    grid-column: 2;
    grid-row: 1;
    place-items: center;
  }

  .main-nav {
    position: absolute;
    top: calc(100% + 0.75rem);
    left: 0;
    right: 0;
    display: grid;
    justify-content: stretch;
    gap: 0.25rem;
    border: 1px solid rgba(15, 143, 95, 0.14);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--shadow-lg);
    padding: 0.75rem;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-0.5rem) scale(0.98);
    transform-origin: top right;
    transition: opacity 0.2s ease, transform 0.2s ease;
  }

  .main-nav.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

  .main-nav a {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 0.85rem 0.9rem;
  }

  .trade-hero .container,
  .split-section,
  .trade-feedback-grid,
  .trade-metrics-grid,
  .trade-readiness-panel,
  .business-grid,
  .discovery-layout,
  .partner-grid,
  .champion-grid,
  .saved-match-grid {
    grid-template-columns: 1fr;
  }

  .trade-hero-visual {
    min-height: auto;
  }

  .trade-map-card {
    min-height: 25rem;
  }
}

@media (max-width: 680px) {
  :root {
    --section: 4rem;
  }

  .container {
    width: min(100% - 1.25rem, var(--container));
  }

  .logo a {
    gap: 0.65rem;
    font-size: 0.92rem;
  }

  .trade-brand-lockup {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.65rem;
  }

  .trade-hero h1 {
    font-size: clamp(2.55rem, 13vw, 4rem);
  }

  .trade-map-card {
    min-height: 22rem;
    border-radius: 18px;
  }

  .trade-node {
    font-size: 0.72rem;
    min-height: 2rem;
    padding: 0 0.7rem;
  }

  .trade-visual-stat,
  .home-cta-inner,
  .footer-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-links {
    justify-content: flex-start;
  }

  .trade-visual-stat span {
    text-align: left;
  }

  .hero-actions,
  .btn-primary,
  .btn-secondary,
  .contact-form button,
  .match-actions,
  .match-actions .btn-primary,
  .match-actions .btn-secondary,
  .contact-method-actions,
  .contact-method-actions a,
  .modal-actions .btn-primary,
  .modal-actions .btn-secondary {
    width: 100%;
  }

  .match-stack {
    min-height: 40rem;
  }

  .section-heading h2,
  .split-section h2,
  .trade-feedback-grid h2,
  .logo-marquee-heading h2,
  .home-cta h2 {
    font-size: clamp(2rem, 10vw, 3rem);
  }

  .trade-review-card,
  .modal-business,
  .champion-card {
    grid-template-columns: 1fr;
  }

  .champion-photo img {
    height: 16rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}

/* TradeUp editorial homepage */
.editorial-home { --paper:#f5f3ed; --charcoal:#101914; --moss:#173e31; --sage:#dce8dd; --lime:#c6e86e; background:var(--paper); color:var(--charcoal); }
.editorial-home .site-header { position:sticky; top:0; z-index:1000; background:rgba(245,243,237,.88); border-bottom:1px solid rgba(16,25,20,.08); backdrop-filter:blur(18px); }
.editorial-home .site-logo { width:auto; height:3rem; object-fit:contain; }
.editorial-home .main-nav a { color:#24372e; }
.editorial-home .main-nav a.active,.editorial-home .main-nav a:hover { color:var(--trade-emerald-dark); }
.editorial-hero { min-height:calc(100vh - 5rem); display:grid; align-items:center; padding:clamp(3rem,7vw,7rem) 0; overflow:hidden; }
.editorial-hero-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:clamp(2rem,6vw,7rem); align-items:center; }
.editorial-hero-copy { max-width:42rem; animation:editorial-in .75s ease both; }
.editorial-home .eyebrow { color:var(--trade-emerald-dark); letter-spacing:.16em; font-size:.75rem; }
.editorial-hero h1,.editorial-heading h2,.featured-top h2,.opportunity-card h2,.impact-heading h2,.contact-editorial h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.055em; }
.editorial-hero h1 { font-size:clamp(3.35rem,6.6vw,7.1rem); line-height:.9; margin:.8rem 0 1.7rem; }
.editorial-hero h1 em { color:var(--trade-emerald); font-weight:400; }
.hero-deck { max-width:38rem; color:#4a5951; font-size:clamp(1.05rem,1.7vw,1.35rem); line-height:1.65; }
.hero-editorial-image { position:relative; min-height:clamp(31rem,66vw,48rem); overflow:hidden; border-radius:1.6rem; background:#d9ddd7; box-shadow:0 38px 90px rgba(18,42,30,.16); animation:editorial-image-in .9s .12s ease both; }
.hero-editorial-image>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:58% center; }
.hero-editorial-image:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(7,19,13,.72)); }
.hero-editorial-image figcaption { position:absolute; z-index:2; left:clamp(1.4rem,4vw,2.5rem); right:2rem; bottom:2rem; color:#fff; display:grid; gap:.35rem; }
.hero-editorial-image figcaption span { opacity:.75; text-transform:uppercase; letter-spacing:.14em; font-size:.72rem; font-weight:800; }
.hero-editorial-image figcaption strong { font:400 clamp(1.6rem,3vw,2.5rem)/1.05 Georgia,serif; }
@keyframes editorial-in { from{opacity:0;transform:translateY(25px)} }
@keyframes editorial-image-in { from{opacity:0;transform:translateX(25px) scale(.98)} }
.editorial-home .section { padding:clamp(5.5rem,11vw,10rem) 0; }
.editorial-heading { display:grid; grid-template-columns:minmax(10rem,.4fr) minmax(18rem,1fr) minmax(17rem,.6fr); gap:clamp(1rem,4vw,4rem); align-items:start; margin-bottom:clamp(3rem,7vw,6rem); }
.editorial-heading h2,.featured-top h2 { color:var(--charcoal); font-size:clamp(3rem,6vw,6rem); line-height:.92; }
.editorial-heading>p:last-child { color:#5b6961; font-size:1.08rem; line-height:1.7; padding-top:.5rem; }
.editorial-heading.compact { display:block; max-width:50rem; }
.editorial-heading.compact h2 { margin:.8rem 0 1.4rem; }
.editorial-heading.compact>p:last-child { max-width:38rem; }
.pillar-layout { display:grid; grid-template-columns:1.05fr .85fr 1fr; gap:clamp(1.25rem,4vw,4rem); align-items:start; }
.pillar:nth-child(2) { margin-top:7rem; }.pillar:nth-child(3){margin-top:2rem}
.pillar-image { overflow:hidden; border-radius:1.1rem; background:#d7dfd8; }
.pillar-build .pillar-image{aspect-ratio:4/5}.pillar-connect .pillar-image{aspect-ratio:1/1.12}.pillar-grow .pillar-image{aspect-ratio:5/6}
.pillar-image img { width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.2,1); }.pillar:hover img{transform:scale(1.035)}
.pillar-number { border-top:1px solid rgba(16,25,20,.2); margin-top:1.5rem; padding-top:1rem; color:#6a756f; font-size:.75rem; }
.pillar h3 { font:400 clamp(2.3rem,4vw,4rem)/1 Georgia,serif; text-transform:uppercase; letter-spacing:-.04em; margin:.3rem 0 .8rem; }
.pillar>p:last-child { max-width:20rem; color:#59675f; }
.action-section { background:var(--moss); color:#fff; }.action-section .eyebrow{color:var(--lime)}.action-section .editorial-heading h2{color:#fff}.action-section .editorial-heading>p:last-child{color:rgba(255,255,255,.68)}
.action-mosaic { display:grid; grid-template-columns:1.3fr .7fr .8fr; grid-template-rows:18rem 18rem; gap:1rem; }
.gallery-tile { position:relative; overflow:hidden; border:0; border-radius:1rem; padding:0; cursor:zoom-in; background:#294c3f; text-align:left; }.gallery-tile.tile-large{grid-row:span 2}.gallery-tile.tile-tall{grid-row:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.gallery-tile:hover img{transform:scale(1.035)}
.gallery-tile:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.gallery-tile span{position:absolute;z-index:1;left:1.2rem;bottom:1.1rem;color:#fff;font-weight:750}
.photo-slot { display:flex; flex-direction:column; justify-content:flex-end; gap:.35rem; min-height:12rem; padding:1.5rem; border:1px solid rgba(255,255,255,.2); border-radius:1rem; background:radial-gradient(circle at 80% 10%,rgba(198,232,110,.18),transparent 45%),linear-gradient(135deg,#284b3d,#0e2920); color:#fff; }.photo-slot span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;opacity:.7}.photo-slot strong{font:400 1.5rem/1.1 Georgia,serif}.photo-slot small{opacity:.55}.gallery-placeholder{min-height:0}
.featured-section { background:#e6e9df; }.featured-top { display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:end; margin-bottom:4rem; }.featured-top h2{margin-top:.8rem}
.featured-tabs { display:flex; flex-wrap:wrap; gap:.4rem; }.featured-tabs button{border:1px solid rgba(16,25,20,.18);border-radius:999px;background:transparent;padding:.65rem 1rem;color:#39483f;cursor:pointer;font:inherit;font-weight:750}.featured-tabs button.is-active{background:var(--charcoal);color:#fff}
.featured-panel { display:grid; grid-template-columns:1.1fr .9fr; min-height:32rem; overflow:hidden; border-radius:1.3rem; background:#fff; box-shadow:0 26px 70px rgba(19,38,28,.09); }.featured-panel img{width:100%;height:100%;min-height:32rem;object-fit:cover}.featured-panel-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,5rem)}.featured-kicker{color:var(--trade-emerald-dark);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:850}.featured-panel h3{font:400 clamp(2.5rem,5vw,5rem)/.95 Georgia,serif;letter-spacing:-.045em;margin:1rem 0}.featured-panel p{color:#5b6961;font-size:1.05rem;line-height:1.65}.featured-panel a{margin-top:2rem;color:var(--charcoal);font-weight:850;text-decoration:none}
.featured-panel img.featured-contain{object-fit:contain;padding:3rem;background:#f5f3ed}
.section-row { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:3rem; }.section-row .editorial-heading{margin-bottom:0}.text-link{color:var(--trade-emerald-dark);font-weight:850;text-decoration:none;white-space:nowrap}.curated-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.curated-grid .business-card:nth-child(n+7){display:none}
.editorial-home .business-card { border:0; border-radius:1rem; background:#fff; box-shadow:0 12px 45px rgba(16,37,25,.07); }.editorial-home .business-card:hover{border-color:transparent;box-shadow:0 24px 60px rgba(16,37,25,.13)}
.directory-section{background:#eeece5}.directory-section .business-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.opportunity-section { background:var(--paper); }.opportunity-card{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,8vw,8rem);padding:clamp(2.5rem,7vw,6rem);border-radius:1.5rem;background:#102e24;color:#fff}.opportunity-card .eyebrow{color:var(--lime)}.opportunity-card h2{color:#fff;font-size:clamp(3rem,6vw,6rem);line-height:.92;margin:1rem 0 1.5rem}.opportunity-card>div>p:not(.eyebrow){max-width:37rem;color:rgba(255,255,255,.68);font-size:1.1rem;line-height:1.65}.btn-light{display:inline-flex;margin-top:2rem;border-radius:999px;background:#fff;color:#173e31;padding:1rem 1.35rem;font-weight:850;text-decoration:none}.opportunity-preview{align-self:center;padding:2rem;border:1px solid rgba(255,255,255,.18);border-radius:1rem;background:rgba(255,255,255,.06)}.opportunity-preview>p{text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;color:var(--lime)}.opportunity-preview>strong{display:block;font:400 clamp(1.8rem,3vw,3rem)/1.1 Georgia,serif;margin:1rem 0 2rem}.opportunity-tags{display:flex;flex-wrap:wrap;gap:.5rem}.opportunity-tags span{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.5rem .7rem;font-size:.8rem}.opportunity-preview>a{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.18);margin-top:2rem;padding-top:1.2rem;color:#fff;text-decoration:none;font-weight:800}
.moments-section{overflow:hidden}.moments-section h2{font:400 clamp(2.5rem,5vw,5rem)/1 Georgia,serif;margin-top:.6rem}.scroll-note{color:#66736c}.moment-strip{display:flex;gap:1rem;overflow-x:auto;padding:0 max(1rem,calc((100vw - var(--container))/2)) 1.2rem;scroll-snap-type:x mandatory}.moment-strip button,.moment-placeholder{flex:0 0 clamp(17rem,30vw,27rem);height:25rem;scroll-snap-align:start;border:0;border-radius:1rem;overflow:hidden;position:relative;padding:0;background:#dfe4dd;cursor:zoom-in}.moment-strip button img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.moment-strip button:hover img{transform:scale(1.03)}.moment-strip button span{position:absolute;left:1rem;bottom:1rem;background:#fff;border-radius:999px;padding:.5rem .8rem;font-weight:750}.moment-placeholder{padding:1.5rem;justify-content:flex-end;cursor:default}
.partner-story{background:#fff}.partner-editorial{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,6vw,6rem);align-items:stretch}.partner-copy{padding:2rem 0}.partner-copy img{width:11rem;height:6rem;object-fit:contain;object-position:left}.partner-copy h3{font:400 clamp(2rem,4vw,3.8rem)/1 Georgia,serif;margin:2rem 0 1rem}.partner-copy p{color:#5b6961;line-height:1.7;margin-bottom:2rem}.partner-collab{min-height:30rem}
.impact-section{background:#d7e2d8}.impact-section .container{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:end}.impact-heading h2{font-size:clamp(3.5rem,7vw,7rem);line-height:.88;margin:.8rem 0 1.5rem}.impact-heading>p:last-child{max-width:25rem;color:#59675f}.impact-stats{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(16,25,20,.2)}.impact-stats .stat-card{padding:2rem 1rem 1rem 0;border:0;border-radius:0;background:transparent;box-shadow:none}.impact-stats .stat-card+div{border-left:1px solid rgba(16,25,20,.2);padding-left:2rem}.impact-stats strong{display:block;font:400 clamp(4rem,9vw,8rem)/1 Georgia,serif;color:var(--moss)}.impact-stats span{color:#4d5f55;font-weight:750}
.contact-editorial{background:#f8f7f2}.contact-editorial h2{font-size:clamp(3rem,6vw,6rem);line-height:.92;margin:1rem 0}.contact-editorial .contact-form{padding:clamp(1.5rem,4vw,3rem);border-radius:1rem;background:#fff;box-shadow:0 20px 60px rgba(21,40,29,.08)}
.premium-footer{padding:4rem 0 1.5rem}.footer-main{display:grid;grid-template-columns:1fr auto;gap:3rem}.footer-main img{width:11rem;border-radius:.35rem;background:#fff;margin-bottom:1.2rem}.footer-main p{max-width:31rem;line-height:1.6}.footer-main nav{display:grid;grid-template-columns:repeat(2,auto);gap:1rem 3rem}.footer-main nav a{color:#fff;text-decoration:none;font-weight:750}.footer-base{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);margin-top:3rem;padding-top:1.5rem}
.gallery-lightbox{width:min(76rem,94vw);border:0;border-radius:1rem;padding:0;background:#0c1510;color:#fff;box-shadow:0 30px 100px rgba(0,0,0,.55)}.gallery-lightbox::backdrop{background:rgba(4,12,8,.82);backdrop-filter:blur(8px)}.gallery-lightbox img{display:block;width:100%;max-height:80vh;object-fit:contain}.gallery-lightbox p{padding:1rem 1.4rem}.lightbox-close{position:absolute;right:1rem;top:1rem;z-index:2;width:2.8rem;height:2.8rem;border:0;border-radius:50%;background:rgba(255,255,255,.9);font-size:1.6rem;cursor:pointer}
@media(max-width:980px){.editorial-hero-grid,.featured-panel,.opportunity-card,.partner-editorial,.impact-section .container{grid-template-columns:1fr}.editorial-heading{grid-template-columns:1fr}.pillar-layout{gap:1rem}.action-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:20rem 20rem}.gallery-tile.tile-large{grid-row:span 1}.featured-top{grid-template-columns:1fr}.curated-grid,.directory-section .business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-panel img{min-height:24rem}.partner-collab{min-height:24rem}}
@media(max-width:680px){.editorial-hero{padding-top:2.5rem}.editorial-hero-grid{gap:2.5rem}.editorial-hero h1{font-size:clamp(3.1rem,15vw,4.8rem)}.hero-editorial-image{min-height:30rem;border-radius:1rem}.editorial-heading h2,.featured-top h2{font-size:clamp(2.8rem,14vw,4.2rem)}.pillar-layout{display:block}.pillar{margin:0 0 3.5rem!important}.pillar-image{aspect-ratio:4/4.3!important}.action-mosaic{display:flex;overflow-x:auto}.gallery-tile,.gallery-placeholder{flex:0 0 82vw;height:26rem}.featured-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.5rem}.featured-panel-copy{padding:2rem}.curated-grid,.directory-section .business-grid{grid-template-columns:1fr}.section-row{align-items:flex-start;flex-direction:column}.opportunity-card{padding:2rem 1.25rem}.moment-strip button,.moment-placeholder{flex-basis:82vw;height:22rem}.impact-stats{grid-template-columns:1fr}.impact-stats .stat-card+div{border-left:0;border-top:1px solid rgba(16,25,20,.2);padding-left:0}.footer-main{grid-template-columns:1fr}.footer-base{flex-direction:column;gap:.4rem}.editorial-home .main-nav{background:rgba(245,243,237,.98)}}

/* Cohesive interior pages */
.page-hero{padding:clamp(6rem,12vw,11rem) 0 clamp(4rem,8vw,7rem);background:var(--paper)}.page-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,7vw,7rem);align-items:end}.page-hero h1{font:400 clamp(4.5rem,10vw,10rem)/.82 Georgia,serif;letter-spacing:-.065em}.page-hero h1 em{color:var(--trade-emerald);font-weight:400}.page-hero-grid>p{max-width:34rem;color:#58675f;font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.65}.directory-intro{display:flex;justify-content:space-between;gap:2rem;border-bottom:1px solid rgba(16,25,20,.15);padding-bottom:1.2rem;margin-bottom:2.5rem}.directory-intro p{font-weight:850}.directory-intro span{color:#68756e}.meet-gateway{background:#fff}.gateway-inner{max-width:65rem;text-align:center}.gateway-inner h2{font:400 clamp(3rem,7vw,7rem)/.95 Georgia,serif;letter-spacing:-.05em;margin:1rem auto 2rem}.pillar .photo-slot{justify-content:flex-end;padding:1.5rem}.pillar .photo-slot strong{font-size:1.35rem}.pillar:hover .photo-slot{transform:none}
.story-landing-hero{background:#e4eadf}.story-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem}.story-card{overflow:hidden;border-radius:1.2rem;background:#fff;box-shadow:0 18px 55px rgba(14,35,24,.08)}.story-card a{color:inherit;text-decoration:none}.story-image{height:24rem;border-radius:0}.story-lead .story-image{height:36rem}.story-copy{padding:1.6rem}.story-copy>p{color:var(--trade-emerald-dark);font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.story-copy h3{font:400 clamp(2rem,4vw,3.4rem)/1 Georgia,serif;margin:.8rem 0 1.5rem}.story-copy span{font-weight:850}.speaker-section{background:#e6e9df}.speaker-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.speaker-card{display:grid;grid-template-columns:.85fr 1.15fr;overflow:hidden;border-radius:1rem;background:#fff}.speaker-photo{min-height:27rem;border-radius:0}.speaker-card>div:last-child{padding:2rem;align-self:center}.speaker-card h3{font:400 2.3rem/1 Georgia,serif;margin:.5rem 0 1rem}.speaker-card p{color:#5a6860;line-height:1.6}.speaker-card a{display:inline-block;margin-top:1.2rem;color:var(--trade-emerald-dark);font-weight:800;text-decoration:none}
.article-header{padding-top:clamp(5rem,10vw,9rem);padding-bottom:3rem}.article-header .eyebrow{margin-top:4rem}.article-header h1{font:400 clamp(4rem,10vw,10rem)/.83 Georgia,serif;letter-spacing:-.06em;margin:1rem 0 2rem}.article-deck{font-size:clamp(1.2rem,2vw,1.6rem);color:#59675f}.article-hero{min-height:clamp(28rem,58vw,52rem);border-radius:1.3rem}.article-layout{display:grid;grid-template-columns:.35fr .65fr;gap:clamp(2rem,8vw,8rem);padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(5rem,10vw,9rem)}.article-layout aside{border-top:1px solid #ccd2cc;padding-top:1rem}.article-layout aside>p{text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:850}.article-layout dl{display:grid;gap:1rem;margin-top:2rem}.article-layout dt{color:#718077;font-size:.75rem;text-transform:uppercase}.article-layout dd{margin:0;font-weight:750}.article-body{max-width:48rem}.article-body h2{font:400 clamp(2rem,4vw,3.6rem)/1 Georgia,serif;margin:3.5rem 0 1rem}.article-body h2:first-child{margin-top:0}.article-body p{font-size:1.08rem;line-height:1.85;color:#405047}.content-placeholder{border-left:3px solid var(--trade-gold);background:#f0eee7;padding:1rem 1.2rem;color:#66736c!important}.article-photo{min-height:28rem;margin:4rem 0}.related-stories{background:#dce6dc}.related-stories h2{font:400 clamp(2.5rem,6vw,5.5rem)/1 Georgia,serif;margin:1rem 0 2rem}.related-stories a,.premium-footer a{color:inherit}
.partner-story-list{display:grid;gap:clamp(4rem,9vw,8rem)}.partner-story-card{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,6vw,6rem);align-items:center}.partner-story-card.reverse .partner-identity{order:2}.partner-story-card.reverse .partner-photo{order:1}.partner-identity img{width:12rem;height:7rem;object-fit:contain;object-position:left}.partner-identity h2{font:400 clamp(2.2rem,4vw,4rem)/1 Georgia,serif;margin:2rem 0 1rem}.partner-identity p{color:#59675f;line-height:1.7}.partner-identity a{display:inline-block;margin-top:1.5rem;color:var(--trade-emerald-dark);font-weight:800;text-decoration:none}.partner-photo{min-height:34rem}.champions-editorial{background:#e6e9df}.partner-callout{background:#fff}
.contact-page-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,8vw,8rem);align-items:start}.contact-details h2{font:400 clamp(2.5rem,5vw,5rem)/.98 Georgia,serif;margin:1rem 0 1.5rem}.contact-details>p:not(.eyebrow){color:#5e6b64;line-height:1.7}.contact-details dl{margin-top:3rem;display:grid;grid-template-columns:7rem 1fr;gap:1rem;border-top:1px solid #d3d6d0;padding-top:1.5rem}.contact-details dt{color:#77837c}.contact-details dd{margin:0;font-weight:750}.contact-details a{color:inherit}.contact-page-grid .contact-form{padding:clamp(1.5rem,4vw,3rem);background:#fff;border-radius:1rem;box-shadow:0 20px 60px rgba(15,36,24,.08)}
.profile-hero{padding:clamp(4rem,8vw,8rem) 0;background:#e3e9df}.profile-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,7vw,7rem);align-items:center}.profile-visual{min-height:34rem;border-radius:1.2rem;overflow:hidden;background:linear-gradient(135deg,#24483a,#0f2d22)}.profile-visual img{width:100%;height:34rem;object-fit:cover}.profile-intro h1{font:400 clamp(3rem,7vw,7rem)/.9 Georgia,serif;letter-spacing:-.055em;margin:1rem 0 1.5rem}.profile-intro>p:last-of-type{color:#53635a;font-size:1.08rem;line-height:1.7}.profile-contact-icons{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}.profile-contact-icons a{display:inline-flex;align-items:center;gap:.45rem;border:1px solid rgba(16,25,20,.18);border-radius:999px;padding:.55rem .85rem;color:var(--charcoal);font-size:.85rem;font-weight:800;text-decoration:none}.profile-contact-icons span{display:grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--moss);color:#fff;font-size:.7rem}.profile-detail-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,8vw,8rem)}.profile-detail-grid h2{font:400 clamp(3rem,6vw,6rem)/1 Georgia,serif}.profile-detail-grid h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.13em;margin:0 0 1rem}.profile-detail-grid h3:nth-of-type(2){margin-top:3rem}.related-businesses{background:#eeece5}.related-businesses h2{font:400 clamp(2.5rem,5vw,5rem)/1 Georgia,serif;margin-top:.7rem}.related-businesses .business-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.image-unavailable{background:radial-gradient(circle at 80% 15%,rgba(198,232,110,.2),transparent 35%),linear-gradient(135deg,#284b3d,#0e2920)}
@media(max-width:980px){.page-hero-grid,.story-grid,.speaker-grid,.partner-story-card,.contact-page-grid,.profile-hero-grid,.profile-detail-grid,.article-layout{grid-template-columns:1fr}.story-lead .story-image{height:28rem}.speaker-card{grid-template-columns:1fr}.partner-story-card.reverse .partner-identity,.partner-story-card.reverse .partner-photo{order:initial}.article-layout aside{max-width:25rem}.related-businesses .business-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.page-hero h1{font-size:clamp(4rem,19vw,6rem)}.directory-intro{flex-direction:column}.story-image,.story-lead .story-image{height:24rem}.speaker-grid{grid-template-columns:1fr}.partner-photo{min-height:26rem}.article-header h1{font-size:clamp(3.7rem,17vw,6rem)}.article-hero{min-height:28rem}.profile-visual,.profile-visual img{min-height:27rem;height:27rem}.related-businesses .business-grid{grid-template-columns:1fr}}

/* Full-bleed campaign hero */
.editorial-home .editorial-hero{position:relative;min-height:calc(100svh - 5rem);padding:0;background:#17251e}.editorial-home .editorial-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,14,9,.35),rgba(5,14,9,.04) 62%,rgba(5,14,9,.15));pointer-events:none}.editorial-home .editorial-hero-grid{width:100%;max-width:none;min-height:calc(100svh - 5rem);display:flex;align-items:center;padding:clamp(1rem,5vw,5rem)}.editorial-home .hero-editorial-image{position:absolute;inset:0;min-height:0;border-radius:0;box-shadow:none;animation:hero-full-in 1.2s ease both}.editorial-home .hero-editorial-image>img{object-position:center center}.editorial-home .hero-editorial-image:after{background:linear-gradient(90deg,rgba(5,14,9,.26),transparent 65%)}.editorial-home .hero-editorial-image figcaption{display:none}.editorial-home .editorial-hero-copy{position:relative;z-index:2;width:min(43rem,100%);margin-left:max(0px,calc((100vw - var(--container))/2));padding:clamp(1.6rem,4vw,3.2rem);border:1px solid rgba(255,255,255,.38);border-radius:1.35rem;background:rgba(250,250,247,.79);box-shadow:0 30px 80px rgba(0,0,0,.2);backdrop-filter:blur(18px) saturate(1.08)}.editorial-home .editorial-hero h1{font-size:clamp(3.2rem,5.8vw,6.25rem)}.editorial-home .editorial-hero .hero-deck{font-size:clamp(1rem,1.45vw,1.18rem);line-height:1.58}.editorial-home .editorial-hero .hero-actions{margin-top:1.7rem}@keyframes hero-full-in{from{opacity:0;transform:scale(1.025)}}

/* TradeMatch editorial system */
.tradematch-editorial-hero{background:linear-gradient(135deg,#dfe8de,#f5f3ed)}.tradematch-editorial-hero h1{font-size:clamp(3.8rem,8vw,8.5rem)}.connection-selector-section{padding:clamp(3rem,6vw,5rem) 0;background:#fff;border-bottom:1px solid rgba(16,25,20,.1)}.selector-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}.selector-heading h2{font:400 clamp(2.2rem,4vw,4rem)/1 Georgia,serif;margin-top:.7rem}.selector-heading button{border:0;background:none;color:var(--trade-emerald-dark);font:inherit;font-weight:800;cursor:pointer}.connection-options{display:flex;flex-wrap:wrap;gap:.7rem}.connection-options button{min-height:3.4rem;border:1px solid rgba(16,25,20,.18);border-radius:999px;background:var(--paper);color:#34463c;padding:0 1.25rem;font:inherit;font-weight:800;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.connection-options button:hover{transform:translateY(-2px);border-color:var(--trade-emerald)}.connection-options button.is-selected{border-color:var(--moss);background:var(--moss);color:#fff}.editorial-home .matching-section{background:var(--paper)}.editorial-home .discovery-layout{align-items:start}.editorial-home .discovery-copy{position:sticky;top:8rem;padding-top:2rem}.editorial-home .discovery-copy h2{font:400 clamp(3rem,5vw,5.6rem)/.93 Georgia,serif;letter-spacing:-.05em}.editorial-home .match-card-shell{border:0;border-radius:1.3rem;background:#fff;box-shadow:0 24px 70px rgba(16,37,25,.1)}.editorial-home .match-stack{min-height:43rem}.editorial-home .match-card{border-color:rgba(16,25,20,.1);border-radius:1.15rem;background:#fff}.editorial-home .match-card h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}.editorial-home .match-media{background:#dfe6df}.editorial-home .match-actions{justify-content:space-between}.editorial-home .match-stack:before{content:"Next";background:var(--charcoal)}.editorial-home .match-stack:after{content:"Interested";background:var(--trade-emerald)}.trade-empty-state{grid-column:2;min-height:36rem;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(2rem,6vw,5rem);border:1px solid rgba(16,25,20,.12);border-radius:1.3rem;background:#fff;box-shadow:0 24px 70px rgba(16,37,25,.08)}.trade-empty-state[hidden]{display:none}.trade-empty-state h3{font:400 clamp(2.5rem,5vw,5rem)/1 Georgia,serif;margin:1rem 0}.trade-empty-state>p:not(.eyebrow){max-width:31rem;color:#59675f;font-size:1.05rem;line-height:1.65}.trade-empty-state .btn-primary{margin-top:2rem}.editorial-home #my-tradematches{background:#e6e9df}.editorial-home #my-tradematches .section-heading h2{font-family:Georgia,serif;font-weight:400}

/* Applications coming soon */
.main-nav .nav-apply{border:1px solid var(--trade-emerald);background:var(--trade-emerald);color:#fff}.main-nav .nav-apply:hover,.main-nav .nav-apply.active{color:#fff;background:var(--trade-emerald-dark)}.applications-page{min-height:calc(100svh - 5rem);display:grid;place-items:center;padding:clamp(3rem,8vw,7rem) 0;background:radial-gradient(circle at 80% 15%,rgba(198,232,110,.24),transparent 26rem),linear-gradient(135deg,#f4f2eb,#dce7dc)}.applications-card{position:relative;overflow:hidden;display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,7vw,7rem);align-items:center;padding:clamp(2rem,6vw,5rem);border:1px solid rgba(255,255,255,.75);border-radius:1.5rem;background:rgba(255,255,255,.7);box-shadow:0 32px 90px rgba(15,38,25,.12);backdrop-filter:blur(16px)}.cooking-mark{width:clamp(10rem,22vw,17rem);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:var(--moss);color:var(--lime);font:400 clamp(4rem,9vw,7rem)/1 Georgia,serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 25px 50px rgba(18,49,36,.22)}.applications-copy h1{font:400 clamp(3.5rem,7vw,7rem)/.9 Georgia,serif;letter-spacing:-.055em;margin:1rem 0 1.5rem}.applications-copy>p:not(.eyebrow){max-width:38rem;color:#526159;font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.65}.application-status{display:inline-flex;align-items:center;gap:.65rem;margin-top:2rem;color:var(--trade-emerald-dark);font-weight:850}.application-status:before{content:"";width:.65rem;height:.65rem;border-radius:50%;background:var(--trade-gold);box-shadow:0 0 0 .35rem rgba(217,164,65,.15)}.applications-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
@media(max-width:980px){.editorial-home .discovery-copy{position:static}.trade-empty-state{grid-column:1}.applications-card{grid-template-columns:1fr}.cooking-mark{width:10rem}}
@media(max-width:680px){.editorial-home .editorial-hero-grid{padding:1rem}.editorial-home .editorial-hero-copy{margin:0;padding:1.4rem;background:rgba(250,250,247,.84)}.editorial-home .editorial-hero h1{font-size:clamp(2.75rem,13vw,4rem)}.editorial-home .editorial-hero .hero-actions{gap:.6rem}.selector-heading{align-items:flex-start;flex-direction:column}.connection-options{display:grid;grid-template-columns:1fr 1fr}.connection-options button{width:100%;padding:0 .75rem}.editorial-home .match-stack{min-height:40rem}.applications-card{padding:1.5rem}.applications-actions .btn-primary,.applications-actions .btn-secondary{width:100%}}
.match-products{display:grid;gap:.2rem;border-top:1px solid var(--trade-line);padding-top:1rem}.match-products>strong{color:var(--trade-navy);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.match-products .business-tags{margin-top:.55rem}

/* Dr. Da'Cruz editorial story */
.story-image img,.speaker-photo img{width:100%;height:100%;object-fit:cover}.story-lead .story-image img{object-position:center 24%}.speaker-photo{overflow:hidden}.speaker-card .speaker-photo img{min-height:27rem;object-position:center top}.dacruz-story .article-header h1{max-width:75rem;font-size:clamp(3.8rem,8.2vw,8.2rem)}.article-meta{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}.article-meta span{border:1px solid rgba(16,25,20,.18);border-radius:999px;padding:.55rem .8rem;color:#516159;font-size:.8rem;font-weight:750}.article-hero-image{margin-bottom:clamp(4rem,8vw,8rem)}.article-hero-image img{display:block;width:100%;max-height:78vh;border-radius:1.3rem;background:#e8ddd0;object-fit:cover;object-position:center 24%}.article-hero-image figcaption,.article-wide-photo figcaption,.article-photo-pair figcaption{padding-top:.8rem;color:#6a7770;font-size:.82rem;line-height:1.5}.article-lede{font:400 clamp(1.5rem,2.6vw,2.15rem)/1.45 Georgia,serif;color:var(--charcoal)!important}.article-body blockquote{margin:4rem 0;padding:2rem 0;border-top:1px solid #cbd2cb;border-bottom:1px solid #cbd2cb;font:400 clamp(1.8rem,3.5vw,3rem)/1.25 Georgia,serif;color:var(--moss)}.article-wide-photo{width:min(88rem,calc(100% - 2rem));margin:clamp(4rem,9vw,8rem) auto}.article-wide-photo img{display:block;width:100%;max-height:75rem;border-radius:1.2rem;object-fit:cover}.article-wide-photo:not(.landscape) img{max-height:65rem;object-position:center 35%}.article-wide-photo.landscape img{aspect-ratio:16/9}.article-body-centered{width:min(48rem,calc(100% - 2rem));margin:clamp(4rem,9vw,8rem) auto}.article-photo-pair{display:grid;grid-template-columns:.86fr 1.14fr;gap:1rem;margin-top:clamp(4rem,8vw,7rem);margin-bottom:clamp(4rem,8vw,7rem)}.article-photo-pair figure{margin:0}.article-photo-pair img{width:100%;height:clamp(32rem,60vw,55rem);border-radius:1rem;object-fit:cover}.article-photo-pair figure:first-child img{object-position:center 30%}.aside-index{display:block;margin-top:2rem;font:400 5rem/1 Georgia,serif;color:#b6c0b8}.external-work{display:inline-block;margin-top:1rem}.expertise-list{display:grid;gap:0;list-style:none;padding:0;margin:2rem 0}.expertise-list li{border-top:1px solid #d2d7d2;padding:1rem 0;font-weight:750}.expertise-list li:last-child{border-bottom:1px solid #d2d7d2}.speaker-profile-card{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,6vw,6rem);align-items:center;margin-top:clamp(5rem,10vw,10rem);margin-bottom:clamp(5rem,10vw,10rem);padding:clamp(1rem,3vw,2rem);border-radius:1.3rem;background:#e4eadf}.speaker-profile-card>img{width:100%;max-height:35rem;border-radius:1rem;object-fit:cover;object-position:center top}.speaker-profile-card h2{font:400 clamp(2.5rem,5vw,5rem)/1 Georgia,serif;margin:.7rem 0 1rem}.speaker-profile-card>div>p:not(.eyebrow){max-width:37rem;color:#536259;line-height:1.7}.speaker-profile-card .text-link{display:inline-block;margin-top:2rem}
@media(max-width:780px){.article-photo-pair,.speaker-profile-card{grid-template-columns:1fr}.article-photo-pair img{height:32rem}.article-hero-image img{min-height:30rem}.dacruz-story .article-header h1{font-size:clamp(3.1rem,13vw,5rem)}}
.speaker-grid .speaker-card:only-child{grid-column:1/-1;width:min(58rem,100%)}
.card-interest-button{border:1px solid var(--trade-emerald);border-radius:999px;background:var(--trade-emerald);color:#fff;cursor:pointer;font:inherit;font-size:.82rem;font-weight:850;padding:.45rem .8rem;transition:background .2s ease,transform .2s ease}.card-interest-button:hover{background:var(--trade-emerald-dark);transform:translateY(-2px)}.interest-modal .trade-modal-card{width:min(54rem,100%);max-height:min(92svh,58rem);overflow-y:auto;border-radius:1.25rem;padding:clamp(1.25rem,4vw,2.5rem)}.interest-modal .trade-modal-card>div>h2{font:400 clamp(2.8rem,6vw,5rem)/.95 Georgia,serif;letter-spacing:-.045em}.interest-modal .trade-modal-card>div>p:not(.eyebrow){max-width:44rem;color:#5a6860;line-height:1.6}.trade-interest-form{display:grid;gap:1.15rem;margin-top:1.5rem}.interest-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.trade-interest-form label{display:grid;gap:.45rem;color:var(--charcoal);font-size:.86rem;font-weight:800}.trade-interest-form label small{color:#6c7971;font-weight:500}.trade-interest-form input:not([type="checkbox"]),.trade-interest-form textarea{width:100%;border:1px solid var(--trade-line);border-radius:.75rem;background:#fbfbf8;color:var(--charcoal);font:inherit;padding:.85rem .9rem;transition:border-color .2s ease,box-shadow .2s ease}.trade-interest-form input:focus,.trade-interest-form textarea:focus{border-color:var(--trade-emerald);box-shadow:0 0 0 4px rgba(15,143,95,.1);outline:0}.consent-field{display:grid!important;grid-template-columns:auto 1fr!important;align-items:start;gap:.75rem!important;padding:1rem;border-radius:.75rem;background:var(--trade-mist);line-height:1.5}.consent-field input{width:1.15rem;height:1.15rem;margin-top:.12rem;accent-color:var(--trade-emerald)}.interest-form-status{min-height:1rem;color:#9f2f2f}.interest-submit{justify-self:end}.interest-submit:disabled{cursor:wait;opacity:.65}.interest-result{min-height:26rem;align-content:center;padding:clamp(1rem,5vw,4rem)}.interest-result:not([hidden]){display:grid}.interest-result h2{margin:1rem 0}.interest-result .modal-actions{justify-content:flex-start}.interest-form-view[hidden],.interest-result[hidden]{display:none!important}
@media(max-width:680px){.interest-modal{align-items:end;padding:.5rem}.interest-modal .trade-modal-card{max-height:94svh;border-radius:1.2rem 1.2rem .6rem .6rem;padding:1.25rem}.interest-field-grid{grid-template-columns:1fr}.interest-submit{position:sticky;bottom:0;width:100%;box-shadow:0 -10px 20px #fff}.interest-modal .modal-business{grid-template-columns:5rem 1fr}.interest-modal .modal-business-image{height:5rem}.connection-options{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.6rem}.connection-options button{flex:0 0 auto;width:auto}}

/* ZSIC GI partnership gallery */
.zsic-partner-story{grid-template-columns:.62fr 1.38fr}.partner-gallery-note{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(16,25,20,.14);font-size:.9rem}.zsic-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:12rem;gap:.65rem}.zsic-gallery button{position:relative;overflow:hidden;border:0;border-radius:.85rem;background:#dfe5df;padding:0;cursor:zoom-in;text-align:left}.zsic-gallery-feature{grid-column:span 2;grid-row:span 2}.zsic-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.zsic-gallery button:hover img{transform:scale(1.035)}.zsic-gallery button:after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(5,15,9,.72))}.zsic-gallery button span{position:absolute;z-index:1;left:.8rem;right:.8rem;bottom:.75rem;color:#fff;font-size:.78rem;font-weight:800;line-height:1.25}.zsic-gallery button:focus-visible{outline:3px solid var(--trade-gold);outline-offset:3px}
@media(max-width:980px){.zsic-partner-story{grid-template-columns:1fr}.zsic-partner-story.reverse .partner-identity,.zsic-partner-story.reverse .zsic-gallery{order:initial}.zsic-gallery{grid-auto-rows:14rem}}
@media(max-width:680px){.zsic-gallery{display:flex;overflow-x:auto;gap:.7rem;padding-bottom:.8rem;scroll-snap-type:x mandatory}.zsic-gallery button,.zsic-gallery-feature{flex:0 0 82vw;height:27rem;grid-column:auto;grid-row:auto;scroll-snap-align:start}}

/* Partner collaboration refinements */
.zsic-gallery{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;align-items:stretch}.zsic-gallery button,.zsic-gallery .zsic-gallery-feature{grid-column:auto;grid-row:auto;aspect-ratio:4/3;min-height:0}.zsic-gallery img{object-position:center}.zsic-gallery button:nth-child(1) img,.zsic-gallery button:nth-child(6) img,.zsic-gallery button:nth-child(7) img,.zsic-gallery button:nth-child(8) img,.zsic-gallery button:nth-child(9) img{object-position:center 25%}.embassy-partner-story{grid-template-columns:.72fr 1.28fr}.embassy-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:14rem;gap:.7rem}.embassy-gallery button{position:relative;overflow:hidden;border:0;border-radius:.9rem;background:#dfe5df;padding:0;cursor:zoom-in;text-align:left}.embassy-gallery-feature{grid-column:span 2;grid-row:span 2}.embassy-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.embassy-gallery button:hover img{transform:scale(1.035)}.embassy-gallery button:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(5,15,9,.72))}.embassy-gallery button span{position:absolute;z-index:1;left:.9rem;right:.9rem;bottom:.8rem;color:#fff;font-size:.8rem;font-weight:800;line-height:1.25}.embassy-gallery button:focus-visible{outline:3px solid var(--trade-gold);outline-offset:3px}
@media(max-width:980px){.embassy-partner-story{grid-template-columns:1fr}.embassy-gallery{grid-auto-rows:15rem}}
@media(max-width:680px){.zsic-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.zsic-gallery button,.zsic-gallery .zsic-gallery-feature{width:100%;height:auto;aspect-ratio:4/3}.embassy-gallery{display:flex;overflow-x:auto;gap:.7rem;padding-bottom:.8rem;scroll-snap-type:x mandatory}.embassy-gallery button,.embassy-gallery-feature{flex:0 0 82vw;height:27rem;grid-column:auto;grid-row:auto;scroll-snap-align:start}}

/* Five-image partner galleries */
.zsic-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:14rem}.zsic-gallery button,.zsic-gallery .zsic-gallery-feature{aspect-ratio:auto}.zsic-gallery .zsic-gallery-feature{grid-column:span 2;grid-row:span 2}
@media(max-width:680px){.zsic-gallery{display:flex;overflow-x:auto;gap:.7rem;padding-bottom:.8rem;scroll-snap-type:x mandatory}.zsic-gallery button,.zsic-gallery .zsic-gallery-feature{flex:0 0 82vw;width:auto;height:27rem;grid-column:auto;grid-row:auto;aspect-ratio:auto;scroll-snap-align:start}}
.partner-text-only{display:block;width:min(58rem,100%);padding:clamp(2rem,6vw,5rem);border:1px solid rgba(16,25,20,.1);border-radius:1.3rem;background:#e6ebe3}.partner-text-only .partner-identity{max-width:46rem}.partner-text-only .partner-identity img{width:14rem;height:8rem;margin-bottom:1.5rem}.partner-text-only .partner-identity .eyebrow{margin-bottom:.8rem}.partner-service-list{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.5rem}.partner-service-list span{border:1px solid rgba(16,25,20,.16);border-radius:999px;background:rgba(255,255,255,.55);padding:.55rem .8rem;color:#405047;font-size:.8rem;font-weight:800}
.partner-collab-photo{position:relative;overflow:hidden;margin:0;padding:0;border:0;border-radius:1rem;background:#dfe5df;color:inherit}.partner-collab-photo img{display:block;width:100%;height:30rem;object-fit:cover}.partner-collab-photo figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;width:fit-content;max-width:calc(100% - 2rem);border-radius:999px;background:rgba(255,255,255,.9);color:var(--charcoal);font-size:.78rem;font-weight:800;padding:.6rem .85rem;backdrop-filter:blur(10px)}
