/*
Theme Name: GoDrones
Theme URI: https://comparardrones.com.br/
Author: Nino Souza
Description: Tema editorial da GoDrones para catálogo, comparação de drones, notícias, guias e audiovisual.
Version: 2.9.11
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: godrones
*/

/* Ajustes da integração WordPress. O design principal permanece em assets/css/style.css. */

/* Ajuste solicitado para as imagens dos cards do catálogo. */
.conteudo-catalogo img { width: 100%; height: 100%; }
.gd-site-main { min-height: 55vh; }
.gd-empty-state { padding: 64px 20px; text-align: center; }
.gd-empty-state p { margin: 12px auto 24px; max-width: 620px; }
.gd-pagination { margin-top: 36px; }
.gd-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.gd-pagination .page-numbers { border: 1px solid #dbe3ec; border-radius: 8px; padding: 8px 13px; }
.gd-pagination .current { background: #0f172a; border-color: #0f172a; color: #fff; }
.gd-search-results { position: absolute; z-index: 1000; top: calc(100% + 6px); left: 0; right: 0; display: none; overflow: hidden; background: #fff; border: 1px solid #dbe3ec; border-radius: 12px; box-shadow: 0 18px 40px rgba(15, 23, 42, .16); }
.gd-search-results.is-open { display: block; }
.gd-search-results a { display: flex; align-items: center; gap: 12px; padding: 10px 12px; color: #172033; }
.gd-search-results a + a { border-top: 1px solid #edf1f5; }
.gd-search-results img { width: 54px; height: 54px; border-radius: 8px; object-fit: cover; }
.gd-search-results small { display: block; color: #64748b; }
.drone-search, .drone-search-form { position: relative; }
.gd-compare-notice { position: fixed; z-index: 1100; right: 20px; bottom: 20px; max-width: 360px; padding: 13px 16px; border-radius: 10px; background: #0f172a; color: #fff; box-shadow: 0 12px 30px rgba(15, 23, 42, .28); }
.gd-compare-notice a { color: #7dd3fc; font-weight: 700; }
.gd-compare-open .gd-compare-notice { top: 92px; bottom: auto; }
.gd-newsletter-consent { display: flex; align-items: flex-start; gap: 7px; width: 100%; margin-top: 10px; font-size: .78rem; line-height: 1.35; color: #cbd5e1; }
.gd-newsletter-consent input { width: auto; margin-top: 2px; }
.gd-comments { margin-top: 48px; }
.gd-comments .comment-list { margin: 20px 0; padding: 0; list-style: none; }
.gd-comments .comment-body { margin-bottom: 16px; padding: 18px; border: 1px solid #e5eaf0; border-radius: 12px; }
.gd-comments input:not([type="submit"]), .gd-comments textarea { width: 100%; border: 1px solid #dbe3ec; border-radius: 9px; padding: 11px 13px; }
.gd-compare-warning { margin: 18px auto 0; padding: 12px 16px; border: 1px solid #fed7aa; border-radius: 10px; background: #fff7ed; color: #9a3412; }
.gd-course-card strong { display: block; margin: 14px 0; font-size: 1.35rem; }
.gd-course-card .botao-azul-fill { display: inline-block; }
.gd-drone-area .gd-category-list { margin: 0; padding: 0; list-style: none; }
.gd-drone-area .gd-category-list a { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid #e5eaf0; }
.gd-compare-empty { padding: 32px; text-align: center; background: #f7f9fc; border-radius: 14px; }
.gd-comparator-search { position: relative; }
.gd-comparator-results { position: absolute; z-index: 30; top: calc(100% + 6px); left: 0; right: 0; overflow: hidden; background: #fff; border: 1px solid #dbe3ec; border-radius: 12px; box-shadow: 0 18px 40px rgba(15, 23, 42, .14); }
.gd-comparator-results button { display: flex; width: 100%; align-items: center; gap: 12px; padding: 10px 12px; border: 0; border-bottom: 1px solid #edf1f5; background: #fff; text-align: left; }
.gd-comparator-results img { width: 52px; height: 52px; border-radius: 8px; object-fit: cover; }
.gd-remove-drone { border: 0; }
.gd-spec-empty { color: #94a3b8; }
.gd-screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.gd-screen-reader-text:focus { z-index: 100000; top: 8px; left: 8px; width: auto; height: auto; clip: auto; padding: 12px 16px; background: #fff; color: #111827; }

/* =========================================================
   CARD GLOBAL DE COMPARAÇÃO
   Painel expandido e botão minimizado ficam fixos na tela.
========================================================= */
.gd-compare-dock {
  position: fixed;
  z-index: 1088;
  left: 50%;
  bottom: 22px;
  width: 100%;
  transform: translateX(-50%);
  pointer-events: none;
}
.gd-compare-dock[hidden] { display: none !important; }
.gd-compare-dock > .container { pointer-events: auto; }
.gd-compare-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(170px, 220px) 1fr auto;
  align-items: center;
  gap: 20px;
  max-height: min(360px, calc(100vh - 44px));
  padding: 20px 22px;
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, .95);
  border-radius: 18px;
  background: rgba(255, 255, 255, .97);
  box-shadow: 0 20px 55px rgba(15, 23, 42, .20);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.gd-compare-panel-heading span {
  display: block;
  margin-bottom: 5px;
  color: #2563eb;
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}
.gd-compare-panel-heading h2 {
  margin: 0 0 4px;
  color: #0f172a;
  font-family: 'Outfit', sans-serif;
  font-size: 1.14rem;
  line-height: 1.2;
}
.gd-compare-panel-heading p {
  margin: 0;
  color: #64748b;
  font-size: .7rem;
  line-height: 1.4;
}
.gd-compare-items {
  display: flex;
  align-items: stretch;
  gap: 10px;
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: 3px 2px 6px;
  scrollbar-width: thin;
}
.gd-compare-item {
  position: relative;
  flex: 0 0 142px;
  width: 142px;
  padding: 7px;
  border: 1px solid #edf1f5;
  border-radius: 12px;
  background: #fff;
  text-align: center;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.gd-compare-item:hover {
  border-color: #cbd5e1;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
  transform: translateY(-2px);
}
.gd-compare-item a { display: block; color: #0f172a; text-decoration: none; }
.gd-compare-item img {
  display: block;
  width: 100%;
  max-width: 142px;
  height: 78px;
  margin: 0 auto 6px;
  border-radius: 8px;
  object-fit: contain;
  background: #f8fafc;
}
.gd-compare-item strong {
  display: -webkit-box;
  overflow: hidden;
  color: #1e293b;
  font-size: .69rem;
  font-weight: 700;
  line-height: 1.3;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.gd-compare-item-remove {
  position: absolute;
  z-index: 2;
  top: 5px;
  right: 5px;
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgba(15, 23, 42, .9);
  color: #fff;
  cursor: pointer;
  opacity: 0;
  transform: scale(.86);
  transition: opacity .2s ease, transform .2s ease, background .2s ease;
}
.gd-compare-item:hover .gd-compare-item-remove,
.gd-compare-item-remove:focus-visible { opacity: 1; transform: scale(1); }
.gd-compare-item-remove:hover { background: #dc2626; }
.gd-compare-actions { min-width: 150px; text-align: right; }
.gd-compare-count { display: block; margin-bottom: 8px; color: #64748b; font-size: .68rem; }
.gd-compare-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 145px;
  min-height: 42px;
  padding: 10px 15px;
  border-radius: 10px;
  background: #2563eb;
  color: #fff;
  font-size: .76rem;
  font-weight: 700;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.gd-compare-button:hover { background: #1d4ed8; color: #fff; transform: translateY(-1px); box-shadow: 0 8px 20px rgba(37, 99, 235, .22); }
.gd-compare-button.is-disabled { pointer-events: none; background: #cbd5e1; box-shadow: none; }
.gd-compare-minimize {
  position: absolute;
  z-index: 3;
  top: 9px;
  right: 9px;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #f1f5f9;
  color: #475569;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}
.gd-compare-minimize:hover { background: #e2e8f0; color: #0f172a; }
.gd-compare-fab {
  position: fixed;
  z-index: 1090;
  right: 22px;
  bottom: 22px;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 14px 32px rgba(15, 23, 42, .28);
  cursor: pointer;
  transition: transform .22s ease, background .22s ease;
}
.gd-compare-fab[hidden] { display: none !important; }
.gd-compare-fab:hover { transform: translateY(-3px); background: #2563eb; }
.gd-compare-fab i { font-size: 1.25rem; }
.gd-compare-fab-count {
  position: absolute;
  top: -3px;
  right: -3px;
  min-width: 21px;
  height: 21px;
  display: grid;
  place-items: center;
  padding: 0 5px;
  border: 2px solid #fff;
  border-radius: 50px;
  background: #2563eb;
  color: #fff;
  font-size: .62rem;
  font-weight: 800;
}
@media (hover: none) {
  .gd-compare-item-remove { opacity: 1; transform: scale(1); }
}
@media (max-width: 991px) {
  .gd-compare-dock { bottom: 14px; }
  .gd-compare-panel {
    grid-template-columns: 1fr auto;
    gap: 12px 16px;
    padding: 18px 50px 18px 18px;
  }
  .gd-compare-panel-heading { grid-column: 1 / 2; }
  .gd-compare-items { grid-column: 1 / -1; grid-row: 2; }
  .gd-compare-actions { grid-column: 2; grid-row: 1; min-width: 145px; }
}
@media (max-width: 575px) {
  .gd-compare-dock {
    left: 12px;
    right: 12px;
    bottom: 12px;
    width: auto;
    transform: none;
  }
  .gd-compare-dock > .container { width: 100%; max-width: none; padding: 0; }
  .gd-compare-panel {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    max-height: min(72vh, 500px);
    padding: 42px 14px 14px;
    overflow-y: auto;
    border-radius: 16px;
  }
  .gd-compare-panel-heading p { display: none; }
  .gd-compare-panel-heading h2 { font-size: 1rem; }
  .gd-compare-items { width: 100%; padding-bottom: 5px; }
  .gd-compare-item { flex-basis: 112px; width: 112px; }
  .gd-compare-item img { max-width: 112px; height: 64px; }
  .gd-compare-item strong { font-size: .64rem; }
  .gd-compare-actions { width: 100%; min-width: 0; text-align: left; }
  .gd-compare-count { margin-bottom: 6px; }
  .gd-compare-button { width: 100%; min-height: 44px; }
  .gd-compare-fab { right: 16px; bottom: 16px; width: 54px; height: 54px; }
}
@media (max-width: 370px) {
  .gd-compare-panel-heading span { display: none; }
  .gd-compare-item { flex-basis: 102px; width: 102px; }
  .gd-compare-item img { max-width: 102px; height: 58px; }
}

/* Busca de drones no cabeçalho: cards compactos em lista vertical. */
.gd-search-results {
    max-height: min(70vh, 620px);
    overflow-y: auto;
    padding: 6px;
}
.gd-search-drone-card {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: 8px;
    padding: 8px;
    border-radius: 10px;
    background: #fff;
}
.gd-search-drone-card + .gd-search-drone-card { border-top: 1px solid #edf1f5; border-top-left-radius: 0; border-top-right-radius: 0; }
.gd-search-drone-card:hover { background: #f8fafc; }
.gd-search-results .gd-search-drone-link {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    flex: 1 1 auto;
    min-width: 0;
    padding: 0;
    color: #172033;
    text-decoration: none;
}
.gd-search-results .gd-search-drone-link img {
    width: 82px;
    height: 82px;
    padding: 4px;
    border-radius: 9px;
    object-fit: contain;
    background: #fff;
}
.gd-search-drone-content { min-width: 0; }
.gd-search-drone-content > strong {
    display: block;
    margin-bottom: 7px;
    overflow: hidden;
    color: #0f172a;
    font-size: .87rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.gd-search-drone-specs {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 10px;
    margin: 0 0 6px;
    padding: 0;
    list-style: none;
}
.gd-search-drone-specs li {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #64748b;
    font-size: 0.875rem;
    line-height: 1;
}
.gd-search-drone-specs i { color: #334155; font-size: .72rem; }
.gd-search-drone-rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #334155;
    font-size: .7rem;
    font-weight: 700;
}
.gd-search-drone-rating i { color: rgb(255,187,0); }
.gd-search-compare {
    align-self: center;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 36px;
    padding: 7px 10px;
    border: 0;
    border-radius: 8px;
    background: #29abe2;
    color: #fff;
    font-size: .68rem;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}
.gd-search-compare:hover { background: #178fbe; transform: translateY(-1px); }
.gd-search-empty { margin: 0; padding: 16px; color: #64748b; font-size: .8rem; text-align: center; }

@media (max-width: 575px) {
    .gd-search-results { left: 0; right: 0; max-height: 65vh; }
    .gd-search-drone-card { align-items: center; }
    .gd-search-results .gd-search-drone-link { grid-template-columns: 68px minmax(0, 1fr); }
    .gd-search-results .gd-search-drone-link img { width: 68px; height: 68px; }
    .gd-search-drone-specs { gap: 4px 7px; }
    .gd-search-compare { width: 38px; height: 38px; padding: 0; border-radius: 50%; }
    .gd-search-compare span { display: none; }
}

/* Rating form: isolate interactive stars from legacy .avaliacao icon styles. */
.gd-review-form-wrap .gd-star-rating label i {
  color: #cbd5e1 !important;
}
.gd-review-form-wrap .gd-star-rating label.is-active i {
  color: rgb(255, 187, 0) !important;
}

/* Busca mais clean e confortável. */
.menu-principal .drone-search {
  width: 100%;
}

.menu-principal .pesquisar-drone {
  width: 100%;
  height: 46px;
  margin: 0;
  padding: 0 50px 0 18px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 14px;
  outline: 0;
  background: rgba(255,255,255,.94);
  color: #0f172a;
  font-family: 'Inter', sans-serif;
  font-size: .86rem;
  box-shadow: 0 8px 24px rgba(15,23,42,.08);
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.menu-principal .pesquisar-drone::placeholder {
  color: #94a3b8;
}

.menu-principal .pesquisar-drone:focus {
  border-color: #29abe2;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(41,171,226,.14), 0 12px 28px rgba(15,23,42,.12);
}

.menu-principal .pesquisa-icone {
  position: absolute;
  top: 50%;
  right: 5px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  float: none;
  transform: translateY(-50%);
  border-radius: 10px;
  background: #29abe2;
  color: #fff;
  pointer-events: none;
}

@media (min-width: 992px) {

  /* O dropdown pode ser maior que a coluna da busca sem alterar o grid do header. */
  .menu-principal .gd-search-results {
    left: 50%;
    right: auto;
    width: min(570px, calc(100vw - 40px));
    max-width: 570px;
    transform: translateX(-50%);
    top: calc(100% + 12px);
    padding: 8px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    box-shadow: 0 24px 60px rgba(15,23,42,.18);
  }

  .gd-search-drone-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 10px;
    border-radius: 13px;
  }

  .gd-search-results .gd-search-drone-link {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 14px;
  }

  .gd-search-results .gd-search-drone-link img {
    width: 88px;
    height: 88px;
    border-radius: 11px;
  }

  .gd-search-drone-content > strong {
    margin-bottom: 9px;
    font-size: .92rem;
  }

  /* 4K | 48 MP | 20 KM | 30 min sempre na mesma linha. */
  .gd-search-drone-specs {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    align-items: center;
    gap: 8px 15px;
    margin-bottom: 9px;
    white-space: nowrap;
  }

  .gd-search-drone-specs li {
    min-width: 0;
    font-size: 0.875rem;
    white-space: nowrap;
  }

  .gd-search-drone-specs i {
    font-size: .76rem;
  }

  .gd-search-compare {
    min-width: 88px;
    min-height: 38px;
    padding: 7px 10px;
    border-radius: 10px;
  }
}

/* Tablet: busca ocupa uma linha limpa sob logo/hambúrguer. */
@media (max-width: 991px) {

  .menu-principal .gd-search-results {
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
    transform: none;
    top: calc(100% + 8px);
    border-radius: 16px;
  }

  .gd-search-drone-specs {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    gap: 6px 12px;
    white-space: nowrap;
  }
}

/* Smartphone: 2 especificações em cima + 2 embaixo; nota e CTA abaixo. */
@media (max-width: 767px) {
  .menu-principal .pesquisar-drone {
    height: 44px;
    border-radius: 12px;
  }

  .menu-principal .pesquisa-icone {
    width: 34px;
    height: 34px;
    border-radius: 9px;
  }

  .gd-search-results {
    max-height: min(68vh, 560px);
    padding: 6px;
  }

  .gd-search-drone-card {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    padding: 10px;
    align-items: stretch;
  }

  .gd-search-results .gd-search-drone-link {
    width: 100%;
    grid-template-columns: 82px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
  }

  .gd-search-results .gd-search-drone-link img {
    width: 82px;
    height: 82px;
    padding: 3px;
    border-radius: 10px;
  }

  .gd-search-drone-content > strong {
    margin-bottom: 8px;
    font-size: .86rem;
  }

  .gd-search-drone-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
    margin-bottom: 9px;
    white-space: normal;
  }

  .gd-search-drone-specs li {
    width: 100%;
    min-width: 0;
    padding: 5px 7px;
    border-radius: 7px;
    background: #f8fafc;
    font-size: 0.875rem;
    white-space: nowrap;
  }

  .gd-search-drone-rating {
    margin-top: 1px;
    font-size: .72rem;
  }

  .gd-search-compare {
    width: 100%;
    height: auto;
    min-height: 42px;
    padding: 9px 14px;
    border-radius: 10px;
    font-size: .73rem;
  }

  .gd-search-compare span {
    display: inline;
  }
}

@media (max-width: 420px) {
  .gd-search-results .gd-search-drone-link {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 10px;
  }

  .gd-search-results .gd-search-drone-link img {
    width: 72px;
    height: 72px;
  }
}

/* Desktop: dropdown mais compacto e CTA próximo do conteúdo. */
@media (min-width: 992px) {
  .menu-principal .gd-search-results {
    width: min(570px, calc(100vw - 40px));
    max-width: 570px;
  }

  .menu-principal .gd-search-drone-card {
    grid-template-columns: minmax(0, 1fr) 88px;
  }

  .menu-principal .gd-search-compare {
    width: 88px;
    min-width: 88px;
    margin-left: 0;
  }
}

/* =========================================================
   PÁGINA 404 - GODRONES 2.4.7
========================================================= */
.gd-404-page {
  background: #f8fafc;
}

.gd-404-section {
  position: relative;
  padding: 130px 0 96px;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 15%, rgba(41,171,226,.16), transparent 28%),
    radial-gradient(circle at 88% 78%, rgba(37,99,235,.12), transparent 30%),
    linear-gradient(145deg, #0b1220 0%, #0f172a 52%, #111c30 100%);
}

.gd-404-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(300px, .85fr) minmax(0, 1.15fr);
  align-items: center;
  gap: 68px;
  max-width: 1120px;
  min-height: 520px;
  margin: 0 auto;
  padding: 64px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 30px;
  background: rgba(255,255,255,.035);
  box-shadow: 0 30px 80px rgba(0,0,0,.22);
  backdrop-filter: blur(12px);
}

.gd-404-card::before {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  right: -210px;
  top: -230px;
  border-radius: 50%;
  border: 70px solid rgba(41,171,226,.035);
  pointer-events: none;
}

.gd-404-visual,
.gd-404-content {
  position: relative;
  z-index: 2;
}

.gd-404-visual {
  display: flex;
  align-items: center;
  justify-content: center;
}

.gd-404-radar {
  position: relative;
  width: min(330px, 100%);
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(96,165,250,.18);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(37,99,235,.13) 0%, rgba(37,99,235,.03) 52%, transparent 70%);
}

.gd-404-radar::before,
.gd-404-radar::after {
  content: "";
  position: absolute;
  background: rgba(96,165,250,.12);
}

.gd-404-radar::before { width: 1px; height: 100%; }
.gd-404-radar::after { width: 100%; height: 1px; }

.gd-404-radar-ring {
  position: absolute;
  border: 1px solid rgba(96,165,250,.16);
  border-radius: 50%;
}
.gd-404-radar-ring-1 { inset: 17%; }
.gd-404-radar-ring-2 { inset: 34%; }
.gd-404-radar-ring-3 { inset: 46%; }

.gd-404-radar-line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 43%;
  height: 2px;
  margin-top: -1px;
  transform-origin: left center;
  background: linear-gradient(90deg, #29abe2, transparent);
  animation: gd404Radar 5s linear infinite;
}

.gd-404-drone-icon {
  position: relative;
  z-index: 3;
  width: 82px;
  height: 82px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(96,165,250,.22);
  border-radius: 24px;
  background: rgba(37,99,235,.16);
  color: #60a5fa;
  font-size: 2.35rem;
  box-shadow: 0 18px 45px rgba(0,0,0,.24);
}

.gd-404-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  color: #60a5fa;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: 1.7px;
}

.gd-404-number {
  margin: 0 0 6px;
  color: rgba(255,255,255,.06);
  font-family: 'Outfit', sans-serif;
  font-size: clamp(5.6rem, 11vw, 9.5rem);
  font-weight: 800;
  line-height: .78;
  letter-spacing: -7px;
  -webkit-text-stroke: 1px rgba(96,165,250,.14);
  user-select: none;
}

.gd-404-content h1 {
  max-width: 610px;
  margin: 24px 0 18px;
  color: #fff;
  font-family: 'Outfit', sans-serif;
  font-size: clamp(2.15rem, 4vw, 3.45rem);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -1px;
}

.gd-404-content p {
  max-width: 630px;
  margin: 0 0 32px;
  color: #94a3b8;
  font-size: .96rem;
  line-height: 1.75;
}

.gd-404-home-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 22px;
  border-radius: 12px;
  background: #2563eb;
  color: #fff;
  font-size: .84rem;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(37,99,235,.25);
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.gd-404-home-button:hover {
  background: #1d4ed8;
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 18px 38px rgba(37,99,235,.34);
}

.gd-404-home-button .bi-arrow-right { transition: transform .2s ease; }
.gd-404-home-button:hover .bi-arrow-right { transform: translateX(3px); }

@keyframes gd404Radar {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .gd-404-radar-line { animation: none; }
}

@media (max-width: 991px) {
  .gd-404-section { padding: 60px 0 72px; }
  .gd-404-card {
    grid-template-columns: 1fr;
    gap: 36px;
    padding: 46px;
    text-align: center;
  }
  .gd-404-radar { width: 250px; }
  .gd-404-content h1,
  .gd-404-content p { margin-left: auto; margin-right: auto; }
  .gd-404-number { letter-spacing: -4px; }
}

@media (max-width: 575px) {
  .gd-404-section { padding: 28px 0 42px; }
  .gd-404-card {
    gap: 28px;
    min-height: auto;
    padding: 32px 22px;
    border-radius: 22px;
  }
  .gd-404-radar { width: 190px; }
  .gd-404-drone-icon { width: 64px; height: 64px; border-radius: 18px; font-size: 1.75rem; }
  .gd-404-number { font-size: 5.2rem; letter-spacing: -3px; }
  .gd-404-content h1 { margin-top: 18px; font-size: 2rem; }
  .gd-404-content p { font-size: .9rem; }
  .gd-404-home-button { width: 100%; }
}

/* GoDrones 2.6.0 — status Sim/Não das Funções Extras */
.gd-spec-boolean{display:inline-flex;align-items:center;justify-content:center;min-width:26px;font-size:1.12rem;line-height:1}
.gd-spec-boolean--yes{color:#16a34a}
.gd-spec-boolean--no{color:#dc2626}

/* =========================================================
   BUSCA AJAX - AJUSTES 2.6.6
========================================================= */
.menu-principal .gd-search-compare {
  font-size: 1rem;
}

/* Scrollbar discreta e moderna da listagem de resultados. */
.menu-principal .gd-search-results {
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
  scrollbar-gutter: stable;
}

.menu-principal .gd-search-results::-webkit-scrollbar {
  width: 6px;
}

.menu-principal .gd-search-results::-webkit-scrollbar-track {
  background: transparent;
}

.menu-principal .gd-search-results::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}

.menu-principal .gd-search-results::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

@media (max-width: 767px) {
  .menu-principal .gd-search-compare {
    font-size: 1rem;
  }
}

/* =========================================================
   BUSCA AJAX - AJUSTES 2.6.7
   Botão Comparar com largura adequada e alinhamento corrigido.
========================================================= */
@media (min-width: 768px) {
  .menu-principal .gd-search-drone-card {
    grid-template-columns: minmax(0, 1fr) 120px;
  }

  .menu-principal .gd-search-compare {
    width: 120px;
    min-width: 120px;
    min-height: 42px;
    padding: 9px 12px;
    margin: 0;
    align-self: center;
    justify-self: end;
    line-height: 1.2;
    white-space: nowrap;
    text-align: center;
  }
}

/* Cards FPV: três atributos, no padrão visual dos cards de Drones. */
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul{display:flex;justify-content:center;text-align:center}
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li{flex:1 1 0;min-width:0;max-width:none;display:inline-flex;flex-direction:column;align-items:center;padding:0 8px;margin:0 0 10px;border-right:1px solid #ddd}
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li:last-child{border-right:0}
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li span{display:block;max-width:100%;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.35}
.gd-fpv-launch{font-size:.8rem;color:#64748b;margin:4px 0 14px}
.topo-drone-single .lista-atributos h3{overflow-wrap:anywhere}

/* A classe usa a largura do texto, sem quebra ou reticências. */
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li:first-child{flex:0 0 auto}
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li:first-child span{white-space:nowrap;overflow-wrap:normal;word-break:normal}

/* Autonomia completa em uma linha, como a classe. */
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li:nth-child(2){flex:0 0 auto}
.catalogo-drone.gd-card-fpv .conteudo-catalogo ul li:nth-child(2) span{white-space:nowrap;overflow-wrap:normal;word-break:normal}

/* One navigation layout for custom menus and the built-in menu. */
.menu-principal { position:relative; z-index:1050; width:100%; padding:15px 0; background:#101a2d; }
.menu-principal .gd-header-row { align-items:center; }
.menu-principal .gd-header-brand, .menu-principal .gd-header-search { position:relative; }
.menu-principal .gd-header-nav { position:static; }
.menu-principal .logo { margin-top:0; max-width:100%; }
.menu-desktop { display:flex; align-items:center; justify-content:flex-end; gap:24px; list-style:none; margin:0; padding:0; }
.menu-desktop li { position:relative; list-style:none; }
.menu-desktop a { display:block; padding:15px 0; color:#fff; font-weight:400; text-decoration:none; }
.menu-desktop a:hover, .menu-desktop a:focus-visible { color:#29abe2; }
.menu-desktop .menu-item-has-children > a { padding-right:28px; }
.menu-desktop .sub-menu { position:absolute; top:100%; left:0; min-width:230px; margin:0; padding:10px 0; background:#fff; border-radius:12px; box-shadow:0 10px 30px #0002; display:none; }
.menu-desktop .sub-menu a { padding:12px 20px; color:#444; }
.menu-desktop .sub-menu a:hover { background:#f5f7fa; color:#007bff; }
.menu-desktop .sub-menu .sub-menu { top:0; left:100%; }
.gd-submenu-toggle { position:absolute; right:0; top:8px; width:28px; height:36px; border:0; color:inherit; background:transparent; }
.menu-desktop > li > .gd-submenu-toggle { color:#fff; }
.gd-submenu-toggle::after { content:""; display:inline-block; width:7px; height:7px; border-right:2px solid; border-bottom:2px solid; transform:rotate(45deg); }
.gd-submenu-toggle[aria-expanded="true"]::after { transform:rotate(225deg); }
.menu-toggle, .menu-mobile-header, .gd-mobile-menu-socials, .menu-overlay { display:none; }
@media (min-width:1200px) {
  .menu-principal { position:absolute; background:transparent; }
  .menu-principal.sticky { position:fixed; top:0; background:rgba(15,23,42,.94); box-shadow:0 10px 30px #0002; }
  .admin-bar .menu-principal.sticky { top:32px; }
  .menu-desktop li:hover > .sub-menu, .menu-desktop li:focus-within > .sub-menu, .menu-desktop li.is-submenu-open > .sub-menu { display:block; }
}
@media (max-width:1199px) {
  .menu-principal { padding:11px 0; position:relative; }
  .menu-principal .gd-header-brand, .menu-principal .gd-header-search { width:100%; }
  .menu-principal .gd-header-brand { display:flex; align-items:center; justify-content:space-between; }
  .menu-principal .gd-header-search { margin-top:10px; }
  .menu-principal .gd-header-nav { width:0; height:0; padding:0; }
  .menu-principal .logo { width:180px; }
  .menu-toggle { display:block; width:42px; height:42px; padding:0; border:1px solid #ffffff26; border-radius:10px; background:#ffffff12; }
  .menu-toggle span { display:block; width:24px; height:2px; margin:5px auto; background:#fff; }
  .mobile-menu-wrapper { position:fixed; inset:0 0 0 auto; z-index:1052; width:min(360px,92vw); height:100vh; height:100dvh; overflow-y:auto; overscroll-behavior:contain; display:flex; flex-direction:column; padding-bottom:26px; color:#e2e8f0; background:radial-gradient(circle at 100% 0%,#2563eb38,transparent 34%),linear-gradient(180deg,#111c30,#0f172a 58%,#0b1220); box-shadow:-24px 0 60px #0005; border-left:1px solid #ffffff14; visibility:hidden; transform:translateX(100%); transition:transform .25s ease,visibility .25s; }
  .mobile-menu-wrapper.is-open { visibility:visible; transform:translateX(0); }
  body.menu-open { overflow:hidden; }
  body.menu-open .menu-principal { z-index:1200; }
  .menu-mobile-header { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; padding:21px 22px 18px; border-bottom:1px solid #ffffff14; background:#0f172a; }
  .menu-mobile-header img { width:168px; max-width:calc(100% - 58px); height:auto; }
  .menu-close { width:42px; height:42px; border:1px solid #ffffff1a; border-radius:12px; background:#ffffff0f; color:#fff; }
  .menu-desktop { display:block; padding:0 16px; }
  .menu-desktop > li { border-bottom:1px solid #ffffff12; }
  .menu-desktop > li > a { min-height:54px; padding:15px 8px; font-size:.94rem; color:#e2e8f0; }
  .menu-desktop a:hover, .menu-desktop .current-menu-item > a { color:#60a5fa; background:#2563eb21; border-radius:10px; }
  .menu-desktop .menu-item-has-children > a { padding-right:48px; }
  .gd-submenu-toggle { width:44px; height:44px; top:5px; color:#cbd5e1; }
  .menu-desktop .sub-menu, .menu-desktop .sub-menu .sub-menu { position:static; min-width:0; margin:0 0 7px; padding:7px; border:1px solid #ffffff0f; background:#ffffff09; box-shadow:none; border-radius:12px; }
  .menu-desktop li.is-submenu-open > .sub-menu { display:block; }
  .menu-desktop .sub-menu a { padding:11px 13px; color:#94a3b8; font-size:.83rem; }
  .menu-desktop .sub-menu a:hover { color:#fff; background:#ffffff0d; }
  .gd-mobile-menu-socials { display:block; margin:auto 24px 0; padding-top:24px; }
  .gd-mobile-socials-label { display:block; margin-bottom:12px; color:#94a3b8; font-size:.66rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
  .gd-mobile-socials-list { display:flex; gap:9px; }
  .gd-mobile-socials-list a { display:flex; align-items:center; justify-content:center; width:42px; height:42px; border:1px solid #ffffff17; border-radius:12px; background:#ffffff0e; color:#cbd5e1; }
  .menu-overlay { display:block; position:fixed; inset:0; z-index:1051; background:#0206179e; visibility:hidden; opacity:0; transition:opacity .25s,visibility .25s; }
  .menu-overlay.active { visibility:visible; opacity:1; }
  .admin-bar .mobile-menu-wrapper { top:var(--gd-admin-offset,32px); height:calc(100dvh - var(--gd-admin-offset,32px)); }
}
@media (prefers-reduced-motion:reduce) {
  .mobile-menu-wrapper, .menu-overlay { transition:none; }
}
.gd-manufacturers-row { display:flex; align-items:center; gap:24px; }
.gd-manufacturers-row h2 { flex:0 0 auto; margin:0; }
.gd-manufacturers-shell { display:flex; align-items:center; gap:10px; min-width:0; flex:1; }
.gd-manufacturers-scroller { display:flex; gap:12px; overflow-x:auto; min-width:0; flex:1; scrollbar-width:none; scroll-snap-type:x proximity; }
.gd-manufacturers-scroller::-webkit-scrollbar { display:none; }
.gd-manufacturers-scroller .fabricante-btn { flex:0 0 auto; white-space:nowrap; scroll-snap-align:start; }
.gd-manufacturers-shell > button { display:flex; align-items:center; justify-content:center; flex:0 0 42px; width:42px; height:42px; border:1px solid #e2e8f0; border-radius:50%; background:#fff; color:#111827; }
.gd-manufacturers-shell > button:hover:not(:disabled) { background:#2563eb; color:#fff; }
.gd-manufacturers-shell > button:disabled { opacity:.35; cursor:default; }
.gd-newsletter-status { min-height:1.5em; }
.gd-newsletter-status.is-error { color:#fca5a5; }
.gd-newsletter-status.is-success { color:#86efac; }
.gd-newsletter-form [type=submit]:disabled { opacity:.65; cursor:wait; }
@media (max-width:767px) {
  .gd-manufacturers-row { align-items:stretch; flex-direction:column; gap:14px; }
}
