/* ============================================================
   Wholesale From USA — marketplace design system
   Base, header, hero, product grid, cards, footer.
   (Appended in front of the existing page-specific styles.)
   ============================================================ */
:root{
  --ink:#102a33;
  --ink-soft:#3d5a64;
  --muted:#64787f;
  --brand:#0a7d8c;
  --brand-dark:#065a65;
  --brand-tint:#e6f4f5;
  --bg:#f3f6f7;
  --card:#ffffff;
  --line:#dde5e8;
  --gold:#e9a13b;
  --green:#178a4c;
  --green-tint:#e5f5ec;
  --radius:14px;
  --shadow:0 1px 2px rgba(16,42,51,.06),0 10px 28px rgba(16,42,51,.09);
  --shadow-sm:0 1px 2px rgba(16,42,51,.07),0 4px 12px rgba(16,42,51,.06);
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--font);
  color:var(--ink);
  background:var(--bg);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
body.marketplace{background:var(--bg)}
img{max-width:100%;height:auto}
a{color:var(--brand)}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em}
.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}
.eyebrow{
  display:inline-block;
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin:0 0 10px;
}
.muted{color:var(--muted)}
.grid{display:grid;gap:18px}

/* ---------- Buttons ---------- */
.button,.card-actions .secondary,.card-actions button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font);font-weight:700;font-size:14px;line-height:1;
  border-radius:9px;padding:12px 18px;cursor:pointer;text-decoration:none;
  border:1px solid transparent;transition:transform .12s ease,box-shadow .12s ease,background .12s ease;
}
.button{background:var(--brand);color:#fff;box-shadow:var(--shadow-sm)}
.button:hover{background:var(--brand-dark);transform:translateY(-1px)}
.button.secondary,.card-actions .secondary,.card-actions button{
  background:#fff;color:var(--brand-dark);border-color:#bcd6da;
}
.button.secondary:hover,.card-actions .secondary:hover,.card-actions button:hover{
  border-color:var(--brand);background:var(--brand-tint);transform:translateY(-1px);
}
.button:disabled{opacity:.55;cursor:default;transform:none}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(180deg,#0d2831,#102f39);
  color:#fff;border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 4px 18px rgba(9,25,31,.25);
}
.header-inner{
  max-width:1280px;margin:0 auto;padding:14px 24px;
  display:flex;align-items:center;gap:22px;
}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff;font-size:17px;white-space:nowrap}
.brand strong{font-weight:800}
.brand-mark{
  display:grid;place-items:center;width:36px;height:36px;border-radius:10px;
  background:linear-gradient(135deg,var(--brand),#0aa2b4);color:#fff;
  font-weight:800;font-size:19px;box-shadow:0 2px 8px rgba(10,125,140,.5);
}
.header-search{flex:1;display:flex;max-width:520px}
.header-search input{
  flex:1;height:42px;border:1px solid rgba(255,255,255,.16);border-right:0;
  background:rgba(255,255,255,.09);color:#fff;
  border-radius:10px 0 0 10px;padding:0 14px;font-size:14px;font-family:var(--font);
}
.header-search input::placeholder{color:rgba(255,255,255,.55)}
.header-search input:focus{outline:2px solid var(--brand);outline-offset:-2px;background:rgba(255,255,255,.13)}
.header-search button{
  height:42px;padding:0 20px;border:0;border-radius:0 10px 10px 0;cursor:pointer;
  background:var(--brand);color:#fff;font-weight:700;font-size:14px;font-family:var(--font);
}
.header-search button:hover{background:#0b8d9e}
.header-nav{display:flex;align-items:center;gap:20px;margin-left:auto}
.header-nav a{color:rgba(255,255,255,.82);text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap}
.header-nav a:hover{color:#fff}
.header-nav .nav-link-muted{color:rgba(255,255,255,.6)}
.nav-cta{
  background:var(--gold)!important;color:#102a33!important;
  padding:10px 16px!important;border-radius:9px!important;font-weight:800!important;
}
.nav-cta:hover{background:#f2b45c!important}

/* ---------- Marketplace layout ---------- */
.marketplace-shell{
  max-width:1280px;margin:0 auto;padding:28px 24px 60px;
  display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start;
}
.marketplace-main{min-width:0}

/* Category rail */
.category-rail{
  position:sticky;top:96px;background:var(--card);
  border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;box-shadow:var(--shadow-sm);
}
.category-rail h2{margin:0 0 14px;font-size:20px;color:var(--ink)}
.category-link{
  display:block;width:100%;text-align:left;cursor:pointer;
  border:1px solid transparent;background:transparent;border-radius:9px;
  padding:10px 12px;margin:2px 0;font-size:14px;font-weight:600;color:var(--ink-soft);
  font-family:var(--font);transition:background .12s ease;
}
.category-link:hover{background:var(--brand-tint);color:var(--brand-dark)}
.category-link.active{background:var(--brand);color:#fff;box-shadow:var(--shadow-sm)}
.rail-note{
  margin-top:18px;padding-top:16px;border-top:1px solid var(--line);
  font-size:12.5px;color:var(--muted);
}
.rail-note strong{display:block;color:var(--ink);font-size:13px;margin-bottom:4px}
.rail-note p{margin:0}

/* Hero */
.market-hero{
  position:relative;overflow:hidden;border-radius:18px;
  background:linear-gradient(120deg,#0c2730 0%,#0e5a64 60%,#0a7d8c 100%);
  color:#fff;padding:44px 40px;margin-bottom:26px;
  box-shadow:var(--shadow);
}
.market-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(420px 200px at 88% 12%,rgba(255,255,255,.10),transparent 70%),
    radial-gradient(300px 300px at 8% 108%,rgba(233,161,59,.16),transparent 70%);
}
.market-hero>*{position:relative}
.market-hero .eyebrow{color:#9fdbe1}
.market-hero h1{margin:0 0 12px;font-size:clamp(30px,4vw,46px);color:#fff;max-width:640px}
.hero-copy{margin:0;max-width:620px;color:rgba(255,255,255,.82);font-size:16.5px}
.hero-stats{display:flex;gap:36px;margin-top:26px;flex-wrap:wrap}
.hero-stats span{display:grid;gap:2px}
.hero-stats strong{font-size:19px;color:#fff}
.hero-stats small{color:rgba(255,255,255,.65);font-size:12.5px}

/* Toolbar / filters */
.toolbar{
  display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:20px 22px;margin-bottom:20px;box-shadow:var(--shadow-sm);
}
.toolbar h2{margin:0;font-size:22px}
#result-summary{margin:4px 0 0;font-size:13.5px}
.filter-form{display:flex;gap:10px;flex-wrap:wrap}
.filter-form input,.filter-form select{
  height:42px;border:1px solid #c3cfd4;border-radius:9px;padding:0 12px;
  font-size:14px;font-family:var(--font);color:var(--ink);background:#fff;
}
.filter-form input{min-width:220px}
.filter-form input:focus,.filter-form select:focus{outline:2px solid var(--brand);outline-offset:-2px;border-color:var(--brand)}
.filter-form button{
  height:42px;padding:0 22px;border:0;border-radius:9px;cursor:pointer;
  background:var(--ink);color:#fff;font-weight:700;font-size:14px;font-family:var(--font);
}
.filter-form button:hover{background:#1b3d47}

/* Product grid + cards */
.product-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:20px;
}
.product-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform .14s ease,box-shadow .14s ease;
}
.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.product-visual{
  aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;
  background:linear-gradient(135deg,#e8f1f2,#d3e6e8);
}
.product-visual span{font-size:64px;font-weight:800;color:var(--brand);opacity:.5}
.product-visual.has-image{background:#fff}
.product-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.product-card:hover .product-visual img{transform:scale(1.04)}
.product-body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}
.product-body h2{
  margin:0;font-size:16.5px;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.product-brand{margin:0;font-size:12.5px;color:var(--muted)}
.product-meta{
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding-top:12px;border-top:1px solid #edf1f2;margin-top:auto;
}
.product-meta>span{display:grid;gap:2px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.product-meta strong{font-size:16px;color:var(--ink);text-transform:none;letter-spacing:0}
.product-meta .price strong{color:var(--brand-dark);font-size:19px;font-weight:800}
.availability{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--green-tint);color:var(--green);
  font-size:12px;font-weight:700;padding:5px 10px;border-radius:20px;
  text-transform:capitalize;letter-spacing:0;
}
.availability::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.card-actions{display:flex;gap:8px;flex-wrap:wrap}
.card-actions .button,.card-actions .secondary,.card-actions button{
  padding:10px 14px;font-size:13px;flex:1;white-space:nowrap;
}
pre.status{
  background:#0f2a33;color:#c8e6e9;border-radius:9px;padding:12px;
  font-size:11.5px;overflow:auto;max-height:220px;margin:0;
}
.empty-state{
  grid-column:1/-1;text-align:center;color:var(--muted);
  background:var(--card);border:1px dashed var(--line);border-radius:var(--radius);
  padding:48px 24px;font-size:15px;
}

/* Starter section + agent banner */
.starter-section{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:var(--shadow-sm)}
.agent-banner{
  margin-top:26px;border-radius:18px;padding:38px 36px;color:#fff;
  background:linear-gradient(120deg,#102f39,#0a5a64);
  display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;
  box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.agent-banner::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(360px 180px at 92% 8%,rgba(255,255,255,.09),transparent 70%);
}
.agent-banner>*{position:relative}
.agent-banner .eyebrow{color:#9fdbe1}
.agent-banner h2{margin:0 0 8px;color:#fff;font-size:26px}
.agent-banner p{margin:0;color:rgba(255,255,255,.78);max-width:560px}
.agent-banner .button{background:#fff;color:var(--brand-dark);flex:none}
.agent-banner .button:hover{background:var(--brand-tint)}

/* Footer */
.site-footer{background:#0c2730;color:rgba(255,255,255,.75);margin-top:0}
.footer-grid{
  max-width:1280px;margin:0 auto;padding:52px 24px 36px;
  display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;
}
.footer-col h3{margin:0 0 14px;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.1em}
.footer-col a{display:block;color:rgba(255,255,255,.65);text-decoration:none;font-size:14px;padding:5px 0}
.footer-col a:hover{color:#fff}
.footer-brand p{font-size:14px;max-width:340px;color:rgba(255,255,255,.6)}
.footer-brand .brand{margin-bottom:14px}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  max-width:1280px;margin:0 auto;padding:18px 24px;
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  font-size:12.5px;color:rgba(255,255,255,.45);
}

/* Home-services shared bits */
.hs-shell{max-width:1280px;margin:0 auto;padding:32px 24px 64px}

/* ---------- Responsive ---------- */
@media(max-width:1020px){
  .marketplace-shell{grid-template-columns:1fr}
  .category-rail{position:static}
  .category-rail .category-link{display:inline-block;width:auto;margin:0 6px 6px 0}
  .category-rail h2{font-size:17px}
  .rail-note{display:none}
}
@media(max-width:680px){
  .header-inner{flex-wrap:wrap;gap:12px;padding:12px 16px}
  .header-search{order:3;flex-basis:100%;max-width:none}
  .header-nav{gap:14px}
  .marketplace-shell{padding:18px 14px 44px}
  .market-hero{padding:30px 22px}
  .toolbar{align-items:stretch;flex-direction:column}
  .filter-form input{flex:1;min-width:0}
  .footer-grid{grid-template-columns:1fr;padding:36px 20px 24px}
  .agent-banner{padding:28px 22px}
  .starter-section{padding:24px 18px}
}
/* ============================================================
   Mobile marketplace — Facebook-Marketplace-style experience
   (max-width: 680px — appended last so it wins)
   ============================================================ */
@media (max-width: 680px) {

  /* Compact one-row header: brand + search. Nav links live in the footer on mobile. */
  .site-header .header-inner { flex-wrap: nowrap; gap: 10px; padding: 10px 12px; }
  .brand { font-size: 15px; gap: 8px; }
  .brand-mark { width: 30px; height: 30px; font-size: 16px; border-radius: 8px; }
  .header-nav { display: none; }
  .header-search { order: 0; flex: 1 1 auto; min-width: 0; }
  .header-search input { height: 38px; font-size: 13px; padding: 0 10px; }
  .header-search button { height: 38px; padding: 0 14px; font-size: 13px; }

  /* Category rail -> sticky horizontal pill strip (FB style) */
  .marketplace-shell { display: block; padding: 0 0 40px; }
  .category-rail {
    position: sticky; top: 58px; z-index: 40;
    background: var(--bg);
    border: 0; border-radius: 0; box-shadow: none;
    padding: 10px 12px; margin: 0;
    white-space: nowrap; overflow-x: auto; overflow-y: hidden;
    -webkit-overflow-scrolling: touch; scrollbar-width: none;
  }
  .category-rail::-webkit-scrollbar { display: none; }
  .category-rail .eyebrow,
  .category-rail h2,
  .category-rail .rail-note { display: none; }
  .category-rail .category-link {
    display: inline-block; width: auto; margin: 0 8px 0 0; padding: 9px 15px;
    background: #fff; border: 1px solid var(--line); border-radius: 20px;
    font-size: 13px; color: var(--ink-soft); vertical-align: middle;
  }
  .category-rail .category-link.active {
    background: var(--brand); border-color: var(--brand); color: #fff;
  }

  .marketplace-main { padding: 0 12px; min-width: 0; }

  /* Slim hero strip */
  .market-hero { padding: 22px 18px; border-radius: 14px; margin: 12px 0; }
  .market-hero h1 { font-size: 24px; margin-bottom: 8px; }
  .hero-copy { font-size: 13px; }
  .hero-stats { gap: 20px; margin-top: 14px; }
  .hero-stats strong { font-size: 15px; }
  .hero-stats small { font-size: 11px; }

  /* Filter chips bar — horizontal scroll */
  .toolbar { padding: 12px; gap: 8px; border-radius: 12px; margin-bottom: 12px; }
  .toolbar > div { flex: 1 1 100%; }
  .toolbar h2 { font-size: 17px; }
  #result-summary { font-size: 12px; }
  .filter-form {
    flex-wrap: nowrap; overflow-x: auto; width: 100%;
    scrollbar-width: none; gap: 8px; padding-bottom: 2px;
  }
  .filter-form::-webkit-scrollbar { display: none; }
  .filter-form input,
  .filter-form select {
    height: 38px; font-size: 13px; flex: none; border-radius: 20px; padding: 0 14px;
  }
  .filter-form input { min-width: 150px; }
  .filter-form select { max-width: 170px; }
  .filter-form button { height: 38px; padding: 0 16px; font-size: 13px; flex: none; border-radius: 20px; }

  /* 2-column compact product grid (FB style) */
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .product-card { border-radius: 12px; }
  .product-body { padding: 10px 12px 12px; gap: 6px; }
  .product-body h2 { font-size: 13px; line-height: 1.3; }
  .product-brand { font-size: 11px; }
  .product-meta { padding-top: 8px; gap: 6px; }
  .product-meta > span { font-size: 10px; }
  .product-meta .price strong { font-size: 15px; }
  .availability { font-size: 10px; padding: 4px 8px; }
  .card-actions { gap: 6px; }
  .card-actions .button,
  .card-actions .secondary,
  .card-actions button { padding: 9px 4px; font-size: 12px; }

  /* Tighter sections below the grid */
  .starter-section { border-radius: 14px; }
  .agent-banner { border-radius: 14px; }
  .agent-banner h2 { font-size: 21px; }
}
.back-link,.nav-link{font-size:14px;text-decoration:none;color:#31505f;margin-left:auto}.nav-link{margin-left:0}.solution-shell{max-width:1180px;margin:0 auto;padding:28px}.solution-breadcrumb{font-size:13px;color:#6a7b82;margin-bottom:28px}.solution-intro{display:flex;justify-content:space-between;gap:32px;align-items:end;border-bottom:1px solid #dfe4e8;padding-bottom:30px}.solution-intro h1{max-width:760px;color:#153c4a;font-size:clamp(32px,5vw,58px);line-height:1.04;letter-spacing:-.025em;margin:0}.solution-lede{max-width:690px;color:#49656f;font-size:18px;margin:16px 0 0}.solution-trust{min-width:210px;display:grid;gap:5px;border-left:2px solid #087f8c;padding-left:14px;color:#65747c;font-size:12px}.solution-trust strong{color:#183b49;font-size:13px}.solution-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:24px;margin-top:30px}.solution-builder,.cost-card{background:#fff;border:1px solid #dce3e6;border-radius:9px}.solution-builder{padding:26px}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.section-heading h2,.cost-card h2,.next-steps h2{color:#183b49;margin:0;font-size:25px}.status-pill{border-radius:20px;background:#e3f2f2;color:#056571;font-size:12px;font-weight:700;padding:7px 11px}.option-block{border-top:1px solid #e7ecee;padding:25px 0 5px;margin-top:24px}.option-block>label{display:grid;gap:3px;color:#183b49}.option-block>label span{font-size:13px;color:#65747c;font-weight:400}.quantity-row{display:flex;align-items:center;gap:18px;margin-top:20px}.quantity-row input{accent-color:#087f8c;flex:1}.quantity-row output{font-weight:800;color:#087f8c;min-width:100px;text-align:right}.range-labels{display:flex;justify-content:space-between;color:#65747c;font-size:11px;margin-top:4px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.choice{border:1px solid #c8d4d8;border-radius:7px;padding:12px;display:flex;gap:8px;align-items:start;color:#183b49;font-size:13px}.choice:has(input:checked){border-color:#087f8c;background:#eff8f8}.choice small,.check-list small{display:block;color:#65747c;font-size:11px;margin-top:4px}.check-list{display:grid;gap:11px;margin-top:16px}.check-list label{display:flex;gap:10px;align-items:start;color:#31505f;font-size:14px}.check-list input{accent-color:#087f8c;margin-top:3px}.recipe-tabs{display:flex;gap:8px;margin-top:16px}.recipe-tab{border:1px solid #c8d4d8;background:#fff;color:#31505f;border-radius:6px;padding:10px 12px}.recipe-tab.active{border-color:#087f8c;background:#e3f2f2;color:#056571;font-weight:700}.recipe-tab:disabled{opacity:.6}.small-note{font-size:12px;color:#65747c;line-height:1.5}.cost-card{padding:25px;height:max-content;position:sticky;top:98px}.cost-total{border-bottom:1px solid #e7ecee;padding:10px 0 20px;display:flex;justify-content:space-between;align-items:end;gap:10px}.cost-total span{font-size:13px;color:#65747c}.cost-total strong{font-size:32px;color:#087f8c}.cost-lines{display:grid;gap:12px;padding:20px 0;margin:0}.cost-lines div{display:flex;justify-content:space-between;font-size:14px}.cost-lines dt{color:#65747c}.cost-lines dd{margin:0;color:#183b49;font-weight:700}.per-serving{border-top:1px solid #e7ecee;padding-top:18px;display:grid;gap:4px}.per-serving span{font-size:12px;color:#65747c}.per-serving strong{font-size:18px;color:#183b49}.per-serving small{color:#65747c;font-size:11px}.primary-action{border:0;border-radius:6px;background:#087f8c;color:#fff;font-weight:700;padding:12px;width:100%;margin-top:20px}.next-steps{padding:50px 0 20px}.next-steps h2{margin-top:0}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.steps-grid article{border-top:2px solid #087f8c;padding-top:14px}.steps-grid article span{color:#087f8c;font-weight:800;font-size:12px}.steps-grid h3{margin:8px 0 4px;color:#183b49;font-size:16px}.steps-grid p{margin:0;color:#65747c;font-size:13px}@media(max-width:760px){.solution-shell{padding:20px 16px}.solution-intro{display:block}.solution-trust{margin-top:24px}.solution-layout{display:block}.cost-card{position:static;margin-top:18px}.choice-grid,.steps-grid{grid-template-columns:1fr}.back-link{margin-left:auto}.solution-builder{padding:18px}}
.starter-section{margin-top:38px;border-top:1px solid #d9e2e5;padding-top:26px}.starter-section h2{margin:0;color:#183b49;font-size:23px}.starter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:17px}.starter-card{display:grid;gap:8px;border:1px solid #dce3e6;border-radius:8px;padding:17px;background:#fff;text-decoration:none}.starter-card:hover{border-color:#087f8c;box-shadow:0 6px 15px #183c4a12}.starter-icon{color:#087f8c;font-weight:800;font-size:12px}.starter-card strong{color:#183b49}.starter-card small{color:#65747c;font-size:12px}.product-detail-shell{max-width:1240px;margin:auto;padding:28px}.product-detail{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:34px;background:#fff;border:1px solid #dce3e6;border-radius:9px;padding:26px}.product-image-panel{display:grid;align-content:start;gap:16px}.product-image-placeholder{min-height:390px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(135deg,#eaf2f2,#d5e8e7);color:#087f8c;font-size:150px;font-weight:800}.source-badge{font-size:12px;color:#65747c}.product-copy h1{font-size:clamp(30px,4vw,48px);line-height:1.08;color:#153c4a;margin:0}.product-description{color:#49656f;font-size:16px;max-width:700px}.sku-line{font-size:12px;color:#65747c}.sku-line a{color:#087f8c}.tier-box{background:#eef8f8;border:1px solid #c7e1e2;border-radius:8px;padding:17px;margin:22px 0}.tier-box h2{margin:0 0 12px;color:#183b49;font-size:17px}.tier-box table{width:100%;border-collapse:collapse;background:#fff}.tier-box th,.tier-box td{text-align:left;padding:10px;border-bottom:1px solid #e3eded;font-size:14px}.tier-box th{font-size:11px;text-transform:uppercase;color:#65747c}.tier-box td:last-child{font-weight:800;color:#087f8c}.tier-box small{display:block;margin-top:10px;color:#65747c}.spec-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.spec-list div{border-top:1px solid #edf0f1;padding-top:8px}.spec-list dt{font-size:11px;color:#65747c;text-transform:capitalize}.spec-list dd{margin:2px 0 0;color:#183b49;font-size:13px}.product-page-actions{display:flex;gap:10px;margin-top:24px}.business-callout{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #d9e2e5;border-bottom:1px solid #d9e2e5;padding:26px 0;margin-top:30px}.business-callout h2{margin:0;color:#183b49}.business-callout p:not(.eyebrow){margin:6px 0 0;color:#65747c}@media(max-width:760px){.starter-grid{grid-template-columns:1fr}.product-detail-shell{padding:18px 16px}.product-detail{display:block;padding:18px}.product-image-placeholder{min-height:240px;font-size:100px}.spec-list{grid-template-columns:1fr}.product-page-actions,.business-callout{align-items:stretch;flex-direction:column}.product-page-actions .button,.business-callout }
.product-image-placeholder img{max-width:100%;max-height:380px;object-fit:contain;border-radius:7px}
.register-shell{max-width:1000px;margin:0 auto;padding:60px 28px}.register-shell h1{max-width:680px;color:#153c4a;font-size:clamp(32px,5vw,54px);line-height:1.06;margin:0}.register-lede{color:#65747c;font-size:17px;max-width:650px}.register-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.register-card{background:#fff;border:1px solid #dce3e6;border-radius:9px;padding:24px}.register-card h2{margin:0;color:#183b49}.register-card>p{color:#65747c;font-size:13px}.register-card form{display:grid;gap:15px}.register-card label{display:grid;gap:6px;color:#183b49;font-weight:700;font-size:13px}.register-card input{height:42px;border:1px solid #bdc9cf;border-radius:5px;padding:0 11px}.register-card small{font-weight:400;color:#65747c;font-size:11px}.optional{font-weight:400;color:#65747c}.form-message{font-size:13px;margin:0;min-height:18px}.form-message.success{color:#087f8c}.form-message.error{color:#b42318}@media(max-width:760px){.register-shell{padding:34px 16px}.register-grid{grid-template-columns:1fr}}

/* Build 2026-10-22: service cards, sample-listing notices, tutorial materials */
.service-card{border:1px solid #dce3e6;border-radius:8px;padding:18px;background:#fff}
.service-card h2{margin:0 0 6px;color:#183b49;font-size:19px}
.service-card p{margin:0 0 10px;color:#49656f;font-size:14px}
.service-pricing{display:flex;gap:24px;margin:12px 0}
.service-pricing span{display:grid;gap:2px}
.service-pricing strong{color:#087f8c;font-size:18px}
.service-pricing small{color:#65747c;font-size:11px}
.service-factors-label{font-size:12px;font-weight:700;color:#183b49;margin-top:12px}
.service-factors{margin:4px 0 0;padding-left:18px;color:#65747c;font-size:13px}
.listing-note{font-size:12px;color:#8a6d00;background:#fff8e1;border:1px solid #ffe082;border-radius:6px;padding:8px 10px;margin:10px 0 0}
.listing-notice{font-size:13px;line-height:1.5;color:#5d4037;background:#fff8e1;border:1px solid #ffe082;border-radius:8px;padding:12px 14px;margin:18px 0 0}
.product-meta-line{font-size:13px;color:#65747c;margin:8px 0 0}
.materials-list{margin:14px 0;padding-left:20px;color:#49656f;font-size:14px;line-height:1.7}
.materials-list a{color:#087f8c}
