/* One component stylesheet, loaded in both the site and the block editor. */
.drive-brand-block, .drive-brand-block * { box-sizing: border-box; }
.drive-home--composed .drive-brand-block { max-width: 1056px !important; width: calc(100% - 2rem) !important; margin-inline: auto !important; }
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block {
  background: transparent;
  padding-block: 1.5rem !important;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__inner {
  width: 100%; max-width: 1120px; margin-inline: auto; padding-inline: 0;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__header {
  display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__header h2 {
  font-size: 1.45rem !important; line-height: 1.2; letter-spacing: -.03em; margin: .25rem 0 0 !important;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__search {
  display: flex; align-items: center; gap: .5rem; padding: .4rem .8rem; min-height: 2.75rem;
  border: 1px solid #bac5d4; border-radius: 6px; background: #fff; flex: 0 1 17rem;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__search input {
  border: 0 !important; box-shadow: none !important; background: transparent; padding: 0 !important;
  min-width: 0; width: 100%; font: inherit; font-size: .85rem; outline: 0;
}
.drive-brand-block__search:focus-within { outline: 3px solid #a8c3fb; outline-offset: 2px; }
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__grid {
  display: grid; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: .85rem !important; margin-top: 0;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__card {
  display: flex !important; flex-direction: column; align-items: stretch !important; min-height: 0 !important;
  border: 1px solid #d8e0eb !important; border-radius: 8px !important; background: #fff !important;
  padding: 0 !important; box-shadow: none !important; text-align: left !important; overflow: hidden;
}
.drive-brand-block__card[hidden] { display: none !important; }
.drive-brand-block__main { display: grid; grid-template-columns: minmax(0,1fr) auto; color: #142033; text-decoration: none; }
.drive-brand-block__main:hover { color: #b7371c; background: #fbfcfe; }
.drive-brand-block__main:focus-visible, .drive-brand-block__models a:focus-visible { outline: 3px solid #155eef; outline-offset: -3px; }
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__logo {
  grid-column: 1 / -1; display: flex !important; justify-content: center; align-items: center;
  height: 6.5rem !important; width: 100% !important; border-radius: 0 !important; border: 0 !important;
  padding: 1.1rem; margin: 0 !important; background: #fff !important;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__logo img {
  display: block; width: 8.5rem !important; height: 4.3rem !important; object-fit: contain !important;
  object-position: center; max-width: 100%; border-radius: 0;
}
.drive-brand-block__fallback,
.drive-brand-card__fallback {
  color: #182235;
  display: block;
  font-size: clamp(.72rem, 1.1vw, .9rem);
  font-weight: 900;
  letter-spacing: .06em;
  line-height: 1.1;
  max-width: 100%;
  overflow-wrap: anywhere;
  text-align: center;
  text-transform: uppercase;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__details {
  display: block !important; padding: .75rem 0 .85rem 1rem; margin: 0 !important;
}
.drive-brand-block__details strong { display: block; font-size: .95rem; line-height: 1.2; color: #142033; }
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__details small {
  display: block; font-size: .73rem !important; line-height: 1.4; color: #5c687b !important; margin-top: .2rem;
}
:is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__arrow {
  align-self: center; padding: .5rem 1rem; margin: 0 !important; color: #bc391c; font-size: 1.1rem;
}
.drive-brand-block__models { display: flex; flex-wrap: wrap; gap: .35rem; padding: .8rem 1rem; border-top: 1px solid #edf0f5; margin-top: auto; }
.drive-brand-block__models a { border: 1px solid #e4e9f0; background: #f7f9fc; border-radius: 4px; padding: .28rem .42rem; font-size: .68rem; font-weight: 600; color: #405069; text-decoration: none; line-height: 1.4; }
.drive-brand-block__models a:hover { color: #af341a; border-color: #e8b4a7; }
.drive-brand-block__empty { padding: 1.5rem; text-align: center; background: #fff; border: 1px dashed #bcc9d8; border-radius: 8px; }
.drive-brand-card__mark { display: flex; justify-content: center; align-items: center; padding: 1rem; background: #fff; border-radius: 0; }
.drive-brand-card__mark img { object-fit: contain !important; height: 4rem !important; width: 100% !important; }
@media(max-width: 48rem) {
  :is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  :is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__header { display: block; }
  :is(.drive-ma-site, .editor-styles-wrapper) .drive-brand-block__search { margin-top: .8rem; width: 100%; }
  .drive-brand-block__models { padding: .6rem; }
}
