html { scroll-padding-top: 104px; -webkit-text-size-adjust: 100%; }
/* Two identical logo groups make one continuous, compositor-driven loop. */
.framer-2V4my .finaccru-technology { width: 100%; min-width: 0; padding-bottom: 24px; scroll-margin-top: 120px; }
.finaccru-technology *, .finaccru-technology *::before { box-sizing: border-box; }
.technology-marquee { width: 100%; overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.technology-track { display: flex; width: max-content; animation: technology-scroll 30s linear infinite; }
.finaccru-technology .technology-logos { display: flex; align-items: center; flex: 0 0 auto; gap: 48px; list-style: none; margin: 0; padding: 0 48px 0 0; }
.technology-logo { display: flex; align-items: center; justify-content: center; flex: 0 0 160px; width: 160px; height: 72px; }
.technology-logo img { display: block; width: auto; max-width: 150px; height: auto; max-height: 52px; object-fit: contain; }
@keyframes technology-scroll { to { transform: translateX(-50%); } }
@media (max-width: 809px) {
  .finaccru-technology .technology-logos { gap: 32px; padding-right: 32px; }
  .technology-logo { height: 64px; }
}
@media (prefers-reduced-motion: reduce) {
  .technology-track { width: 100%; animation: none; }
  .technology-marquee { mask-image: none; }
  .finaccru-technology .technology-logos { flex-wrap: wrap; justify-content: center; width: 100%; gap: 16px; padding: 0; }
  .technology-logos[aria-hidden="true"], .technology-logo[aria-hidden="true"] { display: none; }
  .technology-logo { flex: 1 0 160px; }
}
/* Keep the whole illustration inside its card, below the contact details. */
.framer-2V4my .framer-bboon1 { gap: 24px; }
.framer-2V4my .framer-7dy980-container {
  position: relative;
  inset: auto;
  width: 100%;
  max-width: 350px;
  aspect-ratio: 1;
  margin: auto auto 0;
}
/* The outer shell owns the hero tilt; keep the player on one aligned plane. */
#finaccru-desktop.invoice-dashboard-override {
  display: block;
  width: 100% !important;
  max-width: 1079px;
  margin-inline: auto;
  aspect-ratio: auto !important;
}
#finaccru-desktop .invoice-video-stage {
  --invoice-video-inset: 18px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: none;
  height: auto;
  margin: 0;
  perspective: none;
  transform-style: flat;
}
.invoice-video-stage .invoice-dashboard-frame {
  width: 100%;
  min-width: 0;
  height: auto;
  background: #fff;
  animation: none;
  will-change: auto;
}
#finaccru-desktop .invoice-video-screen { width: 100%; height: auto; aspect-ratio: 1920 / 1068; background: #111; }
#finaccru-desktop .invoice-video-screen::before, #finaccru-desktop .invoice-video-screen::after { display: none; }
.invoice-dashboard-video { display: block; width: 100%; height: auto; aspect-ratio: 1920 / 1068; object-fit: contain; border-radius: inherit; }
.invoice-video-play { position: absolute; z-index: 4; top: 50%; left: 50%; display: flex; align-items: center; justify-content: center; gap: 12px; width: max-content; max-width: calc(100% - 32px); min-height: 52px; padding: 14px 22px; transform: translate(-50%, -50%); border: 1px solid #ffffff80; border-radius: 14px; background: #172d25; box-shadow: 0 8px 32px #0005; color: #fff; cursor: pointer; font: 600 16px/1.3 Arial, sans-serif; }
.invoice-video-play:hover { background: #24775e; }
.invoice-video-stage :is(button, select, a):focus-visible { outline: 3px solid #5919c1; outline-offset: 3px; }
.invoice-video-play > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #ffffff1a; font-size: 12px; }
.invoice-video-loading { position: absolute; top: 16px; left: 16px; padding: 8px 12px; border-radius: 8px; background: #172d25e6; color: #fff; font: 14px/1.4 Arial, sans-serif; pointer-events: none; }
.invoice-video-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 14px var(--invoice-video-inset); border-top: 1px solid #e6eae7; color: #172d25; font: 14px/1.4 Arial, sans-serif; }
.invoice-video-toolbar p { margin: 0; font-weight: 600; }
.invoice-video-toolbar p span { display: block; margin-top: 3px; color: #59655f; font-size: 12px; font-weight: 400; }
.invoice-video-toolbar label { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 12px; white-space: nowrap; }
.invoice-video-toolbar select { min-height: 44px; max-width: 150px; padding: 8px 10px; border: 1px solid #d7dfda; border-radius: 8px; background: #f7f9f7; color: #172d25; font: 14px Arial, sans-serif; cursor: pointer; }
.invoice-video-description { margin: 12px 0 0; padding-inline: var(--invoice-video-inset); color: #4d5953; text-align: left; font: 13px/1.6 Arial, sans-serif; }
.invoice-video-error { margin-top: 12px; padding: 14px; border: 1px solid #d7dfda; border-radius: 10px; background: #fff; color: #333; font: 14px/1.5 Arial, sans-serif; }
.invoice-video-error p { margin: 0 0 8px; }
.invoice-video-error > div { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.invoice-video-error button { min-height: 44px; padding: 8px 12px; border: 1px solid #172d25; border-radius: 8px; background: #172d25; color: #fff; cursor: pointer; font: inherit; }
.invoice-video-error a { color: #24775e; text-decoration: underline; }
@media (max-width: 809px) {
  #finaccru-desktop.invoice-dashboard-override { transform: none !important; }
  .invoice-video-play { gap: 8px; min-height: 48px; padding: 10px 14px; font-size: 14px; }
  #finaccru-desktop .invoice-video-stage { --invoice-video-inset: 12px; }
  .invoice-video-toolbar { padding-block: 10px; gap: 8px; }
  .invoice-video-description { margin: 10px 0 2px; font-size: 12px; }
}
@media (max-width: 809px) {
  #benefits { padding-block: 40px !important; }
  #benefits .framer-1b87arw, #benefits .framer-18io5q8 { gap: 24px !important; }
  #benefits .framer-9texos-container > span { font-size: clamp(32px, 8.5vw, 42px) !important; line-height: 1.12 !important; letter-spacing: -.035em !important; }
  #benefits .framer-wj9jdp { gap: 28px !important; padding: 20px 16px !important; }
  #benefits [id^="benefit-"] { transform: none !important; filter: none !important; }
  #benefits .einvoice-benefit-copy > *, #benefits [data-einvoice-visual] .einvoice-benefit-ui { opacity: 1 !important; transform: none !important; }
  .peppol-model-lane, .peppol-model-lane.is-provider, .peppol-model-lane.is-authority { display: flex; flex-direction: column; min-height: 0; }
  .peppol-model-lane:not(.is-provider):not(.is-authority) .peppol-model-user-group, .peppol-model-lane.is-authority .peppol-model-user-group, .peppol-provider-grid { display: flex; flex-direction: column; flex: none; gap: 12px; margin-top: 16px; }
  .peppol-model-lane:not(.is-provider) .peppol-model-card, .peppol-provider-grid .peppol-model-card { height: auto; }
}
@media (max-width: 599px) {
  .invoice-video-toolbar { grid-template-columns: minmax(0, 1fr); }
  .invoice-video-toolbar label { justify-content: space-between; }
}
@media (max-width: 809px) {
  #cta, #cta .framer-1nogo9e, #cta .framer-p7kcm9, #cta .framer-6a85bq { height: auto !important; min-height: 0 !important; }
  #cta .framer-p7kcm9 { padding: 0 24px !important; width: 100% !important; gap: 32px !important; }
  #cta .framer-6a85bq { width: 100% !important; max-width: 100% !important; }
  #cta .framer-9texos-container > span { font-size: clamp(28px, 6vw, 44px) !important; word-break: normal !important; }
  #cta .framer-158rfr5 { flex-wrap: wrap !important; }
  #cta .framer-1h9yvul { width: 100% !important; position: relative !important; inset: auto !important; }
  .framer-ys72j, .framer-ys72j .framer-c41wci, .framer-ys72j .framer-1sezgi1 { height: auto !important; min-height: 0 !important; overflow: visible !important; }
  .framer-ys72j .framer-c41wci { padding: 0 24px !important; }
  .framer-ys72j .framer-c41wci { flex-direction: column !important; align-items: stretch !important; gap: 40px !important; }
  .framer-ys72j .framer-5uup3e { width: 100% !important; max-width: 100% !important; }
  .framer-1sezgi1, .framer-14pzody { width: 100% !important; min-width: 0 !important; }
  .framer-14pzody { flex-wrap: wrap !important; gap: 24px !important; }
}
@media (max-width: 479px) {
  #main header .framer-9texos-container > span { font-size: clamp(40px, 12vw, 52px) !important; word-break: normal !important; }
  .peppol-model-title { font-size: clamp(32px, 9vw, 40px); line-height: 1.08; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .process-dubai-route-signal { display: none; }
}

/* Keep the plans link usable at every footer width. */
.framer-ys72j :is(.framer-gfli92, .framer-5prjvu, .framer-1s3pdcj-container) { width: 100%; min-width: 0; max-width: 450px; }
.framer-ys72j .framer-5uup3e { min-width: 0; }
.invoice-subscribe-link { display: flex; justify-content: center; align-items: center; gap: 12px; width: 100%; min-height: 48px; padding: 12px 20px; border-radius: 12px; background: #111; color: #fff !important; font-size: 16px; text-decoration: none; text-align: center; box-shadow: 0 4px 10px #0003; }
.invoice-subscribe-link:hover { background: #244c3e; }
.invoice-subscribe-link:focus-visible, .contact-email-draft a:focus-visible { outline: 2px solid #24775e; outline-offset: 4px; }
.contact-email-note, .contact-email-draft { color: #455c50; font: 14px/1.6 Arial, sans-serif; overflow-wrap: anywhere; }
.contact-email-draft { padding: 16px; border: 1px solid #c9ddd2; border-radius: 12px; background: #edf6f0; }
.contact-email-draft a { display: inline-flex; align-items: center; min-height: 44px; color: #164d3a; font-weight: 600; text-decoration: underline; }
@media (pointer: coarse) {
  .framer-2V4my :is(input, select, textarea) { font-size: 16px !important; }
  .framer-2V4my :is(button, input[type="submit"]) { min-height: 44px; }
}
@media (min-width: 2000px) {
  .framer-2V4my :is(.framer-1c1b3ia, .framer-1y02139, .framer-1l1qiim, .framer-i2kv9g, .framer-1a4dpkn, .framer-173r37w, .framer-1ubgrga, .framer-1qhukpp, .framer-bnlwqs, .framer-sqv2jm),
  .framer-5P5DM .framer-p7kcm9, .framer-ys72j .framer-c41wci { max-width: 1680px; }
  .framer-2V4my p.framer-text { font-size: max(18px, var(--framer-font-size, 18px)); }
  #finaccru-desktop .invoice-video-stage { --invoice-video-inset: 24px; }
  .invoice-video-toolbar { padding-block: 20px; font-size: 18px; }
  .invoice-video-description { font-size: 16px; }
}

/* Allow the company artwork to occupy its own footer row. */
.framer-ys72j .framer-c41wci { flex-wrap: wrap; height: auto; row-gap: 32px; }
