/* Let the photograph cover the full viewport exposed by the browser.
   Only interactive content is inset around cutouts and system gestures. */
@media(max-width:1100px), (pointer:coarse) {
  :root {
    --pv-safe-top:env(safe-area-inset-top,0px);
    --pv-safe-right:env(safe-area-inset-right,0px);
    --pv-safe-bottom:env(safe-area-inset-bottom,0px);
    --pv-safe-left:env(safe-area-inset-left,0px);
  }
  .pv-home .experience.pv-carousel {
    --edge:max(clamp(24px,4.6vw,88px),var(--pv-safe-left),var(--pv-safe-right));
    padding-top:var(--pv-safe-top);
  }
  .pv-home .wrap,
  .pv-home ~ footer .wrap {
    width:min(var(--max),calc(100% - 2 * max(44px,var(--pv-safe-left),var(--pv-safe-right))));
  }
  .pv-home ~ footer {padding-bottom:max(20px,var(--pv-safe-bottom));}
}
@media(max-width:900px) {
  .pv-home .wrap,
  .pv-home ~ footer .wrap {
    width:min(var(--max),calc(100% - 2 * max(19px,var(--pv-safe-left),var(--pv-safe-right))));
  }
}
@media(max-width:600px) {
  .pv-home .experience.pv-carousel .bottom-bar {
    margin-left:max(16px,var(--pv-safe-left));
    margin-right:max(16px,var(--pv-safe-right));
  }
}
@media(max-width:350px) {
  .pv-home .experience.pv-carousel .bottom-bar {
    margin-left:max(10px,var(--pv-safe-left));
    margin-right:max(10px,var(--pv-safe-right));
  }
}
@media(min-width:1101px) and (pointer:coarse) {
  .pv-home .experience.pv-carousel .bottom-bar {
    margin-bottom:max(30px,var(--pv-safe-bottom));
  }
}
