/* Logotipos originales: marcas oficiales y referencias de clientes. */
.official-brands{padding:64px 0;background:#f2f6f8;border-top:1px solid #dce6ed;border-bottom:1px solid #dce6ed}
.official-brands-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:30px}
.official-brands-heading>div{max-width:630px}
:root[data-font="inter"] .official-brands-heading h2{font-size:clamp(28px,3vw,38px);line-height:1.2;letter-spacing:-.035em}
.official-brands-heading p{margin:15px 0 0;color:var(--muted);font-size:13px;line-height:1.8;max-width:610px}
.official-brands-heading>.text-link{font-size:12px;flex-shrink:0;margin-bottom:5px}
.brand-family-panel{padding:23px;background:#e7f0f7;border:1px solid #cbdce9;border-top:3px solid var(--blue)}
:root[data-font="inter"] .brand-group-heading{font-size:12px;line-height:1.6;font-weight:600;color:var(--navy);margin:0 0 18px;letter-spacing:.02em}
.brand-family-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,2fr);gap:15px;align-items:stretch}
.brand-featured{position:relative;background:#fff;border:1px solid #cfdeea;padding:25px;display:flex;justify-content:center;align-items:center;min-width:0;min-height:144px}
.brand-featured img{width:min(100%,335px);height:82px;object-fit:contain;object-position:center;margin:0}
.brand-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}
.brand-logo-card{display:flex;align-items:center;justify-content:center;min-width:0;min-height:108px;padding:22px 15px;background:#fff;border:1px solid #dce6ed}
.brand-logo-card img{display:block;width:100%;max-width:144px;height:48px;object-fit:contain}
.brand-logo-card.logo-portrait img{height:66px;max-width:110px}
.brand-logo-card.logo-dark{background:#07324f;border-color:#07324f}
.brand-logo-card.logo-spaced{overflow:hidden;padding:8px}
.brand-logo-card.logo-spaced img{flex:0 0 auto;width:220px;max-width:none;height:88px}
.brand-family-grid .brand-logo-card{min-height:144px;padding:20px 13px;border-color:#cfdeea}
.brand-family-grid .brand-logo-card.logo-portrait img{height:80px}
.other-official-brands{padding-top:29px;margin-top:29px;border-top:1px solid #d2dfe8}
:root[data-font="inter"] .other-official-brands>h3{font-size:16px;font-weight:600;line-height:1.5;color:#455f72;margin:0 0 18px}
.other-brand-grid .brand-logo-card{min-height:100px}
.other-brand-grid .brand-logo-card img{max-width:138px}
.other-brand-grid .brand-logo-card.logo-spaced img{max-width:none}
.official-brands-compact{padding:35px 0 38px}
.official-brands-compact .official-brands-heading{margin-bottom:23px}
:root[data-font="inter"] .official-brands-compact .official-brands-heading h2{font-size:23px;line-height:1.3}
.official-brands-compact .official-brands-heading p{display:none}
.official-brands-compact .brand-family-panel{padding:20px}
.official-brands-compact .brand-featured{padding:22px;min-height:120px}
.official-brands-compact .brand-featured img{height:74px;max-width:315px}
.official-brands-compact .brand-logo-card{min-height:86px;padding:16px 14px}
.official-brands-compact .brand-logo-card img{height:40px}
.official-brands-compact .brand-logo-card.logo-portrait img{height:54px}
.official-brands-compact .brand-logo-card.logo-spaced{padding:5px}
.official-brands-compact .brand-logo-card.logo-spaced img{height:76px}
.official-brands-compact .brand-family-grid .brand-logo-card{min-height:120px}
.official-brands-compact .brand-family-grid .brand-logo-card.logo-portrait img{height:72px}
.official-brands-compact .other-official-brands{margin-top:24px;padding-top:24px}
:root[data-font="inter"] .official-brands-compact .other-official-brands>h3{font-size:14px}
.page-brand-section{margin-bottom:58px}
.page-brand-section .official-brands{padding:0;border:0;background:transparent}
.page-brand-section .official-brands>.container{width:100%;padding:0}
.client-references{padding:0 0 53px;margin-bottom:46px;border-bottom:1px solid #dce6ed}
.client-references .eyebrow{margin-bottom:13px}
:root[data-font="inter"] .client-references h2{font-size:clamp(29px,3vw,39px);line-height:1.2;letter-spacing:-.035em}
.client-references-intro{color:var(--muted);font-size:14px;line-height:1.8;margin:17px 0 30px;max-width:690px}
.client-logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.client-logo-card{margin:0;border:1px solid #dce6ed;background:#fff;min-width:0;padding:27px 23px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:165px;overflow:hidden}
.client-logo-image{display:flex;align-items:center;justify-content:center;width:100%;height:76px;min-width:0}
.client-logo-card img{display:block;width:100%;max-width:220px;height:76px;object-fit:contain}
.client-logo-name{font-size:10px;line-height:1.5;letter-spacing:.02em;color:#597181;text-align:center;max-width:100%}
.client-logo-card.logo-dark{background:#07324f;border-color:#07324f}
.client-logo-card.logo-dark .client-logo-name{color:#cee0eb}
.client-logo-card.logo-spaced img{flex:0 0 auto;width:280px;max-width:calc(100% + 24px);height:110px}
@media(max-width:1050px){
 .brand-family-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
 .brand-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
 .brand-family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .brand-featured{padding:25px}
 .brand-logo-card{padding:18px 10px;min-height:98px}
 .brand-family-grid .brand-logo-card,.official-brands-compact .brand-family-grid .brand-logo-card{min-height:92px;padding:14px 12px}
 .brand-family-grid .brand-logo-card.logo-portrait img,.official-brands-compact .brand-family-grid .brand-logo-card.logo-portrait img{height:62px}
 .client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .official-brands{padding:43px 0}
 .official-brands-heading{display:block;margin-bottom:24px}
 .official-brands-heading>.text-link{margin-top:18px}
 .brand-family-panel,.official-brands-compact .brand-family-panel{padding:18px}
 .brand-family-layout{grid-template-columns:1fr;gap:13px}
 .brand-featured{padding:25px 28px}
 .brand-featured img,.official-brands-compact .brand-featured img{width:min(100%,300px);height:76px;margin:0}
 .brand-logo-grid{gap:10px}
 .brand-logo-card{min-height:100px;padding:17px 12px}
 .official-brands-compact .brand-featured{padding:23px 27px}
 .other-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .page-brand-section{margin-bottom:40px}
 .client-references{padding-bottom:36px;margin-bottom:34px}
 .client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .client-logo-card{padding:22px 17px 18px;min-height:150px;gap:16px}
 .client-logo-image{height:67px}
 .client-logo-card img{height:67px}
 .client-logo-card.logo-spaced img{height:100px}
}
@media(max-width:480px){
 .brand-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .brand-logo-card,.official-brands-compact .brand-logo-card{min-height:94px;padding:19px 21px}
 .brand-logo-card img,.official-brands-compact .brand-logo-card img{max-width:148px;height:42px}
 .brand-logo-card.logo-portrait img,.official-brands-compact .brand-logo-card.logo-portrait img{height:58px}
 .brand-family-grid .brand-logo-card.logo-portrait img,.official-brands-compact .brand-family-grid .brand-logo-card.logo-portrait img{height:62px}
 .brand-logo-card.logo-spaced,.official-brands-compact .brand-logo-card.logo-spaced{padding:5px}
 .brand-logo-card.logo-spaced img,.official-brands-compact .brand-logo-card.logo-spaced img{width:220px;max-width:none;height:80px}
 .client-logo-card{padding:19px 14px 16px;min-height:139px;gap:15px}
 .client-logo-image{height:58px}
 .client-logo-card img{height:58px}
 .client-logo-card.logo-spaced img{width:250px;height:90px}
 .client-logo-name{font-size:9px}
}
