/* Neural Labs product presentation uses the shared Alshival public shell. */
.labs-page { --labs-ink: var(--app-ink, #0b0c11); --labs-muted: var(--app-muted, #62636b); --labs-line: var(--app-line, rgba(11,12,17,.14)); }
.labs-main { color: var(--labs-ink); font-family: 'Public Sans', sans-serif; }
.labs-frame { width: min(100%, 94rem); padding-inline: clamp(1.2rem, 5vw, 5.5rem); margin-inline: auto; }
.labs-hero { padding-block: clamp(3.5rem, 8vw, 8rem) 3rem; }
.labs-main h1 { font-size: clamp(3.2rem, 8.5vw, 8.5rem); line-height: .94; letter-spacing: -.065em; margin: 1.3rem 0 2rem; font-weight: 700; }
.labs-main h2 { font-size: clamp(2.15rem, 5vw, 4.8rem); line-height: 1.02; letter-spacing: -.055em; margin: 1.2rem 0 2rem; font-weight: 700; }
.labs-main h3 { font-size: 1.4rem; line-height: 1.25; letter-spacing: -.025em; margin-block: 1rem; }
.labs-lede { max-width: 43rem; font-size: clamp(1.15rem, 2vw, 1.4rem); line-height: 1.65; color: var(--labs-muted); }
.labs-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-block: 2rem 1.2rem; }
.labs-main .button { min-height: 44px; font-family: 'Public Sans', sans-serif; font-weight: 700; font-size: .87rem; }
.labs-main .btn-frost { background: var(--app-paper, #f6f4ef); color: var(--labs-ink); border: 1px solid var(--labs-line); }
.labs-small { max-width: 42rem; font-size: .85rem; line-height: 1.65; color: var(--labs-muted); }
.labs-small a, .labs-text-link, .labs-faq a { color: var(--labs-ink); text-underline-offset: .22em; }
.labs-showcase { margin-block: 0 3rem; }
.labs-showcase img { width: 100%; height: auto; border: 1px solid var(--labs-line); border-radius: 1.2rem; }
.labs-main figcaption { padding-top: .75rem; color: var(--labs-muted); font-size: .8rem; line-height: 1.5; }
.labs-section { padding-block: clamp(3rem, 7vw, 6rem); border-top: 1px solid var(--labs-line); }
.labs-features { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 2rem; margin-top: 3rem; }
.labs-features p, .labs-practices p, .labs-hosting p, .labs-faq p { color: var(--labs-muted); line-height: 1.65; }
.labs-number { color: var(--blue); font-family: var(--mono); font-size: .8rem; }
.labs-teamwork { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem,6vw,6rem); }
.labs-copy { max-width: 40rem; color: var(--labs-muted); font-size: 1.12rem; line-height: 1.65; }
.labs-practices article { padding-block: .4rem 1.2rem; border-bottom: 1px solid var(--labs-line); }
.labs-screens { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 2.5rem; }
.labs-screens figure { margin: 0; min-width: 0; }
.labs-screens img { width: 100%; height: auto; border-radius: .85rem; border: 1px solid var(--labs-line); }
.labs-hosting { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem,6vw,6rem); }
.labs-hosting article { padding-top: 1rem; border-top: 3px solid var(--blue); }
.labs-hosting article + article { border-color: var(--violet); }
.labs-text-link { display: block; margin-top: 1.5rem; width: fit-content; }
.labs-faq details { padding-block: 1.4rem; border-top: 1px solid var(--labs-line); }
.labs-faq summary { cursor: pointer; font-weight: 600; line-height: 1.5; }
.labs-faq p { max-width: 44rem; }
.labs-main a:focus-visible, .labs-main summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 5px; }
@media (max-width: 960px) { .labs-features { grid-template-columns: 1fr 1fr; } .labs-teamwork { grid-template-columns: 1fr; } }
@media (max-width: 650px) { .labs-features, .labs-screens, .labs-hosting { grid-template-columns: 1fr; } .labs-actions { flex-direction: column; align-items: stretch; } .labs-actions .button { justify-content: space-between; } }
@media (prefers-reduced-motion: reduce) { .labs-page *, .labs-page *::before, .labs-page *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
