/* OVANIE PRO — accueil public: cartes homogènes V2. Chargé après catalog_business.css. */
#annonces .offer-grid, #fournisseurs .offer-grid, #offres .offer-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,320px));justify-content:flex-start;gap:18px;align-items:stretch;}
#annonces .offer-card, #fournisseurs .offer-card, #offres .offer-card {display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;border:1px solid #dce4ef;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(0,27,64,.05);}
#annonces .offer-image, #fournisseurs .offer-image, #offres .offer-image {display:flex;position:relative;align-items:center;justify-content:center;flex:0 0 auto;aspect-ratio:1 / 1;min-height:0;overflow:hidden;padding:10px;background:#f8fafc;}
#annonces .offer-image img, #fournisseurs .offer-image img, #offres .offer-image img {width:100%;height:100%;object-fit:cover;object-position:center;display:block;border-radius:10px;}
#annonces .offer-body, #fournisseurs .offer-body, #offres .offer-body {display:flex;flex:1;flex-direction:column;min-width:0;gap:9px;padding:15px 15px 16px;}
#annonces .offer-body h3, #fournisseurs .offer-body h3, #offres .offer-body h3 {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;min-height:0;max-height:2.9em;height:auto;margin:0;font-size:14px;line-height:1.4;overflow-wrap:anywhere;}
#annonces .offer-body .brand-name, #fournisseurs .offer-body .brand-name, #offres .offer-body .brand-name {min-height:0;margin:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;}
#annonces .offer-body dl, #fournisseurs .offer-body dl, #offres .offer-body dl {display:grid;grid-template-columns:1fr;gap:6px;margin:0;min-height:0;}
#annonces .offer-body dl > div, #fournisseurs .offer-body dl > div, #offres .offer-body dl > div {margin:0;min-width:0;}
#annonces .offer-body dt, #fournisseurs .offer-body dt, #offres .offer-body dt {font-size:10px;line-height:1.25;}
#annonces .offer-body dd, #fournisseurs .offer-body dd, #offres .offer-body dd {margin:2px 0 0;font-size:12px;line-height:1.35;overflow-wrap:anywhere;}
#annonces .offer-location, #fournisseurs .offer-location, #offres .offer-location {margin:0;min-height:0;font-size:11px;line-height:1.35;}
#annonces .offer-location span, #fournisseurs .offer-location span, #offres .offer-location span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#annonces .offer-link, #fournisseurs .offer-link, #offres .offer-link {display:flex;justify-content:center;align-items:center;min-height:42px;height:auto;margin-top:auto;padding:10px 12px;line-height:1.25;text-align:center;border-radius:10px;}
#appels-offres .tender-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch;}
#appels-offres .tender-card {display:flex;flex-direction:column;min-width:0;height:100%;min-height:0;padding:16px;border-radius:12px;}
#appels-offres .tender-card h3 {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-height:2.9em;margin:10px 0 7px;font-size:14px;line-height:1.4;overflow-wrap:anywhere;}
#appels-offres .tender-card p {margin:0 0 8px;font-size:12px;line-height:1.4;}
#appels-offres .tender-deadline {margin-top:auto!important;padding-top:8px;}
@media(max-width:1199px){#annonces .offer-grid,#fournisseurs .offer-grid,#offres .offer-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));}}
@media(max-width:850px){#annonces .offer-grid,#fournisseurs .offer-grid,#offres .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}#appels-offres .tender-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){#annonces .offer-grid,#fournisseurs .offer-grid,#offres .offer-grid{grid-template-columns:1fr 1fr;gap:10px;}#annonces .offer-image,#fournisseurs .offer-image,#offres .offer-image{aspect-ratio:1 / 1;padding:8px;}#annonces .offer-body,#fournisseurs .offer-body,#offres .offer-body{padding:10px;gap:6px;}#annonces .offer-body h3,#fournisseurs .offer-body h3,#offres .offer-body h3{font-size:12px;}#appels-offres .tender-grid{grid-template-columns:1fr;}}
@media(max-width:390px){#annonces .offer-grid,#fournisseurs .offer-grid,#offres .offer-grid{grid-template-columns:1fr;}#annonces .offer-image,#fournisseurs .offer-image,#offres .offer-image{aspect-ratio:4 / 3;padding:8px;}}

#annonces .offer-card:hover, #fournisseurs .offer-card:hover, #offres .offer-card:hover {transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,27,64,.1);border-color:#cfd9e6;}
