/* The archived Wix pages contain desktop-only grid coordinates. Reflow their
   content at smaller widths instead of shrinking the entire 980px canvas. */
@media (max-width: 979px) {
  :root { --site-width: 100vw !important; }
  html, body { min-width: 0 !important; width: 100%; }
  body { overflow-x: hidden; }
  #site-root, #SITE_CONTAINER, #masterPage, #PAGES_CONTAINER, #SITE_PAGES,
  #SITE_PAGES_TRANSITION_GROUP, .wixui-page, [id^="Container"],
  .wixui-column-strip, .wixui-column-strip__column {
    min-width: 0 !important; max-width: 100%;
  }
  #SITE_HEADER, #SITE_FOOTER { min-width: 0 !important; width: 100% !important; left: 0 !important; }
  #SITE_PAGES_TRANSITION_GROUP > * { min-height: 0 !important; }
  #SITE_HEADER { position: relative !important; height: auto !important; }
  [data-testid="inline-content"], [data-testid="mesh-container-content"] {
    min-height: 0 !important; height: auto !important;
  }
  [data-testid="mesh-container-content"] {
    display: flex !important; flex-direction: column; gap: 22px;
    box-sizing: border-box; width: 100% !important; padding: 0;
  }
  [data-testid="mesh-container-content"] > * {
    position: relative !important; left: auto !important; top: auto !important;
    margin: 0 !important; width: 100% !important; min-width: 0 !important;
    max-width: 100%; height: auto !important; min-height: 0 !important;
    grid-area: auto !important; box-sizing: border-box; flex-shrink: 0;
  }
  [data-mesh-id^="Container"][data-testid="mesh-container-content"] {
    max-width: 680px; margin: 0 auto; padding: 32px 24px 56px !important;
  }
  .wixui-rich-text { overflow-wrap: break-word; }
  .wixui-rich-text p { line-height: 1.65em !important; }
  main .wixui-rich-text :is(h1,h2,h3,h4,h5,h6),
  main .wixui-rich-text :is(h1,h2,h3,h4,h5,h6) span {
    font-size: clamp(28px, 7vw, 40px) !important; line-height: 1.15em !important;
  }
  main .wixui-rich-text p, main .wixui-rich-text p span { font-size: 16px !important; }
  [data-mesh-id="SITE_HEADERinlineContent-gridContainer"] {
    flex-direction: row; align-items: center; justify-content: space-between;
    gap: 16px; padding: 24px;
  }
  #comp-iy2zbw9e { flex: 1; }
  #comp-iy2zbw9e h1 { font-size: 24px !important; line-height: 1.15 !important; }
  #comp-iy45zw1x { width: 44px !important; height: 44px !important; flex: 0 0 44px; }
  #comp-iy45zw1x svg { width: 26px; height: 26px; }
  #comp-iy45zw1x a { display: flex; align-items: center; justify-content: center; height: 44px; }
  main .sEUU4o { display: none !important; }
  .wixui-image, .wixui-image > div {
    position: relative; height: auto !important; max-width: 100%;
  }
  .wixui-image img {
    position: static !important; display: block; width: 100% !important;
    height: auto !important; max-width: 100%;
  }
  .wixui-button { position: relative !important; display: flex; align-items: center; justify-content: center; min-height: 44px; height: auto; padding: 10px 16px; box-sizing: border-box; }
  main [aria-disabled="false"]:has(> .wixui-button) { align-self: center; width: auto !important; max-width: 100%; min-height: 44px !important; }
  .wixui-button__label { white-space: normal; text-align: center; }
  #SITE_FOOTER { margin-top: 0 !important; min-height: 120px !important; }
  #footer-contacts { position: relative; min-height: 120px; box-sizing: border-box; padding: 24px; flex-direction: column; gap: 18px; }
  #site-menu { box-sizing: border-box; padding: 72px 24px 32px; gap: 24px; overflow-y: auto; }
  #site-menu a { font-size: 32px; text-align: center; }
  #site-menu .contacts { flex-direction: column; align-items: center; gap: 20px; }
  #site-menu button { top: 20px; right: 20px; width: 44px; height: 44px; }

  /* Keep the original collage, including portrait crops, overlap and the
     animated center line. Scale the whole stage, including its movements. */
  .home-intro-frame { position: relative; }
  .home-intro-stage {
    position: absolute; top: 0; left: 0; width: 980px; height: 1118px;
    max-width: none; transform-origin: top left; transform: scale(var(--intro-scale));
  }
  .home-intro-stage > * {
    position: absolute !important; margin: 0 !important;
    left: var(--intro-x) !important; top: var(--intro-y) !important;
    width: var(--intro-width) !important; height: var(--intro-height) !important;
  }
  .home-intro-stage #comp-iy2qeqqr h2,
  .home-intro-stage #comp-iy2qeqqr h2 span { font-size: 65px !important; line-height: 1em !important; }
  .home-intro-stage .sEUU4o { display: block !important; }
  [data-mesh-id="Containeruq6o6inlineContent-gridContainer"] > .sEUU4o {
    display: block !important; width: 2px !important; height: 110px !important;
    align-self: center; margin: 8px 0 !important;
  }
  #comp-iy2zf69s, #comp-iy448ifw, #comp-iy44j6jz, #comp-iy43lwuc { margin-top: 36px !important; }
  #comp-iy4dxefr, #comp-iy4fo6wa, #comp-iy44g79a { justify-self: center; }
  #comp-iy43lwuc, #comp-iy43lwuc1 { text-align: center; }

  /* About: keep the duck and pair each section title with its content. */
  [data-mesh-id="comp-k3rbix6t-rotated-wrapper"] { order: 0; width: 102px !important; align-self: center; margin: 0 0 16px !important; }
  #comp-k3rbix6t { left: 0 !important; top: 0 !important; width: 102px !important; height: 167px !important; }
  #comp-k3rbpgmr { display: none !important; }
  #comp-iy4hb76s { order: 1; }
  #comp-iy4hb76s h2 { font-size: clamp(22px, 6.2vw, 38px) !important; }
  #comp-iy4hecdw { order: 2; }
  #comp-iy4ioho91 { order: 3; }
  #comp-k3zpy16w { order: 4; }
  #comp-k3zpy16h { order: 5; }
  #comp-k3rdmbcx { order: 6; }
  #comp-iy4ioho9 { order: 7; }
  #comp-iy4jgn2x { order: 8; }
  #comp-iy8dbeny { order: 9; }
  #comp-iy8dbsc1 { order: 10; }
  #comp-k3qeecez { order: 11; }
  #comp-k3qeecfb { order: 12; }
  #comp-k3zqh8mm { order: 13; }
  #comp-k3qf3oul { order: 14; max-width: 260px; align-self: center; }
  #comp-k3zqjeox { order: 15; }
  :is(#comp-iy4hecdw,#comp-k3zpy16w,#comp-iy4ioho9,#comp-iy8dbeny,#comp-k3qeecez) { margin-top: 24px !important; border-top: 1px solid #ddd; padding-top: 20px; }
  :is(#comp-iy4hecdw,#comp-k3zpy16w,#comp-iy4ioho9,#comp-iy8dbeny,#comp-k3qeecez) p { font-size: 21px !important; }

  /* Repeated portfolio and notes cards must grow with their text. */
  .wixui-repeater, .wixui-repeater [role="list"], .wixui-repeater [role="list"] > div,
  .wixui-repeater [role="listitem"], .wixui-repeater__item {
    position: relative !important; left: auto !important; top: auto !important;
    width: 100% !important; min-width: 0 !important; max-width: 100%;
    height: auto !important; min-height: 0 !important; margin: 0 !important;
    box-sizing: border-box;
  }
  .wixui-repeater [role="list"] > div { display: flex !important; flex-direction: column; gap: 24px; }
  .wixui-repeater__item [data-testid="mesh-container-content"] { padding: 28px 20px; gap: 20px; }
  .wixui-repeater__item [data-hook="bgLayers"] img { width: 100% !important; height: 100% !important; object-fit: cover; }
  #comp-k47yfn1d .wixui-repeater__item { overflow: hidden; }
  #comp-k47yfn1d [data-motion-part^="BG_MEDIA"]::after { content: ""; position: absolute; inset: 0; background: rgb(0 0 0 / 20%); }
  #comp-k47yfn1d .wixui-rich-text { text-align: center; }
  #comp-k47yfn1d h4, #comp-k47yfn1d h4 span { font-size: 30px !important; }
  #comp-k4dq5sh1 h4, #comp-k4dq5sh1 h4 span { font-size: 26px !important; }
  #comp-kr5s47ak [data-testid="columns"] { display: flex !important; flex-direction: column; width: 100% !important; }
  #comp-kr5s47bj, #comp-kr5s47ck { width: 100% !important; margin: 0 !important; flex: none !important; }
  #comp-kr5s47ck { margin-top: 24px !important; }
  #comp-kr5s47cy .wixui-repeater__item [data-testid="mesh-container-content"] { padding: 24px 0; }
  #comp-kr5s47cy h2, #comp-kr5s47cy h2 span { font-size: 28px !important; }
  #comp-kr5s47cy p[style*="margin-left"] { margin-left: 16px !important; }
  #comp-k4dqzsug { display: none; } /* The accessible hamburger links to these pages. */
}
