/* Only the imported YVEX page is affected. */
#yvex-site .services .yv-service-tab .service-body h3,
#yvex-site .services .yv-service-tab:hover .service-body h3,
#yvex-site .services .yv-service-tab.active .service-body h3,
#yvex-site .services .yv-service-tab .service-body .yv-service-title,
#yvex-site .services .yv-service-tab:hover .service-body .yv-service-title,
#yvex-site .services .yv-service-tab.active .service-body .yv-service-title {
    color: #f6f8f4 !important;
    -webkit-text-fill-color: #f6f8f4 !important;
    opacity: 1 !important;
    text-shadow: none !important;
    filter: none !important;
}
#yvex-site .services .yv-service-tab .yv-service-description {
    color: #dce6e1 !important;
    -webkit-text-fill-color: #dce6e1 !important;
}
#yvex-site .services .yv-service-tab .service-tags {
    color: #bbd0c5 !important;
    -webkit-text-fill-color: #bbd0c5 !important;
}
/* O tema define uma cor escura para strong; preserve a leitura do indicador. */
#yvex-site .device-preview .device-kpi #sectorKpi {
    color: #f6f8f4 !important;
    -webkit-text-fill-color: #f6f8f4 !important;
}
#yvex-site .device-preview .device-kpi #sectorKpi > span {
    color: #caff65 !important;
    -webkit-text-fill-color: #caff65 !important;
}
#yvex-site .contact-dialog { max-height: 90vh; max-height: 90dvh; overflow-y: auto; }
#yvex-site .contact-dialog .dialog-heading h2 { color: #f6f8f4 !important; -webkit-text-fill-color: #f6f8f4 !important; }
#yvex-site .contact-dialog label,
#yvex-site .contact-dialog .dialog-heading p { color: #dce6e1 !important; -webkit-text-fill-color: #dce6e1 !important; }
#yvex-site .contact-dialog input,
#yvex-site .contact-dialog select,
#yvex-site .contact-dialog textarea { color: #f6f8f4 !important; -webkit-text-fill-color: #f6f8f4 !important; }
#yvex-site .contact-dialog input::placeholder,
#yvex-site .contact-dialog textarea::placeholder { color: #b8cbc0 !important; -webkit-text-fill-color: #b8cbc0 !important; opacity: 1; }
#yvex-site .contact-dialog select option { color: #f6f8f4; background: #1c2b23; }
#yvex-site .contact-dialog .form-submit { color: #0b1714 !important; -webkit-text-fill-color: #0b1714 !important; }
#yvex-site .contact-dialog .form-submit:disabled { opacity: .65; cursor: wait; }
#yvex-site .contact-dialog .brief-result[hidden] { display: none !important; }
#yvex-site .yvex-form-status { margin-top: 16px; font-size: 14px; line-height: 1.6; color: #dce6e1; }
#yvex-site .yvex-form-status[data-state="success"] { color: #d0ff70; }
#yvex-site .yvex-form-status[data-state="error"] { color: #ffd0cc; }
#yvex-site .yvex-form-trap { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; overflow: hidden !important; clip-path: inset(50%); white-space: nowrap; pointer-events: none; }

/* Convite para preencher o formulário; o texto fica estável e nítido. */
#yvex-site .hero .hero-text-cta.yvex-contact-call {
    align-self: flex-start;
    max-width: 100%;
    gap: 10px;
    padding: 15px 19px;
    border: 1px solid #caff65;
    border-radius: 8px;
    background: #caff65;
    color: #0b1714;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .025em;
    line-height: 1.4;
    white-space: normal;
    text-align: left;
}
#yvex-site .hero .hero-text-cta.yvex-contact-call:hover {
    gap: 10px;
    color: #0b1714;
    background: #dfff9c;
}
#yvex-site .hero .hero-text-cta.yvex-contact-call span { font-size: 21px; }
#yvex-site .hero .hero-text-cta.yvex-contact-call:focus-visible,
#yvex-site .hero .circle-cta.yvex-contact-pulse:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
#yvex-site .hero .yvex-contact-caption {
    display: block;
    max-width: 340px;
    margin-top: 10px;
    color: #d6e4dc;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    line-height: 1.5;
}
#yvex-site .hero .circle-cta.yvex-contact-pulse {
    transform: none !important;
    animation: yvexContactHalo 3.2s ease-out infinite;
}
@keyframes yvexContactHalo {
    0%, 100% { box-shadow: 0 0 0 0 rgba(202, 255, 101, .18); }
    48% { box-shadow: 0 0 0 10px rgba(202, 255, 101, .14), 0 0 24px rgba(202, 255, 101, .16); }
    80% { box-shadow: 0 0 0 19px rgba(202, 255, 101, 0); }
}
@media (max-width: 640px) {
    #yvex-site .hero .hero-layout { grid-template-columns: minmax(0, 1fr); }
    #yvex-site .hero .hero-lower { gap: 16px; max-width: 100%; }
    #yvex-site .hero .hero-intro { flex: 1 1 0; min-width: 0; }
    #yvex-site .hero .hero-text-cta.yvex-contact-call { padding: 14px 15px; font-size: 12px; }
    #yvex-site .hero .yvex-contact-caption { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
    #yvex-site .hero .circle-cta.yvex-contact-pulse { animation: none !important; }
}

/* Alternativa de contato direto pelo WhatsApp da YVEX. */
#yvex-site a.yvex-whatsapp-link {
    display: inline-flex; flex-direction: column; align-items: flex-start;
    align-self: flex-start; gap: 4px; max-width: 100%;
    padding: 12px 16px; border: 1px solid #88b06b; border-radius: 8px;
    background: #13231d; color: #f3f8f4 !important;
    -webkit-text-fill-color: #f3f8f4 !important;
    font-family: Arial, Helvetica, sans-serif; line-height: 1.4;
    letter-spacing: 0; text-decoration: none;
}
#yvex-site a.yvex-whatsapp-link .yvex-whatsapp-title { font-size: 13px; font-weight: 700; }
#yvex-site a.yvex-whatsapp-link .yvex-whatsapp-number { font-size: 12px; font-weight: 400; }
#yvex-site a.yvex-whatsapp-link:hover { background: #20382a; border-color: #caff65; }
#yvex-site a.yvex-whatsapp-link:focus-visible { outline: 2px solid #caff65; outline-offset: 5px; }
#yvex-site .hero .yvex-contact-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; margin-top: 24px; }
#yvex-site .hero .yvex-contact-actions .hero-text-cta { margin: 0; align-self: stretch; padding-inline: 16px; }
#yvex-site .hero a.yvex-whatsapp-hero { margin-top: 0; align-self: stretch; }
#yvex-site .contact-dialog .yvex-whatsapp-option { padding: 16px; border: 1px solid #476b51; border-radius: 10px; background: #132019; }
#yvex-site .contact-dialog .yvex-whatsapp-option p { margin: 0 0 12px; color: #e3ece6; font: 14px/1.5 Arial, Helvetica, sans-serif; }
#yvex-site .contact-dialog a.yvex-whatsapp-form { width: 100%; }
#yvex-site .footer a.yvex-whatsapp-footer { padding: 0; border: 0; background: none; gap: 3px; }
#yvex-site .footer a.yvex-whatsapp-footer:hover { color: #caff65 !important; -webkit-text-fill-color: #caff65 !important; }
#yvex-site .footer .footer-end { font: 12px/1.6 Arial, Helvetica, sans-serif; letter-spacing: .015em; color: #c4d3ca; flex-wrap: wrap; }
#yvex-site .footer .footer-end > span { max-width: 100%; overflow-wrap: anywhere; }
@media (max-width: 640px) {
    #yvex-site .hero .yvex-contact-actions { flex-direction: column; margin-top: 17px; }
    #yvex-site .hero a.yvex-whatsapp-hero { padding: 11px 12px; }
    #yvex-site .hero a.yvex-whatsapp-hero .yvex-whatsapp-title { font-size: 12px; }
}

/* Convite principal com hierarquia maior, brilho em movimento e seta animada. */
#yvex-site .hero .hero-intro { flex: 1 1 0; min-width: 0; }
#yvex-site .hero .yvex-contact-panel {
    position: relative; isolation: isolate; width: 100%; max-width: 600px;
    margin-top: 20px; padding: 16px; border: 1px solid #94cf5b;
    border-left: 4px solid #caff65; border-radius: 16px;
    background: radial-gradient(ellipse at 0 0, #caff651c, transparent 70%), #0b1b17f2;
    box-shadow: 0 16px 48px #0005, 0 0 32px #aaff3c12;
}
#yvex-site .hero .yvex-contact-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
#yvex-site .hero .yvex-contact-panel-copy { min-width: 0; }
#yvex-site .hero .yvex-contact-kicker {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 3px 8px; border: 1px solid #caff6540; border-radius: 30px;
    color: #caff65; background: #caff650c;
    font: 800 11px/1.4 Arial, Helvetica, sans-serif; letter-spacing: .08em;
}
#yvex-site .hero .yvex-contact-kicker::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #caff65; box-shadow: 0 0 12px #caff65; }
#yvex-site .hero .yvex-contact-panel .yvex-contact-title {
    margin: 8px 0 0; max-width: none; color: #f6f8f4 !important;
    -webkit-text-fill-color: #f6f8f4 !important;
    font: 800 22px/1.2 Arial, Helvetica, sans-serif; letter-spacing: -.035em;
}
#yvex-site .hero .yvex-contact-panel .circle-cta {
    flex: 0 0 40px; width: 40px; height: 40px; margin: 0; font-size: 23px;
    animation: none; box-shadow: 0 0 22px #caff6530;
}
#yvex-site .hero .yvex-contact-panel .yvex-contact-actions {
    display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    align-items: stretch; gap: 10px; margin-top: 14px;
}
#yvex-site .hero .yvex-contact-panel .hero-text-cta.yvex-contact-call {
    position: relative; isolation: isolate; overflow: hidden;
    display: flex; align-items: center; justify-content: space-between;
    min-width: 0; min-height: 64px; width: 100%; gap: 10px; padding: 14px 16px;
    border: 1px solid #dcff9d; border-radius: 10px;
    background: linear-gradient(120deg, #e3ff9f, #caff65 50%, #b7ef40);
    color: #101c0a; font-size: 15px; font-weight: 900; letter-spacing: .015em;
    box-shadow: 0 6px 24px #b7ff4040;
    animation: yvexInviteBeacon 3.2s ease-in-out infinite;
}
#yvex-site .hero .yvex-contact-panel .hero-text-cta.yvex-contact-call::before {
    content: ''; position: absolute; z-index: 0; inset: -50% auto -50% 0;
    width: 48%; background: linear-gradient(90deg, transparent, #ffffffb3, transparent);
    transform: translateX(-260%) skewX(-24deg); pointer-events: none;
    animation: yvexInviteShine 3.2s ease-in-out infinite;
}
#yvex-site .hero .yvex-contact-panel .hero-text-cta .yvex-call-label {
    position: relative; z-index: 1; min-width: 0;
    font-size: inherit; line-height: 1.3; text-wrap: balance;
}
#yvex-site .hero .yvex-contact-panel .hero-text-cta .yvex-call-arrow {
    position: relative; z-index: 1; display: grid; place-items: center;
    flex: 0 0 32px; width: 32px; height: 32px;
    border-radius: 50%; background: #14210b; color: #d8ff87;
    -webkit-text-fill-color: #d8ff87; font-size: 24px; line-height: 1;
    animation: yvexInviteArrow 1.6s ease-in-out infinite;
}
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero {
    position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr);
    align-content: center; align-items: center; gap: 3px 10px;
    min-width: 0; width: 100%; padding: 12px; border: 1px solid #50e183; border-radius: 10px;
    background: linear-gradient(125deg, #35e47b, #25d366 65%, #1fc35b);
    color: #082412 !important; -webkit-text-fill-color: #082412 !important;
    box-shadow: 0 7px 22px #25d36620; animation: yvexWhatsappPulse 2.6s ease-in-out infinite;
}
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero::before {
    content: ''; grid-row: 1 / 3; width: 24px; height: 24px;
    animation: yvexWhatsappIconPulse 2.6s ease-in-out infinite;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23082412' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.5 8.5 0 0 1-8.5 8.5H4l-2 2v-9.5A8.5 8.5 0 0 1 10.5 4h2a8.5 8.5 0 0 1 8.5 7.5Z'/%3E%3Cpath d='M7 10h10M7 14h7'/%3E%3C/svg%3E") center / contain no-repeat;
}
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero .yvex-whatsapp-title { font-size: 14px; font-weight: 800; line-height: 1.3; }
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero .yvex-whatsapp-number { font-size: 13px; font-weight: 600; }
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero:hover { background: #58eb90; border-color: #a6ffc5; box-shadow: 0 8px 30px #25d36645; }
#yvex-site .hero .yvex-contact-panel .yvex-contact-caption { margin-top: 10px; max-width: none; font-size: 12px; color: #d8e5dc; }
@keyframes yvexWhatsappPulse {
    0%, 100% { box-shadow: 0 6px 18px #25d36624, 0 0 0 0 #25d36600; }
    50% { box-shadow: 0 7px 34px #25d36680, 0 0 0 6px #25d36638; }
}
@keyframes yvexWhatsappIconPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.14); }
}
@keyframes yvexInviteBeacon {
    0%, 100% { box-shadow: 0 6px 24px #b7ff4038; }
    50% { box-shadow: 0 8px 38px #b7ff4070, 0 0 0 3px #caff6529; }
}
@keyframes yvexInviteShine {
    0%, 15% { transform: translateX(-260%) skewX(-24deg); }
    58%, 100% { transform: translateX(380%) skewX(-24deg); }
}
@keyframes yvexInviteArrow {
    0%, 100% { transform: translate(0, 0); }
    45%, 60% { transform: translate(4px, -3px); }
}
#yvex-site .hero .yvex-contact-panel .hero-text-cta:is(:hover, :focus-visible),
#yvex-site .hero .yvex-contact-panel .hero-text-cta:is(:hover, :focus-visible) .yvex-call-arrow { animation-play-state: paused; }
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero:is(:hover, :focus-visible),
#yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero:is(:hover, :focus-visible)::before { animation-play-state: paused; }
@media (max-width: 640px) {
    #yvex-site .hero .yvex-contact-panel { padding: 14px; margin-top: 18px; border-radius: 13px; }
    #yvex-site .hero .yvex-contact-panel-head { gap: 12px; }
    #yvex-site .hero .yvex-contact-panel .yvex-contact-title { font-size: 20px; }
    #yvex-site .hero .yvex-contact-panel .circle-cta { width: 38px; height: 38px; flex-basis: 38px; font-size: 22px; }
    #yvex-site .hero .yvex-contact-panel .yvex-contact-actions { grid-template-columns: minmax(0, 1fr); margin-top: 14px; gap: 9px; }
    #yvex-site .hero .yvex-contact-panel .hero-text-cta.yvex-contact-call { min-height: 64px; padding: 13px; font-size: 14px; }
    #yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero { min-height: 60px; padding: 11px 13px; }
    #yvex-site .hero .yvex-contact-panel .yvex-contact-caption { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
    #yvex-site .hero .yvex-contact-panel .hero-text-cta.yvex-contact-call,
    #yvex-site .hero .yvex-contact-panel .hero-text-cta.yvex-contact-call::before,
    #yvex-site .hero .yvex-contact-panel .hero-text-cta .yvex-call-arrow,
    #yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero,
    #yvex-site .hero .yvex-contact-panel a.yvex-whatsapp-hero::before { animation: none !important; }
}

