.elementor-674 .elementor-element.elementor-element-1c9e547{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-674 .elementor-element.elementor-element-1c9e547:not(.elementor-motion-effects-element-type-background), .elementor-674 .elementor-element.elementor-element-1c9e547 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-ccacreme );}.elementor-674 .elementor-element.elementor-element-310db77{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:64px;--padding-bottom:40px;--padding-left:28px;--padding-right:28px;}.elementor-674 .elementor-element.elementor-element-53a9e67{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-674 .elementor-element.elementor-element-26b8639{width:var( --container-widget-width, 33% );max-width:33%;--container-widget-width:33%;--container-widget-flex-grow:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-674 .elementor-element.elementor-element-5ca6a02{text-align:start;}.elementor-674 .elementor-element.elementor-element-5ca6a02 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:42px;font-weight:600;line-height:1.2em;color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-674 .elementor-element.elementor-element-c553b39{text-align:start;font-size:15.5px;font-weight:400;line-height:1.7em;color:var( --e-global-color-primary );}.elementor-674 .elementor-element.elementor-element-216d454{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:14px 14px;--row-gap:14px;--column-gap:14px;}.elementor-674 .elementor-element.elementor-element-f7a89af{text-align:start;font-size:15.5px;font-weight:400;line-height:1.7em;color:var( --e-global-color-primary );}.elementor-674 .elementor-element.elementor-element-9d4ba41{text-align:start;font-size:15.5px;font-weight:400;line-height:1.7em;color:var( --e-global-color-primary );}.elementor-674 .elementor-element.elementor-element-24b1d8d{text-align:start;font-size:15.5px;font-weight:400;line-height:1.7em;color:var( --e-global-color-primary );}.elementor-674 .elementor-element.elementor-element-959dc2d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-674 .elementor-element.elementor-element-ba4b6ef{text-align:center;font-size:12.5px;font-weight:400;line-height:1.7em;color:var( --e-global-color-primary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-674 .elementor-element.elementor-element-5ca6a02 .elementor-heading-title{font-size:27px;line-height:1.2em;}.elementor-674 .elementor-element.elementor-element-c553b39{font-size:15px;line-height:1.65em;}.elementor-674 .elementor-element.elementor-element-f7a89af{font-size:15.5px;line-height:1.65em;}.elementor-674 .elementor-element.elementor-element-9d4ba41{font-size:15.5px;line-height:1.65em;}.elementor-674 .elementor-element.elementor-element-24b1d8d{font-size:15.5px;line-height:1.65em;}.elementor-674 .elementor-element.elementor-element-ba4b6ef{font-size:12.5px;line-height:1.65em;}}@media(min-width:768px){.elementor-674 .elementor-element.elementor-element-310db77{--content-width:1280px;}}@media(max-width:767px){.elementor-674 .elementor-element.elementor-element-310db77{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:40px;--padding-bottom:24px;--padding-left:20px;--padding-right:20px;}.elementor-674 .elementor-element.elementor-element-53a9e67{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-674 .elementor-element.elementor-element-5ca6a02{text-align:center;}.elementor-674 .elementor-element.elementor-element-5ca6a02 .elementor-heading-title{font-size:23px;line-height:1.25em;}.elementor-674 .elementor-element.elementor-element-c553b39{text-align:center;font-size:14.5px;line-height:1.6em;}.elementor-674 .elementor-element.elementor-element-f7a89af{text-align:start;font-size:15.5px;line-height:1.6em;}.elementor-674 .elementor-element.elementor-element-9d4ba41{text-align:start;font-size:15.5px;line-height:1.6em;}.elementor-674 .elementor-element.elementor-element-24b1d8d{text-align:start;font-size:15.5px;line-height:1.6em;}.elementor-674 .elementor-element.elementor-element-ba4b6ef{text-align:center;font-size:12.5px;line-height:1.6em;}}/* Start custom CSS for container, class: .elementor-element-959dc2d */.elementor-674 .elementor-element.elementor-element-959dc2d{border-top:1px solid rgba(78,50,38,.14)}/* End custom CSS */
/* Start custom CSS *//* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 1 — KIT OVERRIDES                        ║
   ╚═══════════════════════════════════════════════╝ */
body { font-family: "Poppins", sans-serif; }
h1,h2,h3 { font-family: "Cormorant Garamond", serif; letter-spacing: -.01em; }

/* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 2 — DESIGN SYSTEM VARIABLES              ║
   ╚═══════════════════════════════════════════════╝ */
:root {
  --cca-marrom:#4E3226; --cca-caramelo:#8B5E3C; --cca-caramelo-claro:#C79A6B; --cca-creme:#F7F1E8;
  --cca-bege:#E7D8C4; --cca-preto:#1C1712; --cca-preto-2:#120D08;
  --cca-ease: cubic-bezier(.4,0,.2,1);
}

/* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 3 — RESET E CORREÇÕES                    ║
   ╚═══════════════════════════════════════════════╝ */
html, body { overflow-x: clip; }
img { max-width: 100%; display: block; }
*:focus-visible { outline: 2px solid var(--cca-caramelo); outline-offset: 2px; }
a, button { color: inherit; text-decoration: none; }

/* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 4 — ANIMATION LIBRARY                    ║
   ╚═══════════════════════════════════════════════╝ */
.scroll-bottom,.scroll-top,.scroll-left,.scroll-right,.scroll-fade {
  opacity:0; will-change:opacity,transform,filter;
  transition:opacity .9s var(--cca-ease),transform .9s var(--cca-ease),filter .9s var(--cca-ease);
}
.scroll-bottom{transform:translateY(30px)}
.scroll-top   {transform:translateY(-30px)}
.scroll-left  {transform:translateX(-30px)}
.scroll-right {transform:translateX(30px)}
.scroll-fade  {filter:blur(8px)}
.scroll-bottom.ativo,.scroll-top.ativo,.scroll-left.ativo,.scroll-right.ativo,.scroll-fade.ativo{
  opacity:1;transform:none;filter:none;will-change:auto
}
/* Duplicamos as listas 6x (page.mjs) e animamos só 1/6 do percurso —
   margem generosa: garante que nunca "acaba" mesmo em monitores ultrawide/seção bem larga */
@keyframes cca-marquee    {from{transform:translateX(0)} to{transform:translateX(-16.6667%)}}
@keyframes cca-marquee-r  {from{transform:translateX(-16.6667%)} to{transform:translateX(0)}}
@keyframes cca-marquee2   {from{transform:translateX(0)} to{transform:translateX(-16.6667%)}}
@keyframes cca-marquee2-r {from{transform:translateX(-16.6667%)} to{transform:translateX(0)}}

/* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 5 — CLASSES UTILITÁRIAS                  ║
   ╚═══════════════════════════════════════════════╝ */
.cca-grad {
  background: linear-gradient(90deg, var(--cca-caramelo), var(--cca-bege));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text; display: inline;
}
.cca-grad-dark {
  background: linear-gradient(90deg, var(--cca-marrom), var(--cca-caramelo));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text; display: inline;
}
/* Carrossel nativo de Serviços (widget image-carousel) */
.cca-serv-carousel { margin-top: 0; }
.cca-serv-carousel .swiper-slide img,
.cca-serv-carousel img {
  border-radius: 10px !important; box-shadow: 0 18px 40px rgba(30,20,13,.3);
  aspect-ratio: 0.62/1; object-fit: cover;
}
.cca-serv-carousel .elementor-swiper-button,
.cca-serv-carousel .swiper-button-prev,
.cca-serv-carousel .swiper-button-next {
  width:44px !important; height:44px !important; border-radius:50% !important;
  border:1.5px solid var(--cca-bege) !important; background:rgba(247,241,232,.08) !important;
  color:var(--cca-creme) !important; display:inline-flex !important; align-items:center; justify-content:center;
  top:42% !important;
}
.cca-serv-carousel .elementor-swiper-button:hover,
.cca-serv-carousel .swiper-button-prev:hover,
.cca-serv-carousel .swiper-button-next:hover { background:var(--cca-caramelo) !important; border-color:var(--cca-caramelo) !important; }
.cca-serv-carousel .elementor-swiper-button svg,
.cca-serv-carousel .elementor-swiper-button i { font-size:16px !important; }
.cca-nav-logo .elementor-heading-title { color:#fff !important; }
.cca-logo-script { font-family:"Allura",cursive; font-size:1.4em; margin-right:6px; }
.cca-nav-links a { color:#fff; margin-left: 24px; font-size: 14.5px; }
.cca-nav-links a:hover { color: var(--cca-bege); }
.cca-btn-ghost-dark .elementor-button { background:transparent !important; color:var(--cca-marrom) !important; border:1.5px solid var(--cca-marrom) !important; }
.cca-btn-ghost-dark .elementor-button:hover { background:var(--cca-marrom) !important; color:var(--cca-creme) !important; }
.cca-btn-ghost-light .elementor-button { background:transparent !important; color:var(--cca-creme) !important; border:1.5px solid rgba(247,241,232,.55) !important; }
.cca-btn-ghost-light .elementor-button:hover { background:rgba(247,241,232,.12) !important; }

/* Botão padrão do design system — degradê (era só "o botão de dentro da caixinha", virou o modelo oficial) */
.cca-btn-primary .elementor-button {
  background: linear-gradient(to right, var(--cca-marrom), var(--cca-caramelo), var(--cca-caramelo-claro)) !important;
  color: #FFFFFF !important; border: none !important;
  box-shadow: 0 4px 15px rgba(78,50,38,.45);
}
.cca-btn-primary .elementor-button:hover { filter: brightness(1.08); }

.cca-brand-logo {
  width: 68px !important; min-width: 68px !important; flex-shrink: 0 !important;
}
.cca-brand-logo .elementor-widget-container,
.cca-brand-logo img {
  width: 68px !important; height: 68px !important; min-width:68px !important; min-height:68px !important;
  max-width:68px !important; max-height:68px !important;
  border-radius: 50% !important; object-fit: cover !important; flex-shrink:0; display:block !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.35);
}
.cca-review-img .elementor-widget-container,
.cca-review-img img {
  height: 300px !important; width: auto !important; max-width:none !important;
  border-radius: 14px !important; box-shadow: 0 14px 32px rgba(78,50,38,.16); flex-shrink:0; display:block !important;
}
@media(max-width:720px){
  .cca-review-img .elementor-widget-container, .cca-review-img img { height:220px !important; }
}

.cca-contact-row a { display:flex; align-items:center; gap:4px; }
/* Blindagem: estilo do ícone preso direto no <i>, não mais no <span class="cca-ic">.
   O Elementor Text Editor widget (TinyMCE) remove esse span ao reabrir/salvar o
   widget de e-mail/WhatsApp — o ícone ficava sem a bolinha. Agora sobrevive com
   ou sem o span. */
.cca-contact-row a, .cca-contact-row p { display:flex; align-items:center; flex-wrap:wrap; gap:4px; }
.cca-contact-row i.fas,
.cca-contact-row i.fab {
  display:inline-flex; align-items:center; justify-content:center;
  width:32px; height:32px; border-radius:50%;
  background:var(--cca-marrom); color:var(--cca-creme);
  margin-right:8px; vertical-align:middle; flex-shrink:0;
  font-size:14px; line-height:1;
}
.cca-ic { display:contents; }

/* Foto + feedbacks em montagem única (sessão Avaliações) — fundo transparente, sem moldura */
.cca-aval-montagem .elementor-widget-container,
.cca-aval-montagem img {
  width: 100% !important; height: auto !important; display: block !important;
}

/* Lightbox do carrossel de avaliações (WhatsApp) */
.cca-lightbox-img { cursor:zoom-in; }
#cca-lightbox {
  position:fixed; inset:0; background:rgba(18,13,8,.9);
  display:flex; align-items:center; justify-content:center; z-index:9999;
  opacity:0; pointer-events:none; transition:opacity .3s var(--cca-ease);
  padding: 24px;
}
#cca-lightbox.ativo { opacity:1; pointer-events:auto; }
#cca-lightbox img { max-width:90vw; max-height:88vh; border-radius:14px; box-shadow:0 30px 80px rgba(0,0,0,.5); cursor:zoom-out; }
#cca-lightbox-close {
  position:absolute; top:20px; right:24px; width:44px; height:44px; border-radius:50%;
  background:rgba(247,241,232,.12); border:1.5px solid rgba(247,241,232,.4); color:var(--cca-creme);
  display:flex; align-items:center; justify-content:center; font-size:22px; cursor:pointer; line-height:1;
}
#cca-lightbox-close:hover { background:rgba(247,241,232,.22); }

/* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 6 — HOVER / MICROINTERAÇÕES              ║
   ╚═══════════════════════════════════════════════╝ */
.elementor-widget-image img { transition: transform .5s var(--cca-ease); }

/* ╔═══════════════════════════════════════════════╗
   ║ BLOCO 7 — MEDIA QUERIES FINAIS                 ║
   ╚═══════════════════════════════════════════════╝ */
@media (max-width: 767px) {
  .scroll-bottom,.scroll-top,.scroll-left,.scroll-right,.scroll-fade { transition-duration:.5s; }
  /* Contadores (sessão Números) — centralizar número+título no mobile */
  .elementor-widget-counter .elementor-counter,
  .elementor-widget-counter .elementor-counter-title { text-align:center !important; }
  .elementor-widget-counter .elementor-counter-number-wrapper {
    display:flex !important; justify-content:center !important; width:100% !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .scroll-bottom,.scroll-top,.scroll-left,.scroll-right,.scroll-fade { opacity:1 !important; transform:none !important; filter:none !important; }
}/* End custom CSS */