/* A shared desktop scale for the home page. Smaller screens keep natural heights. */
body.bcx-home-header {
  --bcx-home-width: 1360px;
  --bcx-home-gutter: 40px;
}

@media (min-width: 1024px) {
  body.bcx-home-header :is(#bcx-explore, #inicio, #nosotros, #evento, .bc-contacto) {
    box-sizing: border-box;
    min-height: max(640px, calc(100svh - 48px));
    margin-block: 0 !important;
    padding-inline: max(var(--bcx-home-gutter), calc((100% - var(--bcx-home-width)) / 2)) !important;
    padding-block: clamp(48px, 7svh, 88px) !important;
  }

  body.bcx-home-header #bcx-explore {
    display: flex;
    align-items: center;
  }

  body.bcx-home-header #bcx-explore .bcx-hub-inner,
  body.bcx-home-header #evento .bcx-destination-inner,
  body.bcx-home-header #evento .bcx-destination-controls {
    width: 100%;
    max-width: var(--bcx-home-width) !important;
    margin-inline: auto !important;
  }

  body.bcx-home-header #bcx-explore .bcx-hub-heading { margin-bottom: 30px; }
  body.bcx-home-header #bcx-explore .bcx-hub-heading p:first-child { font-size: 12px; margin-bottom: 10px; }
  body.bcx-home-header #bcx-explore #bcx-explore-title { font-size: clamp(52px, 5vw, 76px); line-height: 1; margin-bottom: 16px; }
  body.bcx-home-header #bcx-explore .bcx-hub-heading p:last-child { font-size: 17px; line-height: 1.65; max-width: 880px; margin-inline: auto; }
  body.bcx-home-header #bcx-explore .bcx-hub-grid { gap: clamp(22px, 2.2vw, 34px); }
  body.bcx-home-header #bcx-explore .bcx-hub-card { border-radius: 20px; padding: 12px; }
  body.bcx-home-header #bcx-explore .bcx-hub-cover { height: clamp(180px, 25svh, 280px); border-radius: 13px; }
  body.bcx-home-header #bcx-explore .bcx-card-copy { padding: 18px 14px 8px; }
  body.bcx-home-header #bcx-explore .bcx-card-copy h3 { font-size: clamp(34px, 2.6vw, 42px); margin-bottom: 8px; }
  body.bcx-home-header #bcx-explore .bcx-card-copy > p { font-size: 15px; line-height: 1.55; margin-bottom: 12px; }
  body.bcx-home-header #bcx-explore .bcx-row { font-size: 15px; line-height: 1.5; padding-block: 9px; }
  body.bcx-home-header #bcx-explore .bcx-mini-frame > span { font-size: 15px; padding: 38px 16px 14px; }
  body.bcx-home-header #bcx-explore .bcx-mini-controls button { width: 34px; height: 34px; }
  body.bcx-home-header #bcx-explore .bcx-hub-footer { font-size: 14px; margin-top: 24px; padding: 13px 22px; }
  body.bcx-home-header #bcx-explore .bcx-hub-footer a { padding: 9px 18px; }

  body.bcx-home-header #inicio { column-gap: clamp(40px, 5vw, 80px); align-content: center; }
  body.bcx-home-header #inicio h1,
  body.bcx-home-header #nosotros h2 {
    font-size: clamp(52px, 5vw, 76px) !important;
    line-height: 1.02 !important;
    max-width: 580px;
    margin-bottom: 24px !important;
    text-wrap: balance;
  }
  body.bcx-home-header #inicio h1::before,
  body.bcx-home-header #nosotros h2::before { font-size: 12px; margin-bottom: 20px; }
  body.bcx-home-header #inicio p,
  body.bcx-home-header #nosotros p { font-size: 18px !important; line-height: 1.75 !important; margin-bottom: 26px !important; max-width: 56ch; }
  body.bcx-home-header #inicio .wp-block-buttons { gap: 12px; margin-top: 22px !important; }
  body.bcx-home-header #inicio .wp-block-button__link { font-size: 14px !important; }
  body.bcx-home-header #inicio .wp-block-buttons:has(.wp-block-button + .wp-block-button) .wp-block-button__link { min-height: 84px; padding: 17px 10px !important; }
  body.bcx-home-header #inicio .wp-block-buttons:last-child .wp-block-button__link,
  body.bcx-home-header #nosotros .wp-block-button__link { font-size: 16px !important; min-height: 50px; padding: 14px 28px !important; }
  body.bcx-home-header #inicio > figure img { height: clamp(380px, 53svh, 620px); border-radius: 20px !important; }

  body.bcx-home-header #nosotros { display: flex; align-items: center; }
  body.bcx-home-header #nosotros > .wp-block-group { width: 100%; max-width: var(--bcx-home-width); column-gap: clamp(40px, 5vw, 80px); }
  body.bcx-home-header #nosotros figure a { width: 100%; max-width: none; }
  body.bcx-home-header #nosotros figure img { width: 100%; height: auto; max-height: none; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; border-radius: 20px !important; }

  body.bcx-home-header #evento { display: flex; flex-direction: column; justify-content: center; }
  body.bcx-home-header #evento .bcx-destination-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: clamp(40px, 4vw, 68px); }
  body.bcx-home-header #evento .bcx-destination-eyebrow { font-size: 12px; margin-bottom: 22px; }
  body.bcx-home-header #evento h2 { font-size: clamp(50px, 4.8vw, 72px); line-height: 1.04; margin-bottom: 26px; }
  body.bcx-home-header #evento .bcx-destination-copy > p:not(.bcx-destination-eyebrow) { font-size: 18px; line-height: 1.75; max-width: 55ch; margin-bottom: 16px; }
  body.bcx-home-header #evento .bcx-destination-copy > .bcx-destination-note { font-size: 15px !important; }
  body.bcx-home-header #evento .bcx-destination-cta { font-size: 16px; min-height: 50px; box-sizing: border-box; padding: 13px 24px; margin-top: 16px; }
  body.bcx-home-header #evento .bcx-destination-cards { gap: 24px; }
  body.bcx-home-header #evento .bcx-destination-card { border-radius: 18px; }
  body.bcx-home-header #evento .bcx-destination-card figure { height: clamp(170px, 25svh, 270px); }
  body.bcx-home-header #evento .bcx-destination-card-body { padding: 24px 22px 18px; }
  body.bcx-home-header #evento .bcx-destination-card h3 { font-size: clamp(30px, 2.5vw, 38px) !important; margin-bottom: 16px !important; }
  body.bcx-home-header #evento .bcx-destination-card li { font-size: 15px !important; line-height: 1.65 !important; }
  body.bcx-home-header #evento .bcx-destination-card-body > a { font-size: 14px; line-height: 1.5; padding-top: 16px; min-height: 44px; }
  body.bcx-home-header #evento .bcx-destination-controls { margin-top: 30px; font-size: 12px; }
  body.bcx-home-header #evento .bcx-destination-controls button { font-size: 13px; min-height: 40px; }

  body.bcx-home-header .bc-contacto { align-items: center !important; }
  body.bcx-home-header .bc-contacto > .wp-block-column:first-child { padding-right: clamp(40px, 4vw, 64px) !important; }
  body.bcx-home-header .bc-contacto > .bc-encontranos { padding-left: clamp(40px, 4vw, 64px) !important; }
  body.bcx-home-header .bc-contacto h2.wp-block-heading { font-size: clamp(50px, 4.8vw, 72px) !important; margin-bottom: 32px !important; }
  body.bcx-home-header .bc-contacto .fluentform .ff-el-input--label label { font-size: 15px !important; }
  body.bcx-home-header .bc-contacto .fluentform .ff-el-group { margin-bottom: 22px; }
  body.bcx-home-header .bc-contacto .fluentform .ff-el-form-control { min-height: 52px; font-size: 16px !important; padding: 13px 15px; }
  body.bcx-home-header .bc-contacto .fluentform textarea.ff-el-form-control { min-height: 156px; height: 156px; }
  body.bcx-home-header .bc-contacto .fluentform .ff-btn-submit { min-height: 50px; font-size: 16px !important; padding: 14px 28px !important; }
  body.bcx-home-header .bc-contacto .bc-contacto-links { gap: 28px !important; }
  body.bcx-home-header .bc-contacto .bc-contacto-links a { font-size: 18px !important; min-height: 40px; }
  body.bcx-home-header .bc-contacto .bc-contacto-links svg { width: 32px; height: 32px; }
}

/* Compact desktop viewports stay spacious without forcing content below its section. */
@media (min-width: 1024px) and (max-height: 800px) {
  body.bcx-home-header :is(#bcx-explore, #inicio, #nosotros, #evento, .bc-contacto) { padding-block: 40px !important; }
  body.bcx-home-header #bcx-explore .bcx-hub-heading { margin-bottom: 24px; }
  body.bcx-home-header #bcx-explore #bcx-explore-title { font-size: 56px; }
  body.bcx-home-header #bcx-explore .bcx-hub-cover { height: 180px; }
  body.bcx-home-header #bcx-explore .bcx-card-copy { padding-top: 14px; }
  body.bcx-home-header #bcx-explore .bcx-row { padding-block: 7px; }
  body.bcx-home-header #inicio > figure img { height: 380px; }
}
