@import url('premium-assets.css?v=20260731-1');
@import url('live-canary.css?v=20260831-1');
/* SecureSpectrum Northstar responsive polish — approved direction A */

/* Approved homepage hero image */
.hero-visual {
  min-height: 520px;
  border-radius: 30px;
  overflow: hidden;
  background: #eef7ff url('assets/homepage-hero.webp') center center / cover no-repeat;
  box-shadow: 0 24px 70px rgba(16,36,59,.14);
}
.hero-visual .home-scene,
.hero-visual .phone { display: none !important; }

@media (max-width: 760px) {
  .shell { width: min(calc(100% - 28px), var(--shell)); }
  .site-header { position: sticky; top: 0; }
  .header-inner { grid-template-columns: 1fr auto auto; min-height: 74px; gap: 12px; }
  .brand strong { font-size: 1rem; }
  .brand img { width: 31px; height: auto; }
  .header-cta { min-height: 42px; padding-inline: 18px; font-size: .82rem; }
  .menu-toggle { display: block; order: 2; }
  .header-cta { order: 3; }
  .primary-nav { top: 74px; }
  .hero { padding: 34px 0 24px; }
  .hero-grid { grid-template-columns: 1fr; min-height: 0; gap: 24px; }
  .hero-copy h1 { max-width: 620px; margin-bottom: 18px; font-size: clamp(2.65rem, 12vw, 4.25rem); }
  .hero-lead { margin-bottom: 24px; font-size: 1rem; }
  .hero-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .hero-actions .button { min-height: 50px; padding-inline: 14px; font-size: .82rem; }
  .trust-cards { grid-template-columns: 1fr; gap: 10px; margin-top: 22px; }
  .trust-cards article { min-height: 72px; padding: 14px; }
  .trust-cards small { font-size: .72rem; }
  .hero-visual { min-height: 360px; margin-top: 6px; background-position: 62% center; border-radius: 24px; }
  .home-scene { inset: 12px 0 18px; border-radius: 28px; }
  .phone { top: 42px; right: 8px; width: 168px; height: 360px; padding: 10px 8px; border-width: 3px; border-radius: 30px; }
  .phone-top { top: 7px; width: 67px; height: 16px; }
  .phone-screen { padding: 26px 9px 10px; border-radius: 21px; }
  .phone li { grid-template-columns: 20px 1fr auto; padding: 7px 2px; font-size: .61rem; }
  .phone li small { font-size: .49rem; }
  .phone-preview { height: 61px; margin-top: 8px; }
  .secure-state { margin: 8px 0 6px; padding: 9px; }
  .secure-state strong { font-size: .82rem; }
  .service-strip { grid-template-columns: 1fr 1fr; border-radius: 20px; }
  .service-strip article { min-height: 92px; padding: 14px; }
  .service-strip article:last-child { grid-column: 1 / -1; }
  .service-icon { width: 45px; height: 45px; }
  .section { padding: 72px 0; }
  .section-heading { margin-bottom: 30px; }
  .section-heading h2 { font-size: clamp(2rem, 9vw, 3rem); }
  .filter-row { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 8px; scrollbar-width: none; }
  .filter-row::-webkit-scrollbar { display: none; }
  .filter-row span { flex: none; }
  .product-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .product-card { padding: 10px 10px 16px; border-radius: 18px; }
  .product-art { height: 124px; }
  .product-card h3 { font-size: 1rem; }
  .product-card p { min-height: 0; font-size: .78rem; }
  .lifestyle-grid { grid-template-columns: 1fr; gap: 34px; }
  .connected-home { min-height: 350px; border-radius: 28px; }
  .node { font-size: .62rem; }
  .process-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .process-grid li { min-height: 210px; padding: 24px 16px; }
  .process-grid li:last-child { grid-column: 1 / -1; }
  .cta-panel { grid-template-columns: 1fr; gap: 24px; padding: 34px 24px; border-radius: 24px; }
  .cta-panel h2 { font-size: 2.3rem; }
  .cta-panel .button { width: 100%; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px 22px; }
  .footer-grid > div:first-child { grid-column: 1 / -1; }
  .footer-bottom { align-items: flex-start; gap: 10px; font-size: .72rem; }
}
@media (max-width: 430px) {
  .shell { width: min(calc(100% - 24px), var(--shell)); }
  .header-inner { gap: 8px; }
  .header-cta { padding-inline: 14px; }
  .hero-actions { grid-template-columns: 1fr; }
  .hero-visual { min-height: 300px; background-position: 66% center; }
  .phone { width: 151px; height: 326px; right: 4px; }
  .service-strip article { min-height: 88px; padding: 12px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-art { height: 190px; }
  .process-grid { grid-template-columns: 1fr; }
  .process-grid li:last-child { grid-column: auto; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
