/* C3A Bandeiras de Pagamento Pro — seletores isolados .c3a-pay-* */

.elementor-widget-c3a-bandeiras-pagamento{
	--c3a-pay-h:40px;
	--c3a-pay-mono:#172033;
	--c3a-pay-origin:right center;
}

.c3a-pay-wrap{
	box-sizing:border-box;
	width:100%;
	display:flex;
	flex-direction:column;
	align-items:stretch;
	gap:10px;
	/* herda --c3a-pay-h do wrapper Elementor; não redeclarar aqui */
}
.c3a-pay-wrap *,
.c3a-pay-wrap *::before,
.c3a-pay-wrap *::after{box-sizing:border-box}
.c3a-pay-title{
	margin:0;
	font-size:13px;
	font-weight:700;
	line-height:1.3;
	color:#172033;
}
.c3a-pay-viewport{width:100%;overflow:visible}
.c3a-pay-list{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px;
	margin:0;
	padding:0;
	list-style:none;
}
.c3a-pay-layout-column .c3a-pay-list{flex-direction:column;align-items:flex-start}
.c3a-pay-layout-grid .c3a-pay-list{display:grid}
.elementor-widget-c3a-bandeiras-pagamento.c3a-pay-layout-row:not(.c3a-pay-wrap-yes) .c3a-pay-list{flex-wrap:nowrap}

.c3a-pay-item{
	--c3a-pay-item-scale:1;
	--c3a-pay-item-h:var(--c3a-pay-h,40px);
	--c3a-pay-ih:calc(var(--c3a-pay-item-h) * var(--c3a-pay-item-scale));
	--c3a-pay-i:0;
	margin:0;
	padding:0;
	list-style:none;
	flex:0 0 auto;
	line-height:0;
}
.c3a-pay-badge{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	height:var(--c3a-pay-ih);
	min-height:var(--c3a-pay-ih);
	max-height:none;
	padding:4px 6px;
	border:1px solid transparent;
	border-radius:6px;
	background:#fff;
	color:inherit;
	text-decoration:none!important;
	transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,opacity .28s ease,filter .28s ease,border-color .28s ease;
	line-height:0;
	overflow:hidden;
	flex:0 0 auto;
	will-change:transform;
}
.c3a-pay-mark{
	display:flex;
	align-items:center;
	justify-content:center;
	height:var(--c3a-pay-ih);
	width:auto;
	min-width:calc(var(--c3a-pay-ih) * 1.35);
	line-height:0;
	transition:transform .28s ease,filter .28s ease;
}
/* Vence CSS de tema que força svg { height:1em; max-width:… } */
.elementor-widget-c3a-bandeiras-pagamento .c3a-pay-item .c3a-pay-mark svg,
.c3a-pay-item .c3a-pay-mark svg{
	display:block!important;
	height:var(--c3a-pay-ih)!important;
	width:auto!important;
	max-height:none!important;
	max-width:none!important;
	min-height:var(--c3a-pay-ih)!important;
	min-width:0!important;
}
.elementor-widget-c3a-bandeiras-pagamento .c3a-pay-item .c3a-pay-img,
.c3a-pay-item .c3a-pay-img{
	display:block!important;
	height:var(--c3a-pay-ih)!important;
	width:auto!important;
	max-height:none!important;
	max-width:none!important;
	object-fit:contain;
}
.c3a-pay-item .c3a-pay-mark i,
.c3a-pay-item .c3a-pay-mark svg.e-font-icon-svg{
	font-size:calc(var(--c3a-pay-ih) * .72)!important;
	width:1em!important;
	height:1em!important;
}

/* Aspect ratios: largura derivada da altura do item */
.c3a-pay-aspect-ratio16 .c3a-pay-item .c3a-pay-badge{
	aspect-ratio:1.6/1;
	width:calc(var(--c3a-pay-ih) * 1.6);
	min-width:calc(var(--c3a-pay-ih) * 1.6);
}
.c3a-pay-aspect-ratio2 .c3a-pay-item .c3a-pay-badge{
	aspect-ratio:2/1;
	width:calc(var(--c3a-pay-ih) * 2);
	min-width:calc(var(--c3a-pay-ih) * 2);
}
.c3a-pay-aspect-square .c3a-pay-item .c3a-pay-badge{
	aspect-ratio:1/1;
	width:var(--c3a-pay-ih);
	min-width:var(--c3a-pay-ih);
}
.c3a-pay-aspect-auto .c3a-pay-item .c3a-pay-badge{
	width:auto;
	min-width:calc(var(--c3a-pay-ih) * 1.4);
}
/* Chip modes */
.c3a-pay-chip-strip .c3a-pay-list{gap:0}
.c3a-pay-chip-strip .c3a-pay-badge{
	border-radius:0;
	border-right-width:0;
}
.c3a-pay-chip-strip .c3a-pay-item:first-child .c3a-pay-badge{border-radius:6px 0 0 6px}
.c3a-pay-chip-strip .c3a-pay-item:last-child .c3a-pay-badge{
	border-radius:0 6px 6px 0;
	border-right-width:1px;
}

/* Visual presets */
.c3a-pay-style-original .c3a-pay-badge{
	background:transparent;
	border-color:transparent;
	padding:0;
	overflow:visible;
}
.c3a-pay-style-outline .c3a-pay-badge{
	background:#fff;
	border-color:#e5e7eb;
}
.c3a-pay-style-filled .c3a-pay-badge{
	background:#f3f4f6;
	border-color:#e5e7eb;
}
.c3a-pay-style-glass .c3a-pay-badge{
	background:rgba(255,255,255,.14);
	border-color:rgba(255,255,255,.28);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
}
.c3a-pay-style-minimal .c3a-pay-badge{
	background:transparent;
	border-color:transparent;
	padding:0;
	box-shadow:none;
	overflow:visible;
}
.c3a-pay-style-monochrome .c3a-pay-badge{
	background:transparent;
	border-color:transparent;
	padding:0;
	overflow:visible;
}
.c3a-pay-style-monochrome .c3a-pay-mark{
	filter:grayscale(1);
	color:var(--c3a-pay-mono);
}
.c3a-pay-style-monochrome .c3a-pay-mark svg{
	filter:grayscale(1) brightness(.35);
}
.c3a-pay-style-monochrome .c3a-pay-mark svg [fill]:not([fill="none"]){fill:var(--c3a-pay-mono)}
.c3a-pay-style-monochrome .c3a-pay-mark svg [stroke]:not([stroke="none"]){stroke:var(--c3a-pay-mono)}

/* Hover effects */
.c3a-pay-effect-lift .c3a-pay-badge:hover,
.c3a-pay-effect-lift .c3a-pay-badge:focus-visible{transform:translateY(-4px);box-shadow:0 8px 16px rgba(22,34,51,.14)}
.c3a-pay-effect-zoom .c3a-pay-badge:hover,
.c3a-pay-effect-zoom .c3a-pay-badge:focus-visible{transform:scale(1.1)}
.c3a-pay-effect-glow .c3a-pay-badge:hover,
.c3a-pay-effect-glow .c3a-pay-badge:focus-visible{box-shadow:0 0 0 2px rgba(38,116,201,.28),0 10px 22px rgba(22,34,51,.18)}
.c3a-pay-effect-slide .c3a-pay-badge:hover,
.c3a-pay-effect-slide .c3a-pay-badge:focus-visible{transform:translateY(-3px)}
.c3a-pay-effect-pulse .c3a-pay-badge:hover,
.c3a-pay-effect-pulse .c3a-pay-badge:focus-visible{animation:c3a-pay-pulse .7s ease}
.c3a-pay-effect-tilt .c3a-pay-badge:hover,
.c3a-pay-effect-tilt .c3a-pay-badge:focus-visible{transform:perspective(420px) rotateY(-8deg) rotateX(4deg) translateY(-2px);box-shadow:0 10px 20px rgba(22,34,51,.16)}
.c3a-pay-effect-shine .c3a-pay-badge{overflow:hidden}
.c3a-pay-effect-shine .c3a-pay-badge::after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);
	transform:translateX(-120%);
	pointer-events:none;
}
.c3a-pay-effect-shine .c3a-pay-badge:hover::after,
.c3a-pay-effect-shine .c3a-pay-badge:focus-visible::after{
	animation:c3a-pay-shine .75s ease;
}
.c3a-pay-effect-bounce .c3a-pay-badge:hover,
.c3a-pay-effect-bounce .c3a-pay-badge:focus-visible{animation:c3a-pay-bounce .55s ease}
.c3a-pay-effect-colorize .c3a-pay-mark{filter:grayscale(1);opacity:.82;transition:filter .3s ease,opacity .3s ease}
.c3a-pay-effect-colorize .c3a-pay-badge:hover .c3a-pay-mark,
.c3a-pay-effect-colorize .c3a-pay-badge:focus-visible .c3a-pay-mark{filter:none;opacity:1}
.c3a-pay-effect-pop .c3a-pay-badge:hover,
.c3a-pay-effect-pop .c3a-pay-badge:focus-visible{
	transform:translateY(-5px) scale(1.06);
	box-shadow:0 12px 24px rgba(22,34,51,.18);
}

@keyframes c3a-pay-pulse{
	0%,100%{transform:scale(1)}
	50%{transform:scale(1.07)}
}
@keyframes c3a-pay-shine{
	from{transform:translateX(-120%)}
	to{transform:translateX(120%)}
}
@keyframes c3a-pay-bounce{
	0%{transform:translateY(0)}
	30%{transform:translateY(-7px)}
	50%{transform:translateY(-3px)}
	70%{transform:translateY(-5px)}
	100%{transform:translateY(0)}
}

/* Entrance (cascata) */
.c3a-pay-in-fade .c3a-pay-item,
.c3a-pay-in-rise .c3a-pay-item,
.c3a-pay-in-popin .c3a-pay-item,
.c3a-pay-in-wave .c3a-pay-item{
	animation-duration:.55s;
	animation-timing-function:cubic-bezier(.22,.61,.36,1);
	animation-fill-mode:both;
	animation-delay:calc(var(--c3a-pay-i,0) * 55ms);
}
.c3a-pay-in-fade .c3a-pay-item{animation-name:c3a-pay-in-fade}
.c3a-pay-in-rise .c3a-pay-item{animation-name:c3a-pay-in-rise}
.c3a-pay-in-popin .c3a-pay-item{animation-name:c3a-pay-in-pop}
.c3a-pay-in-wave .c3a-pay-item{animation-name:c3a-pay-in-wave;animation-duration:.7s}

@keyframes c3a-pay-in-fade{
	from{opacity:0}
	to{opacity:1}
}
@keyframes c3a-pay-in-rise{
	from{opacity:0;transform:translateY(10px)}
	to{opacity:1;transform:none}
}
@keyframes c3a-pay-in-pop{
	from{opacity:0;transform:scale(.82)}
	to{opacity:1;transform:none}
}
@keyframes c3a-pay-in-wave{
	0%{opacity:0;transform:translateY(8px) rotate(-2deg)}
	60%{opacity:1;transform:translateY(-2px) rotate(1deg)}
	100%{opacity:1;transform:none}
}

/* Idle motion (no badge — preserva hover transform) */
.c3a-pay-idle-float .c3a-pay-item .c3a-pay-mark{
	animation:c3a-pay-float 3.6s ease-in-out infinite;
	animation-delay:calc(var(--c3a-pay-i,0) * 180ms);
}
.c3a-pay-idle-breathe .c3a-pay-item .c3a-pay-mark{
	animation:c3a-pay-breathe 3.2s ease-in-out infinite;
	animation-delay:calc(var(--c3a-pay-i,0) * 160ms);
}
.c3a-pay-idle-float .c3a-pay-item .c3a-pay-badge:hover .c3a-pay-mark,
.c3a-pay-idle-breathe .c3a-pay-item .c3a-pay-badge:hover .c3a-pay-mark{
	animation-play-state:paused;
}

@keyframes c3a-pay-float{
	0%,100%{transform:translateY(0)}
	50%{transform:translateY(-3px)}
}
@keyframes c3a-pay-breathe{
	0%,100%{transform:scale(1)}
	50%{transform:scale(1.04)}
}

/* Tooltip */
.c3a-pay-tip{
	position:absolute;
	left:50%;
	bottom:calc(100% + 8px);
	transform:translateX(-50%) translateY(4px);
	padding:4px 7px;
	border-radius:4px;
	background:#172033;
	color:#fff;
	font-size:10px;
	font-weight:600;
	line-height:1;
	white-space:nowrap;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .18s ease,transform .18s ease,visibility .18s;
	z-index:5;
}
.c3a-pay-tooltip-yes .c3a-pay-badge{overflow:visible}
.c3a-pay-tooltip-yes .c3a-pay-badge:hover .c3a-pay-tip,
.c3a-pay-tooltip-yes .c3a-pay-badge:focus-visible .c3a-pay-tip{
	opacity:1;
	visibility:visible;
	transform:translateX(-50%) translateY(0);
}

/* Marquee */
.c3a-pay-wrap[data-c3a-pay-marquee="1"] .c3a-pay-viewport{overflow:hidden}
.c3a-pay-wrap[data-c3a-pay-marquee="1"] .c3a-pay-list{
	flex-wrap:nowrap;
	width:max-content;
	animation:c3a-pay-marquee linear infinite;
}
.c3a-pay-wrap[data-c3a-pay-marquee="1"]:hover .c3a-pay-list{animation-play-state:paused}
/* Evita animação de entrada competindo com marquee */
.c3a-pay-wrap[data-c3a-pay-marquee="1"] .c3a-pay-item{
	animation:none!important;
	opacity:1;
	transform:none;
}

@keyframes c3a-pay-marquee{
	from{transform:translateX(0)}
	to{transform:translateX(-50%)}
}

.c3a-pay-empty{
	padding:14px;
	border:1px dashed #98a2b3;
	border-radius:8px;
	text-align:center;
	color:#475467;
	font-size:13px;
	background:#fff;
}

@media (max-width:767px){
	.elementor-widget-c3a-bandeiras-pagamento{--c3a-pay-h:32px}
	.c3a-pay-list{gap:6px}
}

@media (prefers-reduced-motion:reduce){
	.c3a-pay-badge,
	.c3a-pay-mark,
	.c3a-pay-tip{transition:none!important;animation:none!important}
	.c3a-pay-item{animation:none!important;opacity:1!important;transform:none!important}
	.c3a-pay-effect-shine .c3a-pay-badge::after{display:none}
	.c3a-pay-wrap[data-c3a-pay-marquee="1"] .c3a-pay-list{animation:none!important;transform:none!important;flex-wrap:wrap;width:auto}
}
