/* Access360 responsive layouts */
@media (max-width: 1180px) {
  .primary-nav ul { gap: 0.8rem; }
  .primary-nav a { font-size: 0.79rem; }
  .header-actions .button { display: none; }
  .hero-grid { grid-template-columns: minmax(0, 0.92fr) minmax(29rem, 1.08fr); gap: 3rem; }
  .use-case-grid { grid-template-columns: repeat(3, 1fr); }
  .benefit-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1024px) {
  :root { --space-24: 5rem; }
  .site-header { background: rgba(255, 255, 255, 0.96); border-color: var(--color-border); }
  .nav-toggle { display: inline-flex; }
  .nav-shell {
    position: fixed;
    inset-block-start: var(--header-height);
    inset-inline: 0;
    display: block;
    max-height: calc(100vh - var(--header-height));
    padding: var(--space-5) 1.25rem var(--space-8);
    overflow-y: auto;
    background: rgba(255, 255, 255, 0.99);
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-lg);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.75rem);
    transition: opacity var(--transition-fast), visibility var(--transition-fast), transform var(--transition-fast);
  }
  .nav-shell.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
  .primary-nav ul { display: grid; align-items: stretch; gap: 0; }
  .primary-nav a { width: 100%; min-height: 3.25rem; padding-inline: var(--space-3); font-size: 0.95rem; border-bottom: 1px solid var(--color-border); }
  .primary-nav a::after { display: none; }
  .nav-shell .header-actions { margin-top: var(--space-5); }
  .nav-shell .header-actions .button { display: inline-flex; flex: 1; }
  .nav-shell .language-link { flex: 0 0 4rem; }
  .header-inner > .header-actions { display: none; }
  .hero { min-height: auto; padding-block-end: var(--space-16); }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-grid--product { grid-template-columns: 1fr; }
  .hero-copy { max-width: 46rem; }
  .hero-visual { width: min(100%, 46rem); margin-inline: auto; }
  .hero-visual--screenshot { width: min(100%, 54rem); }
  .product-window--hero,
  [dir="rtl"] .product-window--hero { transform: none; }
  .dashboard-hero,
  [dir="rtl"] .dashboard-hero { transform: none; }
  .floating-card--top { inset-inline-end: -1%; }
  .floating-card--bottom { inset-inline-start: -1%; }
  .problem-grid { grid-template-columns: repeat(2, 1fr); }
  .problem-card:last-child { grid-column: 1 / -1; min-height: auto; }
  .pillar { grid-template-columns: 1fr; gap: var(--space-8); }
  .capability-card { grid-column: span 4; }
  .capability-card:nth-child(1),
  .capability-card:nth-child(6) { grid-column: span 6; }
  .workflow { grid-template-columns: repeat(3, 1fr); }
  .workflow-step:nth-child(3)::after { display: none; }
  .workflow-step:nth-child(4) { grid-column: 1 / 2; }
  .workflow-step { min-height: 15rem; }
  .architecture-grid { grid-template-columns: 1fr; }
  .architecture-copy { max-width: 46rem; }
  .dashboard-showcase { grid-template-columns: 1fr; }
  .dashboard-tabs { grid-template-columns: repeat(3, 1fr); }
  .dashboard-tab { text-align: center; }
  .resource-grid { grid-template-columns: repeat(2, 1fr); }
  .resource-card--featured { grid-column: 1 / -1; }
  .faq-layout { grid-template-columns: 1fr; gap: var(--space-8); }
  .faq-intro { position: static; max-width: 42rem; }
  .contact-grid { grid-template-columns: 1fr; }
  .contact-copy { max-width: 44rem; }
  .footer-main { grid-template-columns: 1.5fr repeat(2, 1fr); }
  .footer-column:last-child { grid-column: 2 / 3; }
  .showcase-row { grid-template-columns: minmax(17rem, 0.75fr) minmax(0, 1.25fr); gap: var(--space-8); }
  .capabilities-layout { grid-template-columns: 1fr; }
  .inventory-preview { width: min(100%, 52rem); }
  .compact-capability-grid { grid-template-columns: repeat(3, 1fr); }
  .contact-gateway { grid-template-columns: 1fr; }
  .contact-gateway__status { max-width: 40rem; }
  .footer-main--compact { grid-template-columns: 1.5fr repeat(2, 1fr); }
}

@media (max-width: 768px) {
  :root { --header-height: 4.25rem; --space-24: 4rem; }
  .container,
  .container--narrow { width: min(calc(100% - 2rem), var(--container)); }
  .section-heading { margin-bottom: var(--space-10); }
  h1 { font-size: clamp(2.4rem, 11vw, 3.5rem); }
  h2 { font-size: clamp(1.8rem, 8vw, 2.6rem); }
  .brand__mark { width: 2rem; height: 2rem; }
  .hero { padding-block-start: calc(var(--header-height) + var(--space-16)); }
  .hero-proof { display: grid; grid-template-columns: repeat(2, 1fr); }
  .dashboard-ui { grid-template-columns: 3.25rem 1fr; min-height: 23rem; }
  .ui-main { padding: var(--space-4); }
  .ui-stats { grid-template-columns: repeat(2, 1fr); }
  .ui-stat:last-child { display: none; }
  .ui-chart { height: 8rem; }
  .floating-card { min-width: 9.5rem; padding: var(--space-2) var(--space-3); }
  .floating-card--top { inset-block-start: 17%; }
  .capability-strip__inner { grid-template-columns: repeat(2, 1fr); }
  .capability-strip__item:nth-child(2) { border-inline-end: 0; }
  .capability-strip__item:nth-child(-n+2) { border-bottom: 1px solid var(--color-border); }
  .problem-grid { grid-template-columns: 1fr; }
  .problem-card,
  .problem-card:last-child { grid-column: auto; min-height: auto; }
  .pillar { padding: var(--space-8); }
  .check-grid { grid-template-columns: 1fr; }
  .feature-panel { grid-template-columns: 1fr; gap: var(--space-8); }
  .feature-panel:nth-child(even) .feature-panel__visual { order: 0; }
  .abstract-panel { min-height: 22rem; }
  .capability-card,
  .capability-card:nth-child(1),
  .capability-card:nth-child(2),
  .capability-card:nth-child(3),
  .capability-card:nth-child(4),
  .capability-card:nth-child(5),
  .capability-card:nth-child(6) { grid-column: span 6; }
  .workflow { grid-template-columns: 1fr; }
  .workflow-step:nth-child(4) { grid-column: auto; }
  .workflow-step { min-height: auto; }
  .workflow-step:not(:last-child)::after,
  .workflow-step:nth-child(3)::after { inset-block-start: auto; inset-block-end: calc(var(--space-3) * -1 - 0.45rem); inset-inline-start: 50%; inset-inline-end: auto; display: grid; content: "↓"; transform: translateX(-50%); }
  [dir="rtl"] .workflow-step:not(:last-child)::after { content: "↓"; transform: translateX(50%); }
  .architecture-list { grid-template-columns: 1fr; }
  .dashboard-tabs { grid-template-columns: repeat(2, 1fr); }
  .dash-metrics { grid-template-columns: repeat(2, 1fr); }
  .dash-grid { grid-template-columns: 1fr; }
  .use-case-grid { grid-template-columns: repeat(2, 1fr); }
  .benefit-grid { grid-template-columns: repeat(2, 1fr); }
  .video-grid { grid-template-columns: 1fr; }
  .video-copy { max-width: 44rem; }
  .resource-grid { grid-template-columns: 1fr; }
  .resource-card--featured { grid-column: auto; }
  .form-grid { grid-template-columns: 1fr; }
  .form-field--full { grid-column: auto; }
  .footer-main { grid-template-columns: repeat(2, 1fr); }
  .footer-brand { grid-column: 1 / -1; }
  .footer-column:last-child { grid-column: auto; }
  .showcase-row { grid-template-columns: 1fr; gap: var(--space-8); padding-block: var(--space-12); }
  .showcase-row .product-window,
  .showcase-row--reverse .product-window { order: 0; }
  .showcase-copy { max-width: 38rem; }
  .deployment-notes { grid-template-columns: repeat(2, 1fr); }
  .compact-capability-grid { grid-template-columns: repeat(2, 1fr); }
  .outcome-grid { grid-template-columns: repeat(2, 1fr); }
  .demo-poster,
  .demo-poster img { min-height: 20rem; }
  .image-modal { padding: var(--space-3); }
  .image-modal__dialog { width: 100%; max-height: 96vh; }
}

@media (max-width: 520px) {
  body { font-size: 0.96rem; }
  .container,
  .container--narrow { width: min(calc(100% - 1.5rem), var(--container)); }
  .section { padding-block: 3.5rem; }
  .hero { padding-block-start: calc(var(--header-height) + 3rem); }
  .hero-actions { display: grid; }
  .hero-actions .button { width: 100%; }
  .hero-proof { grid-template-columns: 1fr; gap: var(--space-2); }
  .dashboard-hero { padding: 0.35rem; border-radius: var(--radius-lg); }
  .dashboard-ui { grid-template-columns: 2.65rem 1fr; min-height: 20rem; }
  .ui-sidebar { gap: var(--space-3); }
  .ui-sidebar__logo { width: 1.55rem; height: 1.55rem; }
  .ui-sidebar__item { width: 1.3rem; height: 1.3rem; }
  .ui-main { padding: var(--space-3); }
  .ui-heading { margin-bottom: var(--space-3); }
  .ui-chart { height: 7.5rem; }
  .ui-table { padding-inline: var(--space-3); }
  .floating-card { display: none; }
  .capability-strip__item { padding: var(--space-5) var(--space-3); }
  .capability-strip strong { font-size: 0.8rem; }
  .problem-card,
  .pillar,
  .abstract-panel,
  .architecture-visual,
  .demo-form { padding: var(--space-6); }
  .session-screen { grid-template-columns: 1fr; }
  .session-tree { display: none; }
  .capability-card,
  .capability-card:nth-child(1),
  .capability-card:nth-child(2),
  .capability-card:nth-child(3),
  .capability-card:nth-child(4),
  .capability-card:nth-child(5),
  .capability-card:nth-child(6) { grid-column: 1 / -1; }
  .arch-nodes { grid-template-columns: 1fr; }
  .dashboard-tabs { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: var(--space-2); }
  .dashboard-tab { flex: 0 0 12rem; scroll-snap-align: start; }
  .dashboard-stage { padding: 0.35rem; }
  .dashboard-panel__inner { min-height: 28rem; padding: var(--space-4); }
  .dash-metrics { gap: var(--space-2); }
  .dash-metric { padding: var(--space-3); }
  .use-case-grid,
  .benefit-grid { grid-template-columns: 1fr; }
  .video-play { width: 4.1rem; height: 4.1rem; }
  .footer-main { grid-template-columns: 1fr; }
  .footer-brand,
  .footer-column:last-child { grid-column: auto; }
  .footer-bottom { align-items: flex-start; flex-direction: column; }
  .product-window__bar { display: none; }
  .product-window { border-radius: var(--radius-md); }
  .image-zoom { inset-inline-end: var(--space-2); inset-block-end: var(--space-2); min-height: 2rem; padding-inline: var(--space-3); opacity: 1; transform: none; }
  .showcase-row { padding-block: var(--space-10); }
  .showcase-row--jit::before { inset-inline: -1rem; border-radius: var(--radius-lg); }
  .deployment-notes,
  .compact-capability-grid,
  .outcome-grid { grid-template-columns: 1fr; }
  .compact-capability-grid article,
  .outcome-grid article { min-height: auto; }
  .demo-poster,
  .demo-poster img,
  .demo-poster__trigger,
  .demo-poster__video { min-height: 16rem; }
  .demo-poster__play { width: 3.75rem; height: 3.75rem; }
  .contact-gateway__status { padding: var(--space-6); }
  .customer-note { grid-template-columns: auto auto; gap: var(--space-3) var(--space-4); }
  .customer-rule { grid-column: 1 / -1; }
  .image-modal { padding: 0; }
  .image-modal__dialog { height: 100%; max-height: none; border-radius: 0; }
  .image-modal__canvas img { width: max(100%, 64rem); }
  .back-to-top { inset-inline-end: var(--space-3); inset-block-end: var(--space-3); width: 2.75rem; height: 2.75rem; }
  .language-gateway { padding: var(--space-3); }
  .gateway-card { padding: var(--space-8) var(--space-5); }
  .language-options { grid-template-columns: 1fr; }
}

@media (max-width: 360px) {
  .brand { font-size: 1.05rem; }
  .dashboard-ui { grid-template-columns: 2.4rem 1fr; }
  .ui-sidebar { padding-block: var(--space-3); }
  .ui-main { padding: var(--space-2); }
  .capability-strip__inner { grid-template-columns: 1fr; }
  .capability-strip__item { border-inline-end: 0; border-bottom: 1px solid var(--color-border); }
  .capability-strip__item:last-child { border-bottom: 0; }
  .hero-actions .button { padding-inline: var(--space-3); }
}

@media print {
  .site-header,
  .back-to-top,
  .hero-actions,
  .nav-toggle,
  .contact-section,
  .video-frame { display: none !important; }
  .hero { min-height: auto; padding-block: var(--space-8); }
  .section { padding-block: var(--space-8); break-inside: avoid; }
  body { color: #000; background: #fff; }
  .section--dark { color: #000; background: #fff; }
  .section--dark h2,
  .section--dark h3 { color: #000; }
}
