/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[3]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[4]!./assets/styles/ui/tools.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.shape {
  pointer-events: none;
  position: absolute;
  overflow: hidden;
}
.shape > img, .shape svg {
  transform: scale(2);
  display: block;
}

.shape-top {
  left: 0;
  right: 0;
  top: 0;
}
.shape-top > svg, .shape-top img {
  transform-origin: bottom center;
}

.shape-bottom {
  left: 0;
  right: 0;
  bottom: 0;
}
.shape-bottom > img, .shape-bottom svg {
  transform-origin: top center;
}

.shape-end {
  inset: 0;
}
.shape-end > svg {
  bottom: inherit;
  position: inherit;
  right: inherit;
  top: inherit;
  transform-origin: center left;
}

.shape-fluid-x > img {
  height: auto;
  width: 100%;
}

.shape-fluid-y > svg {
  height: 100%;
  width: auto;
}

footer.bg-primary .footer-link {
  flex-wrap: nowrap;
  gap: 15px;
}
footer.bg-primary .footer-link li.link {
  position: relative;
}
footer.bg-primary .footer-link li.link a {
  font-size: 1rem;
  text-decoration: none;
  color: var(--white-color);
  font-weight: 300;
}
footer.bg-primary .footer-link li.link::after {
  content: "";
  opacity: 0;
  transition: opacity 0.2s ease-out;
  position: absolute;
  top: 102%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--white-color);
}
footer.bg-primary .footer-link li.link:hover::after {
  opacity: 1;
}

body {
  background-color: #f9fbfd;
}

.welcome p {
  font-size: clamp(14px, 2vw, 1.2rem);
  font-weight: 300;
  line-height: 1.7;
}

.tools {
  margin-top: -5rem;
  min-height: 500px;
  position: relative;
  z-index: 5;
}

.card {
  position: relative;
  border-radius: var(--bs-border-radius);
}
.card::after {
  border-radius: var(--bs-border-radius);
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 100%;
  height: 100%;
  background-color: #f1f1f1;
  transition: transform 0.3s ease-out;
  transform: rotate(0deg);
  border: 1px solid var(--bs-gray-500);
  z-index: -1;
}
.card::before {
  border-radius: var(--bs-border-radius);
  content: "";
  position: absolute;
  inset: 0;
  width: 90%;
  background-color: #eeeeee;
  transform: rotate(0deg);
  transition: transform 0.3s ease-out;
  z-index: -1;
}
.card:hover::after {
  transform: rotate(3deg);
}
.card:hover::before {
  transform: rotate(-4deg);
  border: 1px solid var(--bs-gray-500);
}
.card .card-tool-img {
  position: relative;
  max-height: 250px;
  height: 200px;
  background-color: var(--white-color);
  border-radius: var(--bs-border-radius) var(--bs-border-radius) 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.card .card-tool-img .qr-code-icon,
.card .card-tool-img .metadata-icon,
.card .card-tool-img .utm-icon,
.card .card-tool-img .column-extractor-icon,
.card .card-tool-img .image-converter-icon,
.card .card-tool-img .thread-splitter-icon,
.card .card-tool-img .pdf-unlocker-icon,
.card .card-tool-img .text-converter-icon,
.card .card-tool-img .wp-migration-icon,
.card .card-tool-img .metadata-editor-icon,
.card .card-tool-img .label-recolor-icon {
  color: var(--main-color);
}
.card .card-tool-content {
  padding: 1rem;
  background-color: var(--main-color);
  color: var(--white-color);
  flex-grow: 1;
  border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius);
}
.card .card-tool-content .tool-title {
  color: var(--white-color);
  text-decoration: none;
  font-weight: 300;
}
.card .card-tool-content .badge {
  padding: 4px 12px;
  border: 1px solid var(--white-color);
  background-color: var(--white-color);
  font-weight: 300;
  color: var(--main-color);
  font-size: 0.9rem;
}
.card .card-tool-content .tool-description {
  font-weight: 300;
}

.card .invisible-link {
  position: absolute;
  inset: 0;
}

.card .tool-stats-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 10;
  min-width: 28px;
  padding: 2px 10px;
  border-radius: 999px;
  background-color: var(--main-color);
  color: var(--white-color);
  font-size: 0.85rem;
  font-weight: 500;
  text-align: center;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

@media (min-width: 768px) {
  .tools {
    margin-top: -14rem;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwX3Rvb2xzLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtBQ0FKO0FEQ0k7RUFDSTtFQUNBO0FDQ1I7O0FERUE7RUFDSTtFQUNBO0VBQ0E7QUNDSjtBREFJO0VBQ0k7QUNFUjs7QURDQTtFQUNJO0VBQ0E7RUFDQTtBQ0VKO0FEREk7RUFDSTtBQ0dSOztBREFBO0VBQ0k7QUNHSjtBREZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQ0lSOztBRERBO0VBQ0k7RUFDQTtBQ0lKOztBREZBO0VBQ0k7RUFDQTtBQ0tKOztBQzVDUTtFQUNJO0VBQ0E7QUQrQ1o7QUM5Q1k7RUFDSTtBRGdEaEI7QUMvQ2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QURpRHBCO0FDL0NnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRGlEcEI7QUMvQ2dCO0VBQ0k7QURpRHBCOztBQXhFQTtFQUNJO0FBMkVKOztBQXhFQTtFQUNJO0VBQ0E7RUFDQTtBQTJFSjs7QUF4RUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQTJFSjs7QUF4RUE7RUFDSTtFQUNBO0FBMkVKO0FBekVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMkVSO0FBeEVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBMEVSO0FBdEVRO0VBQ0k7QUF3RVo7QUFyRVE7RUFDSTtFQUNBO0FBdUVaO0FBbkVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXFFUjtBQW5FUTs7Ozs7Ozs7Ozs7RUFXSTtBQXFFWjtBQWpFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFtRVI7QUFqRVE7RUFDSTtFQUNBO0VBQ0E7QUFtRVo7QUFoRVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFrRVo7QUEvRFE7RUFDSTtBQWlFWjs7QUE1REE7RUFDSTtFQUNBO0FBK0RKOztBQTVEQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBK0RKOztBQTVEQTtFQUNJO0lBQ0k7RUErRE47QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zaGFwZS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdWkvdG9vbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIHNoYXBlIHN0eWxlXG4uc2hhcGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICYgPiBpbWcsIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbi5zaGFwZS10b3Age1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgICYgPiBzdmcsIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gICAgfVxufVxuLnNoYXBlLWJvdHRvbSB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgJiA+IGltZywgc3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICB9XG59XG4uc2hhcGUtZW5kIHtcbiAgICBpbnNldDogMDtcbiAgICAmID4gc3ZnIHtcbiAgICAgICAgYm90dG9tOiBpbmhlcml0O1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG4gICAgfVxufVxuLnNoYXBlLWZsdWlkLXggPiBpbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5zaGFwZS1mbHVpZC15PiBzdmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbn0iLCJAaW1wb3J0IFwiLi4vY29tcG9uZW50cy9zaGFwZVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZm9vdGVyXCI7XG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWZiZmQ7XG59XG5cbi53ZWxjb21lIHAge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMTRweCwgMnZ3LCAxLjJyZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbn1cblxuLnRvb2xzIHtcbiAgICBtYXJnaW4tdG9wOiAtNXJlbTtcbiAgICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbn1cblxuLmNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgIGxlZnQ6IDhweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTUwMCk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNGRlZyk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTUwMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC10b29sLWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWF4LWhlaWdodDogMjUwcHg7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgMCAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAucXItY29kZS1pY29uLFxuICAgICAgICAubWV0YWRhdGEtaWNvbixcbiAgICAgICAgLnV0bS1pY29uLFxuICAgICAgICAuY29sdW1uLWV4dHJhY3Rvci1pY29uLFxuICAgICAgICAuaW1hZ2UtY29udmVydGVyLWljb24sXG4gICAgICAgIC50aHJlYWQtc3BsaXR0ZXItaWNvbixcbiAgICAgICAgLnBkZi11bmxvY2tlci1pY29uLFxuICAgICAgICAudGV4dC1jb252ZXJ0ZXItaWNvbixcbiAgICAgICAgLndwLW1pZ3JhdGlvbi1pY29uLFxuICAgICAgICAubWV0YWRhdGEtZWRpdG9yLWljb24sXG4gICAgICAgIC5sYWJlbC1yZWNvbG9yLWljb24ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtdG9vbC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJzLWJvcmRlci1yYWRpdXMpIHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAgIC50b29sLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0td2hpdGUtY29sb3IpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtY29sb3IpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRvb2wtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmQgLmludmlzaWJsZS1saW5rIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG59XG5cbi5jYXJkIC50b29sLXN0YXRzLWJhZGdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG1pbi13aWR0aDogMjhweDtcbiAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAudG9vbHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTRyZW07XG4gICAgfVxufVxuIiwiLy8gZm9vdGVyXG5mb290ZXIge1xuICAgICYuYmctcHJpbWFyeSB7XG4gICAgICAgIC5mb290ZXItbGluayB7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgIGdhcDogMTVweDtcbiAgICAgICAgICAgIGxpLmxpbmsge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDIlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/