﻿:root{--ink:#0b1b33;--navy:#0f2a4f;--blue:#1565c0;--amber:#f59e0b;--bg:#f4f6f9;--line:#d5dce6;--card:#fff}
@media(prefers-color-scheme:dark){:root{--ink:#e8eef7;--navy:#07142a;--bg:#0b1627;--line:#25364f;--card:#112038}}
*{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font:16px/1.55 'IBM Plex Sans',system-ui,sans-serif;background:var(--bg);color:var(--ink)}
.top{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 5vw;background:var(--navy);color:#fff}
.brand{display:flex;align-items:center;gap:10px;color:var(--amber);font-weight:600;letter-spacing:.14em;text-decoration:none;font-size:14px}
nav{display:flex;gap:18px;flex-wrap:wrap}nav a{color:#dbe6f5;text-decoration:none;font-size:14px}nav a:hover,nav a:focus-visible{color:var(--amber)}
.hero{padding:9vh 5vw 6vh;background:var(--navy);color:#fff;background-image:radial-gradient(ellipse at 85% 120%,#1565c055,transparent 60%)}
.hero h1{font-size:clamp(30px,5vw,54px);line-height:1.1;max-width:18ch;margin:0 0 14px;font-weight:700}
.hero p{max-width:60ch;color:#c7d6ea}
.search{display:flex;gap:8px;max-width:640px;margin:24px 0 14px}.search input{flex:1}
.cta{display:flex;gap:10px;flex-wrap:wrap}.stats{color:#9fb6d6;font-size:14px}
.wrap{padding:48px 5vw;max-width:1200px;margin:auto}h2{font-size:26px;margin:0 0 18px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:36px}@media(max-width:820px){.split{grid-template-columns:1fr}}
.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 14px;border-radius:999px;cursor:pointer;font:inherit}.chip:hover,.chip[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--blue);padding:16px;border-radius:6px}
.card h3{margin:0 0 4px;font-size:18px}.meta{font-size:14px;opacity:.75;margin:0 0 8px}
.badge{display:inline-block;font-size:12px;padding:2px 8px;border-radius:4px;background:#e5eaf2;color:#33445e;margin-bottom:6px}.badge.ok{background:#d7f2e1;color:#14532d}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.filters>*{flex:1;min-width:180px}
input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:6px;font:inherit;background:var(--card);color:var(--ink)}
.form{display:grid;gap:10px;align-content:start}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:480px){.two{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px;width:1px;height:1px}
.btn{padding:11px 20px;border-radius:6px;border:1px solid var(--amber);font:inherit;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;color:#fff;background:transparent}
.btn.primary{background:var(--amber);color:#1a1200}.btn.ghost{border-color:#7f9bc4}
.form .btn.ghost{color:var(--ink);border-color:var(--line)}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.msg{margin:0;min-height:1.4em;font-size:14px}.msg.err{color:#c62828}.msg.good{color:#15803d}
.rfqs{display:grid;gap:10px;margin-top:16px}.empty{opacity:.7;border:1px dashed var(--line);padding:18px;border-radius:6px}
dialog{border:1px solid var(--line);border-radius:8px;max-width:440px;width:92%;background:var(--card);color:var(--ink)}dialog::backdrop{background:#0008}
footer{padding:28px 5vw;background:var(--navy);color:#9fb6d6;font-size:13px}footer p{max-width:900px;margin:0}





/* IA GLOBAL BUTTON VISIBILITY FIX - 2026-10-05 */
button,
.btn,
input[type="button"],
input[type="submit"],
input[type="reset"] {
  visibility: visible !important;
  opacity: 1 !important;
  color: #102A43 !important;
  background: #FFFFFF !important;
  border: 1px solid #7B9BC2 !important;
  text-shadow: none !important;
  -webkit-text-fill-color: #102A43 !important;
  cursor: pointer !important;
}

.btn.primary,
.btn-primary,
button.primary,
input[type="submit"].primary {
  color: #FFFFFF !important;
  background: #123B68 !important;
  border-color: #123B68 !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

.btn.ghost,
.btn-ghost,
button.ghost {
  color: #123B68 !important;
  background: #FFFFFF !important;
  border-color: #7B9BC2 !important;
  -webkit-text-fill-color: #123B68 !important;
}

.btn:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
  opacity: 1 !important;
  visibility: visible !important;
}

.btn.primary:hover,
.btn-primary:hover,
button.primary:hover {
  color: #FFFFFF !important;
  background: #0D3157 !important;
  border-color: #0D3157 !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

.btn.sm {
  min-height: 34px !important;
  padding: 7px 13px !important;
  font-weight: 600 !important;
}

.btn:disabled,
button:disabled {
  opacity: .55 !important;
  color: #64748B !important;
  background: #E2E8F0 !important;
  -webkit-text-fill-color: #64748B !important;
}
