Detalhes do Produto Virtual

Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> serviceLocator.findService("br.senac.sp.editora.services.service.ProductService")  [in template "20102#20129#43698976" at line 22, column 18]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: productService = serviceLocator.findS...  [in template "20102#20129#43698976" at line 22, column 1]
----
1<#setting locale="pt_BR"> 
2 
3<#assign 
4cPCatalogEntry = cpContentHelper.getCPCatalogEntry(request) 
5 
6cpMedia = cpContentHelper.getImages(cPCatalogEntry.getCPDefinitionId(), themeDisplay) 
7 
8CPDefinitionLocalService = serviceLocator.findService("com.liferay.commerce.product.service.CPDefinitionLocalService") 
9 
10assetentry = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") 
11 
12assetCategoryRel = serviceLocator.findService("com.liferay.asset.entry.rel.service.AssetEntryAssetCategoryRelLocalService") 
13 
14assetCategory = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") 
15 
16friendlyURLEntryLocalService = serviceLocator.findService("com.liferay.friendly.url.service.FriendlyURLEntryLocalService") 
17 
18asset = assetentry.getEntry('com.liferay.commerce.product.model.CPDefinition',cPCatalogEntry.getCPDefinitionId()) 
19 
20relateds = assetCategoryRel.getAssetEntryAssetCategoryRelsByAssetEntryId(asset.getEntryId()) 
21 
22productService = serviceLocator.findService("br.senac.sp.editora.services.service.ProductService") 
23/> 
24 
25<#list relateds as related > 
26<#assign category = assetCategory.getAssetCategory(related.assetCategoryId)/> 
27<#if category.parentCategoryId == 0 > 
28<#assign categoria = category.name /> 
29<#assign icone= category.getDescriptionCurrentValue()/> 
30 
31<#switch category.name?trim> 
32<#case "Moda"> 
33<#assign iconeClass='<i><svg class="categoria-icon-svg" xmlns="http://www.w3.org/2000/svg"  viewBox="0 0 65.641 104.516">' 
34    +'<path d="M467.11,434.216l14.3-5.288c4.827-1.785,5.976-5.932,6.14-10.795h16.32c.164,4.862,1.313,9.01,6.14,10.795l14.3,5.288c2.131.787,4.219,1.631,4.219,3.622,0,8.794-2.641,10.034-7.662,17.6l-.25.376c-3.222,4.862-7.672,13.961-6.752,19.622-.283,2.736,9.722,12.282,12.06,17.708l.379.881c1.315,3.054,4.61,15.1-1.994,15.1h-57.2c-6.6,0-3.309-12.043-1.994-15.1l.379-.881c2.338-5.427,12.341-14.971,12.06-17.708.92-5.66-3.53-14.759-6.752-19.622l-.252-.376c-5.018-7.57-7.66-8.808-7.66-17.6,0-1.992,2.088-2.834,4.219-3.622Z" transform="translate(-462.891 -418.133)" fill="#F6921E" fill-rule="evenodd"/>' 
35    +'<path d="M477.019,463.359h6.827V473.9h-6.827V463.359Z" transform="translate(-447.613 -369.385)" fill="#F6921E" fill-rule="evenodd"/></svg></i>'/> 
36<#break> 
37<#case "Meio Ambiente, Segurança e Saúde no Trabalho"> 
38<#assign iconeClass='<i><svg xmlns="http://www.w3.org/2000/svg" class="categoria-icon-svg" viewBox="0 0 63.955 71.556">' 
39    +'<path d="M62.764-7.356a3.692,3.692,0,0,0-4.73,0L47.775.8a7.094,7.094,0,0,1-4.441,1.545H30.2A1.777,1.777,0,0,1,28.423.581,1.777,1.777,0,0,1,30.2-1.185h8.693a3.692,3.692,0,0,0,3.7-2.936A3.543,3.543,0,0,0,39.082-8.25H21.317a13.114,13.114,0,0,0-8.227,2.9L7.927-1.185H1.776A1.777,1.777,0,0,0,0,.581v10.6a1.777,1.777,0,0,0,1.776,1.766H41.391A7.14,7.14,0,0,0,45.832,11.4L62.62-1.958A3.518,3.518,0,0,0,62.764-7.356Z" transform="translate(0 58.612)" fill="#F6921E"/><g transform="translate(9.405 0)">' 
40        +'<path d="M38.33-7.415,37.154-6.359l-1.077.536-1.158.445-1.071.256H31.725l-.486,2.835a10.051,10.051,0,0,1-9.862,7.721,9.984,9.984,0,0,1-10.1-9.856,9.958,9.958,0,0,1,7.96-9.651l2.72-.643v-2.047l.43-1.8.659-1.211,1.476-1.137-1.108-4.28H19.361l-1.108,4.849-2.169.569-3.517-3.674-3.478,1.93,1.453,4.849L9.088-15.2,3.966-16.516,1.988-13.178,5.705-9.5,5.16-7.667.048-6.3,0-2.483,5.16-1.168,5.619.958,2,4.445,3.88,7.69l5.3-1.315,1.309,1.5L9.04,12.586l3.574,2.023,3.478-3.581,2.074.522,1.2,5,4.052.047,1.2-5.035,2.074-.615,3.717,3.776,3.66-2.117-1.6-4.9,1.4-1.417,5.16,1.557,1.835-3.534L37.154,1.023l.392-2.117,5.265-1.25v-3.72Z" transform="translate(0 27.431)" fill="#F6921E"/>' 
41        +'<path d="M23.661.421A.674.674,0,0,0,22.435.369,7.429,7.429,0,0,1,15.941,4.16H12.475a8.32,8.32,0,0,0-8.318,8.318,8.564,8.564,0,0,0,.065.888A20.727,20.727,0,0,1,16.634,9.705a.693.693,0,1,1,0,1.386C5.742,11.092,1.124,17.768.1,20.276a1.388,1.388,0,0,0,2.569,1.053A11.4,11.4,0,0,1,5.786,17.4a8.3,8.3,0,0,0,7.577,3.345c6.8-.494,11.589-6.594,11.589-14.063A15.754,15.754,0,0,0,23.661.421Z" transform="matrix(1, 0.017, -0.017, 1, 19.456, 0)" fill="#F6921E"/></g></svg></i>'/> 
42<#break> 
43<#case "Beleza e Estética"> 
44<#assign iconeClass='<i><svg xmlns="http://www.w3.org/2000/svg" class="categoria-icon-svg" viewBox="0 0 60.76 77.254"><g transform="translate(0 0)"><g transform="translate(5.923)">' 
45    +'<path d="M1748.342,1013.858a24.669,24.669,0,1,1,24.456-24.667A24.591,24.591,0,0,1,1748.342,1013.858Zm0-43.206a18.539,18.539,0,1,0,18.38,18.539A18.48,18.48,0,0,0,1748.342,970.651Z" transform="translate(-1723.885 -964.522)" fill="#F6921E"/></g><g transform="translate(16.198 10.365)">' 
46    +'<path d="M1756.728,977.4l-19.966,20.139a14.256,14.256,0,0,0,4.963,3.861l18.831-18.993A14.351,14.351,0,0,0,1756.728,977.4Z" transform="translate(-1733.509 -974.12)" fill="#F6921E"/>' 
47    +'<path d="M1761.48,987.961a14.459,14.459,0,0,0-.28-2.831l-16.708,16.854a14.082,14.082,0,0,0,11.464-2.7l2.571-2.594A14.315,14.315,0,0,0,1761.48,987.961Z" transform="translate(-1733.118 -973.658)" fill="#F6921E"/>' 
48    +'<path d="M1747.846,974.3c-.238,0-.475.006-.71.019l-13.453,13.567c-.011.238-.018.477-.018.718a14.332,14.332,0,0,0,1.586,6.569L1754.36,975.9A14.029,14.029,0,0,0,1747.846,974.3Z" transform="translate(-1733.665 -974.304)" fill="#F6921E"/></g>' 
49    +'<path d="M1779.006,988.381h-4.253a26.128,26.128,0,1,1-52.253,0h-4.253a30.573,30.573,0,0,0,28.253,30.566v9.493c-9.442.334-16.785,2.864-16.785,5.936,0,3.3,8.468,5.976,18.912,5.976s18.911-2.675,18.911-5.976c0-3.072-7.342-5.6-16.784-5.936v-9.493A30.574,30.574,0,0,0,1779.006,988.381Z" transform="translate(-1718.246 -963.099)" fill="#F6921E"/></g></svg></i>'/> 
50<#break> 
51<#case "Tecnologia"> 
52<#assign iconeClass='<i><svg xmlns="http://www.w3.org/2000/svg" class="categoria-icon-svg" viewBox="0 0 127.574 82.718"><g transform="translate(13.38)">' 
53    +'<path d="M1782.769,182.429V130.094h-86.124v52.335Zm5.739-58.109a5.247,5.247,0,0,1,1.6,3.838v61.624H1689.292V128.158a5.36,5.36,0,0,1,5.4-5.4h90.018A5.154,5.154,0,0,1,1788.507,124.319Z" transform="translate(-1689.292 -122.758)" fill="#F6921E" fill-rule="evenodd"/></g><g transform="translate(0 71.941)">' 
54    +'<path d="M1804.43,189.61v1.649a9.184,9.184,0,0,1-9.128,9.129H1685.987a9.156,9.156,0,0,1-9.13-9.129V189.61h47.457v.3a4.316,4.316,0,0,0,4.3,4.322h24.051a4.346,4.346,0,0,0,4.322-4.322v-.3Z" transform="translate(-1676.857 -189.61)" fill="#F6921E" fill-rule="evenodd"/></g><g transform="translate(36.337 14.045)">' 
55    +'<path d="M1716.973,155.25a20.368,20.368,0,0,0,6.17,14.94v.019l-4.483,4.484h-.019a26.5,26.5,0,0,1-8.018-19.443,30.165,30.165,0,0,1,.234-3.8,26.269,26.269,0,0,1,7.8-15.639l4.5,4.5a20.272,20.272,0,0,0-6.1,12.806Q1716.971,154.16,1716.973,155.25Z" transform="translate(-1710.624 -135.809)" fill="#F6921E" fill-rule="evenodd"/></g><g transform="translate(47.169 21.702)">' 
56    +'<path d="M1727.058,154.708q0,.475.036.933v.017a9.823,9.823,0,0,0,2.959,6.314h.017l-4.5,4.5h-.019a16.064,16.064,0,0,1-4.86-11.766v-.016c0-.207.009-.41.018-.612a17.724,17.724,0,0,1,.234-2.4,15.9,15.9,0,0,1,4.608-8.753l4.5,4.5a9.924,9.924,0,0,0-2.584,4.251,10.646,10.646,0,0,0-.412,3.014Z" transform="translate(-1720.69 -142.925)" fill="#F6921E" fill-rule="evenodd"/></g><g transform="translate(58.577 28.159)">' 
57    +'<path d="M1741.837,154.2a5.1,5.1,0,0,1-1.559,3.73,5.263,5.263,0,1,1-7.445-7.442,5.282,5.282,0,0,1,9,3.713Z" transform="translate(-1731.291 -148.925)" fill="#F6921E" fill-rule="evenodd"/></g><g transform="translate(71.096 21.702)">' 
58    +'<path d="M1747.462,142.961a17.08,17.08,0,0,1,2.69,3.5h.017a15.586,15.586,0,0,1,1.884,5.219,18.268,18.268,0,0,1,.234,3.014v.016a16.162,16.162,0,0,1-2.277,8.5,17.666,17.666,0,0,1-2.6,3.264l-4.484-4.5a11.872,11.872,0,0,0,.807-.933,9.819,9.819,0,0,0,2.207-6.331v-.016a10.7,10.7,0,0,0-.43-3.014,9.934,9.934,0,0,0-2.583-4.233l4.5-4.52C1747.438,142.937,1747.451,142.95,1747.462,142.961Z" transform="translate(-1742.924 -142.925)" fill="#F6921E" fill-rule="evenodd"/></g><g transform="translate(78.772 14.045)">' 
59    +'<path d="M1761.429,147.108a28.235,28.235,0,0,1,1.13,8.142,26.972,26.972,0,0,1-2.44,11.568,27.678,27.678,0,0,1-5.578,7.875l-4.484-4.5a21.335,21.335,0,0,0,3.928-5.326,20.612,20.612,0,0,0,2.243-9.614,21.265,21.265,0,0,0-1.417-7.837,20.913,20.913,0,0,0-4.753-7.1l4.484-4.5A26.727,26.727,0,0,1,1761.429,147.108Z" transform="translate(-1750.057 -135.809)" fill="#F6921E" fill-rule="evenodd"/></g></svg></i>'/> 
60<#break> 
61<#default> 
62<#assign iconeClass='<i class="iconeCategoria ${category.getDescriptionCurrentValue()}"></i>'/> 
63<#break> 
64</#switch> 
65<#assign subcategoria = '' /> 
66<#assign friendlyCategoryURL = friendlyURLEntryLocalService.getMainFriendlyURLEntry(20013, category.categoryId)> 
67<#assign friendlySubcategoryURL = ''> 
68<#else> 
69<#assign subcategoria = category.name /> 
70<#assign friendlySubcategoryURL = friendlyURLEntryLocalService.getMainFriendlyURLEntry(20013, category.categoryId)> 
71</#if> 
72</#list> 
73 
74<#assign isbn = '' /> 
75<#assign edicao = '' /> 
76<#assign paginas = '' /> 
77<#assign idioma = '' /> 
78<#assign lancamento = '' /> 
79<#assign editora = '' /> 
80<#assign formato = '' /> 
81<#assign autor = '' /> 
82<#assign ebook = '' /> 
83<#assign ebookval = '' /> 
84<#assign ebookcodigo = 'Indisponível' /> 
85 
86<#assign ciwils = serviceLocator.findService("com.liferay.commerce.inventory.service.CommerceInventoryWarehouseItemLocalService") /> 
87<#assign cibqls = serviceLocator.findService("com.liferay.commerce.inventory.service.CommerceInventoryBookedQuantityLocalService") /> 
88 
89<#if entries?has_content> 
90<#list entries as curCPCatalogEntry> 
91<#list cpContentHelper.getCategorizedCPDefinitionSpecificationOptionValues(curCPCatalogEntry.getCPDefinitionId(),43620166) as specs> 
92<#switch specs.CPSpecificationOptionId> 
93<#case 43604150 > 
94<#assign isbn = specs.getValueCurrentValue() /> 
95<#break> 
96<#case 43619968> 
97<#assign edicao = specs.getValueCurrentValue() /> 
98<#break> 
99<#case 43604151 > 
100<#assign paginas = specs.getValueCurrentValue() /> 
101<#break> 
102<#case 43594741 > 
103<#assign idioma = specs.getValueCurrentValue() /> 
104<#break> 
105<#case 43604148 > 
106<#assign lancamento = specs.getValueCurrentValue() /> 
107<#break> 
108<#case 43604149 > 
109<#assign editora = specs.getValueCurrentValue() /> 
110<#break> 
111<#case 43619969 > 
112<#assign formato = specs.getValueCurrentValue() /> 
113<#break> 
114<#case 43619971 > 
115<#assign autor = specs.getValueCurrentValue() /> 
116<#break> 
117<#case 54709090 > 
118<#case 53858017 > 
119<#assign ebook = specs.getValueCurrentValue() /> 
120<#break> 
121 
122<#assign ebookval = ebook?eval /> 
123 
124<#if ebookval?has_content > 
125<#assign ebookcodigo = ebookval[0].codigo /> 
126</#if> 
127<#break> 
128<#default> 
129</#switch> 
130</#list> 
131</#list> 
132</#if> 
133 
134<script> 
135    $(() => { 
136 
137        sendViewItem(["${cPCatalogEntry.getCPDefinitionId()}"]) 
138 
139        const insereTitulosCarrosseis = function() { 
140            let nomeAutorLivro = $('.linhaNomeAutor').html().trim(); 
141            let nomeAutoresLivro = []; 
142 
143            if (nomeAutorLivro.includes(',')) { 
144                const autores = nomeAutorLivro.split(', '); 
145                autores.forEach((item) => { 
146                    nomeAutoresLivro.push(item.trim()) 
147                }); 
148            } else { 
149                nomeAutoresLivro.push(nomeAutorLivro); 
150
151 
152            var tituloSlider = setInterval(function(){ 
153                if ($('.slider4').length >= 1) { 
154                    //remove titulos dos carrosseis, para inseri-los mais tarde 
155                    $('.slider4').prev().remove(); 
156 
157                    $('.slider4').each(function(index, e) { 
158                        let nomeDoAutor = ''; 
159                        let primeiroLivro_autor = $(e).find('.autorEspecialCarrossel4')[0]; 
160                        if (primeiroLivro_autor) { 
161                            nomeDoAutor = $(primeiroLivro_autor).html().trim(); 
162 
163                            if (nomeDoAutor.includes(',')) { 
164                                let nomeDoAutor_split = nomeDoAutor.split(', '); 
165 
166                                for (let i = 0; i < nomeDoAutor_split.length; i++) { 
167                                    for (let j = 0; j < nomeAutoresLivro.length; j++) { 
168                                        if (nomeDoAutor_split[i] === nomeAutoresLivro[j]) { 
169                                            nomeDoAutor = nomeDoAutor_split[i]; 
170                                            break; 
171
172
173
174
175                        } else { 
176                            return; 
177
178 
179                        // verifica se o carrossel contem livros que sao todos do mesmo autor 
180                        $(e).find('.autorEspecialCarrossel4').each(function(index2, e2) { 
181                            if (!$(e2).html().includes(nomeDoAutor)) { 
182                                nomeDoAutor = ''; 
183                                return; 
184
185                        }); 
186 
187                        // caso haja mais de um autor, verifica se todos os livros do carrossel sao dos autores dos livros 
188                        if (nomeAutoresLivro.length > 1 && $(e).find('.autorEspecialCarrossel4').length >= 1) { 
189                            nomeDoAutor = 'maisDeUmAutor'; 
190                            $(e).find('.autorEspecialCarrossel4').each(function(index3, e3) { 
191                                let contemAoMenosUmAutor = false; 
192                                const textoAutor = $(e3).html(); 
193 
194                                for (let k = 0; k < nomeAutoresLivro.length; k++) { 
195                                    if (textoAutor.includes(nomeAutorLivro[k])) { 
196                                        contemAoMenosUmAutor = true; 
197                                        break; 
198
199
200 
201                                if (!contemAoMenosUmAutor) { 
202 
203                                    nomeDoAutor = ''; 
204                                    return; 
205
206                            }); 
207 
208                            if (nomeDoAutor !== '') { 
209                                // verifica se nao existe um autor em comum entre todos os livros 
210 
211                                let arrayQuantidadesAutorLivro = Array(nomeAutoresLivro.length); 
212 
213                                for (let j = 0; j < arrayQuantidadesAutorLivro.length; j++) { 
214                                    arrayQuantidadesAutorLivro[j] = {quantidade: 0, nome: nomeAutoresLivro[j]}; 
215
216 
217                                let haLivrosNaoEscritosPelosAutores = false; 
218 
219                                $(e).find('.autorEspecialCarrossel4').each(function(index4, e4) { 
220                                    const textoAutor = $(e4).html(); 
221                                    let autoresAusentes = 0; 
222 
223                                    for (let k = 0; k < nomeAutoresLivro.length; k++) { 
224                                        if (textoAutor.includes(nomeAutoresLivro[k])) { 
225                                            arrayQuantidadesAutorLivro[k].quantidade++; 
226                                        } else { 
227                                            autoresAusentes++; 
228
229
230 
231                                    // se houver ao menos um livro que nao foi escrito por nenhum autor do livro atual, entao nomeDoAutor = '' 
232                                    if (autoresAusentes === nomeAutoresLivro.length) { 
233                                        nomeDoAutor = ''; 
234                                        haLivrosNaoEscritosPelosAutores = true; 
235
236                                }); 
237 
238                                arrayQuantidadesAutorLivro = arrayQuantidadesAutorLivro.sort((a, b) => {return parseFloat(b.quantidade) - parseFloat(a.quantidade)}); 
239 
240                                if (!haLivrosNaoEscritosPelosAutores && arrayQuantidadesAutorLivro[1].quantidade <= 0) { 
241                                    nomeDoAutor = arrayQuantidadesAutorLivro[0].nome; 
242
243
244
245 
246                        if (nomeDoAutor === '') { 
247                            $(`<div class="background-right titulo-slider4"><a>Livros que você pode gostar&nbsp;</a><i class="fas fa-circle circulo-laranja" aria-hidden="true"></i></div>`) 
248                                .insertBefore($(e)); 
249                            if ($('.slider4').length > 1 && !$('.titulo-slider4').html().includes("Mais")) { 
250                                $('.slider4:not(.slider4semextracard)').parent().remove(); 
251
252                        } else { 
253                            let textoTitulo = "Mais Livros de " + nomeDoAutor; 
254                            if (nomeDoAutor === "maisDeUmAutor") { 
255                                textoTitulo = "Mais livros desses autores"; 
256
257 
258                            let tituloDinamico = `<div class="background-left titulo-slider4" data-nome-autor="` + nomeDoAutor + `"><i class="fas fa-circle circulo-laranja" aria-hidden="true"></i><a>&nbsp;`+ textoTitulo +`</a></div>`; 
259                            $(tituloDinamico).insertBefore($(e)); 
260
261                    }); 
262                    clearInterval(tituloSlider) 
263
264            }, 50); 
265
266 
267        let autor; 
268        try { 
269            const raw = '${autor?js_string}'; 
270            autor = JSON.parse(raw); 
271        } catch (err) { 
272            console.error("Não foi possível carregar o autor", err); 
273
274 
275        if (typeof autor !== 'undefined') { 
276            if (autor.length === 1) { 
277 
278                $('<img src="' + autor[0].foto + '" onerror=\'this.src="https://www.editorasenacsp.com.br/Editora/CONTENT/base/imagens/autores/indisponivel_autor.png";\' />').insertBefore('.nomeAutor'); 
279 
280                $('.fotoAutorContainer > .nomeAutor').html('<div class="linhaNomeAutor">' + autor[0].nomeAutor + '</div>') 
281 
282                var settings = { 
283                    "url": "${themeDisplay.getURLPortal()}/sync-dxp/autor/find/" + autor[0].idAutor, 
284                    "method": "GET", 
285                    "timeout": 0, 
286                    "headers": { 
287                        'Access-Control-Allow-Origin': '*' 
288
289                }; 
290 
291                $.ajax(settings).done((response) => { 
292                    $('.nomeAutor').append('<pre class="biografiaAutor">' + response.biografia + '</pre><div class="linhaDetalheInferiorAutor">${iconeClass}</i></div>') 
293                }); 
294            } else { 
295                $('.nomeAutor').addClass('nomeAutorMultiplos'); 
296                $('.fotoAutorContainer').addClass('fotoAutorContainerMultiplos'); 
297                $('<ul class="listaAutores"></ul>').insertBefore('.nomeAutor'); 
298                $('<div class="btnVoltarAutores" style="display: none;"><i class="fas fa-long-arrow-alt-left"></i><span>Voltar</span></div>').insertAfter('.listaAutores'); 
299 
300                for (var i = 0; i < autor.length; i++) { 
301                    $('.listaAutores').append('<li data-id=' + autor[i].idAutor + ' data-foto=' + autor[i].foto + '>' + autor[i].nomeAutor + '</li>'); 
302
303 
304                $('.listaAutores li').on('click', function() { 
305                    $('.listaAutores').css('display', 'none'); 
306                    $('.btnVoltarAutores').css('display', 'flex'); 
307                    var thisLi = $(this); 
308                    var settings = { 
309                        "url": "${themeDisplay.getURLPortal()}/sync-dxp/autor/find/" + thisLi.attr('data-id'), 
310                        "method": "GET", 
311                        "timeout": 0, 
312                        "headers": { 
313                            'Access-Control-Allow-Origin': '*' 
314
315                    }; 
316 
317                    $.ajax(settings).done((response) => { 
318                        $('<img src="' + thisLi.attr('data-foto') + '" onerror=\'this.src="https://www.editorasenacsp.com.br/Editora/CONTENT/base/imagens/autores/indisponivel_autor.png";\' />').insertBefore('.nomeAutor'); 
319 
320                        $('.fotoAutorContainer > .nomeAutor').html('<div class="linhaNomeAutor">' + response.nome + '</div>') 
321 
322                        $('.nomeAutor').append('<pre class="biografiaAutor">' + response.biografia + '</pre><div class="linhaDetalheInferiorAutor">${iconeClass}</i></div>') 
323                    }); 
324                }); 
325 
326                $('.btnVoltarAutores').on('click', function() { 
327                    $(this).css('display', 'none'); 
328                    $('.nomeAutor').html(''); 
329                    $('.fotoAutorContainer img').remove(); 
330                    $('.listaAutores').css('display', 'block'); 
331                }); 
332
333
334 
335        insereTitulosCarrosseis(); 
336 
337        $('.fotoAutorContainer > ul > li').on('click', () => { 
338            $('.nomeAutor').css('display', 'block'); 
339            $('.btnVoltarAutores').css('visibility', 'visible'); 
340            var idAutor = $(this).attr('data-id'); 
341            $('.fotoAutorContainer > ul').css('display', 'none'); 
342 
343            var settings = { 
344                "url": "${themeDisplay.getURLPortal()}/sync-dxp/autor/find/" + idAutor, 
345                "method": "GET", 
346                "timeout": 0, 
347                "headers": { 
348                    'Access-Control-Allow-Origin': '*' 
349
350            }; 
351 
352            $.ajax(settings).done((response) => { 
353                //Para as chamadas nas versões mobile 
354                $('.lineAccorionDescricao > div > ul > li:eq(1)').addClass('abaActiveAccordion'); 
355                $('.lineAccorionDescricao > div > ul > li:eq(1) > label').attr('style', 'background: #F8F8F8 !important;color:#454F63 !important'); 
356                $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo').css('display', 'block'); 
357                $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo ~ i').css('display', 'block'); 
358 
359                // Desktop e Mobile 
360                $('<img src="${themeDisplay.getURLPortal()}/Editora/CONTENT/base/imagens/autores/' + response.id + '.jpg " />').insertBefore('.nomeAutor'); 
361 
362                $('.fotoAutorContainer > .nomeAutor').html('<div class="linhaNomeAutor">' + response.nome + '</div>'); 
363 
364                $('.nomeAutor').append('<pre class="biografiaAutor">' + response.biografia + '</pre><div class="linhaDetalheInferiorAutor">${iconeClass}</i></div>'); 
365            }); 
366        }) 
367 
368        $('.btnVoltarAutores').on('click', () => { 
369            //Mobile 
370            setTimeout(() => { 
371                $('.lineAccorionDescricao > div > ul > li:eq(1)').addClass('abaActiveAccordion'); 
372                $('.lineAccorionDescricao > div > ul > li:eq(1) > label').attr('style', 'background: #F8F8F8 !important;color:#454F63 !important'); 
373                $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo').css('display', 'block'); 
374                $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo ~ i').css('display', 'block'); 
375            }, 500); 
376 
377            //Mobile e Desktop 
378            $(this).css('visibility', 'hidden'); 
379            $('.fotoAutorContainer > ul').css('display', 'block'); 
380            $('.nomeAutor').css('display', 'none'); 
381            $('.btnVoltarAutores ~ img').remove(); 
382        }); 
383 
384        let firstImage = $('.detalheContainerImg img').first(); 
385        firstImage.addClass('selectedImage'); 
386        $('.img-zoom-container .img-responsive').attr('src', firstImage.attr('src')); 
387 
388    }); 
389 
390    $( document ).ready(function() { 
391        carregaParcelas() 
392    }); 
393 
394    function carregaParcelas(){ 
395        let price = $(".informacoesContainer .price-value").first().text(); 
396        let priceParsed =  parseFloat(price.replaceAll("R$ ","").replaceAll(",",".")); 
397        var parcela = 1; 
398 
399        if( priceParsed > 100 ){ 
400            if( priceParsed < 150 ){ 
401                parcela = 2; 
402
403            else{ 
404                parcela = 3; 
405
406
407 
408        $(".quantidadeParcelasCartao").text(parcela + "X sem juros"); 
409
410</script> 
411 
412<script> 
413    let menu = document.querySelector('ol'); 
414    menu.removeChild(menu.lastElementChild); 
415 
416    var jCategory = "${categoria}"; 
417    var jSubCategory = "${subcategoria}"; 
418 
419    var spanCategory = document.createElement("span"); 
420    spanCategory.setAttribute('class', "breadcrumb-text-truncate"); 
421    spanCategory.textContent = jCategory; 
422 
423    var ancora = document.createElement("a"); 
424    ancora.setAttribute('href', "${themeDisplay.getURLPortal() + '/categoria/' + friendlyCategoryURL.getUrlTitle(locale)}"); 
425 
426    ancora.setAttribute('class', "breadcrumb-link"); 
427    ancora.appendChild(spanCategory); 
428    var node = document.createElement('li'); 
429    node.setAttribute("class", "breadcrumb-item"); 
430    node.appendChild(ancora); 
431    document.querySelector('ol').appendChild(node); 
432 
433    <#if subcategoria != ''> 
434        var spanSubCategory = document.createElement("span"); 
435    spanSubCategory.setAttribute('class', "breadcrumb-text-truncate"); 
436    spanSubCategory.textContent = jSubCategory; 
437 
438    var a = document.createElement("a"); 
439    a.setAttribute('href', "${themeDisplay.getURLPortal() + '/categoria/' + friendlySubcategoryURL.getUrlTitle(locale)}"); 
440    a.setAttribute('class', "breadcrumb-link"); 
441    a.appendChild(spanSubCategory); 
442 
443    var secondNode = document.createElement('li'); 
444    secondNode.setAttribute("class", "breadcrumb-item"); 
445    secondNode.appendChild(a); 
446    document.querySelector('ol').appendChild(secondNode); 
447    </#if> 
448 
449    var bookName = document.createElement('li'); 
450    bookName.setAttribute("class", "breadcrumb-item"); 
451    bookName.textContent = "${entries[0].name?truncate(64,'...')?replace('"', '\\"')}"; 
452    document.querySelector('ol').appendChild(bookName); 
453</script> 
454 
455<#if entries?has_content> 
456<#list entries as curCPCatalogEntry> 
457<#assign cpMedia = cpContentHelper.getImages(curCPCatalogEntry.getCPDefinitionId(), themeDisplay) /> 
458<#assign defaultImage = "/documents/d/editora-senac/liferay_logo" /> 
459<#assign productImage = "" /> 
460 
461<#list cpMedia as media> 
462<#if media.getURL()?has_content && media.getTitle()?? && media.getTitle()?contains("small")> 
463<#assign productImage = media.getURL() /> 
464<#break> 
465</#if> 
466</#list> 
467 
468<#if !productImage?has_content> 
469<#list cpMedia as media> 
470<#if media.getURL()?has_content> 
471<#assign productImage = media.getURL() /> 
472<#break> 
473</#if> 
474</#list> 
475</#if> 
476 
477<div class="container imgDetalheProdutoContainer"> 
478    <div class="row detalheProdutolinha1"> 
479        <div class="col-1" style="padding-top: 16px;"> 
480            <div class="detalheContainerImg"> 
481                <div style="overflow-y: auto;display: flex;flex-direction: column;flex: 1;margin-bottom: 10px" class="imageList"> 
482                    <img class="center-block img-responsive" 
483                         src="${productImage}" 
484                         onerror="this.onerror=null; this.src='${defaultImage}';" /> 
485                </div> 
486            </div> 
487        </div> 
488 
489        <div class="col-11 imgProdutoPrincipal"> 
490            <div class="img-zoom-container"> 
491                <img class="center-block img-responsive" 
492                     src="${productImage}" 
493                     onerror="this.onerror=null; this.src='${defaultImage}';" /> 
494            </div> 
495 
496 
497            <button class="btnShareMob"> 
498                <i class="fas fa-share-alt"></i><span>Indique</span> 
499            </button> 
500 
501            <div class="informacoesContainer desktop-only"> 
502 
503                <div class="row w-25 p-3"> 
504                    <div class="col-1 offset-10 indiqueContainer"> 
505                        <i class="fas fa-share-alt"></i> 
506                        <span>Indicar</span> 
507                        <@liferay_social_bookmarks["bookmarks"] 
508                        className=curCPCatalogEntry.className 
509                        classPK=cpContentHelper.getDefaultCPInstance(request).getCPInstanceId() 
510                        displayStyle="menu" 
511                        title=curCPCatalogEntry.name 
512                        types="facebook,twitter" 
513                        url=themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() 
514                        /> 
515                    </div> 
516                </div> 
517 
518                <#assign listaNome = curCPCatalogEntry.name?split(":") /> 
519                <p class="tituloDetalheLivro">${listaNome[0] + (listaNome?size gt 1)?then(":", "")}</p> 
520                <#if listaNome?size gt 1> 
521                <span class="subtituloLivro">${listaNome[1..]?join(":")}</span> 
522            </#if> 
523            <p class="autorDetalheLivro" style="margin-top: 5px !important;"> 
524            </p> 
525            <p class="descricaoCurtaDetalheLivro desktop-only"> 
526                ${curCPCatalogEntry.shortDescription} 
527                <br> 
528                <#if !productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() ) > 
529                <span id="livroIndisponivelSpan">Livro Indisponível</span> 
530            </#if> 
531            </p> 
532            <div class="price-buy-wrapper-desktop"> 
533                <div class="price-wrapper-desktop"> 
534                    <#if curCPCatalogEntry.CPSkus?has_content> 
535                    <@liferay_commerce_ui["price"] 
536                    CPCatalogEntry=curCPCatalogEntry 
537                    /> 
538                </#if> 
539            </div> 
540            <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() ) > 
541            <div class="addToCartCustom desktop-only"> 
542                <#assign 
543                PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] 
544                id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + curCPCatalogEntry.CPSkus[0].getSku() 
545                /> 
546                <@liferay_commerce_ui["add-to-cart"] 
547                CPInstanceId=curCPCatalogEntry.CPSkus[0].getCPInstanceId() 
548                id=id 
549                /> 
550            </div> 
551            <#else> 
552            <button id="livroIndisponivelButton"> 
553                Livro Indisponível 
554            </button> 
555            <button id="registroDeInteresseButton"> 
556                Registrar Interesse 
557            </button> 
558        </#if> 
559    </div> 
560</div> 
561</div> 
562 
563<div class="col-1 offset-10 indiqueContainer mobile-only"> 
564    <i class="fas fa-share-alt"></i> 
565    <span>Indicar</span> 
566    <@liferay_social_bookmarks["bookmarks"] 
567    className=curCPCatalogEntry.className 
568    classPK=cpContentHelper.getDefaultCPInstance(request).getCPInstanceId() 
569    displayStyle="menu" 
570    title=curCPCatalogEntry.name 
571    types="facebook,twitter" 
572    url=themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() 
573    /> 
574</div> 
575 
576<div class="col-12 informacoesContainer mobile-only"> 
577    <div class="informacoesContainer"> 
578 
579        <div class="row w-25 p-3"> 
580            <div class="col-1 offset-10 indiqueContainer"> 
581                <i class="fas fa-share-alt"></i> 
582                <span>Indicar</span> 
583                <@liferay_social_bookmarks["bookmarks"] 
584                className=curCPCatalogEntry.className 
585                classPK=cpContentHelper.getDefaultCPInstance(request).getCPInstanceId() 
586                displayStyle="menu" 
587                title=curCPCatalogEntry.name 
588                types="facebook,twitter" 
589                url=themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() 
590                /> 
591            </div> 
592        </div> 
593 
594        <#assign listaNome = curCPCatalogEntry.name?split(":") /> 
595        <p class="tituloDetalheLivro">${listaNome[0] + (listaNome?size gt 1)?then(":", "")}</p> 
596        <#if listaNome?size gt 1> 
597        <span class="subtituloLivro">${listaNome[1..]?join(":")}</span> 
598    </#if> 
599    <p class="autorDetalheLivro" style="margin-top: 5px !important;"> 
600    </p> 
601    <p class="descricaoCurtaDetalheLivro desktop-only">${curCPCatalogEntry.shortDescription} 
602    </p> 
603 
604    <#if curCPCatalogEntry.CPSkus?has_content> 
605    <div class="price-wrapper"> 
606        <@liferay_commerce_ui["price"] 
607        CPCatalogEntry=curCPCatalogEntry 
608        /> 
609    </div> 
610</#if> 
611 
612<#if (productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() )) == false> 
613<div class="addToCartCustom desktop-only"> 
614    <#assign 
615    PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] 
616    id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + curCPCatalogEntry.CPSkus[0].getSku() 
617    /> 
618    <@liferay_commerce_ui["add-to-cart"] 
619    CPInstanceId=curCPCatalogEntry.CPSkus[0].getCPInstanceId() 
620    id=id 
621    /> 
622</div> 
623<#else> 
624<button id="livroIndisponivelButton"> 
625    Livro Indisponível 
626</button> 
627</#if> 
628</div> 
629</div> 
630</div> 
631</div> 
632 
633<#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() )> 
634<div class="mobile-only buy-mobile-wrapper"> 
635    <div class="d-flex"> 
636        <div class="preco"> 
637            <i class="icon-senac-sacola sacola-header-icon"></i> 
638            <span class="currency">R$</span> 
639            <div class="precoMobile"></div> 
640        </div> 
641        <div class="btn-comprar-wrapper"> 
642            <#assign 
643            PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] 
644            id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + curCPCatalogEntry.CPSkus[0].getSku() 
645            /> 
646            <@liferay_commerce_ui["add-to-cart"] 
647            CPInstanceId=curCPCatalogEntry.CPSkus[0].getCPInstanceId() 
648            id=id 
649            /> 
650        </div> 
651    </div> 
652</div> 
653<#else> 
654<div class="mobile-only buy-mobile-wrapper"> 
655    <button id="livroIndisponivelButton"> 
656        Livro Indisponível 
657    </button> 
658</div> 
659</#if> 
660</#list> 
661</#if> 
662 
663<div class="estoque container d-flex align-items-center justify-content-center" style="padding: 40px 20px 50px 0;"> 
664    <p class="estoque-color-transparent">Quantidade em <br>estoque: 
665        <span class="quantity"> 
666            <#list entries as curCPCatalogEntry> 
667                <#list curCPCatalogEntry.getCPSkus() as sku> 
668                <#if sku.isPublished()> 
669                    ${ciwils.getStockQuantity(themeDisplay.getCompanyId(), sku.getSku()) - cibqls.getCommerceBookedQuantity(themeDisplay.getCompanyId(), sku.getSku())} 
670                <#else> 
671                    Sem Estoque 
672                </#if> 
673    </#list> 
674</#list> 
675</span> 
676</p> 
677</div> 
678<div class="container d-flex-desktop pagamentoCepWrapper desktop-only"> 
679    <div class="row"> 
680        <div class="freteContainer container"> 
681            <div class="ebooksContainer"> 
682                <div style="display: flex; width:300px; position: relative;"> 
683                    <i class="fa fa-file" style="font-size: 20px;margin-right: -35px;margin-top: 15px;z-index: 1;"></i> 
684                    <div class="ebooksTitleContainer"> 
685                        <span>Ebooks</span> 
686                    </div> 
687                    <div class="ebooksContentContainer"></div> 
688                    <i class="ebooksChevron fa fa-chevron-right" style="display: block;position: absolute;right:50px;top:0;font-size: 20px;margin-top: 15px;z-index: 1; pointer-events: none"></i> 
689                </div> 
690            </div> 
691            <div class="formasPagamentoContainer"> 
692                <div class="formasPagamentoTitle"> 
693                    <i class="fas fa-credit-card" style="font-size: 20px; margin-right: 10px;"></i> 
694                    <span class="tituloBtnPag">Formas de Pagamento</span> 
695                </div> 
696                <div class="opcoesPagamentoDetalheLivro"> 
697 
698                    <ul> 
699                        <li> 
700                            <i class="fas fa-barcode"></i> 
701                            <span class="formaPagamentoItem">Boleto Bancário</span> 
702                            <span class="valorFormaPagamento"></span> 
703                            <div class="descricaoFormaPagamento">Parcela única, à vista</div> 
704                        </li> 
705                        <li> 
706                            <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 20 20" fill="none"> 
707                                <path d="M15.5976 15.2988C15.2119 15.3002 14.8298 15.2251 14.4732 15.078C14.1167 14.9308 13.7929 14.7145 13.5205 14.4414L10.5201 11.4392C10.414 11.3377 10.2728 11.2811 10.126 11.2811C9.97918 11.2811 9.838 11.3377 9.73188 11.4392L6.72139 14.4497C6.44914 14.7231 6.1254 14.9399 5.76889 15.0875C5.41237 15.235 5.03014 15.3105 4.64428 15.3095H4.05688L7.8588 19.1114C8.42901 19.6804 9.20166 20 10.0072 20C10.8127 20 11.5854 19.6804 12.1556 19.1114L15.9651 15.3013L15.5976 15.2988Z" fill="#78849E"/> 
708                                <path d="M4.64491 4.68888C5.03078 4.68785 5.41302 4.76331 5.76954 4.9109C6.12606 5.05849 6.4498 5.27528 6.72203 5.54874L9.73251 8.55986C9.83715 8.66418 9.97888 8.72276 10.1266 8.72276C10.2744 8.72276 10.4161 8.66418 10.5208 8.55986L13.5205 5.56015C13.7925 5.28635 14.1162 5.06929 14.4727 4.92157C14.8293 4.77385 15.2116 4.69842 15.5976 4.69965H15.9588L12.1493 0.89013C11.8672 0.607931 11.5322 0.384072 11.1636 0.231341C10.795 0.0786106 10.3999 0 10.0009 0C9.60185 0 9.20674 0.0786106 8.83811 0.231341C8.46948 0.384072 8.13456 0.607931 7.85246 0.89013L4.05688 4.68888H4.64491Z" fill="#78849E"/> 
709                                <path d="M19.1099 7.85144L16.8078 5.54938C16.7559 5.5706 16.7004 5.58179 16.6443 5.58233H15.5975C15.0528 5.5837 14.5306 5.80003 14.1446 6.1843L11.1449 9.18211C10.8747 9.45177 10.5086 9.60323 10.1269 9.60323C9.74519 9.60323 9.37908 9.45177 9.10893 9.18211L6.09781 6.1729C5.71184 5.78839 5.18966 5.57183 4.64485 5.57029H3.3598C3.30684 5.5691 3.25451 5.55859 3.20519 5.53925L0.888557 7.85144C0.319559 8.42165 0 9.1943 0 9.99984C0 10.8054 0.319559 11.578 0.888557 12.1482L3.20012 14.4598C3.24933 14.4401 3.30173 14.4296 3.35473 14.4288H4.64485C5.18965 14.4272 5.7118 14.2106 6.09781 13.8262L9.1083 10.8157C9.65261 10.272 10.6012 10.272 11.1449 10.8157L14.1446 13.8147C14.5306 14.199 15.0528 14.4154 15.5975 14.4167H16.6443C16.7004 14.4171 16.7559 14.4283 16.8078 14.4497L19.1099 12.1476C19.3921 11.8655 19.6159 11.5306 19.7687 11.162C19.9214 10.7933 20 10.3982 20 9.99921C20 9.60019 19.9214 9.20509 19.7687 8.83646C19.6159 8.46783 19.3921 8.1329 19.1099 7.85081" fill="#78849E"/> 
710                            </svg>&nbsp; 
711                            <span class="formaPagamentoItem">Pix</span> 
712                            <span class="valorFormaPagamento"></span> 
713                            <div class="descricaoFormaPagamento">Parcela única, à vista</div> 
714                        </li> 
715                        <li> 
716                            <i class="far fa-credit-card"></i> 
717                            <span class="formaPagamentoItem">Cartão de Crédito</span> 
718                            <span class="valorFormaPagamento valorFormaPagamentoParcelado"></span> 
719                            <div class="descricaoFormaPagamento"> 
720                                <span>Parcelado em até </span> 
721                                <span style="font-weight:600;" class="quantidadeParcelasCartao"></span> 
722                                <br> 
723                                com cartão 
724                                <span style="font-weight:600;">Mastercard</span>, 
725                                <span style="font-weight:600;"> Visa</span> 
726                                ou 
727                                <span style="font-weight:600;">Elo.</span> 
728                            </div> 
729                        </li> 
730                    </ul> 
731                </div> 
732            </div> 
733            <div class="calculeCepContainer"> 
734                <label class="labelFrete"><i class="fas fa-truck" aria-hidden="true"></i>&nbsp;Calcule o frete</label> 
735                <div style="position: relative"> 
736                    <!-- <i class="fa fa-chevron-right freteIcon" aria-hidden="true"></i> --> 
737                    <input type="text" class="form-control" placeholder="Digite seu CEP" id="freteDetalheLivro" maxlength="9"> 
738                </div> 
739                <label class="consulteCEP"> 
740                    <a href="https://buscacepinter.correios.com.br/app/endereco/index.php" target="_blank">Não sabe seu CEP? Consulte aqui</a> 
741                </label> 
742                <div class="calcFretePrazoContainer"> 
743                    <div class="labelsFretes"> 
744                        <div>Sedex:</div> 
745                        <div>Valor:</div> 
746                    </div> 
747                    <div class="valuesFretes"> 
748                        <div class="label-container-frete"></div> 
749                        <div class="valor-container-frete"></div> 
750                    </div> 
751                </div> 
752            </div> 
753        </div> 
754        <div class=" container informacoesContainerMob"> 
755            <div class="detalheLivroMob"> 
756                <#if entries?has_content> 
757                <#list entries as curCPCatalogEntry> 
758                <#assign listaNome = curCPCatalogEntry.name?split(":") /> 
759                <p class="tituloDetalheLivro">${listaNome[0] + (listaNome?size gt 1)?then(":", "")}</p> 
760                <#if listaNome?size gt 1> 
761                <span class="subtituloLivro">${listaNome[1..]?join(":")}</span> 
762            </#if> 
763            <p class="autorDetalheLivro"></p> 
764            <#if curCPCatalogEntry.CPSkus?has_content> 
765            <div class="row"> 
766                <div class="containerPrecoMob"> 
767                    <div class="lockTitulo"> 
768                        <i class="fa fa-lock"></i> 
769                        <div>Loja 100% segura</div> 
770                    </div> 
771                    <@liferay_commerce_ui["price"] 
772                    CPCatalogEntry=curCPCatalogEntry 
773                    /> 
774                </div> 
775            </div> 
776        </#if> 
777    </#list> 
778</#if> 
779<div class="row"> 
780    <div class="col-6 offset-6"></div> 
781</div> 
782</div> 
783 
784<div class="row"> 
785    <div class="col-11 offset-1 freteInputMob"> 
786        <label class="labelFrete"> 
787            <i class="fas fa-truck"></i>&nbsp;Calcule o frete 
788        </label> 
789        <input type="text" class="form-control" placeholder="Digite seu CEP " id="freteDetalheLivroMob"> 
790        <p class="consulteCEP"> 
791            <a href="https://buscacepinter.correios.com.br/app/endereco/index.php" target="_blank"> 
792                Não sabe seu CEP? Consulte aqui 
793            </a> 
794        </p> 
795        <div class="calcFretePrazoContainer"> 
796            <div class="labelsFretesMob"> 
797                <div>Sedex:</div> 
798                <div>Valor:</div> 
799            </div> 
800            <div class="valuesFretes valuesFretesMob"> 
801                <div class="label-container-frete"></div> 
802                <div class="valor-container-frete"></div> 
803            </div> 
804        </div> 
805    </div> 
806</div> 
807 
808<div class="row"> 
809    <div class="col-11 offset-1"> 
810        <i class="fas fa-credit-card" style="font-size: 20px; margin-right: 10px;"></i> 
811        <span class="tituloBtnPag">Formas de Pagamento</span> 
812        <div class="opcoesPagamentoDetalheLivro"> 
813            <ul> 
814                <!--<li> 
815                    <i class="fas fa-barcode"></i> 
816                    <span class="formaPagamentoItem">Boleto Bancário</span> 
817                    <span class="valorFormaPagamento"></span> 
818                    <div class="descricaoFormaPagamento">Parcela única, à vista</div> 
819                </li>--> 
820                <li> 
821                    <i class="far fa-credit-card"></i> 
822                    <span class="formaPagamentoItem">Cartão de Crédito</span> 
823                    <span class="valorFormaPagamento valorFormaPagamentoParcelado"></span>' 
824                    <div class="descricaoFormaPagamento"> 
825                        Parcelamento em até<strong> 3 vezes sem </br>juros</strong> com 
826                        <strong>Mastercard</strong>, <strong>Visa</strong> ou <strong>Elo.</strong> 
827                    </div> 
828                </li> 
829            </ul> 
830        </div> 
831    </div> 
832</div> 
833 
834<div class="row lineAccorionDescricao"> 
835    <div class="col-12"> 
836        <ul id="menutree"> 
837            <li class="collapse"> 
838                <input type="checkbox" id="descricao"> 
839                <label for="descricao" class="acDescricao"> 
840                    <i class="fa fa-book-open"></i> 
841                    <span style="font-weight:bold !important;margin-left:10px;">DESCRIÇÃO</span> 
842                </label> 
843                <div class="linhaAccordionAtivo"></div> 
844                <i class="fas fa-play" aria-hidden="true"></i> 
845                <ul> 
846                    <li class="acDescricaoLi"> 
847                        <#if entries?has_content> 
848                        <#list entries as curCPCatalogEntry> 
849                        <pre>${curCPCatalogEntry.description?truncate(450)}</pre> 
850                    </#list> 
851                </#if> 
852                <div class="linhaFichaContainerMob"></div> 
853                ${iconeClass} 
854                <div class="fichaContainerMob"> 
855                    <p><span class="itemFichaTecnicaMob">Ficha Técnica:</span></p> 
856                    <p><span class="itemFichaTecnicaMob">ISBN:</span>&nbsp;${isbn}</p> 
857                    <p><span class="itemFichaTecnicaMob">Edição:</span>&nbsp;${edicao}</p> 
858                    <p><span class="itemFichaTecnicaMob">Área:</span>&nbsp;<span>${categoria!''}</span></p> 
859                    <p><span class="itemFichaTecnicaMob">Número de páginas:</span>&nbsp;${paginas}</p> 
860                    <p><span class="itemFichaTecnicaMob">Idioma:</span>&nbsp;${idioma}</p> 
861                    <p><span class="itemFichaTecnicaMob">Data de lançamento:</span>&nbsp;${lancamento}</p> 
862                    <p><span class="itemFichaTecnicaMob">Tamanho:</span>&nbsp;${formato}</p> 
863                    <p><span class="itemFichaTecnicaMob">Editora(s):</span>&nbsp;${editora}</p> 
864                </div> 
865                <div class="linhaFichaContainerMob"></div> 
866            </li> 
867        </ul> 
868        </li> 
869        <li class="collapse"> 
870            <input type="checkbox" id="autores"> 
871            <label for="autores" class="acDescricao"> 
872                <i class="fas fa-user-edit"></i> 
873                <span style="font-weight:bold !important;margin-left:10px;">QUEM ESCREVEU?</span> 
874            </label> 
875            <div class="linhaAccordionAtivo"></div> 
876            <i class="fas fa-play" aria-hidden="true"></i> 
877            <ul> 
878                <li class="acDescricaoLi"> 
879                    <div class="fotoAutorContainer"> 
880                        <div class="nomeAutor"></div> 
881                    </div> 
882                </li> 
883            </ul> 
884        </li> 
885        </ul> 
886    </div> 
887</div> 
888</div> 
889</div> 
890</div> 
891 
892<div class="container mobile-only pagamentoCepWrapper"> 
893    <div class="ebooksContainer" style="margin-top: 65px;"> 
894        <div style="display: flex; width:310px; position: relative;"> 
895            <i class="fa fa-file" style="font-size: 20px;margin-right: -35px;margin-top: 15px;z-index: 1;"></i> 
896            <div class="ebooksTitleContainer"> 
897                <span>Ebooks</span> 
898            </div> 
899            <div class="ebooksContentContainer"></div> 
900            <i class="ebooksChevron fa fa-chevron-right" style="display: block;position: absolute;right:50px;top:0;font-size: 20px;margin-top: 15px;z-index: 1; pointer-events: none"></i> 
901        </div> 
902    </div> 
903 
904    <div class="calculeCepContainer"> 
905        <label class="labelFrete"><i class="fas fa-truck" aria-hidden="true"></i>&nbsp;Calcule o frete</label> 
906        <div style="position: relative; width: 299px;"> 
907            <!-- <i class="fa fa-chevron-right freteIcon" aria-hidden="true"></i> --> 
908            <input type="text" class="form-control" placeholder="Digite seu CEP" id="freteDetalheLivro" maxlength="9"> 
909        </div> 
910        <label class="consulteCEP"> 
911            <a href="https://buscacepinter.correios.com.br/app/endereco/index.php" target="_blank">Não sabe seu CEP? Consulte aqui</a> 
912        </label> 
913        <div class="calcFretePrazoContainer"> 
914            <div class="labelsFretes"> 
915                <div>Sedex:</div> 
916                <div>Valor:</div> 
917            </div> 
918            <div class="valuesFretes"> 
919                <div class="label-container-frete"></div> 
920                <div class="valor-container-frete"></div> 
921            </div> 
922        </div> 
923    </div> 
924    <div class="formasPagamentoContainer"> 
925        <div class="formasPagamentoTitle"> 
926            <i class="fas fa-credit-card" style="font-size: 20px; margin-right: 10px;"></i> 
927            <span class="tituloBtnPag">Formas de Pagamento</span> 
928        </div> 
929        <div class="opcoesPagamentoDetalheLivro"> 
930 
931            <ul> 
932                <!--<li> 
933                    <i class="fas fa-barcode"></i> 
934                    <span class="formaPagamentoItem">Boleto Bancário</span> 
935                    <span class="valorFormaPagamento"></span> 
936                    <div class="descricaoFormaPagamento">Parcela única, à vista</div> 
937                </li>--> 
938                <li> 
939                    <i class="far fa-credit-card"></i> 
940                    <span class="formaPagamentoItem">Cartão de Crédito</span> 
941                    <span class="valorFormaPagamento valorFormaPagamentoParcelado"></span> 
942                    <div class="descricaoFormaPagamento"> 
943                        <span>Parcelado em até </span> 
944                        <span style="font-weight:600;" class="quantidadeParcelasCartao"></span> 
945                        <br> 
946                        com cartão 
947                        <span style="font-weight:600;">Mastercard</span>, 
948                        <span style="font-weight:600;"> Visa</span> 
949                        ou 
950                        <span style="font-weight:600;">Elo.</span> 
951                    </div> 
952        </div> 
953        </li> 
954        </ul> 
955    </div> 
956</div> 
957</div> 
958 
959<#assign 
960definitionId = cPCatalogEntry.getCPDefinitionId() 
961cpDefinitionSpecificationOptionValues = cpContentHelper.getCPDefinitionSpecificationOptionValues(definitionId) 
962/> 
963<div class="container tabsDescricaoAutor desktop-only"> 
964    <div class="row"> 
965        <div class="col-12"> 
966            <ul class="nav nav-tabs" id="myTab" role="tablist"> 
967                <li class="nav-item abaAtiva"> 
968                    <a class="nav-link active" id="desc-tab" data-toggle="tab" href="#desc" role="tab" 
969                       aria-controls="profile" aria-selected="false"> 
970                        <span class="iconDesc"> 
971                            <svg id="Grupo_2726" data-name="Grupo 2726" xmlns="http://www.w3.org/2000/svg" width="30" 
972                                 height="24.098" viewBox="0 0 30 24.098" style="margin-top: -5px;"> 
973                              <path id="Caminho_1152" data-name="Caminho 1152" 
974                                    d="M763.305,343.382c.254-.1.528-.21.785-.311v14.51a.7.7,0,0,0,.789.694,11.622,11.622,0,0,1,1.525-.1,14.863,14.863,0,0,1,4.4.689c.439.138.868.3,1.283.475-.56-.035-1.122-.066-1.628-.09-.375-.018-.719-.033-1.005-.044l-.383-.013c-.112,0-.206,0-.285,0a14.947,14.947,0,0,0-6.12,1.314v-16.86l.045-.019c.165-.072.37-.156.591-.245Zm9.751-1.313.05.036,2.324,1.539-.013,16.045a11.381,11.381,0,0,0-1.913-1.225,15.166,15.166,0,0,0-3.476-1.256,16.12,16.12,0,0,0-3.625-.426q-.465,0-.917.03V339.5h.346a11.569,11.569,0,0,1,7.223,2.572Zm5.721.366h0a11.512,11.512,0,0,0,.962-.64h0a11.537,11.537,0,0,1,6.868-2.3h.346v12.425a.7.7,0,1,0,1.4,0v-8.891l.714.281c.242.1.473.191.664.272l.143.062v16.86a14.933,14.933,0,0,0-6.12-1.314c-.127,0-.286,0-.477.012-.332.012-.753.035-1.217.063-.3.018-.613.039-.931.062a11.375,11.375,0,0,1,4.969-1.149,11.15,11.15,0,0,1,1.462.1.7.7,0,0,0,.791-.693v-2.371a.7.7,0,1,0-1.4,0h0v1.6q-.428-.029-.856-.028a12.973,12.973,0,0,0-8.158,2.928l-1.123.553.012-16.674,1.948-1.153Zm-17.378.433a.9.9,0,0,0-.128.464v17.959a.9.9,0,0,0,.076.362.878.878,0,0,0,.14.226.914.914,0,0,0,.307.232.9.9,0,0,0,.38.084.91.91,0,0,0,.412-.1h0a13.581,13.581,0,0,1,6.2-1.505c.1,0,.262,0,.467.01.363.012.856.034,1.4.062.823.041,1.767.1,2.573.159.4.03.771.059,1.07.089.151.016.281.03.39.043l.078.01.918.751a.693.693,0,0,0,.334.148.974.974,0,0,0,.362.07.945.945,0,0,0,.317-.054.991.991,0,0,0,.2-.1l1.58-.779a.358.358,0,0,0,.065-.009c.041-.008.1-.017.166-.027.128-.019.293-.04.484-.061.333-.037.742-.076,1.179-.112.654-.054,1.37-.1,1.988-.141.307-.018.592-.032.832-.042l.321-.012c.092,0,.172,0,.231,0a13.579,13.579,0,0,1,6.2,1.505.9.9,0,0,0,.412.1.915.915,0,0,0,.342-.067.9.9,0,0,0,.4-.319.895.895,0,0,0,.162-.518V343.333a.906.906,0,0,0-.478-.8h0c-.041-.022-.083-.043-.127-.063-.083-.04-.178-.083-.283-.128-.182-.079-.4-.168-.622-.258-.339-.138-.707-.281-1.024-.4l-.387-.151v-2.5a.929.929,0,0,0-.933-.931h-.811a12.932,12.932,0,0,0-7.7,2.572h0a9.88,9.88,0,0,1-.844.561h0l-1.977,1.17-2.188-1.449a12.963,12.963,0,0,0-8.067-2.854h-.811a.93.93,0,0,0-.773.41.9.9,0,0,0-.118.244.913.913,0,0,0-.041.277v2.541c-.32.124-.735.285-1.133.444-.246.1-.485.195-.691.283-.1.044-.2.085-.285.125s-.161.075-.232.112h0a.9.9,0,0,0-.352.334Z" 
975                                    transform="translate(-761.271 -338.099)" fill="#78849e"/> 
976                              <path id="Caminho_1153" data-name="Caminho 1153" 
977                                    d="M797.516,363.2a9.87,9.87,0,0,1,5.663,1.933l.451.333a.7.7,0,1,0,.829-1.125h0l-.451-.333a11.26,11.26,0,0,0-6.461-2.207.7.7,0,1,0-.031,1.4Z" 
978                                    transform="translate(-791.136 -358.009)" fill="#78849e"/> 
979                              <path id="Caminho_1154" data-name="Caminho 1154" 
980                                    d="M797.516,381.1a9.846,9.846,0,0,1,5.663,1.933l.451.333a.7.7,0,1,0,.829-1.125h0l-.451-.333a11.263,11.263,0,0,0-6.461-2.207.7.7,0,1,0-.031,1.4Z" 
981                                    transform="translate(-791.136 -373.037)" fill="#78849e"/> 
982                              <path id="Caminho_1155" data-name="Caminho 1155" 
983                                    d="M868.8,365.477h0l.453-.333a9.859,9.859,0,0,1,5.662-1.933.7.7,0,1,0-.031-1.4,11.243,11.243,0,0,0-6.463,2.206l-.452.333a.7.7,0,0,0,.83,1.125Z" 
984                                    transform="translate(-850.644 -358.015)" fill="#78849e"/> 
985                              <path id="Caminho_1156" data-name="Caminho 1156" 
986                                    d="M868.8,383.365h0l.453-.333a9.836,9.836,0,0,1,5.662-1.933.7.7,0,1,0-.031-1.4,11.258,11.258,0,0,0-6.463,2.207l-.452.333a.7.7,0,0,0,.83,1.125Z" 
987                                    transform="translate(-850.644 -373.037)" fill="#78849e"/> 
988                              <path id="Caminho_1157" data-name="Caminho 1157" 
989                                    d="M874.887,395.363a11.244,11.244,0,0,0-6.463,2.206l-.452.334a.7.7,0,0,0,.83,1.125h0l.453-.333a9.832,9.832,0,0,1,5.662-1.934.7.7,0,1,0-.031-1.4Z" 
990                                    transform="translate(-850.644 -386.191)" fill="#78849e"/> 
991                            </svg> 
992                            &nbsp;&nbsp;<span>Descrição</span> 
993                        </span> 
994                    </a> 
995                    <i class="fas fa-play" style="visibility: visible"></i> 
996                    </span> 
997                </li> 
998                <li class="nav-item"> 
999                    <a class="nav-link" id="spec-tab" data-toggle="tab" href="#spec" role="tab" aria-controls="contact" 
1000                       aria-selected="false"> 
1001                        <span class="iconDesc"> 
1002                            <i class="fas fa-user-edit"></i>&nbsp;&nbsp;<span>Quem escreveu?</span> 
1003                        </span> 
1004                    </a> 
1005                    <i class="fas fa-play"></i> 
1006                    </span> 
1007                </li> 
1008            </ul> 
1009            <div class="tab-content" id="myTabContent"> 
1010                <div class="tab-pane fade show active" id="desc" role="tabpanel" aria-labelledby="desc-tab"> 
1011                    <div class="container"> 
1012                        <div class="row"> 
1013                            <div class="col-5 fichaContainer"> 
1014                                <p><span class="itemFichaTecnica">Ficha Técnica:</span></p> 
1015                                <p><span class="itemFichaTecnica">ISBN:</span>&nbsp;${isbn}</p> 
1016                                <p><span class="itemFichaTecnica">Edição:</span>&nbsp;<span id="itemEdicao">${edicao}</span></p> 
1017                                <p><span class="itemFichaTecnica">Área:</span>&nbsp;${categoria!''}</p> 
1018                                <p><span class="itemFichaTecnica">Número de páginas:</span>&nbsp;${paginas}</p> 
1019                                <p><span class="itemFichaTecnica">Idioma:</span>&nbsp;${idioma}</p> 
1020                                <p><span class="itemFichaTecnica">Data de lançamento:</span>&nbsp;${lancamento}</p> 
1021                                <p><span class="itemFichaTecnica">Tamanho:</span>&nbsp;${formato}</p> 
1022                                <p><span class="itemFichaTecnica">Editora(s):</span>&nbsp;${editora}</p> 
1023                            </div> 
1024                            <div class="col-1">&nbsp;</div> 
1025                            <div class="col-6 descricaoContainer"> 
1026                                <div class="linhaDetalheLivroSuperior"></div> 
1027                                <#if entries?has_content> 
1028                                <#list entries as curCPCatalogEntry> 
1029                                <span>${iconeClass!''}</span> 
1030                                <pre>${curCPCatalogEntry.description?truncate(1400, '...')}</pre> 
1031                                <p class="d-none" id="itemSku">${curCPCatalogEntry.CPSkus[0].getSku()}</p> 
1032                            </#list> 
1033                        </#if> 
1034                        <div class="linhaDetalheLivroInferior"></div> 
1035                    </div> 
1036                </div> 
1037            </div> 
1038        </div> 
1039        <div class="tab-pane fade" id="spec" role="tabpanel" aria-labelledby="spec-tab"> 
1040            <div class="fotoAutorContainer"> 
1041                <div class="nomeAutor"></div> 
1042            </div> 
1043        </div> 
1044    </div> 
1045</div> 
1046</div> 
1047</div> 
1048 
1049<div class="tabsDescricaoAutor mobile-only"> 
1050    <div class="tab-single" data-tab-target="descricao"> 
1051        <div class="icon-wrapper"><i class="fa fa-book"></i></div> 
1052        Descrição 
1053    </div> 
1054    <div class="tab-mobile-content" data-tab-id="descricao"> 
1055        <ul> 
1056            <li class="acDescricaoLi"> 
1057                <#if entries?has_content> 
1058                <#list entries as curCPCatalogEntry> 
1059                <div>${curCPCatalogEntry.description?truncate(9999)}</div> 
1060            </#list> 
1061        </#if> 
1062        <div class="linhaFichaContainerMob"></div> 
1063        <div class="fichaContainerMob"> 
1064            ${iconeClass!''} 
1065            <p><span class="itemFichaTecnicaMob">Ficha Técnica:</span></p> 
1066            <p><span class="itemFichaTecnicaMob">ISBN:</span>&nbsp;${isbn}</p> 
1067            <p><span class="itemFichaTecnicaMob">Edição:</span>&nbsp;${edicao}</p> 
1068            <p><span class="itemFichaTecnicaMob">Área:</span>&nbsp;<span>${categoria!''}</span></p> 
1069            <p><span class="itemFichaTecnicaMob">Número de páginas:</span>&nbsp;${paginas}</p> 
1070            <p><span class="itemFichaTecnicaMob">Idioma:</span>&nbsp;${idioma}</p> 
1071            <p><span class="itemFichaTecnicaMob">Data de lançamento:</span>&nbsp;${lancamento}</p> 
1072            <p><span class="itemFichaTecnicaMob">Tamanho:</span>&nbsp;${formato}</p> 
1073            <p><span class="itemFichaTecnicaMob">Editora(s):</span>&nbsp;${editora}</p> 
1074        </div> 
1075        <div class="linhaFichaContainerMob"></div> 
1076        </li> 
1077        </ul> 
1078    </div> 
1079    <div class="tab-single" data-tab-target="sobre"> 
1080        <div class="icon-wrapper"><i class="fa fa-user-edit"></i></div> 
1081        Sobre Autor 
1082    </div> 
1083    <div class="tab-mobile-content" data-tab-id="sobre"> 
1084        <ul> 
1085            <li class="acDescricaoLi"> 
1086                <div class="fotoAutorContainer"> 
1087                    <div class="nomeAutor"></div> 
1088                </div> 
1089            </li> 
1090        </ul> 
1091    </div> 
1092</div> 
1093 
1094<div id="ri-myModal" class="ri-modal"> 
1095    <div class="ri-modal-content"> 
1096        <span class="ri-closeBtn">&times;</span> 
1097        <div class="ri-title">Registro de interesse de compra</div> 
1098        <form class="ri-form"> 
1099            <label for="ri-unidade" class="ri-label">Unidade</label> 
1100            <input type="text" id="ri-unidade" class="ri-input filled" name="unidade"  disabled> 
1101 
1102            <label for="ri-produto" class="ri-label">Produto selecionado</label> 
1103            <input type="text" id="ri-produto" class="ri-input filled" name="produto" disabled> 
1104 
1105            <label for="ri-finalidade" class="ri-label">Finalidade*</label> 
1106            <select id="ri-finalidade" class="ri-select" name="finalidade" style="background-color: #F5F5F5 !important;"> 
1107                <option value="0">Selecione</option> 
1108                <option value="Material didático para curso">Material didático para curso</option> 
1109                <option value="Livros para Biblioteca">Livros para Biblioteca</option> 
1110                <option value="Brinde">Brinde</option> 
1111            </select> 
1112 
1113            <label for="ri-quantidade" class="ri-label">Quantidade desejada*</label> 
1114            <input type="number" id="ri-quantidade" class="ri-input" name="quantidade" value="0" min="0" required> 
1115            <span class="ri-span">* Campo Obrigatório</span> 
1116 
1117            <span class="ri-span-error"></span> 
1118 
1119            <button type="submit" class="ri-submitBtn">Enviar solicitação</button> 
1120        </form> 
1121    </div> 
1122    <div id="modal-success" class="modal-success"> 
1123        <div class="modal-envio-registro"> 
1124            <div class="modal-success-conteudo" tabindex="0"> 
1125                <div> 
1126                    <i class="fas fa-exclamation-circle text-success"></i> 
1127                </div> 
1128                <div class="modal-success-conteudo-text"> 
1129                    Registro realizado com sucesso. <br> 
1130                    Em breve entraremos em contato! 
1131                </div> 
1132            </div> 
1133        </div> 
1134        <button id="btnFechaModalRegistro" class="btn btn-lg btn-success w-100 mt-10" data-test="form-duvidas-btnFecharEnvio">Voltar para home</button> 
1135    </div> 
1136</div> 
1137 
1138<div id="templateEmail"> 
1139    <div id="registroDeInteresseEmail"> 
1140        <table width="900" align="center" style="border: solid 1px #ecf0f1; font-family: Verdana; color: #7786a3;"> 
1141            <tbody> 
1142            <tr> 
1143                <td> 
1144                    <table width="100%" border="0"> 
1145                        <tbody class="resumo-table-body"> 
1146                        <tr style="background: #fd961f;"> 
1147                            <td> 
1148                                <table width="100%" border="0"> 
1149                                    <tbody> 
1150                                    <tr> 
1151                                        <td width="3%">&nbsp;</td> 
1152                                        <td width="15%">&nbsp;</td> 
1153                                        <td width="12%">&nbsp;</td> 
1154                                        <td width="67%">&nbsp;</td> 
1155                                        <td width="3%">&nbsp;</td> 
1156                                    </tr> 
1157                                    <tr> 
1158                                        <td>&nbsp;</td> 
1159                                        <td align="center"><img src="https://www.sp.senac.br/documents/20125/41021490/logo-senac-white.png"></td> 
1160                                        <td>&nbsp;</td> 
1161                                        <td> 
1162                                            <h1 style="color: whitesmoke;font-size: 35px;line-height: normal;margin: 0;">Editora | Registro de Interesse de Compra</h1> 
1163                                        </td> 
1164                                        <td>&nbsp;</td> 
1165                                    </tr> 
1166                                    <tr> 
1167                                        <td>&nbsp;</td> 
1168                                        <td>&nbsp;</td> 
1169                                        <td>&nbsp;</td> 
1170                                        <td>&nbsp;</td> 
1171                                        <td>&nbsp;</td> 
1172                                    </tr> 
1173                                    </tbody> 
1174                                </table> 
1175                            </td> 
1176                        </tr> 
1177                        <tr> 
1178                            <td>&nbsp;</td> 
1179                        </tr> 
1180                        <tr> 
1181                            <td> 
1182                                <table width="100%" border="0"> 
1183                                    <tbody> 
1184                                    <tr> 
1185                                        <td width="2%"><img src="https://www.sp.senac.br/documents/d/guest/logo-book" width="14" height="16" alt="" style="display: block; border: 0;"></td> 
1186                                        <td width="20%"><strong style="color: #7786a3;">Unidade:</strong></td> 
1187                                        <td width="78%"><strong style="color: #fd961f;" id="registroUnidadeNome"></strong></td> 
1188                                    </tr> 
1189                                    </tbody> 
1190                                </table> 
1191                            </td> 
1192                        </tr> 
1193                        <tr> 
1194                            <td>&nbsp;</td> 
1195                        </tr> 
1196                        <tr> 
1197                            <td> 
1198                                <table width="100%" border="0"> 
1199                                    <tbody> 
1200                                    <tr> 
1201                                        <td width="2%"><img src="https://www.sp.senac.br/documents/d/guest/logo-book" width="14" height="16" alt="" style="display: block; border: 0;"></td> 
1202                                        <td width="98%"><strong style="color: #7786a3;">Usuário Solicitante:</strong></td> 
1203                                    </tr> 
1204                                    </tbody> 
1205                                </table> 
1206                            </td> 
1207                        </tr> 
1208                        <tr> 
1209                            <td><strong>Nome:</strong> <span id="registroUsuarioNome"></span> </td> 
1210                        </tr> 
1211                        <tr> 
1212                            <td><strong>Email:</strong> <span id="registroUsuarioEmail"></span></td> 
1213                        </tr> 
1214                        <tr> 
1215                            <td>&nbsp;</td> 
1216                        </tr> 
1217                        <tr> 
1218                            <td> 
1219                                <table width="100%" border="0"> 
1220                                    <tbody> 
1221                                    <tr> 
1222                                        <td width="2%"><img src="https://www.sp.senac.br/documents/d/guest/logo-book" width="14" height="16" alt="" style="display: block; border: 0;"></td> 
1223                                        <td width="98%"><strong style="color: #7786a3;">Itens registrados:</strong></td> 
1224                                    </tr> 
1225                                    </tbody> 
1226                                </table> 
1227                            </td> 
1228                        </tr> 
1229                        <tr class="pedido-items-table"> 
1230                        <tr> 
1231                            <td> 
1232                                <table id="item-43604674" class="resumo-pedido-item" width="100%" border="0" style="background: #f6efe9;"> 
1233                                    <tbody> 
1234                                    <tr style="background: #f6efe9;"> 
1235                                        <td width="2%">&nbsp;</td> 
1236                                        <td width="62%">&nbsp;</td> 
1237                                        <td width="17%">&nbsp;</td> 
1238                                        <td width="17%">&nbsp;</td> 
1239                                        <td width="2%">&nbsp;</td> 
1240                                    </tr> 
1241                                    <tr style="background: #f6efe9;"> 
1242                                        <td>&nbsp;</td> 
1243                                        <td><strong>Produto</strong></td> 
1244                                        <td align="center"><strong>Quantidade:</strong></td> 
1245                                        <td align="center"><strong>Finalidade:</strong></td> 
1246                                        <td>&nbsp;</td> 
1247                                    </tr> 
1248                                    <tr> 
1249                                        <td>&nbsp;</td> 
1250                                        <td id="registroProdutoNome"><br></td> 
1251                                        <td id="registroProdutoQtd" align="center"></td> 
1252                                        <td id="registroProdutoFin" align="center"></td> 
1253                                        <td>&nbsp;</td> 
1254                                    </tr> 
1255                                    <tr> 
1256                                        <td>&nbsp;</td> 
1257                                        <td>&nbsp;</td> 
1258                                        <td>&nbsp;</td> 
1259                                        <td>&nbsp;</td> 
1260                                        <td>&nbsp;</td> 
1261                                    </tr> 
1262                                    </tbody> 
1263                                </table> 
1264                            </td> 
1265                        </tr> 
1266                        <div class="resumo-pedido-item-divisor"></div> 
1267            </tr> 
1268            </tbody> 
1269        </table> 
1270        </td> 
1271        </tr> 
1272        </tbody> 
1273        </table> 
1274    </div> 
1275</div> 
1276 
1277 
1278<style> 
1279    /*ajuste botão de login*/ 
1280    .ssp-desktop-menu__wrapper .btn-group { 
1281        margin-left: 60px; 
1282
1283 
1284    .categoria-icon-svg{ 
1285        width: 27px; 
1286        height: 30px; 
1287        margin-bottom: 5px; 
1288        margin-left: 10px; 
1289
1290 
1291    .botaoAmplie { 
1292        display: none; 
1293
1294    .ssp:not(.liferay-instance) h2, .tab-mobile-content { 
1295        display: none; 
1296
1297 
1298    .tabsDescricaoAutor { 
1299        margin-bottom: 50px; 
1300
1301 
1302    .tab-single { 
1303        width: calc(100% - 20px); 
1304        padding: 10px 23px 10px 17px; 
1305        text-transform: uppercase; 
1306        font-weight: 700; 
1307        border: solid 1px #CED2DC; 
1308        background-color: #F8F8F8; 
1309        margin-left: -1px; 
1310        border-radius: 6px; 
1311        line-height: 39px; 
1312        margin-bottom: -1px; 
1313
1314 
1315    .tab-single i { 
1316        font-size: 22px; 
1317
1318 
1319    .icon-wrapper { 
1320        margin-right: 2px; 
1321        width: 31px; 
1322        position: relative; 
1323        top: 2px; 
1324        text-align: center; 
1325        display: inline-block; 
1326
1327 
1328    .tab-single.active { 
1329        -webkit-box-shadow: 0px 2px 0px 0px #F6921E; 
1330        box-shadow: 0px 2px 0px 0px #F6921E; 
1331        position: relative; 
1332
1333 
1334    .tab-single.active:after { 
1335        content: "\f04b"; 
1336        font-family: "Font Awesome 5 Pro"; 
1337        font-weight: 900; 
1338        position: absolute; 
1339        transform: rotate(90deg); 
1340        color: #F6921E; 
1341        bottom: -27px; 
1342        font-size: 24px; 
1343        left: 83px; 
1344
1345 
1346    .tab-mobile-content { 
1347        width: calc(100% - 9px); 
1348        padding: 20px 23px 10px 19px; 
1349        border: solid 1px #CED2DC; 
1350        background-color: #F8F8F8; 
1351        margin-left: -1px; 
1352        border-radius: 5px; 
1353        margin-top: 10px; 
1354        margin-bottom: 10px; 
1355
1356 
1357    .tab-mobile-content .fichaContainerMob { 
1358        width: 100%; 
1359        margin-left: 0px!important; 
1360        padding-top: 0px; 
1361        margin-top: 0px; 
1362        margin-bottom: 0px; 
1363
1364 
1365    .tab-mobile-content .linhaFichaContainerMob { 
1366        width: 100%; 
1367        margin-top: 20px; 
1368        margin-bottom: 20px; 
1369
1370 
1371    .taglib-social-bookmarks button{ 
1372        font-size: 0 !important; 
1373        position: absolute; 
1374        top: -105px; 
1375        width: 72px; 
1376        padding: 0; 
1377        left: -32px; 
1378        height: 115px; 
1379
1380    .taglib-social-bookmarks button svg{ 
1381        display: none; 
1382
1383 
1384    /* Ajustes da versão dektop para homologação */ 
1385    .autorDetalheLivro { 
1386        color: #78849e; 
1387
1388 
1389    .tituloDetalheLivro { 
1390        width: 90%; 
1391        font-size: 32px !important; 
1392        font-weight: bold !important; 
1393        color: #454F63 !important; 
1394        padding-right: 65px; 
1395        text-transform: none !important; 
1396
1397 
1398    .descricaoCurtaDetalheLivro { 
1399        font-size: 16px !important; 
1400        color: #454f63; 
1401        flex: 1; 
1402        margin-bottom: 25px; 
1403
1404 
1405    .tituloBtnPag { 
1406        font-size: 14px !important; 
1407        font-weight: 500 !important; 
1408
1409 
1410    .formaPagamentoItem { 
1411        color: #454F63 !important; 
1412        font-size: 14px !important; 
1413        font-weight: 600; 
1414
1415    .itemFichaTecnica { 
1416        font-weight: bold !important; 
1417
1418 
1419    .fichaContainer > p:nth-child(1) { 
1420        margin-top: 40px; 
1421
1422 
1423    .ebooksContainer { 
1424        margin-right: 10px; 
1425        margin-bottom: 240px; 
1426        margin-top: 65px; 
1427        padding-left: 20px; 
1428
1429 
1430    .formasPagamentoContainer { 
1431        margin-right: 70px; 
1432        margin-bottom: 240px; 
1433        margin-top: 40px; 
1434
1435 
1436    .calculeCepContainer { 
1437        display: flex; 
1438        flex-direction: column; 
1439        margin-top: 40px; 
1440        margin-left: 48px; 
1441
1442    .addToCartCustom{ 
1443        margin-top: 24px; 
1444
1445    .addToCartCustom .quantity-selector{ 
1446        display: none; 
1447
1448    .addToCartCustom .quantity-selector input{ 
1449        padding: 10px; 
1450        background: #FFF; 
1451
1452 
1453    /*********************************************/ 
1454    .tab-pane { 
1455        width: 10000px !important; 
1456        margin-left: -360% !important; 
1457        background: #F8F8F8 !important; 
1458
1459 
1460    .nav-tabs { 
1461        min-width: 10000px !important; 
1462        margin-left: -283% !important; 
1463        justify-content: unset !important; 
1464
1465 
1466    .nav-tabs > li:nth-child(1) > a > .iconDesc { 
1467        margin-left: 96% !important; 
1468        text-transform: uppercase; 
1469        font-weight: bold; 
1470
1471 
1472    .nav-tabs > li:nth-child(2) > a > .iconDesc { 
1473        margin-left: 23px !important; 
1474        text-transform: uppercase; 
1475        font-weight: bold; 
1476
1477 
1478    .tabsDescricaoAutor > div > div > ul > li:nth-child(1) > i { 
1479        left: 97% !important; 
1480        top: 43px !important; 
1481
1482 
1483    .tabsDescricaoAutor > div > div > ul > li:nth-child(2) > i { 
1484        left: 100px !important; 
1485        top: 44px !important; 
1486
1487 
1488    /*--------------------------------------------------------------------*/ 
1489    .lfr-notification-container { 
1490        display: none !important; 
1491
1492 
1493    .detalheContainerImg { 
1494        display: flex; 
1495        flex-direction: column; 
1496        align-items: center; 
1497        width: 100%; 
1498        height: auto; 
1499
1500 
1501    .detalheContainerImg img { 
1502        left: 19px; 
1503        min-width: 70px !important; 
1504        max-width: 70px !important; 
1505        min-height: 70px; 
1506        max-height: 70px; 
1507        margin-top: 6px; 
1508        margin-bottom: 6px; 
1509
1510 
1511    .detalheContainerImg img:nth-child(2) { 
1512        display: none; 
1513
1514 
1515    .pagamentoContainer { 
1516        padding-top: 350px; 
1517
1518 
1519    .indiqueContainer { 
1520        width: 73px; 
1521        height: 113.85px; 
1522        background: #F7BD23; 
1523        border-radius: 4px; 
1524        position: absolute; 
1525        top: -30px; 
1526        left: 6%; 
1527        text-align: center; 
1528
1529 
1530    .indiqueContainer i { 
1531        color: #FFFFFF; 
1532        font-size: 24px; 
1533        margin-top: 50%; 
1534        margin-bottom: 15px; 
1535
1536 
1537    .indiqueContainer span { 
1538        color: #FFFFFF; 
1539        font-size: 14px; 
1540        font-family: 'Montserrat', sans-serif; 
1541        font-weight: bold; 
1542
1543 
1544    .addToCartCustom { 
1545        display: flex; 
1546        justify-content: space-between; 
1547        margin-left: 40px; 
1548
1549 
1550    .addToCartCustom > div > div { 
1551        display: inline-flex; 
1552        color: #78849E; 
1553        font-family: 'Montserrat', sans-serif; 
1554        margin-bottom: 0; 
1555
1556 
1557    .addToCartCustom > div > div > select { 
1558        max-width: 90px; 
1559        margin-right: 60px; 
1560        min-height: 50px; 
1561
1562 
1563    .addToCartCustom > div > div > label { 
1564        margin-right: 15px; 
1565        color: #78849E !important; 
1566        margin-top: 18px; 
1567        font-family: 'Montserrat', sans-serif !important; 
1568        font-size: 14px !important; 
1569
1570 
1571    .addToCartCustom > div:nth-child(2) > button, .addToCartCustom > div:nth-child(2) > button:focus { 
1572        width: 345px; 
1573        height: 50px; 
1574        background: #5ACC75; 
1575        padding: 0 !important; 
1576        color: #FFFFFF !important; 
1577        font-size: 22px !important; 
1578
1579 
1580    .btnPagamento .fas { 
1581        font-size: 21px; 
1582
1583 
1584    .estoque-color { 
1585        color: #4ECF6C; 
1586
1587 
1588    .estoque-color-transparent { 
1589        color: transparent !important; 
1590
1591 
1592    .freteContainer { 
1593        display: flex; 
1594        justify-content: space-around; 
1595        margin-top: 80px; 
1596        height: 0; 
1597        overflow: hidden; 
1598
1599 
1600    .opcoesPagamentoDetalheLivro { 
1601        border-radius: 4px; 
1602        background: #FFFFFF; 
1603        border: 1px solid #A2ACC3; 
1604        margin-top: 0px; 
1605        padding: 19px 10px 22px; 
1606        float: left; 
1607        position: absolute; 
1608        font-size: 14px !important; 
1609        color: #454F63; 
1610        min-width: 299px; 
1611        font-family: "Montserrat", sans-serif; 
1612        display: block; 
1613
1614 
1615    .opcoesPagamentoDetalheLivro ul li { 
1616        margin-bottom: 15px; 
1617        border-bottom: 1px solid rgba(0, 0, 0, 0.16); 
1618        padding-bottom: 7px; 
1619        margin-top: 10px; 
1620
1621 
1622    .opcoesPagamentoDetalheLivro ul li i { 
1623        margin-right: 10px; 
1624
1625 
1626    .opcoesPagamentoDetalheLivro ul li:first-child { 
1627        margin-top: 0; 
1628
1629 
1630    .opcoesPagamentoDetalheLivro ul li:last-child { 
1631        border-bottom: none; 
1632        margin-bottom: 0; 
1633        padding-bottom: 0; 
1634
1635 
1636    .valorFormaPagamento { 
1637        float: right; 
1638        color: #454F63 !important; 
1639        font-weight: 600 !important; 
1640
1641 
1642    .descricaoFormaPagamento { 
1643        color: #78849E !important; 
1644        font-size: 14px !important; 
1645        margin-left: 29px; 
1646        margin-top: 2px; 
1647        line-height: 21px; 
1648
1649 
1650    #freteDetalheLivro { 
1651        max-width: 333px !important; 
1652        padding: 0.4375rem 1rem; 
1653        font-family: "Montserrat", sans-serif; 
1654        font-style: normal; 
1655        font-weight: normal; 
1656        text-decoration: inherit; 
1657        color: #F6921E !important; 
1658        background: #FFFFFF !important; 
1659        box-shadow: 0 0 12px #0000000f; 
1660        height: auto; 
1661        line-height: 1.5; 
1662        min-height: 49.99px; 
1663        font-size: 16px !important; 
1664        color: #A2ACC3 !important; 
1665        border-color: rgb(162, 172, 195)!important; 
1666
1667 
1668    #freteDetalheLivro::-webkit-input-placeholder { 
1669        font-family: "Montserrat", sans-serif; 
1670        font-weight: normal; 
1671        overflow: visible; 
1672        vertical-align: top; 
1673        display: inline-block !important; 
1674        color: hsl(9, 40%, 60%); 
1675        font-size: 16px !important; 
1676
1677 
1678    .labelFrete { 
1679        font-size: 14px !important; 
1680
1681 
1682    .labelFrete i { 
1683        font-size: 20px !important; 
1684        margin-right: 6px; 
1685
1686 
1687    .consulteCEP, .consulteCEP a { 
1688        font-size: 14px !important; 
1689        color: #78849E !important; 
1690        text-decoration: underline; 
1691        font-weight: normal; 
1692        padding-top: 12px; 
1693
1694 
1695    .consulteCEP a:hover { 
1696        font-weight: normal !important; 
1697
1698 
1699    .btnActivePagamento > i:nth-of-type(2) { 
1700        transform: rotate(90deg); 
1701
1702 
1703    .imgDetalheProdutoContainer { 
1704        padding-bottom: 20px; 
1705        margin-top: 57px; 
1706        min-height: 435px; 
1707
1708 
1709    .pagamentoContainer { 
1710        display: none; 
1711
1712 
1713    .tabsDescricaoAutor > div > div > ul > li { 
1714        min-width: 570px; 
1715        border: 1px solid #A4ACC1; 
1716        border-radius: 6px; 
1717        color: #A4ACC1 !important; 
1718        max-height: 50px; 
1719        margin: 0 0 0 10px; 
1720        width: 40%; 
1721
1722 
1723    .tabsDescricaoAutor > div > div > ul > li > a { 
1724        margin-top: -5px !important; 
1725        font-family: "Montserrat", sans-serif !important; 
1726
1727 
1728    .tabsDescricaoAutor > div > div > ul > li > i { 
1729        color: #F6921E !important; 
1730        font-size: 32px !important; 
1731        transform: rotate(90deg); 
1732        position: absolute; 
1733        top: 41px; 
1734        left: 50px; 
1735        z-index: 9999 !important; 
1736
1737 
1738    .tabsDescricaoAutor > div > div > ul > li > i { 
1739        visibility: hidden; 
1740
1741 
1742    .tabsDescricaoAutor > div > div > ul > li > a.active { 
1743        background-color: transparent !important; 
1744        max-height: 55px; 
1745        font-family: "Montserrat", sans-serif !important; 
1746
1747 
1748    .tabsDescricaoAutor > div > div > ul > li > a:hover, .tabsDescricaoAutor > div > div > ul > li > a:focus { 
1749        font-weight: normal !important; 
1750        text-decoration: none !important; 
1751
1752 
1753    .tabsDescricaoAutor > div > div > ul > li > a > span { 
1754        font-size: 16px !important; 
1755
1756 
1757    .abaAtiva { 
1758        background: #F8F8F8; 
1759
1760 
1761    .abaAtiva a { 
1762        border-bottom: 2px solid #F6921E !important; 
1763        color: #454F63 !important 
1764
1765 
1766    .fichaContainer { 
1767        top: 20px !important; 
1768        border-right: 2px solid #A4ACC1; 
1769        padding-right: 25px; 
1770        min-height: 380px; 
1771        margin-left: -15%; 
1772        font-size: 16px; 
1773
1774 
1775    .itemFichaTecnica { 
1776        font-family: "Montserrat", sans-serif !important; 
1777        font-size: 16px !important; 
1778        color: #454F63 !important; 
1779
1780 
1781    .descricaoContainer { 
1782        /* margin-top: 40px; */ 
1783        height: 450px; 
1784
1785 
1786    .linhaDetalheLivroSuperior { 
1787        border-bottom: 2px solid #F6921E !important; 
1788        padding: 20px 0 0 0; 
1789        margin-left: 100px; 
1790        width: 630px; 
1791
1792 
1793    .linhaDetalheLivroInferior { 
1794        border-bottom: 2px solid #F6921E !important; 
1795        width: 500px; 
1796        padding: 0 0 0 0; 
1797        margin-left: 10px; 
1798
1799 
1800    .descricaoContainer pre { 
1801        font-family: "Montserrat", sans-serif !important; 
1802        font-size: 18px !important; 
1803        color: #454F63 !important; 
1804        width: 730px; 
1805        margin-top: 20px; 
1806        margin-bottom: 30px; 
1807        max-height: 380px; 
1808        margin-left: 10px; 
1809        white-space: break-spaces; 
1810
1811 
1812    .descricaoContainer > span > i { 
1813        font-family: "Font Awesome 5 Pro" !important; 
1814        position: absolute; 
1815        left: -30px; 
1816        top: 60px; 
1817        font-size: 31px; 
1818        color: #F6921E; 
1819
1820 
1821    .fotoAutorContainer { 
1822        display: flex; 
1823        width: 900px; 
1824        margin: auto; 
1825
1826 
1827    .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
1828        white-space: pre-wrap; 
1829        font-family: 'Montserrat', sans-serif !important; 
1830        font-size: 18px !important; 
1831        color: #454F63 !important; 
1832        line-height: 21px; 
1833        overflow: hidden; 
1834        padding: 12px 25px 15px; 
1835        margin-left: 10px; 
1836        margin-top: 0 !important; 
1837        margin-bottom: 0; 
1838
1839 
1840    .fotoAutorContainer > .nomeAutor > .biografiaAutor::before { 
1841        padding-left: 30px; 
1842        font-weight: bold; 
1843
1844 
1845    .fotoAutorContainer > .nomeAutor { 
1846        font-size: 20px !important; 
1847        font-family: 'Montserrat', sans-serif !important; 
1848        color: #454F63 !important; 
1849        margin: auto; 
1850
1851 
1852    .fotoAutorContainer img { 
1853        width: 283px; 
1854        height: 346px; 
1855        object-fit: cover; 
1856
1857 
1858    .fotoAutorContainer span { 
1859        padding-left: 25px; 
1860        font-weight: bold; 
1861        width: auto; 
1862        margin-right: 15px; 
1863
1864 
1865    .fotoAutorContainer > ul > li { 
1866        font-size: 28px !important; 
1867        font-family: 'Montserrat', sans-serif !important; 
1868        line-height: 40px !important; 
1869        color: #454F63 !important; 
1870        list-style: circle; 
1871        cursor: pointer; 
1872        font-weight: 100; 
1873
1874 
1875    .linhaDetalheSuperiorAutor { 
1876        border-bottom: 2px solid #F6921E !important; 
1877        width: 480px; 
1878        margin-top: 15px; 
1879        margin-bottom: 20px; 
1880
1881 
1882    .linhaDetalheInferiorAutor { 
1883        border-bottom: 2px solid #F6921E !important; 
1884        width: 480px; 
1885        margin-top: 0; 
1886        margin-left: 35px; 
1887
1888 
1889    .linhaDetalheInferiorAutor i { 
1890        position: absolute; 
1891        left: 1090px; 
1892        margin-top: -15px; 
1893        font-size: 31px !important; 
1894        color: #F6921E !important; 
1895
1896 
1897    .linhaNomeAutor { 
1898        font-family: 'Montserrat', sans-serif !important; 
1899        font-weight: bold; 
1900        font-size: 20px; 
1901        display: flex; 
1902        flex-direction: row; 
1903        text-align: left; 
1904        color: #454F63; 
1905        margin-bottom: 0; 
1906        margin-left: 10px; 
1907
1908 
1909    .linhaNomeAutor:before { 
1910        content: ""; 
1911        border-bottom: 0 solid white; 
1912        margin-left: 25px; 
1913
1914 
1915    .linhaNomeAutor:after { 
1916        content: ""; 
1917        flex: 1 1; 
1918        border-bottom: 2px solid #f6921e; 
1919        margin: 0 10px 13px 26.5px; 
1920
1921 
1922    .subtituloLivro { 
1923        width:85%; 
1924        font-size: 22px !important; 
1925        font-weight: 500 !important; 
1926        margin-top: 0 !important; 
1927        color: #454f63; 
1928
1929 
1930    @media (min-width: 800px) { 
1931        .subtituloLivro { 
1932            margin-right: 93px; 
1933
1934        .tituloDetalheLivro { 
1935            padding-right: 93px; 
1936
1937
1938 
1939    .btnVoltarAutores { 
1940        display: flex; 
1941        flex-direction: column-reverse; 
1942        position: sticky; 
1943        top: 10px; 
1944        z-index: 10; 
1945        cursor: pointer; 
1946        font-size: 20px !important; 
1947        color: #f6921e; 
1948
1949 
1950    .btnVoltarAutores span { 
1951        display: block; 
1952        margin-left: -25px; 
1953
1954 
1955    .nav-tabs + .tab-content .tab-pane { 
1956        padding-bottom: 58px; 
1957
1958 
1959    .calcFretePrazoContainer { 
1960        width: 300px; 
1961        height: 75px; 
1962        background: #e4e8f0; 
1963        color: #A2ACC3 !important; 
1964        font-size: 14px !important; 
1965        border-radius: 4px; 
1966        margin-top: -55px; 
1967        display: none; 
1968        border: 1px solid #A2ACC3; 
1969
1970 
1971    .labelsFretes, .labelsFretesMob { 
1972        display: flex; 
1973
1974 
1975    .valuesFretes { 
1976        display: flex; 
1977        margin-top: -20px; 
1978
1979 
1980    .valuesFretesMob { 
1981        display: flex; 
1982        margin-top: -20px; 
1983
1984 
1985    .labelsFretes > div, .labelsFretesMob > div { 
1986        padding: 10px; 
1987        margin-right: 40%; 
1988        font-family: 'Montserrat', sans-serif !important; 
1989        color: #78849E !important; 
1990        font-weight: 600; 
1991
1992 
1993    .labelsFretes > div:nth-child(2), .labelsFretesMob > div:nth-child(2) { 
1994        margin-left: -30px !important; 
1995
1996 
1997    .labelsFretes > div:nth-child(1), .valuesFretes > div:nth-child(1) { 
1998        margin-left: 30px; 
1999
2000 
2001    .labelsFretesMob > div:nth-child(1), .valuesFretesMob > div:nth-child(1) { 
2002        margin-left: 30px; 
2003
2004 
2005    .valuesFretes > div, .valuesFretesMob > div { 
2006        padding: 10px; 
2007        margin-right: 20%; 
2008        font-family: 'Montserrat', sans-serif !important; 
2009        color: #454F63 !important; 
2010        font-weight: 500; 
2011        min-width: 100px; 
2012
2013 
2014    .valuesFretes > div:nth-child(2), .valuesFretesMob > div:nth-child(2) { 
2015        margin-right: 20% !important; 
2016
2017 
2018    .lineAccorionDescricao > div > ul > li > label::after { 
2019        content: "" !important; 
2020
2021 
2022    .lineAccorionDescricao > div > ul > li > label { 
2023        color: #78849E !important; 
2024        width: 90% !important; 
2025
2026 
2027    .lineAccorionDescricao > div > ul { 
2028        box-shadow: none !important; 
2029
2030 
2031    .lineAccorionDescricao > div > ul > li { 
2032        border: 1px solid #78849E !important; 
2033
2034 
2035    .lineAccorionDescricao > div > ul > li:nth-child(1) { 
2036        margin-bottom: -2px; 
2037
2038 
2039    .linhaAccordionAtivo { 
2040        display: none; 
2041        border: 1.2px solid #F6921E; 
2042        background: #F6921E; 
2043
2044 
2045    .linhaAccordionAtivo ~ i { 
2046        display: none; 
2047        color: #F6921E; 
2048        font-size: 20px !important; 
2049        transform: rotate(90deg); 
2050        position: absolute; 
2051
2052 
2053    .abaActiveAccordion:nth-of-type(1) { 
2054        height: 750px; 
2055        overflow: hidden; 
2056        background: #F8F8F8 !important; 
2057
2058 
2059    .abaActiveAccordion:nth-of-type(2) { 
2060        height: 550px; 
2061        background: #F8F8F8 !important; 
2062
2063 
2064    .abaActiveAccordion > ul { 
2065        visibility: visible !important; 
2066        opacity: 1 !important; 
2067
2068 
2069    .acDescricaoLi > div > .listaAutores { 
2070        visibility: visible !important; 
2071        opacity: 1 !important; 
2072        margin-top: 20px; 
2073
2074 
2075    .acDescricaoLi > div > .listaAutores > li { 
2076        margin: 0 0 0 60px; 
2077        font-size: 18px !important; 
2078
2079 
2080    .lineAccorionDescricao > div > ul > li > ul > li > pre { 
2081        font-weight: 100; 
2082
2083 
2084    .itemFichaTecnicaMob { 
2085        font-family: "Montserrat", sans-serif !important; 
2086        font-weight: 500; 
2087        color: #454F63 !important; 
2088        font-size: 12px !important; 
2089
2090 
2091    .itemFichaTecnicaMob ~ root > value, .itemFichaTecnicaMob ~ span { 
2092        font-family: "Montserrat", sans-serif !important; 
2093        font-weight: 100; 
2094        color: #454F63 !important; 
2095        font-size: 12px !important; 
2096
2097 
2098    .linhaFichaContainerMob { 
2099        width: 295px; 
2100        height: 2px; 
2101        background: #F6921E; 
2102        margin: auto; 
2103
2104 
2105    .linhaFichaContainerMob ~ i { 
2106        color: #F6921E !important; 
2107        font-size: 20px !important; 
2108        position: absolute; 
2109
2110 
2111    .linhaFixaComprar { 
2112        height: 40px; 
2113        position: fixed; 
2114        z-index: 99999; 
2115        width: 100%; 
2116        padding: 0 !important; 
2117        display: flex; 
2118        margin: auto !important; 
2119        bottom: 0; 
2120
2121 
2122    .valorBarraFixa { 
2123        background: #454F63; 
2124        padding: 10px; 
2125        color: #F6921E !important; 
2126
2127 
2128    .valorBarraFixa i { 
2129        color: #FFFFFF !important; 
2130        margin-left: 10%; 
2131
2132 
2133    .valorBarraFixa span:nth-child(2) { 
2134        margin-left: 5px; 
2135        font-weight: bold; 
2136        font-size: 12px !important; 
2137
2138 
2139    .valorBarraFixa span:nth-child(3) { 
2140        font-weight: bold; 
2141        font-size: 15px !important; 
2142
2143 
2144    .btnBarraFixa { 
2145        background: #5ACC75; 
2146        margin: auto; 
2147
2148 
2149    .btnBarraFixa > div > div { 
2150        display: none; 
2151
2152 
2153    .btnBarraFixa > div:nth-child(2) > button, .btnBarraFixa > div:nth-child(2) > button:focus, .btnBarraFixa > div:nth-child(2) > button:active { 
2154        background: #5ACC75 !important; 
2155        color: #FFFFFF !important; 
2156        width: 109%; 
2157        margin-left: -4%; 
2158        padding: 0; 
2159        min-height: 40px; 
2160        border: 1px solid #5ACC75; 
2161        outline: none !important; 
2162        box-shadow: none !important; 
2163
2164 
2165    .nav-link.active > .iconDesc > span { 
2166        font-size: 18px !important; 
2167
2168 
2169    .imgProdutoPrincipal img { 
2170        width: 358px !important; 
2171        height: 524px !important; 
2172        margin-top: -50px; 
2173        margin-left: -163px 
2174
2175 
2176    .informacoesContainer { 
2177        display: flex; 
2178        flex-direction: column; 
2179        min-height: 405px; 
2180        margin-top: 0 !important; 
2181        padding: 0 20px; 
2182        justify-content: flex-end; 
2183
2184 
2185    .detalheProdutolinha1 { 
2186        height: 100% !important; 
2187
2188 
2189    .form-control.commerce-input.commerce-input--select.u-wauto { 
2190        padding-left: 23px; 
2191        width: 70px; 
2192
2193 
2194    .autorDetalheLivro { 
2195        margin-bottom: 18px !important; 
2196        font-size: 22px !important; 
2197
2198 
2199    .imgDetalheProdutoContainer img { 
2200        object-fit: contain; 
2201
2202 
2203    .detalheContainerImg { 
2204        cursor: default; 
2205
2206 
2207    .detalheContainerImg img { 
2208        cursor: pointer; 
2209
2210 
2211    .freteIcon { 
2212        font-weight: 400; 
2213        font-size: 19px; 
2214        position: absolute; 
2215        top: 30%; 
2216        right: 17px; 
2217        pointer-events: none; 
2218        color: #a2acc3; 
2219
2220 
2221    .linhaDe.precoLivroIndisponivel span, 
2222    .linhaPor.precoLivroIndisponivel span { 
2223        color: #ccd3e3; 
2224
2225 
2226    #freteDetalheLivro::placeholder { 
2227        font-family: "Montserrat", sans-serif; 
2228        font-size: 16px; 
2229        color: #a2acc3; 
2230
2231 
2232    #livroIndisponivelButton, #registroDeInteresseButton { 
2233        color: #fafdff; 
2234        height: 50px; 
2235        width: 400px; 
2236        font-size: 22px; 
2237        font-weight: 600; 
2238        border-radius: 5px; 
2239        border: none; 
2240        white-space: nowrap; 
2241
2242 
2243    #livroIndisponivelButton { 
2244        background-color: #454f63; 
2245        cursor: not-allowed; 
2246
2247 
2248    #registroDeInteresseButton { 
2249        display: none; 
2250        background-color: #F6921E; 
2251
2252 
2253    #livroIndisponivelSpan { 
2254        display: none; 
2255        background-color: #A2ACC3; 
2256        color: #FFFFFF; 
2257        width: 225px; 
2258        height: 30px; 
2259        border-radius: 5px; 
2260        font-size: 14px; 
2261        padding: 5px 15px; 
2262        margin-top: 15px; 
2263        text-align: center; 
2264
2265 
2266    .ri-button { 
2267        padding: 10px 20px; 
2268        font-size: 16px; 
2269        cursor: pointer; 
2270        background-color: #007bff; 
2271        color: #FFFFFF; 
2272        border: none; 
2273        border-radius: 5px; 
2274
2275 
2276    .ri-modal { 
2277        display: none; 
2278        position: fixed; 
2279        z-index: 10000; 
2280        left: 0; 
2281        top: 0; 
2282        width: 100%; 
2283        height: 100%; 
2284        overflow: auto; 
2285        background-color: rgba(0, 0, 0, 0.7); 
2286
2287 
2288    .ri-modal-content { 
2289        background-color: #fff; 
2290        margin: 15% auto; 
2291        padding: 20px; 
2292        border: 1px solid #ccc; 
2293        width: 80%; 
2294        max-width: 500px; 
2295        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3); 
2296        position: relative; 
2297        z-index: 10002; 
2298        border-radius: 10px; 
2299
2300 
2301    .modal-success { 
2302        display: none; 
2303        position: relative; 
2304        margin: 20% auto; 
2305        padding: 20px; 
2306        width: 40%; 
2307        max-width: 600px; 
2308        overflow: hidden; 
2309
2310 
2311    .modal-envio-registro { 
2312        background-color: #fff; 
2313        border-radius: 10px; 
2314        padding: 20px; 
2315
2316 
2317    .modal-success-conteudo { 
2318        display: flex; 
2319
2320 
2321    .modal-success-conteudo-text { 
2322        margin-left: 15px; 
2323        font-weight: 500; 
2324        font-size: 16px; 
2325
2326 
2327    #btnFechaModalRegistro { 
2328        padding: 10px; 
2329
2330 
2331    .ri-closeBtn { 
2332        color: #aaa; 
2333        float: right; 
2334        font-size: 28px; 
2335        font-weight: bold; 
2336
2337 
2338    .ri-closeBtn:hover, 
2339    .ri-closeBtn:focus { 
2340        color: black; 
2341        text-decoration: none; 
2342        cursor: pointer; 
2343
2344 
2345    .ri-title { 
2346        margin-top: 0; 
2347        font-weight: 500; 
2348        color: #454F73; 
2349        font-size: 22px; 
2350        margin-bottom: 10px; 
2351
2352 
2353    .ri-form { 
2354        display: flex; 
2355        flex-direction: column; 
2356
2357 
2358    .ri-label { 
2359        margin-bottom: 5px; 
2360        font-weight: 700; 
2361        color: #454F73; 
2362        font-size: 18px; 
2363
2364 
2365    .ri-input, .ri-select { 
2366        margin-bottom: 15px; 
2367        padding: 10px; 
2368        font-size: 14px; 
2369        border: 0 !important; 
2370        border-radius: 5px; 
2371        width: 100%; 
2372        box-sizing: border-box; 
2373        color: #454F73 !important; 
2374        background-color: #F5F5F5; 
2375
2376 
2377    .ri-input.filled { 
2378        background-color: #FFF; 
2379        border: 0; 
2380
2381 
2382    .ri-span { 
2383        text-align: end; 
2384        margin-bottom: 10px; 
2385
2386 
2387    .ri-span-error { 
2388        display: none; 
2389        color: #ff0000; 
2390        text-align: center; 
2391        margin-bottom: 10px; 
2392
2393 
2394    .ri-submitBtn { 
2395        padding: 10px 20px; 
2396        font-size: 16px; 
2397        cursor: pointer; 
2398        color: white; 
2399        border: none; 
2400        border-radius: 5px; 
2401        width: 300px; 
2402        text-align: center; 
2403        margin: auto; 
2404        background-color: #F6921E; 
2405
2406 
2407    .ssp-mega-menu.v-hidden { 
2408        visibility: hidden; 
2409
2410 
2411    #templateEmail { 
2412        display: none; 
2413
2414 
2415    .price-buy-wrapper-desktop 
2416    .price-wrapper-desktop 
2417    .price 
2418    .price-value:last-child { 
2419        color: #F6921E !important; 
2420        font-size: 36px !important; 
2421
2422 
2423    .price-buy-wrapper-desktop 
2424    .price-wrapper-desktop 
2425    .price-value { 
2426        color: #F6921E !important; 
2427        font-size: 36px !important; 
2428
2429 
2430    .price-wrapper-desktop .price-label { 
2431        color: #a2acc3 !important; 
2432
2433 
2434    .price-buy-wrapper-desktop 
2435    .price-wrapper-desktop 
2436    .price-value:not(.price-value-final) { 
2437        font-size: 20px !important; 
2438        color: #a2acc3 !important; 
2439        text-align: initial !important; 
2440        padding-top: 10px; 
2441
2442 
2443    .price-wrapper-desktop .price-value::before { 
2444        font-size: 20px; 
2445        font-weight: 600; 
2446        color: #a2acc3; 
2447        font-family: "Montserrat", sans-serif; 
2448        margin-top: -15px; 
2449
2450 
2451    .price-wrapper-desktop .price-value { 
2452        font-size: 36px; 
2453        font-weight: bold; 
2454        color: #f6921e; 
2455        font-family: "Montserrat", sans-serif; 
2456
2457 
2458    .price-wrapper-desktop .price-label::before { 
2459        color: #a2acc3; 
2460        font-weight: 600; 
2461        font-size: 16px; 
2462        font-family: "Montserrat", sans-serif; 
2463
2464 
2465    .price-wrapper-desktop .price-label { 
2466        color: #a2acc3; 
2467        font-size: 28px; 
2468        font-family: "Montserrat", sans-serif; 
2469        font-weight: 600; 
2470        line-height: 1.3rem; 
2471        padding-top: 15px; 
2472
2473 
2474    .informacoesContainer .btn-add-to-cart { 
2475        width: 345px; 
2476        height: 50px; 
2477        right: 60px; 
2478        background: #5ACC75; 
2479        padding: 11px !important; 
2480        padding-left: 30px !important; 
2481        margin-left: 250px; 
2482        line-height: 1; 
2483        border-radius: 5px; 
2484
2485 
2486    .opcoesPagamentoDetalheLivro ul li { 
2487        font-size: 14px; 
2488        width: 100%; 
2489        height: 56px; 
2490        padding-left: 9px; 
2491        padding-top: 0px; 
2492        padding-right: 9px; 
2493
2494 
2495    .tituloBtnPag { 
2496        padding-left: 0px; 
2497        padding-right: 0px; 
2498
2499 
2500    .d-flex-desktop, .d-flex-desktop .row { 
2501        display: flex; 
2502        flex-wrap: nowrap; 
2503
2504 
2505    .calculeCepContainer { 
2506        margin-top: 52px; 
2507
2508 
2509    .calculeCepContainer .labelFrete { 
2510        margin-bottom: 1px; 
2511        font-weight: 500; 
2512
2513 
2514    .formasPagamentoTitle { 
2515        width: 100%; 
2516
2517 
2518    .pagamentoCepWrapper { 
2519        margin-top: 20px; 
2520
2521 
2522    .pagamentoCepWrapper.mobile-only { 
2523        height: 0; 
2524        overflow: hidden; 
2525
2526 
2527    .opcoesPagamentoDetalheLivro { 
2528        background-color: #FFFFFF; 
2529
2530 
2531    .opcoesPagamentoDetalheLivro i { 
2532        font-weight: 600; 
2533        margin-right: 0!important; 
2534
2535 
2536    .formaPagamentoItem { 
2537        padding-left: 5px; 
2538
2539 
2540    .opcoesPagamentoDetalheLivro ul li { 
2541        padding-right: 0; 
2542
2543 
2544    .consulteCEP { 
2545        padding-top: 0; 
2546        text-decoration: none; 
2547        font-size: 13px!important; 
2548
2549 
2550    .labelFrete { 
2551        color: #78849e; 
2552
2553 
2554    #freteDetalheLivro { 
2555        border-color: #78849e; 
2556        box-shadow: unset; 
2557
2558 
2559    .has-control-menu #wrapper { 
2560        margin-top: 30px; 
2561
2562 
2563    /* ebooks */ 
2564    .ebooksTitleContainer { 
2565        margin: 0 30px 0 0 !important; 
2566        height: 50px; 
2567        width: 100%; 
2568        border-radius: 5px; 
2569        padding-left: 50px; 
2570        padding-top: 15px; 
2571        color: #78849E; 
2572        border: 1px solid #A2ACC3; 
2573        font: 14px Montserrat, sans-serif; 
2574        font-weight: 500; 
2575        cursor: pointer; 
2576
2577 
2578    .ebooksContentContainer { 
2579        display: none; 
2580        flex-direction: column; 
2581        width: calc(100% - 10px); 
2582        position: absolute; 
2583        margin-left: -20px; 
2584        margin-top: 60px; 
2585        border: 1px solid #A2ACC3; 
2586        border-radius: 5px; 
2587        z-index: 1; 
2588        background: #fff; 
2589        font: 14px Montserrat, sans-serif; 
2590        transition-property: none !important; 
2591        transform: none !important; 
2592        animation: none !important; 
2593        padding-top: 15px; 
2594        padding-right: 10px; 
2595        padding-bottom: 0; 
2596        padding-left: 10px; 
2597
2598 
2599    .ebooksContentItem { 
2600        display: flex; 
2601
2602 
2603    .ebooksContentIcon { 
2604        display: flex; 
2605        width: 38px; 
2606        padding-right: 12px; 
2607        padding-top: 3px; 
2608        flex-direction: column-reverse; 
2609        align-items: flex-end; 
2610        justify-content: flex-end; 
2611
2612 
2613    .ebooksContentIcon > i { 
2614        font-size: 1.1rem; 
2615        color: #454F63; 
2616
2617 
2618    .ebooksContentIcon > svg { 
2619        width: 16px; 
2620
2621 
2622    .ebooksContentTitle { 
2623        flex: 1; 
2624
2625 
2626    .ebooksContentTitleLink:hover > p { 
2627        font-weight: normal; 
2628
2629 
2630    .ebooksContentTitleName { 
2631        margin-bottom: 3px; 
2632        color: #454F63; 
2633
2634 
2635    .ebooksContentLine { 
2636        border-color: rgba(0, 0, 0, 0.16); 
2637        border-width: 1px; 
2638        width: 100%; 
2639        margin-bottom: 10px; 
2640        margin-top: -5px; 
2641
2642 
2643    .valorCarrossel4 .price del { 
2644        color: rgb(120, 132, 158) !important; 
2645        padding-left: 8px; 
2646
2647 
2648    .valorCarrossel4 .price:not(.compact) .price-value { 
2649        font: normal 600 18px/17px Montserrat !important; 
2650
2651 
2652    .titulo-slider4 { 
2653        position: relative; 
2654        z-index: -1; 
2655
2656 
2657    .slider4, .slider4semextracard { 
2658        z-index: -1 !important; 
2659
2660 
2661    .slider4 .price-label { 
2662        display: none; 
2663
2664 
2665    .slider4 .valorCarrossel4 .price .price-value { 
2666        color: #f6921e !important; 
2667        font-family: 'Montserrat'; 
2668
2669 
2670    .slider4:not(.slider4semextracard) .valorCarrossel4 .price-label, 
2671    .slider4:not(.slider4semextracard) .valorCarrossel4 .price-value { 
2672        font-family: system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol; 
2673
2674 
2675    .slider4:not(.slider4semextracard) .valorCarrossel4 .price-label { 
2676        color: #78849e; 
2677
2678 
2679    #myTabContent { 
2680        background: #F8F8F8 !important; 
2681
2682 
2683    .descricaoContainer > pre { 
2684        white-space: normal; 
2685
2686 
2687    .imgContainerEspecialCarrossel4 img { 
2688        position: relative; 
2689        top: -10px; 
2690
2691 
2692    /*fix carrossel*/ 
2693    .slick-slider { 
2694        position: initial !important; 
2695
2696 
2697    @media(max-width: 1199px) { 
2698        .detalheContainerImg { 
2699            display: none; 
2700
2701 
2702        .imgProdutoPrincipal img { 
2703            width: 308px !important; 
2704            height: 478px !important; 
2705            margin-top: -27px!important; 
2706
2707 
2708        .tituloDetalheLivro { 
2709            font-size: 19px!important; 
2710            line-height: normal!important; 
2711            width: 320px; 
2712
2713 
2714        .autorDetalheLivro { 
2715            font-size: 15px!important; 
2716
2717 
2718        .descricaoCurtaDetalheLivro { 
2719            font-size: 14px!important; 
2720            width: 240px; 
2721
2722 
2723        .imgProdutoPrincipal .price-value .price-value-final, 
2724        .imgProdutoPrincipal .addToCartCustom, 
2725        .imgProdutoPrincipal .btn-add-to-cart { 
2726            margin-left: 0; 
2727
2728 
2729        .imgProdutoPrincipal .btn-add-to-cart { 
2730            width: 302px; 
2731
2732 
2733        .indiqueContainer { 
2734            padding: 0; 
2735
2736 
2737        .indiqueContainer span { 
2738            font-size: 9px; 
2739
2740 
2741        .imgDetalheProdutoContainer { 
2742            height: 447px; 
2743
2744 
2745        .formasPagamentoTitle { 
2746            white-space: nowrap; 
2747
2748 
2749        .tabsDescricaoAutor .tab-content * { 
2750            clear: both!important; 
2751            float: none!important; 
2752            visibility: visible!important; 
2753            opacity: 1!important; 
2754
2755 
2756        .nav.nav-tabs { 
2757            min-width: 1557px!important; 
2758            margin-left: -43%!important; 
2759
2760 
2761        .nav-tabs > li:nth-child(1) > a > .iconDesc span { 
2762            position: absolute; 
2763            left: unset; 
2764            right: 87px; 
2765            top: 50%; 
2766            transform: translateY(-50%); 
2767            margin-top: 5px; 
2768
2769 
2770        .nav-tabs > li:nth-child(1) > a:not(.active) > .iconDesc span { 
2771            margin-top: 0; 
2772
2773 
2774        .nav-tabs > li:nth-child(1) > a > .iconDesc svg { 
2775            margin-top: -3px; 
2776            position: absolute; 
2777            right: 44px; 
2778
2779 
2780        .tabsDescricaoAutor > div > div > ul > li:nth-child(1) > i { 
2781            left: 94% !important; 
2782            top: 43px !important; 
2783
2784 
2785        .tabsDescricaoAutor .tab-content .container { 
2786            max-width: 73vw; 
2787
2788 
2789        .tab-content { 
2790            width: 100vw; 
2791            background-color: rgb(248, 248, 248); 
2792
2793 
2794        .tab-pane { 
2795            clear: both; 
2796            width: 100vw!important; 
2797            margin: 0; 
2798            margin-left: -21vw!important; 
2799
2800 
2801        .descricaoContainer pre { 
2802            width: 638px; 
2803
2804 
2805        .linhaDetalheLivroSuperior { 
2806            width: 547px; 
2807
2808 
2809        .ebooksContainer { 
2810            margin-top: 28px; 
2811            margin-bottom: 0; 
2812
2813 
2814        .calculeCepContainer { 
2815            margin-top: 16px; 
2816
2817 
2818        .formasPagamentoContainer { 
2819            margin-top: 4px; 
2820            margin-bottom: 203px; 
2821
2822
2823 
2824    @media (max-width: 1040px) { 
2825        .categoria-icon-svg{ 
2826            width: 17px; 
2827            height: 17px; 
2828            margin-bottom: 5px; 
2829            margin-left: 10px; 
2830
2831        .descricaoContainer pre { 
2832            font-size: 16px !important; 
2833            line-height: 24px; 
2834            width: 550px; 
2835            margin-bottom: 23px; 
2836
2837 
2838        .linhaDetalheLivroSuperior { 
2839            width: 461px; 
2840
2841 
2842        .tab-pane { 
2843            padding-left: 12vw!important; 
2844
2845 
2846        .fotoAutorContainer { 
2847            padding-left: 5vw; 
2848
2849 
2850        .fotoAutorContainer > .nomeAutor { 
2851            margin-left: 0; 
2852
2853 
2854        .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
2855            width: 52vw; 
2856
2857
2858 
2859    @media (max-width: 997px) { 
2860        .tabsDescricaoAutor .tab-content > .tab-pane > .container > .row { 
2861            width: 100vw; 
2862
2863 
2864        .linhaDetalheLivroSuperior { 
2865            width: 426px; 
2866
2867 
2868        .descricaoContainer pre { 
2869            width: 517px; 
2870
2871 
2872        .linhaDetalheLivroInferior { 
2873            width: 453px; 
2874
2875
2876 
2877    @media (max-width: 879px) { 
2878        .descricaoContainer pre { 
2879            width: 403px; 
2880
2881 
2882        .linhaDetalheLivroSuperior { 
2883            width: 313px; 
2884
2885 
2886        .linhaDetalheLivroInferior { 
2887            width: 319px; 
2888
2889 
2890        .tabsDescricaoAutor .tab-content .container { 
2891            max-width: 52vw; 
2892
2893 
2894        .fotoAutorContainer { 
2895            padding-left: 3vw; 
2896
2897
2898 
2899    @media (min-width: 769px) and (max-width: 813px) { 
2900        .slider4semextracard .comprarCarrossel4 { 
2901            margin-top: -5px !important; 
2902
2903
2904 
2905    @media (max-width: 812px) { 
2906        .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
2907            margin-right: 0; 
2908            margin-left: 12px!important; 
2909
2910 
2911        .fotoAutorContainer .linhaNomeAutor { 
2912            width: 60vw; 
2913
2914 
2915        .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
2916            width: 59vw; 
2917
2918 
2919        .fotoAutorContainer img { 
2920            width: 274px; 
2921            margin-left: 16px; 
2922
2923
2924 
2925    .d-flex { 
2926        display: flex; 
2927
2928 
2929    .mobile-only { 
2930        display: none; 
2931
2932 
2933    .buy-mobile-wrapper { 
2934        position: fixed; 
2935        bottom: 0; 
2936        z-index: 999; 
2937        left: 0; 
2938        width: 100%; 
2939
2940 
2941    .formasPagamentoContainer { 
2942        margin-right: 0; 
2943
2944 
2945    .formasPagamentoTitleMobile { 
2946        position: relative; 
2947        border: solid 1px #e7e7ed; 
2948        border-radius: 0.0625rem; 
2949        line-height: 100%; 
2950        width: 299px; 
2951        height: 55px; 
2952        line-height: 55px; 
2953        padding: 0 20px; 
2954        box-shadow: 0 0 12px #0000000f; 
2955        margin-top: 25px; 
2956        margin-bottom: 10px; 
2957        border-radius: 6px; 
2958
2959 
2960    .opcoesPagamentoDetalheLivro { 
2961        position: static; 
2962
2963 
2964    @media (max-width: 992px) { 
2965        .formasPagamentoContainer { 
2966            margin-bottom: 20px; 
2967
2968
2969 
2970    @media screen and (min-width: 476px) and (max-width: 1199px) { 
2971        .barraHomeDefault { 
2972            margin-top: 30px !important; 
2973
2974
2975 
2976    @media(max-width: 768px) { 
2977        .categoria-icon-svg{ 
2978            width: 17px; 
2979            height: 17px; 
2980            margin-bottom: 4px; 
2981            margin-left: 0; 
2982
2983 
2984        .desktop-only { 
2985            display: none!important; 
2986
2987 
2988        .mobile-only { 
2989            display: block; 
2990
2991 
2992        .d-flex-desktop, .d-flex-desktop .row, .detalheContainerImg, .imgProdutoPrincipal { 
2993            display: block; 
2994
2995 
2996        .detalheContainerImg { 
2997            text-align: center; 
2998
2999 
3000        .imgProdutoPrincipal img { 
3001            margin-left: 0; 
3002            margin-top: 0!important; 
3003
3004 
3005        .informacoesContainer, .imgDetalheProdutoContainer { 
3006            height: auto!important; 
3007            background-color: #FFFFFF!important; 
3008            width: 100%!important; 
3009            margin-left: 0; 
3010            margin-right: 0; 
3011            max-width: unset; 
3012            min-height:auto; 
3013
3014 
3015        .indiqueContainer { 
3016            margin-left: 0; 
3017            right: 0; 
3018            top: 77px; 
3019            width: 75px; 
3020            height: 47px; 
3021            max-width: unset; 
3022            left: unset; 
3023            border-top-right-radius: 0; 
3024            border-bottom-right-radius: 0; 
3025            font-weight: 400; 
3026
3027 
3028        .indiqueContainer i { 
3029            font-size: 20px; 
3030            margin-top: 7px; 
3031            display: block; 
3032            margin-bottom: 0; 
3033
3034 
3035        .indiqueContainer span { 
3036            font-weight: 100; 
3037            margin-left: 10px; 
3038            position: relative; 
3039            top: -3px; 
3040
3041 
3042        .detalheProdutoLinha1 { 
3043            padding-left: 30px; 
3044            padding-right: 30px; 
3045
3046 
3047        .indiqueContainer .dropdown-toggle.btn.btn-outline-borderless.btn-outline-secondary.btn-sm.btn-secondary { 
3048            height: 47px; 
3049            width: 92px; 
3050            max-width: unset; 
3051            left: -56px; 
3052            right: 24px; 
3053            margin: 0; 
3054            top: -43px; 
3055            bottom: unset; 
3056
3057 
3058        .detalheContainerImg > div { 
3059            overflow-x: unset!important; 
3060            overflow-y: unset!important; 
3061
3062 
3063        .imgProdutoPrincipal img { 
3064            width: 78%!important; 
3065            object-fit: contain; 
3066            height: auto!important; 
3067
3068 
3069        .informacoesContainer { 
3070            padding-left: 0; 
3071            padding-right: 0; 
3072
3073 
3074        .tituloDetalheLivro, .autorDetalheLivro, .descricaoCurtaDetalheLivro { 
3075            width: 81%!important; 
3076            padding-right: 0; 
3077
3078 
3079        .buy-mobile-wrapper .quantity-selector { 
3080            display: none; 
3081
3082 
3083        .buy-mobile-wrapper .btn-comprar-wrapper { 
3084            width: calc(100% - 138px); 
3085            height: 44px; 
3086
3087 
3088        .buy-mobile-wrapper .btn-add-to-cart.btn.btn-lg { 
3089            background-color: #5ACC75; 
3090            margin: 0; 
3091            width: 100%; 
3092            padding: 10px; 
3093            border-radius: 0; 
3094
3095 
3096        .buy-mobile-wrapper .preco { 
3097            width: 138px; 
3098            height: 44px; 
3099            box-sizing: border-box; 
3100            padding: 10px; 
3101            background-color: #454F63; 
3102            color: #f6921e; 
3103            text-align: center; 
3104            font-weight: 700; 
3105            line-height: 29px; 
3106            display: flex; 
3107            flex-wrap: nowrap; 
3108            justify-content: center; 
3109
3110 
3111        .buy-mobile-wrapper i { 
3112            display: block; 
3113            color: #FFFFFF!important; 
3114            font-size: 14px!important; 
3115            position: static!important; 
3116            line-height: 29px; 
3117
3118 
3119        .buy-mobile-wrapper .currency { 
3120            font-size: 12px; 
3121            margin: 0px 6px 0px 11px; 
3122            line-height: 29px; 
3123
3124 
3125        .buy-mobile-wrapper button { 
3126            padding-bottom: 12px !important; 
3127
3128 
3129        .opcoesPagamentoDetalheLivro { 
3130            float: none; 
3131            margin-left: 0; 
3132            width: 327px; 
3133            min-width: unset; 
3134
3135 
3136        .calculeCepContainer { 
3137            margin-left: 0; 
3138
3139 
3140        .pagamentoCepWrapper { 
3141            padding: 0; 
3142            width: 294px; 
3143            margin-right: auto; 
3144            margin-left: auto; 
3145
3146 
3147        .consulteCEP { 
3148            margin-top: 0!important; 
3149            padding-bottom: 0px!important; 
3150
3151 
3152        .formasPagamentoContainer { 
3153            clear: both; 
3154            margin-top: 16px; 
3155            margin-bottom: 20px; 
3156
3157 
3158        .calculeCepContainer { 
3159            margin-top: 20px; 
3160
3161 
3162        .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
3163            max-width: 100%; 
3164            width: 100%; 
3165
3166        .fichaContainerMob *, 
3167        .itemFichaTecnicaMob ~ root > value, 
3168        .itemFichaTecnicaMob ~ span { 
3169            font-size: 15px!important; 
3170
3171 
3172        .itemFichaTecnicaMob { 
3173            font-weight: 700; 
3174
3175 
3176        .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
3177            font-size: 15px!important; 
3178            line-height: normal!important; 
3179
3180 
3181        .fotoAutorContainer { 
3182            padding-left: 0; 
3183            width: 100%; 
3184
3185 
3186        .fotoAutorContainer img { 
3187            width: 80px; 
3188            min-width: 80px!important; 
3189            border-radius: 6px; 
3190            overflow: hidden; 
3191            height: 96px; 
3192            margin-left: 20px; 
3193            margin-top: 20px; 
3194
3195 
3196        .linhaDetalheInferiorAutor { 
3197            width: calc(100% + 10px); 
3198            margin-left: -23px; 
3199            margin-bottom: 17px; 
3200            margin-top: 13px; 
3201
3202 
3203        .formasPagamentoContainer { 
3204            margin-bottom: 20px; 
3205
3206 
3207        .imgDetalheProdutoContainer { 
3208            margin-top: 0; 
3209            padding-top: 16px; 
3210
3211 
3212        .informacoesContainer .row.w-25.p-3:first-child { 
3213            display: none; 
3214
3215 
3216        .informacoesContainer { 
3217            padding-top: 20px; 
3218
3219 
3220        .buy-mobile-wrapper .sacola-header-icon:before { 
3221            font-size: 13px!important; 
3222            position: relative; 
3223            top: 1px; 
3224
3225 
3226        .indiqueContainer span { 
3227            font-weight: 600; 
3228            font-size: 12px; 
3229
3230 
3231        .informacoesContainer > .informacoesContainer { 
3232            padding-top: 0px; 
3233
3234 
3235        .btn-add-to-cart-inline::before { 
3236            font-size: 16px; 
3237
3238 
3239        .detalheContainerImg img { 
3240            height: 70px; 
3241            object-fit: cover; 
3242            min-height: unset; 
3243            width: 70px; 
3244            min-width: unset!important; 
3245            max-width: unset!important; 
3246            min-height: unset!important; 
3247            max-height: unset!important; 
3248
3249 
3250        .botaoAmplie > span { 
3251            display: block; 
3252            font: normal normal medium 10px/31px Montserrat; 
3253            letter-spacing: 0px; 
3254            color: #78849E; 
3255
3256 
3257        .botaoAmplie > .fas.fa-search-plus { 
3258            font-size: 29px; 
3259            color: #A2ACC3; 
3260            font-weight: 500; 
3261            margin-bottom: 4px; 
3262
3263 
3264        .descricaoFormaPagamento  { 
3265            margin-left: 21px; 
3266
3267 
3268        .autorDetalheLivro { 
3269            font: normal normal 600 14px/23px Montserrat; 
3270            color: #78849E; 
3271            margin-top: 10px!important; 
3272            user-select: none; 
3273
3274 
3275        .subtitulo { 
3276            font: normal normal normal 16px/19px Montserrat; 
3277            letter-spacing: 0px; 
3278            color: #78849E; 
3279            text-transform: lowercase; 
3280
3281 
3282        #wrapper #ssp-breadcrumb { 
3283            display: none!important; 
3284
3285 
3286        .fragment_36042 { 
3287            margin-top: 22px!important; 
3288
3289 
3290        .dropdown-toggle { 
3291            top: -45px !important; 
3292            left: -70px !important; 
3293            height: 50px !important; 
3294
3295 
3296        .slider4semextracard .price-value > del { 
3297            padding-right: 10px; 
3298
3299 
3300        .slider4:not(.slider4semextracard) .valorCarrossel4 { 
3301            position: relative; 
3302            top: -30px; 
3303
3304 
3305        .slider4:not(.slider4semextracard) .espiarCarrossel4 { 
3306            top: -45px !important; 
3307
3308 
3309        .slider4:not(.slider4semextracard) .comprarCarrossel4 .btn-add-to-cart::before { 
3310            line-height: 0; 
3311
3312
3313 
3314    @media (max-width: 600px) { 
3315        .input-group-inset-item .lexicon-icon { 
3316            display: block !important; 
3317            width: 15px !important; 
3318
3319
3320 
3321    @media screen and (min-width: 476px) and (max-width: 812px) { 
3322        .barraHomeDefault { 
3323            margin-top: 5px !important; 
3324
3325
3326 
3327 
3328    @media (min-width: 414px) and (max-width: 768px) { 
3329        .detalheContainerImg img { 
3330            /*position: absolute;*/ 
3331            z-index: 999; 
3332            left: 6px; 
3333            top: -25px; 
3334            margin-right: auto; 
3335            margin-left: auto; 
3336
3337 
3338        .imgProdutoPrincipal { 
3339            width: 200px !important; 
3340            margin-left: -5%; 
3341
3342 
3343        #portlet_com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet { 
3344            display: none; 
3345
3346 
3347        .barraHomeDefault { 
3348            padding-top: 90px !important; 
3349            background-color: #ebeced !important; 
3350            opacity: 1; 
3351            padding-bottom: 37px !important; 
3352            padding-left: 22px !important; 
3353            padding-right: 22px !important; 
3354
3355 
3356        .btnShareMob { 
3357            display: none; 
3358            max-height: 46px; 
3359            min-width: 75px; 
3360            margin-left: 10px !important; 
3361
3362 
3363        .btnShareMob i { 
3364            display: block; 
3365            margin-left: -10%; 
3366            margin-bottom: 3px; 
3367
3368 
3369        .btnShareMob span { 
3370            margin-left: -4px; 
3371            font-size: 9px !important; 
3372
3373 
3374        .freteInputMob { 
3375            position: relative !important; 
3376            margin-bottom: -40px; 
3377
3378 
3379        #freteDetalheLivroMob { 
3380            width: 92%; 
3381            min-height: 40px; 
3382            margin-bottom: -9px; 
3383            padding-left: 15px; 
3384            font-family: "Montserrat", sans-serif; 
3385            font-style: normal; 
3386            font-weight: normal; 
3387            text-decoration: inherit; 
3388            color: #F6921E !important; 
3389            background: #FFFFFF; 
3390
3391 
3392        .labelFrete { 
3393            margin-left: 2px !important; 
3394
3395 
3396        .labelFrete i { 
3397            font-size: 16px !important; 
3398
3399 
3400        .consulteCEP, .consulteCEP a { 
3401            margin-left: 1px !important; 
3402
3403 
3404        .tituloBtnPag { 
3405            margin-left: 0; 
3406
3407 
3408        .calcFretePrazoContainer { 
3409            margin-top: 0px; 
3410            margin-bottom: 50px; 
3411            margin-left: 0; 
3412            min-width: 333px; 
3413
3414 
3415        .labelsFretes > div, .labelsFretesMob > div { 
3416            margin-right: 50%; 
3417
3418 
3419        .valuesFretes > div:nth-child(2), .valuesFretesMob > div:nth-child(2) { 
3420            margin-right: 31% !important; 
3421
3422 
3423        .valuesFretes > div, .valuesFretesMob > div { 
3424            margin-right: 31%; 
3425
3426 
3427        .opcoesPagamentoDetalheLivro { 
3428            position: unset; 
3429            min-width: 300px; 
3430            width: 300px; 
3431
3432 
3433        .lineAccorionDescricao > div > ul { 
3434            width: 400px !important; 
3435
3436 
3437        .lineAccorionDescricao > div > ul > li { 
3438            min-width: 400px !important; 
3439            width: 400px !important; 
3440            margin-left: -7%; 
3441
3442 
3443        .lineAccorionDescricao > div > ul > li > label { 
3444            margin-left: 27px; 
3445
3446 
3447        .lineAccorionDescricao > div > ul > li:nth-child(1) > .linhaAccordionAtivo ~ i { 
3448            left: 60px; 
3449            top: 61px; 
3450
3451 
3452        .lineAccorionDescricao > div > ul > li:nth-child(2) > .linhaAccordionAtivo ~ i { 
3453            left: 60px; 
3454            top: unset; 
3455            margin-top: -8px; 
3456
3457 
3458        .lineAccorionDescricao > div > ul > li > ul > li > pre { 
3459            font-family: 'Montserrat', sans-serif !important; 
3460            font-size: 12px !important; 
3461            color: #454F63 !important; 
3462            padding: 20px !important; 
3463            margin-left: 10%; 
3464
3465 
3466        .fotoAutorContainer img { 
3467            /*width: 79px;*/ 
3468            /*border-radius: 6px;*/ 
3469
3470 
3471        .linhaNomeAutor:after { 
3472            content: ""; 
3473            flex: 1 1; 
3474            border-bottom: none; 
3475            margin: 0 10px 13px 10px; 
3476
3477 
3478        .fotoAutorContainer > .nomeAutor { 
3479            margin: unset; 
3480            margin-left: -20px; 
3481            margin-top: 6px; 
3482
3483 
3484        .linhaNomeAutor { 
3485            font-size: 16px !important; 
3486            margin-top: 11px; 
3487
3488 
3489        .linhaDetalheInferiorAutor i {; 
3490            left: unset; 
3491            margin-top: -35px; 
3492            color: #F6921E !important; 
3493
3494 
3495        .btnVoltarAutores { 
3496            left: 6%; 
3497            margin-top: 120px; 
3498
3499 
3500        .btnVoltarAutores i { 
3501            margin-left: 25%; 
3502
3503 
3504        .btnVoltarAutores span { 
3505            margin-top: -15px; 
3506
3507 
3508        .fichaContainerMob { 
3509            margin-left: 23%; 
3510            margin-bottom: 20px; 
3511            padding-top: 20px; 
3512
3513 
3514        .linhaFichaContainerMob ~ i { 
3515            margin-left: 70px; 
3516            top: 570px; 
3517
3518 
3519        .consulteCEP, .consulteCEP a { 
3520            font-size: 12px !important; 
3521
3522 
3523        .abaActiveAccordion:nth-of-type(2) { 
3524            max-height: 500px; 
3525            height: 500px; 
3526            overflow: hidden; 
3527
3528 
3529        .botaoAmplie { 
3530            position: relative; 
3531
3532 
3533        .imageList { 
3534            text-align: center; 
3535
3536 
3537        .container .ebooksContainer > div { 
3538            width: 310px !important; 
3539
3540 
3541        .container.mobile-only.pagamentoCepWrapper { 
3542            padding-right: 60px; 
3543
3544
3545 
3546    @media (min-width: 361px) and (max-width: 385px) { 
3547        .detalheContainerImg img { 
3548            z-index: 999; 
3549            left: 6px; 
3550            top: -25px; 
3551
3552 
3553        .imgProdutoPrincipal { 
3554            width: 200px !important; 
3555            margin-left: -5%; 
3556
3557 
3558        #portlet_com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet { 
3559            display: none; 
3560
3561 
3562        .barraHomeDefault { 
3563            background-color: #ebeced !important; 
3564            opacity: 1; 
3565
3566 
3567        .btnShareMob { 
3568            max-height: 46px; 
3569            min-width: 75px; 
3570            margin-left: 17px !important; 
3571
3572 
3573        .btnShareMob i { 
3574            display: block; 
3575            margin-left: -10%; 
3576            margin-bottom: 3px; 
3577
3578 
3579        .btnShareMob span { 
3580            margin-left: -4px; 
3581            font-size: 9px !important; 
3582
3583 
3584        .input-group-item:not(.search-bar-keywords-input-wrapper) .input-group-inset-after.form-control { 
3585            padding-left: 35px; 
3586
3587 
3588        .imgDetalheProdutoContainer { 
3589            height: 230px !important; 
3590            background: #FFFFFF !important; 
3591
3592 
3593        .freteInputMob { 
3594            position: relative !important; 
3595            margin-bottom: -40px; 
3596
3597 
3598        #freteDetalheLivroMob { 
3599            width: 92%; 
3600            min-height: 40px; 
3601            margin-bottom: -9px; 
3602            padding-left: 15px; 
3603            font-family: "Montserrat", sans-serif; 
3604            font-style: normal; 
3605            font-weight: normal; 
3606            text-decoration: inherit; 
3607            color: #F6921E !important; 
3608            background: #FFFFFF; 
3609
3610 
3611        .labelFrete { 
3612            margin-left: 2px !important; 
3613
3614 
3615        .labelFrete i { 
3616            font-size: 16px !important; 
3617
3618 
3619        .consulteCEP, .consulteCEP a { 
3620            margin-left: 1px !important; 
3621            font-size: 12px !important; 
3622
3623 
3624        .tituloBtnPag { 
3625            margin-left: 0; 
3626
3627 
3628        .calcFretePrazoContainer { 
3629            margin-top: -75px; 
3630            margin-bottom: 50px; 
3631            margin-left: 0; 
3632
3633 
3634        .opcoesPagamentoDetalheLivro { 
3635            position: unset; 
3636
3637 
3638        .lineAccorionDescricao > div > ul { 
3639            width: 350px !important; 
3640
3641 
3642        .lineAccorionDescricao > div > ul > li { 
3643            min-width: 365px !important; 
3644            width: 365px !important; 
3645            margin-left: -7%; 
3646
3647 
3648        .lineAccorionDescricao > div > ul > li > label { 
3649            margin-left: 27px; 
3650
3651 
3652        .lineAccorionDescricao > div > ul > li:nth-child(1) > .linhaAccordionAtivo ~ i { 
3653            left: 60px; 
3654            top: 61px; 
3655
3656 
3657        .lineAccorionDescricao > div > ul > li:nth-child(2) > .linhaAccordionAtivo ~ i { 
3658            left: 60px; 
3659            top: unset; 
3660            margin-top: -8px; 
3661
3662 
3663        .lineAccorionDescricao > div > ul > li > ul > li > pre { 
3664            font-family: 'Montserrat', sans-serif !important; 
3665            font-size: 12px !important; 
3666            color: #454F63 !important; 
3667            /*max-width:295px !important;*/ 
3668            padding: 20px !important; 
3669            margin-left: 10%; 
3670
3671 
3672        .linhaNomeAutor:after { 
3673            content: ""; 
3674            flex: 1 1; 
3675            border-bottom: none; 
3676            margin: 0 10px 13px 10px; 
3677
3678 
3679        .fotoAutorContainer > .nomeAutor { 
3680            margin: unset; 
3681            margin-left: -20px; 
3682            margin-top: 6px; 
3683
3684 
3685        .linhaNomeAutor { 
3686            font-size: 16px !important; 
3687            margin-top: 11px; 
3688
3689 
3690        .linhaDetalheInferiorAutor i {; 
3691            left: unset; 
3692            margin-top: -35px; 
3693            color: #F6921E !important; 
3694
3695 
3696        .btnVoltarAutores { 
3697            left: 6%; 
3698            margin-top: 120px; 
3699
3700 
3701        .btnVoltarAutores i { 
3702            margin-left: 25%; 
3703
3704 
3705        .btnVoltarAutores span { 
3706            margin-top: -15px; 
3707
3708 
3709        .fichaContainerMob { 
3710            margin-left: 23%; 
3711            padding-top: 20px; 
3712            margin-bottom: 20px; 
3713
3714 
3715        .linhaFichaContainerMob ~ i { 
3716            margin-left: 35px; 
3717            top: 400px; 
3718
3719 
3720        .consulteCEP, .consulteCEP a { 
3721            font-size: 12px !important; 
3722            margin-top: 15px; 
3723
3724 
3725        .abaActiveAccordion:nth-of-type(2) { 
3726            max-height: 470px; 
3727            height: 470px; 
3728            overflow: hidden; 
3729
3730 
3731        .acDescricaoLi > pre { 
3732            max-height: 250px; 
3733            margin-top: 20px; 
3734
3735 
3736        /* estilos retirados na configuração da página*/ 
3737        .informacoesContainer > .commerce-quantity-container > div > select { 
3738            max-width: 50px; 
3739
3740 
3741        .informacoesContainer > div > button { 
3742            top: 103%; 
3743            width: 345px !important; 
3744            left: 55% !important; 
3745
3746 
3747        .labelFrete { 
3748            margin-left: -23px; 
3749            color: #78849E !important; 
3750
3751 
3752        .consulteCEP { 
3753            margin-left: -20px; 
3754
3755 
3756        .tituloBtnPag { 
3757            padding-left: 0px; 
3758            padding-right: 0px; 
3759
3760 
3761        .ssp-mega-menu__box--single > .ssp-mega-menu__box__wrapper > .titulo > div ~ div { 
3762            left: -60px !important; 
3763
3764 
3765
3766 
3767    @media (min-width: 321px) and (max-width: 360px) { 
3768        .detalheContainerImg img { 
3769            z-index: 999; 
3770            left: 6px; 
3771            top: -25px; 
3772
3773 
3774        .imgProdutoPrincipal { 
3775            width: 200px !important; 
3776            margin-left: -5%; 
3777
3778 
3779        #portlet_com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet { 
3780            display: none; 
3781
3782 
3783        .barraHomeDefault { 
3784            padding-top: 37px !important; 
3785            background-color: #ebeced !important; 
3786            opacity: 1; 
3787
3788 
3789        .btnShareMob { 
3790            max-height: 46px; 
3791            min-width: 75px; 
3792
3793 
3794        .btnShareMob i { 
3795            display: block; 
3796            margin-left: -17%; 
3797            margin-bottom: 3px; 
3798
3799 
3800        .btnShareMob span { 
3801            margin-left: -6px; 
3802            font-size: 9px !important; 
3803
3804 
3805        /*.input-group-item .input-group-inset-after.form-control { 
3806            padding-left: 35px; 
3807        }*/ 
3808 
3809        .imgDetalheProdutoContainer { 
3810            background: #FFFFFF !important; 
3811
3812 
3813        .freteInputMob { 
3814            position: relative !important; 
3815            margin-bottom: -40px; 
3816
3817 
3818        #freteDetalheLivroMob { 
3819            width: 92%; 
3820            min-height: 40px; 
3821            margin-bottom: -9px; 
3822            padding-left: 15px; 
3823            font-family: "Montserrat", sans-serif; 
3824            font-style: normal; 
3825            font-weight: normal; 
3826            text-decoration: inherit; 
3827            color: #F6921E !important; 
3828            background: #FFFFFF; 
3829
3830 
3831        .labelFrete { 
3832            margin-left: 2px !important; 
3833
3834 
3835        .labelFrete i { 
3836            font-size: 16px !important; 
3837
3838 
3839        .consulteCEP, .consulteCEP a { 
3840            margin-left: 1px !important; 
3841
3842 
3843        .tituloBtnPag { 
3844            margin-left: 0; 
3845
3846 
3847        .calcFretePrazoContainer { 
3848            margin-top: -75px; 
3849            margin-bottom: 50px; 
3850            margin-left: 0; 
3851            max-width: 287px; 
3852
3853 
3854        .valuesFretes > div, .valuesFretesMob > div { 
3855            margin-right: 18%; 
3856
3857 
3858        .opcoesPagamentoDetalheLivro { 
3859            position: unset; 
3860
3861 
3862        .lineAccorionDescricao > div > ul { 
3863            width: 350px !important; 
3864
3865 
3866        .lineAccorionDescricao > div > ul > li { 
3867            min-width: 350px !important; 
3868            width: 350px !important; 
3869            margin-left: -7%; 
3870
3871 
3872        .lineAccorionDescricao > div > ul > li > label { 
3873            margin-left: 22px; 
3874
3875 
3876        .lineAccorionDescricao > div > ul > li:nth-child(1) > .linhaAccordionAtivo ~ i { 
3877            left: 60px; 
3878            top: 61px; 
3879
3880 
3881        .lineAccorionDescricao > div > ul > li:nth-child(2) > .linhaAccordionAtivo ~ i { 
3882            left: 60px; 
3883            top: unset; 
3884            margin-top: -8px; 
3885
3886 
3887        .lineAccorionDescricao > div > ul > li > ul > li > pre { 
3888            font-family: 'Montserrat', sans-serif !important; 
3889            font-size: 12px !important; 
3890            color: #454F63 !important; 
3891            max-width: 295px !important; 
3892            padding: 20px !important; 
3893            margin-left: 10%; 
3894
3895 
3896        .linhaNomeAutor:after { 
3897            content: ""; 
3898            flex: 1 1; 
3899            border-bottom: none; 
3900            margin: 0 10px 13px 10px; 
3901
3902 
3903        .fotoAutorContainer > .nomeAutor { 
3904            margin: unset; 
3905            margin-left: -20px; 
3906            margin-top: 6px; 
3907
3908 
3909        .linhaNomeAutor { 
3910            font-size: 16px !important; 
3911            margin-top: 10px; 
3912
3913 
3914        .linhaDetalheInferiorAutor i {; 
3915            left: unset; 
3916            margin-top: -35px; 
3917            color: #F6921E !important; 
3918
3919 
3920        .btnVoltarAutores { 
3921            left: 6%; 
3922            margin-top: 120px; 
3923
3924 
3925        .btnVoltarAutores i { 
3926            margin-left: 25%; 
3927
3928 
3929        .btnVoltarAutores span { 
3930            margin-top: -15px; 
3931
3932 
3933        .fichaContainerMob { 
3934            margin-left: 23%; 
3935            padding-top: 20px; 
3936            margin-bottom: 20px; 
3937
3938 
3939        .linhaFichaContainerMob ~ i { 
3940            margin-left: 50px; 
3941            top: 570px; 
3942
3943 
3944        .consulteCEP, .consulteCEP a { 
3945            font-size: 12px !important; 
3946            margin-top: 15px; 
3947
3948 
3949        .abaActiveAccordion:nth-of-type(2) { 
3950            max-height: 500px; 
3951            height: 500px; 
3952            overflow: hidden; 
3953
3954
3955 
3956    @media (max-width: 320px) { 
3957        .imgProdutoPrincipal img { 
3958            min-width: 180px !important; 
3959            min-height: 270px !important; 
3960
3961 
3962        .detalheContainerImg img { 
3963            z-index: 999; 
3964            left: 2px; 
3965            top: -25px; 
3966
3967 
3968        .imgProdutoPrincipal { 
3969            width: 200px !important; 
3970            margin-left: -5%; 
3971
3972 
3973        #portlet_com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet { 
3974            display: none; 
3975
3976 
3977        .barraHomeDefault { 
3978            background-color: #ebeced !important; 
3979            opacity: 1; 
3980
3981 
3982        .btnShareMob { 
3983            max-height: 46px; 
3984            min-width: 75px; 
3985
3986 
3987        .btnShareMob i { 
3988            display: block; 
3989            margin-left: -25%; 
3990            margin-bottom: 3px; 
3991            font-size: 14px !important; 
3992
3993 
3994        .btnShareMob span { 
3995            margin-left: -15px; 
3996            font-size: 9px !important; 
3997
3998 
3999        /*.input-group-item .input-group-inset-after.form-control { 
4000            padding-left: 35px; 
4001        }*/ 
4002 
4003        .freteInputMob { 
4004            position: relative !important; 
4005            margin: auto; 
4006
4007 
4008        #freteDetalheLivroMob { 
4009            width: 99%; 
4010            min-height: 40px; 
4011            margin-bottom: -9px; 
4012            padding-left: 15px; 
4013            font-family: "Montserrat", sans-serif; 
4014            font-style: normal; 
4015            font-weight: normal; 
4016            text-decoration: inherit; 
4017            color: #F6921E !important; 
4018            background: #FFFFFF !important; 
4019
4020 
4021        .labelFrete { 
4022            margin-left: 2px !important; 
4023
4024 
4025        .labelFrete i { 
4026            font-size: 16px !important; 
4027            margin-right: 2px; 
4028
4029 
4030        .consulteCEP, .consulteCEP a { 
4031            margin-left: 1px !important; 
4032
4033 
4034        .tituloBtnPag { 
4035            margin-left: 0; 
4036            font-size: 14px !important; 
4037
4038 
4039        .calcFretePrazoContainer { 
4040            margin-top: -75px; 
4041            margin-bottom: 50px; 
4042            margin-left: 0; 
4043            width: 274px !important; 
4044
4045 
4046        .valuesFretes > div, .valuesFretesMob > div { 
4047            margin-right: 17%; 
4048
4049 
4050        .valuesFretes > div:nth-child(2), .valuesFretesMob > div:nth-child(2) { 
4051            margin-right: 17% !important; 
4052
4053 
4054        .opcoesPagamentoDetalheLivro { 
4055            position: unset; 
4056            max-width: 272px !important; 
4057            width: 272px !important; 
4058            min-width: 272px; 
4059
4060 
4061        .descricaoFormaPagamento { 
4062            font-size: 12px !important; 
4063
4064 
4065        .lineAccorionDescricao > div > ul { 
4066            width: 250px !important; 
4067
4068 
4069        .lineAccorionDescricao > div > ul > li { 
4070            min-width: 320px !important; 
4071            width: 320px !important; 
4072            margin-left: -10%; 
4073
4074 
4075        .lineAccorionDescricao > div > ul > li > label { 
4076            margin-left: 12px; 
4077
4078 
4079        .lineAccorionDescricao > div > ul > li:nth-child(1) > .linhaAccordionAtivo ~ i { 
4080            left: 60px; 
4081            top: 61px; 
4082
4083 
4084        .lineAccorionDescricao > div > ul > li:nth-child(2) > .linhaAccordionAtivo ~ i { 
4085            left: 60px; 
4086            top: unset; 
4087            margin-top: -7px; 
4088
4089 
4090        .lineAccorionDescricao > div > ul > li > ul > li > pre { 
4091            font-family: 'Montserrat', sans-serif !important; 
4092            font-size: 12px !important; 
4093            color: #454F63 !important; 
4094            max-width: 295px !important; 
4095            padding: 20px !important; 
4096            margin-left: 10%; 
4097
4098 
4099        .linhaNomeAutor:after { 
4100            content: ""; 
4101            flex: 1 1; 
4102            border-bottom: none; 
4103            margin: 0 10px 13px 10px; 
4104
4105 
4106        .fotoAutorContainer > .nomeAutor { 
4107            margin: 5px unset unset -15px; 
4108
4109 
4110        .linhaNomeAutor { 
4111            font-size: 16px !important; 
4112            margin-top: 10px; 
4113
4114 
4115        .linhaDetalheInferiorAutor i {; 
4116            left: unset; 
4117            margin-top: -35px; 
4118            color: #F6921E !important; 
4119
4120 
4121        .btnVoltarAutores { 
4122            left: 6%; 
4123            margin-top: 120px; 
4124
4125 
4126        .btnVoltarAutores i { 
4127            margin-left: 25%; 
4128
4129 
4130        .btnVoltarAutores span { 
4131            margin-top: -15px; 
4132
4133 
4134        .fichaContainerMob { 
4135            margin-left: 20%; 
4136            padding-top: 20px; 
4137            margin-bottom: 20px; 
4138
4139 
4140        .fichaContainerMob p { 
4141            margin-bottom: 14px !important; 
4142
4143 
4144        .linhaFichaContainerMob ~ i { 
4145            margin-left: 30px; 
4146            top: 570px; 
4147
4148 
4149        .valorBarraFixa span:nth-child(3) { 
4150            font-size: 13px !important; 
4151
4152 
4153        .valorBarraFixa span:nth-child(2) { 
4154            font-size: 8px !important; 
4155
4156 
4157        .consulteCEP, .consulteCEP a { 
4158            font-size: 12px !important; 
4159            margin-top: 15px; 
4160
4161
4162 
4163    @media (max-width: 475px) { 
4164        .btnPagamento { 
4165            margin-top: 0; 
4166            width: 92%; 
4167            min-height: auto; 
4168            height: auto; 
4169            padding: 11px 0 8px 0; 
4170
4171 
4172        .btnPagamento > i:nth-child(1) { 
4173            margin-left: -0px; 
4174
4175 
4176        .btnPagamento > span ~ i { 
4177            margin-left: 0; 
4178
4179 
4180        .containerPrecoMob { 
4181            margin-left: 20px; 
4182            margin-right: 40px; 
4183            width: 100%; 
4184            display: flex; 
4185            justify-content: space-between; 
4186            align-items: flex-end; 
4187
4188 
4189        .price-wrapper .price-label { 
4190            color: #a2acc3; 
4191            font-family: "Montserrat", sans-serif; 
4192            display: inline-flex; 
4193            flex-direction: column; 
4194            font-size: 19px; 
4195            font-weight: bold; 
4196            margin-left: 0; 
4197            margin-right: 17.52px; 
4198            height: 100%; 
4199            justify-content: space-between; 
4200            line-height: 1.3rem; 
4201
4202 
4203        .price-wrapper .price-label::before { 
4204            content: "De: "; 
4205            color: #a2acc3; 
4206            font-size: 10px; 
4207            font-weight: 600; 
4208            font-family: "Montserrat", sans-serif; 
4209
4210 
4211        .price-wrapper .price-value .price-value-final { 
4212            display: inline-flex; 
4213            flex-direction: column; 
4214            font-size: 28px; 
4215            margin-left: 0; 
4216            line-height: normal; 
4217            padding-left: 0; 
4218            color: #f6921e; 
4219            font-family: "Montserrat", sans-serif; 
4220            margin-bottom: 0 ; 
4221            margin-top: 0 ; 
4222
4223 
4224        .price-wrapper .price-value .price-value-final::before { 
4225            content: "Por: "; 
4226            font-size: 10px; 
4227            font-weight: 600; 
4228            color: #a2acc3; 
4229            margin-top: 0; 
4230            font-family: "Montserrat", sans-serif; 
4231
4232 
4233        .lockTitulo { 
4234            float: left !important; 
4235            font-size: 7.5px !important; 
4236
4237 
4238        .lockTitulo > .fa { 
4239            float: left; 
4240            font-size: 16px !important; 
4241            margin-top: 5px !important; 
4242
4243 
4244        .lockTitulo > div { 
4245            width: 37px; 
4246            display: inline-block; 
4247
4248 
4249        .detalheLivroMob { 
4250            margin: 0 40px; 
4251
4252 
4253        .tituloDetalheLivro { 
4254            font-size: 20px !important; 
4255            font-weight: 600 !important; 
4256            padding: 0; 
4257
4258 
4259        .autorDetalheLivro { 
4260            font-size: 14px !important; 
4261            margin-top: 10px !important; 
4262            font-weight: 600 !important; 
4263
4264 
4265        .subtituloLivro { 
4266            font-size: 16px !important; 
4267            color: #78849e; 
4268            font-weight: normal !important; 
4269
4270 
4271        .freteInputMob { 
4272            margin-top: 20px; 
4273
4274 
4275        .freteContainer { 
4276            display: none; 
4277
4278 
4279        .imgProdutoPrincipal img { 
4280            min-width: unset!important; 
4281            max-width: unset!important; 
4282
4283 
4284        .btnShareMob .fas { 
4285            font-size: 18px; 
4286
4287        .detalheContainerImg img { 
4288            height: 45.5px; 
4289            width: 45.5px; 
4290            margin-left: auto!important; 
4291            margin-right: auto!important; 
4292
4293 
4294        .barraHomeDefault { 
4295            margin-top: 69px; 
4296            padding: 20px !important; 
4297
4298
4299 
4300    @media (max-width: 414px) { 
4301        #freteDetalheLivro, .opcoesPagamentoDetalheLivro { 
4302            max-width: 100%!important; 
4303            min-width: 100%; 
4304
4305 
4306        .calculeCepContainer > div { 
4307            width: 100%!important; 
4308
4309 
4310        .pagamentoCepWrapper { 
4311            width: 75.75%; 
4312
4313 
4314        .btnShareMob { 
4315            display: none; 
4316
4317 
4318        .descricaoFormaPagamento br { 
4319            display: none; 
4320
4321 
4322        .opcoesPagamentoDetalheLivro ul li:last-child { 
4323            height: auto; 
4324
4325 
4326        .opcoesPagamentoDetalheLivro { 
4327            padding: 19px 10px 19px; 
4328
4329 
4330        .input-group-item .input-group-inset-after.form-control { 
4331            width: auto; 
4332            max-width: unset; 
4333
4334 
4335        .input-group-item:not(.search-bar-keywords-input-wrapper) .input-group-inset-after.form-control { 
4336            padding-left: 0 !important; 
4337            margin-left: 5px !important; 
4338
4339
4340 
4341    @media (min-width: 1200px) { 
4342        .pagamentoCepWrapper { 
4343            justify-content: flex-end; 
4344            margin-top: -20px; 
4345
4346 
4347        .calculeCepContainer { 
4348            margin-left: 0; 
4349            margin-right: 50px; 
4350
4351 
4352        .formasPagamentoContainer { 
4353            margin-bottom: 20px; 
4354
4355 
4356        .informacoesContainer.desktop-only .autorDetalheLivro, 
4357        .informacoesContainer.desktop-only .tituloDetalheLivro { 
4358            padding-right: 77px; 
4359
4360 
4361        .price-wrapper-desktop .price-label:has(del) { 
4362            padding-top: 5px !important; 
4363
4364 
4365        .price-wrapper-desktop .price-value-discount + .price-label { 
4366            padding-top: 5px; 
4367
4368
4369 
4370    @media (min-width: 361px) and (max-width: 385px) { 
4371        .imgDetalheProdutoContainer { 
4372            height: auto!important; 
4373
4374
4375 
4376    @media (max-width: 360px) { 
4377        .opcoesPagamentoDetalheLivro { 
4378            padding: 19px 8px 19px; 
4379
4380 
4381        .opcoesPagamentoDetalheLivro ul li { 
4382            padding-left: 4px; 
4383            padding-right: 4px; 
4384
4385 
4386        .opcoesPagamentoDetalheLivro ul li i { 
4387            margin-right: 4px; 
4388
4389 
4390        .descricaoFormaPagamento { 
4391            margin-left: 23px; 
4392
4393
4394 
4395    .add-to-cart-quantity-marker.active { 
4396        display: none; 
4397
4398 
4399    @media (min-width: 500px) { 
4400        .pagamentoCepWrapper { 
4401            width: 305px; 
4402            margin-left: auto; 
4403            margin-right: auto; 
4404
4405
4406 
4407    @media (min-width: 701px) { 
4408        #freteDetalheLivro { 
4409            width: 300px; 
4410
4411
4412 
4413    @media (min-width: 768px) and (max-width: 768px) { 
4414        .valorCarrossel4 .price del { 
4415            padding-left: 0 !important; 
4416
4417 
4418        .slider4 .valorCarrossel4 > .price { 
4419            margin-top: 15px !important; 
4420
4421 
4422        .comprarCarrossel4 { 
4423            margin-top: 0 !important; 
4424
4425
4426 
4427    @media (min-width: 769px) { 
4428        .btn-add-to-cart-inline::before { 
4429            position: absolute; 
4430            top: 50%; 
4431            left: 50%; 
4432            transform: translateX(-50%) translateY(-50%); 
4433
4434 
4435        .btn-add-to-cart-inline { 
4436            position: relative; 
4437            right: unset; 
4438            top: unset; 
4439
4440 
4441        .pagamentoCepWrapper { 
4442            width: 688px; 
4443            max-width: unset; 
4444            position: relative; 
4445
4446 
4447        .freteContainer { 
4448            width: 100% !important; 
4449            padding-right: 30px; 
4450            justify-content: flex-end; 
4451            flex-wrap: wrap; 
4452
4453 
4454        .pagamentoCepWrapper { 
4455            justify-content: flex-end; 
4456 
4457
4458 
4459        .imgProdutoPrincipal .btn-add-to-cart { 
4460            right: unset; 
4461
4462 
4463        .calculeCepContainer { 
4464            margin-top: 4px; 
4465
4466 
4467        .formasPagamentoContainer { 
4468            margin-bottom: 20px; 
4469
4470 
4471        .descricaoContainer > pre { 
4472            margin-left: 20px !important; 
4473
4474 
4475        .iconeCategoria { 
4476            left: -20px !important; 
4477
4478 
4479        .linhaDetalheInferiorAutor > .iconeCategoria { 
4480            display: none; 
4481
4482 
4483        .slider4 .price-label { 
4484            display: none; 
4485
4486 
4487        .slider4 .valorCarrossel4 .price .price-value { 
4488            position: relative; 
4489            left: -10px; 
4490            font-weight: 500; 
4491            font-size: 16px !important; 
4492
4493 
4494        .valorCarrossel4 .price { 
4495            margin-top: 30px !important; 
4496
4497 
4498        .comprarCarrossel4 { 
4499            margin-top: -5px !important; 
4500
4501
4502 
4503    @media (min-width: 1200px) { 
4504        .freteContainer.container, .pagamentoCepWrapper { 
4505            width: 1182px!important; 
4506            margin-left: auto; 
4507            margin-right: auto; 
4508            justify-content: space-around; 
4509
4510 
4511        .calculeCepContainer { 
4512            margin-left: 40px; 
4513            margin-top: 40px; 
4514            margin-right: 40px; 
4515
4516 
4517        .dropdown-toggle { 
4518            left: -40px !important; 
4519
4520
4521 
4522    @media (min-width: 769px) and (max-width: 820px) { 
4523        .slider4 .divEspiarCarrossel4 { 
4524            top: 275px !important; 
4525            right: 20px !important; 
4526
4527 
4528        .slider4semextracard .divEspiarCarrossel4 { 
4529            top: 280px !important; 
4530
4531 
4532        .slider4semextracard .price { 
4533            margin-bottom: -5px; 
4534
4535 
4536        .slider4semextracard .imgContainerEspecialCarrossel4 img { 
4537            max-height: 390px !important; 
4538
4539 
4540        .slider4semextracard .valorCarrossel4 { 
4541            bottom: 60px !important; 
4542
4543
4544 
4545    @media (max-width: 768px) { 
4546        .input-group-inset { 
4547            margin-left: 0 !important; 
4548
4549 
4550        .input-group-inset-item { 
4551            border: none !important; 
4552            background: #fff !important; 
4553
4554 
4555        .input-group-inset-item button { 
4556            background: #fff; 
4557
4558 
4559        .input-group-inset-item .btn:not(.btn-monospaced) { 
4560            display: none; 
4561
4562 
4563        .barraHomeDefault .input-group-inset-item.input-group-inset-item-after { 
4564            width: auto !important; 
4565
4566 
4567        .input-group-item .input-group { 
4568            flex-direction: row-reverse; 
4569
4570 
4571        .input-group-item .input-group-inset-after.form-control { 
4572            padding-left: 40px !important; 
4573
4574 
4575        .tituloDetalheLivro, .autorDetalheLivro { 
4576            width: 100%!important; 
4577
4578 
4579        .informacoesContainer { 
4580            padding-left: 30px!important; 
4581            padding-right: 30px!important; 
4582
4583 
4584        .price-wrapper .price-value { 
4585            color: #A2ACC3 !important; 
4586            text-align: right; 
4587            font: normal normal bold 28px/23px Montserrat !important; 
4588
4589 
4590        .linhaDetalheInferiorAutor i { 
4591            margin-top: 0; 
4592            bottom: 56px; 
4593
4594 
4595        .add-to-cart-wrapper button.btn.btn-add-to-cart.mt-3 { 
4596            background-color: #5acc75; 
4597            width: 100%; 
4598            border-radius: 0; 
4599            margin-top: 0!important; 
4600            padding: 10px; 
4601            padding-bottom: 0; 
4602
4603 
4604        .comprarCarrossel4 > .add-to-cart > .add-to-cart-wrapper > button.btn.btn-add-to-cart.mt-3 { 
4605            width: 205px !important; 
4606            padding-left: 30px !important; 
4607            border-radius: 5px !important; 
4608            margin-top: 15px !important; 
4609
4610 
4611        .valorCarrossel4 del { 
4612            padding-left: 0 !important; 
4613
4614 
4615        .slider4semextracard .valorCarrossel4 { 
4616            top: initial !important; 
4617            bottom: 60px !important; 
4618            margin-bottom: 0px !important; 
4619
4620 
4621        .slider4semextracard .divEspiarCarrossel4 { 
4622            top: initial !important; 
4623
4624 
4625        .slider4semextracard .imgContainerEspecialCarrossel4 img { 
4626            max-height: 370px !important; 
4627
4628 
4629        .slide-arrow { 
4630            visibility: hidden; 
4631
4632
4633 
4634    @media (max-width: 475px) { 
4635        .detalheContainerImg { 
4636            height: unset; 
4637
4638
4639 
4640    @media (max-width: 414px) { 
4641        .informacoesContainer { 
4642            padding-left: 22px!important; 
4643            padding-right: 22px!important; 
4644
4645 
4646        .imgProdutoPrincipal img { 
4647            width: 71%!important; 
4648
4649
4650 
4651    @media (max-width: 414px) { 
4652        .imgProdutoPrincipal img { 
4653            width: 74%!important; 
4654
4655 
4656        .pagamentoCepWrapper { 
4657            width: 301px; 
4658            margin-left: auto; 
4659            margin-right: auto; 
4660
4661
4662 
4663    @media (max-width: 386px) { 
4664        .fotoAutorContainer img { 
4665            margin-left: 0; 
4666
4667
4668 
4669    @media (min-width: 321px) and (max-width: 768px) { 
4670        .calculeCepContainer, .formasPagamentoContainer { 
4671            position: relative; 
4672            left: 25px; 
4673            max-width: 285px; 
4674
4675 
4676        .ebooksContainer { 
4677            margin-left: 25px; 
4678
4679 
4680        .ebooksContainer > div { 
4681            width: 295px !important; 
4682
4683 
4684        .hasEbook { 
4685            padding-left: 65px; 
4686
4687
4688 
4689    @media (max-width: 320px) { 
4690        .tab-mobile-content .nomeAutor { 
4691            margin-left: -20px; 
4692            width: calc(100% - 52px); 
4693
4694 
4695        .calculeCepContainer { 
4696            padding: 0 30px; 
4697
4698 
4699        .formasPagamentoContainer { 
4700            padding: 0 30px; 
4701
4702 
4703        .ebooksContainer { 
4704            position: relative; 
4705            left: 30px; 
4706
4707 
4708        .ebooksContainer > div { 
4709            width: 282px !important; 
4710
4711
4712 
4713    @media (max-width: 768px) { 
4714        .acDescricaoLi { 
4715            position: relative; 
4716
4717 
4718        .tab-mobile-content .fichaContainerMob { 
4719            position: relative; 
4720            padding-left: 70px; 
4721
4722 
4723        .tab-mobile-content .fichaContainerMob i { 
4724            position: absolute; 
4725            left: 10px; 
4726            top: 3px; 
4727            color: #F6921E; 
4728            font-size: 36px!important; 
4729
4730 
4731        #spec { 
4732            width: 120vw !important; 
4733
4734
4735 
4736    @media (max-width: 388px) { 
4737        .tab-mobile-content .fichaContainerMob p { 
4738            width: auto; 
4739            text-align: left; 
4740
4741
4742 
4743    .fotoAutorContainer > ul.listaAutores > li { 
4744        font-size: 16px!important; 
4745        line-height: 27px!important; 
4746
4747 
4748    .btnVoltarAutores { 
4749        align-items: center; 
4750
4751 
4752    .btnVoltarAutores i { 
4753        margin-right: 6px; 
4754
4755 
4756    .pagination-bar { 
4757        display: none; 
4758
4759 
4760    @media (max-width: 1199px) and (min-width: 769px) { 
4761        .fotoAutorContainer.fotoAutorContainerMultiplos { 
4762            flex-wrap: wrap; 
4763
4764 
4765        .fotoAutorContainer.fotoAutorContainerMultiplos .btnVoltarAutores { 
4766            order: 3; 
4767            position: static; 
4768            margin-top: 20px; 
4769
4770 
4771        .fotoAutorContainer.fotoAutorContainerMultiplos img { 
4772            order: 1; 
4773            width: 280px; 
4774
4775 
4776        .fotoAutorContainer.fotoAutorContainerMultiplos .nomeAutor { 
4777            order: 2; 
4778            width: calc(100% - 280px); 
4779
4780 
4781        .freteContainer { 
4782            margin-top: 20px; 
4783
4784 
4785        .dropdown-toggle { 
4786            top: -95px !important; 
4787            left: -5px !important; 
4788
4789 
4790        .imgDetalheProdutoContainer { 
4791            height: auto !important; 
4792
4793 
4794        .informacoesContainer { 
4795            height: auto !important; 
4796
4797 
4798        .price-buy-wrapper-desktop { 
4799            position: initial !important; 
4800            padding-left: 0 !important; 
4801            padding-bottom: 0 !important; 
4802
4803 
4804        .addToCartCustom { 
4805            margin-bottom: -20px; 
4806
4807 
4808        .price-wrapper-desktop .price-label { 
4809            font-weight: 600 !important; 
4810            padding-top: 5px !important; 
4811
4812
4813 
4814    @media (max-width: 812px) and (min-width: 769px) { 
4815        .fotoAutorContainer.fotoAutorContainerMultiplos .nomeAutor { 
4816            width: calc(100% - 332px); 
4817
4818 
4819        .fotoAutorContainer.fotoAutorContainerMultiplos .btnVoltarAutores { 
4820            margin-left: 12px; 
4821
4822 
4823        .fotoAutorContainer.fotoAutorContainerMultiplos .linhaDetalheInferiorAutor { 
4824            margin-left: 35px; 
4825
4826 
4827        .fotoAutorContainer.fotoAutorContainerMultiplos { 
4828            width: 549px; 
4829
4830
4831 
4832    @media (max-width: 768px) { 
4833        .fotoAutorContainer.fotoAutorContainerMultiplos { 
4834            padding-bottom: 29px; 
4835            position: relative!important; 
4836
4837 
4838        .fotoAutorContainer.fotoAutorContainerMultiplos .btnVoltarAutores { 
4839            position: absolute; 
4840            bottom: 0; 
4841            left: 0; 
4842            align-items: center; 
4843
4844 
4845        .nomeAutorMultiplos .linhaDetalheInferiorAutor i { 
4846            bottom: 85px; 
4847
4848 
4849        .btnVoltarAutores i { 
4850            margin-top: -14px; 
4851
4852 
4853        .fotoAutorContainer > .nomeAutor.nomeAutorMultiplos > .biografiaAutor { 
4854            width: 75vw; 
4855            white-space: normal; 
4856            word-break: break-word; 
4857
4858 
4859        .nomeAutorMultiplos .linhaDetalheInferiorAutor { 
4860            width: 100%; 
4861
4862 
4863        .buy-mobile-wrapper #livroIndisponivelButton { 
4864            margin-left: 0; 
4865            width: 100%; 
4866            border-radius: 0px; 
4867
4868 
4869        .informacoesContainer #livroIndisponivelButton { 
4870            display: none; 
4871
4872
4873 
4874    @media (max-width: 413px) and (min-width: 386px) { 
4875        .nomeAutor.nomeAutorMultiplos .linhaNomeAutor:before, 
4876        .nomeAutor.nomeAutorMultiplos .linhaNomeAutor:after { 
4877            display: none; 
4878
4879        .fotoAutorContainer > .nomeAutor.nomeAutorMultiplos > .biografiaAutor { 
4880            width: 65vw; 
4881            padding-left: 0; 
4882
4883 
4884        .btnVoltarAutores i { 
4885            margin-top: 0; 
4886
4887 
4888        .nomeAutorMultiplos .linhaDetalheInferiorAutor { 
4889            width: calc(100% + 21px); 
4890            margin-left: -46px; 
4891            position: relative; 
4892
4893 
4894        .nomeAutorMultiplos .linhaDetalheInferiorAutor i { 
4895            bottom: 40px; 
4896            left: 0; 
4897
4898
4899 
4900    @media (max-width: 768px) { 
4901        .detalheProdutolinha1 > .col-3 { 
4902            padding-left: 60px; 
4903            width: 180px; 
4904            flex: unset; 
4905            max-width: unset; 
4906
4907 
4908        .detalheContainerImg { 
4909            width: 80px; 
4910
4911 
4912        .price-wrapper { 
4913            text-align: right; 
4914
4915 
4916        .price-wrapper > span { 
4917            text-align: right; 
4918            font: normal normal bold 19px/23px Montserrat; 
4919            letter-spacing: 0px; 
4920            color: #F6921E; 
4921            display: inline-block; 
4922
4923 
4924        .price-wrapper span::before { 
4925            font: normal normal 600 10px/13px Montserrat; 
4926            letter-spacing: 0px; 
4927            color: #78849E; 
4928            display: block; 
4929
4930 
4931        .price-wrapper span.price-value .price-value-final::before { 
4932            position: relative; 
4933            top: 3px; 
4934
4935 
4936        .price-wrapper span.price-value .price-value-final { 
4937            font: normal normal bold 28px/23px Montserrat; 
4938
4939 
4940        .price-wrapper span.price-value .price-value-final .currency { 
4941            font-size: 19px; 
4942
4943 
4944        .valorCarrossel4 > .price { 
4945            margin-top: -15px !important; 
4946
4947
4948 
4949    @media (max-width: 619px) { 
4950        .detalheProdutolinha1 > .col-9 { 
4951            width: calc(100% - 180px)!important; 
4952            flex: unset; 
4953            max-width: unset; 
4954
4955 
4956        .imgProdutoPrincipal img { 
4957            width: calc(100% - 57px)!important; 
4958
4959
4960 
4961    @media (max-width: 530px) { 
4962        .detalheProdutolinha1 > .col-3 { 
4963            padding-left: 20px; 
4964            width: 98px; 
4965
4966 
4967        .detalheContainerImg img { 
4968            height: 41.25px; 
4969            width: 41.25px; 
4970
4971 
4972        .botaoAmplie { 
4973            width: 42px; 
4974            margin-left: auto; 
4975            margin-right: auto; 
4976
4977 
4978        .botaoAmplie > span { 
4979            font-size: 10px!important; 
4980            font-weight: 500!important; 
4981
4982 
4983        .detalheContainerImg { 
4984            width: 50px; 
4985
4986 
4987        .informacoesContainer { 
4988            padding-left: 20px!important; 
4989            padding-right: 20px!important; 
4990
4991 
4992        .informacoesContainer > .informacoesContainer { 
4993            padding-left: 0px!important; 
4994            padding-right: 0px!important; 
4995
4996 
4997        .detalheContainerImg img.escolhida { 
4998            border-width: 3px!important; 
4999
5000 
5001        .imgProdutoPrincipal img { 
5002            width: calc(100% - 4px)!important; 
5003
5004 
5005        .tituloDetalheLivro { 
5006            font: normal normal 600 20px/19px Montserrat; 
5007
5008 
5009        .detalheProdutolinha1 > .col-9 { 
5010            width: calc(100% - 152px)!important; 
5011
5012 
5013        .informacoesContainer { 
5014            display: block; 
5015
5016 
5017        .imgProdutoPrincipal img { 
5018            height: auto!important; 
5019            min-height: unset!important; 
5020
5021
5022 
5023    @media (max-width: 414px) and (min-width: 321px) { 
5024        .container.mobile-only.pagamentoCepWrapper { 
5025            padding-right: 50px; 
5026
5027
5028 
5029    @media (max-width: 414px) and (min-width: 385px) { 
5030        .detalheProdutolinha1 > .col-3 { 
5031            width: 74px; 
5032
5033
5034 
5035    @media (max-width: 414px) { 
5036        .pagamentoCepWrapper { 
5037            width: calc(100% - 40px); 
5038
5039
5040 
5041    @media (max-width: 384px) { 
5042        .detalheProdutolinha1 > .col-3 { 
5043            width: 98px; 
5044
5045
5046 
5047    .portlet-boundary_com_liferay_portal_search_web_search_bar_portlet_SearchBarPortlet_ .portlet-body { 
5048        border-radius: 6px!important; 
5049
5050 
5051    @media (width: 414px) { 
5052        .detalheProdutolinha1 > .col-3 { 
5053            width: 90px; 
5054
5055
5056 
5057    @media (max-width: 768px) { 
5058        body.signed-out .fieldset.fieldset.search-bar, 
5059        body.signed-in:not(.has-control-menu) .fieldset.fieldset.search-bar { 
5060            margin-top: 56px; 
5061
5062 
5063        .btn-add-to-cart-inline::before { 
5064            font-size: 16px!important; 
5065
5066 
5067        .opcoesPagamentoDetalheLivro ul li { 
5068            padding-right: 9px!important; 
5069
5070 
5071        .tabsDescricaoAutor { 
5072            margin-bottom: 15px; 
5073
5074
5075 
5076    @media (min-width: 769px) { 
5077        .price-wrapper span.price-value .price-value-final { 
5078            font-size: 33px!important; 
5079
5080 
5081        .price-wrapper .price-value .price-value-final::before { 
5082            font-size: 20px!important; 
5083
5084 
5085        .price-buy-wrapper-desktop { 
5086            display: flex; 
5087            justify-content: space-between; 
5088            align-items: flex-end; 
5089            position: absolute; 
5090            right: 0; 
5091            bottom: 0; 
5092            padding-right: 20px; 
5093            padding-left: 30px; 
5094            padding-bottom: 30px; 
5095            width: 100%; 
5096
5097 
5098        .price-buy-wrapper-desktop .addToCartCustom, 
5099        .informacoesContainer .price-buy-wrapper-desktop .btn-add-to-cart { 
5100            margin-left: 0; 
5101            margin-top: 0; 
5102
5103 
5104        .informacoesContainer .price-buy-wrapper-desktop .btn-add-to-cart::before { 
5105            font-size: 22px; 
5106
5107 
5108        .price-buy-wrapper-desktop .price-value .price-value-final { 
5109            margin-left: 0; 
5110            text-align: right; 
5111            padding-left: 0; 
5112
5113 
5114        .descricaoContainer pre { 
5115            margin-top: 30px; 
5116
5117 
5118        .descricaoContainer > span > i { 
5119            margin-top: 10px; 
5120
5121 
5122        .comprarCarrossel4 button.btn.btn-primary.btn-lg.btn-add-to-cart.btn-add-to-cart-inline { 
5123            height: 30px; 
5124
5125 
5126        .informacoesContainer.desktop-only > .row.w-25.p-3 { 
5127            padding: 0!important; 
5128
5129 
5130        .container.imgDetalheProdutoContainer { 
5131            padding-top: 30px; 
5132
5133 
5134        .informacoesContainer.desktop-only { 
5135            padding: 0 20px 30px 30px; 
5136            position: relative; 
5137
5138 
5139        .price-wrapper-desktop { 
5140            display: flex; 
5141            flex-wrap: wrap; 
5142            text-align: left; 
5143
5144 
5145        .background-right.titulo-slider4 { 
5146            margin-bottom: -15px; 
5147            padding-top: 80px; 
5148
5149 
5150        .indiqueContainer { 
5151            max-width: unset!important; 
5152            right: 20px!important; 
5153            margin-left: unset!important; 
5154            left: unset!important; 
5155            margin-top: -21px!important; 
5156
5157 
5158        .descricaoCurtaDetalheLivro { 
5159            padding-right: 80px; 
5160
5161 
5162        .price-wrapper-desktop-real { 
5163            font-size: 27px; 
5164
5165        .informacoesContainer.desktop-only { 
5166            width: 100%; 
5167
5168 
5169        .slider4:not(.slider4semextracard) .valorCarrossel4 { 
5170            margin-top: 20px !important; 
5171            margin-bottom: 0px !important; 
5172
5173
5174 
5175    @media (min-width: 821px) { 
5176        .slider4semextracard .valorCarrossel4 { 
5177            top: 90px !important; 
5178
5179
5180 
5181    @media (min-width: 1199px) { 
5182        .price-wrapper-desktop span.price-value span.price-label { 
5183            font-size: 36px!important; 
5184
5185 
5186        .price-wrapper-desktop span.price-value span.price-label::before { 
5187            font-size: 27px!important; 
5188
5189 
5190        .tabsDescricaoAutor > div > div > ul > li { 
5191            margin: 0 0 0 20px; 
5192            width: 39.5%; 
5193
5194 
5195        .iconDesc .fas.fa-user-edit { 
5196            font-size: 31px; 
5197            margin-top: -6px; 
5198
5199 
5200        .nav-link#spec-tab .iconDesc span { 
5201            position: relative; 
5202            top: -5px; 
5203
5204 
5205        .price-wrapper-desktop { 
5206            padding-left: 30px; 
5207
5208 
5209        .nav-item #desc-tab { 
5210            padding-right: 20px!important; 
5211
5212 
5213        .nav-item #spec-tab { 
5214            padding-left: 20px!important; 
5215
5216 
5217        .nav-tabs > li:nth-child(2) > a > .iconDesc { 
5218            margin-left: 0!important; 
5219
5220 
5221        .freteContainer.container { 
5222            position: relative; 
5223            left: 20px; 
5224
5225
5226 
5227    @media (max-width: 1199px) { 
5228        .ssp#wrapper { 
5229            z-index: 1 !important; 
5230
5231 
5232        .slider4.slider4semextracard .slick-list { 
5233            z-index: 0 !important; 
5234
5235 
5236        .price-buy-wrapper-desktop { 
5237            display: block; 
5238
5239 
5240        .indiqueContainer { 
5241            max-width: unset; 
5242            left: unset; 
5243            right: 20px; 
5244
5245 
5246        .informacoesContainer > .row > .indiqueContainer { 
5247            display: flex; 
5248            flex-wrap: wrap; 
5249            flex-direction: column; 
5250
5251 
5252        .informacoesContainer > .row > .indiqueContainer > span { 
5253            font-size: 0.8rem; 
5254
5255 
5256        .search-bar > .search-bar-simple > .search-bar-keywords-input-wrapper input { 
5257            max-width: initial !important; 
5258
5259
5260 
5261    @media (max-width: 768px) { 
5262        .botaoAmplie { 
5263            visibility: hidden; 
5264
5265 
5266        .indiqueContainer { 
5267            right: 0; 
5268
5269 
5270        .buy-mobile-wrapper .btn-add-to-cart.btn.btn-lg, 
5271        .buy-mobile-wrapper .preco { 
5272            height: 50px; 
5273
5274 
5275        .buy-mobile-wrapper .sacola-header-icon:before { 
5276            font-size: 16px!important; 
5277
5278 
5279        .tab-single.active { 
5280            color: #454f63; 
5281
5282 
5283        .tab-mobile-content { 
5284            width: calc(100% - 40px); 
5285            margin-left: 10px; 
5286
5287 
5288        .informacoesContainer .price-wrapper .price-label { 
5289            display: none; 
5290
5291 
5292        .linhaNomeAutor { 
5293            margin-left: 0; 
5294            padding-left: 20px; 
5295
5296 
5297        .linhaNomeAutor:before { 
5298            margin-left: 0; 
5299
5300 
5301        .tab-mobile-content { 
5302            padding-left: 20px; 
5303
5304 
5305        .fotoAutorContainer > .nomeAutor > .biografiaAutor { 
5306            padding-left: 20px; 
5307            margin-left: 0!important; 
5308
5309 
5310        .linhaDetalheInferiorAutor { 
5311            margin-left: -37px; 
5312
5313 
5314        .pagamentoCepWrapper { 
5315            width: calc(100% - 80px); 
5316            display: flex; 
5317            flex-wrap: wrap; 
5318            align-content: center; 
5319            flex-direction: column; 
5320            margin-top: 0; 
5321            margin-bottom: 40px; 
5322
5323 
5324        .informacoesContainer > .informacoesContainer { 
5325            padding-left: 20px!important; 
5326            padding-right: 20px!important; 
5327
5328 
5329        .tab-single { 
5330            padding: 10px 23px 10px 40px; 
5331            margin-left: 10px; 
5332
5333 
5334        .tab-mobile-content { 
5335            padding-left: 20px; 
5336            width: calc(100% - 20px); 
5337
5338 
5339        .fotoAutorContainer > .nomeAutor > .biografiaAutor, 
5340        .fotoAutorContainer .linhaNomeAutor { 
5341            padding-left: 40px; 
5342
5343 
5344        .fotoAutorContainer > .nomeAutor > .biografiaAutor, 
5345        .fotoAutorContainer .linhaNomeAutor { 
5346            padding-left: 40px; 
5347            padding-right: 0px; 
5348            width: 100%; 
5349
5350        .calcFretePrazoContainer { 
5351            margin-top: -5px; 
5352            margin-bottom: 20px; 
5353
5354 
5355        .labelsFretes > div:nth-child(1), .valuesFretes > div:nth-child(1) { 
5356            margin-left: 5px; 
5357
5358 
5359        .valorCarrossel4 { 
5360            position: relative; 
5361            z-index: 9999; 
5362            top: -50px; 
5363
5364 
5365        .divEspiarCarrossel4 { 
5366            position: relative; 
5367            z-index: 9999; 
5368            top: -60px; 
5369            left: -20px; 
5370
5371 
5372        .slider4 .valorCarrossel4 { 
5373            margin-top: 75px !important; 
5374
5375 
5376        .slider4 .espiarCarrossel4 { 
5377            top: -65px !important; 
5378
5379 
5380        .mobile-only .price { 
5381            grid-template-areas: "value" !important; 
5382            font: normal normal bold 28px/23px Montserrat; 
5383            padding-bottom: 10px; 
5384
5385
5386 
5387    @media (min-width: 769px) { 
5388        .calcFretePrazoContainer { 
5389            height: 73px; 
5390
5391 
5392        .labelsFretes > div:nth-child(1), .valuesFretes > div:nth-child(1) { 
5393            margin-left: 17px; 
5394
5395 
5396        .slider4.slider4semextracard { 
5397            z-index: 0; 
5398
5399
5400 
5401    .mini-cart { 
5402        z-index: 99999; 
5403
5404 
5405    .detalheContainerImg img.selectedImage { 
5406        border: 5px solid rgb(246, 146, 30)!important; 
5407
5408 
5409    .img-zoom-container{ 
5410        position: relative; 
5411        width: 358px !important; 
5412        height: 524px !important; 
5413        overflow: hidden; 
5414        flex-shrink: 0; 
5415
5416    .img-zoom-container img{ 
5417        position: absolute; 
5418        width: 100%!important; 
5419        height: 100%!important; 
5420        margin:0; 
5421        -o-object-fit: contain; 
5422        object-fit: contain; 
5423        transform: scale(var(--zoom, 1)); 
5424        transform-origin: var(--x) var(--y); 
5425        transition: transform 0.3s ease; 
5426
5427    .imgProdutoPrincipal img:hover{ 
5428        --zoom:2; 
5429
5430    @media (max-width: 769px) { 
5431        .img-zoom-container { 
5432            width: 338px !important; 
5433            height: 300px !important; 
5434
5435
5436 
5437</style> 
5438 
5439<script> 
5440    function handleUsuarioUnidade(nomeUnidade) { 
5441        $(".freteContainer").addClass("d-none"); 
5442        $(".estoque p").removeClass("estoque-color-transparent"); 
5443        $(".estoque p").addClass("estoque-color"); 
5444        $("#livroIndisponivelButton").hide(); 
5445        $("#registroDeInteresseButton").show(); 
5446        $("#livroIndisponivelSpan").show(); 
5447        $("#livroIndisponivelSpan").addClass("d-block"); 
5448 
5449        $("#ri-unidade").val(nomeUnidade); 
5450        $("#ri-produto").val($(".tituloDetalheLivro").first().text()); 
5451 
5452
5453 
5454    function handleUsuario() { 
5455        $(".estoque").removeClass("d-flex"); 
5456        $(".estoque").addClass("d-none"); 
5457        $(".freteContainer").css("height", "auto"); 
5458        $(".pagamentoCepWrapper.mobile-only").css("height", "auto"); 
5459
5460 
5461    //Identifica usuário unidade 
5462    $(document).ready(function() { 
5463        let myHeaders = new Headers(); 
5464        myHeaders.append("accept", "application/json"); 
5465        myHeaders.append("x-csrf-token", Liferay.authToken); 
5466        let requestOptions = { 
5467            method: 'GET', 
5468            headers: myHeaders, 
5469            redirect: 'follow' 
5470        }; 
5471        fetch("/o/headless-admin-user/v1.0/my-user-account", requestOptions) 
5472            .then(response => response.text()) 
5473            .then(result => { 
5474                let accountBriefs = JSON.parse(result).accountBriefs; 
5475                let contaUnidadeEncontrada = false; 
5476 
5477                accountBriefs.forEach(function(account) { 
5478                    fetch("/o/headless-commerce-admin-account/v1.0/accounts/" + account.id, requestOptions) 
5479                        .then(response => response.text()) 
5480                        .then(result => { 
5481                            let accountType = JSON.parse(result).type; 
5482                            if (accountType == 2) { // Conta Unidade 
5483                                contaUnidadeEncontrada = true; 
5484                                handleUsuarioUnidade(JSON.parse(result).name); 
5485
5486                        }).catch(error => { 
5487                        console.log(error); 
5488                    }); 
5489                }); 
5490                setTimeout(function() { 
5491                    if (!contaUnidadeEncontrada) { 
5492                        handleUsuario(); 
5493
5494                }, 1000); 
5495            }).catch(error => { 
5496            handleUsuario(); 
5497        }); 
5498    }); 
5499 
5500    $(document).ready(function(){ 
5501        $("#registroDeInteresseButton").click(function(){ 
5502            $("#ri-myModal").css("display", "block"); 
5503            $('.ssp-mega-menu').addClass('v-hidden'); 
5504        }); 
5505 
5506        $(".ri-closeBtn").click(function(){ 
5507            $("#ri-myModal").css("display", "none"); 
5508            $('.ssp-mega-menu').removeClass('v-hidden'); 
5509        }); 
5510 
5511        $("#ri-quantidade").change(function(event) { 
5512            if ($(event.target).val() > 0) { 
5513                $(".ri-span-error").hide(); 
5514            } else { 
5515                $(".ri-span-error").text("Preencha o campo com a quantidade desejada."); 
5516                $(".ri-span-error").show(); 
5517
5518        }); 
5519 
5520        $("#ri-finalidade").change(function(event) { 
5521            if ($(event.target).val() == 0) { 
5522                console.log("linha 1104"); 
5523                $(".ri-span-error").text("Preencha o campo com a finalidade desejada."); 
5524                $(".ri-span-error").show(); 
5525            } else { 
5526                $(".ri-span-error").hide(); 
5527
5528        }); 
5529 
5530        $(".ri-submitBtn").click(function(event) { 
5531            event.preventDefault(); 
5532            const quantidade = $("#ri-quantidade").val(); 
5533            const finalidade = $("#ri-finalidade").val(); 
5534 
5535            if (quantidade > 0 && finalidade != 0) { 
5536                $(event.target).attr("disabled", true); 
5537                $(".ri-span-error").hide(); 
5538 
5539                $("#registroUnidadeNome").text($("#ri-unidade").val()); 
5540 
5541                $("#registroUsuarioNome").text(Liferay.ThemeDisplay.getUserName()); 
5542                $("#registroUsuarioEmail").text(Liferay.ThemeDisplay.getUserEmailAddress()); 
5543 
5544                let descricaoItem = $("#ri-produto").val() + " - " + $("#itemEdicao").text() + " - Cód. do Produto: " + $("#itemSku").text().replace(/\D/g, ''); 
5545                $("#registroProdutoNome").text(descricaoItem); 
5546                $("#registroProdutoQtd").text(quantidade); 
5547                $("#registroProdutoFin").text(finalidade); 
5548 
5549                enviarEmailregistro(); 
5550            } else { 
5551                if (quantidade <= 0 && finalidade == 0) { 
5552                    $(".ri-span-error").text("Preencha os campos com a finalidade e a quantidade desejada."); 
5553                } else if (quantidade <= 0) { 
5554                    $(".ri-span-error").text("Preencha o campo com a quantidade desejada."); 
5555                } else { 
5556                    $(".ri-span-error").text("Preencha o campo com a finalidade desejada."); 
5557
5558                $(".ri-span-error").show(); 
5559
5560        }); 
5561 
5562        $(window).click(function(event){ 
5563            if ($(event.target).is("#ri-myModal")) { 
5564                $("#ri-myModal").css("display", "none"); 
5565                $('.ssp-mega-menu').removeClass('v-hidden'); 
5566
5567        }); 
5568 
5569        $('#btnFechaModalRegistro').on('click', function() { 
5570            window.location.replace(Liferay.ThemeDisplay.getPortalURL()); 
5571        }); 
5572    }); 
5573 
5574    function enviarEmailregistro() { 
5575        let email = Liferay.ThemeDisplay.getUserEmailAddress(); 
5576        let nome = $("#ri-unidade").val(); 
5577 
5578        let registroOuterHtml = $("#registroDeInteresseEmail")[0].outerHTML.replaceAll("\n", ""); 
5579 
5580        let registroDeInteresse = { 
5581            "accountUnidade": $("#ri-unidade").val(), 
5582            "usuarioSolicitante": { 
5583                "nome": Liferay.ThemeDisplay.getUserName(), 
5584                "email": Liferay.ThemeDisplay.getUserEmailAddress() 
5585            }, 
5586            "riProducts" : [ 
5587
5588                    "productName": $("#ri-produto").val(), 
5589                    "finalidadeDeInteresse": $("#ri-finalidade").val(), 
5590                    "quantidadeDesejada": parseInt($("#ri-quantidade").val()) 
5591
5592
5593
5594 
5595        let body = { 
5596            "attachment": false, 
5597            "from": email, 
5598            "to": "", 
5599            "cc": "", 
5600            "cco": "", 
5601            "subject": "registro interesse", 
5602            "message": registroOuterHtml, 
5603            "nome": nome, 
5604            "email": email, 
5605            "registroDeInteresse": registroDeInteresse 
5606
5607 
5608        var settings = { 
5609            "url": "/sync-dxp/email/sendMail", 
5610            "method": "POST", 
5611            "timeout": 0, 
5612            "headers": { 
5613                "Content-Type": "application/json", 
5614                "Access-Control-Allow-Credentials":"true", 
5615                "Access-Control-Allow-Methods": "POST, GET", 
5616                "Access-Control-Allow-Headers": "*", 
5617                "Access-Control-Max-Age": 86400 
5618            }, 
5619            "data": JSON.stringify(body), 
5620        }; 
5621 
5622        $.ajax(settings).done(function (response) { 
5623            $(".ri-modal-content").hide(); 
5624            $(".modal-success").show(); 
5625        }); 
5626
5627</script> 
5628 
5629<script> 
5630 
5631    document.querySelectorAll('.img-zoom-container').forEach(elem =>{ 
5632        let x,y, width, height; 
5633        elem.onmouseenter = () => { 
5634            const size = elem.getBoundingClientRect(); 
5635            x= size.x; 
5636            y = size.y; 
5637            width = size.width; 
5638            height = size.height; 
5639        }; 
5640        elem.onmousemove = e =>{ 
5641            const horizontal = (e.clientX - x) / width*100; 
5642            const vertical = (e.clientY - y) / height*100; 
5643            elem.style.setProperty('--x', horizontal + '%'); 
5644            elem.style.setProperty('--y', vertical + '%'); 
5645        }; 
5646    }); 
5647 
5648    // Click na galeria de imagem 
5649    $('.detalheContainerImg img').on('click', function(){ 
5650        // $('.detalheContainerImg img').css("border","none"); 
5651        $('.detalheContainerImg img').removeClass("selectedImage"); 
5652        var src = $(this).attr('src'); 
5653        // $(this).css("border","5px solid #F6921E"); 
5654        $(this).addClass("selectedImage"); 
5655        $('.img-zoom-container .img-responsive').attr('src',src); 
5656    }) 
5657 
5658    let valorLivro = 0; 
5659    if ($('.price-wrapper-desktop .price-value').html()) { 
5660        valorLivro = parseFloat($('.price-wrapper-desktop .price-value').html().substr(4).replace(',', '.')); 
5661
5662 
5663    var storageAutores = []; 
5664    $('.abaAutores > .jsonAutores > root > value').each((i) => { 
5665        var storageAutor = $('.abaAutores > .jsonAutores > root:eq(' + i + ') > value').html(); 
5666        storageAutores.push(JSON.parse(storageAutor)); 
5667    }) 
5668 
5669    var arrAutores = [] 
5670    var countAutor = $('.abaAutores > root > value').length; 
5671    $('.abaAutores > root > value').each(() => { 
5672        var autores = $('.abaAutores > root:eq(' + i + ') > value').html().split(','); 
5673        $('.abaAutores > root:eq(' + i + ') > value').text(''); 
5674        $('.acDescricaoLi > p > root:eq(' + i + ') > value').text(''); 
5675        for (z = 0; z < autores.length; z++) { 
5676            arrAutores.push('<p id="autorPgDetalheLivro" data-id="' + autores[z] + '"><a href="#' + autores[z] + '">' + autores[z] + '</a></p>'); 
5677
5678        $('.abaAutores > root:eq(' + i + ') > value').append(arrAutores); 
5679        $('.acDescricaoLi > p > root:eq(' + i + ') > value').append(arrAutores); 
5680    }) 
5681    $('#spec-tab').on('click', () => { 
5682        $('.jsonAutores').css('display', 'none'); 
5683    }) 
5684 
5685    $('p#autorPgDetalheLivro').on('click', () => { 
5686        $('#voltarAutores').css('visibility', 'visible'); 
5687        $('#voltarAutoresMob').css('display', 'block'); 
5688        var nomeAutor = $(this).attr('data-id'); 
5689        $('.abaAutores').css('display', 'none'); 
5690        $('.acDescricaoLi:eq(1)').css('visibility', 'hidden'); 
5691        var nomeAutor = $(this).attr('data-id').trim(); 
5692        for (i = 0; i < storageAutores.length; i++) { 
5693            if (nomeAutor == storageAutores[i].nomeAutor) { 
5694                $('#spec').append('<div class="biografiaContainer"></div><div class="bioContainer"></div>' + 
5695                    '<div class="row biografiaLinha"><div class="col-2"><h6 class="nomeAutorPaginaLivro">' + storageAutores[i].nomeAutor + '</h6><img src="' + storageAutores[i].foto + 
5696                    '"/></div>' + 
5697                    '<div class="col-9 biografiaAutor">' + storageAutores[i].biografia + 
5698                    '</div></div></div><div class="biografiaContainer"></div>' 
5699                ); 
5700                $('<div class="bioContainer" style="margin-top:-180px"><div class="row"><div class="col-8 offset-2 nomeAutorMobile"><h5><i class="fas fa-chalkboard-teacher"></i>' + storageAutores[i].nomeAutor + '</h5></div></div>' + 
5701                    '<div class="row"><div class="col-11 offset-1 biografiaAutorMobile"><img src="' + storageAutores[i].foto + 
5702                    '"/>' + storageAutores[i].biografia + 
5703                    '</div></div></div>' 
5704                ).insertAfter('.acDescricaoLi:eq(1)'); 
5705
5706
5707    }) 
5708 
5709    $('#voltarAutores').on('click', () => { 
5710        $(this).css('visibility', 'hidden'); 
5711        $('.bioContainer').css('display', 'none'); 
5712        $('.biografiaContainer').remove(); 
5713        $('.biografiaLinha').css('display', 'none'); 
5714        $('.abaAutores').css('display', 'block'); 
5715    }) 
5716    $('#voltarAutoresMob').on('click', () => { 
5717        $(this).css('display', 'none'); 
5718        $('.bioContainer').css('display', 'none'); 
5719        $('.acDescricaoLi:eq(1)').css('visibility', 'visible'); 
5720    }) 
5721 
5722    $('.btnShareMob').click(() => { 
5723        navigator.share({ 
5724            title: document.title, 
5725            url: themeDisplay.getCanonicalURL() 
5726        }); 
5727    }); 
5728 
5729    $('.tabsDescricaoAutor > div > div > ul > li:eq(0)').on('click',() => { 
5730        $(this).find('i').css('visibility', 'visible'); 
5731        $('.tabsDescricaoAutor > div > div > ul > li:eq(0)').addClass('abaAtiva'); 
5732        $('.tabsDescricaoAutor > div > div > ul > li:eq(1)').removeClass('abaAtiva') 
5733        $('.tabsDescricaoAutor > div > div > ul > li:eq(1)').find('i.fa-play').css('visibility', 'hidden'); 
5734    }) 
5735 
5736    $('.tabsDescricaoAutor > div > div > ul > li:eq(1)').on('click',() => { 
5737        $(this).find('i').css('visibility', 'visible'); 
5738        $('.tabsDescricaoAutor > div > div > ul > li:eq(1)').addClass('abaAtiva') 
5739        $('.tabsDescricaoAutor > div > div > ul > li:eq(0)').removeClass('abaAtiva') 
5740        $('.tabsDescricaoAutor > div > div > ul > li:eq(0)').find('i.fa-play').css('visibility', 'hidden'); 
5741    }) 
5742 
5743 
5744    $('#freteDetalheLivro,#freteDetalheLivroMob').on('keypress blur', function() { 
5745        var cep = $(this).val(); 
5746        if(cep.length > 8){ 
5747            cep = cep.replace('-', ''); 
5748            var freteDesktop = $('#freteDetalheLivro').val() 
5749            var freteMobile = $('#freteDetalheLivroMob').val() 
5750            var body = { 
5751                "nCdEmpresa": "", 
5752                "sDsSenha": "", 
5753                "nVlDiametro": 29, 
5754                "nVlPeso": "1", 
5755                "sCdMaoPropria": "N", 
5756                "nVlLargura": 11, 
5757                "nVlComprimento": 16, 
5758                "sCdAvisoRecebimento": "N", 
5759                "nCdServico": "04510", 
5760                "sCepDestino": cep, 
5761                "sCepOrigem": "01041000", 
5762                "nVlValorDeclarado": 99.9, 
5763                "nCdFormato": 1, 
5764                "nVlAltura": 2 
5765
5766            var url = "${themeDisplay.getURLPortal()}/sync-dxp/correios/calcPrecoPrazo" 
5767            $.ajax({ 
5768                contentType: "application/json", 
5769                headers: { 
5770                    "x-csrf-token": Liferay.authToken, 
5771                    "accept": "application/json" 
5772                }, 
5773                data: JSON.stringify(body), 
5774                method: "POST", 
5775                url: url, 
5776                success: (response) => { 
5777                    let valorExibido = 'R$ 8,90'; 
5778                    if (valorLivro >= 100) { 
5779                        valorExibido = 'R$ 0,00'; 
5780
5781                    let label = response.servicos.cservico[0].prazoEntrega + ' dias' 
5782                    $('.calcFretePrazoContainer').fadeIn('slow'); 
5783                    $('.consulteCEP').css('visibility', 'hidden'); 
5784                    $('.valuesFretes > div:nth-child(2)').text(valorExibido); 
5785                    $('.valuesFretes > div:nth-child(1)').text(label); 
5786                    $('.nav-tabs').attr('style', 'margin-top:30px !important'); 
5787
5788            }); 
5789
5790    }); 
5791 
5792    $('.lineAccorionDescricao > div > ul > li:eq(0)').on('click',() => { 
5793        if ($(this).hasClass("abaActiveAccordion")) { 
5794            $(this).removeClass("abaActiveAccordion"); 
5795            $('.lineAccorionDescricao > div > ul > li:eq(0) > label ~ .linhaAccordionAtivo').css('display', 'none'); 
5796            $('.lineAccorionDescricao > div > ul > li:eq(0) > label ~ .linhaAccordionAtivo ~ i').css('display', 'none'); 
5797            $('.lineAccorionDescricao > div > ul > li:eq(0) > label').attr('style', 'background: #FFFFFF;color:#78849E !important;'); 
5798            return false; 
5799        } else { 
5800            $(this).addClass('abaActiveAccordion'); 
5801            $('.lineAccorionDescricao > div > ul > li:eq(0) > label ~ .linhaAccordionAtivo').css('display', 'block'); 
5802            $('.lineAccorionDescricao > div > ul > li:eq(0) > label ~ .linhaAccordionAtivo ~ i').css('display', 'block'); 
5803            $('.lineAccorionDescricao > div > ul > li:eq(0) > label').attr('style', 'background: #F8F8F8 !important;color:#454F63 !important'); 
5804            return false; 
5805
5806    }); 
5807 
5808    $('.lineAccorionDescricao > div > ul > li:eq(1)').on('click',() => { 
5809 
5810        if ($(this).hasClass("abaActiveAccordion")) { 
5811            $(this).removeClass("abaActiveAccordion"); 
5812            $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo').css('display', 'none'); 
5813            $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo ~ i').css('display', 'none'); 
5814            $('.lineAccorionDescricao > div > ul > li:eq(1) > label').attr('style', 'background: #FFFFFF;color:#78849E !important;'); 
5815            return false; 
5816        } else { 
5817            $(this).addClass('abaActiveAccordion'); 
5818            $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo').css('display', 'block'); 
5819            $('.lineAccorionDescricao > div > ul > li:eq(1) > label ~ .linhaAccordionAtivo ~ i').css('display', 'block'); 
5820            $('.lineAccorionDescricao > div > ul > li:eq(1) > label').attr('style', 'background: #F8F8F8 !important;color:#454F63 !important'); 
5821            return false; 
5822
5823    }); 
5824 
5825    if ($('.buy-mobile-wrapper').length >= 1) { 
5826        $('body').append($('.buy-mobile-wrapper')); 
5827
5828 
5829    $('.js-formasPagamentoTitleMobile').on('click', function() { 
5830        $('.js-opcoesPagamentoDetalheLivroMobile').fadeToggle(100); 
5831    }); 
5832 
5833    $('[data-tab-target]').on('click', function() { 
5834        $('[data-tab-target]:not([data-tab-target = ' + $(this).attr('data-tab-target') + '])').removeClass('active'); 
5835        $(this).toggleClass('active'); 
5836        let selector = '[data-tab-id=' + $(this).attr('data-tab-target') + ']'; 
5837        $('[data-tab-id]:not(' + selector +')').slideUp(100); 
5838        $(selector).slideToggle(100); 
5839    }); 
5840 
5841    if ($('.slider4').length >= 1 && !$('.slider4').prev().hasClass('titulo-slider4')) { 
5842        $(`<div class="background-right titulo-slider4"><a href="\rita-lobo">Livros que você pode gostar&nbsp;</a><i class="fas fa-circle circulo-laranja" aria-hidden="true"></i></div>`).insertBefore('.slider4'); 
5843
5844 
5845    let autor; 
5846    try { 
5847        const raw = '${autor?js_string}'; 
5848        autor = JSON.parse(raw); 
5849    } catch (err) { 
5850        console.error("Não foi possível carregar o autor", err); 
5851
5852    var autores = ''; 
5853 
5854    try { 
5855        for (let i = 0; i < autor.length; i++) { 
5856            autores += autor[i].nomeAutor; 
5857            if (i !== autor.length-1) { 
5858                autores += ', '; 
5859
5860
5861        $('.autorDetalheLivro').append($('<span>'+autores+'</span>')); 
5862    } catch (err) { 
5863        console.error(err); 
5864
5865 
5866    $('.mobile-only .price').html($('.price-wrapper-desktop .price-value').html().substr(2)); 
5867    $('.precoMobile').html($('.price-wrapper-desktop .price-value').html().substr(4)); 
5868 
5869    let firstImage = $('.detalheContainerImg img').first(); 
5870    firstImage.addClass('selectedImage'); 
5871    $('head').append('<meta property="og:image" content="' + Liferay.ThemeDisplay.getPortalURL() + firstImage.attr('src').trim() + '" />'); 
5872    $('.img-zoom-container .img-responsive').attr('src', firstImage.attr('src')); 
5873 
5874    //Cálculo de frete na página de detalhe do livro 
5875    window.addEventListener('load', function() { 
5876        $('#freteDetalheLivro,#freteDetalheLivroMob').mask('00000-000'); 
5877    }); 
5878 
5879 
5880    //ebooks 
5881    var ebook; 
5882 
5883    //exemplo para testes 
5884    /*ebook = [ 
5885
5886            "codigo": "10013", 
5887            "codCli": 11056, 
5888            "apelido": "KOBO LIVROS DO BRASIL LTDA", 
5889            "nome": "KOBO LIVROS DO BRASIL LTDA", 
5890            "url": "https://store.kobobooks.com/pt-BR/Search?Query=9788539607464" 
5891        }, 
5892
5893            "codigo": "10013", 
5894            "codCli": 32316, 
5895            "apelido": "APPLE COMPUTER BRASIL LT", 
5896            "nome": "APPLE COMPUTER BRASIL LT", 
5897            "url": "https://books.apple.com/br/book/id1292379174" 
5898        }, 
5899
5900            "codigo": "10013", 
5901            "codCli": 10818, 
5902            "apelido": "(MATRIZ)AMAZON SERV.DE VAREJO DO BRASIL LTDA.", 
5903            "nome": "AMAZON SERVICOS DE VAREJO DO BRASIL LTDA", 
5904            "url": "https://www.amazon.com.br/s?k=9788539607464&i=digital-text" 
5905        }, 
5906
5907            "codigo": "10013", 
5908            "codCli": 9168, 
5909            "apelido": "GOOGLE, INC.", 
5910            "nome": "GOOGLE INC", 
5911            "url": "https://play.google.com/store/books/details?id=ISBN_9788539607464" 
5912
5913    ]*/ 
5914 
5915    //capitaliza string 
5916    function capitalizeTitle(title) { 
5917        title = title.toLowerCase().split(' '); 
5918        for (let i in title) { 
5919            let word = title[i].slice(1); 
5920            let capital = title[i].charAt(0).toUpperCase(); 
5921            title[i] = capital + word; 
5922
5923        title = title.join(' '); 
5924        return title; 
5925
5926 
5927    try { 
5928        ebook = JSON.parse('${ebook}'); 
5929        for (let i = 0; i < ebook.length; i++) { 
5930            if (Array.isArray(ebook[i])) { 
5931                ebook[i] = Object.fromEntries(ebook[i]); 
5932
5933
5934 
5935        for (let i in ebook) { 
5936            let nome = ebook[i].nome.toLowerCase().split(' ')[0]; 
5937            switch (nome) { 
5938                case 'amazon': 
5939                    ebook[i].ordem = 1; 
5940                    break; 
5941 
5942                case 'kobo': 
5943                    ebook[i].ordem = 2; 
5944                    break; 
5945 
5946                case 'apple': 
5947                    ebook[i].ordem = 3; 
5948                    break; 
5949 
5950                case 'google': 
5951                    ebook[i].ordem = 4; 
5952                    break; 
5953 
5954                case 'wook': 
5955                    ebook[i].ordem = 5; 
5956                    break; 
5957 
5958                default: 
5959                    ebook[i].ordem = 10; 
5960                    break; 
5961
5962
5963 
5964        //remove ebooks duplicados 
5965        let jsonEbook = ebook.map(JSON.stringify); 
5966        let uniqueSet = new Set(jsonEbook); 
5967        ebook = Array.from(uniqueSet).map(JSON.parse); 
5968 
5969        //ordena ebooks 
5970        ebook = ebook.sort((a, b) => a.ordem - b.ordem); 
5971    } catch (err) { 
5972        // console.error('Não foi possível carregar o ebook'); 
5973        $('.ebooksContainer').css('display', 'none'); 
5974        $('.freteContainer ').css('padding-bottom', '60px'); 
5975
5976 
5977    if (typeof ebook !== 'undefined' && ebook.length > 0) { 
5978        ebook.forEach((e, i) => { 
5979            let nome = e.nome; 
5980            if (!nome) { 
5981                nome = ""; 
5982
5983            nome = nome.toLowerCase(); 
5984            let nomeValido = !!!~(nome.indexOf('cultura')) 
5985                && !!!~(nome.indexOf('serviço nacional de aprendizagem comercial')); 
5986            let icone = ''; 
5987            let marca = ''; 
5988            let nomePrimeiro = nome.split()[0]; 
5989            let nomeKindle = !!~(nomePrimeiro.indexOf('kindle')) || !!~(nomePrimeiro.indexOf('amazon')); 
5990            let nomeGoogle = !!~(nomePrimeiro.indexOf('google')); 
5991            let nomeApple = !!~(nomePrimeiro.indexOf('apple')); 
5992            let nomeKobo = !!~(nomePrimeiro.indexOf('kobo')); 
5993            let nomeWook = !!~(nomePrimeiro.indexOf('wook')); 
5994 
5995            //determina icone, nome e marca de forma correta 
5996            if (nomeKindle) { 
5997                icone = "<i class='fab fa-amazon'></i>"; 
5998                marca = "Amazon"; 
5999                nome = "Kindle"; 
6000            } else if (nomeGoogle) { 
6001                icone = "<i class='fab fa-google'></i>"; 
6002                marca = "Google"; 
6003                nome = "Google Livros"; 
6004            } else if (nomeApple) { 
6005                icone = "<i class='fab fa-apple' style='font-size: 1.2rem; line-height: 0.8;'></i>"; 
6006                marca = "Apple"; 
6007                nome = "Apple Books"; 
6008            } else if (nomeKobo) { 
6009                icone = ` 
6010                        <svg id="Camada_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 234.8 234.7"> 
6011                            <defs> 
6012                                <style>.cls-1{fill:#4e4e4e;}</style> 
6013                            </defs> 
6014                            <path class="cls-1" d="M117.6,78.3h-15.7v39.1h15.7c10.7,0,19.6-8.8,19.6-19.6-.1-10.8-8.9-19.5-19.6-19.5Z"/> 
6015                            <path class="cls-1" d="M117.4,0C52.5,0,0,52.5,0,117.4s52.5,117.3,117.4,117.3,117.4-52.5,117.4-117.3c0-64.8-52.5-117.4-117.4-117.4Zm30.9,180.5l-29.4-39.1h-17v39.1h-23.9V54.4h39.6c24,0,43.5,19.5,43.5,43.4,0,14.7-7.3,27.5-18.3,35.5l35.4,47.2h-29.9Z"/> 
6016                        </svg> 
6017                    `; 
6018                marca = "Rakuten"; 
6019                nome = "Kobo"; 
6020            } else if (nomeWook) { 
6021                icone = ` 
6022                        <svg id="Camada_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1330.16 1330.16"> 
6023                            <defs> 
6024                                <style>.cls-1{fill:#4e4e4e;}</style> 
6025                            </defs> 
6026                            <path class="cls-1" d="M665.08,0C297.77,0,0,297.77,0,665.08s297.77,665.08,665.08,665.08,665.08-297.77,665.08-665.08S1032.4,0,665.08,0Zm443.75,866.75c-69.63,66.06-162.72,93.06-245.03,107.51-69.15,12.14-149.27-39.46-218.82-28.05-73.79,12.1-141.41,50.16-222.1,29.66-113.5-28.83-197.11-89.78-230.39-203.74-38.28-131.08-26.37-257.65,65.84-365.29,36.51-42.62,85.74-75.32,146.23-49.12,63.76,27.61,73.12,85.71,63.25,145.97-7.68,46.88-27.27,91.82-34.74,138.72-7.78,48.86-2.36,96.38,41.61,109.68,26.19-67.17,42.89-135.84,79.24-191.73,16.77-25.78,71.78-36.08,109.78-36.84,102.85-2.05,139.7,56.4,153.93,228.1,10.22,5.68,23,2.1,28.95-7.97,13.79-23.38,30.05-46.81,29.56-69.88-1.04-48.9-17.54-97.85-30.42-146.01-17.76-66.36-10.52-124.98,50.68-164.81,47.26-30.77,110.27-10.41,163.51,51.04,21.72,25.06,38.8,54.14,61.63,86.55,0,0,61.2,133.8,59.86,181.57-1.39,49.58-36.58,150.51-72.57,184.65Z"/> 
6027                        </svg> 
6028                    `; 
6029                marca = "Wook"; 
6030                nome = "Wook"; 
6031
6032 
6033            //formata titulo de forma correta 
6034            nome = capitalizeTitle(nome); 
6035 
6036            if (nomeValido) { 
6037                $('.ebooksContentContainer').append(` 
6038                        <div class="ebooksContentItem"> 
6039                            <div class="ebooksContentIcon">`+icone+`</div> 
6040                            <div class="ebooksContentTitle"> 
6041                                <a class="ebooksContentTitleLink" target="_blank" href="`+e.url+`"> 
6042                                    <p class="ebooksContentTitleName"><strong>`+nome+`</strong></p> 
6043                                    <p class="ebooksContentTitleStore">`+marca+`</p> 
6044                                </a> 
6045                            </div> 
6046                        </div> 
6047                    `); 
6048                if (i !== ebook.length-1) { 
6049                    $('.ebooksContentContainer').append(`<hr class="ebooksContentLine">`); 
6050
6051
6052        }) 
6053        $('.container.mobile-only.pagamentoCepWrapper').addClass('hasEbook'); 
6054
6055 
6056 
6057    //Exibe/esconde links dos ebooks 
6058    $('.ebooksTitleContainer').on('click', () => { 
6059        $('.ebooksChevron').toggleClass('rotate'); 
6060        if ($('.ebooksChevron').hasClass('rotate')) { 
6061            $('.ebooksChevron').css('transform', 'rotate(90deg)'); 
6062        } else { 
6063            $('.ebooksChevron').css('transform', 'rotate(0deg)'); 
6064
6065 
6066        $('.ebooksContentContainer').toggle('hidden'); 
6067    }); 
6068 
6069    function sendViewItem(definition){ 
6070        const url = getProductsUrl(definition) 
6071        $.ajax({ 
6072            url:url, 
6073            method:'get', 
6074        }).done( 
6075            function(data){ 
6076 
6077                itensEcommerce = criaItensEcommerce(data.products); 
6078                sendEventEcommerce("view_item", Array.from(itensEcommerce.values()), "BRL"); 
6079            }); 
6080
6081 
6082</script> 

Editor de produto

Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> serviceLocator.findService("br.senac.sp.editora.services.service.ProductService")  [in template "20102#20129#43698964" at line 13, column 27]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign productService = serviceLocat...  [in template "20102#20129#43698964" at line 13, column 1]
----
1<#setting locale="pt_BR"> 
2 
3<#assign assetentry = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
4<#assign assetCategoryRel = serviceLocator.findService("com.liferay.asset.entry.rel.service.AssetEntryAssetCategoryRelLocalService") /> 
5<#assign assetCategory = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") /> 
6<#assign contentHelper = serviceLocator.findService("com.liferay.commerce.product.content.util.CPContentHelper") /> 
7<#assign CPDefinitionHelper = serviceLocator.findService("com.liferay.commerce.product.util.CPDefinitionHelper") /> 
8<#assign friendlyURLEntryLocalService = serviceLocator.findService("com.liferay.friendly.url.service.FriendlyURLEntryLocalService")> 
9 
10<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")> 
11<#assign warehouseService = serviceLocator.findService("com.liferay.commerce.inventory.service.CommerceInventoryWarehouseItemLocalService") /> 
12<#assign companyId =  userLocalService.getUser(themeDisplay.getUserId()).getCompanyId() /> 
13<#assign productService = serviceLocator.findService("br.senac.sp.editora.services.service.ProductService") /> 
14 
15<div class="slider4"> 
16    <#if entries?has_content> 
17        <#list entries as curCPCatalogEntry> 
18            <#if curCPCatalogEntry?counter < 12> 
19                <#assign friendlyURL = CPDefinitionHelper.getFriendlyURL(curCPCatalogEntry.getCPDefinitionId(),themeDisplay)> 
20                <div class="imgContainerEspecialCarrossel4"> 
21                    <a href="${friendlyURL}"> 
22                        <#assign cpMedia = contentHelper.getImages(curCPCatalogEntry.getCPDefinitionId(), themeDisplay) /> 
23                        <#assign defaultImage = "/documents/d/editora-senac/liferay_logo" /> 
24                        <#assign productImage = defaultImage /> 
25                        <#list cpMedia as media> 
26                          <#if media.getURL()?has_content && (media.getTitle()?? && media.getTitle()?contains("small"))> 
27                        <#assign productImage = media.getURL() /> 
28                        <#break> 
29                    </#if> 
30                </#list> 
31                  <#if productImage == defaultImage> 
32                     <#list cpMedia as media> 
33                     <#if media.getURL()?has_content> 
34                        <#assign productImage = media.getURL() /> 
35                        <#break> 
36                    </#if> 
37                  </#list> 
38                </#if> 
39                   <img src="${productImage}" onerror="this.onerror=null;this.src='${defaultImage}';" /> 
40                 </a> 
41                    <div class="informacoesProdutoCarrossel4"> 
42                      <a href="${friendlyURL}"> 
43                      <div class="infoSuperiores"> 
44                          <div class="tituloEspecialCarrossel4"> 
45                           ${curCPCatalogEntry.name?truncate(60, '...')} 
46                          </div> 
47                          <div class="autorEspecialCarrossel4">   
48                            <#list contentHelper.getCategorizedCPDefinitionSpecificationOptionValues(curCPCatalogEntry.getCPDefinitionId(),43620166) as specs>     
49                                <#if specs.CPSpecificationOptionId == 43594743> 
50                                    <#assign autor = specs.getValueCurrentValue() /> 
51                                        ${autor?truncate(45, '...')} 
52                                    <#break> 
53                                </#if> 
54                            </#list> 
55                          </div> 
56                      </div> 
57                      </a> 
58                      <div class="valorCarrossel4"> 
59                        <@liferay_commerce_ui["price"] 
60                            CPCatalogEntry=curCPCatalogEntry 
61                        /> 
62                    </div> 
63                    <div class="espiarCarrossel4"> 
64                      <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() ) > 
65                          <span class="comprarCarrossel4" data-sku="${curCPCatalogEntry.CPSkus[0].getSku()}"> 
66                             <#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] /> 
67                             <#assign id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + curCPCatalogEntry.CPSkus[0].getSku() /> 
68                             
69                            <#list curCPCatalogEntry.getCPSkus() as skus> 
70                              <@liferay_commerce_ui["add-to-cart"] 
71                      CPInstanceId=skus.getCPInstanceId() 
72                                        id=id 
73                    />                      
74                              </#list>                     
75                     
76             
77                                                         
78                          </span> 
79                      <#else> 
80                        <span class="comprarCarrossel4"> 
81                         <button class="btnIndisponivelEspecialCarrossel4" disabled>Livro Indisponível</button> 
82                        </span> 
83                      </#if> 
84                    </div> 
85                    </div> 
86                </div> 
87            <#elseif curCPCatalogEntry?counter == 12> 
88                <!-- Ver Mais --> 
89                <div class="customCart"> 
90                    <#assign asset = assetentry.getEntry('com.liferay.commerce.product.model.CPDefinition',entries[0].getCPDefinitionId())/> 
91                    <#assign relateds = assetCategoryRel.getAssetEntryAssetCategoryRelsByAssetEntryId(asset.getEntryId())/> 
92                    <#if (currentURL?contains("catalogo?"))> 
93                        <#assign category = assetCategory.getAssetCategory(relateds[0].assetCategoryId)/> 
94                    <#else> 
95                        <#if relateds?has_content> 
96                            <#assign category = assetCategory.getAssetCategory(relateds[1].assetCategoryId)/> 
97                        </#if>   
98                    </#if>   
99                     
100                    <#if category?has_content> 
101                        <!-- classId de Category --> 
102                        <#assign friendlyURL = friendlyURLEntryLocalService.getMainFriendlyURLEntry(20013, category.categoryId)> 
103                    <#else> 
104                        <#assign friendlyURL = ""> 
105                    </#if>   
106                    <div class="verMaisCard"> 
107                        <div class="verMaisCardContent"> 
108                            <i class="fas fa-books fa-2x"></i> 
109                            <div>    
110                            <div class="background-left2"><i class="fas fa-circle circulo auxCirc" aria-hidden="true"></i>&nbsp;</div> 
111                            </div> 
112                            <span class="text">Quer mais livros dessa área?</span> 
113                            <span class="ancora"> 
114                             <#if friendlyURL?has_content> 
115                                <#assign categoryUrl = themeDisplay.getURLPortal() + '/categoria/' + friendlyURL.getUrlTitle(locale)/> 
116                                <a class="ancora-aux" href="${categoryUrl}">Confira todos</a></a> 
117                            </#if> 
118                            <!-- --> 
119                            <#assign entryName = entry.name?lower_case> 
120                            <#assign entryNameFormatted = entryName?replace(' ', '-')> 
121                            </span> 
122                            <div>    
123                                <div class="background-right2">&nbsp;<i class="fas fa-circle circulo auxCirc" aria-hidden="true"></i></div> 
124                            </div> 
125                        </div> 
126                    </div> 
127                </div> 
128                <#break> 
129            </#if> 
130        </#list> 
131    </#if> 
132</div> 
133 
134<style> 
135   
136.comprarCarrossel4 { 
137  margin-top: 0px; 
138
139 
140.comprarCarrossel4  div.form-group { 
141  display: none; 
142}  
143    .slider4 { 
144        display: none; 
145
146    .informacoesProdutoCarrossel4 span.commerce-discount { 
147        display: none; 
148
149     
150    .comprarCarrossel4 .add-to-cart-quantity-marker.active { 
151        opacity: 0; 
152        display: none; 
153
154 
155    .comprarCarrossel4  form.quantity-selector { 
156        display: none; 
157
158 
159    .comprarCarrossel4 .add-to-cart button.btn-add-to-cart{ 
160        background-color: #5ACC75; 
161        border-radius: 4px; 
162        width: 206px; 
163        padding: 1px; 
164        justify-content: center;  
165        padding-left: 13%; 
166
167   
168  .comprarCarrossel4 span.price-value-final { 
169     color: #D2691E !important; 
170
171   
172  .comprarCarrossel4 .btnIndisponivelEspecialCarrossel4 { 
173      margin-top: 0.75rem !important; 
174
175   
176    .comprarCarrossel4 .add-to-cart button.btn-add-to-cart{ 
177      background-color: #5ACC75 !important; 
178
179  
180    .informacoesProdutoCarrossel4 .product-price { 
181        font: normal normal bold 16px/17px Montserrat; 
182
183     
184    .slick-dots { 
185      z-index: 2; 
186
187 
188    @media (max-width: 1200px) { 
189      	.slick-dots { 
190            width: 100vw !important; 
191
192
193     
194    @media (min-width: 1023px) { 
195        .slick-dotted.slick-slider { 
196             
197
198        .slider4 { 
199            width: 1093px !important; 
200
201
202     
203    @media (max-width: 813px) { 
204        .divEspiarCarrossel4 { 
205            margin-top: 30px !important; 
206
207         
208         
209        .divValorCarrossel4 { 
210            margin-top: 15px !important; 
211
212
213     
214    @media (max-width: 768px) { 
215        .slider2 .next-arrow { 
216            right: 18px; 
217
218         
219        .slider2 .prev-arrow { 
220            left: 18px; 
221
222         
223        .slider2 .slide-arrow .fa { 
224            font-size: 22px; 
225            font-weight: 400; 
226
227 
228        .slider4 .valorCarrossel4 { 
229          margin-top: 5px; 
230
231 
232        .slider4 .espiarCarrossel4 { 
233          position: relative; 
234          top: -10px; 
235
236 
237        .valorCarrossel4 .price:not(.compact) .price-value { 
238            font: normal 600 18px/17px Montserrat !important; 
239
240        .valorCarrossel4 { 
241            position: relative; 
242            z-index: 9999; 
243            display: flex; 
244            padding-top: 25px; 
245            align-items: flex-end; 
246
247        .valorCarrossel4 .price-value { 
248            margin-left: 0!important; 
249
250        .comprarCarrossel4 .btn-add-to-cart { 
251          margin: 0 !important; 
252          padding-top: 2px !important; 
253
254        .comprarCarrossel4 .btn-add-to-cart::before { 
255          font-size: 16px; 
256
257 
258        .valorCarrossel4:not(.slider4semextracard .valorCarrossel4) { 
259          margin-top: 0!important; 
260          padding-top: 0!important; 
261
262        .slider4 .informacoesProdutoCarrossel4:not(.slider4semextracard) { 
263          top: unset; 
264          bottom: 4%; 
265
266 
267
268     
269    @media (max-width: 600px) { 
270      .comprarCarrossel4 button.btn.btn-primary { 
271        padding-left: 1px; 
272        height: 30px; 
273
274 
275      .btn-add-to-cart-inline::before { 
276        font-size: 14px; 
277        width: 100%; 
278        text-align: center; 
279        display: block; 
280
281
282     
283    .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 { 
284        display: flex; 
285        align-items: flex-end; 
286
287     
288    .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .price { 
289        order: 1; 
290        margin-top: 0!important; 
291        margin-right: 2px; 
292
293     
294    .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .parceladoCarrossel4 { 
295        order: 2; 
296
297     
298    .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .parceladoCarrossel4 + .price { 
299        margin-right: 5px; 
300
301     
302    .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .product-price { 
303        order: 3; 
304        margin-top: 0; 
305
306     
307    @media (max-width: 414px){ 
308        .slider4 { 
309            width: 100vw !important; 
310            /* margin-right: 0; */ 
311            margin-right: 20px; 
312            margin-left: 20px; 
313
314
315</style> 
316   
317<script> 
318  setTimeout(function(){ 
319    $(document).ready(function() { 
320      $('.slider4').slick({ 
321        arrows: true, 
322        slidesToShow: 4, 
323        slidesToScroll: 4, 
324        dots:true, 
325        infinite: false, 
326        prevArrow: '<a href="#" class="slide-arrow prev-arrow"><i class="fa fa-chevron-left gray"></i></a>', 
327        nextArrow: '<a href="#" class="slide-arrow next-arrow"><i class="fa fa-chevron-right gray"></i></a>', 
328        speed: 1000,  
329        index: 2, 
330        lazyLoad: 'ondemand', 
331        focusOnSelect:false, 
332        accessibility:false, 
333        adaptiveHeight:false, 
334        autoplay:false, 
335        responsive: [{ 
336          breakpoint: 1200, 
337          settings: { 
338            slidesToShow: 4, 
339            slidesToScroll: 4, 
340            variableWidth: true, 
341            infinite: false, 
342            centerMode: false, 
343            dots:true, 
344            arrows: true 
345
346        }, { 
347          breakpoint: 768, 
348          settings: { 
349            slidesToShow: 1, 
350            slidesToScroll: 1, 
351            variableWidth: true, 
352            infinite: false, 
353            centerPadding: 0, 
354            centerMode: false, 
355            dots:false, 
356            arrows: true 
357
358        }] 
359      }); 
360 
361      sendViewItemList([<#list entries as curCPCatalogEntry>${curCPCatalogEntry.getCPDefinitionId()},</#list>]) 
362    }); 
363     
364    const slider4 = document.getElementsByClassName("slider4"); 
365    for (let i = 0; i < slider4.length; i++) { 
366      slider4[i].style.display ='block'; 
367
368     
369    if (typeof promoPrice !== 'undefined') { 
370        promoPrice = document.getElementsByClassName("price"); 
371
372      else { 
373        promoPrice = document.getElementsByClassName("price"); 
374
375   
376      for (let i = 0; i < document.getElementsByClassName("price").length; i++) { 
377        let carrossel = document.getElementsByClassName("price"); 
378        if(carrossel[i].children.length < 5) { 
379          if(carrossel[i].children[0]) 
380            carrossel[i].children[0].innerText = "Por:" 
381 
382          if(carrossel[i].children[1]) { 
383            carrossel[i].children[1].style.color = "#F6921E" 
384            carrossel[i].children[1].style.marginLeft = ".5rem" 
385
386          carrossel[i].style.marginTop = "24px" 
387
388        else if (carrossel[i].children.length > 7){ 
389          carrossel[i].children[0].innerHTML = "<del>De:</del>" 
390          carrossel[i].children[0].style.color = "#78849e" 
391          carrossel[i].children[1].classList.remove("price-value-inactive") 
392          let priceBefore = carrossel[i].children[1].innerText 
393          carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>' 
394          carrossel[i].children[1].style.color = "#78849e" 
395                   
396          carrossel[i].children[2].style.display = "none" 
397          carrossel[i].children[3].style.display = "none" 
398          carrossel[i].children[4].innerText = "Por:" 
399          carrossel[i].children[5].style.display = "none" 
400          carrossel[i].children[6].style.display = "none" 
401          carrossel[i].children[7].style.color = "#F6921E" 
402          carrossel[i].children[7].style.marginLeft = ".5rem" 
403          carrossel[i].style.marginTop = "10px" 
404
405        else { 
406          carrossel[i].children[0].innerHTML = "<del>De:</del>" 
407          carrossel[i].children[0].style.color = "#78849e" 
408          carrossel[i].children[1].classList.remove("price-value-inactive") 
409          let priceBefore = carrossel[i].children[1].innerText 
410          carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>' 
411          carrossel[i].children[1].style.color = "#78849e" 
412          carrossel[i].children[2].style.display = "none" 
413          carrossel[i].children[3].style.display = "none" 
414          carrossel[i].children[4].innerText = "Por:" 
415          carrossel[i].children[5].style.color = "#F6921E" 
416          carrossel[i].children[5].style.marginLeft = ".5rem" 
417          carrossel[i].style.marginTop = "10px" 
418
419
420  }, 1500); 
421   
422   
423   
424</script> 

Editor de produto

Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> serviceLocator.findService("br.senac.sp.editora.services.service.ProductService")  [in template "20102#20129#43699000" at line 6, column 27]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign productService = serviceLocat...  [in template "20102#20129#43699000" at line 6, column 1]
----
1<#setting locale="pt_BR"> 
2 
3<#assign commerceOrderLocalService = serviceLocator.findService("com.liferay.commerce.service.CommerceOrderLocalService")> 
4<#assign contentHelper = serviceLocator.findService("com.liferay.commerce.product.content.util.CPContentHelper") /> 
5<#assign definitionHelper = serviceLocator.findService("com.liferay.commerce.product.util.CPDefinitionHelper") /> 
6<#assign productService = serviceLocator.findService("br.senac.sp.editora.services.service.ProductService") /> 
7<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")> 
8<#assign warehouseService = serviceLocator.findService("com.liferay.commerce.inventory.service.CommerceInventoryWarehouseItemLocalService") /> 
9<#assign companyId =  userLocalService.getUser(themeDisplay.getUserId()).getCompanyId() /> 
10 
11<div class="slider4 slider4semextracard"> 
12    <#if entries?has_content> 
13        <#list entries as curCPCatalogEntry> 
14            <#assign cpSku = curCPCatalogEntry.CPSkus[0] > 
15            <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() )> 
16                <div class="imgContainerEspecialCarrossel4"> 
17                    <a onclick="cardProductClick(this)" href="${definitionHelper.getFriendlyURL(curCPCatalogEntry.getCPDefinitionId(),themeDisplay)}" data-definition="${curCPCatalogEntry.getCPDefinitionId()}"> 
18                        <#assign cpMedia = contentHelper.getImages(curCPCatalogEntry.getCPDefinitionId(), themeDisplay) /> 
19                        <#assign defaultImage = "/documents/d/editora-senac/liferay_logo" /> 
20                        <#assign productImage = defaultImage /> 
21   
22											<#list cpMedia as media> 
23                                                    <#if media.getURL()?has_content && (media.getTitle()?? && media.getTitle()?contains("small"))> 
24                        <#assign productImage = media.getURL() /> 
25                        <#break> 
26                    </#if> 
27                </#list> 
28                  <#if productImage == defaultImage> 
29                     <#list cpMedia as media> 
30                     <#if media.getURL()?has_content> 
31                        <#assign productImage = media.getURL() /> 
32                        <#break> 
33                    </#if> 
34                  </#list> 
35                </#if> 
36                   <img src="${productImage}" onerror="this.onerror=null;this.src='${defaultImage}';" /> 
37                  
38 
39                        <div class="informacoesProdutoCarrossel4"> 
40                            <div class="infoSuperiores"> 
41                                <div class="tituloEspecialCarrossel4"> 
42                                    ${curCPCatalogEntry.name?truncate(60, '...')} 
43                                </div> 
44                                <div class="autorEspecialCarrossel4"> 
45                                    <#if contentHelper?has_content > 
46                                        <#list contentHelper.getCategorizedCPDefinitionSpecificationOptionValues(curCPCatalogEntry.getCPDefinitionId(),43620166) as specs> 
47                                            <#if specs.CPSpecificationOptionId == 43594743> 
48                                                ${specs.getValueCurrentValue()?truncate(45, '...')} 
49                                                <#break> 
50                                            </#if> 
51                                        </#list> 
52                                    </#if> 
53                                </div> 
54                            </div> 
55                        </div> 
56                    </a> 
57                    <div class="valorCarrossel4" data-definition="${curCPCatalogEntry.getCPDefinitionId()}"> 
58                        <@liferay_commerce_ui["price"] 
59                            CPCatalogEntry=curCPCatalogEntry 
60                        /> 
61                    </div> 
62                    <div class="divEspiarCarrossel4"> 
63                        <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() ) && warehouseService.getStockQuantity(companyId,cpSku.getSku()) gt 0 > 
64                            <span class="comprarCarrossel4" data-sku="${cpSku.getSku()}"> 
65                                <#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] /> 
66                                <#assign id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + cpSku.getSku() /> 
67                                <@liferay_commerce_ui["add-to-cart"] 
68                                    CPInstanceId=cpSku.getCPInstanceId() 
69                                    id=id 
70                                /> 
71                            </span> 
72                        <#else> 
73                            <span class="comprarCarrossel4"> 
74                                <button class="btnIndisponivelEspecialCarrossel4" href="javascript:void(0)" disabled>Livro Indisponível</button> 
75                            </span> 
76                        </#if> 
77                    </div> 
78                </div> 
79            </#if> 
80        </#list> 
81    </#if> 
82</div> 
83 
84<style> 
85  .comprarCarrossel4  div.form-group { 
86    display: none; 
87
88    .comprarCarrossel4 .add-to-cart-quantity-marker.active { 
89        opacity: 0; 
90        display: none; 
91
92 
93    .comprarCarrossel4  form.quantity-selector { 
94        display: none; 
95
96 
97    .comprarCarrossel4  button.btn.btn-primary { 
98        background-color: #5ACC75; 
99        border-radius: 4px; 
100        width: 206px; 
101        padding: 1px; 
102        justify-content: center;  
103        padding-left: 13%; 
104        margin-top: 0.75rem !important; 
105
106   
107     
108    .customCart{ 
109        opacity: 1 !important; 
110        filter: none !important; 
111        height: 405 !important; 
112        width: 246 !important; 
113
114     
115    @media (max-width: 768px) { 
116        .slider4.slider4semextracard .next-arrow { 
117            right: unset; 
118            left: calc(100vw - 94px); 
119            z-index: 10; 
120
121         
122        .slider4.slider4semextracard .prev-arrow { 
123            left: 18px; 
124            z-index: 10; 
125
126         
127        .slider4.slider4semextracard .slick-list { 
128            z-index: 8; 
129
130         
131        .slider4.slider4semextracard .slide-arrow .fa { 
132            font-size: 22px; 
133            font-weight: 400; 
134
135         
136        .divEspiarCarrossel4 { 
137            margin-top: 19px !important; 
138
139 
140        .slider4semextracard .valorCarrossel4, 
141        .slider4semextracard .divEspiarCarrossel4 { 
142            position: absolute !important; 
143
144 
145        .slider4semextracard .valorCarrossel4 { 
146            bottom: 50px; 
147            left: 20px; 
148
149     
150        .slider4semextracard .divEspiarCarrossel4 { 
151            bottom: 10px; 
152            right: 20px; 
153
154 
155        .slider4semextracard .valorCarrossel4 .price-value { 
156            font: normal 600 18px/17px Montserrat !important; 
157            margin-left: 0!important; 
158
159        .slider4semextracard .comprarCarrossel4 .btn-add-to-cart { 
160          margin: 0 !important; 
161          padding-top: 2px !important; 
162
163        .comprarCarrossel4 .btn-add-to-cart::before { 
164          font-size: 16px; 
165
166
167     
168    @media (max-width: 600px) { 
169      .comprarCarrossel4 button.btn.btn-primary.btn-lg.btn-add-to-cart.btn-add-to-cart-inline { 
170        padding-left: 1px; 
171        height: 30px; 
172
173 
174      .btn-add-to-cart-inline::before { 
175        font-size: 14px; 
176        width: 100%; 
177        text-align: center; 
178        display: block; 
179
180
181     
182    .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a { 
183        display: flex; 
184        align-items: flex-end; 
185
186     
187    .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-promo-price { 
188        order: 1; 
189        margin-top: 0!important; 
190        margin-right: 2px; 
191
192     
193    .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .divValorCarrossel4 { 
194        order: 2; 
195
196     
197    .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .divValorCarrossel4 + .product-promo-price { 
198        margin-right: 5px; 
199
200     
201    .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-price { 
202        order: 3; 
203        margin-top: 0; 
204
205 
206    .slider4semextracard .valorCarrossel4, 
207    .slider4semextracard .divEspiarCarrossel4 { 
208        position: relative; 
209        z-index: 9999; 
210
211     
212    @media (min-width: 769px) { 
213        .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-price, 
214        .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-promo-price { 
215            line-height: 17px; 
216
217 
218        .slider4semextracard .valorCarrossel4 { 
219            top: 100px; 
220            left: 20px; 
221
222     
223        .slider4semextracard .divEspiarCarrossel4 { 
224            top: 90px; 
225            right: 20px; 
226
227
228 
229    .tituloEspecialCarrossel4 { 
230        display: -webkit-box; 
231      -webkit-line-clamp: 3; 
232      -webkit-box-orient: vertical; 
233      overflow: hidden; 
234
235 
236    .informacoesSuperioresCarrossel4 { 
237        height: 72px; 
238
239     
240    @media (max-width: 414px){ 
241        .slider4 { 
242            width: 100vw !important; 
243            /* margin-right: 0; */ 
244            margin-right: 20px; 
245            margin-left: 20px; 
246
247
248 
249    @media (min-width: 769px) and (max-width: 820px) { 
250        .slider4semextracard .valorCarrossel4, 
251        .slider4semextracard .divEspiarCarrossel4 { 
252            position: absolute; 
253
254 
255        .slider4semextracard .valorCarrossel4 { 
256            top: initial !important; 
257            bottom: 50px; 
258
259     
260        .slider4semextracard .divEspiarCarrossel4 { 
261            top: 315px; 
262
263
264 
265    @media (max-width: 1200px) { 
266      	.slick-dots { 
267            width: 100vw !important; 
268
269
270 
271</style> 
272         
273<script 
274      src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js" 
275      integrity="sha512-XtmMtDEcNz2j7ekrtHvOVR4iwwaD6o/FUJe6+Zq+HgcCsk3kj4uSQQR8weQ2QVj1o0Pk6PwYLohm206ZzNfubg==" 
276      crossorigin="anonymous" 
277      referrerpolicy="no-referrer" 
278    ></script> 
279 
280<script type="text/javascript"> 
281   
282       var tituloSlider = setInterval(function() { 
283         if ($('.slider4').length >= 1) { 
284            $(` 
285                  <div class="background-right titulo-slider4"><a href="\rita-lobo">Livros que você pode gostar&nbsp;</a><i class="fas fa-circle circulo-laranja" aria-hidden="true"></i></div> 
286              `).insertBefore('.slider4:has(.imgContainerEspecialCarrossel4)'); 
287            clearInterval(tituloSlider); 
288
289       }, 50); 
290     
291       setTimeout(function(){ 
292         $(document).ready(function() { 
293              $('.slider4').slick({ 
294                  arrows: true, 
295                  slidesToShow: 4, 
296                  slidesToScroll: 4, 
297                  dots:true, 
298                  infinite: false, 
299                  lazyLoad: 'ondemand', 
300                  prevArrow: '<a href="#" class="slide-arrow prev-arrow"><i class="fa fa-chevron-left gray"></i></a>', 
301                  nextArrow: '<a href="#" class="slide-arrow next-arrow"><i class="fa fa-chevron-right gray"></i></a>', 
302                  speed: 1000,  
303                  index: 1, 
304                  focusOnSelect:false, 
305                  accessibility:false, 
306                  adaptiveHeight:false, 
307                  autoplay:false, 
308                  responsive: [{ 
309                    breakpoint: 1200, 
310                    settings: { 
311                        slidesToShow: 4, 
312                        slidesToScroll: 4, 
313                        variableWidth: true, 
314                        infinite: false, 
315                        centerMode: false, 
316                        dots:true, 
317                        arrows: true 
318
319                }, { 
320                    breakpoint: 768, 
321                    settings: { 
322                        slidesToShow: 1, 
323                        slidesToScroll: 1, 
324                        variableWidth: true, 
325                        infinite: false, 
326                        centerPadding: 0, 
327                        centerMode: false, 
328                        dots:false, 
329                        arrows: false 
330
331                }] 
332              }); 
333 
334             sendViewItemList([<#list entries as curCPCatalogEntry>${curCPCatalogEntry.getCPDefinitionId()},</#list>]) 
335 
336          }); 
337 
338          if (typeof promoPrice !== 'undefined') { 
339            promoPrice = document.getElementsByClassName("price"); 
340
341          else { 
342            promoPrice = document.getElementsByClassName("price"); 
343
344 
345          for (let i = 0; i < document.getElementsByClassName("price").length; i++) { 
346            let carrossel = document.getElementsByClassName("price"); 
347 
348            if(carrossel[i].children.length < 5) { 
349              if (carrossel[i].children[0]) { 
350                carrossel[i].children[0].innerText = "Por:" 
351
352              if (carrossel[i].children[1]) { 
353                carrossel[i].children[1].style.color = "#D2691E" 
354                carrossel[i].children[1].style.marginLeft = ".5rem" 
355
356               
357              carrossel[i].style.marginTop = "24px" 
358
359            else if (carrossel[i].children.length > 7){ 
360              if (carrossel[i].children[0]) { 
361                carrossel[i].children[0].innerHTML = "<del>De:</del>" 
362                carrossel[i].children[0].style.color = "#78849e" 
363
364               
365              if (carrossel[i].children[1]) { 
366                carrossel[i].children[1].classList.remove("price-value-inactive") 
367                let priceBefore = carrossel[i].children[1].innerText 
368                carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>' 
369                carrossel[i].children[1].style.color = "#78849e" 
370
371               
372              carrossel[i].children[2].style.display = "none" 
373              carrossel[i].children[3].style.display = "none" 
374              carrossel[i].children[4].innerText = "Por:" 
375              carrossel[i].children[5].style.display = "none" 
376              carrossel[i].children[6].style.display = "none" 
377              carrossel[i].children[7].style.color = "#D2691E" 
378              carrossel[i].children[7].style.marginLeft = ".5rem" 
379              carrossel[i].style.marginTop = "10px" 
380
381            else { 
382              if (carrossel[i].children[0]) { 
383                carrossel[i].children[0].innerHTML = "<del>De:</del>" 
384                carrossel[i].children[0].style.color = "#78849e" 
385
386              if (carrossel[i].children[1]) { 
387                carrossel[i].children[1].classList.remove("price-value-inactive") 
388                let priceBefore = carrossel[i].children[1].innerText 
389                carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>' 
390                carrossel[i].children[1].style.color = "#78849e" 
391
392               
393              carrossel[i].children[2].style.display = "none" 
394              carrossel[i].children[3].style.display = "none" 
395              carrossel[i].children[4].innerText = "Por:" 
396              carrossel[i].children[5].style.color = "#D2691E" 
397              carrossel[i].children[5].style.marginLeft = ".5rem" 
398              carrossel[i].style.marginTop = "10px" 
399
400
401 
402          const slider4 = document.getElementsByClassName("slider4"); 
403 
404          for (let i = 0; i < slider4.length; i++) { 
405              slider4[i].style.display ='block'; 
406
407 
408          $('.slider4.slider4semextracard').on('afterChange', function(event, slick, currentSlide) { 
409            if (slick.$slides.length - 1 == currentSlide) { 
410              $('.slider4.slider4semextracard .next-arrow').css('display', 'none'); 
411            }  
412            else { 
413              $('.slider4.slider4semextracard .next-arrow').css('display', 'flex'); 
414
415 
416            if (0 == currentSlide) { 
417              $('.slider4.slider4semextracard .prev-arrow').css('display', 'none'); 
418            }  
419            else { 
420              $('.slider4.slider4semextracard .prev-arrow').css('display', 'flex'); 
421
422          }); 
423 
424          if (typeof promoPrice !== 'undefined') { 
425              let promoPrice = document.getElementsByClassName("product-promo-price"); 
426
427          else{ 
428              promoPrice = document.getElementsByClassName("product-promo-price"); 
429
430 
431          if(promoPrice.length > 0){ 
432              const productPrice = document.getElementsByClassName(".price-value-final"); 
433              for (let i = 0; i < productPrice.length; i++) { 
434                  $(productPrice[i]).attr('data-content','Por: '); 
435
436          }else{ 
437              const valorCarrossel4 = document.getElementsByClassName("valorCarrossel4"); 
438              for (let i = 0; i < valorCarrossel4.length; i++) { 
439                  valorCarrossel4[i].style.marginTop='25px'; 
440              //    valorCarrossel4[i].style.marginBottom='17px'; 
441
442
443          
444    }, 2000); 
445    
446</script> 

eds-newsletter

QUER FICAR POR DENTRO DE PROMOÇÕES E NOVIDADES?