:root {
  --trace-navy-950:#0b1726;
  --trace-navy-900:#102237;
  --trace-navy-800:#183653;
  --trace-blue:#2f80ed;
  --trace-blue-hover:#1f70dc;
  --trace-blue-100:#eaf3ff;
  --trace-bg:#f7f9fc;
  --trace-white:#fff;
  --trace-text:#1b2430;
  --trace-muted:#697386;
  --trace-border:#e3e8ef;
}
.trace-site, .trace-site * { box-sizing:border-box; }
.trace-site { color:var(--trace-text); font-family:Inter,Arial,Helvetica,sans-serif; }
.trace-wrap { width:min(1180px,calc(100% - 40px)); margin:0 auto; }
.trace-hero { background:linear-gradient(135deg,var(--trace-navy-950),var(--trace-navy-800)); color:#fff; padding:84px 0; border-radius:0 0 30px 30px; }
.trace-hero__grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:55px; align-items:center; }
.trace-kicker { display:inline-flex; padding:7px 12px; border-radius:999px; background:rgba(47,128,237,.17); color:#a9d0ff; font-weight:700; font-size:13px; letter-spacing:.08em; }
.trace-hero h1 { margin:18px 0 18px; font-size:clamp(40px,6vw,72px); line-height:1.02; letter-spacing:-.04em; }
.trace-hero p { max-width:760px; color:#d5dfeb; font-size:19px; line-height:1.65; }
.trace-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.tf-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border-radius:12px; border:1px solid transparent; font:inherit; font-weight:700; cursor:pointer; text-decoration:none !important; transition:.2s ease; }
.tf-btn-primary { background:var(--trace-blue); color:#fff !important; }
.tf-btn-primary:hover { background:var(--trace-blue-hover); transform:translateY(-1px); }
.tf-btn-secondary { border-color:rgba(255,255,255,.26); color:#fff !important; background:rgba(255,255,255,.06); }
.trace-hero__card { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:22px; padding:28px; backdrop-filter:blur(10px); }
.trace-hero__card strong { display:block; font-size:38px; margin-bottom:8px; }
.trace-section { padding:76px 0; }
.trace-section--soft { background:var(--trace-bg); }
.trace-section__head { max-width:780px; margin-bottom:34px; }
.trace-section h2 { margin:8px 0 12px; color:var(--trace-navy-900); font-size:clamp(30px,4vw,48px); line-height:1.1; letter-spacing:-.03em; }
.trace-section__head p { color:var(--trace-muted); font-size:18px; line-height:1.7; }
.trace-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.trace-grid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.trace-card { background:#fff; border:1px solid var(--trace-border); border-radius:18px; padding:27px; box-shadow:0 8px 28px rgba(11,23,38,.05); }
.trace-card h3 { margin:8px 0 10px; color:var(--trace-navy-900); font-size:22px; }
.trace-card p { margin:0; color:var(--trace-muted); line-height:1.65; }
.trace-card__tag { color:var(--trace-blue); font-size:12px; font-weight:800; letter-spacing:.08em; }
.trace-list { margin:16px 0 0; padding-left:20px; color:var(--trace-muted); line-height:1.8; }
.trace-cta { padding:42px; border-radius:24px; background:var(--trace-navy-900); color:#fff; display:flex; align-items:center; justify-content:space-between; gap:25px; }
.trace-cta h2 { color:#fff; margin:0 0 8px; font-size:34px; }
.trace-cta p { color:#c9d5e4; margin:0; }
.trace-modal { position:fixed; inset:0; z-index:999999; display:none; }
.trace-modal.is-open { display:block; }
.trace-modal__backdrop { position:absolute; inset:0; background:rgba(7,16,28,.64); backdrop-filter:blur(4px); }
.trace-modal__dialog { position:absolute; left:50%; top:50%; width:min(520px,calc(100% - 32px)); transform:translate(-50%,-50%); background:#fff; border-radius:22px; padding:34px; box-shadow:0 30px 90px rgba(0,0,0,.28); }
.trace-modal__close { position:absolute; right:16px; top:12px; border:0; background:transparent; font-size:34px; line-height:1; color:#718096; cursor:pointer; }
.trace-modal__badge { display:inline-block; color:var(--trace-blue); font-weight:800; font-size:12px; letter-spacing:.1em; }
.trace-modal h2 { margin:8px 0; color:var(--trace-navy-900); font-size:32px; }
.trace-modal p { color:var(--trace-muted); margin:0 0 24px; }
.trace-modal label { display:block; margin:14px 0 7px; font-weight:700; color:var(--trace-navy-900); }
.trace-modal input { width:100%; min-height:48px; border:1px solid var(--trace-border); border-radius:11px; padding:0 13px; font:inherit; }
.trace-modal input:focus { outline:3px solid var(--trace-blue-100); border-color:var(--trace-blue); }
.trace-modal__submit { width:100%; margin-top:20px; }
.trace-modal__status { margin-top:16px; line-height:1.45; font-weight:600; }
.trace-modal__status.is-success { color:#16794a; }
.trace-modal__status.is-error { color:#b42318; }
.trace-hp { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
body.trace-modal-open { overflow:hidden; }
@media(max-width:900px){ .trace-hero__grid,.trace-grid,.trace-grid--4{grid-template-columns:1fr 1fr}.trace-cta{align-items:flex-start;flex-direction:column} }
@media(max-width:640px){ .trace-wrap{width:min(100% - 28px,1180px)} .trace-hero{padding:58px 0}.trace-hero__grid,.trace-grid,.trace-grid--4{grid-template-columns:1fr}.trace-section{padding:54px 0}.trace-cta{padding:28px}.trace-modal__dialog{padding:28px 22px} }
