/* GFELLAS_MAP_FIT_V10 — keep the map slide completely within the stage.
   The native mobile layout is unchanged: all layout rules below apply only
   on desktop. */
@media (min-width: 721px) {
  .gfhero--maps .gfhero-content {
    width: 54%;
    max-width: none;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    margin: 0 auto 0 0;
    padding: clamp(14px, 3vh, 28px) 20px clamp(14px, 3vh, 28px) clamp(64px, 7.4vw, 92px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    text-align: left;
    overflow: hidden;
  }
  .gfhero--maps .gfhero-symbol {
    width: clamp(34px, calc(var(--gfheight) * 0.092), 47px);
    height: clamp(34px, calc(var(--gfheight) * 0.092), 47px);
    border-radius: 13px;
    margin: 0 0 clamp(5px, 1.6vh, 10px);
    flex-shrink: 0;
  }
  .gfhero--maps .gfhero-symbol svg { width: 54%; height: 54%; }
  .gfhero--maps .gfhero-eyebrow {
    font-size: 10px;
    letter-spacing: 2px;
    margin: 0 0 clamp(4px, 1.3vh, 9px);
  }
  .gfhero--maps .gfhero-content h1 {
    font-size: clamp(28px, calc(var(--gfheight) * 0.084), 48px);
    line-height: 1.05;
    letter-spacing: -.053em;
    max-width: 100%;
    width: 100%;
    margin: 0 0 clamp(7px, 1.8vh, 13px);
    text-wrap: balance;
    overflow-wrap: normal;
    word-break: normal;
  }
  .gfhero--maps .gfhero-descr {
    font-size: clamp(11px, calc(var(--gfheight) * 0.026), 14px);
    line-height: 1.4;
    margin: 0 0 clamp(7px, 1.8vh, 13px);
    max-width: 360px;
  }
  .gfhero--maps .gfhero-place {
    font-size: 12px;
    line-height: 1.3;
    margin: 0 0 clamp(7px, 1.8vh, 13px);
  }
  .gfhero--maps .gfhero-cta {
    min-height: 42px;
    padding: 10px 15px;
    border-radius: 10px;
    font-size: 11px;
    max-width: min(100%, 330px);
  }
  .gfhero--maps .gfmap-title-mobile { display: none; }
  .gfhero--maps .gfmap-title-desktop { display: inline; }
  .gfhero--maps .gfhero-stage { right: 0; width: 48%; height: 100%; }
  .gfhero--maps .gfhero-map-card {
    width: 81%;
    height: 75%;
    max-height: calc(100% - 34px);
    transform: rotate(-2.5deg);
  }
}
@media (min-width: 721px) and (max-width: 1000px) {
  .gfhero--maps .gfhero-content { width: 56%; padding-left: 60px; padding-right: 12px; }
  .gfhero--maps .gfhero-stage { width: 47%; right: -1%; }
  .gfhero--maps .gfhero-content h1 { font-size: clamp(26px, calc(var(--gfheight) * 0.079), 44px); }
}
@media (max-width: 720px) {
  .gfhero--maps .gfmap-title-desktop { display: none; }
  .gfhero--maps .gfmap-title-mobile { display: inline; }
}
/* Small desktop stage heights can be configured in the control panel. */
@media (min-width:721px) {
  .gfhero[style*="--gfheight"] .gfhero--maps .gfhero-content { min-width:0; }
}
