.ca-company-card { margin:0 0 18px; padding:18px; border:1px solid #dfe6e9; border-radius:8px; background:#fff; color:#26343a; box-shadow:0 1px 2px #26343a06; letter-spacing:0; }
.ca-company-card * { box-sizing:border-box; letter-spacing:0; }
.ca-company-card .ca-company-header { display:grid; grid-template-columns:88px minmax(0,1fr); gap:16px; align-items:start; }
.ca-company-card .ca-company-logo-link { display:block; width:88px; height:88px; }
.ca-company-card .ca-company-logo { display:block; width:100%; height:100%; object-fit:contain!important; border:1px solid #e5eaed; border-radius:6px; background:#f6f8f9; }
.ca-company-card .ca-company-logo-placeholder { display:flex; align-items:center; justify-content:center; width:100%; height:100%; border:1px solid #d8e2e7; border-radius:6px; background:#f1f5f7; color:#526e7a; font-size:30px; }
.ca-company-card .ca-company-logo[hidden],.ca-company-card .ca-company-logo-placeholder[hidden] { display:none !important; }
.ca-company-card .ca-company-top { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-bottom:5px; }
.ca-company-card .ca-company-name { margin:0; font-size:18px; font-weight:700; line-height:1.4; min-width:0; overflow-wrap:anywhere; }
.ca-company-card .ca-company-name a { color:#173f4d; text-decoration:none; }
.ca-company-card .ca-company-name a:hover { text-decoration:underline; }
.ca-company-card .ca-company-premium { display:inline-flex; align-items:center; gap:5px; color:#805600; background:#fff3cc; border:1px solid #f3d582; border-radius:4px; padding:3px 7px; font-size:12px; font-weight:500; white-space:nowrap; }
.ca-company-card .ca-company-activity,.ca-company-card .ca-company-location { margin:0 0 5px; font-size:14px; line-height:1.5; color:#53636b; overflow-wrap:anywhere; }
.ca-company-card .ca-company-location i { color:#1f4e5f; margin-right:4px; }
.ca-company-card .ca-company-content { margin:8px 0 0 104px; }
.ca-company-card .ca-company-content:empty { display:none; }
.ca-company-card .ca-company-products { display:flex; flex-wrap:wrap; gap:4px 14px; padding:0; margin:0; list-style:none; font-size:14px; line-height:1.5; font-weight:500; }
.ca-company-card .ca-company-products li { max-width:100%; overflow-wrap:anywhere; }
.ca-company-card .ca-company-products li::before { content:""; display:inline-block; width:4px; height:4px; margin:0 7px 3px 0; border-radius:50%; background:#7696a1; }
.ca-company-card .ca-product-gallery { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 8px; }
.ca-company-card .ca-product-thumb-link { display:block; flex:0 0 48px; width:48px; height:48px; border:1px solid #dfe6e9; border-radius:6px; overflow:hidden; background:#f6f8f9; }
.ca-company-card .ca-product-thumb-link img { display:block; width:100%; height:100%; object-fit:contain; }
.ca-company-card .ca-product-thumb-link[hidden],.ca-company-card .ca-product-gallery[hidden] { display:none !important; }
.ca-company-card .ca-company-more { display:inline-flex; align-items:center; gap:5px; color:#1f4e5f; font-size:13px; margin-top:6px; }
.ca-company-card .ca-company-content>.ca-company-more { display:flex; width:fit-content; max-width:100%; }
.ca-company-card .ca-company-footer { margin-top:14px; padding:12px 0 0; border-top:1px solid #e8edef; background:#fff; }
.ca-company-card .ca-company-contact-state { display:flex; align-items:center; gap:6px; margin:0 0 10px; font-size:13px; color:#5b6f77; line-height:1.5; }
.ca-company-card .ca-company-contact-state i { flex-shrink:0; color:#597981; }
.ca-company-card .ca-company-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.ca-company-card .btn,.ca-company-card .ca-company-contact-action { display:inline-flex; justify-content:center; align-items:center; gap:6px; min-height:44px; padding:9px 12px; line-height:1.4; font-size:14px; font-weight:500; text-align:center; border-radius:6px; box-shadow:none; text-transform:none; white-space:normal; }
.ca-company-card .btn-primary { background:#1f4e5f; border:1px solid #1f4e5f; color:#fff; }
.ca-company-card .btn-primary:hover { background:#163946; }
.ca-company-card .btn-outline-primary { background:#fff; border:1px solid #aabec6; color:#1f4e5f; }
.ca-company-card .ca-company-contact-action { border:0; background:transparent; color:#1f4e5f; cursor:pointer; }
.ca-company-card .ca-company-contact-action:hover { text-decoration:underline; background:#f2f7f8; }
.ca-company-card a:focus-visible,.ca-company-card button:focus-visible { outline:3px solid #e6aa38; outline-offset:3px; }
.ca-company-modal .modal-content { border-radius:8px; }
.ca-company-modal .ca-modal-note { background:#f4f8f9; border:1px solid #dfe6e9; border-radius:6px; padding:12px; color:#33444b; }
.ca-company-modal .btn { min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:6px; border-radius:6px; text-transform:none; white-space:normal; line-height:1.4; }
.ca-company-modal .btn-primary { background:#1f4e5f; border-color:#1f4e5f; }
.ca-company-modal .btn-secondary { background:#eef3f5; border:1px solid #cad7dd; color:#284b59; box-shadow:none; }
.ca-company-modal .btn-secondary:hover { background:#e1eaee; }
@media(max-width:767.98px) {
 .ca-company-card { padding:14px; }
 .ca-company-card .ca-company-header { grid-template-columns:64px minmax(0,1fr); gap:12px; }
 .ca-company-card .ca-company-logo-link { width:64px; height:64px; }
 .ca-company-card .ca-company-name { font-size:16px; }
 .ca-company-card .ca-company-content { margin:12px 0 0; }
 .ca-company-card .ca-company-actions { display:grid; grid-template-columns:minmax(0,1fr); }
 .ca-company-card .ca-company-actions>* { width:100%; }
 .ca-company-card .btn,.ca-company-card .ca-company-contact-action { font-size:14px; }
 .ca-company-modal .modal-body.p-4 { padding:16px!important; }
}
