/* Gramática canônica — Ideias para viajar e guias de destino. */
.ideas-page .ideas-hero {
  min-height: 0;
  padding: 112px 0 48px;
  background: var(--wine-950);
}

.ideas-page .ideas-hero::after { content: none; }

.ideas-page .ideas-hero-inner {
  grid-template-columns: minmax(0, 0.72fr) minmax(240px, 0.28fr);
  gap: clamp(28px, 5vw, 68px);
}

.ideas-page .ideas-hero-copy { max-width: 650px; }

.ideas-page .ideas-hero-copy h1,
.destination-page .destination-hero h1 {
  font-family: var(--font-display);
  font-size: clamp(2rem, 2.45vw, 2.15rem);
  line-height: 1.18;
  letter-spacing: -0.035em;
}

.ideas-page .ideas-hero-copy > p:not(.eyebrow) {
  margin-top: 16px;
  font-size: 0.95rem;
  line-height: 1.65;
}

.ideas-page .ideas-hero-actions { margin-top: 24px; }

.ideas-page .ideas-hero-guide {
  gap: 10px 12px;
  padding: 8px 0 8px 18px;
}

.ideas-page .ideas-now-section,
.ideas-page .ideas-explore-section,
.ideas-page .ideas-library-section,
.ideas-page .ideas-cta-section,
.ideas-page .ideas-investment-method,
.ideas-page .ideas-opportunities-section {
  padding-block: var(--site-section-edge-space);
}

.ideas-page .ideas-section-head { max-width: 720px; }
.ideas-page .ideas-section-head .section-title { max-width: 21ch; font-size: clamp(1.84rem, 2.4vw, 2.1rem); line-height: 1.2; }

.ideas-page .ideas-now-panel {
  grid-template-columns: minmax(0, 0.35fr) minmax(0, 0.65fr);
  gap: 24px;
  margin-top: 28px;
  padding: clamp(24px, 3.5vw, 38px);
  border-radius: 16px;
}

.ideas-page .ideas-now-intro h3 { margin-top: 18px; font-size: clamp(1.38rem, 2vw, 1.7rem); }
.ideas-page .ideas-now-intro > p:last-child { font-size: 0.94rem; line-height: 1.65; }
.ideas-page .ideas-now-panel::after { display: none; }

.ideas-page .ideas-month-selectors { gap: 14px; margin-top: 28px; }
.ideas-page .ideas-month-selector { padding: 22px; border-radius: 14px; }

.ideas-page .ideas-filters {
  gap: 12px;
  margin-top: 28px;
  padding: 18px;
  border-radius: 14px;
  background: var(--cream-100);
}

.ideas-page .ideas-destination-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 22px; margin-top: 20px; }

.ideas-page .ideas-destination-card {
  padding: 20px 0 22px;
  border: 0;
  border-top: 1px solid var(--sand-200);
  border-radius: 0;
  background: transparent;
}

.ideas-page .ideas-destination-card:hover { border-color: rgba(155, 4, 99, 0.32); background: transparent; }
.ideas-page .ideas-destination-card h3 { margin-top: 12px; font-size: 1.2rem; }
.ideas-page .ideas-card-summary { margin-top: 9px; font-size: 0.86rem; line-height: 1.55; }
.ideas-page .ideas-card-facts { gap: 10px; margin-top: 16px; padding-top: 14px; }
.ideas-page .ideas-card-facts dt { font-size: 0.64rem; }
.ideas-page .ideas-card-facts dd { margin-top: 3px; font-size: 0.76rem; line-height: 1.45; }
.ideas-page .ideas-card-link { margin-top: 16px; font-size: 0.8rem; }

.ideas-page .ideas-investment-method-grid { gap: 0 22px; margin-top: 28px; }
.ideas-page .ideas-investment-method-card { padding: 18px 0; border: 0; border-top: 1px solid var(--sand-200); border-radius: 0; background: transparent; }
.ideas-page .ideas-investment-method-icon { width: 38px; height: 38px; }
.ideas-page .ideas-investment-method-card h3 { margin-top: 16px; }

.ideas-page .ideas-cta,
.destination-page .destination-cta {
  min-height: 0;
  padding: 30px;
  border-radius: 16px;
  box-shadow: none;
}

.ideas-page .ideas-cta h2,
.destination-page .destination-cta h2 { font-size: clamp(1.5rem, 2.1vw, 1.8rem); }

.destination-page .destination-breadcrumb-wrap { padding-top: 106px; }
.destination-page .destination-hero { padding: 28px 0 44px; }
.destination-page .destination-hero-inner { grid-template-columns: minmax(0, 0.68fr) minmax(220px, 0.32fr); gap: clamp(26px, 5vw, 64px); }
.destination-page .destination-lead { margin-top: 16px; font-size: 0.95rem; line-height: 1.65; }
.destination-page .destination-hero-note { padding: 6px 0 6px 18px; }

.destination-page .destination-section { padding-block: var(--site-section-edge-space); border-bottom: 1px solid var(--sand-200); background: transparent !important; }
.destination-page .destination-prose > p:not(.eyebrow), .destination-page .destination-quick-answer { margin-top: 16px; font-size: 0.96rem; line-height: 1.72; }
.destination-page .destination-section h2 { max-width: 25ch; font-size: clamp(1.82rem, 2.35vw, 2.1rem); line-height: 1.2; }
.destination-page .destination-quick-answer { padding: 16px 0 0 18px; border-left-width: 2px; font-size: 1rem; }

.destination-page .destination-quick-grid { gap: 0; margin-top: 22px; border-top: 1px solid var(--sand-200); }
.destination-page .destination-quick-grid div { padding: 15px 14px; border: 0; border-right: 1px solid var(--sand-200); border-bottom: 1px solid var(--sand-200); border-radius: 0; background: transparent; }

.destination-page .destination-checklist { gap: 0; margin-top: 20px; border-top: 1px solid var(--sand-200); }
.destination-page .destination-checklist li { padding: 13px 0 13px 20px; border: 0; border-bottom: 1px solid var(--sand-200); border-radius: 0; background: transparent; }
.destination-page .destination-checklist li::before { top: 21px; left: 3px; width: 7px; height: 7px; }

.destination-page .destination-calendar { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 18px; margin-top: 22px; }
.destination-page .destination-calendar article { padding: 14px 0; border: 0; border-top: 1px solid var(--sand-200); border-radius: 0; background: transparent; }

.destination-page .destination-table-wrap { border: 0; border-radius: 0; }
.destination-page .destination-calendar-table { background: transparent; }
.destination-page .destination-calendar-table th, .destination-page .destination-calendar-table td { padding: 14px; }
.destination-page .destination-calendar-table thead th { background: var(--wine-900); }

.destination-page .destination-price-box { gap: 28px; padding: 30px; border-radius: 16px; }
.destination-page .destination-faq details { margin-top: 0; border: 0; border-top: 1px solid var(--sand-200); border-radius: 0; background: transparent; }
.destination-page .destination-faq details:first-of-type { margin-top: 20px; }
.destination-page .destination-faq summary { padding: 16px 30px 16px 0; }
.destination-page .destination-faq details p { padding: 0 0 18px; }
.destination-page .destination-sources ul { gap: 0; margin-top: 16px; padding-left: 0; list-style: none; border-top: 1px solid var(--sand-200); }
.destination-page .destination-sources li { padding: 12px 0; border-bottom: 1px solid var(--sand-200); }
.destination-page .destination-cta-section { padding-block: var(--site-section-edge-space); background: var(--cream-100); }

@media (max-width: 920px) {
  .ideas-page .ideas-destination-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .destination-page .destination-calendar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .ideas-page .ideas-hero { padding: 100px 0 36px; }
  .ideas-page .ideas-hero-inner, .destination-page .destination-hero-inner { grid-template-columns: 1fr; gap: 24px; }
  .ideas-page .ideas-hero-copy h1, .destination-page .destination-hero h1 { font-size: clamp(1.76rem, 7.7vw, 1.95rem); }
  .ideas-page .ideas-hero-guide { display: grid; max-width: none; padding-left: 16px; }
  .ideas-page .ideas-now-panel, .ideas-page .ideas-month-selectors, .ideas-page .ideas-filters { grid-template-columns: 1fr; }
  .ideas-page .ideas-destination-grid, .ideas-page .ideas-investment-method-grid { grid-template-columns: 1fr; }
  .ideas-page .ideas-destination-card { padding-block: 16px; }
  .ideas-page .ideas-card-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ideas-page .ideas-cta, .destination-page .destination-cta, .destination-page .destination-price-box { padding: 24px 22px; }
  .destination-page .destination-breadcrumb-wrap { padding-top: 98px; }
  .destination-page .destination-hero { padding: 20px 0 36px; }
  .destination-page .destination-calendar { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
  .destination-page .destination-quick-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .destination-page .destination-price-box { grid-template-columns: 1fr; }
  .destination-page .destination-calendar-table tr { margin-bottom: 0; padding: 14px 0; border: 0; border-top: 1px solid var(--sand-200); border-radius: 0; background: transparent; }
}
