/* Best floor for flat — Ariva campaign blog (ARV-BLG-007) */

/* Tight join: related-reading cards → contact band */
.best-floor-blog-page .main-content {
  padding-bottom: 0 !important;
}

.best-floor-blog-page #related-reading {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.best-floor-blog-page #related-reading .cluster-cta-panel {
  margin-bottom: 0;
}

.best-floor-prefooter {
  margin-top: 0;
  padding-top: clamp(2.5rem, 5vw, 4rem) !important;
}

.best-floor-blog-page .floor-band-grid {
  display: grid;
  gap: 16px;
  margin: 24px 0;
}

@media (min-width: 768px) {
  .best-floor-blog-page .floor-band-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.best-floor-blog-page .floor-band-card {
  padding: 22px;
  border: 1px solid var(--blog-border, #e0ddd4);
  border-radius: 14px;
  background: #fff;
}

.best-floor-blog-page .floor-band-card__label {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #0d2818;
  opacity: 0.75;
}

.best-floor-blog-page .floor-band-card__title {
  margin: 0 0 10px;
  font-family: inherit;
  font-size: 1.15rem;
  font-weight: 600;
}

.best-floor-blog-page .floor-band-card ul {
  margin: 0;
  padding-left: 1.1em;
  line-height: 1.55;
}

.best-floor-blog-page .orientation-diagram {
  display: grid;
  gap: 12px;
  margin: 24px 0;
}

@media (min-width: 640px) {
  .best-floor-blog-page .orientation-diagram {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.best-floor-blog-page .orientation-card {
  padding: 18px 20px;
  border-radius: 12px;
  border: 1px solid #e0ddd4;
  background: #faf9f6;
}

.best-floor-blog-page .orientation-card strong {
  display: block;
  margin-bottom: 8px;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
}

.best-floor-blog-page .profile-grid {
  display: grid;
  gap: 12px;
  margin: 20px 0;
}

@media (min-width: 640px) {
  .best-floor-blog-page .profile-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .best-floor-blog-page .profile-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.best-floor-blog-page .profile-card {
  padding: 18px;
  border: 2px solid #e0ddd4;
  border-radius: 12px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.2s, box-shadow 0.2s;
  font: inherit;
  color: inherit;
}

.best-floor-blog-page .profile-card:hover,
.best-floor-blog-page .profile-card:focus-visible {
  border-color: #c9a562;
  outline: none;
  box-shadow: 0 4px 16px rgba(13, 40, 24, 0.08);
}

.best-floor-blog-page .profile-card.is-active {
  border-color: #0d2818;
  background: #f8f6f0;
}

.best-floor-blog-page .profile-card__icon {
  font-size: 1.25rem;
  color: #0d2818;
  margin-bottom: 8px;
}

.best-floor-blog-page .profile-card__title {
  margin: 0 0 6px;
  font-weight: 600;
  font-size: 1rem;
}

.best-floor-blog-page .profile-card p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.45;
  opacity: 0.88;
}

.best-floor-blog-page .floor-matrix {
  margin-top: 20px;
  padding: 20px;
  border: 1px solid #e0ddd4;
  border-radius: 14px;
  background: #fff;
}

.best-floor-blog-page .floor-matrix__purpose {
  margin: 0 0 20px;
  padding: 16px 18px;
  border-left: 3px solid #c9a562;
  background: #f8f6f0;
  line-height: 1.55;
}

.best-floor-blog-page .floor-matrix__sliders {
  display: grid;
  gap: 18px;
}

.best-floor-blog-page .floor-slider label {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  font-weight: 600;
  font-size: 0.95rem;
}

.best-floor-blog-page .floor-slider input[type="range"] {
  width: 100%;
  accent-color: #0d2818;
}

.best-floor-blog-page .floor-slider__hint {
  margin: 6px 0 0;
  font-size: 0.85rem;
  opacity: 0.75;
}

.best-floor-blog-page .floor-matrix__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.best-floor-blog-page .floor-matrix__hint {
  margin: 0;
  font-size: 0.88rem;
  opacity: 0.8;
}

.best-floor-blog-page .floor-matrix__reset {
  border: 1px solid #0d2818;
  background: transparent;
  color: #0d2818;
  padding: 8px 14px;
  border-radius: 8px;
  cursor: pointer;
  font: inherit;
  font-size: 0.88rem;
}

.best-floor-blog-page .floor-matrix__result {
  margin-top: 20px;
  padding: 18px 20px;
  border-radius: 12px;
  background: #0d2818;
  color: #fff;
}

.best-floor-blog-page .floor-matrix__result-label {
  margin: 0 0 6px;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  opacity: 0.75;
}

.best-floor-blog-page .floor-matrix__result-band {
  margin: 0 0 10px;
  font-size: 1.35rem;
  font-weight: 600;
}

.best-floor-blog-page .floor-matrix__result-copy {
  margin: 0;
  line-height: 1.55;
  opacity: 0.92;
}

.best-floor-blog-page .floor-matrix__bands {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

@media (min-width: 768px) {
  .best-floor-blog-page .floor-matrix__bands {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.best-floor-blog-page .floor-matrix__band-meter {
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #e0ddd4;
  background: #faf9f6;
}

.best-floor-blog-page .floor-matrix__band-meter.is-leading {
  border-color: #c9a562;
  background: #f8f6f0;
}

.best-floor-blog-page .floor-matrix__band-meter span {
  display: block;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
  opacity: 0.75;
}

.best-floor-blog-page .floor-matrix__band-meter strong {
  display: block;
  margin-bottom: 8px;
}

.best-floor-blog-page .floor-matrix__bar {
  height: 6px;
  border-radius: 999px;
  background: #e8e5dc;
  overflow: hidden;
}

.best-floor-blog-page .floor-matrix__bar-fill {
  display: block;
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, #0d2818, #c9a562);
  transition: width 0.25s ease;
}

@media print {
  .best-floor-blog-page .toc-pills,
  .best-floor-blog-page .btn-whatsapp-pulse,
  .best-floor-blog-page .btn-call,
  .best-floor-blog-page .blog-back-to-top,
  .best-floor-blog-page .floor-matrix__reset {
    display: none !important;
  }

  .best-floor-blog-page .floor-matrix {
    break-inside: avoid;
  }
}
