:root{--tri-max-width:1120px;--tri-padding-y:96px;--tri-title:#020617;--tri-sub:#4b5563;--tri-card-bg:#fff;--tri-card-border:rgba(15,23,42,.08);--tri-dot:#0f172a;--tri-shadow:0 8px 24px rgba(15,23,42,.04),0 20px 48px rgba(15,23,42,.06)}
.tricore{width:100%;background:#fff;padding:var(--tri-padding-y) 24px}
.tricore-inner{max-width:var(--tri-max-width);margin:0 auto}
.tricore-title{font-size:32px;font-weight:700;letter-spacing:-.03em;color:var(--tri-title);margin:0}
.tricore-subtitle{max-width:600px;margin-top:16px;font-size:15px;line-height:1.6;letter-spacing:.01em;color:var(--tri-sub)}
.tricore-grid{margin-top:48px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.tricore-card{background:var(--tri-card-bg);border:1px solid var(--tri-card-border);border-radius:22px;padding:28px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--tri-shadow);transition:transform .25s cubic-bezier(.19,1,.22,1),box-shadow .25s cubic-bezier(.19,1,.22,1)}
.tricore-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(15,23,42,.05),0 24px 60px rgba(15,23,42,.07)}
.tricore-card-header{display:flex;justify-content:space-between;align-items:center}
.tricore-card-label{font-size:11px;letter-spacing:.12em;font-weight:600;color:#6b7280;text-transform:uppercase}
.tricore-dot{width:6px;height:6px;background:var(--tri-dot);border-radius:999px}
.tricore-card-title{font-size:20px;font-weight:600;letter-spacing:-.02em;margin:0;color:var(--tri-title)}
.tricore-card-text{margin:0;font-size:14px;line-height:1.55;color:var(--tri-sub)}
@media(max-width:900px){.tricore-grid{grid-template-columns:1fr}}
.tricore-header{margin-bottom:48px}
.tricore-dot{width:5px!important;height:5px!important;opacity:.8}
.tricore-card{gap:16px!important}
.tricore-card{box-shadow:0 6px 18px rgba(15,23,42,.04),0 18px 42px rgba(15,23,42,.05)!important}
.tricore-card:hover{box-shadow:0 10px 28px rgba(15,23,42,.05),0 22px 54px rgba(15,23,42,.08)!important}
.tricore-card:hover{transform:translateY(-2px)!important;transition:transform .25s cubic-bezier(.19,1,.22,1)}
.tricore-card-title{letter-spacing:-.025em!important}
.tricore-card-text{line-height:1.58!important;letter-spacing:0!important}
.tricore-card,.module-card,.status-card{will-change:transform,box-shadow;transition:transform .25s cubic-bezier(.19,1,.22,1),box-shadow .25s cubic-bezier(.19,1,.22,1)}
.tricore-card:hover,.module-card:hover,.status-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(15,23,42,.05),0 24px 60px rgba(15,23,42,.08)}
