.bs26-hero .bs26-hero__grid { grid-template-columns: 1fr 1.1fr; gap: 3rem; align-items: center; }
.bs26-hero .bs26-hero__title { font-size: clamp(2.5rem, 4.2vw, 4.2rem); line-height: 1.08; max-width: 16ch; }
.bs26-hero .bs26-hero__text { max-width: 44ch; }
.bs26-hero .bs26-hero__actions { gap: 12px; flex-wrap: wrap; }
.bs-demo { max-width: 1120px; margin: auto; padding: 48px 24px 72px; color: #15173c; }
.bs-demo h1 { max-width: 20ch; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.12; }
.bs-demo p { max-width: 70ch; line-height: 1.7; }
.bs-demo nav { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0; }
.bs-demo button, .bs-demo .bs-demo-action { display: inline-block; padding: 12px 18px; min-height: 44px; border: 1px solid #232477; border-radius: 10px; background: #fff; color: #232477; font: inherit; font-weight: 700; }
.bs-demo button[aria-pressed="true"], .bs-demo .bs-demo-action { background: #232477; color: #fff; }
.bs-demo .bs-demo-opcao { display: inline-block; padding: 12px 18px; min-height: 44px; border: 1px solid #232477; border-radius: 10px; color: #232477; font-weight: 700; text-decoration: none; }
.bs-demo .bs-demo-opcao[aria-current], .bs-demo .bs-demo-opcao:hover { background: #232477; color: #fff; }
.bs-demo .bs-demo-captura { display: flex; justify-content: center; background: #f5f9fc; aspect-ratio: 16 / 10; border: 1px solid #dce4ec; }
.bs-demo .bs-demo-captura img { width: 100%; height: 100%; object-fit: contain; }
.bs-demo .bs-demo-acoes { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.bs-demo .bs-demo-disponibilidade { padding: 20px; background: #edf9fd; border-radius: 12px; margin: 24px 0; }
.bs-demo .bs-demo-disponibilidade p { margin: 0; }
.bs-vitrine .bs-vitrine-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 48px; align-items: start; }
.bs-vitrine .bs-vitrine-grid::before, .bs-vitrine .bs-vitrine-grid::after { display: none; }
.bs-vitrine .section-heading, .bs-vitrine .section-subheading { text-align: left; }
.bs-vitrine .section-heading { margin-top: 0; }
.bs-vitrine .bs-vitrine-etapa { margin-top: 24px; }
.bs-vitrine .bs-vitrine-etapa h3 { font-size: 1.25rem; margin: 0 0 8px; }
.bs-vitrine .bs-vitrine-etapa p { line-height: 1.7; margin-bottom: 8px; }
.bs-vitrine a { color: #232477; text-underline-offset: 3px; }
.bs-vitrine .bs-vitrine-imagem { margin: 0; position: sticky; top: 100px; }
.bs-vitrine .bs-vitrine-imagem img { display: block; width: 100%; height: auto; border: 1px solid #dce4ec; border-radius: 12px; }
.bs-vitrine figcaption, .bs-vitrine .bs-vitrine-disponibilidade { margin-top: 16px; color: #3f4664; line-height: 1.6; }
.bs-vitrine :focus-visible { outline: 3px solid #007da8; outline-offset: 4px; }
@media (max-width: 900px) { .bs-vitrine .bs-vitrine-grid { grid-template-columns: 1fr; gap: 32px; } .bs-vitrine .bs-vitrine-imagem { position: static; } }
.bs-demo figure { margin: 24px 0; }
.bs-demo img { display: block; width: 100%; max-width: 1244px; height: auto; }
.bs-demo-captura { display: block; cursor: zoom-in; }
.bs-demo .bs-demo-ampliar { margin-top: 8px; font-size: 0.9rem; }
.bs-demo figcaption { margin-top: 12px; color: #3f4664; }
.bs-demo a { text-underline-offset: 3px; }
.bs-demo :focus-visible { outline: 3px solid #007da8; outline-offset: 4px; }
.bs-demo-login { font-size: 1.3rem; font-weight: 700; overflow-wrap: anywhere; }
@media (max-width: 767px) {
    .bs26-hero .bs26-hero__grid { grid-template-columns: 1fr; gap: 24px; }
    .bs26-hero .bs26-hero__title { max-width: 19ch; font-size: 2.65rem; }
    .bs26-hero .bs26-hero__actions a { width: 100%; text-align: center; }
    .bs-demo { padding: 30px 18px; }
}

.bs-demo { padding-top: 110px; }
.bs-demo img { height: auto; }
@media (max-width: 767px) { .bs-demo { padding-top: 90px; } }
