/* Home nova (2026) - baseada no layout do www.singlibras.com.br
   Escopada inteira sob body.home para nunca afetar outras paginas do site. */

body.home { background-color: #F7F6F9; color: #6D6C80; font-family: 'Poppins', sans-serif; }
body.home #slh-home,
body.home #slh-home * { box-sizing: border-box; }
body.home #slh-home a { text-decoration: none; transition: all .5s ease; }
body.home #slh-home figure { margin: 0px; }

body.home #slh-home .container { display: block; width: auto; max-width: 1400px; height: auto; margin: 0px auto; padding: 0px 20px; }

/* botoes */
body.home #slh-home .bt a { position: relative; display: inline-block; width: auto; padding: 16px 40px; font-weight: 600; border-radius: 40px; }
body.home #slh-home .bt a::after { position: absolute; z-index: -1; top: 7px; left: 7px; width: 100%; height: 100%; border-radius: 40px; transition: all .2s ease; content: ''; }
body.home #slh-home .bt a:hover::after { top: 3px; left: 3px; }

/* titulo de secao */
body.home #slh-home .head { text-align: center; }
body.home #slh-home .head small { display: inline-block; width: auto; padding: 7px 14px; background-color: #EFEEFE; color: #5751E1; border-radius: 40px; }
body.home #slh-home .head h6 { display: block; margin: 15px 0px 30px 0px; font-weight: 600; font-size: 36px; color: #06042E; }

/* feat */
body.home #slh-feat { position: relative; z-index: 2; padding: 50px 0px; }
body.home #slh-feat .container { display: flex; align-items: center; }
body.home #slh-feat section { position: relative; width: 44%; height: auto; padding-right: 30px; }
body.home #slh-feat section::before { position: absolute; top: 0px; left: -242px; width: 242px; height: 360px; background: transparent url('../img/home2026/feat-img-arrow.png') no-repeat; background-size: contain; content: ''; }
body.home #slh-feat section h1 { display: block; font-weight: 500; font-size: 40px; color: #06042E; line-height: 1.2; }
body.home #slh-feat section h1 strong { position: relative; display: inline-block; margin-left: 10px; color: #fff; font-weight: bold; }
body.home #slh-feat section h1 strong::before { position: absolute; z-index: -1; top: -5px; left: -15px; width: calc(100% + 30px); height: 86px; background: transparent url('../img/home2026/feat-title.svg') no-repeat; background-size: contain; content: ''; }
body.home #slh-feat section h1 strong::after { position: absolute; top: -55px; right: -60px; width: 60px; height: 70px; background: transparent url('../img/home2026/feat-title-lines.png') no-repeat; background-size: contain; content: ''; }
body.home #slh-feat section h1 b { font-weight: bold; }
body.home #slh-feat section p { display: block; margin: 20px 0px 30px 0px; line-height: 1.6; }
body.home #slh-feat .bts { display: flex; align-items: center; gap: 20px; }
body.home #slh-feat .bts .bt a::before { float: right; margin: 0px 0px 0px 15px; font-weight: 500; font-family: 'Font Awesome 5 Pro'; content: '\f061'; }
body.home #slh-feat .bts .bt:first-of-type a { background-color: #5751E1; color: #fff; }
body.home #slh-feat .bts .bt:first-of-type a::after { background-color: #06042E; }
body.home #slh-feat .bts .bt:last-of-type a { background-color: #FF7324; color: #fff; }
body.home #slh-feat .bts .bt:last-of-type a::after { background-color: #692600; }
body.home #slh-feat figure.img { width: 56%; height: auto; margin-bottom: -3px; }
body.home #slh-feat figure.img img { width: 100%; height: auto; }

/* bar */
body.home #slh-bar { position: relative; z-index: 2; padding: 40px 0px; background-color: #06042E; }
body.home #slh-bar section { display: grid; grid-template-columns: repeat(4, 1fr); }
body.home #slh-bar section article { text-align: center; }
body.home #slh-bar section article i { font-size: 30px; color: #fff; }
body.home #slh-bar section article strong { display: block; margin: 10px 0px; font-weight: bold; font-size: 14px; color: #fff; text-transform: uppercase; }
body.home #slh-bar section article p { display: block; color: #fff; }

/* about */
body.home #slh-about .container { display: flex; align-items: flex-end; }
body.home #slh-about figure { width: 45%; }
body.home #slh-about figure img { width: 100%; height: auto; }
body.home #slh-about section { width: 55%; padding: 50px 0px 100px 80px; }
body.home #slh-about section header { text-align: left; }
body.home #slh-about section header h6 { margin-bottom: 0px; }
body.home #slh-about section header p { display: block; margin: 15px 0px 30px 0px; }
body.home #slh-about section article { display: block; margin-bottom: 20px; }
body.home #slh-about section article p { position: relative; display: block; margin-bottom: 30px; padding-left: 60px; line-height: 1.6; color: #06042E; font-weight: 500; }
body.home #slh-about section article p i { position: absolute; top: 0px; left: 0px; width: 30px; height: 30px; font-size: 13px; background-color: #FFC224; color: #06042E; border: 1px solid #06042E; line-height: 26px; text-align: center; border-radius: 100%; }
body.home #slh-about section article p i::after { position: absolute; z-index: -1; top: 5px; left: 5px; width: 100%; height: 100%; border-radius: 100%; background-color: #BFBFBF; content: ''; }
body.home #slh-about section footer .bt a { background-color: #5751E1; color: #fff; }
body.home #slh-about section footer .bt a::after { background-color: #06042E; }
body.home #slh-about section footer .bt a::before { float: right; margin: 0px 0px 0px 15px; font-weight: 500; font-family: 'Font Awesome 5 Pro'; content: '\f061'; }

/* cursos */
body.home #slh-cursos { padding: 100px 0px; background-color: #fff; }
body.home #slh-cursos section { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; width: 100%; height: auto; margin-top: 60px; text-align: left; }
body.home #slh-cursos section article a { display: block; width: 100%; height: 100%; padding: 26px 26px 20px 26px; border: 1px solid #B5B5C3; background-color: #fff; border-radius: 10px; }
body.home #slh-cursos section article a:hover { background-color: #f5f5f5; }
body.home #slh-cursos section article figure.card { width: 100%; height: 190px; background-color: #000; border-radius: 10px; overflow: hidden; }
body.home #slh-cursos section article figure.card img { width: 100%; height: 100%; object-fit: cover; }
body.home #slh-cursos section article span.details { display: flex; margin: 20px 0px; justify-content: space-between; align-items: center; }
body.home #slh-cursos section article span.details b { display: inline-block; width: auto; padding: 5px 10px; border-radius: 30px; background-color: #EFEFF2; color: #06042E; font-size: 13px; }
body.home #slh-cursos section article h2 { display: block; margin-bottom: 10px; font-weight: 600; font-size: 18px; line-height: 1.4; color: #06042E; }

/* site */
body.home #slh-site { padding: 60px 0px; }
body.home #slh-site .container { display: flex; align-items: center; }
body.home #slh-site figure.side { width: 50%; height: auto; }
body.home #slh-site figure.side img { display: block; width: auto; max-width: 100%; height: auto; margin: 0px auto; }
body.home #slh-site section { width: 50%; }
body.home #slh-site section header.head { text-align: left; }
body.home #slh-site section article p { display: block; margin-bottom: 30px; line-height: 1.6; }
body.home #slh-site section article nav ul { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 40px; }
body.home #slh-site section article nav ul li figure { display: flex; margin-bottom: 20px; align-items: center; gap: 20px; }
body.home #slh-site section article nav ul li figure img { width: 84px; height: auto; }
body.home #slh-site section article nav ul li figure strong { font-weight: 600; font-size: 20px; line-height: 1.2; color: #06042E; }
body.home #slh-site section article .bt a { background-color: #5751E1; color: #fff; }
body.home #slh-site section article .bt a::after { background-color: #06042E; }
body.home #slh-site section article .bt a::before { float: right; margin: 0px 0px 0px 15px; font-weight: 500; font-family: 'Font Awesome 5 Pro'; content: '\f061'; }

/* banner */
body.home #slh-banner { padding: 0px 0px 60px 0px; }
body.home #slh-banner section { position: relative; width: 100%; height: auto; min-height: 320px; border-radius: 30px; background-color: #282568; overflow: hidden; }
body.home #slh-banner section article { display: flex; flex-direction: column; width: 100%; height: auto; min-height: 320px; padding: 50px 40px; align-items: center; justify-content: center; text-align: center; gap: 30px; }
body.home #slh-banner section article h3 { width: 100%; max-width: 700px; height: auto; font-weight: bold; font-size: 40px; color: #fff; line-height: 1.2; text-align: center; }
body.home #slh-banner section article h3 strong { position: relative; font-weight: bold; color: #FFC224; }
body.home #slh-banner section article nav { width: auto; height: auto; }
body.home #slh-banner section article nav ul { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(140px, auto); gap: 20px; }
body.home #slh-banner section article nav ul li { position: relative; text-align: center; color: #fff; }
body.home #slh-banner section article nav ul li:first-of-type::after { position: absolute; top: 0px; right: -10px; width: 3px; height: 100%; background: linear-gradient(to bottom, #fff, transparent); content: ''; }
body.home #slh-banner section article nav ul li strong { display: block; margin-bottom: 10px; font-weight: bold; font-size: 66px; }

/* teachers */
body.home #slh-teachers { margin-bottom: 40px; padding-top: 100px; }
body.home #slh-teachers section .list { position: relative; display: flex; width: 900px; max-width: 100%; height: auto; margin: 0px auto; align-items: center; }
body.home #slh-teachers section .list::after { position: absolute; top: 0px; right: -100px; width: 100px; height: 100px; background: transparent url('../img/home2026/tearcher-cap.png') no-repeat; background-size: contain; content: ''; }
body.home #slh-teachers section .list .item { display: flex; align-items: center; }
body.home #slh-teachers section figure { width: 50%; }
body.home #slh-teachers section figure img { width: 100%; height: auto; border-radius: 20px; }
body.home #slh-teachers section article { display: block; width: 50%; padding-left: 30px; }
body.home #slh-teachers section article span.review { display: inline-block; width: auto; padding: 7px 10px; background-color: #fff; border: 1px solid #6D6C80; border-radius: 40px; font-size: 14px; }
body.home #slh-teachers section article span.review i { color: #FFC224; }
body.home #slh-teachers section article h2 { display: block; margin: 20px 0px 5px 0px; font-weight: bold; color: #06042E; font-size: 30px; }
body.home #slh-teachers section article strong { display: block; font-weight: bold; color: #5751E1; font-size: 18px; }
body.home #slh-teachers section article p { display: block; margin: 20px 0px; line-height: 1.6; }
body.home #slh-teachers section article .bt a { background-color: #5751E1; color: #fff; }
body.home #slh-teachers section article .bt a::after { background-color: #06042E; }
body.home #slh-teachers section article .bt a::before { float: right; margin: 0px 0px 0px 15px; font-weight: 500; font-family: 'Font Awesome 5 Pro'; content: '\f061'; }

/* choose */
body.home #slh-choose { padding: 100px 0px; background-color: #282568; }
body.home #slh-choose .head small { background-color: #5751E1; color: #fff; }
body.home #slh-choose .head h6 { margin-bottom: 10px; color: #fff; }
body.home #slh-choose .head p { display: block; color: rgba(255,255,255,.6); line-height: 1.6; }
body.home #slh-choose section { display: grid; margin-top: 100px; grid-template-columns: repeat(4, 1fr); grid-gap: 60px; text-align: center; }
body.home #slh-choose section article img { display: block; width: auto; height: 80px; margin: 0px auto; }
body.home #slh-choose section article strong { display: block; margin: 20px 0px; font-weight: 900; font-size: 20px; color: #fff; }
body.home #slh-choose section article p { display: block; line-height: 1.6; color: rgba(255,255,255,.6); }

/* blog (home) */
body.home #slh-blog { padding: 100px 0px; }
body.home #slh-blog section { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px; }
body.home #slh-blog section article a { display: block; min-height: 400px; padding: 25px; background-color: #fff; border: 1px solid #6D6C80; border-radius: 10px; }
body.home #slh-blog section article a:hover { background-color: #EFEEFE; }
body.home #slh-blog section article figure { display: block; width: 100%; height: 220px; background-color: #000; border-radius: 10px; overflow: hidden; }
body.home #slh-blog section article figure img { width: 100%; height: 100%; object-fit: cover; }
body.home #slh-blog section article abbr { display: block; margin: 15px 0px; font-size: 14px; color: #6D6C80; }
body.home #slh-blog section article h2 { display: block; font-weight: bold; font-size: 20px; line-height: 1.4; color: #06042E; }

/* items */
body.home #slh-items { margin: 40px 0px 100px 0px; }
body.home #slh-items section { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 40px; }
body.home #slh-items section article { position: relative; z-index: 2; display: flex; width: 100%; height: 260px; border-radius: 15px; background-color: #fff; align-items: center; overflow: hidden; }
body.home #slh-items section article figure { position: relative; width: 35%; height: 260px; }
body.home #slh-items section article figure img { position: absolute; bottom: 0px; left: 0px; width: 100%; height: auto; }
body.home #slh-items section article figcaption { width: 65%; padding: 0px 30px; }
body.home #slh-items section article figcaption h4 { display: block; font-weight: bold; font-size: 28px; color: #06042E; }
body.home #slh-items section article figcaption p { display: block; margin: 20px 0px; line-height: 1.6; font-size: 15px; }
body.home #slh-items section article figcaption .bt a { background-color: #5751E1; color: #fff; }
body.home #slh-items section article figcaption .bt a::after { background-color: #06042E; }
body.home #slh-items section article figcaption .bt a::before { float: right; margin: 0px 0px 0px 15px; font-weight: 500; font-family: 'Font Awesome 5 Pro'; content: '\f061'; }

/* ============ responsive ============ */
@media (max-width: 1100px){
    body.home #slh-feat .container { align-items: flex-end; }
    body.home #slh-feat section { width: 60%; padding-bottom: 50px; }
    body.home #slh-about section { width: 70%; padding-top: 50px; }
    body.home #slh-site section article nav ul { grid-template-columns: 1fr; }
    body.home #slh-banner section article { flex-direction: column; padding: 20px; }
    body.home #slh-banner section article h3 { width: 100%; }
    body.home #slh-banner section article nav { width: 100%; }
    body.home #slh-teachers section { padding: 0px 100px; }
    body.home #slh-teachers section .list { width: 100%; }
    body.home #slh-choose section { grid-template-columns: repeat(2, 1fr); }
    body.home #slh-blog section { grid-template-columns: repeat(2, 1fr); }
    body.home #slh-items section { grid-template-columns: 1fr; }
    body.home #slh-items section article { overflow: visible; }
}

@media (max-width: 870px){
    body.home #slh-feat .container { flex-direction: column; }
    body.home #slh-feat section { width: 100%; }
    body.home #slh-feat figure.img { width: 100%; }
    body.home #slh-about figure { display: none; }
    body.home #slh-about section { width: 100%; padding: 40px 20px; }
    body.home #slh-site .container { flex-direction: column; }
    body.home #slh-site figure.side { width: 100%; }
    body.home #slh-site section { width: 100%; }
    body.home #slh-banner section article h3 { font-size: 24px; }
    body.home #slh-banner section article nav ul { grid-auto-flow: row; }
    body.home #slh-teachers section { padding: 0px 50px 50px 50px; }
    body.home #slh-teachers section .list .item { flex-direction: column; }
    body.home #slh-teachers section figure { width: 100%; margin-bottom: 20px; }
    body.home #slh-teachers section article { width: 100%; padding: 0px 0px 20px 0px; }
}

@media (max-width: 700px){
    body.home #slh-home .head h6 { font-size: 24px; }
    body.home #slh-feat section h1 { font-size: 30px; }
    body.home #slh-bar section { grid-template-columns: repeat(2, 1fr); grid-gap: 30px; }
    body.home #slh-cursos section { grid-template-columns: 1fr; padding: 0px; }
    body.home #slh-choose section { grid-template-columns: 1fr; }
    body.home #slh-blog section { grid-template-columns: 1fr; }
    body.home #slh-items section article figcaption h4 { font-size: 18px; }
}
