/* 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(--role-page); font-size: calc(var(--size-2-5rem) * 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; }

/* Home 2 testimonials on phones (Oct 30 2026): the original's cards keep their desktop height (20rem) in a
   narrower slide, so the author's name wraps and the name and role run out under the card and behind the
   arrows (the Webflow original has the same overflow). On phones each card grows to hold its content and
   all cards take the height of the tallest one. */
@media screen and (max-width: 479px) {
  .home2_reviews_mask { display: flex; }
  .home2_reviews_mask > .w-slide { height: auto; flex: none; }
  .home2_reviews_cards { height: 100%; min-height: 20rem; }
}

/* ---- 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/cloudis/cms/67f22412c5f3bcc3526d7301_Checkmark-9b215c.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f226c8973e5fa8ac9915fb_Hamburger-menu-57fee7.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2479c394c00c0b1ab4f82_twitter-ce44a5.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2479c3fcfae53e5be7dd1_instagram-257364.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2480919e6c7de0a215b75_linkedin-a1307a.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2b1a0222cbff56931c38a_Plus-4-9c245d.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Checkmark.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Hamburger-menu.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Left---6.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Left.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Plus-4.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right---6.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right---6_1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right-Up_1.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0e05846e559a299218570e60d9a692e2bd904ab.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/aab0311abbac3ad10eac81b1a615866b1bf7c993.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0d72b75d8943cc78daa83b3dad8931a3515177f.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ed139052f664908b1772b07463ec0bcaa31acf90.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/7fe551331499e5104f04981a536993a3e096e2d0.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/f71f8deb15a2c59a6b7fb72442e31909e9af4d71.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/instagram-white.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/instagram.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/linkedin-white.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/linkedin.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ce8906b1353e4d399ad914694bf46a6df03ce8e7.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/cb604dec985a76ef486c63274ffe9cd12fdb41ef.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/1cc6225ef78791e2f9fc8e1a9e1e12ad487bcce4.png"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/twitter-white.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/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/cloudis/cms/67f22412c5f3bcc3526d7301_Checkmark-9b215c.svg"] { -webkit-mask-image: url(/_t/cloudis/cms/67f22412c5f3bcc3526d7301_Checkmark-9b215c.svg); mask-image: url(/_t/cloudis/cms/67f22412c5f3bcc3526d7301_Checkmark-9b215c.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f226c8973e5fa8ac9915fb_Hamburger-menu-57fee7.svg"] { -webkit-mask-image: url(/_t/cloudis/cms/67f226c8973e5fa8ac9915fb_Hamburger-menu-57fee7.svg); mask-image: url(/_t/cloudis/cms/67f226c8973e5fa8ac9915fb_Hamburger-menu-57fee7.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2479c394c00c0b1ab4f82_twitter-ce44a5.svg"] { -webkit-mask-image: url(/_t/cloudis/cms/67f2479c394c00c0b1ab4f82_twitter-ce44a5.svg); mask-image: url(/_t/cloudis/cms/67f2479c394c00c0b1ab4f82_twitter-ce44a5.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2479c3fcfae53e5be7dd1_instagram-257364.svg"] { -webkit-mask-image: url(/_t/cloudis/cms/67f2479c3fcfae53e5be7dd1_instagram-257364.svg); mask-image: url(/_t/cloudis/cms/67f2479c3fcfae53e5be7dd1_instagram-257364.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2480919e6c7de0a215b75_linkedin-a1307a.svg"] { -webkit-mask-image: url(/_t/cloudis/cms/67f2480919e6c7de0a215b75_linkedin-a1307a.svg); mask-image: url(/_t/cloudis/cms/67f2480919e6c7de0a215b75_linkedin-a1307a.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/cms/67f2b1a0222cbff56931c38a_Plus-4-9c245d.svg"] { -webkit-mask-image: url(/_t/cloudis/cms/67f2b1a0222cbff56931c38a_Plus-4-9c245d.svg); mask-image: url(/_t/cloudis/cms/67f2b1a0222cbff56931c38a_Plus-4-9c245d.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Checkmark.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Checkmark.svg); mask-image: url(/_t/cloudis/images/Checkmark.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Hamburger-menu.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Hamburger-menu.svg); mask-image: url(/_t/cloudis/images/Hamburger-menu.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Left---6.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Left---6.svg); mask-image: url(/_t/cloudis/images/Left---6.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Left.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Left.svg); mask-image: url(/_t/cloudis/images/Left.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Plus-4.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Plus-4.svg); mask-image: url(/_t/cloudis/images/Plus-4.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right---6.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Right---6.svg); mask-image: url(/_t/cloudis/images/Right---6.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right---6_1.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Right---6_1.svg); mask-image: url(/_t/cloudis/images/Right---6_1.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right-Up_1.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Right-Up_1.svg); mask-image: url(/_t/cloudis/images/Right-Up_1.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/Right.svg"] { -webkit-mask-image: url(/_t/cloudis/images/Right.svg); mask-image: url(/_t/cloudis/images/Right.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0e05846e559a299218570e60d9a692e2bd904ab.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0e05846e559a299218570e60d9a692e2bd904ab.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0e05846e559a299218570e60d9a692e2bd904ab.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/aab0311abbac3ad10eac81b1a615866b1bf7c993.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/aab0311abbac3ad10eac81b1a615866b1bf7c993.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/aab0311abbac3ad10eac81b1a615866b1bf7c993.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0d72b75d8943cc78daa83b3dad8931a3515177f.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0d72b75d8943cc78daa83b3dad8931a3515177f.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/d0d72b75d8943cc78daa83b3dad8931a3515177f.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ed139052f664908b1772b07463ec0bcaa31acf90.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ed139052f664908b1772b07463ec0bcaa31acf90.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ed139052f664908b1772b07463ec0bcaa31acf90.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/7fe551331499e5104f04981a536993a3e096e2d0.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/7fe551331499e5104f04981a536993a3e096e2d0.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/7fe551331499e5104f04981a536993a3e096e2d0.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/f71f8deb15a2c59a6b7fb72442e31909e9af4d71.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/f71f8deb15a2c59a6b7fb72442e31909e9af4d71.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/f71f8deb15a2c59a6b7fb72442e31909e9af4d71.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/instagram-white.svg"] { -webkit-mask-image: url(/_t/cloudis/images/instagram-white.svg); mask-image: url(/_t/cloudis/images/instagram-white.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/instagram.svg"] { -webkit-mask-image: url(/_t/cloudis/images/instagram.svg); mask-image: url(/_t/cloudis/images/instagram.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/linkedin-white.svg"] { -webkit-mask-image: url(/_t/cloudis/images/linkedin-white.svg); mask-image: url(/_t/cloudis/images/linkedin-white.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/linkedin.svg"] { -webkit-mask-image: url(/_t/cloudis/images/linkedin.svg); mask-image: url(/_t/cloudis/images/linkedin.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ce8906b1353e4d399ad914694bf46a6df03ce8e7.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ce8906b1353e4d399ad914694bf46a6df03ce8e7.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/ce8906b1353e4d399ad914694bf46a6df03ce8e7.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/cb604dec985a76ef486c63274ffe9cd12fdb41ef.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/cb604dec985a76ef486c63274ffe9cd12fdb41ef.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/cb604dec985a76ef486c63274ffe9cd12fdb41ef.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/1cc6225ef78791e2f9fc8e1a9e1e12ad487bcce4.png"] { -webkit-mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/1cc6225ef78791e2f9fc8e1a9e1e12ad487bcce4.png); mask-image: url(https://urkeffdjrlfjconn.public.blob.vercel-storage.com/m/1cc6225ef78791e2f9fc8e1a9e1e12ad487bcce4.png); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/twitter-white.svg"] { -webkit-mask-image: url(/_t/cloudis/images/twitter-white.svg); mask-image: url(/_t/cloudis/images/twitter-white.svg); background-color: var(--role-page); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/_t/cloudis/images/twitter.svg"] { -webkit-mask-image: url(/_t/cloudis/images/twitter.svg); mask-image: url(/_t/cloudis/images/twitter.svg); }
/* logos and icons drawn in several greys: in dark themes they are inverted so they stay readable */
html[data-theme="server-room"] img[src$="/_t/cloudis/cms/67f20da9c5f3bcc35263b7e7_Cloudis-Logo-b0c1ee.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/cms/67f20da9c5f3bcc35263b7e7_Cloudis-Logo-b0c1ee.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/cms/67f2920fe64cd5a5f9e8ba45_integration_icon1-5e3590.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/cms/67f2920fe64cd5a5f9e8ba45_integration_icon1-5e3590.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/cms/67f2922b90c68aa2f610c754_integration_icon2-d13b32.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/cms/67f2922b90c68aa2f610c754_integration_icon2-d13b32.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/cms/67f2924478a391bb6a242c01_integration_icon3-652531.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/cms/67f2924478a391bb6a242c01_integration_icon3-652531.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/cms/67f292616f824f354c351cdb_integration_icon4-1c768f.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/cms/67f292616f824f354c351cdb_integration_icon4-1c768f.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Cloudis-Logo.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Cloudis-Logo.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Logoipsum1.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Logoipsum1.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Logoipsum2.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Logoipsum2.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Logoipsum3.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Logoipsum3.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Logoipsum4.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Logoipsum4.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Logoipsum5.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Logoipsum5.svg"],
html[data-theme="server-room"] img[src$="/_t/cloudis/images/Logoipsum6.svg"],
html[data-theme="inverted"] img[src$="/_t/cloudis/images/Logoipsum6.svg"] { filter: invert(1); }
/* ---- end lx-icons ---- */
