/* Keep the copy in layout flow: it can grow with text/zoom, and the image area
   always has equal space above and below it. Phone rules remain independent. */
@media (min-width: 601px) {
  .pv-home .pv-reference-hero {
    --pv-panel-edge: clamp(24px, 3vw, 56px);
    --pv-panel-inset: clamp(24px, 8vw, 154px);
    --pv-panel-gap: clamp(14px, calc(.5rem + .6vw), 22px);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: center;
    height: auto;
    min-height: max(0px, calc(100svh - var(--pv-opening-header, 86px) - var(--pv-opening-services, 200px)));
    padding: var(--pv-panel-edge) 0 calc(var(--pv-panel-edge) + var(--pv-opening-timeline, 68px));
  }

  .pv-home .pv-reference-hero .pv-reference-copy {
    position: relative;
    inset: auto !important;
    transform: none;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(5, auto);
    row-gap: var(--pv-panel-gap);
    align-content: center;
    align-items: stretch;
    justify-content: normal;
    width: clamp(28rem, 46%, 55.2rem);
    max-width: calc(100% - 2 * var(--pv-panel-inset));
    min-width: 0;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 0 var(--pv-panel-inset);
    padding: clamp(24px, 2.5vw, 48px) clamp(24px, 3.75vw, 72px);
  }

  /* Hidden slides reserve shared rows without becoming visible/focusable.
     The panel, buttons and controls no longer jump when slides change. */
  .pv-home .pv-reference-hero .pv-reference-copy > .pv-reference-slide {
    display: grid !important;
    grid-column: 1;
    grid-row: 1 / span 4;
    grid-template-rows: subgrid;
    min-width: 0;
    width: 100%;
    padding: 0;
  }
  .pv-home .pv-reference-hero .pv-reference-copy > .pv-reference-slide[hidden] {
    visibility: hidden;
    pointer-events: none;
    animation: none;
  }
  .pv-home .pv-reference-hero .pv-reference-copy > .pv-reference-slide:not([hidden]) {
    visibility: visible;
  }
  .pv-home .pv-reference-hero .pv-reference-eyebrow {
    margin: 0;
    font-size: clamp(.6875rem, calc(.5rem + .22vw), .8125rem);
    line-height: 1.6;
  }
  .pv-home .pv-reference-hero .pv-reference-title {
    margin: 0;
    font-size: clamp(2rem, calc(1rem + 2.5vw), 5rem);
    line-height: 1.16;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
  }
  .pv-home .pv-reference-hero .pv-reference-description {
    margin: 0;
    max-width: 36em;
    font-size: clamp(1rem, calc(.75rem + .42vw), 1.25rem);
    line-height: 1.65;
    overflow-wrap: break-word;
  }
  .pv-home .pv-reference-hero .pv-reference-cta {
    justify-self: start;
    align-self: start;
    margin: 0;
    min-height: 44px;
    padding: .75rem 1.2rem;
    font-size: clamp(.8125rem, calc(.65rem + .22vw), .9375rem);
    line-height: 1.5;
    white-space: normal;
  }
  .pv-home .pv-reference-hero .pv-reference-copy > .pv-reference-controls {
    display: flex;
    grid-column: 1;
    grid-row: 5;
    width: 100%;
    margin: 0;
    gap: 8px;
  }
  .pv-home .pv-reference-hero .pv-reference-dot,
  .pv-home .pv-reference-hero .pv-reference-playback button {
    height: 44px;
  }
}
