@import url('fonts.css');

/* Vitrine 1.6: componentes escopados. Tokens oficiais em vitrine-tokens.css. */
body.locomotiva-editorial{--focus-ring:var(--brand-black);--lv-paper:var(--brand-cream);--lv-ink:var(--lii-catalog-ink,var(--ink));--lv-card:var(--lii-page-card,var(--surface));--lv-line:var(--lii-page-line,var(--line-card));margin:0;background:var(--lv-paper);color:var(--lv-ink);font-family:var(--font-sans);font-size:16px;line-height:1.45}
.locomotiva-editorial *{box-sizing:border-box}
.locomotiva-editorial :is(h1,h2,h3,p){margin:0;color:inherit}
.locomotiva-editorial a{color:inherit;text-decoration:none}
.locomotiva-editorial :is(a,button,input):focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}
.locomotiva-editorial :is(.hero,.experiences){width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-28)}
.locomotiva-editorial .hero{padding-block:var(--space-68) var(--space-42)}
.locomotiva-editorial .hero-copy{max-width:1060px;margin-inline:auto;text-align:center}
.locomotiva-editorial .eyebrow{font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.06em}
.locomotiva-editorial .hero h1{font-family:var(--font-display);font-weight:400;font-size:clamp(42px,5.6vw,80px);line-height:1.1;letter-spacing:-.025em;text-transform:uppercase;margin:var(--space-24) auto;max-width:1060px}
.locomotiva-editorial .hero-description{font-size:17px;line-height:1.45;max-width:720px;margin-inline:auto}
.locomotiva-editorial .hero-address{font-size:13px;line-height:1.5;margin-top:var(--space-24)}
.locomotiva-editorial .experiences{padding-bottom:var(--space-68)}
.locomotiva-editorial .category-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding-block:var(--space-24);border-block:1px solid var(--lv-line)}
.locomotiva-editorial .category-nav button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:4px 9px;border:0;border-radius:var(--radius-control);background:var(--brand-cream);color:var(--ink);font:400 13px/1.3 var(--font-sans);opacity:.75;cursor:pointer;box-shadow:none;transition:opacity 160ms ease}
.locomotiva-editorial .category-nav button:hover{opacity:1}
.locomotiva-editorial .category-nav button[aria-pressed=true]{background:var(--brand-yellow);color:var(--brand-black);font-weight:500;opacity:1}
.locomotiva-editorial .filter-status{font-size:13px;line-height:1.4;margin-block:var(--space-24)}
.locomotiva-editorial .course-grid{display:grid;grid-template-columns:repeat(var(--lv-columns,4),minmax(0,1fr));gap:var(--space-24)}
.locomotiva-editorial .course{display:flex;flex-direction:column;min-width:0;background:var(--lv-card);border:0;border-radius:var(--radius-0);box-shadow:none;overflow-wrap:anywhere}
.locomotiva-editorial .course-media{position:relative;flex-shrink:0}
.locomotiva-editorial .course-image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--brand-white)}
.locomotiva-editorial.lv-image-ratio-square .course-image{aspect-ratio:1}
.locomotiva-editorial.lv-image-ratio-vertical .course-image{aspect-ratio:3/4}
.locomotiva-editorial .course .course-image img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:50% 50%;margin:0!important}
.locomotiva-editorial .image-arrow{display:none}
.locomotiva-editorial .course-meta{position:absolute;top:var(--space-12);left:var(--space-12);z-index:2;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 24px);pointer-events:none}
.locomotiva-editorial .course-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 8px;font-size:11px;line-height:1.4;font-weight:600;background:var(--brand-cream);color:var(--brand-black);border:0;border-radius:var(--radius-0);pointer-events:auto}
.locomotiva-editorial .course-badge.badge-tag{background:var(--surface)}
.locomotiva-editorial .course-badge:hover{background:var(--brand-yellow);color:var(--brand-black);border-color:var(--brand-yellow)}
.locomotiva-editorial .course h2{font-family:var(--font-display);font-size:clamp(24px,2vw,30px);font-weight:400;line-height:1.15;letter-spacing:0;text-transform:uppercase;margin:var(--space-24) var(--space-20) 0}
.locomotiva-editorial .course h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.locomotiva-editorial .course-copy{font-size:15px;line-height:1.5;margin:var(--space-14) var(--space-20) var(--space-24)}
.locomotiva-editorial .course-footer{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-20);margin:auto var(--space-20) 0;padding-block:var(--space-20);border-top:1px solid var(--lv-line)}
.locomotiva-editorial .course-schedule{font-size:13px;font-weight:500;line-height:1.5}
.locomotiva-editorial .lv-cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-12);width:100%;min-height:48px;padding:12px 16px;background:var(--brand-yellow);color:var(--brand-black);border:1px solid transparent;border-radius:var(--radius-control);font:700 14px/1.3 var(--font-sans);text-align:center;text-transform:uppercase;text-decoration:none;white-space:normal;box-shadow:none;cursor:pointer;transition:background-color 180ms ease,color 180ms ease}
.locomotiva-editorial .lv-cta:hover:not(:disabled):not([aria-disabled=true]){background:var(--brand-black);color:var(--brand-yellow)}
.locomotiva-editorial .lv-cta-wait{background:var(--ink-strong);color:var(--on-violet)}
.locomotiva-editorial .lv-cta-wait:hover:not(:disabled){background:var(--ink-hover)}
.locomotiva-editorial .lv-cta:disabled,.locomotiva-editorial .lv-cta[aria-disabled=true]{opacity:.6;cursor:wait;transform:none}
.locomotiva-editorial .course-featured{border:2px solid var(--brand-yellow)}
.locomotiva-editorial .course-signals{display:flex;flex-wrap:wrap;gap:8px;margin:var(--space-20) var(--space-20) 0}
.locomotiva-editorial .course-signals+h2{margin-top:var(--space-12)}
.locomotiva-editorial .lv-featured-label,.locomotiva-editorial .lv-low-stock{display:inline-block;padding:5px 8px;font-size:12px;font-weight:700;line-height:1.4;background:var(--brand-yellow);color:var(--brand-black)}
.locomotiva-editorial .course-media>.lv-low-stock{position:absolute;left:var(--space-12);bottom:var(--space-12);z-index:3;background:var(--brand-yellow);color:var(--brand-black)}
.locomotiva-editorial .schedule-note{font-size:13px;line-height:1.5;margin-top:var(--space-30)}

/* Shell do Identidade e fallback: altera somente a página da Vitrine. */
.locomotiva-editorial :is(.lii-header,.lv-header){background:var(--surface);color:var(--brand-black);border-bottom:1px solid var(--lv-line);font-family:var(--font-sans)}
.locomotiva-editorial :is(.lii-header-inner,.lv-header){max-width:var(--container-max);margin-inline:auto;padding:var(--space-24) var(--space-28)}
.locomotiva-editorial .lv-header{display:flex;align-items:center;gap:var(--space-24)}
.locomotiva-editorial .lv-header nav{margin-left:auto;display:flex;gap:var(--space-24)}
.locomotiva-editorial .brand{font-family:var(--font-display);font-size:24px;line-height:1.1}
.locomotiva-editorial .brand img{display:block;width:135px;max-height:65px;object-fit:contain}
.locomotiva-editorial :is(.header-note,.lii-note){font-size:13px;line-height:1.5}
.locomotiva-editorial .lii-header .sub-menu{background:var(--surface);color:var(--brand-black);border-color:var(--lv-line)}
.locomotiva-editorial .lii-header .lii-menu a:hover{color:var(--brand-purple)}
.locomotiva-editorial :is(.lii-footer,.lv-footer){background:var(--brand-pink);color:var(--brand-black);font-family:var(--font-sans)}
.locomotiva-editorial .lii-footer-inner{max-width:var(--container-max);padding-inline:var(--space-28)}
.locomotiva-editorial .lii-footer .lii-wordmark{color:var(--brand-cream-soft);font-family:var(--font-display)}
.locomotiva-editorial .lv-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-24);padding:var(--space-42) var(--space-28);font-size:13px}
.locomotiva-editorial .lv-footer strong{font:400 28px/1.1 var(--font-display)}
.locomotiva-editorial .skip{position:absolute;left:-9999px}
.locomotiva-editorial .skip:focus{left:16px;top:16px;background:var(--brand-cream);color:var(--brand-black);padding:16px;z-index:999999}

.locomotiva-editorial #lv-wait-dialog{width:min(var(--dialog-width),calc(100% - 32px));max-height:90dvh;overflow:auto;border:1px solid var(--lv-ink);border-radius:var(--radius-dialog);padding:var(--space-28);background:var(--lv-paper);color:var(--lv-ink);font-family:var(--font-sans);box-shadow:var(--shadow-dialog)}
.locomotiva-editorial #lv-wait-dialog::backdrop{background:#06001599}
.locomotiva-editorial #lv-wait-title{font:400 32px/1.1 var(--font-display);text-transform:uppercase;margin:0 32px var(--space-20) 0}
.locomotiva-editorial #lv-wait-dialog label:not([hidden]){display:block;margin-block:var(--space-20);font-size:14px;font-weight:600;line-height:1.5}
.locomotiva-editorial #lv-wait-dialog input:not([type=checkbox]):not([type=hidden]){display:block;width:100%;min-height:48px;margin-top:var(--space-4);padding:11px 12px;border:1px solid var(--field-border-accessible);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:400 16px/1.45 var(--font-sans);box-shadow:none}
.locomotiva-editorial #lv-wait-dialog .lv-wait-close{position:absolute;right:8px;top:8px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font-size:28px;cursor:pointer}
.locomotiva-editorial #lv-wait-dialog .lv-wait-close:hover{background:var(--brand-yellow);color:var(--brand-black)}
.locomotiva-editorial #lv-wait-dialog .lv-consent input{margin-right:8px;accent-color:var(--brand-yellow)}
.locomotiva-editorial #lv-wait-dialog .lv-wait-privacy{font-size:12px;line-height:1.5;margin-bottom:var(--space-20);text-decoration:underline;text-underline-offset:3px}
.locomotiva-editorial #lv-wait-dialog .lv-wait-result{font-size:14px;line-height:1.5;margin-top:var(--space-20)}
.locomotiva-editorial [hidden]{display:none!important}
html[data-lii-theme=dark] .locomotiva-editorial{--lv-paper:var(--lii-catalog-bg,var(--brand-black));--lv-card:var(--lii-page-card,var(--surface-dark));--lv-ink:var(--lii-catalog-ink,var(--brand-cream));--lv-line:var(--lii-page-line,var(--line-strong));--focus-ring:var(--brand-yellow)}
@media(max-width:1050px){.locomotiva-editorial .course-grid{grid-template-columns:repeat(var(--lv-tablet-columns,2),minmax(0,1fr))}}
@media(max-width:680px){.locomotiva-editorial :is(.hero,.experiences,.lii-header-inner,.lv-header,.lii-footer-inner){padding-inline:var(--space-20)}.locomotiva-editorial .hero{padding-block:var(--space-42) var(--space-30)}.locomotiva-editorial .hero h1{font-size:clamp(38px,9vw,56px);margin-block:var(--space-20)}.locomotiva-editorial .eyebrow{font-size:11px}.locomotiva-editorial .hero-description{font-size:16px}.locomotiva-editorial .category-nav{gap:8px;justify-content:flex-start}.locomotiva-editorial .category-nav button{padding:4px 9px}.locomotiva-editorial .lv-cta{font-size:13px;padding:12px 17px}.locomotiva-editorial .course-grid{grid-template-columns:1fr}.locomotiva-editorial .course h2{font-size:30px}.locomotiva-editorial .header-note{display:none}.locomotiva-editorial .lv-header nav{font-size:13px;gap:var(--space-12)}}
@media(prefers-reduced-motion:reduce){.locomotiva-editorial *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none!important}}

/* Rótulos de todos os botões da Vitrine sempre em caixa alta. */
.locomotiva-editorial :is(button,.lv-cta){text-transform:uppercase}
