/* ============================================
   Siftfy — Custom Styles
   ============================================ */

:root {
  --color-bg: #F5F3EE;
  --color-card: #FFFFFF;
  --color-primary: #0ea89b;
  --color-highlight: #5EEAD4;
  --color-cta: #0ea89b;
  --color-cta-hover: #0b8a7f;
  --color-text: #131E28;
  --color-muted: #55656F;
  --color-border: #DCD6CA;
  --color-panel: #EBE7DD;
  --color-panel-strong: #DFD9CC;
  --color-success: #0E9F6E;
  --color-warning: #B7791F;
  --color-nav-bg: rgba(245, 243, 238, 0.88);
  --shadow-card: 0 1px 2px rgba(19, 30, 40, 0.05), 0 8px 24px rgba(19, 30, 40, 0.06);
  --shadow-card-hover: 0 2px 4px rgba(19, 30, 40, 0.06), 0 16px 40px rgba(19, 30, 40, 0.10);
  --shadow-button: 0 2px 10px rgba(14, 168, 155, 0.30);
  --font-display: 'Fraunces', Georgia, 'Songti SC', 'SimSun', serif;
  --font-body: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}

.dark {
  --color-bg: #0C141B;
  --color-card: #131F29;
  --color-primary: #5EEAD4;
  --color-highlight: #8DFFF7;
  --color-cta: #12c4b4;
  --color-cta-hover: #0ea89b;
  --color-text: #E9EEF2;
  --color-muted: #93A5B0;
  --color-border: #26333F;
  --color-panel: #101A23;
  --color-panel-strong: #182532;
  --color-success: #6EE7B7;
  --color-warning: #F6C56F;
  --color-nav-bg: rgba(12, 20, 27, 0.9);
  --shadow-card: 0 8px 30px rgba(0, 0, 0, 0.32);
  --shadow-card-hover: 0 14px 44px rgba(0, 0, 0, 0.46);
  --shadow-button: 0 2px 10px rgba(14, 168, 155, 0.35);
}

html { scroll-behavior: smooth; }

*,*::before,*::after { box-sizing:border-box; }

body {
  margin:0;
  background-color: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
  transition: background-color .25s, color .25s;
  -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4 { font-family: var(--font-display); letter-spacing: -.015em; }
img { max-width:100%; }
button,input,select,textarea { font:inherit; }
a { text-decoration:none; }

/* Small local utility set used by shared templates. */
.sticky { position: sticky; }
.top-0 { top: 0; }
.z-40 { z-index: 40; }
.border-b { border-bottom: 1px solid var(--color-border); }
.backdrop-blur-md { backdrop-filter: blur(12px); }
.max-w-7xl { max-width: 80rem; }
.mx-auto { margin-left: auto; margin-right: auto; }
.px-3 { padding-left: .75rem; padding-right: .75rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.py-2 { padding-top: .5rem; padding-bottom: .5rem; }
.py-2\.5 { padding-top: .625rem; padding-bottom: .625rem; }
.p-2 { padding: .5rem; }
.p-5 { padding:1.25rem; }
.pb-4 { padding-bottom: 1rem; }
.pb-8 { padding-bottom:2rem; }
.pt-8 { padding-top:2rem; }
.pt-16 { padding-top:4rem; }
.pt-3 { padding-top: .75rem; }
.py-12 { padding-top:3rem; padding-bottom:3rem; }
.px-6 { padding-left:1.5rem; padding-right:1.5rem; }
.mt-2 { margin-top: .5rem; }
.mb-2 { margin-bottom:.5rem; }
.mb-4 { margin-bottom:1rem; }
.mb-6 { margin-bottom:1.5rem; }
.mb-8 { margin-bottom:2rem; }
.mb-12 { margin-bottom:3rem; }
.h-6 { height:1.5rem; }
.h-8 { height: 2rem; }
.h-14 { height:3.5rem; }
.h-16 { height: 4rem; }
.w-14 { width:3.5rem; }
.w-full { width:100%; }
.w-auto { width: auto; }
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.inline-block { display:inline-block; }
.grid { display:grid; }
.grid-cols-1 { grid-template-columns:minmax(0,1fr); }
.hidden { display: none !important; }
.flex-col { flex-direction: column; }
.items-center { align-items: center; }
.items-start { align-items:flex-start; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content:center; }
.gap-1 { gap: .25rem; }
.gap-2 { gap: .5rem; }
.gap-3 { gap: .75rem; }
.gap-4 { gap:1rem; }
.gap-6 { gap:1.5rem; }
.gap-10 { gap:2.5rem; }
.flex-shrink-0 { flex-shrink: 0; }
.rounded-lg { border-radius: .5rem; }
.rounded-full { border-radius:999px; }
.rounded-r-xl { border-radius:0 .75rem .75rem 0; }
.border-t { border-top:1px solid var(--color-border); }
.border-l-4 { border-left:4px solid; }
.border-teal-primary { border-color:var(--color-primary); }
.border-slate-800 { border-color:#1E293B; }
.bg-slate-900 { background:#101C26; }
.bg-teal-50 { background:#E9F4F1; }
.bg-\[\#F9FBFA\] { background:#F5F3EE; }
.text-white { color:#fff; }
.text-slate-300 { color:#CBD5E1; }
.text-slate-400 { color:#94A3B8; }
.text-slate-500 { color:#64748B; }
.text-slate-600 { color:#475569; }
.text-slate-700 { color:#334155; }
.text-slate-800 { color:#1E293B; }
.text-slate-900 { color:#0F172A; }
.text-teal-primary { color:var(--color-primary); }
.text-xs { font-size: .75rem; line-height: 1rem; }
.text-sm { font-size: .875rem; line-height: 1.25rem; }
.text-xl { font-size:1.25rem; line-height:1.75rem; }
.text-3xl { font-size:1.875rem; line-height:2.25rem; }
.text-center { text-align:center; }
.font-medium { font-weight: 500; }
.font-semibold { font-weight:600; }
.font-bold { font-weight:700; }
.leading-relaxed { line-height:1.625; }
.leading-tight { line-height:1.25; }
.uppercase { text-transform:uppercase; }
.tracking-wide,.tracking-wider { letter-spacing:0; }
.max-w-xs { max-width:20rem; }
.max-w-3xl { max-width:48rem; }
.space-y-1\.5 > * + * { margin-top:.375rem; }
.space-y-2\.5 > * + * { margin-top:.625rem; }
.hover\:underline:hover { text-decoration:underline; }
.hover\:text-teal-primary:hover { color:var(--color-primary); }
.hover\:bg-slate-100:hover { background:#F1F5F9; }
.hover\:bg-teal-50:hover { background:#E9F4F1; }
.transition-colors { transition: color .2s, background-color .2s, border-color .2s; }
@media (min-width: 640px) {
  .sm\:px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
  .sm\:gap-3 { gap: .75rem; }
  .sm\:text-sm { font-size: .875rem; line-height: 1.25rem; }
  .sm\:text-4xl { font-size:2.25rem; line-height:2.5rem; }
  .sm\:flex-row { flex-direction:row; }
}
@media (min-width: 768px) {
  .md\:inline-flex { display: inline-flex !important; }
  .md\:grid-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width: 1024px) {
  .lg\:px-8 { padding-left: 2rem; padding-right: 2rem; }
  .lg\:flex { display: flex; }
  .lg\:hidden { display: none; }
}
.dark .dark\:bg-slate-950 { background:#020617; }
.dark .dark\:bg-teal-900\/20 { background:rgba(19,78,74,.2); }
.dark .dark\:text-white { color:#fff; }
.dark .dark\:text-slate-200 { color:#E2E8F0; }
.dark .dark\:text-slate-300 { color:#CBD5E1; }
.dark .dark\:text-slate-400 { color:#94A3B8; }
.dark .dark\:text-cyan-highlight { color:var(--color-highlight); }
.dark .dark\:border-slate-700 { border-color:#334155; }
.dark .dark\:hover\:bg-slate-800:hover { background:#1E293B; }
.dark .dark\:hover\:text-cyan-highlight:hover { color:var(--color-highlight); }

header.sticky {
  background: var(--color-nav-bg) !important;
  border-color: var(--color-border) !important;
}
header.sticky a:not(.btn-primary), header.sticky select {
  color: var(--color-text) !important;
}
header.sticky select {
  background-color: var(--color-card);
  border: 1px solid var(--color-border);
  border-radius: .5rem;
  min-height: 2.25rem;
}
.nav-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  min-height:4rem;
}
.primary-nav {
  display:none;
  align-items:center;
  gap:.25rem;
}
.primary-nav a { white-space:nowrap; }
.nav-actions { min-width:0; flex-shrink:1; }
.lang-select { max-width:6.5rem; padding-inline:.35rem; }
@media (min-width:640px) { .lang-select { max-width:11rem; padding-inline:.5rem; } }
@media (min-width:640px) and (max-width:1023px) {
  .nav-row {
    flex-wrap:wrap;
    padding-bottom:.5rem;
  }
  .primary-nav {
    display:flex;
    order:3;
    flex:0 0 100%;
    overflow-x:auto;
    padding-top:.5rem;
    border-top:1px solid var(--color-border);
  }
  #mobile-nav-toggle,
  #mobile-menu { display:none !important; }
}
@media (min-width:1024px) {
  .primary-nav { display:flex; }
}

.btn-primary {
  display: inline-flex; align-items: center; justify-content: center;
  min-height:2.75rem; padding: .78rem 1.35rem; border-radius: .375rem; font-weight: 700; font-size: .95rem;
  letter-spacing: .01em;
  color: #fff; border: none; cursor: pointer; text-decoration: none; gap: .5rem;
  background: var(--color-cta);
  box-shadow: var(--shadow-button);
  transition: transform .25s, box-shadow .25s, background .25s;
}
.btn-primary:hover { transform: translateY(-2px); background: var(--color-cta-hover); box-shadow: 0 6px 20px rgba(14,168,155,.38); }
.btn-primary:active { transform: translateY(0); }

.btn-secondary {
  display: inline-flex; align-items: center; justify-content: center;
  padding: .75rem 1.75rem; border-radius: .375rem; font-weight: 600; font-size: 1rem;
  color: var(--color-primary); background: transparent; border: 2px solid var(--color-primary);
  cursor: pointer; text-decoration: none; gap: .5rem; transition: all .25s;
}
.btn-secondary:hover { background: var(--color-primary); color: #fff; }
.dark .btn-secondary:hover { color: #0F172A; }

.btn-nav {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 2.25rem; padding: .45rem .95rem; border-radius: .375rem;
  font-weight: 700; font-size: .85rem; letter-spacing: .01em;
  color: var(--color-primary); background: transparent;
  border: 1.5px solid color-mix(in srgb, var(--color-primary) 55%, transparent);
  cursor: pointer; text-decoration: none; transition: all .2s;
}
.btn-nav:hover { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }

.card {
  background: var(--color-card); border-radius: .5rem;
  box-shadow: var(--shadow-card); border: 1px solid var(--color-border);
  padding: 2rem; transition: transform .25s, box-shadow .25s;
}
.card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }

.gradient-hero {
  background: linear-gradient(160deg, #EAE6DB 0%, #F5F3EE 50%, #F8F7F3 100%);
  position: relative; overflow: hidden;
}
.gradient-hero::before {
  content:''; position:absolute; top:-50%; right:-20%; width:600px; height:600px;
  border-radius:50%; background: radial-gradient(circle, rgba(11,122,109,.10) 0%, transparent 70%);
  pointer-events:none;
}
.gradient-hero::after {
  content:''; position:absolute; bottom:-30%; left:-10%; width:400px; height:400px;
  border-radius:50%; background: radial-gradient(circle, rgba(14,168,155,.07) 0%, transparent 70%);
  pointer-events:none;
}

.gradient-cta { background: linear-gradient(135deg, var(--color-cta), var(--color-cta-hover)); }

.section-padding { padding: 4rem 1rem; }
@media (min-width: 1024px) { .section-padding { padding: 6rem 2rem; } }

/* Floating quote shortcut */
.quote-float {
  position:fixed; bottom:1.5rem; right:1.5rem; z-index:50;
  display:flex; align-items:center; justify-content:center;
  width:3.5rem; height:3.5rem; background:var(--color-cta); color:#fff; border-radius:50%;
  box-shadow:0 4px 20px rgba(14,168,155,.30); text-decoration:none;
  transition:transform .25s,box-shadow .25s;
}
.quote-float:hover { transform:scale(1.08); box-shadow:0 6px 28px rgba(14,168,155,.40); }
.quote-float::before {
  content:''; position:absolute; inset:-4px; border-radius:50%;
  border:3px solid rgba(14,168,155,.26); animation:pulse-wa 2s ease-in-out infinite; pointer-events:none;
}
@keyframes pulse-wa {
  0%,100% { transform:scale(1); opacity:.6; }
  50% { transform:scale(1.25); opacity:0; }
}

/* FAQ */
.faq-item { border-bottom:1px solid var(--color-border); }
.faq-question {
  display:flex; align-items:center; justify-content:space-between;
  width:100%; padding:1.25rem 0; background:none; border:none; cursor:pointer;
  font-size:1.05rem; font-weight:600; color:var(--color-text); text-align:left;
  transition:color .25s;
}
.faq-question:hover { color:var(--color-primary); }
.faq-arrow { flex-shrink:0; width:1.25rem; height:1.25rem; transition:transform .25s; color:var(--color-muted); }
.faq-item.open .faq-arrow { transform:rotate(180deg); color:var(--color-primary); }
.faq-answer { max-height:0; overflow:hidden; transition:max-height .4s, padding .4s; }
.faq-item.open .faq-answer { max-height:600px; padding-bottom:1.25rem; }
.faq-answer p { color:var(--color-muted); line-height:1.7; margin:0; }

/* Currency select */
.currency-select {
  appearance:none; -webkit-appearance:none;
  background:var(--color-card); color:var(--color-text);
  border:1px solid var(--color-border); border-radius:.5rem;
  padding:.5rem 2rem .5rem .75rem; font-size:.9rem; font-weight:500; cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right .6rem center;
}

/* Language switcher */
.lang-btn {
  padding:.3rem .5rem; border-radius:.375rem; font-size:.8rem; font-weight:500;
  color:var(--color-muted); background:transparent; border:none; cursor:pointer;
  text-decoration:none; transition:all .25s;
}
.lang-btn:hover { color:var(--color-primary); background:rgba(14,168,155,.08); }
.lang-btn.active { color:var(--color-primary); font-weight:700; background:rgba(14,168,155,.1); }

/* Dark toggle */
.dark-toggle {
  display:flex; align-items:center; justify-content:center;
  width:2.25rem; height:2.25rem; border-radius:.5rem;
  border:1px solid var(--color-border); background:var(--color-card);
  cursor:pointer; color:var(--color-muted); transition:all .25s;
}
.dark-toggle:hover { color:var(--color-primary); border-color:var(--color-primary); }
#dark-toggle .icon-sun { display:none; }
.dark #dark-toggle .icon-sun { display:block; }
.dark #dark-toggle .icon-moon { display:none; }

/* Mobile nav */
#mobile-menu { display:none; }
#mobile-menu.nav-open { display:block !important; }

/* Blog content */
.blog-content h2 { font-size:1.5rem; font-weight:700; margin-top:2.5rem; margin-bottom:1rem; }
.blog-content h3 { font-size:1.2rem; font-weight:600; margin-top:1.75rem; margin-bottom:.75rem; }
.blog-content p { line-height:1.8; margin-bottom:1.25rem; }
.blog-content ul,.blog-content ol { margin-bottom:1.25rem; padding-left:1.5rem; }
.blog-content li { line-height:1.8; margin-bottom:.5rem; }
.blog-content a { color:var(--color-primary); text-decoration:underline; text-underline-offset:3px; }
.blog-content table { width:100%; border-collapse:collapse; margin:1.5rem 0; font-size:.95rem; }
.blog-content th { background:var(--color-primary); color:#fff; padding:.75rem 1rem; text-align:left; font-weight:600; }
.blog-content td { padding:.75rem 1rem; border-bottom:1px solid var(--color-border); }

/* Comparison table */
.compare-table { width:100%; border-collapse:collapse; font-size:.95rem; }
.compare-table thead th { background:var(--color-primary); color:#fff; padding:1rem 1.25rem; text-align:left; font-weight:600; }
.compare-table thead th:first-child { border-radius:.75rem 0 0 0; }
.compare-table thead th:last-child { border-radius:0 .75rem 0 0; }
.compare-table tbody td { padding:.9rem 1.25rem; border-bottom:1px solid var(--color-border); }
.compare-table tbody tr:nth-child(even) td { background:var(--color-card); }
.compare-table .check { color:#10B981; font-weight:700; }
.compare-table .cross { color:#EF4444; }

.step-number {
  display:flex; align-items:center; justify-content:center;
  width:3rem; height:3rem; border-radius:50%; background:var(--color-primary);
  color:#fff; font-weight:700; font-size:1.25rem; flex-shrink:0;
}

.text-gradient {
  background:linear-gradient(135deg,var(--color-primary),var(--color-highlight));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.btn-loading { pointer-events:none; opacity:.7; }

/* Operational trust layout */
.site-container { width:min(1120px, calc(100% - 2rem)); margin:0 auto; }
.site-container.narrow { width:min(780px, calc(100% - 2rem)); text-align:center; }
.section-band { background:var(--color-panel); }
.hero-ops {
  background:var(--color-bg);
  position:relative; overflow:hidden;
}
.hero-ops::before {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:linear-gradient(color-mix(in srgb, var(--color-text) 6%, transparent) 1px, transparent 1px);
  background-size:100% 56px;
  -webkit-mask-image:linear-gradient(180deg, black 0%, transparent 70%);
  mask-image:linear-gradient(180deg, black 0%, transparent 70%);
}
.hero-ops.section-padding { padding-top:3.5rem; padding-bottom:2rem; }
.hero-ops-grid,.hero-visual-grid { display:grid; gap:1.5rem; align-items:center; }
.hero-visual-grid { isolation:isolate; position:relative; z-index:1; align-items:start; }
.hero-copy { min-width:0; position:relative; z-index:1; }
.hero-copy h1,.page-hero h1,.section-heading h2,.cta-panel h2 {
  color:var(--color-text); font-weight:700; line-height:1.02; margin:0;
}
.hero-copy h1 {
  font-size:clamp(2.05rem, 5vw, 4.15rem); max-width:820px;
  line-height:1.04; letter-spacing:-.02em; overflow-wrap:anywhere; text-wrap:balance;
}
.hero-price-accent {
  display:inline-block; color:var(--color-primary); font-family:var(--font-mono);
  font-weight:800; white-space:nowrap;
}
.hero-lede,.page-hero p,.section-heading p,.cta-panel p,.section-lede {
  color:var(--color-muted); line-height:1.75; font-size:1.05rem;
}
.hero-lede { max-width:700px; margin:.9rem 0 1.1rem; font-size:1rem; }
.eyebrow {
  margin:0 0 .75rem; color:var(--color-primary); font-size:.72rem;
  text-transform:uppercase; font-weight:700; letter-spacing:.14em;
}
.eyebrow,.status-chip,.conversion-quote-body dt,.quote-body dt,.workflow-step span,.timeline span,
.reason-grid article > span,.service-tile-grid span,.material-placeholder-copy span,
.panel-kicker,.platform-sync-card small,.contact-method span,.mini-case-grid strong {
  font-family:var(--font-mono);
}
.hero-actions { display:flex; gap:1rem; align-items:center; flex-wrap:wrap; }
.hero-actions-center { justify-content:center; }
.hero-case-link { min-height:2.75rem; display:inline-flex; align-items:center; gap:.35rem; }
.trust-strip {
  display:grid; grid-template-columns:1fr; gap:.55rem 1rem; margin-top:1.2rem; color:var(--color-muted); font-size:.82rem;
}
@media (min-width:640px) { .trust-strip { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; } }
.trust-strip span,.status-chip {
  display:inline-flex; align-items:center; min-height:1.75rem;
}
.trust-strip span { gap:.4rem; padding:0; border:0; border-radius:0; background:transparent; align-items:flex-start; }
.trust-strip span::before { content:""; width:.42rem; height:.42rem; margin-top:.32rem; border-radius:50%; background:var(--color-primary); flex:0 0 auto; }
.hero-price-note {
  max-width:680px; margin:.7rem 0 0; color:var(--color-muted);
  font-size:1rem; line-height:1.55;
}
@media (min-width:640px) { .hero-price-note { font-size:.8rem; } }
.status-chip { color:var(--color-primary); font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:0; }
.status-chip { padding:.3rem .6rem; border:1px solid var(--color-border); border-radius:999px; background:var(--color-card); }
.platform-orbit {
  display:none; position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden;
}
.platform-orbit::before {
  content:""; position:absolute; left:0; right:0; top:5.6rem; height:1px;
  background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-primary) 18%, transparent), transparent);
  opacity:.55;
}
.platform-orbit-item {
  position:absolute; display:flex; align-items:center; justify-content:center;
  width:3.8rem; height:3.8rem; border-radius:1.05rem;
  color:rgba(11,122,109,.2); background:rgba(255,255,255,.52);
  border:1px solid rgba(11,122,109,.12); box-shadow:0 16px 42px rgba(19,30,40,.06);
  backdrop-filter:blur(8px); transform:rotate(var(--tilt, 0deg));
}
.platform-orbit-item img {
  display:block; width:2rem; height:2rem; object-fit:contain;
  opacity:.82; filter:saturate(.92) contrast(.96);
}
.platform-orbit-shopify { --tilt:-10deg; left:4%; top:8.8rem; }
.platform-orbit-woo { --tilt:7deg; left:-.25rem; bottom:34%; }
.platform-orbit-tiktok { --tilt:12deg; right:31%; top:6.9rem; }
.platform-orbit-ebay { --tilt:-6deg; right:9%; top:9.3rem; }
.platform-orbit-amazon { --tilt:8deg; right:18%; bottom:12%; }
.dark .platform-orbit-item {
  color:rgba(94,234,212,.22); background:rgba(19,31,41,.56);
  border-color:rgba(94,234,212,.13); box-shadow:0 18px 44px rgba(0,0,0,.26);
}
.dark .platform-orbit-item img { opacity:.78; filter:saturate(.95) contrast(1.05); }
.dark .platform-orbit::before {
  background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-primary) 14%, transparent), transparent);
}
.platform-sync-card {
  margin-top:1rem; display:grid; gap:.75rem; max-width:660px;
  padding:.85rem; border:1px solid color-mix(in srgb, var(--color-primary) 26%, var(--color-border));
  border-radius:.5rem; background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-card) 88%, transparent), color-mix(in srgb, var(--color-panel) 74%, transparent));
  box-shadow:0 12px 36px rgba(15,32,29,.08); backdrop-filter:blur(16px);
}
.platform-sync-head { display:flex; align-items:center; gap:.5rem; min-width:0; }
.platform-sync-pulse {
  width:.55rem; height:.55rem; border-radius:50%; background:var(--color-primary);
  box-shadow:0 0 0 4px color-mix(in srgb, var(--color-primary) 18%, transparent);
  flex-shrink:0;
}
.platform-sync-card strong {
  color:var(--color-text); font-size:.88rem; font-weight:900; white-space:nowrap;
}
.platform-sync-card small {
  margin-left:auto; color:var(--color-primary); font-size:.72rem; font-weight:900;
  text-transform:uppercase; letter-spacing:0; white-space:nowrap;
}
.platform-sync-card p {
  margin:.35rem 0 0; color:var(--color-muted); line-height:1.55; font-size:.9rem;
}
.platform-chip-row { display:flex; flex-wrap:wrap; gap:.5rem; }
.platform-chip {
  display:inline-flex; align-items:center; gap:.4rem; min-height:2rem; padding:.34rem .58rem .34rem .42rem;
  border-radius:.5rem; color:var(--color-text); background:color-mix(in srgb, var(--color-card) 72%, var(--color-panel));
  border:1px solid var(--color-border); font-size:.78rem; font-weight:900;
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset;
}
.platform-chip img {
  display:block; width:1.1rem; height:1.1rem; object-fit:contain; border-radius:.22rem;
}
.platform-chip-shopify { color:#0E8A55; }
.platform-chip-woo { color:#7B42C8; }
.platform-chip-tiktok { color:#101820; }
.platform-chip-ebay { color:#D97706; }
.platform-chip-amazon { color:#B45309; }
.dark .platform-sync-card {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-card) 84%, transparent), color-mix(in srgb, var(--color-panel-strong) 68%, transparent));
  box-shadow:0 16px 42px rgba(0,0,0,.28);
}
.dark .platform-chip {
  background:color-mix(in srgb, var(--color-card) 74%, var(--color-panel-strong));
  box-shadow:none;
}
.dark .platform-chip-tiktok { color:#EAF5F2; }
.platform-compat {
  display:grid; gap:.85rem; margin-top:1.5rem; padding-top:1.25rem;
  border-top:1px solid var(--color-border);
}
.platform-compat-copy { display:grid; gap:.2rem; }
.platform-compat-copy strong { color:var(--color-text); font-size:.85rem; }
.platform-compat-copy span { color:var(--color-muted); font-size:.8rem; line-height:1.45; }
.status-green { color:var(--color-success); }
.status-coral { color:var(--color-cta); }
.status-amber { color:var(--color-warning); }
.ops-panel,.ops-card,.resource-card,.quote-card {
  background:var(--color-card); border:1px solid var(--color-border);
  border-radius:.5rem; box-shadow:var(--shadow-card);
}
.platform-sync-card,.ops-panel,.ops-card,.resource-card,.quote-card,
.workflow-step,.timeline article,.mini-case-grid div,.cta-panel,
.hero-photo-frame,.section-photo,.service-tile-grid article,
.table-wrap,.contact-aside,.quote-handoff-card {
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}
.platform-sync-card:hover,.ops-panel:hover,.ops-card:hover,.resource-card:hover,.quote-card:hover,
.workflow-step:hover,.timeline article:hover,.mini-case-grid div:hover,.cta-panel:hover,
.hero-photo-frame:hover,.section-photo:hover,.service-tile-grid article:hover,
.table-wrap:hover,.contact-aside:hover,.quote-handoff-card:hover {
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));
  box-shadow:0 18px 52px rgba(15,32,29,.14);
}
.dark .platform-sync-card:hover,.dark .ops-panel:hover,.dark .ops-card:hover,.dark .resource-card:hover,.dark .quote-card:hover,
.dark .workflow-step:hover,.dark .timeline article:hover,.dark .mini-case-grid div:hover,.dark .cta-panel:hover,
.dark .hero-photo-frame:hover,.dark .section-photo:hover,.dark .service-tile-grid article:hover,
.dark .table-wrap:hover,.dark .contact-aside:hover,.dark .quote-handoff-card:hover {
  box-shadow:0 20px 58px rgba(0,0,0,.46);
}
.ops-panel { padding:1.15rem; }
.panel-header { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; margin-bottom:1rem; }
.panel-kicker { margin:0 0 .25rem; color:var(--color-muted); font-size:.8rem; font-weight:700; }
.panel-header h2 { margin:0; font-size:1.25rem; color:var(--color-text); }
.audit-list { display:grid; gap:.65rem; }
.audit-row {
  display:grid; grid-template-columns:auto 1fr auto; gap:.75rem; align-items:center;
  padding:.85rem; border:1px solid var(--color-border); border-radius:.5rem; background:var(--color-panel);
}
.audit-row strong { display:block; color:var(--color-text); font-size:.95rem; }
.audit-row p { margin:.15rem 0 0; color:var(--color-muted); font-size:.82rem; line-height:1.4; }
.audit-row > span:last-child { color:var(--color-primary); font-size:.8rem; font-weight:800; }
.audit-row.muted { opacity:.76; }
.audit-dot { width:.65rem; height:.65rem; border-radius:50%; background:var(--color-primary); box-shadow:0 0 0 4px rgba(11,122,109,.14); }
.panel-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:.6rem; margin-top:.9rem; }
.panel-metrics div { padding:.85rem .65rem; border-radius:.5rem; background:var(--color-panel-strong); }
.panel-metrics strong { display:block; color:var(--color-text); }
.panel-metrics span { display:block; color:var(--color-muted); font-size:.75rem; line-height:1.3; }
.section-heading { margin-bottom:2rem; }
.section-heading.compact,.split-heading.compact { margin-bottom:1.35rem; }
.section-heading h2 { font-size:clamp(2rem, 4vw, 3.2rem); max-width:1100px; }
.split-heading { display:grid; gap:1rem; align-items:end; }
.split-heading > p,.split-heading > .disclaimer { max-width:440px; margin:0; }
.workflow-grid { display:grid; grid-template-columns:1fr; gap:.8rem; }
.workflow-step,.timeline article {
  border:1px solid var(--color-border); border-radius:.5rem; background:var(--color-card); padding:1rem;
}
.workflow-step span,.timeline span {
  display:inline-flex; color:var(--color-primary); font-size:.78rem; font-weight:900; margin-bottom:.8rem;
}
.workflow-step h3,.timeline h3,.ops-card h3,.resource-card h2,.quote-card h3 {
  color:var(--color-text); margin:0 0 .55rem; font-weight:800; line-height:1.15;
}
.workflow-step p,.timeline p,.ops-card p,.resource-card p,.quote-card p {
  color:var(--color-muted); line-height:1.65; margin:0;
}
.feature-grid,.mini-case-grid,.resource-grid,.service-tile-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
.ops-card { padding:1.25rem; }
.mini-case-grid div {
  border:1px solid var(--color-border); border-radius:.5rem; background:var(--color-card); padding:1.1rem;
}
.mini-case-grid strong { display:block; color:var(--color-text); font-size:1.45rem; margin-bottom:.25rem; }
.mini-case-grid span { color:var(--color-muted); }
.cta-panel {
  display:grid; gap:1.25rem; align-items:center; padding:1.4rem;
  border:1px solid var(--color-border); border-radius:.5rem; background:var(--color-card); box-shadow:var(--shadow-card);
}
.page-hero { background:var(--color-panel); }
.page-hero h1 { font-size:clamp(2.4rem, 6vw, 4.8rem); }
.page-hero p { margin:1rem 0 0; max-width:680px; }
.media-split {
  display:grid; gap:1.5rem; align-items:center;
}
.hero-photo-frame,.section-photo {
  margin:0; overflow:hidden; border-radius:.5rem; border:1px solid var(--color-border);
  background:var(--color-card); box-shadow:var(--shadow-card);
}
.hero-photo-frame img,.section-photo img {
  display:block; width:100%; height:100%; object-fit:cover;
}
.hero-photo-frame { aspect-ratio:16/10; position:relative; min-width:0; z-index:0; }
.section-photo { aspect-ratio:4/3; }
.section-photo img { aspect-ratio:inherit; }
.hero-photo-frame figcaption {
  position:absolute; left:.75rem; right:auto; bottom:.75rem; max-width:calc(100% - 1.5rem);
  padding:.4rem .6rem; color:#D6E6E2; background:rgba(10,18,25,.62);
  border:1px solid rgba(255,255,255,.16); border-radius:.3rem;
  font-size:.68rem; line-height:1.4; backdrop-filter:blur(8px);
}
.service-tile-grid article {
  border:1px solid var(--color-border); border-radius:.5rem; background:var(--color-card);
  padding:1.1rem; box-shadow:var(--shadow-card);
}
.service-tile-grid span {
  display:inline-flex; color:var(--color-primary); font-size:.78rem; font-weight:900; margin-bottom:.8rem;
}
.service-tile-grid h3 { color:var(--color-text); margin:0 0 .55rem; font-weight:800; line-height:1.15; }
.service-tile-grid p { color:var(--color-muted); line-height:1.65; margin:0; }
.feature-grid.tight { margin-top:1.25rem; }
.timeline { display:grid; gap:.85rem; }
.disclaimer { font-size:.9rem; }
.quote-scroller {
  display:grid; grid-auto-flow:column; grid-auto-columns:minmax(280px, 350px); gap:.9rem;
  overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory;
  scrollbar-width:thin; padding:.25rem .25rem 1rem; margin:0 -.25rem;
}
.conversion-quote-scroller {
  display:grid; grid-auto-flow:column; grid-auto-columns:minmax(260px, 84vw); gap:.9rem;
  overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory;
  scrollbar-width:thin; padding:.25rem .25rem 1rem; margin:0 -.25rem;
}
.conversion-quote-card {
  scroll-snap-align:start; overflow:hidden; display:flex; flex-direction:column;
  min-width:0; border:1px solid var(--color-border); border-radius:.5rem;
  background:var(--color-card); box-shadow:var(--shadow-card);
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
.conversion-quote-card:hover { transform:translateY(-2px); border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border)); box-shadow:var(--shadow-card-hover); }
.quote-media { position:relative; overflow:hidden; background:var(--color-panel); }
.conversion-quote-card .quote-media { aspect-ratio:1/1; border-bottom:1px solid var(--color-border); }
.quote-media img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.illustration-badge {
  position:absolute; inset-block-start:.75rem; inset-inline-end:.75rem; z-index:1;
  max-width:calc(100% - 1.5rem); padding:.36rem .55rem; border:1px solid rgba(255,255,255,.42);
  border-radius:.3rem; background:rgba(10,18,25,.8); color:#EAF5F2;
  font-size:.67rem; font-weight:700; line-height:1.2; letter-spacing:.04em; backdrop-filter:blur(8px);
  font-family:var(--font-mono); text-transform:uppercase;
}
.conversion-quote-body { display:flex; flex:1; flex-direction:column; gap:.62rem; padding:1rem; }
.conversion-quote-body h3 { margin:0; color:var(--color-text); font-size:1.05rem; line-height:1.25; }
.conversion-quote-body > p { margin:0; color:var(--color-muted); font-size:.84rem; line-height:1.5; }
.conversion-quote-body dl { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:.35rem; margin:.2rem 0; }
.conversion-quote-body dl div { min-width:0; padding:.55rem .45rem; border-top:1px solid var(--color-border); }
.conversion-quote-body dt { color:var(--color-muted); font-size:.66rem; font-weight:800; line-height:1.3; }
.conversion-quote-body dd { margin:.2rem 0 0; color:var(--color-text); font-size:.78rem; font-weight:900; line-height:1.3; overflow-wrap:anywhere; }
.conversion-quote-body .quote-detail { font-size:.85rem; }
.conversion-quote-card > .quote-card-link,.quote-card > .quote-card-link {
  display:flex; flex-direction:column; flex:1; min-width:0;
  color:inherit; text-decoration:none;
}
.quote-view-more-link { justify-self:end; white-space:nowrap; }
.quote-view-more-row { display:flex; justify-content:center; margin-top:.5rem; }
.quote-view-more-arrow { display:inline-block; margin-inline-start:.35rem; }
.reason-grid { display:grid; grid-template-columns:1fr; }
.reason-grid article { padding:1.25rem 0; border-top:1px solid var(--color-border); }
.reason-grid article > span { color:var(--color-primary); font-size:.75rem; font-weight:900; }
.reason-grid h3 { margin:.55rem 0 .4rem; color:var(--color-text); font-size:1.05rem; }
.reason-grid p { margin:0; color:var(--color-muted); line-height:1.65; }
.evidence-band { background:var(--color-panel); border-top:1px solid var(--color-border); border-bottom:1px solid var(--color-border); }
.material-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.material-placeholder {
  position:relative; min-height:210px; aspect-ratio:4/3; margin:0; overflow:hidden;
  border:1px solid var(--color-border); border-radius:.5rem; background:var(--color-bg);
  box-shadow:var(--shadow-card); transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
.material-placeholder::after {
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, transparent 38%, rgba(8,15,21,.2) 58%, rgba(8,15,21,.92) 100%);
}
.material-placeholder img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.material-placeholder-copy {
  position:absolute; inset-inline:0; inset-block-end:0; z-index:2; display:grid; gap:.24rem;
  padding:1rem; color:#EAF5F2;
}
.material-placeholder-copy span { color:#5EEAD4; font-size:.7rem; font-weight:700; letter-spacing:.08em; }
.material-placeholder-copy strong { color:#fff; font-size:.92rem; line-height:1.3; }
.material-placeholder-copy small {
  width:max-content; max-width:100%; margin-top:.15rem; padding:.28rem .45rem;
  border:1px solid rgba(255,255,255,.26); border-radius:.3rem; color:#D6E6E2;
  background:rgba(10,18,25,.55); font-size:.65rem; font-weight:700; line-height:1.2; backdrop-filter:blur(6px);
}
.service-scope { display:grid; gap:1.5rem; }
.scope-list { display:grid; }
.scope-list article { padding:1rem 0; border-top:1px solid var(--color-border); }
.scope-list strong { color:var(--color-text); }
.scope-list p { margin:.35rem 0 0; color:var(--color-muted); line-height:1.6; }
.quick-quote-section { background:#0E1A24; border-top:1px solid #26333F; }
.dark .quick-quote-section { background:#080F15; }
.quick-quote-grid { display:grid; gap:1.5rem; align-items:start; }
.quick-quote-copy h2 { margin:0; color:#EAF5F2; font-size:clamp(2rem, 5vw, 3.6rem); line-height:1.05; }
.quick-quote-copy > p:not(.eyebrow) { color:#9DB3AD; line-height:1.7; }
.quick-quote-copy .eyebrow { color:#5EEAD4; }
.quick-quote-promise { display:grid; gap:.25rem; margin-top:1.2rem; padding-top:1rem; border-top:1px solid #26333F; }
.quick-quote-promise strong { color:#5EEAD4; }
.quick-quote-promise span { color:#9DB3AD; font-size:.85rem; }
.quote-handoff-card {
  display:grid; gap:1.15rem; padding:clamp(1.25rem, 3vw, 2rem);
  background:var(--color-card); border:1px solid var(--color-border);
  border-radius:.5rem; box-shadow:var(--shadow-card);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.quote-handoff-card:hover {
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));
  box-shadow:var(--shadow-card-hover);
}
.quote-handoff-card h3 { margin:0; color:var(--color-text); font-size:1.55rem; }
.quote-handoff-list { display:grid; gap:.85rem; margin:0; padding:0; list-style:none; }
.quote-handoff-list li { position:relative; padding-inline-start:1.65rem; color:var(--color-text); line-height:1.55; }
.quote-handoff-list li::before {
  content:""; position:absolute; inset-inline-start:0; top:.45rem;
  width:.7rem; height:.7rem; border-radius:50%; background:var(--color-primary);
}
.quote-handoff-card .btn-primary { min-height:44px; width:100%; }
.quote-handoff-note { margin:0; color:var(--color-muted); font-size:.85rem; line-height:1.55; }
.quick-quote-section .quote-handoff-card { background:#13232E; border-color:#30414E; }
.quick-quote-section .quote-handoff-card h3,
.quick-quote-section .quote-handoff-list li { color:#EAF5F2; }
.quick-quote-section .quote-handoff-note { color:#9DB3AD; }
.quote-card {
  overflow:hidden; scroll-snap-align:start; display:flex; flex-direction:column; min-width:0;
  border:1px solid var(--color-border); border-radius:.5rem;
  background:var(--color-card); box-shadow:var(--shadow-card);
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
.quote-card:hover {
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));
  box-shadow:var(--shadow-card-hover);
}
.quote-card .quote-media { aspect-ratio:1/1; border-bottom:1px solid var(--color-border); }
.quote-body { padding:1rem; display:flex; flex-direction:column; gap:.62rem; flex:1; }
.quote-body h3 { margin:0; color:var(--color-text); font-size:1.05rem; line-height:1.25; }
.quote-body > p { margin:0; color:var(--color-muted); font-size:.84rem; line-height:1.5; }
.quote-body dl { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:.35rem; margin:.2rem 0; }
.quote-body dl div { min-width:0; padding:.55rem .45rem; border-top:1px solid var(--color-border); }
.quote-body dt { color:var(--color-muted); font-size:.66rem; font-weight:800; line-height:1.3; }
.quote-body dd { margin:.2rem 0 0; color:var(--color-text); font-size:.78rem; font-weight:900; line-height:1.3; overflow-wrap:anywhere; }
.service-note { font-size:.86rem; }
.quote-detail,.text-link { color:var(--color-primary); font-weight:800; text-decoration:none; }
.quote-detail { margin-top:auto; }
.quote-detail:hover,.text-link:hover { text-decoration:underline; text-underline-offset:3px; }
.table-wrap { overflow-x:auto; border:1px solid var(--color-border); border-radius:.5rem; box-shadow:var(--shadow-card); }
.contact-grid { display:grid; gap:1.25rem; }
.check-list { padding:0; margin:0; list-style:none; display:grid; gap:.85rem; }
.check-list li { color:var(--color-text); padding-left:1.6rem; position:relative; line-height:1.5; }
.check-list li::before { content:""; position:absolute; left:0; top:.45rem; width:.7rem; height:.7rem; border-radius:50%; background:var(--color-primary); }
.contact-method { margin-top:1rem; padding-top:1rem; border-top:1px solid var(--color-border); }
.contact-method span { display:block; color:var(--color-muted); font-size:.8rem; font-weight:800; text-transform:uppercase; }
.contact-method a,.contact-method strong { color:var(--color-text); font-weight:800; text-decoration:none; }
.contact-aside,.quote-handoff-card {
  background:var(--color-card); border:1px solid var(--color-border);
  border-radius:.5rem; box-shadow:var(--shadow-card);
}
.ops-panel,.ops-card,.resource-card,.quote-card,.workflow-step,.timeline article,
.mini-case-grid div,.cta-panel,.service-tile-grid article,
.contact-aside,.quote-handoff-card {
  background:var(--color-card);
}
.dark .ops-panel,.dark .ops-card,.dark .resource-card,.dark .quote-card,.dark .workflow-step,.dark .timeline article,
.dark .mini-case-grid div,.dark .cta-panel,.dark .service-tile-grid article,
.dark .contact-aside,.dark .quote-handoff-card {
  background:var(--color-card);
}
.contact-aside { padding:1.25rem; }
.contact-aside h2 { margin:0 0 1rem; color:var(--color-text); font-size:1.45rem; line-height:1.2; }
.resource-card { padding:1.25rem; display:flex; flex-direction:column; gap:.75rem; overflow:hidden; }
.resource-grid.visual .resource-card { padding:0; }
.resource-grid.visual .resource-card > *:not(img) { margin-left:1.1rem; margin-right:1.1rem; }
.resource-grid.visual .resource-card > :last-child { margin-bottom:1.1rem; }
.resource-card img { width:100%; aspect-ratio:16/10; object-fit:cover; background:var(--color-panel); }
.resource-card h2 { font-size:1.35rem; }
.resource-card h2 a { color:inherit; text-decoration:none; }
.resource-card h2 a:hover { color:var(--color-primary); }
.resource-meta { color:var(--color-muted); font-size:.85rem; margin:0; }

@media (min-width: 640px) {
  .workflow-grid { grid-template-columns:repeat(2,1fr); }
  .feature-grid,.mini-case-grid,.service-tile-grid { grid-template-columns:repeat(2,1fr); }
  .conversion-quote-scroller { grid-auto-columns:330px; }
  .reason-grid,.material-grid { grid-template-columns:repeat(2,1fr); gap:0 1.25rem; }
}
@media (min-width: 900px) {
  .hero-ops-grid { grid-template-columns:minmax(0,.9fr) minmax(420px,1fr); }
  .media-split { grid-template-columns:minmax(0,.9fr) minmax(420px,1fr); gap:2.5rem; }
  .media-split.reverse { grid-template-columns:minmax(420px,1fr) minmax(0,.9fr); }
  .split-heading { grid-template-columns:1fr auto; }
  .workflow-grid.four,.workflow-grid { grid-template-columns:repeat(4,1fr); }
  .feature-grid { grid-template-columns:repeat(4,1fr); }
  .feature-grid.three { grid-template-columns:repeat(3,1fr); }
  .feature-grid.tight { grid-template-columns:1fr; }
  .service-tile-grid { grid-template-columns:repeat(3,1fr); }
  .timeline { grid-template-columns:repeat(3,1fr); }
  .contact-grid { grid-template-columns:.8fr 1.2fr; align-items:start; }
  .resource-grid { grid-template-columns:repeat(2,1fr); }
  .cta-panel { grid-template-columns:1fr auto; padding:2rem; }
  .platform-compat { grid-template-columns:minmax(220px,.65fr) 1.35fr; align-items:center; }
  .reason-grid { grid-template-columns:repeat(4,1fr); gap:0 1.5rem; }
  .material-grid { grid-template-columns:repeat(4,1fr); }
  .service-scope { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:start; }
  .quick-quote-grid { grid-template-columns:minmax(0,.8fr) minmax(460px,1fr); gap:4rem; }
}
@media (min-width: 1100px) {
  .hero-visual-grid {
    grid-template-columns:minmax(0,1fr) minmax(320px,.86fr);
    gap:clamp(2rem, 5vw, 4.5rem);
  }
}
@media (hover:hover) {
  .conversion-quote-card:hover .quote-media img,.quote-card:hover .quote-media img,.material-placeholder:hover img { transform:scale(1.025); }
  .material-placeholder:hover { transform:translateY(-2px); border-color:var(--color-primary); box-shadow:var(--shadow-card-hover); }
}
:focus-visible { outline:3px solid color-mix(in srgb, var(--color-primary) 68%, transparent); outline-offset:3px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}

/* Partners page */
.aff-case-grid { display:grid; grid-template-columns:1fr; gap:.85rem; }
.aff-case-card { display:flex; flex-direction:column; gap:.55rem; }
.aff-case-commission { color:var(--color-text); font-family:var(--font-mono); font-size:1.3rem; font-weight:700; }
.aff-case-card p { color:var(--color-muted); font-size:.85rem; margin:0; }
.partner-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
.partner-card {
  min-width:0; padding:1.35rem; border:1px solid var(--color-border);
  border-radius:.5rem; background:var(--color-card); box-shadow:var(--shadow-card);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.partner-card:hover {
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));
  box-shadow:0 18px 52px rgba(15,32,29,.14);
}
.dark .partner-card:hover { box-shadow:0 20px 58px rgba(0,0,0,.46); }
.partner-card > span,.partner-email span {
  color:var(--color-primary); font-family:var(--font-mono);
  font-size:.75rem; font-weight:700; text-transform:uppercase;
}
.partner-card h3 { margin:.8rem 0 .55rem; color:var(--color-text); font-size:1.25rem; line-height:1.2; }
.partner-card p { margin:0; color:var(--color-muted); line-height:1.65; }
.partner-principles {
  display:grid; grid-template-columns:1fr; gap:0; margin:0; padding:0; list-style:none;
  border-top:1px solid var(--color-border);
}
.partner-principles li {
  padding:1rem 0; border-bottom:1px solid var(--color-border);
  color:var(--color-text); font-weight:700;
}
.partner-email { display:flex; flex-wrap:wrap; gap:.45rem .75rem; align-items:center; }
.partner-email a { color:var(--color-primary); font-weight:700; overflow-wrap:anywhere; }
.partner-contact-panel .btn-primary { min-height:44px; }
.join-band { background:var(--color-panel); border-top:1px solid var(--color-border); border-bottom:1px solid var(--color-border); }
@media (min-width:640px) {
  .aff-case-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .partner-grid,.partner-principles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .partner-principles li:nth-child(odd) { padding-inline-end:1rem; }
}
@media (min-width:900px) {
  .workflow-grid.three-col { grid-template-columns:repeat(3,1fr); }
  .join-role-grid { grid-template-columns:repeat(4,1fr); }
}

/* Careers page — long-term job ads */
.job-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
.job-card { display:flex; flex-direction:column; gap:.55rem; padding:1.35rem; }
.job-card-head { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.job-tag {
  font-family:var(--font-mono); font-size:.72rem; font-weight:700; letter-spacing:.08em;
  color:var(--color-primary); text-transform:uppercase;
}
.job-card h3 { margin:0; color:var(--color-text); font-size:1.25rem; line-height:1.2; }
.job-meta { margin:0 0 .35rem; color:var(--color-muted); font-family:var(--font-mono); font-size:.75rem; }
.job-label {
  margin-top:.45rem; color:var(--color-primary); font-family:var(--font-mono);
  font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
}
.job-list { margin:0; padding-left:1.1rem; display:grid; gap:.3rem; }
.job-list li { color:var(--color-muted); line-height:1.6; font-size:.92rem; }
.job-card > p:not(.job-meta) { margin:0; color:var(--color-muted); line-height:1.6; font-size:.92rem; }
@media (min-width:900px) { .job-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Affiliate join CTA: center button below copy */
.cta-panel-center { grid-template-columns:1fr; justify-items:center; text-align:center; }
.cta-panel-center .btn-primary { justify-self:center; }

/* Footer payment marks */
.footer-payments {
  display:flex; flex-direction:column; align-items:flex-end; gap:.7rem;
}
.footer-payments-label {
  margin:0; color:#94a3b8; font-size:.7rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
}
.footer-payment-marks {
  display:grid; grid-template-columns:repeat(2, 6.5rem);
  justify-content:flex-end; align-items:center;
  gap:.4rem; margin:0; padding:0; list-style:none;
}
@media (min-width:640px) {
  .footer-payment-marks { grid-template-columns:repeat(4, 6.5rem); }
}
.footer-payment-mark {
  display:inline-flex; align-items:center; justify-content:center;
  width:100%; height:2rem; min-width:3.1rem; padding:0 .5rem;
  background:#fff; border-radius:.35rem;
  box-shadow:0 1px 0 rgba(255,255,255,.08);
}
.footer-payment-mark img {
  display:block; height:1.05rem; width:auto; max-width:5.4rem;
  object-fit:contain;
}
.footer-payment-mark-text {
  color:#0f172a; font-size:.68rem; font-weight:700;
  letter-spacing:.04em; text-transform:uppercase; white-space:nowrap;
}

.footer-email {
  display:grid; gap:.15rem;
}
.footer-email-type {
  color:#64748b; font-size:.68rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase;
}
.footer-email a {
  color:#94a3b8; font-size:.875rem;
  transition:color .2s;
}
.footer-email a:hover { color:var(--color-primary); }
