/* Cabeçalho, rodapé e cards como os modelos originais (Elementor 55 e 59, listagens JetEngine 2076 e 1762). */
.dc-arrow{width:22px;height:10px;flex:none}

/* Avaliações do Google (template-parts/reviews.php): Home e páginas com testemunhos */
.dc-reviews{background:#2F4252;padding:80px 0 64px;font-family:var(--font);color:#fff}
.dc-reviews__head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:24px 40px;margin-bottom:40px}
.dc-reviews .dc-reviews__title{margin:0;font-family:var(--font);font-size:44px;font-weight:400;line-height:1.2;letter-spacing:0;color:#fff}
.dc-reviews .dc-reviews__sub{margin:10px 0 0;font-size:17px;line-height:1.5;color:#CAD9E8}
.dc-reviews .dc-reviews__badge{display:inline-flex;align-items:center;gap:14px;padding:14px 22px;border-radius:14px;background:#fff;color:#051C2F;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.18);transition:transform .2s}
.dc-reviews .dc-reviews__badge:hover{transform:translateY(-2px);color:#051C2F}
.dc-reviews__badge .dc-reviews__g{width:34px;height:34px;flex:none}
.dc-reviews__score{font-size:36px;font-weight:600;line-height:1}
.dc-reviews__meta{display:grid;gap:4px;font-size:14px;line-height:1.3;color:#5A646E}
.dc-reviews__stars{display:inline-flex;gap:2px;color:#FBBC04}
.dc-reviews__stars .dc-ico{width:18px;height:18px;stroke:none}
.dc-reviews .dc-carousel__track{grid-auto-columns:calc((100% - 48px)/3);gap:24px;padding:4px 0 10px;scrollbar-width:none}
.dc-reviews .dc-carousel__track::-webkit-scrollbar{display:none}
.dc-review{display:flex;flex-direction:column;gap:12px;padding:22px 22px 24px;border-radius:16px;background:#fff;color:#2F4252;box-shadow:0 8px 24px rgba(0,0,0,.12);transition:box-shadow .2s}
.dc-review:hover{box-shadow:0 14px 32px rgba(0,0,0,.22)}
.dc-review__top{display:flex;align-items:center;gap:12px}
.dc-review__avatar{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:#fff;font-size:18px;font-weight:600;line-height:1}
.dc-reviews .dc-review__who{display:grid;gap:2px;min-width:0;margin:0;line-height:1.25}
.dc-review__who strong{font-size:16px;font-weight:600;color:#051C2F}
.dc-review__who span{font-size:13px;color:#5A646E}
.dc-review__top .dc-reviews__g{flex:none;width:22px;height:22px;margin-left:auto}
.dc-reviews .dc-review__text{margin:0;padding:0;border:0;background:none}
/* Texto comprido: 5 linhas e "Ver mais" (assets/js/main.js). */
.dc-reviews .dc-review__text p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;margin:0;font-size:15px;line-height:1.6;color:#2F4252}
.dc-reviews .dc-review__text.is-open p{display:block;-webkit-line-clamp:unset;overflow:visible}
.dc-review__more{align-self:flex-start;margin-top:auto;padding:2px 0;border:0;background:none;color:#0F5F9F;font:600 14.5px/1.4 var(--font);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.dc-review__more:hover{color:#051C2F}
/* Setas e pontinhos numa barra por baixo dos cartões (os cartões ficam todos com a mesma altura). */
.dc-reviews .dc-carousel__arrow{width:44px;height:44px;border:1.5px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:#fff;box-shadow:none;transition:background .2s,border-color .2s,color .2s}
.dc-reviews .dc-carousel__arrow:hover{background:#39EC2A;border-color:#39EC2A;color:#051C2F}
.dc-reviews .dc-carousel__arrow .dc-ico{width:20px;height:20px}
.dc-reviews .dc-reviews__more{margin:24px 0 0;text-align:center}
.dc-reviews .dc-reviews__more a{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:16px;font-weight:500;text-decoration:underline;text-underline-offset:4px}
.dc-reviews .dc-reviews__more a:hover{color:#39EC2A}
@media (max-width:1024px){
	.dc-reviews .dc-carousel__track{grid-auto-columns:calc((100% - 24px)/2)}
	.dc-reviews .dc-reviews__title{font-size:36px}
}
@media (max-width:767px){
	.dc-reviews{padding:56px 0 48px}
	.dc-reviews .dc-reviews__title{font-size:30px}
	.dc-reviews__head{align-items:flex-start;margin-bottom:28px}
	.dc-reviews .dc-carousel__track{grid-auto-columns:88%;gap:14px}
	.dc-reviews__score{font-size:30px}
	.dc-review{padding:20px 18px 22px}
	.dc-reviews .dc-carousel__nav{gap:8px;margin-top:20px}
}

/* Cabeçalho */
.dc-header,.dc-header.is-scrolled{position:relative;top:auto;z-index:100;background:#051C2F;box-shadow:0 0 10px rgba(0,0,0,.5)}
.admin-bar .dc-header{top:auto}
.dc-header__bar{max-width:1140px;min-height:118px;padding:0 11px}
.dc-header__logo img{height:78px;width:auto}
.dc-header__cta{display:inline-flex;align-items:center;gap:15px;flex:none;margin-left:24px;background:#39EC2A;color:#051C2F!important;font:400 18px/1 var(--font);letter-spacing:.72px;padding:15px 30px;border-radius:6px;text-decoration:none!important;transition:background .2s}
.dc-header__cta:hover{background:#2bd11d}
@media (max-width:1180px){.dc-header__bar{padding:0 24px}}
@media (max-width:1100px){
	.dc-header__cta{display:inline-flex;margin-left:auto}
	.dc-nav{order:3;margin-left:8px}
	.dc-nav__panel{position:absolute;top:100%;left:0;right:0;bottom:auto;max-height:calc(100vh - 118px);transform:none;transition:none;visibility:visible;display:none;box-shadow:0 14px 24px rgba(0,0,0,.35)}
	.admin-bar .dc-nav__panel{top:100%}
	.dc-nav.is-open .dc-nav__panel{display:block}
	html.dc-lock{overflow:auto}
}
@media (max-width:767px){
	.dc-header__bar{flex-wrap:wrap;min-height:0;padding:22px 30px;gap:16px}
	.dc-header__logo img{height:66px}
	.dc-nav{order:2;margin-left:auto}
	.dc-header__cta{order:3;flex-basis:100%;justify-content:center;margin-left:0;padding:14px 20px}
	.dc-nav__panel{max-height:calc(100vh - 190px)}
}

/* Rodapé */
.dc-footer{border-top:6px solid #178CEA;background:#051C2F;color:#B2C4D1;font-size:16px;line-height:1.4}
.dc-footer a{color:#B2C4D1}
.dc-footer a:hover{color:#39EC2A}
.dc-footer__grid{max-width:1140px;display:grid;grid-template-columns:333px 250px 250px 1fr;gap:0;padding:140px 0 0}
.dc-footer__brand{padding-left:28px;max-width:262px}
.dc-footer__logo img{height:78px;width:auto;margin:0 0 12px}
.dc-footer__brand p{font-size:16px;line-height:1.4;color:#B2C4D1;margin:0}
.dc-footer .dc-footer__title{font-size:26px;font-weight:700;line-height:1.2;color:#fff;margin:0 0 26px!important}
.dc-footer__col li{margin:0 0 12px;line-height:26px}
.dc-footer__contact li{margin-bottom:12px}
.dc-footer__contact a{display:flex;align-items:center;gap:10px}
.dc-footer__contact .dc-ico{color:#39EC2A;width:18px;height:18px}
.dc-footer .dc-social{margin-top:14px;gap:5px}
.dc-footer .dc-social a{width:36px;height:36px;background:#39EC2A;color:#051C2F}
.dc-footer .dc-social a:hover{background:#9CFD56;color:#051C2F}
.dc-footer .dc-social .dc-ico{width:19px;height:19px}
.dc-footer__seal{display:inline-block;margin-top:22px}
.dc-footer__seal img{display:block;width:182px;height:auto;border-radius:15px}
.dc-footer__bottom{width:auto;max-width:1120px;margin-top:60px;border-top:1px solid rgba(178,196,209,.45);padding:40px 20px 45px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:16px;color:#fff}
.dc-footer__bottom p{margin:0;color:#fff}
.dc-footer__bottom a{color:#fff}
@media (max-width:1180px){.dc-footer__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);column-gap:24px;padding:110px 24px 0}.dc-footer__bottom{margin-left:24px;margin-right:24px}}
@media (max-width:1024px){.dc-footer__grid{grid-template-columns:1fr 1fr;gap:40px}}
@media (max-width:767px){
	.dc-footer__grid{grid-template-columns:1fr;text-align:center;padding:70px 30px 0;gap:40px}
	.dc-footer__brand{padding:0;max-width:none}
	.dc-footer__logo img{margin:0 auto 14px}
	.dc-footer .dc-footer__title{font-size:22px;margin-bottom:18px!important}
	.dc-footer__contact a,.dc-footer .dc-social{justify-content:center}
	.dc-footer__bottom{flex-direction:column;text-align:center}
}

/* Card de produto (listagem JetEngine 2076) */
.dc-site .dc-pcard{display:flex;flex-direction:column;align-items:center;text-align:center;height:100%;background:#fff;border:1px solid #D5D8DC;border-radius:10px;padding:15px;overflow:visible;transform:none}
.dc-site .dc-pcard:hover{box-shadow:0 8px 24px rgba(5,28,47,.1);transform:none}
.dc-site .dc-pcard__img{display:block;width:100%;aspect-ratio:1/1;padding:0;background:#fff}
.dc-site .dc-pcard__img img{width:100%;height:100%;object-fit:contain}
.dc-site .dc-pcard__title{font-size:16px;font-weight:600;line-height:1.3;margin:30px 0 8px;letter-spacing:0}
.dc-site .dc-pcard__title a{color:#051C2F;text-decoration:none}
.dc-site .dc-pcard__title a:hover{color:#1375C3}
.dc-site .dc-pcard__sku{font-size:13px;font-weight:500;color:#051C2F;margin:0;letter-spacing:.2px}
.dc-site .dc-pcard__actions{width:100%;margin-top:auto;padding-top:22px;display:flex;flex-direction:column;gap:10px}
.dc-site a.dc-pcard__add,.dc-site a.dc-pcard__add:hover{color:#051C2F}
.dc-site a.dc-pcard__wa{color:#008000}
.dc-site a.dc-pcard__wa:hover{color:#006400}
.dc-site .dc-pcard__add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 10px;border-radius:7px;background:#39EC2A;color:#051C2F;font-size:16px;font-weight:500;line-height:1.2;text-decoration:none}
.dc-site .dc-pcard__add:hover{background:#2bd11d;color:#051C2F}
.dc-site .dc-pcard__add.loading{opacity:.6}
.dc-site .dc-pcard__add.added::after{content:" \2713"}
.dc-pcard__plus{width:20px;height:20px;stroke-width:1.5}
.dc-site .dc-pcard__wa{display:block;width:100%;padding:12px 16px;border-radius:5px;background:#E9F7EF;color:#008000;font-size:16px;font-weight:500;line-height:1.6;text-decoration:none}
.dc-site .dc-pcard__wa:hover{background:#d6f0e0;color:#006400}
.dc-site .dc-pcard .added_to_cart{font-size:13px;font-weight:700;color:#1375C3}
.dc-site .dc-pcard--more{justify-content:center;gap:20px;background:#F5F6F7}
.dc-site .dc-pcard--more p{font-size:20px;font-weight:500;color:#051C2F;margin:0}

/* Card de projeto (listagem JetEngine 1762) */
.dc-site .dc-proj__link{position:relative;display:block;height:213px;border-radius:12px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.18);text-decoration:none;background:#2F4252;transform:none}
.dc-site .dc-proj__link:hover{transform:none;box-shadow:0 8px 18px rgba(0,0,0,.25)}
.dc-site .dc-proj__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.dc-site .dc-proj__link:hover .dc-proj__photo{transform:scale(1.04)}
.dc-site .dc-proj__band{position:absolute;left:0;right:0;bottom:0;height:75px;display:flex;align-items:center;padding:0 14px;background:rgba(47,66,82,.5)}
.dc-site .dc-proj .dc-proj__title{font-size:25px;font-weight:500;line-height:1.1;color:#fff;margin:0;letter-spacing:0;text-shadow:0 1px 3px rgba(5,28,47,.55)}
@media (max-width:767px){.dc-site .dc-proj__link{height:150px}.dc-site .dc-proj__band{height:50px}.dc-site .dc-proj .dc-proj__title{font-size:18px}}

/* Aviso de cookies (CookieYes): link da política com contraste suficiente sobre o branco. */
.cky-consent-container .cky-policy,.cky-consent-container .cky-policy:hover{color:#0F5F9F!important}

/* WhatsApp flutuante (no lugar do Click to Chat): canto inferior esquerdo, a 15 px das margens. */
.dc-wa-float{position:fixed;left:15px;bottom:15px;z-index:9999;width:60px;height:60px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 6px 16px rgba(0,0,0,.25);transition:transform .2s}
.dc-wa-float:hover,.dc-wa-float:focus-visible{color:#fff;transform:scale(1.06)}
.dc-wa-float svg{width:32px;height:32px}
.dc-wa-float__tip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);white-space:nowrap;background:#fff;color:#051C2F;font-size:14px;font-weight:500;line-height:1;padding:8px 12px;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.15);opacity:0;pointer-events:none;transition:opacity .2s}
.dc-wa-float:hover .dc-wa-float__tip,.dc-wa-float:focus-visible .dc-wa-float__tip{opacity:1}
@media print{.dc-wa-float{display:none}}

/* Página Carrinho (Elementor 2145): o rótulo "Produto" dentro da linha é para o telemóvel, onde o cabeçalho da tabela some. */
@media (min-width:769px){.woocommerce-cart .shop_table td.product-name[data-title]::before{content:none!important;display:none!important}}

/* Carrinho lateral (Side Cart): Ver Carrinho e Continuar na loja só com borda; Finalizar Orçamento azul. */
body .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn,body .xoo-wsc-container .xoo-wsc-btn{background:#fff;color:#051C2F;border:2px solid #051C2F;transition:background .2s,color .2s,border-color .2s}
body .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn:hover,body .xoo-wsc-container .xoo-wsc-btn:hover{background:#F5F6F7;color:#051C2F;border-color:#051C2F}
body .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-checkout{background:#1375C3;color:#fff;border-color:#1375C3}
body .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-checkout:hover{background:#0F5F9F;color:#fff;border-color:#0F5F9F}
body .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-checkout .amount{color:#fff}
