.elementor-kit-1011{--e-global-color-primary:#21358d;--e-global-color-secondary:#666666;--e-global-color-text:#515151;--e-global-color-accent:#21358D;--e-global-color-jcbrand1:#ffffff;--e-global-color-jcbrand2:#444444;--e-global-color-jcbrand3:#222222;--e-global-color-jcbrand4:#000000;--e-global-color-jcbrand5:#0b5b60;--e-global-color-jcbrand6:#18abad;--e-global-typography-primary-font-family:"RIDIBatang";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:none;--e-global-typography-secondary-font-family:"RIDIBatang";--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:none;--e-global-typography-text-font-family:"Pretendard";--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:12px;--e-global-typography-accent-font-family:"Pretendard";--e-global-typography-accent-font-weight:500;}.elementor-kit-1011 button,.elementor-kit-1011 input[type="button"],.elementor-kit-1011 input[type="submit"],.elementor-kit-1011 .elementor-button{background-color:var( --e-global-color-primary );color:#FFFFFF;}.elementor-kit-1011 button:hover,.elementor-kit-1011 button:focus,.elementor-kit-1011 input[type="button"]:hover,.elementor-kit-1011 input[type="button"]:focus,.elementor-kit-1011 input[type="submit"]:hover,.elementor-kit-1011 input[type="submit"]:focus,.elementor-kit-1011 .elementor-button:hover,.elementor-kit-1011 .elementor-button:focus{background-color:var( --e-global-color-primary );}.elementor-kit-1011 e-page-transition{background-color:#FFBC7D;}.elementor-kit-1011 h2{color:var( --e-global-color-secondary );font-size:60px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1340px;}.e-con{--container-max-width:1340px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* jc-fonts:start */
@font-face { font-family: 'Pretendard'; src: url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-Thin.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-ExtraLight.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-Light.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-Regular.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-Medium.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-SemiBold.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-Bold.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-ExtraBold.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Pretendard-Black.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Pretendard Variable'; src: url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/PretendardVariable.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Roboto'; src: url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Roboto.woff2') format('woff2'), url('https://jeisys.mickael.com.br/wp-content/uploads/jeisys-cloner/fonts/Roboto.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
/* jc-fonts:end */
/* jc-fidelity:start */

/* O CSS do header/footer foi movido para assets/widgets/jc-widgets.css
   (sempre enfileirado pelo widget de header em toda página), para não
   depender do Custom CSS do Kit — que pode ser sobrescrito ao editar o Kit. */

/* Company (Our Vision / History / Sustainability) — reproduz o CSS bespoke
   do site de origem. Todos os seletores ficam sob classes jc-* aplicadas nos
   blueprints company.json / company-history.json. Valores espelham
   pub/css/output.css e reactive.css. */

/* ---------------------------------------------------------------------------
 * Tipografia institucional (Palatino + Vujahday Script) — migrada do page_css()
 * ------------------------------------------------------------------------- */
.font_Palatino { font-family:"Palatino Linotype","Lora",serif; }
.vujahday { font-family:"Vujahday Script","Segoe Script",cursive; font-weight:400; }

.jc-tit .elementor-heading-title { display:flex; align-items:baseline; justify-content:center; gap:10px; flex-wrap:wrap; font-family:"Palatino Linotype","Lora",serif; font-weight:400; }
.jc-tit .elementor-heading-title strong { font-size:36px; font-weight:700; }
.jc-tit .elementor-heading-title span { font-size:48px; font-style:italic; }

.jc-serif .elementor-heading-title { font-family:"Palatino Linotype","Lora",serif; font-weight:400; color:#515151; }

/* Títulos de seção — source .main_title (70px) / .company_tit (60px), Palatino 400. */
.jc-xltit .elementor-heading-title { font-size:60px; line-height:1.2; color:#515151; }

/* Subtítulo decorado (source .tit_btm): Palatino 26px azul + Vujahday 36px. */
.jc-titbtm .elementor-heading-title { display:flex; justify-content:center; align-items:baseline; gap:10px; flex-wrap:wrap; font-family:"Palatino Linotype","Lora",serif; font-weight:400; font-size:26px; color:#21358D; }
.jc-titbtm .elementor-heading-title .vujahday { font-size:36px; }

/* Script Vujahday genérico (rótulos Mission/Vision, nomes de grupo de valores). */
.jc-script .elementor-heading-title { font-family:"Vujahday Script","Segoe Script",cursive; font-weight:400; font-size:44px; color:#21358D; }

/* ---------------------------------------------------------------------------
 * Intro / abertura
 * ------------------------------------------------------------------------- */
.jc-company-intro-img img { width:100%; }

/* Lead sob a imagem (source .esg_management01 p / .tac): 24px, centralizado. */
.jc-company-lead-sec .jc-lead p { font-size:24px; color:#515151; line-height:1.3; text-align:center; }

/* ---------------------------------------------------------------------------
 * Carta do Chairman/CEO (Our Vision, source .out_vision01)
 * ------------------------------------------------------------------------- */
.jc-company-letter-sec .jc-letter .jc-letter-tt { font-family:"Palatino Linotype","Lora",serif; font-weight:400; font-size:40px; line-height:1.3; color:#515151; letter-spacing:-1.2px; margin:0 0 36px; }
.jc-company-letter-sec .jc-letter .jc-letter-tt strong { color:#21358D; font-weight:400; padding-left:20px; }
.jc-company-letter-sec .jc-letter p { font-size:20px; color:#666; line-height:1.4; margin:0 0 12px; }
.jc-company-letter-sec .jc-sign p { font-size:18px; color:#515151; line-height:1.4; }

/* ---------------------------------------------------------------------------
 * Mission / Vision (source .out_vision02 dl) — wbox branco
 * ------------------------------------------------------------------------- */
.jc-company-mission-card { box-shadow:0 2px 30px rgba(0,0,0,0.03); }
.jc-company-mission-card.e-con,
.jc-company-mission-card { text-align:center; }
/* dt em Vujahday 60px, azul (source .out_vision02 dt). */
.jc-company-mission-card .jc-script .elementor-heading-title { font-size:60px; margin-bottom:16px; }
.jc-company-mission-card p { font-size:20px; color:#666; line-height:1.4; }

/* ---------------------------------------------------------------------------
 * Core Values (source .out_vision03)
 * ------------------------------------------------------------------------- */
/* Nome do grupo (source .tit span): Vujahday 40px. */
.jc-company-value-group .jc-script .elementor-heading-title { font-size:40px; }
/* Descrição do grupo (source .tit p): 18px azul. */
.jc-company-value-group > .e-con-inner > .elementor-widget-text-editor p,
.jc-company-value-group > .elementor-widget-text-editor p { font-size:18px; color:#21358D; line-height:1.2; }

/* Cards de valor: fundo cinza, trapézio alternado, hover azul (source .sqr_area li). */
.jc-company-value-card { min-height:290px; transition:.2s linear; }
.jc-company-value-card:nth-child(odd) { clip-path:polygon(0 0, 100% 0, 95% 100%, 5% 100%); }
.jc-company-value-card:nth-child(even) { clip-path:polygon(5% 0, 95% 0, 100% 100%, 0% 100%); }
.jc-company-value-title .elementor-heading-title { font-size:24px; color:#444; line-height:1.3; }
.jc-company-value-list .elementor-icon-list-text { font-size:18px; color:#666; line-height:1.4; }
.jc-company-value-list .elementor-icon-list-icon i { color:#666; }
.jc-company-value-card:hover { background-color:#21358D !important; }
.jc-company-value-card:hover .jc-company-value-title .elementor-heading-title,
.jc-company-value-card:hover .jc-company-value-list .elementor-icon-list-text { color:#fff; }
.jc-company-value-card:hover .jc-company-value-list .elementor-icon-list-icon i { color:#fff; }

/* ---------------------------------------------------------------------------
 * Sustainability Drivers (source .esg5directions_list) — 5 cards
 * ------------------------------------------------------------------------- */
/* Trapézio alternado só na imagem grande (figura), não no ícone. */
.jc-company-driver > .elementor-widget-image:first-child img { clip-path:polygon(0 0, 100% 0, 95% 100%, 5% 100%); }
.jc-company-driver:nth-child(even) > .elementor-widget-image:first-child img { clip-path:polygon(5% 0, 95% 0, 100% 100%, 0% 100%); }
.jc-company-driver p { font-size:20px; color:#444; font-weight:700; line-height:1.3; font-family:"Palatino Linotype","Lora",serif; }

/* ---------------------------------------------------------------------------
 * Strategic Pillars (source .strategic_tasks_list) — 3 cards
 * ------------------------------------------------------------------------- */
.jc-company-pillar-title .elementor-heading-title { font-size:24px; color:#444; line-height:1.3; font-weight:700; }
.jc-company-pillar-list .elementor-icon-list-text { font-size:18px; color:#666; line-height:1.4; }
.jc-company-pillar-list .elementor-icon-list-icon i { color:#666; }

/* ---------------------------------------------------------------------------
 * History TIMELINE (source .history_list_area / .history_list)
 * ------------------------------------------------------------------------- */
/* Ano: Palatino 48px, 700, cinza (source .history_list dt). */
.jc-company-year .elementor-heading-title { font-size:48px; font-weight:700; color:#515151; line-height:1; }

/* Coluna de eventos: linha vertical tracejada (border no blueprint) + marcador. */
.jc-company-timeline-events { position:relative; }
.jc-company-timeline-events::before {
  content:""; position:absolute; left:-6px; top:16px;
  width:11px; height:11px; border-radius:50%;
  background:#21358D; box-shadow:0 0 0 5px rgba(33,53,141,0.10);
}
.jc-company-events-list .elementor-icon-list-text { font-size:20px; color:#515151; line-height:1.6; }
.jc-company-events-list .elementor-icon-list-icon i { color:#666; }
.jc-company-events-list .elementor-icon-list-item strong { font-weight:600; }

/* ---------------------------------------------------------------------------
 * Responsivo (espelha reactive.css)
 * ------------------------------------------------------------------------- */
@media screen and (max-width:1023px) {
  .jc-xltit .elementor-heading-title { font-size:48px; }
  .jc-company-letter-sec .jc-letter .jc-letter-tt { font-size:32px; }
  .jc-company-year .elementor-heading-title { font-size:40px; }
  .jc-company-events-list .elementor-icon-list-text { font-size:16px; line-height:1.5; }
}
@media screen and (max-width:767px) {
  .jc-xltit .elementor-heading-title { font-size:34px; }
  .jc-titbtm .elementor-heading-title { font-size:20px; }
  .jc-titbtm .elementor-heading-title .vujahday { font-size:28px; }
  .jc-company-lead-sec .jc-lead p { font-size:18px; }
  .jc-company-letter-sec .jc-letter .jc-letter-tt { font-size:26px; }
  .jc-company-letter-sec .jc-letter p { font-size:16px; }
  .jc-company-mission-card .jc-script .elementor-heading-title { font-size:44px; }
  .jc-company-value-title .elementor-heading-title { font-size:20px; }
  .jc-company-driver p { font-size:16px; }
  .jc-company-year .elementor-heading-title { font-size:26px; }
  .jc-company-events-list .elementor-icon-list-text { font-size:14px; line-height:1.5; }
  .jc-company-timeline-events::before { left:-5px; top:10px; width:9px; height:9px; }
}

/* Contact — reproduz o CSS bespoke da origem (/eng/contact-us.php).
   Escopo: tudo sob .jc-contact-*. Valores espelhados de output.css /
   reactive.css (.svisual, .inputs_area, .btn_submit, .agree_area). */

/* ---- Banner de abertura (.svisual) ------------------------------------
   O fundo (foto + véu escuro), a altura mínima e o padding do banner são
   definidos direto nas settings nativas do container no blueprint
   (background_image + background_overlay + min_height), porque o Elementor
   só emite _css_classes em widgets — não em containers. Aqui fica apenas a
   tipografia do título, que vive num widget heading (.jc-contact-hero-title:
   reproduz .svisual .tit — serif, 68px, branco). */
.jc-contact-hero-title .elementor-heading-title {
  font-size: 68px;
  line-height: 1;
  font-weight: 400;
  color: #fff;
  text-align: center;
  font-family: "Palatino Linotype", "Lora", serif;
}
@media screen and (max-width: 1024px) {
  .jc-contact-hero-title .elementor-heading-title { font-size: 48px; }
}
@media screen and (max-width: 640px) {
  .jc-contact-hero-title .elementor-heading-title { font-size: 34px; }
}

/* ---- Formulário (widget Pro "form" = .inputs_area da origem) ----------- */
/* Espaçamento entre campos: origem usa gap 40px (calc(50% - 20px)).
   Reproduz a mesma técnica de gutter do Elementor (padding lateral no
   field-group + margem negativa no wrapper) para 40px entre colunas e
   40px entre linhas. */
.jc-contact-form .elementor-form-fields-wrapper {
  margin-left: -20px;
  margin-right: -20px;
}
.jc-contact-form .elementor-field-group {
  padding-left: 20px;
  padding-right: 20px;
  margin-bottom: 40px;
}

/* Rótulos: .inputs_area > li .tit — serif, 20px, 700, #515151, mb 16px. */
.jc-contact-form .elementor-field-group > label {
  font-size: 20px;
  color: #515151;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 16px;
  font-family: "Palatino Linotype", "Lora", serif;
}
/* Asterisco de obrigatório: origem usa cor Primary (.tit span{color:#21358D}). */
.jc-contact-form .elementor-mark-required .elementor-field-label:after,
.jc-contact-form .elementor-field-required .elementor-mark-required:after,
.jc-contact-form .elementor-field-group.elementor-field-required > label:after {
  color: #21358D;
}

/* Campos de texto: input 60px / padding 0 20px; textarea 350px / padding 20px.
   Borda base #ddd 1px (base do site), fundo branco, 16px, sem raio. */
.jc-contact-form .elementor-field-group .elementor-field.elementor-field-textual {
  width: 100%;
  font-size: 16px;
  color: #515151;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
}
.jc-contact-form input.elementor-field-textual {
  height: 60px;
  padding: 0 20px;
}
.jc-contact-form textarea.elementor-field-textual {
  height: 350px;
  padding: 20px;
}
.jc-contact-form .elementor-field-textual::placeholder { color: #888; }
.jc-contact-form .elementor-field-textual:focus {
  border-color: #21358D;
  box-shadow: rgba(33, 53, 141, 0.08) 0 4px 10px;
  outline: none;
}

/* Botão de envio (.btn_submit): Primary, pílula 210x50, branco, centrado. */
.jc-contact-form .elementor-field-type-submit { justify-content: center; }
.jc-contact-form .elementor-button[type="submit"] {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  width: 210px;
  height: 50px;
  min-height: 50px;
  font-size: 18px;
  font-weight: 400;
  color: #fff;
  background-color: #21358D;
  border: 0;
  border-radius: 25px;
  margin: 48px auto 0;
  transition: opacity .2s linear;
}
.jc-contact-form .elementor-button[type="submit"]:hover { opacity: .88; }

/* ---- Nota de consentimento (.agree_area) ------------------------------ */
.jc-contact-agree { margin-top: 24px; }
.jc-contact-agree p { color: #666; font-size: 16px; line-height: 1.5; }
.jc-contact-agree a {
  color: #666;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ---- Aviso de fallback (form não reconhecido) ------------------------- */
.jc-contact-note { color: #515151; }

/* ---- Responsivo (espelha reactive.css / breakpoints da origem) -------- */
@media screen and (max-width: 1024px) {
  .jc-contact-form .elementor-form-fields-wrapper { margin-left: -10px; margin-right: -10px; }
  .jc-contact-form .elementor-field-group { padding-left: 10px; padding-right: 10px; margin-bottom: 20px; }
  .jc-contact-form .elementor-field-group > label { font-size: 18px; margin-bottom: 14px; }
  .jc-contact-form .elementor-field.elementor-field-textual { font-size: 14px; }
  .jc-contact-form input.elementor-field-textual { height: 54px; }
  .jc-contact-form textarea.elementor-field-textual { height: 320px; }
  .jc-contact-form .elementor-button[type="submit"] { font-size: 16px; margin-top: 40px; }
}
@media screen and (max-width: 640px) {
  .jc-contact-form .elementor-field-group > label { font-size: 15px; margin-bottom: 10px; }
  .jc-contact-form .elementor-field.elementor-field-textual { font-size: 13px; }
  .jc-contact-form input.elementor-field-textual { height: 40px; padding: 0 12px; }
  .jc-contact-form textarea.elementor-field-textual { height: 260px; padding: 12px; }
  .jc-contact-form .elementor-button[type="submit"] {
    width: 180px; height: 40px; min-height: 40px; font-size: 13px; margin-top: 20px;
  }
}

/* Homepage — reproduz o CSS bespoke de https://www.jeisys.com/eng/
 * (fonte: output.css / reactive.css). Todos os seletores sob .jc-home-*. */

/* ---------------------------------------------------------------------
 * Títulos de seção (fonte: .main_title 70px Palatino; .tit_btm 26px #21358d)
 * ------------------------------------------------------------------- */
.jc-home-main-tit .elementor-heading-title {
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 70px;
  font-weight: 400;
  line-height: 1.2;
  color: #515151;
  text-align: center;
}
.jc-home-tit-btm .elementor-heading-title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 26px;
  font-weight: 400;
  color: #21358d;
  margin-bottom: 40px;
}
.jc-home-tit-btm .elementor-heading-title .vujahday,
.jc-home-tit-btm .elementor-heading-title span {
  font-size: 36px;
  font-style: italic;
}

@media (max-width: 1024px) {
  .jc-home-main-tit .elementor-heading-title { font-size: 48px; }
  .jc-home-tit-btm .elementor-heading-title { font-size: 20px; }
  .jc-home-tit-btm .elementor-heading-title .vujahday,
  .jc-home-tit-btm .elementor-heading-title span { font-size: 28px; }
}
@media (max-width: 640px) {
  .jc-home-main-tit .elementor-heading-title { font-size: 36px; }
}

/* ---------------------------------------------------------------------
 * HERO — .mvisual (swiper -> media-carousel Pro). Imagem 613px, tagline
 * branca 60px Palatino sobreposta no rodapé, alinhada à esquerda.
 * ------------------------------------------------------------------- */
.jc-home-hero { position: relative; overflow: hidden; }
.jc-home-hero-carousel { width: 100%; }
.jc-home-hero-carousel .elementor-main-swiper,
.jc-home-hero-carousel .swiper,
.jc-home-hero-carousel .swiper-slide { height: 613px; }
.jc-home-hero-carousel .elementor-carousel-image {
  background-size: cover;
  background-position: 50% 50%;
}
.jc-home-hero-tagline {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1640px;
  padding: 0 40px 95px;
  z-index: 2;
  pointer-events: none;
}
.jc-home-hero-tagline .elementor-heading-title {
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  text-align: left;
}
@media (max-width: 1024px) {
  .jc-home-hero-carousel .elementor-main-swiper,
  .jc-home-hero-carousel .swiper,
  .jc-home-hero-carousel .swiper-slide { height: 460px; }
  .jc-home-hero-tagline { padding: 0 24px 56px; }
  .jc-home-hero-tagline .elementor-heading-title { font-size: 34px; }
}
@media (max-width: 640px) {
  .jc-home-hero-carousel .elementor-main-swiper,
  .jc-home-hero-carousel .swiper,
  .jc-home-hero-carousel .swiper-slide { height: 380px; }
  .jc-home-hero-tagline .elementor-heading-title { font-size: 26px; }
}

/* ---------------------------------------------------------------------
 * PRODUCT — fundo #F5F7FA, cartões brancos (logo + arte + descrição).
 * ------------------------------------------------------------------- */
.jc-home-product-sec { background: #F5F7FA; }
.jc-home-product-card {
  box-shadow: 0 10px 40px rgba(30, 33, 36, 0.06);
  transition: transform .25s ease, box-shadow .25s ease;
}
.jc-home-product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 50px rgba(30, 33, 36, 0.12);
}
.jc-home-product-logo img { max-height: 40px; width: auto; object-fit: contain; }
.jc-home-product-txt p {
  font-size: 18px;
  line-height: 1.6;
  color: #464C53;
}

/* ---------------------------------------------------------------------
 * TREATMENT — cartões (imagem + ícone + rótulo). Rótulo Palatino 24/700.
 * ------------------------------------------------------------------- */
.jc-home-treatment-card {
  border: 1px solid #eef0f3;
  transition: box-shadow .25s ease;
}
.jc-home-treatment-card:hover { box-shadow: 0 12px 30px rgba(30, 33, 36, 0.10); }
.jc-home-treatment-img img { border-radius: 12px; }
.jc-home-treatment-icon img { height: 36px; width: auto; }
.jc-home-treatment-label .elementor-heading-title {
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 20px;
  font-weight: 700;
  color: #515151;
}

/* ---------------------------------------------------------------------
 * COMPANY — cartões escuros (fonte: sobre bg-image, dt 40px Palatino,
 * dd 20px, texto branco/60%).
 * ------------------------------------------------------------------- */
.jc-home-company-card {
  overflow: hidden;
  transition: transform .25s ease, background-color .25s ease;
}
.jc-home-company-card:hover { transform: translateY(-6px); background-color: #21358d; }
.jc-home-company-title .elementor-heading-title {
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.jc-home-company-txt,
.jc-home-company-txt p {
  font-size: 16px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.7);
}

/* ---------------------------------------------------------------------
 * NEWS / INSIGHTS (Exhibition Event / Skin Library) — grade sem caixa.
 * Fonte: figure aspect 307/205; .tt 24px Palatino 700 #515151; p 18px
 * #464C53 (2 linhas); .date 16px #6D7882 com borda-topo.
 * ------------------------------------------------------------------- */
.jc-home-news-img img {
  width: 100%;
  aspect-ratio: 307 / 205;
  object-fit: cover;
  border-radius: 12px;
  display: block;
}
.jc-home-news-title .elementor-heading-title {
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  color: #515151;
  margin-top: 16px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.jc-home-news-excerpt,
.jc-home-news-excerpt p {
  font-size: 16px;
  line-height: 1.5;
  color: #464C53;
  margin-top: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.jc-home-news-date .elementor-heading-title {
  font-size: 15px;
  font-weight: 400;
  color: #6D7882;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #E6E8EA;
}

/* ---------------------------------------------------------------------
 * WORLDWIDE — só título (mapa SVG inline não exportável). Fundo #F5F7FA.
 * ------------------------------------------------------------------- */
.jc-home-worldwide-sec { background: #F5F7FA; }

/* ---------------------------------------------------------------------
 * CONTACT US — seção escura, texto branco, botões pílula contornados.
 * ------------------------------------------------------------------- */
.jc-home-contact-sec { background: #1E2124; }
.jc-home-contact-title .elementor-heading-title {
  font-family: "Palatino Linotype", "Book Antiqua", "Lora", Palatino, serif;
  font-size: 48px;
  font-weight: 400;
  color: #fff;
  text-align: center;
}
.jc-home-contact-txt,
.jc-home-contact-txt p {
  font-size: 20px;
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
}
.jc-home-contact-btn .elementor-button {
  background: transparent;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 25px;
  height: 50px;
  min-width: 230px;
  font-size: 18px;
  line-height: 48px;
  padding: 0 28px;
  transition: background-color .2s linear, color .2s linear;
}
.jc-home-contact-btn .elementor-button:hover {
  background: #fff;
  color: #1E2124;
}

/* ---------------------------------------------------------------------
 * Botão MORE — pílula contornada azul (#21358D), fonte 18px.
 * ------------------------------------------------------------------- */
.jc-home-more .elementor-button {
  background: transparent;
  color: #21358D;
  border: 1px solid #21358D;
  border-radius: 25px;
  height: 50px;
  line-height: 48px;
  font-size: 16px;
  letter-spacing: .04em;
  padding: 0 30px;
  transition: background-color .2s linear, color .2s linear;
}
.jc-home-more .elementor-button:hover { background: #21358D; color: #fff; }
.jc-home-more-light .elementor-button { color: #fff; border-color: rgba(255, 255, 255, 0.6); }
.jc-home-more-light .elementor-button:hover { background: #fff; color: #1D2733; border-color: #fff; }

/* Insights (listagens .gallery_list) — reproduz o CSS bespoke do site de origem.
   IMPORTANTE: o Elementor não emite _css_classes de CONTAINER no front-end;
   por isso toda a fidelidade abaixo está ancorada em classes de WIDGET
   (jc-insights-vtit / -title / -total / -card-*), que sempre renderizam. O
   layout de colunas/gaps do grid vem de controles nativos do container
   (width/flex_gap responsivos), aplicados por ID pelo próprio Elementor. */

/* ---- Visual de abertura (.svisual) — título branco centralizado sobre a imagem ---- */
.jc-insights-vtit .elementor-heading-title {
	font-family:"Palatino Linotype","Lora",serif;
	font-weight:400;
	font-size:68px;
	line-height:1;
	color:#ffffff;
	text-align:center;
}

/* ---- Título da seção (.main_title) ---- */
.jc-insights-title .elementor-heading-title {
	font-family:"Palatino Linotype","Lora",serif;
	font-weight:400;
	font-size:70px;
	line-height:1.2;
	color:#515151;
	text-align:center;
}

/* ---- Contagem "Total N" (.total > strong.c_iden) ---- */
.jc-insights-total .elementor-widget-container { text-align:center; }
.jc-insights-total p { margin:0; font-size:16px; color:#222222; }
.jc-insights-total strong { font-weight:700; color:#21358d; }

/* ---- Chips de filtro (quando existirem) ---- */
.jc-insights-filters .elementor-icon-list-text { font-size:15px; color:#515151; }

/* ---- Card (li do .gallery_list) ---- */
/* thumbnail: recorte uniforme (.imgfit -> aspect-ratio 307/205, object-fit cover) */
.jc-insights-card-img { margin-block-end:16px !important; }
.jc-insights-card-img img {
	display:block;
	width:100%;
	aspect-ratio:307/205;
	object-fit:cover;
}

/* título do card (.tt) — serifado, 2 linhas, hover sublinhado */
.jc-insights-card-title { margin-block-end:12px !important; }
.jc-insights-card-title .elementor-heading-title {
	font-family:"Palatino Linotype","Book Antiqua",Palatino,serif;
	font-weight:700;
	font-size:24px;
	line-height:1.2;
	color:#515151;
	overflow:hidden;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
}
.jc-insights-card-title .elementor-heading-title a { color:#515151; }
.jc-insights-card-title .elementor-heading-title a:hover { text-decoration:underline; }

/* resumo (.txt p) — 1 linha, Roboto */
.jc-insights-card-excerpt { margin-block-end:12px !important; }
.jc-insights-card-excerpt p {
	margin:0;
	font-family:"Roboto",sans-serif;
	font-size:18px;
	color:#464c53;
	overflow:hidden;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:1;
}

/* data (.date) — separador superior, Roboto */
.jc-insights-card-date { margin-block-end:0 !important; border-top:1px solid #e6e8ea; padding-top:12px; }
.jc-insights-card-date p { margin:0; font-family:"Roboto",sans-serif; font-size:16px; color:#6d7882; }

/* ---- Responsivo (espelha output.css/reactive.css) ---- */
@media screen and (max-width:1023px) {
	.jc-insights-vtit .elementor-heading-title { font-size:56px; }
	.jc-insights-title .elementor-heading-title { font-size:50px; }
	.jc-insights-card-title .elementor-heading-title { font-size:22px; }
	.jc-insights-card-excerpt p { font-size:16px; }
	.jc-insights-card-date p { font-size:15px; }
}
@media screen and (max-width:767px) {
	.jc-insights-vtit .elementor-heading-title { font-size:40px; }
	.jc-insights-title .elementor-heading-title { font-size:36px; }
	.jc-insights-card-title .elementor-heading-title { font-size:20px; }
	.jc-insights-card-excerpt p { font-size:14px; }
	.jc-insights-card-date p { font-size:13px; }
}

/* Product pages (/eng/product/*.php) — reproduz o CSS bespoke de output.css.
 * Todos os seletores ficam sob classes jc-product-* / jc-tit / jc-spec-table.
 */

/* -------------------------------------------------------------------------
 * Títulos de seção (.tit_product)
 * Origem: .tit_product{display:flex;justify-content:center;align-items:center;
 * gap:6px;margin-bottom:20px;line-height:1.3} strong{font-size:48px;#515151;
 * Palatino/Lora} span{font-size:56px;font-weight:400;Vujahday Script + gradiente}
 * Cada produto usa seu gradiente/cor de acento (definidos por slug abaixo) e
 * a fonte "Vujahday Script"; as SVGs decorativas de sublinhado (.t1-.t5:before)
 * são omitidas.
 * ------------------------------------------------------------------------- */
.jc-tit .elementor-heading-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex-wrap: wrap;
  line-height: 1.3;
  font-family: "Palatino Linotype", "Lora", serif;
  font-weight: 400;
}
.jc-tit .elementor-heading-title strong {
  font-size: 48px;
  font-weight: 700;
  color: #515151;
  font-family: "Palatino Linotype", "Lora", serif;
}
.jc-tit .elementor-heading-title span {
  font-size: 56px;
  font-weight: 400;
  font-family: "Vujahday Script", cursive;
}
/* Cada produto tem sua própria cor de acento (gradiente de texto), como no
   original (.g02.s01..s07 .tit_product span). O slug vem do body_class. */
.jc-slug-density .jc-tit .elementor-heading-title span,
.jc-slug-potenza .jc-tit .elementor-heading-title span,
.jc-slug-liniarz .jc-tit .elementor-heading-title span {
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
.jc-slug-density .jc-tit .elementor-heading-title span { background-image: linear-gradient(98deg, #0F7A6D 17.59%, #003B55 106.79%); }
.jc-slug-potenza .jc-tit .elementor-heading-title span { background-image: linear-gradient(98deg, #18ABAD 17.59%, #007476 106.79%); }
/* Sem laranja (a pedido): LinearZ e D'Liv usam tons não-laranja. */
.jc-slug-liniarz .jc-tit .elementor-heading-title span { background-image: linear-gradient(98deg, #17A2A5 17.59%, #0B6E70 106.79%); }
.jc-slug-dliv .jc-tit .elementor-heading-title span    { color: #C8A96A; }
.jc-slug-cellecv .jc-tit .elementor-heading-title span { color: #17509B; }
.jc-slug-tri-beam .jc-tit .elementor-heading-title span { color: #730021; }
.jc-slug-edge-one2 .jc-tit .elementor-heading-title span { color: #E60012; }

/* -------------------------------------------------------------------------
 * Hero do produto (.svisual): fundo em gradiente claro full-width atrás do
 * aparelho + marca-d'água. Aproxima o tom cremoso do banner de origem.
 * ------------------------------------------------------------------------- */
.jc-product-hero { position: relative; z-index: 0; overflow: hidden; }
.jc-product-hero::before {
  content: "";
  position: absolute;
  top: 0; bottom: 0; left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  background: linear-gradient(180deg, #f6f3ef 0%, #faf8f5 45%, #ffffff 100%);
  z-index: -2;
}
/* Marca-d'água com o nome do produto atrás do aparelho. */
.jc-product-hero::after {
  position: absolute;
  top: 46%; left: 50%;
  transform: translate(-50%, -50%);
  font-family: "Palatino Linotype", "Lora", serif;
  font-weight: 700;
  font-size: clamp(90px, 17vw, 280px);
  line-height: 1;
  letter-spacing: 0.04em;
  color: rgba(30, 33, 36, 0.05);
  white-space: nowrap;
  pointer-events: none;
  z-index: -1;
}
.jc-slug-density .jc-product-hero::after   { content: "DENSITY"; }
.jc-slug-potenza .jc-product-hero::after   { content: "POTENZA"; }
.jc-slug-liniarz .jc-product-hero::after   { content: "LinearZ"; }
.jc-slug-dliv .jc-product-hero::after      { content: "D\2019Liv"; }
.jc-slug-cellecv .jc-product-hero::after   { content: "Cellec V"; }
.jc-slug-tri-beam .jc-product-hero::after  { content: "TRI-BEAM"; }
.jc-slug-edge-one2 .jc-product-hero::after { content: "Edge ONE"; }

/* -------------------------------------------------------------------------
 * Parágrafo introdutório centralizado (.tac / .sub_product p)
 * Origem: .sub_product p{font-size:18px;color:#666;line-height:1.6} .tac{center}
 * ------------------------------------------------------------------------- */
.jc-product-intro { text-align: center; }
.jc-product-intro,
.jc-product-intro p {
  font-size: 18px;
  color: #666;
  line-height: 1.6;
}

/* -------------------------------------------------------------------------
 * Cartões brancos (.wbox)
 * Origem: .wbox{background:#fff;box-shadow:0 2px 30px 0 rgba(0,0,0,.03);
 * border-radius:6px}. O fundo/raio corretos também são gravados inline no
 * blueprint (editáveis); aqui reforçamos a sombra sutil.
 * ------------------------------------------------------------------------- */
.jc-product-card {
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.03);
}

/* -------------------------------------------------------------------------
 * Fileira de princípios (.principles.wbox)
 * Origem: .principles li{width:20%;text-align:center} li+li{border-left:#ddd 1px
 * dashed} .icon{height:60px} p{font-size:20px;color:#444;line-height:1.3}
 * ------------------------------------------------------------------------- */
.jc-product-principle-item p {
  font-size: 20px;
  color: #444;
  line-height: 1.3;
}
.jc-product-principle-item:not(:first-child) {
  border-left: 1px dashed #ddd;
}

/* Conclusão do resfriamento (.level5_list strong) */
.jc-product-cooling-note .elementor-heading-title {
  font-size: 22px;
  color: #222;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: -0.66px;
}

/* -------------------------------------------------------------------------
 * "Real Result" — carrossel Swiper (image-carousel).
 * Origem: .result_area .swiper-slide .img{padding:20px;background:#fff;
 * border:2px solid;border-radius:6px}. Compromisso: as bordas cinza (before) /
 * teal (after) e as legendas "Before / 4 Weeks After" não sobrevivem à
 * conversão para carrossel nativo; aplicamos um cartão branco uniforme.
 * ------------------------------------------------------------------------- */
.jc-product-results .swiper-slide-image {
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.03);
}

/* -------------------------------------------------------------------------
 * Tabela de especificações (.tbl_colm)
 * Origem: th,td{font-size:18px;padding:10px 24px;border-bottom:#dddddd80 1px}
 * th{color:#fff;background:#A1A1A1;font-weight:700;serif;width:200px}
 * td{color:#444;background:#fff}
 * ------------------------------------------------------------------------- */
.jc-spec-table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.jc-spec-table th,
.jc-spec-table td {
  font-size: 18px;
  line-height: 1.6;
  padding: 10px 24px;
  border-bottom: 1px solid rgba(221, 221, 221, 0.5);
  text-align: left;
}
.jc-spec-table th {
  color: #fff;
  background: #a1a1a1;
  font-weight: 700;
  font-family: "Palatino Linotype", "Lora", serif;
  width: 200px;
  white-space: nowrap;
}
.jc-spec-table td {
  color: #444;
  background: #fff;
}

/* -------------------------------------------------------------------------
 * Responsivo (breakpoints do site: tablet <=1024px, mobile <=767px)
 * ------------------------------------------------------------------------- */
@media (max-width: 1024px) {
  .jc-tit .elementor-heading-title strong { font-size: 30px; }
  .jc-tit .elementor-heading-title span { font-size: 40px; }
  .jc-product-intro,
  .jc-product-intro p { font-size: 15px; }
}
@media (max-width: 767px) {
  .jc-tit .elementor-heading-title { gap: 4px; margin-bottom: 15px; }
  .jc-tit .elementor-heading-title strong { font-size: 20px; }
  .jc-tit .elementor-heading-title span { font-size: 30px; }
  .jc-product-intro,
  .jc-product-intro p { font-size: 13px; }
  .jc-product-principle-item:not(:first-child) {
    border-left: 0;
    border-top: 1px dashed #ddd;
  }
  .jc-product-principle-item p { font-size: 13px; }
}

/* jc-fidelity:end *//* End custom CSS */