@media (min-width: 768px) {
  .site-shell {
    padding: 34px;
  }

  .phone-frame {
    width: 430px;
    min-height: 900px;
  }

  .desktop-copy {
    position: fixed;
    left: max(32px, calc(50vw - 640px));
    top: 50%;
    transform: translateY(-50%);
    width: min(340px, 25vw);
    display: block;
  }

  .desktop-copy h1 {
    font-size: clamp(3rem, 6vw, 5.7rem);
    line-height: .92;
    font-weight: 900;
    text-shadow: 0 9px 0 rgba(0,0,0,.28);
  }

  .desktop-copy p {
    color: #cfe2ff;
    font-weight: 700;
  }
}

@media (max-width: 767.98px) {
  .desktop-copy { display: none; }
}

@media (max-width: 430px) {
  .site-shell { padding: 0; }

  .phone-frame {
    width: 100%;
    min-height: 100vh;
    border-radius: 0;
    padding: 14px;
  }

  .phone-notch { margin-top: -4px; }
  .hero-card { min-height: 260px; padding: 18px; }
  .stats-grid, .menu-grid { gap: 10px; }
  .stat-card, .tile-card { padding: 12px; }
  .action-bar .icon-btn { max-width: none; }
}

@media (min-width: 1200px) {
  .phone-frame {
    transform: scale(.96);
  }
}

@media (min-width: 1600px) {
  .phone-frame {
    transform: scale(1.02);
  }
}
