/* Blyss Studio · ponte entre o CSS do site e a estrutura do Elementor.
   Só vale nas páginas do novo site (body.blyss-page). */

body.blyss-page{font-family:'Manrope',system-ui,sans-serif;background:#08090B;color:#fff;margin:0;overflow-x:hidden;
  --kit-widget-spacing:0px;--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px}
.blyss-page .elementor a{box-shadow:none}
.admin-bar .hdr{top:32px}
@media (max-width:782px){.admin-bar .hdr{top:46px}}

/* estrutura: seções e colunas neutras */
.blyss-page .elementor-section .elementor-container{max-width:none}
.blyss-page .elementor-column-gap-no>.elementor-column>.elementor-element-populated,
.blyss-page .elementor-column>.elementor-widget-wrap{padding:0}
.blyss-page .elementor-top-section>.elementor-container,
.blyss-page .elementor-top-section>.elementor-container>.elementor-column,
.blyss-page .elementor-top-section>.elementor-container>.elementor-column>.elementor-widget-wrap,
.blyss-page .elementor-top-section>.elementor-container>.elementor-column>.elementor-column-wrap,
.blyss-page .elementor-top-section>.elementor-container>.elementor-column>.elementor-column-wrap>.elementor-widget-wrap{position:static}
.blyss-page .elementor-widget.bl-hero-host,.blyss-page .bl-hero-host>.elementor-widget-container{position:static}
.blyss-page .hero>.elementor-container,.blyss-page .phero>.elementor-container{width:100%}

/* itens flex do Elementor não podem crescer além da tela (carrossel, marquee) */
.blyss-page .elementor-column,.blyss-page .elementor-widget-wrap>.elementor-element{min-width:0}

/* .wrap em widgets e seções internas */
.blyss-page .elementor-widget-wrap>.elementor-element.wrap{width:min(1200px,100% - 64px);margin-left:auto;margin-right:auto}
@media (max-width:760px){.blyss-page .elementor-widget-wrap>.elementor-element.wrap{width:calc(100% - 40px)}}

/* seções internas de layout: as colunas viram os itens do grid/flex original */
.blyss-page .bl-grid>.elementor-container{display:contents}
.blyss-page .bl-grid>.elementor-container>.elementor-column{width:auto!important;min-width:0;max-width:100%}
.blyss-page .bl-grid>.elementor-container>.elementor-column>.elementor-widget-wrap{align-content:flex-start}
.blyss-page .bgrid>.elementor-container>.elementor-column:first-child{position:relative;z-index:2}
.blyss-page .bl-col.tx>.elementor-widget-wrap{flex-direction:column;flex-wrap:nowrap;justify-content:center;gap:18px}
.blyss-page .bl-col.igr>.elementor-widget-wrap{flex-direction:column;flex-wrap:nowrap;gap:18px}
.blyss-page .bl-col.tx .elementor-widget-button,.blyss-page .bl-col.igr .elementor-widget-button{align-self:flex-start}
.blyss-page .bl-col.stick{align-self:start}
.blyss-page .bl-one>.elementor-container>.elementor-column{width:100%}

/* espaçamentos das seções (vinham de style="") */
.blyss-page .sec.pt0{padding-top:0}.blyss-page .sec.pt40{padding-top:40px}.blyss-page .sec.pt56{padding-top:56px}.blyss-page .sec.pt64{padding-top:64px}.blyss-page .sec.pb0{padding-bottom:0}

/* títulos (widget Título): herdam as classes do widget */
.blyss-page .elementor-widget-heading .elementor-heading-title{font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;line-height:inherit;margin:0;padding:0}
.blyss-page .elementor-widget-heading.bl-eyebrow .elementor-heading-title{display:inline}
.blyss-page .bl-ink,.blyss-page .light .bl-ink{color:#031516}

/* texto (widget Editor de texto) */
.blyss-page .elementor-widget-text-editor{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}
.blyss-page .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* botões (widget Botão) */
.blyss-page .bl-btn .elementor-button{border-radius:0;line-height:1;background-color:transparent;fill:currentColor;box-shadow:none;text-decoration:none}
.blyss-page .bl-btn-p .elementor-button{background-color:var(--c);color:#031516}
.blyss-page .bl-btn-k .elementor-button{background-color:var(--ink);color:#fff}
.blyss-page .bl-btn-o .elementor-button{background-color:transparent;color:#fff}
.blyss-page .light .bl-btn-o .elementor-button{color:var(--ink);border-color:rgba(8,9,11,.3)}
.blyss-page .bl-btn .elementor-button-content-wrapper{display:inline-flex;align-items:center;gap:0}
.blyss-page .bl-ico-arrow .elementor-button-text::after,.blyss-page .bl-ico-up .elementor-button-text::after{content:"";display:inline-block;width:18px;height:18px;margin-left:10px;vertical-align:-4px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
.blyss-page .bl-ico-up .elementor-button-text::after{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M8 7h9v9'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M8 7h9v9'/%3E%3C/svg%3E")}
.blyss-page .bl-grp{margin-top:28px;margin-right:12px}
.blyss-page .hero .bl-grp{margin-top:30px}
.blyss-page .bl-mt{margin-top:28px}

/* imagem de fundo dos banners (widget Imagem com classe bgi) */
.blyss-page .bl-bgi>.elementor-widget-container{height:100%}
.blyss-page .bl-bgi img{width:100%;height:100%;max-width:none;object-fit:cover;display:block}

/* home: fundo do hero */
.bl-hero-bg{position:absolute;inset:0}
.bl-hero-bg .slides{position:absolute;inset:0}

/* antes e depois: sem filtro quando houver fotos reais */
.cmp:not(.cmp-f) .sk img{filter:none}
.cmp:not(.cmp-f) .sk::after{display:none}

/* perguntas frequentes (widget Alternância) */
.blyss-page .bl-faq .elementor-toggle{border-top:1px solid #D5D9DD}
.blyss-page .bl-faq .elementor-toggle .elementor-toggle-item{border-bottom:1px solid #D5D9DD;margin:0}
.blyss-page .bl-faq .elementor-toggle .elementor-tab-title{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;margin:0;border:0;font:800 16px/1.4 'Manrope',sans-serif;color:var(--ink);text-transform:none;letter-spacing:0;cursor:pointer}
.blyss-page .bl-faq .elementor-toggle .elementor-toggle-title{color:inherit;text-decoration:none}
.blyss-page .bl-faq .elementor-toggle-icon{display:none}
.blyss-page .bl-faq .elementor-toggle .elementor-tab-title::after{content:"";width:32px;height:32px;flex-shrink:0;border:1px solid #C5CAD0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23007A80' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/18px no-repeat;
  transition:transform .45s var(--ease),background-color .3s}
.blyss-page .bl-faq .elementor-toggle .elementor-tab-title.elementor-active::after{transform:rotate(135deg);border-color:var(--ink);
  background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230BF5FA' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/18px no-repeat}
.blyss-page .bl-faq .elementor-toggle .elementor-tab-content{padding:0 0 20px;border:0;font-size:15px;line-height:1.7;color:var(--mute2)}
.blyss-page .bl-faq .elementor-tab-content p{font-size:15px;line-height:1.7;color:var(--mute2)}

/* conteúdo dos cases (editor do WordPress) */
.bl-content p+p{margin-top:14px}

/* editor do Elementor: deixa visível o que as animações escondem */
.elementor-editor-active .fade-up,.elementor-editor-active .hero-in{opacity:1!important;transform:none!important}

/* grupos de botões soltos */
.blyss-page .bl-center>.elementor-container>.elementor-column>.elementor-widget-wrap{justify-content:center}
.blyss-page .bl-mt40{margin-top:40px}
@media (max-width:760px){.blyss-page .bl-btn .elementor-button{white-space:normal;text-align:center;height:auto;min-height:50px;padding-top:14px;padding-bottom:14px;line-height:1.3}}

/* ícones de linha: outros plugins do site forçam fill nos SVGs */
.blyss-page svg[fill="none"]{fill:none}
.blyss-page svg[fill="none"] :is(path,circle,rect,line,polyline,polygon):not([fill]){fill:none}
/* filtros roláveis sem barra aparente */
.blyss-page .filters{scrollbar-width:none;-ms-overflow-style:none}
.blyss-page .filters::-webkit-scrollbar{display:none}

/* parágrafos seguidos no mesmo bloco de texto */
.blyss-page .bl-text p+p{margin-top:14px}
/* Quem somos: foto acompanha a altura do texto */
.blyss-page .essence>.elementor-container>.elementor-column>.elementor-widget-wrap{align-content:stretch}
.blyss-page .essence .elementor-widget-html,.blyss-page .essence .elementor-widget-html>.elementor-widget-container,.blyss-page .essence .shot{height:100%}
@media (max-width:760px){.blyss-page .light .cols3>div{border-bottom-color:#D5D9DD}}
/* selo giratório do hero: outros plugins reduzem o tamanho dos SVGs */
.blyss-page .badge .ring{width:100%!important;height:100%!important;max-width:none!important}
/* links dentro dos artigos */
.art article :is(p,li) a{color:var(--c);text-decoration:underline;text-underline-offset:3px}
.art article :is(p,li) a:hover{color:#fff}
/* hero: foto em tamanho certo para celular e desktop */
.hero .sl{background-image:var(--bg-m)}
@media (min-width:768px){.hero .sl{background-image:var(--bg-d)}}
/* FAQ sem o JS do Elementor */
.blyss-page .bl-faq .elementor-tab-content{display:none}
.blyss-page .bl-faq .elementor-tab-content.elementor-active{display:block}
.facts{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}
@media (max-width:760px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* estande 3D (WebGL) */
.stage3{overflow:visible}
.stage3 .st3-canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block;outline:0}
.stage3 .tag3d{transition:opacity .35s;z-index:2}
.stage3.st3-fallback{background:var(--poster) center/contain no-repeat}
.stage3.st3-fallback .hint{display:none}
@media (max-width:760px){.blyss-page .stage3{height:440px}}
/* estande 3D: bordas do canvas se desfazem no fundo (sem corte seco) */
.stage3 .st3-canvas{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 7%,#000 86%,transparent 100%),linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0,#000 7%,#000 86%,transparent 100%),linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);mask-composite:intersect}
/* Banner das páginas internas: imagem menor no celular */
.phero .bgi.bgv{background-image:var(--bg-m)}
@media (min-width:768px){.phero .bgi.bgv{background-image:var(--bg-d)}}
