/* 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-raised); font-size: calc(var(--size-2-5rem) * var(--scale-headings)); cursor: pointer; padding: var(--spacing-1rem); line-height: var(--leading-ratio-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; }

/* ---- 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$="/images/logo-ardent-grid.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/images/logo-kestrel-freight.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/images/logo-quillstone.svg"],
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/images/logo-tessellate-bio.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$="/images/logo-ardent-grid.svg"] { -webkit-mask-image: url(../images/logo-ardent-grid.svg); mask-image: url(../images/logo-ardent-grid.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/images/logo-kestrel-freight.svg"] { -webkit-mask-image: url(../images/logo-kestrel-freight.svg); mask-image: url(../images/logo-kestrel-freight.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/images/logo-quillstone.svg"] { -webkit-mask-image: url(../images/logo-quillstone.svg); mask-image: url(../images/logo-quillstone.svg); }
:is(html[data-theme]:not([data-theme="original"]), html[data-colours="custom"]) img[src$="/images/logo-tessellate-bio.svg"] { -webkit-mask-image: url(../images/logo-tessellate-bio.svg); mask-image: url(../images/logo-tessellate-bio.svg); }
/* collection sample logos (exact demo URLs only): inverted in dark themes like their local twins */
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627c0deee97100efdbcb_6ad46062005a0250a1b2b109_logo-tessellate-bio.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627c0deee97100efdbcb_6ad46062005a0250a1b2b109_logo-tessellate-bio.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627d0deee97100efdbf7_6ad4605fb62e4fc01f18e204_logo-quillstone.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627d0deee97100efdbf7_6ad4605fb62e4fc01f18e204_logo-quillstone.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627d0deee97100efdc02_6ad46060cbdc1683e38628ad_logo-ardent-grid.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627d0deee97100efdc02_6ad46060cbdc1683e38628ad_logo-ardent-grid.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627e0deee97100efdc27_6ad4605f921d6b8034ebeb60_logo-marlowe-robotics.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627e0deee97100efdc27_6ad4605f921d6b8034ebeb60_logo-marlowe-robotics.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627e0deee97100efdc4b_6ad460619767a8933dd30f50_logo-kestrel-freight.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627e0deee97100efdc4b_6ad460619767a8933dd30f50_logo-kestrel-freight.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf8e_6ad462817a2b073f9a74f2ec_logo-brightwater-care.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf8e_6ad462817a2b073f9a74f2ec_logo-brightwater-care.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf93_6ad46283d1aca027292dba26_logo-oakline-commerce.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf93_6ad46283d1aca027292dba26_logo-oakline-commerce.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627f0deee97100efdca5_6ad4605e12e57e9b2749606f_logo-sable-security.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4627f0deee97100efdca5_6ad4605e12e57e9b2749606f_logo-sable-security.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf96_6ad46281bc7a8e3c04b9c3b6_logo-corbel-industrial.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf96_6ad46281bc7a8e3c04b9c3b6_logo-corbel-industrial.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf99_6ad462833227e6262f00d47f_logo-pinecrest-veterinary.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad4632676014bedcc03bf99_6ad462833227e6262f00d47f_logo-pinecrest-veterinary.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad462810deee97100efdd1c_6ad46067921d6b8034ebf1a1_logo-harbourline.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad462810deee97100efdd1c_6ad46067921d6b8034ebf1a1_logo-harbourline.svg"],
html[data-theme="after-hours"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad462810deee97100efdd4b_6ad460663c6a202fb0da293f_logo-ferro-data-centres.svg"],
html[data-theme="inverted"] img[src="https://cdn.prod.website-files.com/6ad4564463a14fd66ccb703d/6ad462810deee97100efdd4b_6ad460663c6a202fb0da293f_logo-ferro-data-centres.svg"] { filter: invert(1); }
/* logos and icons drawn in several greys: in dark themes they are inverted so they stay readable */
html[data-theme="after-hours"] img[src$="/images/capwise-logo.svg"],
html[data-theme="inverted"] img[src$="/images/capwise-logo.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-audited-financials.svg"],
html[data-theme="inverted"] img[src$="/images/icon-audited-financials.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-capital-account-statements.svg"],
html[data-theme="inverted"] img[src$="/images/icon-capital-account-statements.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-capital-call-notices.svg"],
html[data-theme="inverted"] img[src$="/images/icon-capital-call-notices.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-data-rooms.svg"],
html[data-theme="inverted"] img[src$="/images/icon-data-rooms.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-esg-reports.svg"],
html[data-theme="inverted"] img[src$="/images/icon-esg-reports.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-lpa-side-letters.svg"],
html[data-theme="inverted"] img[src$="/images/icon-lpa-side-letters.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-quarterly-letters.svg"],
html[data-theme="inverted"] img[src$="/images/icon-quarterly-letters.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-tax-documents.svg"],
html[data-theme="inverted"] img[src$="/images/icon-tax-documents.svg"],
html[data-theme="after-hours"] img[src$="/images/icon-valuation-policy.svg"],
html[data-theme="inverted"] img[src$="/images/icon-valuation-policy.svg"],
html[data-theme="after-hours"] img[src$="/images/logo-ferro-data-centres.svg"],
html[data-theme="inverted"] img[src$="/images/logo-ferro-data-centres.svg"],
html[data-theme="after-hours"] img[src$="/images/logo-harbourline.svg"],
html[data-theme="inverted"] img[src$="/images/logo-harbourline.svg"],
html[data-theme="after-hours"] img[src$="/images/logo-marlowe-robotics.svg"],
html[data-theme="inverted"] img[src$="/images/logo-marlowe-robotics.svg"],
html[data-theme="after-hours"] img[src$="/images/logo-sable-security.svg"],
html[data-theme="inverted"] img[src$="/images/logo-sable-security.svg"],
html[data-theme="after-hours"] img[src$="/images/lp-bramwell.svg"],
html[data-theme="inverted"] img[src$="/images/lp-bramwell.svg"],
html[data-theme="after-hours"] img[src$="/images/lp-calder.svg"],
html[data-theme="inverted"] img[src$="/images/lp-calder.svg"],
html[data-theme="after-hours"] img[src$="/images/lp-fairhaven.svg"],
html[data-theme="inverted"] img[src$="/images/lp-fairhaven.svg"],
html[data-theme="after-hours"] img[src$="/images/lp-hollis.svg"],
html[data-theme="inverted"] img[src$="/images/lp-hollis.svg"],
html[data-theme="after-hours"] img[src$="/images/lp-northgate.svg"],
html[data-theme="inverted"] img[src$="/images/lp-northgate.svg"],
html[data-theme="after-hours"] img[src$="/images/lp-westmere.svg"],
html[data-theme="inverted"] img[src$="/images/lp-westmere.svg"] { filter: invert(1); }
/* ---- end lx-icons ---- */
