/* Public homepage. Uses the design-system tokens from style.css. */

/* ── Hero ────────────────────────────────────────────────────────── */
.hx { position:relative; overflow:hidden; color:#fff;
  background:radial-gradient(1200px 600px at 85% -10%, #0E3B6E 0%, transparent 60%),
             radial-gradient(900px 500px at -10% 110%, #0B2C52 0%, transparent 55%),
             linear-gradient(160deg, var(--jc-navy) 0%, #021C35 55%, #03233F 100%); }
.hx::before { content:''; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:44px 44px; -webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 40%, #000 20%, transparent 75%); mask-image:radial-gradient(ellipse 80% 70% at 70% 40%, #000 20%, transparent 75%); }
.hx-glow { position:absolute; width:520px; height:520px; right:6%; top:8%; border-radius:50%; background:radial-gradient(circle, rgba(255,183,3,.22), transparent 65%); filter:blur(10px); animation:hx-breathe 7s ease-in-out infinite; pointer-events:none; }
@keyframes hx-breathe { 0%,100% { transform:scale(1); opacity:.8; } 50% { transform:scale(1.12); opacity:1; } }
.hx-grid { position:relative; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:56px; align-items:center; padding-top:76px; padding-bottom:96px; }
.hx-pill { display:inline-flex; align-items:center; gap:10px; height:34px; padding:0 14px; border-radius:99px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); font-size:15px; font-weight:500; color:var(--jc-text-on-dark-2); }
.hx-h1 { font-size:clamp(38px, 5vw, 64px); font-weight:700; line-height:1.03; letter-spacing:-0.035em; margin:22px 0 20px; }
.hx-h1 span { background:linear-gradient(90deg, var(--jc-gold), #FFD166 60%, #FFE8A3); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hx-lead { font-size:19px; line-height:1.65; color:var(--jc-text-on-dark-2); max-width:540px; }

.hx-search { margin-top:30px; max-width:600px; }
.hx-tabs { display:flex; gap:4px; margin-bottom:10px; }
.hx-tabs button { display:inline-flex; align-items:center; gap:7px; height:36px; padding:0 14px; border-radius:99px; font-size:15px; font-weight:600; color:var(--jc-text-on-dark-2); transition:background var(--dur-fast), color var(--dur-fast); }
.hx-tabs button [data-lucide] { width:15px; height:15px; }
.hx-tabs button:hover { color:#fff; background:rgba(255,255,255,.06); }
.hx-tabs button.is-active { background:#fff; color:var(--jc-navy); }
.hx-form { display:flex; align-items:stretch; height:60px; background:#fff; border-radius:var(--r-lg); box-shadow:0 24px 60px rgba(0,0,0,.35); color:var(--jc-text); animation:jc-fade-up 260ms var(--ease); }
.hx-form .hs-field { display:flex; align-items:center; gap:10px; padding:0 16px; flex:1; min-width:0; }
.hx-form .hs-field.loc { flex:0 0 185px; border-left:1px solid var(--jc-border); }
.hx-form .hs-field [data-lucide] { color:var(--jc-text-muted); width:17px; height:17px; }
.hx-form input, .hx-form select { border:0; outline:0; width:100%; font-size:16.5px; background:transparent; color:var(--jc-text); }
.hx-form .btn { height:auto; margin:7px; padding:0 22px; }
.hx-send-copy { font-size:16px; color:var(--jc-text-2); }
.hx-popular { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:18px; font-size:15px; color:var(--jc-text-on-dark-3); }
.hx-popular a { color:var(--jc-text-on-dark-2); padding:4px 10px; border:1px solid rgba(255,255,255,.14); border-radius:99px; transition:all var(--dur-fast); }
.hx-popular a:hover { color:var(--jc-navy); background:var(--jc-gold); border-color:var(--jc-gold); }
.hx-trust { display:flex; gap:28px; flex-wrap:wrap; margin-top:34px; padding-top:22px; border-top:1px solid rgba(255,255,255,.1); max-width:600px; }
.hx-trust div { display:flex; align-items:center; gap:9px; font-size:15.5px; color:var(--jc-text-on-dark-2); }
.hx-trust strong { color:#fff; font-weight:600; }
.hx-trust [data-lucide] { width:17px; height:17px; color:var(--jc-gold); }

/* Hero visual */
.hx-visual { position:relative; padding:30px 10px; }
.hx-card { position:relative; background:#fff; color:var(--jc-text); border-radius:18px; box-shadow:0 40px 80px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.08); overflow:hidden; animation:hx-float 6s ease-in-out infinite; }
@keyframes hx-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-8px); } }
.hx-card-bar { display:flex; align-items:center; justify-content:space-between; padding:14px 18px; border-bottom:1px solid var(--jc-border); font-size:15px; font-weight:600; }
.hx-card-bar > span:first-child { display:flex; align-items:center; gap:8px; } .hx-card-bar [data-lucide] { width:16px; height:16px; color:var(--jc-blue); }
.hx-job { padding:16px 18px; background:var(--jc-surface-2); }
.hx-job-title { font-size:18px; font-weight:700; margin-top:4px; letter-spacing:-0.01em; transition:opacity 220ms; }
.hx-job-meta { display:flex; gap:14px; flex-wrap:wrap; font-size:14px; color:var(--jc-text-2); margin-top:6px; }
.hx-job-meta span { display:inline-flex; align-items:center; gap:4px; } .hx-job-meta b { font-weight:500; } .hx-job-meta [data-lucide] { width:13px; height:13px; }
.hx-skillrow { display:flex; gap:6px; flex-wrap:wrap; margin-top:10px; }
.hx-scan { height:2px; background:var(--jc-border); overflow:hidden; }
.hx-scan span { display:block; height:100%; width:30%; background:linear-gradient(90deg, transparent, var(--jc-gold), transparent); animation:hx-scan 1.6s linear infinite; }
@keyframes hx-scan { from { transform:translateX(-100%); } to { transform:translateX(400%); } }
.hx-matches { min-height:268px; }
.hx-m { display:flex; align-items:center; gap:12px; padding:12px 18px; border-bottom:1px solid var(--jc-border); opacity:0; transform:translateY(8px); transition:opacity 380ms var(--ease), transform 380ms var(--ease); }
.hx-m.is-in { opacity:1; transform:none; }
.hx-m:last-child { border-bottom:0; }
.hx-m .n { font-size:15.5px; font-weight:600; } .hx-m .s { font-size:14px; color:var(--jc-text-2); }
.hx-m .bar { flex:0 0 72px; height:5px; border-radius:99px; background:#EDF1F5; overflow:hidden; margin-left:auto; }
.hx-m .bar i { display:block; height:100%; width:0; border-radius:99px; background:var(--jc-success); transition:width 900ms var(--ease); }
.hx-m .pct { width:40px; text-align:right; font-size:16px; font-weight:700; color:var(--jc-success-fg); font-variant-numeric:tabular-nums; }
.hx-m.top { background:linear-gradient(90deg, rgba(255,183,3,.10), transparent 70%); }
.hx-float { position:absolute; z-index:2; display:flex; align-items:center; gap:10px; padding:10px 14px 10px 10px; background:#fff; color:var(--jc-text); border-radius:12px; box-shadow:0 18px 40px rgba(0,0,0,.28); font-size:14px; }
.hx-float strong { display:block; font-size:15px; } .hx-float span { color:var(--jc-text-2); }
.hx-float-ic { width:34px; height:34px; border-radius:9px; display:grid; place-items:center; }
.hx-float-ic [data-lucide] { width:17px; height:17px; }
.hx-float-ic.green { background:var(--jc-success-bg); color:var(--jc-success); } .hx-float-ic.gold { background:var(--jc-gold-tint); color:var(--jc-gold-dark); }
.hx-float-a { left:-36px; bottom:-18px; animation:hx-float 5s ease-in-out infinite reverse; }
.hx-float-b { right:-26px; top:-30px; animation:hx-float 6.5s ease-in-out infinite; }

/* Stats strip */
.hx-stats { background:#fff; border-bottom:1px solid var(--jc-border); }
.hx-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.hx-stats-grid > div { padding:30px 28px; border-left:1px solid var(--jc-border); }
.hx-stats-grid > div:first-child { border-left:0; padding-left:0; }
.hx-stat-v { font-size:34px; font-weight:700; color:var(--jc-navy); letter-spacing:-0.025em; line-height:1.1; font-variant-numeric:tabular-nums; }
.hx-stat-v small { font-size:18px; color:var(--jc-text-muted); font-weight:600; margin-left:2px; }
.hx-stat-l { font-size:15px; color:var(--jc-text-2); margin-top:4px; }

/* ── Categories ──────────────────────────────────────────────────── */
.cx-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.cx-tile { position:relative; display:flex; flex-direction:column; padding:22px; background:#fff; border:1px solid var(--jc-border); border-radius:var(--r-xl); overflow:hidden;
  transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-color var(--dur); }
.cx-tile::after { content:''; position:absolute; left:0; right:0; top:0; height:3px; background:var(--tone); transform:scaleX(0); transform-origin:left; transition:transform var(--dur-slow) var(--ease); }
.cx-tile:hover { transform:translateY(-4px); box-shadow:var(--sh-hover); border-color:transparent; }
.cx-tile:hover::after { transform:scaleX(1); }
.cx-ic { width:46px; height:46px; border-radius:12px; display:grid; place-items:center; color:var(--tone); background:color-mix(in srgb, var(--tone) 11%, #fff); margin-bottom:18px; transition:background var(--dur), color var(--dur); }
.cx-ic [data-lucide] { width:21px; height:21px; }
.cx-tile:hover .cx-ic { background:var(--tone); color:#fff; }
.cx-tile h3 { font-size:17px; font-weight:600; }
.cx-tile p { font-size:15px; color:var(--jc-text-2); margin-top:4px; line-height:1.55; }
.cx-foot { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:16px; font-size:14px; color:var(--jc-text-muted); }
.cx-tile p + .cx-foot { margin-top:16px; }
.cx-foot [data-lucide] { width:16px; height:16px; transition:transform var(--dur) var(--ease), color var(--dur); }
.cx-tile:hover .cx-foot [data-lucide] { transform:translate(2px,-2px); color:var(--tone); }

/* ── How it works ────────────────────────────────────────────────── */
.hw { border-top:1px solid var(--jc-border); border-bottom:1px solid var(--jc-border); }
.hw-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; animation:jc-fade-up 360ms var(--ease); }
.hw-step { position:relative; padding:24px; border-radius:var(--r-xl); background:var(--jc-surface-2); border:1px solid var(--jc-border); }
.hw-num { display:flex; align-items:center; gap:10px; margin-bottom:18px; }
.hw-num b { width:30px; height:30px; border-radius:50%; display:grid; place-items:center; font-size:14px; font-weight:700; background:var(--jc-navy); color:var(--jc-gold); }
.hw-num i { flex:1; height:1px; background:repeating-linear-gradient(90deg, var(--jc-border-strong) 0 6px, transparent 6px 10px); }
.hw-ic { width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:#fff; color:var(--jc-blue); box-shadow:var(--sh-xs); border:1px solid var(--jc-border); }
.hw-ic [data-lucide] { width:20px; height:20px; }
.hw-step h3 { font-size:18px; font-weight:600; margin-top:16px; }
.hw-step p { font-size:15.5px; color:var(--jc-text-2); line-height:1.6; margin-top:6px; }

/* ── Matching engine explainer ───────────────────────────────────── */
.mx-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:64px; align-items:center; }
.mx-list { display:grid; gap:12px; margin-top:24px; font-size:16.5px; }
.mx-list li { display:flex; gap:10px; align-items:center; } .mx-list [data-lucide] { color:var(--jc-success); }
.mx-card { background:#fff; border:1px solid var(--jc-border); border-radius:18px; padding:24px; box-shadow:0 30px 60px rgba(15,23,42,.08); }
.mx-head { display:flex; align-items:center; gap:14px; padding-bottom:18px; border-bottom:1px solid var(--jc-border); }
.mx-card .score-ring { width:60px; height:60px; } .mx-card .score-ring span { width:48px; height:48px; font-size:16px; }
.mx-card .b-row small { font-weight:500; }

/* ── Modules ─────────────────────────────────────────────────────── */
.module-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.mdx { position:relative; overflow:hidden; display:flex; flex-direction:column; gap:14px; padding:32px; border-radius:18px; border:1px solid var(--jc-border); }
.mdx h3 { font-size:22px; font-weight:700; letter-spacing:-0.015em; }
.mdx p { font-size:16.5px; line-height:1.6; }
.mdx ul { display:grid; gap:9px; font-size:16px; margin-bottom:6px; }
.mdx li { display:flex; gap:9px; align-items:center; } .mdx li [data-lucide] { width:16px; height:16px; }
.mdx-ic { width:52px; height:52px; border-radius:14px; display:grid; place-items:center; }
.mdx-ic [data-lucide] { width:24px; height:24px; }
.mdx-jobs { background:linear-gradient(150deg, var(--jc-navy), #0B3358); color:#fff; border-color:transparent; }
.mdx-jobs p, .mdx-jobs ul { color:var(--jc-text-on-dark-2); } .mdx-jobs li [data-lucide] { color:var(--jc-gold); }
.mdx-jobs .mdx-ic { background:var(--jc-gold); color:var(--jc-navy); }
.mdx-jobs::after { content:''; position:absolute; right:-80px; bottom:-80px; width:260px; height:260px; border-radius:50%; background:radial-gradient(circle, rgba(255,183,3,.22), transparent 70%); }
.mdx-delivery { background:linear-gradient(150deg, #FFFBEF, #fff 60%); }
.mdx-delivery p, .mdx-delivery ul { color:var(--jc-text-2); } .mdx-delivery li [data-lucide] { color:var(--jc-success); }
.mdx-delivery .mdx-ic { background:var(--jc-navy); color:var(--jc-gold); }

/* ── Escrow band ─────────────────────────────────────────────────── */
.band { position:relative; background:var(--jc-navy); color:#fff; overflow:hidden; }
.band::before { content:''; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px); background-size:40px 40px; -webkit-mask-image:linear-gradient(180deg,#000,transparent); mask-image:linear-gradient(180deg,#000,transparent); }
.band-grid { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:center; }
.band h2 { font-size:var(--fs-page); font-weight:700; letter-spacing:-0.02em; line-height:1.2; margin-top:12px; }
.band p.lead { font-size:17px; color:var(--jc-text-on-dark-2); line-height:1.7; margin-top:12px; max-width:480px; }
.band-list { margin-top:28px; display:flex; flex-direction:column; gap:14px; }
.band-list div { display:flex; gap:12px; font-size:16px; color:var(--jc-text-on-dark-2); }
.band-list [data-lucide] { color:var(--jc-gold); }
.esc-flow { display:flex; flex-direction:column; }
.esc-step { display:flex; gap:16px; align-items:center; padding:18px 20px; border:1px solid rgba(255,255,255,.12); border-radius:var(--r-lg); background:rgba(255,255,255,.04); }
.esc-step b { display:block; font-size:16px; color:#fff; } .esc-step span { font-size:15px; color:var(--jc-text-on-dark-2); }
.esc-ic { width:44px; height:44px; flex-shrink:0; border-radius:12px; display:grid; place-items:center; background:rgba(255,255,255,.08); color:#fff; }
.esc-ic.gold { background:var(--jc-gold); color:var(--jc-navy); }
.esc-line { width:2px; height:22px; margin-left:41px; background:linear-gradient(var(--jc-gold), rgba(255,183,3,.2)); }

/* ── Reviews ─────────────────────────────────────────────────────── */
.rv { display:flex; flex-direction:column; gap:16px; padding:26px; background:#fff; border:1px solid var(--jc-border); border-radius:var(--r-xl); box-shadow:var(--sh-card); }
.rv-stars span { font-size:20px; color:var(--jc-border-strong); } .rv-stars span.on { color:var(--jc-gold); }
.rv blockquote { font-size:17px; line-height:1.65; color:var(--jc-text); flex:1; }
.rv figcaption { display:flex; align-items:center; gap:12px; padding-top:16px; border-top:1px solid var(--jc-border); font-size:15.5px; }

/* ── FAQ ─────────────────────────────────────────────────────────── */
.faq-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; align-items:start; }
.faq { display:grid; gap:10px; }
.faq details { border:1px solid var(--jc-border); border-radius:var(--r-lg); background:var(--jc-surface-2); transition:background var(--dur-fast), border-color var(--dur-fast); }
.faq details[open] { background:#fff; border-color:var(--jc-border-strong); box-shadow:var(--sh-xs); }
.faq summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; font-size:17px; font-weight:600; cursor:pointer; list-style:none; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary [data-lucide] { width:18px; height:18px; color:var(--jc-text-2); transition:transform var(--dur) var(--ease); }
.faq details[open] summary [data-lucide] { transform:rotate(45deg); color:var(--jc-navy); }
.faq details p { padding:0 20px 18px; font-size:16px; line-height:1.7; color:var(--jc-text-2); }

/* ── Final CTA ───────────────────────────────────────────────────── */
.cta { position:relative; overflow:hidden; padding:72px 0; color:#fff;
  background:radial-gradient(700px 300px at 90% 0%, rgba(255,183,3,.28), transparent 60%), linear-gradient(120deg, #0B3358, var(--jc-navy) 70%); }
.cta-inner { display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.cta h2 { font-size:34px; font-weight:700; letter-spacing:-0.02em; }
.cta p { font-size:17.5px; color:var(--jc-text-on-dark-2); margin-top:8px; max-width:560px; }

/* ── Responsive ──────────────────────────────────────────────────── */
@media (max-width:1100px) {
  .hx-grid { grid-template-columns:minmax(0,1fr); padding-top:56px; padding-bottom:72px; }
  .hx-visual { max-width:560px; }
  .cx-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hw-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mx-grid, .band-grid, .faq-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
}
@media (max-width:768px) {
  .hx-grid { padding-top:40px; padding-bottom:56px; gap:40px; }
  .hx-lead { font-size:17.5px; }
  .hx-tabs { overflow-x:auto; }
  .hx-tabs button { flex-shrink:0; }
  .hx-form { flex-direction:column; height:auto; }
  .hx-form .hs-field { height:52px; } .hx-form .hs-field.loc { flex:auto; border-left:0; border-top:1px solid var(--jc-border); }
  .hx-form .btn { height:46px; }
  .hx-float-a { left:0; bottom:-14px; } .hx-float-b { right:0; top:-8px; }
  .hx-stats-grid { grid-template-columns:repeat(2,1fr); }
  .hx-stats-grid > div { padding:20px 16px; } .hx-stats-grid > div:nth-child(3) { border-left:0; padding-left:0; }
  .hx-stats-grid > div:nth-child(n+3) { border-top:1px solid var(--jc-border); }
  .cx-grid, .hw-steps, .module-grid { grid-template-columns:minmax(0,1fr); }
  .mdx { padding:24px; }
  .cta h2 { font-size:26px; }
}
@media (prefers-reduced-motion: reduce) { .hx-card, .hx-float, .hx-glow, .hx-scan span { animation:none; } }
.mx-card .breakdown .b-row { grid-template-columns:100px minmax(0,1fr) 62px; }
.hx-card-bar .live-tag { margin-right:4px; }

/* Hero search hint + card link */
.hx-hint { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:10px; font-size:15px; color:var(--jc-text-on-dark-2); min-height:30px; }
.hx-hint [data-suggest-out] { display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap; }
.hx-hint [data-lucide] { width:14px; height:14px; color:var(--jc-gold); }
.hx-hint a { display:inline-flex; align-items:center; gap:4px; color:var(--jc-text-on-dark-2); border-bottom:1px solid rgba(255,255,255,.25); }
.hx-hint a:hover { color:#fff; }
.hx-chip { display:inline-flex; align-items:center; height:24px; padding:0 9px; border-radius:99px; background:rgba(255,183,3,.16); border:1px solid rgba(255,183,3,.45); color:#FFD166; font-size:14px; font-weight:600; }
.hx-card-foot { display:flex; align-items:center; justify-content:center; gap:6px; padding:12px; border-top:1px solid var(--jc-border); font-size:15px; font-weight:600; color:var(--jc-blue); background:var(--jc-surface-2); }
.hx-card-foot:hover { background:var(--jc-blue-tint); }
.hx-card-foot [data-lucide] { width:15px; height:15px; }
.hx-matches { min-height:252px; }

/* Earn section */
.ex { background:linear-gradient(180deg, var(--jc-bg), #fff); }
.ex-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ex-card { display:flex; flex-direction:column; gap:20px; padding:26px; background:#fff; border:1px solid var(--jc-border); border-radius:18px; box-shadow:var(--sh-card); }
.ex-card h3 { font-size:19px; font-weight:700; }
.ex-ic { width:46px; height:46px; border-radius:12px; display:grid; place-items:center; background:var(--jc-navy); color:var(--jc-gold); flex-shrink:0; }
.ex-ic.gold { background:var(--jc-gold); color:var(--jc-navy); } .ex-ic.red { background:var(--jc-error-bg); color:var(--jc-error); }
.ex-ic [data-lucide] { width:21px; height:21px; }
.ex-slider label { display:flex; justify-content:space-between; font-size:15px; font-weight:500; color:var(--jc-text-2); margin-bottom:8px; }
.ex-slider output { font-weight:700; color:var(--jc-text); font-variant-numeric:tabular-nums; }
.ex-slider input[type=range] { width:100%; accent-color:var(--jc-navy); height:6px; cursor:pointer; }
.ex-result { padding:18px; border-radius:var(--r-lg); background:var(--jc-surface-2); border:1px dashed var(--jc-border-strong); text-align:center; font-size:14.5px; color:var(--jc-text-2); display:flex; flex-direction:column; gap:2px; }
.ex-result strong { font-size:30px; font-weight:700; color:var(--jc-navy); letter-spacing:-0.02em; font-variant-numeric:tabular-nums; }
.ex-card .btn { margin-top:auto; }
.ex-need-list { display:grid; gap:8px; }
.ex-need { display:flex; align-items:center; gap:10px; padding:11px 14px; border-radius:var(--r-md); border:1px solid var(--jc-border); transition:border-color var(--dur-fast), background var(--dur-fast); }
.ex-need:hover { border-color:var(--jc-error); background:#FFF7F7; }
.ex-need strong { display:block; font-size:15.5px; } .ex-need small { font-size:14px; color:var(--jc-text-2); }
.ex-need [data-lucide] { width:16px; height:16px; color:var(--jc-text-muted); }
.ex-perks { display:grid; gap:8px; margin-top:auto; font-size:15px; color:var(--jc-text-2); }
.ex-perks li { display:flex; gap:8px; align-items:center; } .ex-perks [data-lucide] { width:15px; height:15px; color:var(--jc-success); }
@media (max-width:1100px) { .ex-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .ex-needed { grid-column:span 2; } }
@media (max-width:768px) { .ex-grid { grid-template-columns:minmax(0,1fr); } .ex-needed { grid-column:auto; } }
