/* YourBrasil — Header reference container (hero-alignment task).
   Header base recipe was max-width:1200px; padding:0 40px.
   Widened per request to bring logo/CTA closer to viewport edges. */
@media (min-width: 1025px) {
  .inside-header {
    max-width: 1280px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* ===== Hero horizontal alignment — matches header reference (max-width:1280px; padding:0 24px) ===== */

/* Home (page-id-2): .hero > .hero-inner > .hero-grid */
@media (min-width: 1025px) {
  body.page-id-2 .hero-inner { padding-left: 0 !important; padding-right: 0 !important; }
  body.page-id-2 .hero-grid {
    max-width: 1280px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* Destinations listing (page-id-196): .page-hero > .wrap.page-hero-center */
@media (min-width: 1025px) {
  body.page-id-196 .page-hero-center {
    max-width: 1280px !important;
    width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }
}

/* Contacts (page-id-215): .hero > .hero-inner > .hero-center */
@media (min-width: 1025px) {
  body.page-id-215 .hero-inner { padding-left: 0 !important; padding-right: 0 !important; }
  body.page-id-215 .hero-center {
    max-width: 1280px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* ===== Magazine (page-id-173): hero HTML existed with NO CSS at all — full style added ===== */
body.page-id-173 .yb-hero {
  position: relative;
  padding: 120px 0 80px;
  background:
    linear-gradient(180deg, rgba(14,26,36,0.15) 0%, rgba(14,26,36,0.75) 70%, rgba(14,26,36,0.92) 100%),
    radial-gradient(ellipse at 85% 15%, rgba(198,167,94,0.28), transparent 55%),
    radial-gradient(ellipse at 8% 90%, rgba(216,207,196,0.12), transparent 60%),
    linear-gradient(135deg, #16232F 0%, #0E1A24 55%, #12202B 100%);
  color: #D8CFC4;
  overflow: hidden;
}
body.page-id-173 .yb-wrap { position: relative; z-index: 2; max-width: 1232px; margin: 0 auto; padding: 0 24px; box-sizing: border-box; }
body.page-id-173 .yb-hero-grid { display: grid; grid-template-columns: 1fr; gap: 36px; align-items: start; }
body.page-id-173 .yb-eyebrow { display: inline-block; font-size: 12.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #C6A75E; margin-bottom: 14px; }
body.page-id-173 .yb-eyebrow-soft { color: rgba(216,207,196,0.75); }
body.page-id-173 .yb-hero-main h1 { font-size: clamp(30px, 4vw, 46px); line-height: 1.15; color: #D8CFC4; margin: 0 0 16px; max-width: 16ch; }
body.page-id-173 .yb-hero-copy { font-size: 16.5px; line-height: 1.6; color: rgba(216,207,196,0.82); max-width: 46ch; margin: 0; }
body.page-id-173 .yb-hero-side { background: rgba(216,207,196,0.06); border: 1px solid rgba(216,207,196,0.16); border-radius: 18px; padding: 28px; }
body.page-id-173 .yb-side-title { font-size: 21px; color: #D8CFC4; margin: 10px 0 12px; line-height: 1.3; }
body.page-id-173 .yb-side-copy { font-size: 14.5px; line-height: 1.6; color: rgba(216,207,196,0.78); margin: 0 0 20px; }
body.page-id-173 .yb-side-list { display: flex; flex-direction: column; gap: 14px; }
body.page-id-173 .yb-side-list > div { display: flex; gap: 12px; align-items: flex-start; }
body.page-id-173 .yb-side-list svg { width: 18px; height: 18px; flex-shrink: 0; color: #C6A75E; margin-top: 2px; }
body.page-id-173 .yb-side-list span { font-size: 13.5px; line-height: 1.5; color: rgba(216,207,196,0.78); }
@media (min-width: 1025px) {
  body.page-id-173 .yb-wrap { max-width: 1280px !important; padding-left: 24px !important; padding-right: 24px !important; }
  body.page-id-173 .yb-hero-grid { grid-template-columns: 1.15fr 0.85fr; gap: 64px; }
}

/* ===== Partners (page-id-234): hero HTML existed with NO CSS at all — full style added ===== */
body.page-id-234 .yb-partners-hero {
  position: relative;
  padding: 120px 0 80px;
  background:
    linear-gradient(180deg, rgba(14,26,36,0.15) 0%, rgba(14,26,36,0.75) 70%, rgba(14,26,36,0.92) 100%),
    radial-gradient(ellipse at 85% 15%, rgba(198,167,94,0.28), transparent 55%),
    radial-gradient(ellipse at 8% 90%, rgba(216,207,196,0.12), transparent 60%),
    linear-gradient(135deg, #16232F 0%, #0E1A24 55%, #12202B 100%);
  color: #D8CFC4;
  overflow: hidden;

  background-size: cover;
  background-position: center;
}
body.page-id-234 .yb-wrap { position: relative; z-index: 2; max-width: 1232px; margin: 0 auto; padding: 0 24px; box-sizing: border-box; }
body.page-id-234 .yb-partners-hero-grid { display: grid; grid-template-columns: 1fr; gap: 36px; align-items: start; }
body.page-id-234 .yb-eyebrow { display: inline-block; font-size: 12.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #C6A75E; margin-bottom: 14px; }
body.page-id-234 .yb-eyebrow-soft { color: rgba(216,207,196,0.75); }
body.page-id-234 .yb-partners-hero-main h1 { font-size: clamp(30px, 4vw, 46px); line-height: 1.15; color: #D8CFC4; margin: 0 0 16px; max-width: 18ch; }
body.page-id-234 .yb-hero-copy { font-size: 16.5px; line-height: 1.6; color: rgba(216,207,196,0.82); max-width: 46ch; margin: 0; }
body.page-id-234 .yb-partners-hero-side { background: rgba(216,207,196,0.06); border: 1px solid rgba(216,207,196,0.16); border-radius: 18px; padding: 28px; }
body.page-id-234 .yb-partners-hero-side h2 { font-size: 21px; color: #D8CFC4; margin: 10px 0 12px; line-height: 1.3; }
body.page-id-234 .yb-partners-hero-side p { font-size: 14.5px; line-height: 1.6; color: rgba(216,207,196,0.78); margin: 0; }
@media (min-width: 1025px) {
  body.page-id-234 .yb-wrap { max-width: 1280px !important; padding-left: 24px !important; padding-right: 24px !important; }
  body.page-id-234 .yb-partners-hero-grid { grid-template-columns: 1.15fr 0.85fr; gap: 64px; }
}

/* ===== Local Network (page-id-234): everything below the hero had zero CSS — added to
   match the Partners (page-id-785) dark navy/gold design system. Reuses the same
   .form-shell WPForms dark-reskin recipe used on page-id-785 (form 782), adapted to
   this page\'s form (229). ===== */

body.page-id-234 .yb-partners-page {
  background: #0E1A24;
  color: #D8CFC4;
}

body.page-id-234 .yb-partners-intro,
body.page-id-234 .yb-partners-values,
body.page-id-234 .yb-partners-form-section {
  padding: 88px 0;
}

body.page-id-234 .yb-partners-intro-grid,
body.page-id-234 .yb-partners-form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 36px;
  align-items: start;
}
@media (min-width: 1025px) {
  body.page-id-234 .yb-partners-intro-grid { grid-template-columns: 1.1fr 0.9fr; gap: 64px; }
  body.page-id-234 .yb-partners-form-grid { grid-template-columns: 1fr 1fr; gap: 64px; }
}

body.page-id-234 .yb-partners-intro h2,
body.page-id-234 .yb-partners-form-copy h2 {
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 800;
  color: #D8CFC4;
  margin: 0 0 14px;
}
body.page-id-234 .yb-partners-intro p,
body.page-id-234 .yb-partners-form-copy p {
  color: rgba(216, 207, 196, 0.72);
  font-size: 15.5px;
  line-height: 1.6;
}

body.page-id-234 .yb-partners-checklist {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
body.page-id-234 .yb-partners-checklist > div {
  position: relative;
  padding: 14px 20px 14px 40px;
  background: rgba(216, 207, 196, 0.06);
  border: 1px solid rgba(236, 227, 213, 0.12);
  border-radius: 14px;
  color: #D8CFC4;
  font-size: 14.5px;
  line-height: 1.5;
}
body.page-id-234 .yb-partners-checklist > div::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 18px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #C6A75E;
}

body.page-id-234 .yb-partners-values-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
@media (min-width: 768px) {
  body.page-id-234 .yb-partners-values-grid { grid-template-columns: repeat(3, 1fr); }
}
body.page-id-234 .yb-value-card {
  background: #1E2C38;
  border: 1px solid rgba(236, 227, 213, 0.12);
  border-radius: 18px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
  padding: 30px 24px;
}
body.page-id-234 .yb-value-card h3 {
  font-size: 17px;
  margin: 0 0 10px;
  color: #D8CFC4;
}
body.page-id-234 .yb-value-card p {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.6;
  color: rgba(216, 207, 196, 0.72);
}

body.page-id-234 .form-shell {
  background: rgba(216, 207, 196, 0.06);
  border: 1px solid rgba(236, 227, 213, 0.12);
  padding: 32px;
  border-radius: 18px;
}

body.page-id-234 #wpforms-229 {
  --wpforms-field-border-color: rgba(216, 207, 196, 0.22) !important;
  --wpforms-field-background-color: rgba(216, 207, 196, 0.08) !important;
  --wpforms-field-text-color: #D8CFC4 !important;
  --wpforms-label-color: rgba(216, 207, 196, 0.65) !important;
  --wpforms-label-sublabel-color: rgba(216, 207, 196, 0.5) !important;
  --wpforms-button-background-color: #C6A75E !important;
  --wpforms-button-text-color: #0E1A24 !important;
  --wpforms-field-border-radius: 12px !important;
  --wpforms-button-border-radius: 999px !important;
  --wpforms-background-color: transparent !important;
  --wpforms-container-padding: 0px !important;
  --wpforms-container-border-width: 0px !important;
}

body.page-id-234 #wpforms-229 input[type="text"],
body.page-id-234 #wpforms-229 input[type="email"],
body.page-id-234 #wpforms-229 input[type="tel"],
body.page-id-234 #wpforms-229 textarea,
body.page-id-234 #wpforms-229 select,
body.page-id-234 #wpforms-229 .choices__inner {
  background-color: rgba(216, 207, 196, 0.08) !important;
  color: #D8CFC4 !important;
  border-color: rgba(216, 207, 196, 0.22) !important;
}

body.page-id-234 #wpforms-229 .wpforms-field-label,
body.page-id-234 #wpforms-229 label.wpforms-field-label {
  color: rgba(216, 207, 196, 0.65) !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: normal !important;
}

body.page-id-234 #wpforms-229 .wpforms-submit-container button,
body.page-id-234 #wpforms-229 button.wpforms-submit,
body.page-id-234 #wpforms-229 button[type="submit"] {
  background-color: #C6A75E !important;
  color: #0E1A24 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}

body.page-id-234 #wpforms-229 .wpforms-container {
  background: transparent !important;
}

body.page-id-234 .form-shell .wpforms-field-label {
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: normal !important;
}

body.page-id-234 .form-shell .wpforms-field input[type="text"],
body.page-id-234 .form-shell .wpforms-field input[type="email"],
body.page-id-234 .form-shell .wpforms-field input[type="tel"],
body.page-id-234 .form-shell .wpforms-field textarea,
body.page-id-234 .form-shell .wpforms-field select {
  font-family: Verdana, Geneva, sans-serif !important;
  transition: border-color 0.15s, background-color 0.15s;
}

body.page-id-234 .form-shell .wpforms-field input:focus,
body.page-id-234 .form-shell .wpforms-field textarea:focus,
body.page-id-234 .form-shell .wpforms-field select:focus {
  border-color: #C6A75E !important;
  background: rgba(216, 207, 196, 0.12) !important;
  outline: none !important;
}

body.page-id-234 .form-shell ::placeholder {
  color: rgba(216, 207, 196, 0.35) !important;
  opacity: 1 !important;
}

body.page-id-234 .form-shell .wpforms-field-select select option {
  background: #0E1A24;
  color: #D8CFC4;
}

body.page-id-234 .form-shell .wpforms-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 700 !important;
  border: 1.5px solid transparent !important;
  cursor: pointer;
  transition: transform 0.15s, background-color 0.15s, box-shadow 0.15s;
}

body.page-id-234 .form-shell .wpforms-submit:hover {
  background: #AD8B45 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(14, 26, 36, 0.08);
}

body.page-id-234 .form-shell .wpforms-error {
  color: #ff9b9b !important;
}

body.page-id-234 .form-shell .wpforms-confirmation-container-full {
  background: rgba(216, 207, 196, 0.06);
  border: 1px solid rgba(216, 207, 196, 0.22);
  border-radius: 18px;
  padding: 24px;
  color: #D8CFC4 !important;
  font-family: Verdana, Geneva, sans-serif;
}

body.page-id-234 .form-shell .wpforms-confirmation-container-full p,
body.page-id-234 .form-shell .wpforms-confirmation-container-full * {
  color: #D8CFC4 !important;
  font-family: Verdana, Geneva, sans-serif !important;
}

/* ===== Font fix: Montserrat was loaded via Google Fonts but no rule ever applied it — site-wide fallback was Verdana (hardcoded per-page in several snippets, e.g. "body{font-family:Verdana,Geneva,sans-serif}"). Forcing Montserrat everywhere with !important since those rules aren't !important themselves. ===== */
* {
  font-family: 'Montserrat', Verdana, Geneva, sans-serif !important;
}

/* ===== Single blog posts & single destinations: LEFT edge only — these use GP's native
   right-sidebar layout with a real WPForms widget in the sidebar, so the RIGHT edge stays
   sidebar-bound (kept as-is; flagged in report). Left edge brought to the new 96.5px reference. ===== */
@media (min-width: 1025px) {
  body.single-post .container,
  body.single-destination .container {
    max-width: 1280px !important;
  }
  body.single-post .inside-article,
  body.single-destination .inside-article {
    padding-left: 24px !important;
  }
}

/* ===== "In pictures" carousel: hide the native horizontal scrollbar on the shared
   destination single template (.dest-carousel-track, used by all destination pages).
   Prev/next buttons and touch/trackpad drag still work — this only hides the manual
   scrollbar UI, scroll-snap behaviour is untouched. ===== */
.dest-carousel-track {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* old Edge/IE */
}
.dest-carousel-track::-webkit-scrollbar {
  display: none; /* Chrome, Safari, new Edge */
}

/* ===== Destination single template (shared, all /destination/*): align EVERY section wrap
   to the same header reference as the hero. Excludes .closing-cta, which is an intentionally
   narrow centered CTA box (own 640px max-width), not a full content section. ===== */
@media (min-width: 1025px) {
  body.single-destination .dest-section > .wrap,
  body.single-destination .dest-carousel-section > .wrap {
    max-width: 1280px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* ===== History timeline ("How Bonito came to be" etc.) — two columns on desktop,
   newspaper-style (fills column 1 top-to-bottom, then column 2), preserving item order. ===== */
@media (min-width: 1025px) {
  body.single-destination .dest-timeline {
    display: block !important;
    column-count: 2;
    column-gap: 56px;
  }
  body.single-destination .dest-timeline-item {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    padding-bottom: 18px;
  }
}

/* ===== "What else we brief agencies on" list — was plain browser bullets, now matches
   the gold checkmark treatment used in "Curiosities & practical notes" (.chk spans). ===== */
body.single-destination .dest-agency-box ul {
  list-style: none;
  padding-left: 0;
}
body.single-destination .dest-agency-box li {
  position: relative;
  padding-left: 26px;
}
body.single-destination .dest-agency-box li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  top: 0;
  color: #C6A75E;
  font-weight: 700;
}

/* YourBrasil — Destination single template: widen internal content blocks
   (stats, charts, grids, lists) to the same header extremes as the section
   wraps themselves. Overview paragraph gets 80% width (readability), not
   full extremes, per request. */
@media (min-width: 1025px) {
  body.single-destination .dest-about-text {
    max-width: 80% !important;
    width: 80% !important;
  }

  body.single-destination .dest-getting-there,
  body.single-destination .dest-grid-2,
  body.single-destination .dest-landmarks,
  body.single-destination .dest-agency-box,
  body.single-destination .dest-stats-row,
  body.single-destination .dest-chart-block,
  body.single-destination .dest-dishes-grid,
  body.single-destination .dest-timeline {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* These grids use fixed-pixel columns; switch to fluid columns so they
     actually stretch to fill the widened container instead of leaving
     empty space on the right. */
  body.single-destination .dest-getting-there,
  body.single-destination .dest-grid-2,
  body.single-destination .dest-dishes-grid {
    grid-template-columns: 1fr 1fr !important;
  }
  body.single-destination .dest-stats-row {
    grid-template-columns: 1fr 1fr 1fr 1fr !important;
  }
}

/* Good to know / Curiosities: remove the dash generated before each row,
   keep only the gold checkmark span. */
body.single-destination .dest-curio::before {
  content: none !important;
}


/* YourBrasil — Hero title (H1) uniformity across every hero on the site.
   Previous state was inconsistent: 46-58px, and Magazine/Partners were
   regular weight (400, not bold at all). Unified to one size + a bolder
   weight, same across Home, Destinations listing, Contacts, Magazine,
   Partners and every single-destination hero. */
@media (min-width: 1025px) {
  body.page-id-2 .hero-copy h1,
  body.page-id-196 .page-hero-center h1,
  body.page-id-215 .hero-center h1,
  body.single-destination .hero-center h1,
  body.page-id-173 .yb-hero-main-inner h1,
  body.page-id-234 .yb-partners-hero-main h1 {
    font-size: 60px !important;
    font-weight: 800 !important;
    line-height: 1.14 !important;
  }
}


/* YourBrasil — Uniform hero height across the whole site, matching Home's
   own recipe (.hero { min-height: 100vh }). Before this: Contacts was
   hardcoded to 92vh, Destinations/Magazine/Partners had no min-height at
   all (pure content-driven height, visibly shorter than Home). Magazine
   and Partners heroes also weren't flex-centered, so just adding height
   would leave content pinned to the top with dead space below — added
   flex + vertical centering there to match how the other heroes behave. */
@media (min-width: 1025px) {
  body.page-id-215 section.hero,
  body.page-id-196 section.page-hero,
  body.page-id-173 section.yb-hero,
  body.page-id-234 section.yb-partners-hero {
    min-height: 100vh !important;
  }

  body.page-id-173 section.yb-hero,
  body.page-id-234 section.yb-partners-hero {
    display: flex !important;
    align-items: center !important;
  }
}


/* YourBrasil — Destination page redesign pass: bring card treatment and
   section-heading scale in line with the Home page's design system.
   Home's cards (.stat-card, .service-card) use a solid navy fill, a soft
   drop shadow and 18px radius; the destination template's cards were
   flat, shadow-less, translucent tiles. Also Home's non-hero section
   headings run at 36px vs the destination template's 28px. */
@media (min-width: 1025px) {
  body.single-destination .dest-section h2 {
    font-size: 36px !important;
  }
}

body.single-destination .dest-stat-tile,
body.single-destination .dest-chart-block {
  background: rgb(22, 35, 47) !important;
  border: 1px solid rgba(236, 227, 213, 0.1) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4) !important;
}

body.single-destination .dest-airport-card,
body.single-destination .dest-dish,
body.single-destination .dest-landmark,
body.single-destination .dest-agency-box {
  background: rgb(30, 44, 56) !important;
  border: 1px solid rgba(236, 227, 213, 0.12) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4) !important;
}


/* ===== /destinations/ listing page — dark theme conversion (page-id-196) =====
   Converts the 5 region sections from the previous light cream/beige scheme
   to the site's standard dark navy theme, matching Home and destination-single. */
body.page-id-196 {
  background: rgb(14, 26, 36) !important;
}
body.page-id-196 section.region {
  background: rgb(14, 26, 36) !important;
}
body.page-id-196 section.region:nth-child(2n) {
  background: rgb(19, 33, 44) !important;
}
body.page-id-196 .region-nav {
  background: rgb(19, 33, 44) !important;
  border-bottom: 1px solid rgba(236, 227, 213, 0.16) !important;
}
body.page-id-196 .region-nav-inner a {
  color: rgba(236, 227, 213, 0.72) !important;
}
body.page-id-196 .region-head h2 {
  color: rgb(236, 227, 213) !important;
}
@media (min-width: 1025px) {
  body.page-id-196 .region-head h2 {
    font-size: 36px !important;
  }
}
body.page-id-196 .region-head p {
  color: rgba(216, 207, 196, 0.86) !important;
}
body.page-id-196 .region-head .eyebrow {
  color: rgb(198, 167, 94) !important;
}
body.page-id-196 .dest-card {
  background: rgb(30, 44, 56) !important;
  border: 1px solid rgba(236, 227, 213, 0.12) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4) !important;
}
body.page-id-196 .dest-image {
  background-image: repeating-linear-gradient(115deg, rgba(236, 227, 213, 0.06) 0px, rgba(236, 227, 213, 0.06) 1px, rgba(0, 0, 0, 0) 1px, rgba(0, 0, 0, 0) 12px) !important;
}
body.page-id-196 .dest-name {
  color: rgb(236, 227, 213) !important;
}
body.page-id-196 .dest-code {
  color: rgb(198, 167, 94) !important;
}
body.page-id-196 .dest-desc {
  color: rgba(236, 227, 213, 0.72) !important;
}


/* ===== Mobile/tablet fix: fixed header overlapping hero content (2026-08-16) =====
   Root cause: .site-header is position:fixed at all widths. On desktop it's short (100px)
   and the hero is vertically centered in a 100vh box, so content clears it easily. Below
   ~900px width the header grows to 100-155px (nav wraps/toggle) but hero content had zero
   top offset, so the H1/eyebrow rendered directly under the fixed header on EVERY destination
   page (shared template, confirmed on Bonito + Rio de Janeiro) from ~320px up to ~880px width.
   Home page had a much smaller version (only the eyebrow tag clipped the header's bottom edge,
   H1 itself was already clear). Confirmed via direct iframe viewport testing at multiple widths
   (320/360/375/390/414/428/600/700/768/800/900px), not just visual screenshots. */
@media (max-width: 899px) {
  body.single-destination .hero-center {
    padding-top: 170px !important;
  }
  body.page-id-2 .hero-copy {
    padding-top: 30px !important;
  }
}


/* ===== Destinations listing hero: widen subtitle column (2026-08-16) ===== */
body.page-id-196 .page-hero-center p {
  max-width: 760px !important;
}

/* ===== Contacts page (page-id-215): WPForms Request-a-Proposal form reskin =====
   Replaces the old non-functional Custom HTML form-shell fields with a real WPForms form (ID 744).
   Overrides WPForms modern-theme CSS custom properties + a few explicit rules so the plugin's
   default light styling matches the site's dark navy/gold theme (see .form-shell / .field / .btn-primary
   base rules already defined earlier in this stylesheet). */
body.page-id-215 #wpforms-744 {
  --wpforms-field-border-color: rgba(216, 207, 196, 0.22) !important;
  --wpforms-field-background-color: rgba(216, 207, 196, 0.08) !important;
  --wpforms-field-text-color: #D8CFC4 !important;
  --wpforms-label-color: rgba(216, 207, 196, 0.65) !important;
  --wpforms-label-sublabel-color: rgba(216, 207, 196, 0.5) !important;
  --wpforms-button-background-color: #C6A75E !important;
  --wpforms-button-text-color: #0E1A24 !important;
  --wpforms-field-border-radius: 12px !important;
  --wpforms-button-border-radius: 999px !important;
  --wpforms-background-color: transparent !important;
  --wpforms-container-padding: 0px !important;
  --wpforms-container-border-width: 0px !important;
}
body.page-id-215 .form-shell .wpforms-field-label {
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: normal !important;
}
body.page-id-215 .form-shell .wpforms-field input[type="text"],
body.page-id-215 .form-shell .wpforms-field input[type="email"],
body.page-id-215 .form-shell .wpforms-field input[type="tel"],
body.page-id-215 .form-shell .wpforms-field textarea,
body.page-id-215 .form-shell .wpforms-field select {
  font-family: Verdana, Geneva, sans-serif !important;
  transition: border-color 0.15s, background-color 0.15s;
}
body.page-id-215 .form-shell .wpforms-field input:focus,
body.page-id-215 .form-shell .wpforms-field textarea:focus,
body.page-id-215 .form-shell .wpforms-field select:focus {
  border-color: #C6A75E !important;
  background: rgba(216, 207, 196, 0.12) !important;
  outline: none !important;
}
body.page-id-215 .form-shell ::placeholder {
  color: rgba(216, 207, 196, 0.35) !important;
  opacity: 1 !important;
}
body.page-id-215 .form-shell .wpforms-field-select select option {
  background: #0E1A24;
  color: #D8CFC4;
}
body.page-id-215 .form-shell .wpforms-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 700 !important;
  border: 1.5px solid transparent !important;
  cursor: pointer;
  transition: transform 0.15s, background-color 0.15s, box-shadow 0.15s;
}
body.page-id-215 .form-shell .wpforms-submit:hover {
  background: #AD8B45 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(14, 26, 36, 0.08);
}
body.page-id-215 .form-shell .wpforms-error {
  color: #ff9b9b !important;
}
body.page-id-215 .form-shell .wpforms-confirmation-container-full {
  background: rgba(216, 207, 196, 0.06);
  border: 1px solid rgba(216, 207, 196, 0.22);
  border-radius: 18px;
  padding: 24px;
  color: #D8CFC4 !important;
  font-family: Verdana, Geneva, sans-serif;
}
body.page-id-215 .form-shell .wpforms-confirmation-container-full p,
body.page-id-215 .form-shell .wpforms-confirmation-container-full * {
  color: #D8CFC4 !important;
  font-family: Verdana, Geneva, sans-serif !important;
}

/* YourBrasil — Mobile header logo sizing fix (2026-08-16).
   Root cause: .site-logo img has no explicit width/height constraint on mobile beyond
   max-width:100%, so it renders at ~296px at a 375px viewport (nearly identical to its
   320px desktop render) and forces the GeneratePress .menu-toggle hamburger to wrap onto
   a second row instead of sitting beside the logo. GeneratePress's "Logo Width" customizer
   setting (320px) is a single global value with no separate mobile/tablet control in this
   install, so fixing it here in Additional CSS (loads site-wide, incl. the floating
   "theme integration" header used on destination pages and Intelligence). */
@media (max-width: 768px) {
  .site-logo img {
    max-height: 32px !important;
    width: auto !important;
    max-width: 200px !important;
  }
}

/* ===== Mobile menu panel refinement (hamburger nav open state)  global GeneratePress fix.
 *    Root cause: .main-navigation lives inside .inside-header, which has padding:0 30px at
 *    <=768px. The toggled mobile nav inherited that padding, so the open panel rendered as an
 *    inset ~85%-width box instead of a clean full-bleed panel, plus the nav's 1.5em auto
 *    margin-top left a transparent gap between the header row and the dark menu box. Also,
 *    .site-navigation is inside a position:fixed header, so the panel overlays hero content
 *    below rather than pushing it down  an opaque full-width panel with its own shadow reads
 *    as an intentional overlay instead of a floating box. Verified same structure/issue on
 *    homepage, destination pages and Intelligence (theme-wide, not page-specific). */
@media (max-width: 768px) {
	.main-navigation.toggled {
		    margin-top: 0;
	}
	.main-navigation.toggled .inside-navigation.grid-container {
		    margin-left: -30px;
		    margin-right: -30px;
		    max-width: none;
		    width: auto;
	}
	.main-navigation.toggled .main-nav {
		    width: 100%;
		    padding: 22px 10px 30px;
		    box-shadow: 0 28px 44px -18px rgba(0, 0, 0, 0.6);
	}
}
	}
	}
	}
}

/* YourBrasil — Trade Partner Registration form (Partners page, page-id-785).
   Same recipe as the Contacts page's WPForms override (form 744): CSS custom properties +
   a few explicit rules so the plugin's default light styling matches the dark navy/gold theme. */
body.page-id-785 #wpforms-782 {
  --wpforms-field-border-color: rgba(216, 207, 196, 0.22) !important;
  --wpforms-field-background-color: rgba(216, 207, 196, 0.08) !important;
  --wpforms-field-text-color: #D8CFC4 !important;
  --wpforms-label-color: rgba(216, 207, 196, 0.65) !important;
  --wpforms-label-sublabel-color: rgba(216, 207, 196, 0.5) !important;
  --wpforms-button-background-color: #C6A75E !important;
  --wpforms-button-text-color: #0E1A24 !important;
  --wpforms-field-border-radius: 12px !important;
  --wpforms-button-border-radius: 999px !important;
  --wpforms-background-color: transparent !important;
  --wpforms-container-padding: 0px !important;
  --wpforms-container-border-width: 0px !important;
}
body.page-id-785 .form-shell .wpforms-field-label {
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: normal !important;
}
body.page-id-785 .form-shell .wpforms-field input[type="text"],
body.page-id-785 .form-shell .wpforms-field input[type="email"],
body.page-id-785 .form-shell .wpforms-field input[type="tel"],
body.page-id-785 .form-shell .wpforms-field textarea,
body.page-id-785 .form-shell .wpforms-field select {
  font-family: Verdana, Geneva, sans-serif !important;
  transition: border-color 0.15s, background-color 0.15s;
}
body.page-id-785 .form-shell .wpforms-field input:focus,
body.page-id-785 .form-shell .wpforms-field textarea:focus,
body.page-id-785 .form-shell .wpforms-field select:focus {
  border-color: #C6A75E !important;
  background: rgba(216, 207, 196, 0.12) !important;
  outline: none !important;
}
body.page-id-785 .form-shell ::placeholder {
  color: rgba(216, 207, 196, 0.35) !important;
  opacity: 1 !important;
}
body.page-id-785 .form-shell .wpforms-field-select select option {
  background: #0E1A24;
  color: #D8CFC4;
}
body.page-id-785 .form-shell .wpforms-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 700 !important;
  border: 1.5px solid transparent !important;
  cursor: pointer;
  transition: transform 0.15s, background-color 0.15s, box-shadow 0.15s;
}
body.page-id-785 .form-shell .wpforms-submit:hover {
  background: #AD8B45 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(14, 26, 36, 0.08);
}
body.page-id-785 .form-shell .wpforms-error {
  color: #ff9b9b !important;
}
body.page-id-785 .form-shell .wpforms-confirmation-container-full {
  background: rgba(216, 207, 196, 0.06);
  border: 1px solid rgba(216, 207, 196, 0.22);
  border-radius: 18px;
  padding: 24px;
  color: #D8CFC4 !important;
  font-family: Verdana, Geneva, sans-serif;
}
body.page-id-785 .form-shell .wpforms-confirmation-container-full p,
body.page-id-785 .form-shell .wpforms-confirmation-container-full * {
  color: #D8CFC4 !important;
  font-family: Verdana, Geneva, sans-serif !important;
}

/* Partners (page-id-785): hero horizontal alignment — matches header reference (max-width:1280px; padding:0 24px) */
@media (min-width: 1025px) {
  body.page-id-785 .hero-inner { padding-left: 0 !important; padding-right: 0 !important; }
  body.page-id-785 .hero-center {
    max-width: 1280px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}


/* Partners form (page-id-785, #wpforms-782) — direct fallback overrides in case the
   --wpforms-* custom-property indirection doesn't cascade (belt-and-braces alongside the
   variable-based block above). */
body.page-id-785 #wpforms-782 input[type="text"],
body.page-id-785 #wpforms-782 input[type="email"],
body.page-id-785 #wpforms-782 input[type="tel"],
body.page-id-785 #wpforms-782 textarea,
body.page-id-785 #wpforms-782 select,
body.page-id-785 #wpforms-782 .choices__inner {
  background-color: rgba(216, 207, 196, 0.08) !important;
  color: #D8CFC4 !important;
  border-color: rgba(216, 207, 196, 0.22) !important;
}
body.page-id-785 #wpforms-782 .wpforms-field-label,
body.page-id-785 #wpforms-782 label.wpforms-field-label {
  color: rgba(216, 207, 196, 0.65) !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: normal !important;
}
body.page-id-785 #wpforms-782 .wpforms-submit-container button,
body.page-id-785 #wpforms-782 button.wpforms-submit,
body.page-id-785 #wpforms-782 button[type="submit"] {
  background-color: #C6A75E !important;
  color: #0E1A24 !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
}
body.page-id-785 #wpforms-782 .wpforms-container {
  background: transparent !important;
}


/* ===== Global footer: dark navy background, light text/links (2026-08-19) ===== */
.site-footer,
.site-info {
  background-color: #0E1A24 !important;
}
.site-footer,
.site-footer *,
.site-info,
.site-info * {
  color: #F1EBE0;
}
.site-footer a,
.site-info a {
  color: #C6A75E;
  text-decoration: none;
}
.site-footer a:hover,
.site-footer a:focus,
.site-info a:hover,
.site-info a:focus {
  color: #F1EBE0;
  text-decoration: underline;
}
.site-footer .widget-title,
.site-footer .widget-title a,
.site-info .widget-title,
.site-info .widget-title a {
  color: #C6A75E;
}


/* YB — Local Network (page-id-234): hide theme's raw featured-image dump above content, matching the pattern used on other custom hero pages (785/812) */
body.page-id-234 .entry-header,
body.page-id-234 .page-header,
body.page-id-234 .featured-image,
body.page-id-234 .post-image,
body.page-id-234 .wp-post-image {
  display: none !important;
}
