@import url("/assets/css/danca-alive.css?v=20261009-4");
/* El hilo comercial: the only scroll-led visual, using the existing navy/lavender/mint identity. */
body { position: relative; }
.reveal, .reveal.visible { opacity: 1; transform: none; transition: none; }
.commercial-thread { position: absolute; left: max(8px, calc((100vw - 1240px) / 2)); width: 1px; background: rgba(169,195,255,.15); pointer-events: none; z-index: 3; }
.commercial-thread-fill { position: absolute; inset: 0; background: linear-gradient(#a9c3ff, #83efd9); transform-origin: top; box-shadow: 0 0 9px #83efd966; }
.commercial-thread-node { position: absolute; left: -3px; width: 7px; height: 7px; border-radius: 50%; border: 1px solid #7f8ba0; background: #07111f; transition: background .3s, box-shadow .3s; }
.commercial-thread-node.is-lit { background: #83efd9; border-color: #a9c3ff; box-shadow: 0 0 10px #83efd988; }
.section-label, .console-top, .mission-kicker, .danca-overline, .danca-proof-label, .danca-proof-meta, .danca-guide-bar, .danca-guide-summary span, .agents-kicker, .agent-id { text-transform: none; letter-spacing: .01em; }
button, .btn, .feature, .agent-card, .industry-tab, .stage-btn, .danca-choice { transition: transform .16s ease, border-color .2s ease, background .2s ease; touch-action: manipulation; }
button:active, .btn:active, .feature:active, .agent-card:active, .industry-tab:active, .stage-btn:active, .danca-choice:active { transform: scale(.98); }
:focus-visible { outline: 3px solid #a9c3ff; outline-offset: 4px; }
.faq-item summary::after { content: ''; width: 14px; height: 14px; background: linear-gradient(var(--accent),var(--accent)) center / 14px 2px no-repeat, linear-gradient(var(--accent),var(--accent)) center / 2px 14px no-repeat; transition: transform .24s, background-size .24s; }
.faq-item[open] summary::after, .faq-item.faq-expanded summary::after { transform: rotate(180deg); background-size: 14px 2px, 2px 0; }
.faq-item .faq-answer { overflow: hidden; }
.journey-progress { height: 3px; border-radius: 3px; background: #a9c3ff22; margin-bottom: 24px; overflow: hidden; }
.journey-progress span { display: block; height: 100%; width: 20%; background: linear-gradient(90deg,#a9c3ff,#83efd9); transition: width .35s ease; }
.danca-proof-progress span { transition: width .35s ease; }
.legal-page .page-hero { padding-bottom: 18px; }
.legal-page .prose { padding-top: 0; }
.legal-page .prose > section { scroll-margin-top: 100px; }
.legal-page .prose > section:first-child h2 { margin-top: 20px; }
.overlay-locked { position: fixed; width: 100%; overflow: hidden; }
.faq-backdrop { position: fixed; inset: 0; background: #03091299; z-index: 109; border: 0; }
.faq-panel { z-index: 110; visibility: hidden; }
.faq-panel.open { visibility: visible; }
.faq-body { min-height: 80px; overscroll-behavior: contain; }
.faq-chip { min-height: 44px; padding: 10px 14px; }
.faq-suggestions { gap: 10px; max-height: 180px; overflow-y: auto; flex-shrink: 0; }
.faq-footer input { min-width: 0; font-size: 16px; }
.faq-footer button, .faq-close { min-height: 44px; min-width: 44px; }
.faq-policy { padding: 8px 16px; font-size: .8rem; color: var(--muted); }
.menu-toggle { position: relative; z-index: 102; }
.menu-toggle span { position: absolute; width: 18px; height: 2px; background: currentColor; transition: transform .25s, opacity .2s; }
.menu-toggle span:first-child { transform: translateY(-6px); }
.menu-toggle span:last-child { transform: translateY(6px); }
.menu-toggle[aria-expanded=true] span:first-child { transform: rotate(45deg); }
.menu-toggle[aria-expanded=true] span:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded=true] span:last-child { transform: rotate(-45deg); }
@media(max-width:991px) {
  body { padding-bottom: calc(92px + env(safe-area-inset-bottom)); }
  .section, .footer-inner { width: calc(100% - 48px); }
  .site-nav { backdrop-filter: none; background: #07111ff5; }
  .nav-links { inset: 0; height: 100vh; height: 100dvh; border: 0; border-radius: 0; padding: calc(var(--nav-h) + 32px) 28px calc(32px + env(safe-area-inset-bottom)); background: #07111f; display: flex; justify-content: center; gap: 12px; overflow-y: auto; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .22s, visibility .22s; }
  .nav-links.open { visibility: visible; opacity: 1; pointer-events: auto; }
  .nav-links > a { font-size: clamp(1.5rem,7vw,2.5rem); padding: 14px 8px; line-height: 1.15; opacity: 0; transform: translateX(-12px); transition: opacity .25s, transform .25s; }
  .nav-links.open > a { opacity: 1; transform: none; transition-delay: calc(var(--link-order,0) * 45ms); }
  .nav-links .danca-explore { display: none; }
  .brand { z-index: 102; }
  .faq-launcher { right: max(18px, env(safe-area-inset-right)); bottom: calc(18px + env(safe-area-inset-bottom)); }
  .faq-panel { left: 0; right: 0; bottom: 0; width: 100%; max-height: 85vh; max-height: 85dvh; border-radius: 24px 24px 0 0; padding-bottom: env(safe-area-inset-bottom); transform: translateY(100%); opacity: 1; transition: transform .3s ease, visibility .3s; }
  .faq-panel.open { transform: translateY(0); }
  .faq-header { padding-top: 20px; }
  .faq-suggestions { max-height: 150px; padding-bottom: 16px; }
  .faq-footer { padding-bottom: 16px; }
  .legal-page .page-hero { padding-top: 48px; padding-bottom: 12px; }
  .legal-page .prose { padding-top: 0; }
  .legal-page h1 { font-size: clamp(2.5rem,11vw,4rem); }
  .legal-page .prose h2 { font-size: 1.7rem; margin-top: 36px; }
  .field input, .field select, .field textarea { font-size: 16px; }
  .form-card { padding: 22px 18px; }
  .form-aside { padding: 22px; }
  .hero-grid > * { min-width: 0; }
  .hero h1, .page-hero h1 { font-size: clamp(2.4rem, 10.6vw, 4rem); overflow-wrap: anywhere; }
  .hero-console { min-height: 260px; }
  .hero-console .orbit { opacity: .45; }
  .hero-console .orbit-node { box-shadow: none; }
}
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .commercial-thread-fill { box-shadow: none; }
}
@media print { .commercial-thread, .faq-backdrop { display: none; } }
