/* Loonis Sites additions on top of the template stylesheet */

/* hide animated elements until the motion kit runs (removed instantly if it can't) */
html.lx-motion [animate="fade-up"],
html.lx-motion [animate="heading-reveal"],
html.lx-motion [animate="stagger"],
html.lx-motion [animate="image-reveal"],
html.lx-motion [animate="rule-draw"],
html.lx-motion [animate="bar-grow"],
html.lx-motion [animate="bar-segments"] { opacity: 0; }

/* card hover zoom (1.04, 0.6s) */
html:not(.lx-ix) [class*="_card"] img, html:not(.lx-ix) .card-media img { transition: transform var(--motion-slow) var(--ease-1); }
html:not(.lx-ix) [class*="_card"]:hover img:not([class*="icon"]), html:not(.lx-ix) .card-media:hover img { transform: scale(1.04); }
.card-media { overflow: hidden; }

/* lightbox */
.lx-lightbox { position: fixed; inset: 0; z-index: 9999; background: var(--tone-overlay-92); display: flex; align-items: center; justify-content: center; }
.lx-lightbox img { max-width: 86vw; max-height: 86vh; object-fit: contain; border-radius: var(--radius-8); }
.lx-lightbox button { position: absolute; background: none; border: 0; color: var(--color-white); font-size: calc(var(--size-h2) * var(--scale-headings)); cursor: pointer; padding: var(--spacing-1rem); line-height: var(--leading-100); }
.lx-lb-close { top: 1rem; right: 1rem; }
.lx-lb-prev { left: 1rem; top: 50%; transform: translateY(-50%); }
.lx-lb-next { right: 1rem; top: 50%; transform: translateY(-50%); }

/* tabs: Webflow hides inactive panes */
.w-tab-pane { display: none; }
.w-tab-pane.w--tab-active { display: block; }

/* single-page lists: Webflow hides pagination when there is nothing to page */
.w-pagination-wrapper { display: none; }


/* menu links the converter added to templates that only had a demo "Pages" dropdown */
.lx-nav-added { white-space: nowrap; }

/* ---- lx-icons: one-colour logo and icons follow the role colours (written by _tools/design-system/icons.mjs) ----
   The template's own one-colour SVG files are drawn as a mask filled with a role colour; the file
   itself is moved out of view. This runs in every theme except Original, and when the Style panel
   has changed a colour (<html data-colours="custom">). In Original the files show as drawn.
   The selectors match the template's own file names only: an owner logo or a replaced image has
   another src, so it shows exactly as uploaded and is never recoloured. */
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6a80_Hamburger-menu-4bf750.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6b77_Right---6-188080.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6c21_instagram-4eb68a.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6c22_twitter-21781c.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6c23_linkedin-207b2f.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68ecd8c139723271bdb51b3a_formwise-logo-white-ea4cba.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/68eccaf4072b7cc32eff6853_Hamburger-menu-1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Checkmark_1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Checkmark_2.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Hamburger-menu.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Left.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo2.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo3.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo4.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo5.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo6.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Plus-5.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Right---6.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Right.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/about-icon7.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/formwise-logo-white.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/home-about-icon1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/home-about-icon2.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/instagram.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/linkedin.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/pages-icon1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/pages-icon2.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/pages-icon3.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/play.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/project-icon1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/project-icon2.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon2.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon3.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon4.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon5.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/twitter.svg"] {
  object-position: -99999px 0;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center; mask-position: center;
  -webkit-mask-size: contain; mask-size: contain;
  -webkit-mask-origin: content-box; mask-origin: content-box;
  -webkit-mask-clip: content-box; mask-clip: content-box;
  background-color: var(--role-ink);
  background-clip: content-box;
}
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6a80_Hamburger-menu-4bf750.svg"] { -webkit-mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6a80_Hamburger-menu-4bf750.svg); mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6a80_Hamburger-menu-4bf750.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6b77_Right---6-188080.svg"] { -webkit-mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6b77_Right---6-188080.svg); mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6b77_Right---6-188080.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6c21_instagram-4eb68a.svg"] { -webkit-mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6c21_instagram-4eb68a.svg); mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6c21_instagram-4eb68a.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6c22_twitter-21781c.svg"] { -webkit-mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6c22_twitter-21781c.svg); mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6c22_twitter-21781c.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68eccaf4072b7cc32eff6c23_linkedin-207b2f.svg"] { -webkit-mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6c23_linkedin-207b2f.svg); mask-image: url(/_t/formwise/cms/68eccaf4072b7cc32eff6c23_linkedin-207b2f.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/cms/68ecd8c139723271bdb51b3a_formwise-logo-white-ea4cba.svg"] { -webkit-mask-image: url(/_t/formwise/cms/68ecd8c139723271bdb51b3a_formwise-logo-white-ea4cba.svg); mask-image: url(/_t/formwise/cms/68ecd8c139723271bdb51b3a_formwise-logo-white-ea4cba.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/68eccaf4072b7cc32eff6853_Hamburger-menu-1.svg"] { -webkit-mask-image: url(/_t/formwise/images/68eccaf4072b7cc32eff6853_Hamburger-menu-1.svg); mask-image: url(/_t/formwise/images/68eccaf4072b7cc32eff6853_Hamburger-menu-1.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Checkmark_1.svg"] { -webkit-mask-image: url(/_t/formwise/images/Checkmark_1.svg); mask-image: url(/_t/formwise/images/Checkmark_1.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Checkmark_2.svg"] { -webkit-mask-image: url(/_t/formwise/images/Checkmark_2.svg); mask-image: url(/_t/formwise/images/Checkmark_2.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Hamburger-menu.svg"] { -webkit-mask-image: url(/_t/formwise/images/Hamburger-menu.svg); mask-image: url(/_t/formwise/images/Hamburger-menu.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Left.svg"] { -webkit-mask-image: url(/_t/formwise/images/Left.svg); mask-image: url(/_t/formwise/images/Left.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo1.svg"] { -webkit-mask-image: url(/_t/formwise/images/Logo1.svg); mask-image: url(/_t/formwise/images/Logo1.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo2.svg"] { -webkit-mask-image: url(/_t/formwise/images/Logo2.svg); mask-image: url(/_t/formwise/images/Logo2.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo3.svg"] { -webkit-mask-image: url(/_t/formwise/images/Logo3.svg); mask-image: url(/_t/formwise/images/Logo3.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo4.svg"] { -webkit-mask-image: url(/_t/formwise/images/Logo4.svg); mask-image: url(/_t/formwise/images/Logo4.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo5.svg"] { -webkit-mask-image: url(/_t/formwise/images/Logo5.svg); mask-image: url(/_t/formwise/images/Logo5.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Logo6.svg"] { -webkit-mask-image: url(/_t/formwise/images/Logo6.svg); mask-image: url(/_t/formwise/images/Logo6.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Plus-5.svg"] { -webkit-mask-image: url(/_t/formwise/images/Plus-5.svg); mask-image: url(/_t/formwise/images/Plus-5.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Right---6.svg"] { -webkit-mask-image: url(/_t/formwise/images/Right---6.svg); mask-image: url(/_t/formwise/images/Right---6.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/Right.svg"] { -webkit-mask-image: url(/_t/formwise/images/Right.svg); mask-image: url(/_t/formwise/images/Right.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/about-icon7.svg"] { -webkit-mask-image: url(/_t/formwise/images/about-icon7.svg); mask-image: url(/_t/formwise/images/about-icon7.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/formwise-logo-white.svg"] { -webkit-mask-image: url(/_t/formwise/images/formwise-logo-white.svg); mask-image: url(/_t/formwise/images/formwise-logo-white.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/home-about-icon1.svg"] { -webkit-mask-image: url(/_t/formwise/images/home-about-icon1.svg); mask-image: url(/_t/formwise/images/home-about-icon1.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/home-about-icon2.svg"] { -webkit-mask-image: url(/_t/formwise/images/home-about-icon2.svg); mask-image: url(/_t/formwise/images/home-about-icon2.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/instagram.svg"] { -webkit-mask-image: url(/_t/formwise/images/instagram.svg); mask-image: url(/_t/formwise/images/instagram.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/linkedin.svg"] { -webkit-mask-image: url(/_t/formwise/images/linkedin.svg); mask-image: url(/_t/formwise/images/linkedin.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/pages-icon1.svg"] { -webkit-mask-image: url(/_t/formwise/images/pages-icon1.svg); mask-image: url(/_t/formwise/images/pages-icon1.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/pages-icon2.svg"] { -webkit-mask-image: url(/_t/formwise/images/pages-icon2.svg); mask-image: url(/_t/formwise/images/pages-icon2.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/pages-icon3.svg"] { -webkit-mask-image: url(/_t/formwise/images/pages-icon3.svg); mask-image: url(/_t/formwise/images/pages-icon3.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/play.svg"] { -webkit-mask-image: url(/_t/formwise/images/play.svg); mask-image: url(/_t/formwise/images/play.svg); background-color: var(--role-on-photo); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/project-icon1.svg"] { -webkit-mask-image: url(/_t/formwise/images/project-icon1.svg); mask-image: url(/_t/formwise/images/project-icon1.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/project-icon2.svg"] { -webkit-mask-image: url(/_t/formwise/images/project-icon2.svg); mask-image: url(/_t/formwise/images/project-icon2.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon1.svg"] { -webkit-mask-image: url(/_t/formwise/images/service-icon1.svg); mask-image: url(/_t/formwise/images/service-icon1.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon2.svg"] { -webkit-mask-image: url(/_t/formwise/images/service-icon2.svg); mask-image: url(/_t/formwise/images/service-icon2.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon3.svg"] { -webkit-mask-image: url(/_t/formwise/images/service-icon3.svg); mask-image: url(/_t/formwise/images/service-icon3.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon4.svg"] { -webkit-mask-image: url(/_t/formwise/images/service-icon4.svg); mask-image: url(/_t/formwise/images/service-icon4.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/service-icon5.svg"] { -webkit-mask-image: url(/_t/formwise/images/service-icon5.svg); mask-image: url(/_t/formwise/images/service-icon5.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/formwise/images/twitter.svg"] { -webkit-mask-image: url(/_t/formwise/images/twitter.svg); mask-image: url(/_t/formwise/images/twitter.svg); background-color: var(--role-on-photo); }
/* logos and icons drawn in several greys: in dark themes they are inverted so they stay readable */
html[data-theme="site-night"] img[src$="/_t/formwise/cms/68f0c101c8fcad127336e098_value-icon-7fde10.svg"],
html[data-theme="inverted"] img[src$="/_t/formwise/cms/68f0c101c8fcad127336e098_value-icon-7fde10.svg"],
html[data-theme="site-night"] img[src$="/_t/formwise/images/FormWise-Logo.svg"],
html[data-theme="inverted"] img[src$="/_t/formwise/images/FormWise-Logo.svg"],
html[data-theme="site-night"] img[src$="/_t/formwise/images/value-icon.svg"],
html[data-theme="inverted"] img[src$="/_t/formwise/images/value-icon.svg"],
html[data-theme="site-night"] img[src$="/_t/formwise/images/values-icon1.svg"],
html[data-theme="inverted"] img[src$="/_t/formwise/images/values-icon1.svg"],
html[data-theme="site-night"] img[src$="/_t/formwise/images/values-icon2.svg"],
html[data-theme="inverted"] img[src$="/_t/formwise/images/values-icon2.svg"],
html[data-theme="site-night"] img[src$="/_t/formwise/images/values-icon3.svg"],
html[data-theme="inverted"] img[src$="/_t/formwise/images/values-icon3.svg"] { filter: invert(1); }
/* ---- end lx-icons ---- */
