/* Compass Law — Elementor / WP compatibility */

html {
  margin: 0;
  scroll-behavior: auto !important;
}

body.body {
  margin: 0;
}

/*
 * Lenis scrolls the window/document. Webflow sets html{height:100%}; Lenis needs
 * content-sized height or limit ≈ 0 and wheel feels broken/stuck.
 * Native CSS smooth-scroll + Lenis = double easing (scroll feels endless).
 */
html.lenis {
  height: auto !important;
}

html.lenis body.body {
  height: auto !important;
  min-height: 100%;
  overflow-x: clip;
  overflow-y: visible;
  scroll-behavior: auto !important;
}

/* Let compass layout own the page width */
.elementor-section.elementor-section-boxed > .elementor-container {
  max-width: none;
}

/* Avoid WP block library fighting Webflow/compass resets */
.wp-site-blocks,
.entry-content {
  margin: 0;
  padding: 0;
}

/* Keep WP admin bar clickable above compass overlays */
#wpadminbar {
  z-index: 1000000 !important;
  pointer-events: auto !important;
  position: fixed !important;
}

#wpadminbar * {
  pointer-events: auto !important;
}

/* Full-bleed fixed header must not sit above / steal admin bar hits */
body.admin-bar .header-wrap {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .header-wrap {
    top: 46px;
  }
}

body.admin-bar .intro-wrap {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .intro-wrap {
    top: 46px;
  }
}

/*
 * Elementor containers set:
 *   .e-con > .elementor-widget > .elementor-widget-container { height: 100%; }
 * That collapses the 250vh sticky hero / -100vh intro overlap and breaks scroll.
 */
.elementor,
.elementor > .elementor-element,
.e-con:has(.elementor-widget-compass-home-hero),
.e-con:has(.elementor-widget-compass-home-intro),
.e-con:has(.elementor-widget-compass-home-pre-invest),
.e-con:has(.elementor-widget-compass-home-discover),
.e-con:has(.elementor-widget-compass-home-doc-prog),
.e-con:has(.elementor-widget-compass-home-cta),
.e-con:has(.elementor-widget-compass-home-reviews),
.e-con:has(.elementor-widget-compass-inner-hero),
.e-con:has(.elementor-widget-compass-about-intro),
.e-con:has(.elementor-widget-compass-about-feature),
.e-con:has(.elementor-widget-compass-about-panel),
.e-con:has(.elementor-widget-compass-about-contact),
.e-con:has(.elementor-widget-compass-how-hero),
.e-con:has(.elementor-widget-compass-how-steps),
.e-con:has(.elementor-widget-compass-how-select),
.e-con:has(.elementor-widget-compass-how-commit),
.e-con:has(.elementor-widget-compass-how-why),
.e-con:has(.elementor-widget-compass-how-image),
.e-con:has(.elementor-widget-compass-about-main),
.e-con:has(.elementor-widget-compass-post-type-process),
.e-con:has(.elementor-widget-compass-post-type-list),
.e-con:has(.elementor-widget-compass-blog-post),
.e-con:has(.elementor-widget-compass-home-footer),
.e-con:has(.elementor-widget-compass-distillery-hero),
.e-con:has(.elementor-widget-compass-distillery-list),
.e-con:has(.elementor-widget-compass-whisky-hero),
.e-con:has(.elementor-widget-compass-whisky-about),
.e-con:has(.elementor-widget-compass-whisky-process),
.e-con:has(.elementor-widget-compass-whisky-marquee),
.e-con:has(.elementor-widget-compass-whisky-contact),
.elementor-section:has(.elementor-widget-compass-home-hero),
.elementor-section:has(.elementor-widget-compass-home-intro),
.elementor-section:has(.elementor-widget-compass-home-pre-invest),
.elementor-section:has(.elementor-widget-compass-home-discover),
.elementor-section:has(.elementor-widget-compass-home-doc-prog),
.elementor-section:has(.elementor-widget-compass-home-cta),
.elementor-section:has(.elementor-widget-compass-home-reviews),
.elementor-section:has(.elementor-widget-compass-inner-hero),
.elementor-section:has(.elementor-widget-compass-about-intro),
.elementor-section:has(.elementor-widget-compass-about-feature),
.elementor-section:has(.elementor-widget-compass-about-panel),
.elementor-section:has(.elementor-widget-compass-about-contact),
.elementor-section:has(.elementor-widget-compass-about-main),
.elementor-section:has(.elementor-widget-compass-how-hero),
.elementor-section:has(.elementor-widget-compass-how-steps),
.elementor-section:has(.elementor-widget-compass-how-select),
.elementor-section:has(.elementor-widget-compass-how-commit),
.elementor-section:has(.elementor-widget-compass-how-why),
.elementor-section:has(.elementor-widget-compass-how-image),
.elementor-section:has(.elementor-widget-compass-post-type-process),
.elementor-section:has(.elementor-widget-compass-post-type-list),
.elementor-section:has(.elementor-widget-compass-blog-post),
.elementor-section:has(.elementor-widget-compass-home-footer),
.elementor-section:has(.elementor-widget-compass-distillery-hero),
.elementor-section:has(.elementor-widget-compass-distillery-list),
.elementor-section:has(.elementor-widget-compass-whisky-hero),
.elementor-section:has(.elementor-widget-compass-whisky-about),
.elementor-section:has(.elementor-widget-compass-whisky-process),
.elementor-section:has(.elementor-widget-compass-whisky-marquee),
.elementor-section:has(.elementor-widget-compass-whisky-contact) {
  --height: auto;
  --min-height: initial;
  --overflow: visible;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  max-width: none;
}

.e-con:has(.elementor-widget-compass-home-hero) > .elementor-widget,
.e-con:has(.elementor-widget-compass-home-intro) > .elementor-widget,
.elementor-section:has(.elementor-widget-compass-home-hero) > .elementor-container,
.elementor-section:has(.elementor-widget-compass-home-intro) > .elementor-container,
.elementor-section:has(.elementor-widget-compass-home-hero) .elementor-element,
.elementor-section:has(.elementor-widget-compass-home-intro) .elementor-element {
  height: auto !important;
  max-width: none;
  width: 100%;
  overflow: visible !important;
}

.elementor-widget-compass-home-hero,
.elementor-widget-compass-home-intro,
.elementor-widget-compass-home-pre-invest,
.elementor-widget-compass-home-discover,
.elementor-widget-compass-home-doc-prog,
.elementor-widget-compass-home-cta,
.elementor-widget-compass-home-reviews,
.elementor-widget-compass-inner-hero,
.elementor-widget-compass-about-intro,
.elementor-widget-compass-about-feature,
.elementor-widget-compass-about-panel,
.elementor-widget-compass-about-contact,
.elementor-widget-compass-how-hero,
.elementor-widget-compass-how-steps,
.elementor-widget-compass-how-select,
.elementor-widget-compass-how-commit,
.elementor-widget-compass-how-why,
.elementor-widget-compass-how-image,
.elementor-widget-compass-about-main,
.elementor-widget-compass-post-type-process,
.elementor-widget-compass-post-type-list,
.elementor-widget-compass-blog-post,
.elementor-widget-compass-home-footer,
.elementor-widget-compass-distillery-hero,
.elementor-widget-compass-distillery-list,
.elementor-widget-compass-whisky-hero,
.elementor-widget-compass-whisky-about,
.elementor-widget-compass-whisky-process,
.elementor-widget-compass-whisky-marquee,
.elementor-widget-compass-whisky-contact,
.elementor-widget-compass-home-hero > .elementor-widget-container,
.elementor-widget-compass-home-intro > .elementor-widget-container,
.elementor-widget-compass-home-pre-invest > .elementor-widget-container,
.elementor-widget-compass-home-discover > .elementor-widget-container,
.elementor-widget-compass-home-doc-prog > .elementor-widget-container,
.elementor-widget-compass-home-cta > .elementor-widget-container,
.elementor-widget-compass-home-reviews > .elementor-widget-container,
.elementor-widget-compass-inner-hero > .elementor-widget-container,
.elementor-widget-compass-about-intro > .elementor-widget-container,
.elementor-widget-compass-about-feature > .elementor-widget-container,
.elementor-widget-compass-about-panel > .elementor-widget-container,
.elementor-widget-compass-about-contact > .elementor-widget-container,
.elementor-widget-compass-about-main > .elementor-widget-container,
.elementor-widget-compass-how-hero > .elementor-widget-container,
.elementor-widget-compass-how-steps > .elementor-widget-container,
.elementor-widget-compass-how-select > .elementor-widget-container,
.elementor-widget-compass-how-commit > .elementor-widget-container,
.elementor-widget-compass-how-why > .elementor-widget-container,
.elementor-widget-compass-how-image > .elementor-widget-container,
.elementor-widget-compass-post-type-process > .elementor-widget-container,
.elementor-widget-compass-post-type-list > .elementor-widget-container,
.elementor-widget-compass-blog-post > .elementor-widget-container,
.elementor-widget-compass-home-footer > .elementor-widget-container,
.elementor-widget-compass-distillery-hero > .elementor-widget-container,
.elementor-widget-compass-distillery-list > .elementor-widget-container,
.elementor-widget-compass-whisky-hero > .elementor-widget-container,
.elementor-widget-compass-whisky-about > .elementor-widget-container,
.elementor-widget-compass-whisky-process > .elementor-widget-container,
.elementor-widget-compass-whisky-marquee > .elementor-widget-container,
.elementor-widget-compass-whisky-contact > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  width: 100%;
}

.e-con:has(.elementor-widget-compass-home-pre-invest),
.elementor-section:has(.elementor-widget-compass-home-pre-invest) {
  --height: auto;
  --min-height: initial;
  --overflow: visible;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  max-width: none;
}


/* Law banner hero is viewport-tall; intro no longer pulls up under a 250vh sticky hero */
.elementor-widget-compass-home-hero .sc-home-hero.mod-law-banner {
  height: auto !important;
  min-height: 100svh;
  position: relative;
  overflow: clip;
}

.elementor-widget-compass-home-intro .sc-home-intro {
  margin-top: 0;
  position: relative;
  z-index: 6;
  overflow: visible;
}

body:has(.sc-home-hero.mod-law-banner) .elementor-widget-compass-home-intro .sc-home-intro {
  margin-top: 0;
  /* Above Discover 3D so the compass emerges from under the navy panel */
  z-index: 6;
  overflow: visible;
  isolation: isolate;
}

body:has(.sc-home-hero.mod-law-banner) .elementor-widget-compass-home-intro,
body:has(.sc-home-hero.mod-law-banner) .e-con:has(.elementor-widget-compass-home-intro),
body:has(.sc-home-hero.mod-law-banner) .e-con:has(.sc-home-intro) {
  position: relative;
  z-index: 6;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split {
  margin-top: -1px !important;
  padding: 0 !important;
  background: #101929 !important;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-main,
body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-copy,
body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-copy-inner,
body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-title-stick-wrap {
  height: auto !important;
  min-height: 0 !important;
  max-width: none !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-copy {
  padding:
    clamp(5rem, 8vh, 8.5rem)
    clamp(3.6rem, 5.5vw, 7rem)
    clamp(5rem, 8vh, 8.5rem)
    clamp(4rem, 7vw, 10rem) !important;
}

@media screen and (max-width: 991px) {
  body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-copy {
    padding:
      clamp(3.6rem, 6vh, 5.6rem)
      clamp(2.4rem, 5vw, 4rem)
      clamp(4rem, 7vh, 6rem) !important;
  }
}

@media screen and (max-width: 767px) {
  body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split .home-intro-copy {
    padding:
      clamp(3.2rem, 5.5vh, 4.4rem)
      clamp(2rem, 5vw, 2.8rem)
      clamp(3.6rem, 6vh, 5rem) !important;
  }
}

body:has(.sc-home-hero.mod-law-banner) .home-intro-main {
  padding-top: clamp(6vh, 10vh, 14vh);
  padding-bottom: clamp(22vh, 30vh, 38vh);
}

body:has(.sc-home-hero.mod-law-banner):has(.sc-home-discor.is-cta) .home-intro-main {
  padding-bottom: clamp(8vh, 12vh, 16vh);
}

body:has(.sc-home-hero.mod-law-banner) .home-intro-title-stick-wrap {
  height: min(72vh, 64rem);
  min-height: min(72vh, 64rem);
  max-width: 75.6rem;
  position: relative;
}

/* Raise portrait beside title — fill the column so no empty navy above */
body:has(.sc-home-hero.mod-law-banner) .home-intro-bg-wrap {
  align-self: start;
  min-height: 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding-top: clamp(2vh, 4vh, 6vh);
}

body:has(.sc-home-hero.mod-law-banner) .home-intro-bg-stick {
  width: min(72rem, 54vw);
  height: auto !important;
  aspect-ratio: 4 / 5;
  min-height: min(82vh, 78rem);
  max-height: min(96vh, 100rem);
  display: block !important;
  position: relative !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-pre-invest-wrap:not(.mod-steps-only) {
  margin-top: 0;
  z-index: 3;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor:not(.is-stats-only):not(.is-cta) {
  margin-top: 0;
  /* Below Intro — compass peeks out from under the navy handoff */
  z-index: 4;
  overflow: visible;
}

/*
 * Clear sticky header without touching `.container.grid` geometry.
 * Padding / align-items on the grid breaks Discover ScrollTrigger + 3D scrub.
 */
.sc-home-discor:not(.is-stats-only) .home-discor-head-wrap {
  padding-top: clamp(8rem, 12vh, 12rem);
}

.sc-home-discor .home-discor-title {
  line-height: 1.08em !important;
  overflow: visible;
}

/* Discover stick — pull into late Intro; stays under Intro’s stacking context */
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor:not(.is-stats-only):not(.is-cta) .home-3d-stick-wrap {
  margin-top: -58vh;
  position: absolute;
  inset: 0%;
  z-index: 1;
  pointer-events: none;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor:not(.is-stats-only):not(.is-cta) .home-3d-wrap {
  z-index: 1;
  pointer-events: none;
  position: sticky;
  top: 0;
  height: 100vh;
  width: 100%;
  overflow: hidden;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-head-wrap,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .container {
  position: relative;
  z-index: 2;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-body-wrap {
  position: relative;
  z-index: 22;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-body-wrap--guided {
  z-index: 4;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--guided {
  background: var(--cl-widget-bg, #ede9e8);
}

/* Elementor wrappers must not clip sticky Discover WebGL */
.elementor-element:has(.sc-home-discor),
.e-con:has(.sc-home-discor),
.elementor-widget-compass-home-discover,
.elementor-widget-compass-home-discover > .elementor-widget-container {
  overflow: visible !important;
}

body:has(.sc-home-hero.mod-law-banner) .elementor-widget-compass-home-discover,
body:has(.sc-home-hero.mod-law-banner) .e-con:has(.sc-home-discor) {
  position: relative;
  z-index: 4;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-pre {
  z-index: 3;
}

body:has(.sc-home-hero.mod-law-banner) .home-pre-title {
  visibility: visible;
}

/* Custom cursor disabled — use native pointer */
.cursor-wrap {
  display: none !important;
  pointer-events: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.cursor-wrap.pe-none.active {
  opacity: 0 !important;
  visibility: hidden !important;
}

.cursor-wrap.hidden {
  display: none !important;
}

/* ==========================================================================
   Elementor editor / preview — disable site motion so admins can edit smoothly
   ========================================================================== */
.elementor-editor-active,
.elementor-editor-preview,
.compass-elementor-edit {
  scroll-behavior: auto !important;
}

.elementor-editor-active .intro-wrap,
.elementor-editor-preview .intro-wrap,
.compass-elementor-edit .intro-wrap,
.elementor-editor-active .cursor-wrap,
.elementor-editor-preview .cursor-wrap,
.compass-elementor-edit .cursor-wrap,
.elementor-editor-active .legal-wrap,
.elementor-editor-preview .legal-wrap,
.compass-elementor-edit .legal-wrap {
  display: none !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

/* Kill CSS / GSAP leftover motion in the canvas */
.elementor-editor-active *:not(.elementor-element-overlay):not(.elementor-editor-element-settings):not(.elementor-editor-element-setting),
.elementor-editor-preview *:not(.elementor-element-overlay):not(.elementor-editor-element-settings):not(.elementor-editor-element-setting),
.compass-elementor-edit *:not(.elementor-element-overlay):not(.elementor-editor-element-settings):not(.elementor-editor-element-setting) {
  animation: none !important;
  animation-delay: 0s !important;
  animation-duration: 0s !important;
  transition: none !important;
  transition-delay: 0s !important;
}

/* Reveal content that GSAP normally starts hidden */
.elementor-editor-active .main,
.elementor-editor-preview .main,
.compass-elementor-edit .main,
.elementor-editor-active [class*="sc-"],
.elementor-editor-preview [class*="sc-"],
.compass-elementor-edit [class*="sc-"],
.elementor-editor-active .heading,
.elementor-editor-preview .heading,
.compass-elementor-edit .heading,
.elementor-editor-active .txt,
.elementor-editor-preview .txt,
.compass-elementor-edit .txt,
.elementor-editor-active img,
.elementor-editor-preview img,
.compass-elementor-edit img,
.elementor-editor-active .btn,
.elementor-editor-preview .btn,
.compass-elementor-edit .btn,
.elementor-editor-active .swiper-slide,
.elementor-editor-preview .swiper-slide,
.compass-elementor-edit .swiper-slide,
.elementor-editor-active .will-change-tf,
.elementor-editor-preview .will-change-tf,
.compass-elementor-edit .will-change-tf {
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
}

/* Un-pin sticky / 100vh scroll traps that break the editor canvas */
.elementor-editor-active [class*="-stick"]:not([class*="sticky"]),
.elementor-editor-preview [class*="-stick"]:not([class*="sticky"]),
.compass-elementor-edit [class*="-stick"]:not([class*="sticky"]),
.elementor-editor-active .mod-100vh,
.elementor-editor-preview .mod-100vh,
.compass-elementor-edit .mod-100vh,
.elementor-editor-active .mod-100h,
.elementor-editor-preview .mod-100h,
.compass-elementor-edit .mod-100h {
  position: relative !important;
  top: auto !important;
  height: auto !important;
  min-height: 0 !important;
  transform: none !important;
}

/* Editor preview: keep hero readable while editing */
.elementor-editor-active .sc-home-hero,
.elementor-editor-active .sc-home-intro,
.elementor-editor-active .sc-home-discor,
.elementor-editor-active .sc-home-doc,
.elementor-editor-active .sc-home-prog,
.elementor-editor-active .sc-home-cta,
.elementor-editor-active .sc-home-reviews,
.compass-elementor-edit .sc-home-hero,
.compass-elementor-edit .sc-home-intro,
.compass-elementor-edit .sc-home-discor,
.compass-elementor-edit .sc-home-doc,
.compass-elementor-edit .sc-home-prog,
.compass-elementor-edit .sc-home-cta,
.compass-elementor-edit .sc-home-reviews {
  min-height: 40vh;
  position: relative;
}

.elementor-editor-active .home-hero-title-wrap,
.elementor-editor-active .home-intro-title-wrap,
.elementor-editor-active .home-intro-label,
.elementor-editor-active .home-intro-title,
.elementor-editor-active .home-intro-sub,
.elementor-editor-active .sc-home-intro .home-intro-compass,
.elementor-editor-active .sc-home-intro .home-intro-bg-photo,
.elementor-editor-active .home-discor-title,
.elementor-editor-active .home-pre-title,
.elementor-editor-active .home-invest-label,
.elementor-editor-active .home-invest-title,
.elementor-editor-active .home-invest-sub,
.elementor-editor-active .home-doc-title,
.elementor-editor-active .home-prog-title,
.elementor-editor-active .home-cta-title {
  opacity: 1 !important;
  visibility: visible !important;
}

/* About page: stacked widgets (Intro pulls under hero; others continue) */
.sc-nabt-main.is-continue {
  margin-top: 0;
  background-color: var(--cl-bg, #101929);
  /* Do not pair overflow-x:clip with overflow-y:visible — browsers force y to auto and clip the section. */
  overflow: visible;
}

/*
 * Only the About Intro block (nabt-main-inner) may pull under the sticky hero.
 * Standalone panels, contact, and feature image sections must not use −150vh.
 */
[data-compass-namespace="about"] .sc-nabt-main:not(.is-continue):has(.nabt-main-inner),
[data-barba-namespace="about"] .sc-nabt-main:not(.is-continue):has(.nabt-main-inner) {
  margin-top: -90vh;
}

[data-compass-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone),
[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-contact),
[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-img-wrap),
[data-barba-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone),
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-contact),
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-img-wrap) {
  margin-top: 0 !important;
}

[data-compass-namespace="about"] .e-con:has(.sc-nabt-main),
[data-barba-namespace="about"] .e-con:has(.sc-nabt-main),
[data-compass-namespace="about"] .elementor-widget-compass-about-intro,
[data-compass-namespace="about"] .elementor-widget-compass-about-panel,
[data-compass-namespace="about"] .elementor-widget-compass-about-contact,
[data-compass-namespace="about"] .elementor-widget-compass-about-feature,
[data-compass-namespace="about"] .elementor-widget-compass-about-intro > .elementor-widget-container,
[data-compass-namespace="about"] .elementor-widget-compass-about-panel > .elementor-widget-container,
[data-compass-namespace="about"] .elementor-widget-compass-about-contact > .elementor-widget-container,
[data-compass-namespace="about"] .elementor-widget-compass-about-feature > .elementor-widget-container,
[data-barba-namespace="about"] .elementor-widget-compass-about-intro,
[data-barba-namespace="about"] .elementor-widget-compass-about-panel,
[data-barba-namespace="about"] .elementor-widget-compass-about-contact,
[data-barba-namespace="about"] .elementor-widget-compass-about-feature,
[data-barba-namespace="about"] .elementor-widget-compass-about-intro > .elementor-widget-container,
[data-barba-namespace="about"] .elementor-widget-compass-about-panel > .elementor-widget-container,
[data-barba-namespace="about"] .elementor-widget-compass-about-contact > .elementor-widget-container,
[data-barba-namespace="about"] .elementor-widget-compass-about-feature > .elementor-widget-container {
  overflow: visible !important;
  background-color: var(--cl-bg, #101929);
}

[data-compass-namespace="about"] .e-con:has(.sc-nabt-hero) + .e-con,
[data-compass-namespace="about"] .elementor-section:has(.sc-nabt-hero) + .elementor-section,
[data-barba-namespace="about"] .e-con:has(.sc-nabt-hero) + .e-con,
[data-barba-namespace="about"] .elementor-section:has(.sc-nabt-hero) + .elementor-section {
  position: relative;
  z-index: 2;
}

/*
 * About-only layout / animation repairs (do not affect Home or other namespaces).
 * - contain:paint on .sc-nabt-hero breaks position:sticky in Elementor flex parents
 * - First panel may omit is-continue → needs opaque bg when pulled under the hero
 * - Elementor e-con overflow/transform can trap sticky + ScrollTrigger
 */
[data-compass-namespace="about"] .sc-nabt-hero,
[data-barba-namespace="about"] .sc-nabt-hero {
  contain: none !important;
  overflow: visible !important;
  /* Shorter sticky runway — title stays white, then a few scrolls to intro */
  height: 185vh;
  min-height: 185vh;
}

[data-compass-namespace="about"] .sc-nabt-hero-stick,
[data-barba-namespace="about"] .sc-nabt-hero-stick {
  position: sticky !important;
  top: 0 !important;
  min-height: 100vh;
  width: 100%;
  z-index: 1;
}

[data-compass-namespace="about"] .e-con:has(.sc-nabt-hero),
[data-compass-namespace="about"] .elementor-widget-compass-inner-hero,
[data-compass-namespace="about"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
[data-barba-namespace="about"] .e-con:has(.sc-nabt-hero),
[data-barba-namespace="about"] .elementor-widget-compass-inner-hero,
[data-barba-namespace="about"] .elementor-widget-compass-inner-hero > .elementor-widget-container {
  overflow: visible !important;
  transform: none !important;
  contain: none !important;
  height: auto !important;
  min-height: 0 !important;
}

[data-compass-namespace="about"] .sc-nabt-main,
[data-barba-namespace="about"] .sc-nabt-main {
  background-color: var(--cl-bg, #101929);
  position: relative;
  z-index: 5;
  isolation: isolate;
  /* Override theme compass.css overflow-x:clip which collapses overflow-y and cuts the panel off. */
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0;
}

[data-compass-namespace="about"] .e-con:has(.sc-nabt-main),
[data-barba-namespace="about"] .e-con:has(.sc-nabt-main),
[data-compass-namespace="about"] .elementor-widget-compass-about-panel,
[data-compass-namespace="about"] .elementor-widget-compass-about-panel > .elementor-widget-container,
[data-compass-namespace="about"] .elementor-widget-compass-about-intro,
[data-compass-namespace="about"] .elementor-widget-compass-about-intro > .elementor-widget-container,
[data-barba-namespace="about"] .elementor-widget-compass-about-panel,
[data-barba-namespace="about"] .elementor-widget-compass-about-panel > .elementor-widget-container,
[data-barba-namespace="about"] .elementor-widget-compass-about-intro,
[data-barba-namespace="about"] .elementor-widget-compass-about-intro > .elementor-widget-container {
  position: relative;
  z-index: 5;
  background-color: var(--cl-bg, #101929);
}

[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-bg,
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-bg {
  z-index: 0;
  pointer-events: none;
}

[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-inner,
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-inner {
  position: relative;
  z-index: 1;
  overflow: visible;
}

/* Keep optional panel slash inside the section — stop −100vh bleed / X artifacts */
[data-compass-namespace="about"] .sc-nabt-main .pre-invest-bg-wrap.nabt-main-invest,
[data-barba-namespace="about"] .sc-nabt-main .pre-invest-bg-wrap.nabt-main-invest {
  top: 0 !important;
  bottom: auto !important;
  height: 100% !important;
  max-height: 100%;
  z-index: 0;
  opacity: 0.16;
  pointer-events: none;
  overflow: hidden;
}

[data-compass-namespace="about"] .sc-nabt-main .nabt-main-item-list,
[data-compass-namespace="about"] .sc-nabt-main .nabt-main-item-wrap,
[data-compass-namespace="about"] .sc-nabt-main .nabt-main-item,
[data-barba-namespace="about"] .sc-nabt-main .nabt-main-item-list,
[data-barba-namespace="about"] .sc-nabt-main .nabt-main-item-wrap,
[data-barba-namespace="about"] .sc-nabt-main .nabt-main-item {
  position: relative;
  z-index: 2;
  overflow: visible;
  max-height: none;
}

[data-compass-namespace="about"] .sc-nabt-main .nabt-main-bg.bot,
[data-barba-namespace="about"] .sc-nabt-main .nabt-main-bg.bot {
  display: none !important;
}

[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-contact),
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-contact) {
  /* Contact block removed from About — hide if still present in cached markup */
  display: none !important;
}

[data-compass-namespace="about"] .nabt-main-contact,
[data-compass-namespace="about"] .nabt-main-contact-inner,
[data-barba-namespace="about"] .nabt-main-contact,
[data-barba-namespace="about"] .nabt-main-contact-inner {
  position: relative;
  z-index: 3;
}

[data-compass-namespace="about"] .e-con:has(.sc-nabt-main:has(.nabt-main-contact)),
[data-barba-namespace="about"] .e-con:has(.sc-nabt-main:has(.nabt-main-contact)) {
  display: none !important;
}

/* About defence panel — short runway so compass peeks under without a tall empty navy band */
[data-compass-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone),
[data-barba-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone) {
  padding-bottom: clamp(3.2rem, 6vh, 6.4rem);
}

[data-compass-namespace="about"] .nabt-main-item.g-nabt-main-item-standalone,
[data-barba-namespace="about"] .nabt-main-item.g-nabt-main-item-standalone {
  display: grid;
  width: 100%;
  min-width: 0;
  align-items: center;
  padding-top: clamp(8rem, 12vh, 14rem);
  padding-bottom: clamp(5rem, 8vh, 8rem);
  border-bottom: none;
}

[data-compass-namespace="about"] .nabt-main-content-wrap,
[data-barba-namespace="about"] .nabt-main-content-wrap {
  justify-content: flex-start;
  align-self: center;
  min-width: 0;
  overflow: visible;
}

[data-compass-namespace="about"] .g-nabt-main-content-wrap-1,
[data-compass-namespace="about"] .g-nabt-main-content-wrap-2,
[data-barba-namespace="about"] .g-nabt-main-content-wrap-1,
[data-barba-namespace="about"] .g-nabt-main-content-wrap-2 {
  align-self: center;
}

[data-compass-namespace="about"] .nabt-main-item-title,
[data-compass-namespace="about"] .nabt-main-item-sub,
[data-barba-namespace="about"] .nabt-main-item-title,
[data-barba-namespace="about"] .nabt-main-item-sub {
  overflow: visible;
  max-width: 100%;
}

[data-compass-namespace="about"] .nabt-main-item-title .word,
[data-compass-namespace="about"] .nabt-main-title .char,
[data-barba-namespace="about"] .nabt-main-item-title .word,
[data-barba-namespace="about"] .nabt-main-title .char {
  -webkit-text-fill-color: currentColor;
}

[data-compass-namespace="about"] .nabt-main-item-title .line,
[data-compass-namespace="about"] .nabt-main-title .line,
[data-barba-namespace="about"] .nabt-main-item-title .line,
[data-barba-namespace="about"] .nabt-main-title .line {
  overflow: hidden;
  padding-bottom: 0.06em;
}

[data-compass-namespace="about"] .nabt-main-item-img,
[data-barba-namespace="about"] .nabt-main-item-img {
  min-height: clamp(22rem, 48vh, 36rem);
  height: auto;
  max-height: none;
  overflow: hidden;
  width: 100%;
}

[data-compass-namespace="about"] .nabt-main-item-img-wrap,
[data-barba-namespace="about"] .nabt-main-item-img-wrap {
  overflow: visible;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}

[data-compass-namespace="about"] .nabt-main-item-img img,
[data-barba-namespace="about"] .nabt-main-item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

[data-compass-namespace="about"] .nabt-main-img img,
[data-barba-namespace="about"] .nabt-main-img img {
  object-position: center top;
}

@media screen and (max-width: 991px) {
  [data-compass-namespace="about"] .nabt-main-item.g-nabt-main-item-standalone,
  [data-barba-namespace="about"] .nabt-main-item.g-nabt-main-item-standalone {
    grid-template-columns: 1fr;
    padding-top: clamp(5rem, 10vh, 8rem);
    padding-bottom: clamp(4rem, 8vh, 6rem);
    gap: 2.4rem;
  }

  [data-compass-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone),
  [data-barba-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone) {
    padding-bottom: clamp(0.5rem, 5vh, 0.5rem);
  }

  [data-compass-namespace="about"] .g-nabt-main-item-img-wrap-1,
  [data-compass-namespace="about"] .g-nabt-main-item-img-wrap-2,
  [data-compass-namespace="about"] .g-nabt-main-content-wrap-1,
  [data-compass-namespace="about"] .g-nabt-main-content-wrap-2,
  [data-barba-namespace="about"] .g-nabt-main-item-img-wrap-1,
  [data-barba-namespace="about"] .g-nabt-main-item-img-wrap-2,
  [data-barba-namespace="about"] .g-nabt-main-content-wrap-1,
  [data-barba-namespace="about"] .g-nabt-main-content-wrap-2 {
    grid-area: auto !important;
    width: 100%;
  }

  [data-compass-namespace="about"] .nabt-main-item-img,
  [data-barba-namespace="about"] .nabt-main-item-img {
    aspect-ratio: 4 / 5;
    min-height: 0;
  }
}

/* Don’t let Discover home pull-up / navy bleed affect About stats block */
[data-compass-namespace="about"] .sc-home-discor:not(.is-stats-only),
[data-barba-namespace="about"] .sc-home-discor:not(.is-stats-only) {
  margin-top: 0;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only {
  margin-top: -6vh !important;
  background-color: var(--cl-warm, #ede9e8);
  color: #101929;
  overflow: visible;
  /* Under sc-nabt-main so the 3D compass emerges from behind the navy panel */
  z-index: 1 !important;
  position: relative;
  padding-top: clamp(8rem, 12vh, 14rem);
  padding-bottom: clamp(16rem, 24vh, 32rem);
  isolation: isolate;
}

@media screen and (max-width: 767px) {
  .sc-home-discor.is-stats-only,
  [data-compass-namespace="about"] .sc-home-discor.is-stats-only,
  [data-barba-namespace="about"] .sc-home-discor.is-stats-only {
    padding-bottom: 50px !important;
  }
}

/* About Discover stick — under navy panel, but ABOVE Discover title/stats text */
[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-3d-stick-wrap,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-3d-stick-wrap {
  margin-top: -58vh;
  position: absolute;
  inset: 0%;
  z-index: 20 !important;
  pointer-events: none;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-3d-wrap,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-3d-wrap {
  z-index: 21 !important;
  pointer-events: none;
  position: sticky;
  top: 0;
  height: 100vh;
  width: 100%;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-head-wrap,
[data-compass-namespace="about"] .sc-home-discor.is-stats-only .container,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-head-wrap,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .container {
  position: relative;
  z-index: 2;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-inner,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-inner {
  position: relative;
  z-index: 2;
  align-items: center;
  gap: 3.2rem;
  padding-top: 2.8rem;
  padding-bottom: 3rem;
  min-height: 0;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-label,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-label {
  max-width: 56rem;
  line-height: 1.18 !important;
  font-size: clamp(2.8rem, 3.2vw, 4.4rem) !important;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-value,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-value {
  line-height: 1;
  white-space: nowrap;
  align-items: flex-end;
  justify-content: center;
  min-width: clamp(8rem, 12vw, 14rem);
  padding-right: 0.4rem;
  overflow: visible;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-num,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-num {
  font-size: clamp(5.6rem, 6.4vw, 8.8rem) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.03em;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-unit,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-unit {
  font-size: 1.5rem !important;
  line-height: 1.2 !important;
  letter-spacing: 0.18em;
  margin-top: 0.4rem;
  font-weight: 400;
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-title,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-title {
  margin-top: 0;
  margin-bottom: clamp(6rem, 10vh, 12rem);
  line-height: 1.08em !important;
}

@media screen and (max-width: 991px) and (min-width: 768px) {
  [data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-title,
  [data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-title {
    font-size: clamp(5.2rem, 6.8vw, 6.8rem) !important;
    margin-bottom: 2.8rem !important;
    line-height: 1.1em !important;
  }

  [data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-label,
  [data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-label {
    font-size: clamp(3.2rem, 3.6vw, 4.6rem) !important;
  }

  [data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-num,
  [data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-discor-item-num {
    font-size: clamp(7.6rem, 9vw, 9.6rem) !important;
  }
}

[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-3d-wrap canvas,
[data-compass-namespace="about"] .sc-home-discor.is-stats-only .home-3d-wrap #home3d,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-3d-wrap canvas,
[data-barba-namespace="about"] .sc-home-discor.is-stats-only .home-3d-wrap #home3d {
  display: block;
  margin: 0 auto;
}

[data-compass-namespace="about"] .e-con:has(.sc-home-discor.is-stats-only),
[data-compass-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only),
[data-compass-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only) > .elementor-widget-container,
[data-barba-namespace="about"] .e-con:has(.sc-home-discor.is-stats-only),
[data-barba-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only),
[data-barba-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only) > .elementor-widget-container {
  background-color: var(--cl-warm, #ede9e8);
  overflow: visible !important;
  position: relative;
  z-index: 1 !important;
}

[data-compass-namespace="about"] .e-con:has(.sc-how-why),
[data-compass-namespace="about"] .elementor-widget-compass-how-why,
[data-compass-namespace="about"] .elementor-widget-compass-how-why > .elementor-widget-container,
[data-barba-namespace="about"] .e-con:has(.sc-how-why),
[data-barba-namespace="about"] .elementor-widget-compass-how-why,
[data-barba-namespace="about"] .elementor-widget-compass-how-why > .elementor-widget-container {
  position: relative;
  z-index: 6;
  background-color: var(--cl-bg, #101929);
}

@media screen and (max-width: 991px) {
  [data-compass-namespace="about"] .sc-nabt-hero,
  [data-barba-namespace="about"] .sc-nabt-hero {
    height: auto;
    min-height: 100vh;
    max-width: 100%;
    /* Keep sticky usable; clip sideways overflow from oversized title / peeks */
    overflow-x: clip !important;
  }

  [data-compass-namespace="about"] .sc-nabt-hero-stick,
  [data-barba-namespace="about"] .sc-nabt-hero-stick {
    max-width: 100%;
    overflow-x: clip !important;
  }

  [data-compass-namespace="about"] .e-con:has(.sc-nabt-hero),
  [data-compass-namespace="about"] .elementor-widget-compass-inner-hero,
  [data-compass-namespace="about"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
  [data-barba-namespace="about"] .e-con:has(.sc-nabt-hero),
  [data-barba-namespace="about"] .elementor-widget-compass-inner-hero,
  [data-barba-namespace="about"] .elementor-widget-compass-inner-hero > .elementor-widget-container {
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  [data-compass-namespace="about"] .sc-nabt-main,
  [data-barba-namespace="about"] .sc-nabt-main,
  [data-compass-namespace="about"] .e-con:has(.sc-nabt-main),
  [data-barba-namespace="about"] .e-con:has(.sc-nabt-main),
  [data-compass-namespace="about"] .sc-how-why,
  [data-compass-namespace="about"] .sc-how-steps,
  [data-barba-namespace="about"] .sc-how-why,
  [data-barba-namespace="about"] .sc-how-steps {
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  [data-compass-namespace="about"] .nabt-main-compass,
  [data-barba-namespace="about"] .nabt-main-compass {
    overflow: hidden !important;
    max-width: 100%;
  }

  [data-compass-namespace="about"] .e-con:has(.sc-nabt-hero) + .e-con .sc-nabt-main,
  [data-compass-namespace="about"] .e-con:has(.sc-nabt-hero) + .e-con .sc-nabt-main.is-continue,
  [data-barba-namespace="about"] .e-con:has(.sc-nabt-hero) + .e-con .sc-nabt-main,
  [data-barba-namespace="about"] .e-con:has(.sc-nabt-hero) + .e-con .sc-nabt-main.is-continue {
    margin-top: 0 !important;
  }
}

/* 404 layout lives in css/compass-404.css */

/* Service General reuses whisky / post-type process without whisky hero stack */
.sc-whis-process.mod-service-general,
.sc-post-type-process.mod-service-general {
  padding-top: 18vh;
}

.compass-cpt-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 6rem;
  padding-top: 2.4rem;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.compass-cpt-pagination-pages {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.8rem 1.2rem;
}

.compass-cpt-pagination-page {
  color: rgba(255, 255, 255, 0.55);
  text-decoration: none;
  min-width: 1.6rem;
  text-align: center;
}

.compass-cpt-pagination-page:hover,
.compass-cpt-pagination-page.is-current {
  color: #fff;
}

.compass-cpt-pagination-page.is-current {
  color: var(--cl-primary, #c9a84a);
}

.compass-cpt-pagination-link {
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
}

.compass-cpt-pagination-link:hover {
  opacity: 1;
  color: var(--cl-primary, #c9a84a);
}

.compass-cpt-pagination-link.is-disabled {
  opacity: 0.28;
  pointer-events: none;
}

.compass-cpt-pagination-status {
  color: rgba(255, 255, 255, 0.55);
}

.compass-cpt-load-more-wrap {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  width: 100%;
  margin-top: 5rem;
  padding-bottom: 2rem;
}

.compass-cpt-load-more-wrap.is-infinite .compass-cpt-load-more {
  opacity: 0;
  pointer-events: none;
  height: 1px;
  overflow: hidden;
  padding: 0;
  margin: 0;
  border: 0;
}

.compass-cpt-load-more.is-loading {
  opacity: 0.55;
  pointer-events: none;
}

.compass-cpt-load-more-status {
  color: rgba(255, 255, 255, 0.45);
  min-height: 1.2em;
}

@media screen and (max-width: 991px) {
  .sc-whis-process.mod-service-general,
  .sc-post-type-process.mod-service-general {
    padding-top: 12vh;
  }

  .compass-cpt-pagination {
    margin-top: 3.2rem;
    gap: 1.2rem;
    flex-wrap: wrap;
  }

  .compass-cpt-load-more-wrap {
    margin-top: 3.2rem;
  }
}

/*
 * Discover stats-only (About page):
 * - Warm grey panel like homepage Discover
 * - Tight bottom padding (no long empty scroll)
 */
.sc-home-discor.is-stats-only {
  z-index: 4;
  margin-top: 0;
  padding-top: clamp(10rem, 16vh, 18rem);
  padding-bottom: clamp(16rem, 24vh, 32rem);
  overflow: visible;
  background-color: var(--cl-warm, #ede9e8);
  color: #101929;
}

.sc-home-discor.is-stats-only .home-discor-bg-white {
  display: none !important;
}

/* Law-banner homepage Discover uses warm grey */
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor.is-stats-only {
  background-color: #ede9e8;
}

.sc-home-discor.is-stats-only .home-discor-head-wrap {
  padding-top: clamp(2rem, 4vh, 4rem);
}

.sc-home-discor.is-stats-only .home-discor-title {
  margin-top: 0;
}

.sc-home-discor.is-stats-only .home-3d-stick-wrap {
  margin-top: -58vh;
  position: absolute;
  inset: 0%;
  z-index: 1;
  pointer-events: none;
}

.sc-home-discor.is-stats-only .home-3d-wrap {
  z-index: 1;
  pointer-events: none;
  position: sticky;
  top: 0;
  height: 100vh;
  width: 100%;
  overflow: hidden;
}

/* Discover: never paint a black strip under the title */
.sc-home-discor .home-discor-head-wrap {
  padding-bottom: 0 !important;
}

.sc-home-discor .home-discor-head-wrap::after,
.sc-home-discor.is-stats-only .home-discor-head-wrap::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.sc-home-discor.is-stats-only .home-discor-head-wrap {
  padding-bottom: 0 !important;
}

/* How Why covers the About Discover compass when it scrolls up */
.sc-how-why {
  position: relative;
  z-index: 4;
  background-color: var(--cl-bg, #101929);
}

[data-compass-namespace="about"] .sc-how-why,
[data-compass-namespace="about"] .sc-how-why.mod-split,
[data-barba-namespace="about"] .sc-how-why,
[data-barba-namespace="about"] .sc-how-why.mod-split {
  z-index: 6;
}

/*
 * Elementor wraps each widget in its own .e-con — z-index on the inner section alone
 * is trapped if the parent stacking context stays auto/equal. Mirror the stack here.
 */
.e-con:has(.sc-home-discor.is-stats-only),
.elementor-widget-compass-home-discover:has(.is-stats-only),
.elementor-widget-compass-home-discover:has(.is-stats-only) > .elementor-widget-container {
  position: relative;
  z-index: 4;
}

[data-compass-namespace="about"] .e-con:has(.sc-home-discor.is-stats-only),
[data-compass-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only),
[data-compass-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only) > .elementor-widget-container,
[data-barba-namespace="about"] .e-con:has(.sc-home-discor.is-stats-only),
[data-barba-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only),
[data-barba-namespace="about"] .elementor-widget-compass-home-discover:has(.is-stats-only) > .elementor-widget-container {
  z-index: 1 !important;
}

.e-con:has(> .elementor-element > .elementor-widget-compass-how-why),
.e-con:has(.sc-how-why),
.elementor-widget-compass-how-why,
.elementor-widget-compass-how-why > .elementor-widget-container {
  position: relative;
  z-index: 4;
  background-color: var(--cl-bg, #101929);
}

.e-con:has(> .elementor-element > .elementor-widget-compass-how-steps),
.e-con:has(.sc-how-steps),
.elementor-widget-compass-how-steps,
.elementor-widget-compass-how-steps > .elementor-widget-container {
  position: relative;
  z-index: 4;
  background-color: var(--cl-warm, #ede9e8);
  overflow: visible;
}

/* How Steps — warm grey panel, navy copy (matches Discover / About stats) */
.sc-how-steps {
  background-color: var(--cl-warm, #ede9e8);
  color: #101929;
  overflow: visible;
  position: relative;
  isolation: isolate;
  padding-top: clamp(12rem, 18vh, 21.54vh);
  padding-bottom: clamp(14rem, 20vh, 21.54vh);
}

.sc-how-steps > .container.grid {
  display: grid !important;
  width: 100%;
}

.sc-how-steps .how-step-title-wrap,
.sc-how-steps .g-how-step-title-wrap {
  grid-area: auto !important;
  grid-column: 1 / -1 !important;
  width: 100%;
  max-width: 103.4rem;
  margin-bottom: clamp(8rem, 12vh, 18rem);
}

.sc-how-steps .how-step-label {
  margin-bottom: 3.2rem;
}

.sc-how-steps .how-step-title {
  font-family: Reckless, Georgia, "Times New Roman", serif !important;
  font-size: clamp(3.6rem, 4.8vw, 7.2rem) !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  max-width: 103.4rem;
}

.sc-how-steps .how-step-title .line,
.sc-how-steps .how-step-title .word,
.sc-how-steps .how-step-label .line,
.sc-how-steps .how-step-label .word {
  overflow: visible !important;
}

/* Center compass — same slow spin as home process map, very light on warm grey */
.sc-how-steps .how-step-main {
  position: relative;
  isolation: isolate;
  overflow: visible !important;
}

.sc-how-steps .how-step-compass-bg {
  position: absolute;
  inset: clamp(1rem, 3vh, 4rem) -14%;
  z-index: 0;
  pointer-events: none;
  overflow: visible;
  background: transparent !important;
}

.sc-how-steps .how-step-compass-bg .home-process-steps-bg__spin {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(72rem, 96%);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  will-change: transform;
  -webkit-mask-image: radial-gradient(circle at center, #000 0%, #000 54%, transparent 78%);
  mask-image: radial-gradient(circle at center, #000 0%, #000 54%, transparent 78%);
}

.sc-how-steps .how-step-compass-bg .home-process-steps-bg__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0.14;
  pointer-events: none;
  transform-origin: 50% 50%;
  will-change: transform;
}

.sc-how-steps .how-step-main > .container {
  position: relative;
  z-index: 1;
}

.sc-how-steps .how-step-main-wrap {
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 991px) {
  .sc-how-steps .how-step-compass-bg {
    inset: 0 -8%;
  }

  .sc-how-steps .how-step-compass-bg .home-process-steps-bg__spin {
    width: min(56rem, 112%);
  }

  .sc-how-steps .how-step-compass-bg .home-process-steps-bg__img {
    opacity: 0.12;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sc-how-steps .how-step-compass-bg .home-process-steps-bg__img {
    animation: none !important;
  }
}

.sc-how-steps .how-step-label,
.sc-how-steps .how-step-title,
.sc-how-steps .home-invest-step-title,
.sc-how-steps .home-invest-step-para,
.sc-how-steps .heading:not(.home-invest-item-step-txt),
.sc-how-steps .txt:not(.home-invest-item-step-txt) {
  color: #101929 !important;
  -webkit-text-fill-color: #101929 !important;
}

/* How Steps — 2×2 grid, centered gold step numbers (no diagonal clip) */
.sc-how-steps .how-step-main {
  overflow: visible !important;
}

.sc-how-steps .how-step-main > .container.grid {
  display: block !important;
  width: 100%;
}

.sc-how-steps .how-step-main-wrap {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: auto auto;
  column-gap: clamp(3rem, 5vw, 6rem);
  row-gap: clamp(5rem, 8vh, 9rem);
  overflow: visible;
  width: 100%;
}

.sc-how-steps .home-invest-step-item-inner,
.sc-how-steps .home-invest-step-item-inner .home-invest-item-step-txt,
.sc-how-steps .home-invest-step-item-inner .home-invest-step-title,
.sc-how-steps .home-invest-step-item-inner .home-invest-step-para {
  opacity: 1 !important;
  visibility: visible !important;
}

.sc-how-steps .heading.h-size92.home-invest-item-step-txt {
  margin-left: 0 !important;
}

.sc-how-steps .home-invest-step-item-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  overflow: visible !important;
  min-width: 0;
  width: 100%;
}

.sc-how-steps .home-invest-step-number-wrap {
  width: 100%;
  max-width: 44rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: visible !important;
  flex: none;
  position: relative;
  margin-bottom: clamp(1.6rem, 2.5vh, 2.4rem);
  min-height: 0;
  text-align: center;
}

.sc-how-steps .home-invest-step-number {
  width: 100% !important;
  min-width: 0;
  max-width: 100%;
  padding: 0 !important;
  margin: 0 auto;
  overflow: visible !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  text-align: center;
}

.sc-how-steps .home-invest-item-step-txt {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 auto !important;
  padding: 0.1em 0 0.16em;
  text-align: center !important;
  line-height: 1.05 !important;
  font-size: clamp(4.8rem, 7.5vw, 8.4rem) !important;
  letter-spacing: -0.04em;
  overflow: visible !important;
  white-space: nowrap;
  clip-path: none !important;
  -webkit-clip-path: none !important;
}

.sc-how-steps .home-invest-step-line {
  display: none;
}

.sc-how-steps .home-invest-step-content {
  padding-left: 0 !important;
  width: 100%;
  max-width: 44rem;
  margin-left: auto;
  margin-right: auto;
  align-self: center;
  text-align: left;
}

.sc-how-steps .home-invest-step-title {
  text-align: left;
}

.sc-how-steps .home-invest-step-para {
  text-align: left;
}

.sc-how-steps .g-home-invest-step-item-inner-1,
.sc-how-steps .g-home-invest-step-item-inner-2,
.sc-how-steps .g-home-invest-step-item-inner-3,
.sc-how-steps .g-home-invest-step-item-inner-4 {
  justify-self: stretch;
  min-width: 0;
}

.sc-how-steps .g-home-invest-step-item-inner-1 {
  grid-area: 1 / 1 / 2 / 2 !important;
}

.sc-how-steps .g-home-invest-step-item-inner-2 {
  grid-area: 1 / 2 / 2 / 3 !important;
}

.sc-how-steps .g-home-invest-step-item-inner-3 {
  grid-area: 2 / 1 / 3 / 2 !important;
}

.sc-how-steps .g-home-invest-step-item-inner-4 {
  grid-area: 2 / 2 / 3 / 3 !important;
}

/* About — no diagonal slash decoration on warm How Steps panel */
[data-compass-namespace="about"] .sc-how-steps .pre-invest-bg-wrap.bg-slash,
[data-barba-namespace="about"] .sc-how-steps .pre-invest-bg-wrap.bg-slash {
  display: none !important;
}

/* About hero — remove decorative X overlay behind the page title */
[data-compass-namespace="about"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x,
[data-barba-namespace="about"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x {
  display: none !important;
}

/* Blog archive hero — same: no decorative X behind the title */
[data-compass-namespace="blogs"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x,
[data-barba-namespace="blogs"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x,
[data-compass-namespace="blogCategory"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x,
[data-barba-namespace="blogCategory"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x,
[data-compass-namespace="blogTag"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x,
[data-barba-namespace="blogTag"] .sc-nabt-hero .pre-invest-bg-wrap.bg-x {
  display: none !important;
}

/* Blog archive hero — keep sticky title fully visible (no paint containment / stick clipping) */
[data-compass-namespace="blogs"] .sc-nabt-hero,
[data-barba-namespace="blogs"] .sc-nabt-hero,
[data-compass-namespace="blogCategory"] .sc-nabt-hero,
[data-barba-namespace="blogCategory"] .sc-nabt-hero,
[data-compass-namespace="blogTag"] .sc-nabt-hero,
[data-barba-namespace="blogTag"] .sc-nabt-hero {
  contain: none !important;
  overflow: visible !important;
}

[data-compass-namespace="blogs"] .sc-nabt-hero-stick,
[data-barba-namespace="blogs"] .sc-nabt-hero-stick,
[data-compass-namespace="blogCategory"] .sc-nabt-hero-stick,
[data-barba-namespace="blogCategory"] .sc-nabt-hero-stick,
[data-compass-namespace="blogTag"] .sc-nabt-hero-stick,
[data-barba-namespace="blogTag"] .sc-nabt-hero-stick {
  position: sticky !important;
  top: 0 !important;
  min-height: 100vh;
  overflow: visible !important;
}

[data-compass-namespace="blogs"] .sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick,
[data-barba-namespace="blogs"] .sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick,
[data-compass-namespace="blogCategory"] .sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick,
[data-barba-namespace="blogCategory"] .sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick,
[data-compass-namespace="blogTag"] .sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick,
[data-barba-namespace="blogTag"] .sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick {
  overflow: visible !important;
}

[data-compass-namespace="blogs"] .e-con:has(.sc-nabt-hero),
[data-compass-namespace="blogs"] .elementor-widget-compass-inner-hero,
[data-compass-namespace="blogs"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
[data-barba-namespace="blogs"] .e-con:has(.sc-nabt-hero),
[data-barba-namespace="blogs"] .elementor-widget-compass-inner-hero,
[data-barba-namespace="blogs"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
[data-compass-namespace="blogCategory"] .e-con:has(.sc-nabt-hero),
[data-compass-namespace="blogCategory"] .elementor-widget-compass-inner-hero,
[data-compass-namespace="blogCategory"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
[data-barba-namespace="blogCategory"] .e-con:has(.sc-nabt-hero),
[data-barba-namespace="blogCategory"] .elementor-widget-compass-inner-hero,
[data-barba-namespace="blogCategory"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
[data-compass-namespace="blogTag"] .e-con:has(.sc-nabt-hero),
[data-compass-namespace="blogTag"] .elementor-widget-compass-inner-hero,
[data-compass-namespace="blogTag"] .elementor-widget-compass-inner-hero > .elementor-widget-container,
[data-barba-namespace="blogTag"] .e-con:has(.sc-nabt-hero),
[data-barba-namespace="blogTag"] .elementor-widget-compass-inner-hero,
[data-barba-namespace="blogTag"] .elementor-widget-compass-inner-hero > .elementor-widget-container {
  overflow: visible !important;
  transform: none !important;
  contain: none !important;
}

[data-compass-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap,
[data-barba-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap,
[data-compass-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap,
[data-barba-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap,
[data-compass-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap,
[data-barba-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap {
  min-height: 100vh;
  height: auto;
  padding-top: clamp(6rem, 10vh, 9rem);
  padding-bottom: clamp(4rem, 8vh, 7rem);
  box-sizing: border-box;
  overflow: visible !important;
}

/* Blog hero — Reckless descenders (g, y) must not clip inside SplitText line masks */
[data-compass-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150,
[data-barba-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150,
[data-compass-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150,
[data-barba-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150,
[data-compass-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150,
[data-barba-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150 {
  line-height: 1.16 !important;
  overflow: visible !important;
}

[data-compass-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
[data-barba-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
[data-compass-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
[data-barba-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
[data-compass-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
[data-barba-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line {
  padding-bottom: 0.38em;
}

[data-compass-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
[data-barba-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
[data-compass-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
[data-barba-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
[data-compass-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
[data-barba-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
[data-compass-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word,
[data-barba-namespace="blogs"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word,
[data-compass-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word,
[data-barba-namespace="blogCategory"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word,
[data-compass-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word,
[data-barba-namespace="blogTag"] .sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word {
  overflow: visible !important;
  padding-bottom: 0 !important;
}

/* How Why — split layout: copy left, image right */
.sc-how-why.mod-split {
  padding-top: clamp(5rem, 12vh, 9rem);
  padding-bottom: clamp(5rem, 12vh, 9rem);
}

.sc-how-why.mod-split .how-why-title-wrap,
.sc-how-why.mod-split .g-how-why-title-wrap {
  max-width: none;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.sc-how-why.mod-split .how-why-title {
  font-size: clamp(2.4rem, 4.2vw, 4.8rem);
  line-height: 1.08;
  max-width: 100%;
}

.sc-how-why.mod-split .how-why-sub {
  max-width: 36ch;
  margin-top: 1rem;
  opacity: 0.85;
}

.sc-how-why.mod-split .how-why-main-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-top: 0;
  align-items: stretch;
  width: 100%;
}

.sc-how-why.mod-split .how-why-main-item-wrap {
  display: flex;
  height: 100%;
  min-height: 0;
  border-right: 1px solid rgba(186, 157, 78, 0.42);
  border-bottom: 1px solid rgba(186, 157, 78, 0.42);
}

.sc-how-why.mod-split .how-why-main-item-wrap:nth-child(2n) {
  border-right: none;
}

.sc-how-why.mod-split .how-why-main-item-wrap:nth-last-child(-n + 2) {
  border-bottom: none;
}

.sc-how-why.mod-split .how-why-main-item {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  width: 100%;
  height: 100%;
  min-height: 0;
  border-bottom: none !important;
  box-sizing: border-box;
  padding: clamp(2.6rem, 3.4vw, 3.8rem) clamp(2.4rem, 3.2vw, 3.6rem);
}

.sc-how-why.mod-split .how-why-item-title {
  color: var(--cl-gold, #ba9d4e) !important;
  -webkit-text-fill-color: currentColor;
  font-size: clamp(1.65rem, 2vw, 2.05rem);
  line-height: 1.22;
  margin-bottom: clamp(1rem, 1.5vw, 1.4rem);
  font-weight: 400;
  max-width: none;
}

.sc-how-why.mod-split .how-why-item-sub {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
  max-width: 36ch;
  flex: 1 1 auto;
  line-height: 1.55;
  opacity: 1;
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
}

.sc-how-why.mod-split .how-why-media-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  min-height: 100%;
  height: auto;
}

.sc-how-why.mod-split .how-why-media-inner {
  position: relative;
  inset: auto;
  width: 100%;
  height: auto;
  max-height: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 0;
}

.sc-how-why.mod-split .how-why-media-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  will-change: transform, opacity;
}

@media screen and (max-width: 991px) {
  .sc-how-why.mod-split .how-why-main-wrap {
    grid-template-columns: 1fr;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap {
    border-right: none;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:not(:last-child) {
    border-bottom: 1px solid rgba(186, 157, 78, 0.42);
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:last-child {
    border-bottom: none;
  }

  .sc-how-why.mod-split .how-why-title {
    max-width: none;
  }

  .sc-how-why.mod-split .how-why-main-item {
    min-height: 0;
    padding: clamp(2.2rem, 5vw, 3rem) clamp(1.8rem, 4vw, 2.4rem);
  }

  .sc-how-why.mod-split .how-why-item-sub {
    max-width: none;
  }

  .sc-how-why.mod-split .how-why-media-wrap {
    min-height: 0;
    height: auto;
    margin-top: 1.5rem;
  }

  .sc-how-why.mod-split .how-why-media-inner {
    position: relative;
    inset: auto;
    height: clamp(24rem, 72vw, 36rem);
    min-height: 0;
  }
}

/* Mobile/tablet: Point1–3 → Image → Point4–6 */
@media screen and (max-width: 991px) {
  .sc-how-why.mod-split .container.grid,
  .sc-how-why.mod-split .container.grid.fuild,
  .sc-how-why.mod-split .container.grid.fluid {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
  }

  .sc-how-why.mod-split .how-why-copy-col,
  .sc-how-why.mod-split .g-how-why-copy-col,
  .sc-how-why.mod-split .how-why-main-wrap,
  .sc-how-why.mod-split .g-how-why-main-wrap {
    display: contents !important;
  }

  .sc-how-why.mod-split .how-why-title-wrap,
  .sc-how-why.mod-split .g-how-why-title-wrap {
    order: 0;
    width: 100%;
    margin-bottom: 1.6rem !important;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(1) {
    order: 1;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(2) {
    order: 2;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(3) {
    order: 3;
  }

  .sc-how-why.mod-split .how-why-media-wrap,
  .sc-how-why.mod-split .g-how-why-media-wrap {
    order: 4;
    width: 100%;
    grid-area: auto !important;
    margin-top: 1.6rem;
    margin-bottom: 1.6rem;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(4) {
    order: 5;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(5) {
    order: 6;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(6) {
    order: 7;
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(3),
  .sc-how-why.mod-split .how-why-main-item-wrap:nth-child(6) {
    border-bottom: 1px solid rgba(186, 157, 78, 0.42);
  }

  .sc-how-why.mod-split .how-why-main-item-wrap:last-child {
    border-bottom: none;
  }
}

/* One panel / contact per nabt-main-item-list (standalone Elementor sections) */
.g-nabt-main-item-standalone {
  grid-column: 2 / -2;
  grid-row: 1;
  width: 100%;
}

.g-nabt-main-contact-standalone {
  grid-column: 2 / -2;
  grid-row: 1;
  width: 100%;
}

.elementor-widget-compass-about-panel .nabt-main-item-list,
.elementor-widget-compass-about-contact .nabt-main-item-list {
  display: block;
  width: 100%;
}

@media screen and (max-width: 991px) {
  .g-nabt-main-item-standalone,
  .g-nabt-main-contact-standalone {
    grid-column: 1 / -1;
  }
}

.elementor-editor-active .sc-nabt-hero {
  height: auto;
  min-height: 50vh;
}

.elementor-editor-active .nabt-hero-title-wrap,
.elementor-editor-active .nabt-main-title,
.elementor-editor-active .nabt-main-item-title,
.elementor-editor-active .nabt-main-item-img,
.elementor-editor-active .nabt-main-img,
.elementor-editor-active .nabt-main-item-sub,
.elementor-editor-active .nabt-main-item-sub .word {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  clip-path: none !important;
}

.elementor-editor-active .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
.elementor-editor-active .sc-nabt-hero .nabt-hero-title-wrap .heading .word {
  overflow: visible !important;
  padding-bottom: 0 !important;
}

.elementor-editor-active .how-hero-title,
.elementor-editor-active .how-step-title,
.elementor-editor-active .how-select-title,
.elementor-editor-active .how-commit-title,
.elementor-editor-active .how-why-title,
.elementor-editor-active .how-why-sub,
.elementor-editor-active .how-why-main-item,
.elementor-editor-active .sc-how-steps .home-invest-step-item-inner,
.elementor-editor-active .sc-how-steps .home-invest-item-step-txt,
.elementor-editor-active .sc-how-steps .home-invest-step-title,
.elementor-editor-active .sc-how-steps .home-invest-step-para {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.elementor-editor-active .how-select-item-img-wrap,
.elementor-editor-active .how-select-item-img {
  clip-path: none !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/*
 * How It Works grid placements (present in compass-html/css/compass.css,
 * missing from theme compass.css). Without these, sc-how-why / sc-how-steps
 * collapse in Elementor (title + columns / 2×2 steps all overlap).
 */
.g-how-hero-title {
  grid-area: 1 / 2 / 2 / 12;
}

.g-how-step-title-wrap {
  grid-area: 1 / 2 / 2 / 9;
}

.g-how-step-main {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

.g-how-step-main-wrap {
  grid-area: 1 / 3 / 2 / 13;
}

.sc-how-steps .g-how-step-main-wrap {
  grid-area: unset !important;
  grid-column: 1 / -1;
  width: 100%;
}

.g-how-select-title-wrap {
  grid-area: 1 / 7 / 2 / 13;
}

.g-how-select-item-wrap-1 {
  grid-area: 2 / 2 / 3 / 7;
}

.g-how-select-item-img-wrap-1 {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

.g-how-select-item-txt-1 {
  grid-area: span 1 / span 2 / span 1 / span 2;
  align-self: end;
}

.g-how-select-item-wrap-2 {
  grid-area: 3 / 5 / 4 / 13;
}

.g-how-select-item-txt-2 {
  grid-area: span 1 / span 2 / span 1 / span 2;
  align-self: end;
}

.g-how-select-item-img-wrap-2 {
  grid-area: span 1 / span 6 / span 1 / span 6;
}

.g-how-select-item-wrap-3 {
  grid-area: 4 / 3 / 5 / 8;
}

.g-how-select-item-img-wrap-3 {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

.g-how-select-item-txt-3 {
  grid-area: span 1 / span 2 / span 1 / span 2;
  align-self: end;
}

.g-how-commit-title-wrap {
  grid-area: 1 / 4 / 2 / 10;
  justify-self: center;
}

.g-how-commit-main-wrap {
  grid-area: 2 / 2 / 3 / 12;
}

.g-how-why-title-wrap {
  grid-area: auto;
}

.g-how-why-main-wrap {
  grid-area: auto;
}

.g-how-why-copy-col {
  grid-area: 1 / 2 / 2 / 7;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  min-width: 0;
  align-self: stretch;
}

.g-how-why-media-wrap {
  grid-area: 1 / 7 / 2 / 12;
  min-width: 0;
  align-self: stretch;
  min-height: 100%;
}

.g-how-img-ft-wrap {
  grid-area: 1 / 2 / 2 / 12;
}

@media screen and (max-width: 991px) {
  .g-how-hero-title,
  .g-how-step-title-wrap,
  .g-how-step-main-wrap,
  .g-how-select-title-wrap,
  .g-how-select-item-wrap-1,
  .g-how-select-item-wrap-2,
  .g-how-select-item-wrap-3,
  .g-how-commit-title-wrap,
  .g-how-commit-main-wrap,
  .g-how-why-copy-col,
  .g-how-why-media-wrap {
    grid-column: 1 / 5;
  }

  .g-how-why-copy-col {
    grid-area: 1 / 1 / 2 / 5;
  }

  .g-how-why-media-wrap {
    grid-area: 2 / 1 / 3 / 5;
  }

  .sc-how-steps .g-home-invest-step-item-inner-1,
  .sc-how-steps .g-home-invest-step-item-inner-2,
  .sc-how-steps .g-home-invest-step-item-inner-3,
  .sc-how-steps .g-home-invest-step-item-inner-4 {
    grid-area: auto !important;
    grid-column: 1 / -1 !important;
  }

  .sc-how-steps .how-step-main-wrap {
    display: grid !important;
    grid-template-columns: 1fr !important;
    row-gap: clamp(4rem, 7vh, 6rem);
  }

  .sc-how-steps .home-invest-item-step-txt {
    font-size: clamp(4.4rem, 14vw, 6.8rem) !important;
  }
}

@media screen and (max-width: 767px) {
  .g-how-hero-title,
  .g-how-step-title-wrap,
  .g-how-step-main-wrap,
  .g-how-select-title-wrap,
  .g-how-select-item-wrap-1 {
    grid-column-end: 3;
  }

  .g-how-select-item-img-wrap-1 {
    grid-column: span 1 / span 1;
  }

  .g-how-select-item-wrap-2 {
    grid-column-end: 3;
  }

  .g-how-select-item-txt-2 {
    grid-column: span 2 / span 2;
  }

  .g-how-select-item-img-wrap-2 {
    grid-area: 1 / 1 / 2 / 3;
  }

  .g-how-select-item-wrap-3 {
    grid-column-end: 3;
  }

  .g-how-select-item-img-wrap-3 {
    grid-column: span 1 / span 1;
  }
}

/* Distillery list grid placements (missing from theme compass.css) */
.g-dist-hero-title {
  grid-area: 1 / 2 / 2 / 7;
  /* Reckless serifs overhang — keep trailing glyphs visible */
  padding-right: 0.15em;
  overflow: visible;
}

.dist-hero-title,
.dist-hero-title .line,
.dist-hero-title div {
  overflow: visible;
}

/* While SplitText animates, lines use overflow:hidden — give glyph room */
.dist-hero-title > div,
.dist-hero-sub > div {
  padding-right: 0.12em;
}

.g-dist-hero-sub {
  grid-area: 1 / 8 / 2 / 12;
  align-self: end;
}

.g-dist-main-head {
  grid-area: 1 / 2 / 2 / 12;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-bottom: 4.8rem;
}

.g-dist-main-cms {
  grid-area: 2 / 2 / 3 / 12;
  min-width: 0;
  max-width: 100%;
}

.sc-dist-main .dist-main-label,
.sc-post-type-list .dist-main-label {
  color: var(--cl-primary, #ba9d4e) !important;
  margin: 0;
  flex: 0 1 auto;
  min-width: 0;
}

.sc-dist-main .dist-main-head,
.sc-post-type-list .dist-main-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-bottom: 4.8rem;
}

.sc-post-type-list .mod-dist-main-view-all {
  flex: 0 0 auto;
  white-space: nowrap;
}

/* Homepage featured blog — side-by-side carousel matching design */
.sc-post-type-list {
  padding: 12rem 0 14rem;
  overflow: visible;
}

.sc-post-type-list .container {
  max-width: 100%;
  min-width: 0;
}

.sc-post-type-list .dist-main-cms-wrap {
  grid-row-gap: 0;
}

.sc-post-type-list .dist-main-item-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.15fr);
  grid-template-rows: auto;
  grid-column-gap: 6.4rem;
  grid-row-gap: 0;
  align-items: stretch;
}

.sc-post-type-list .g-dist-main-item-info-1,
.sc-post-type-list .g-dist-main-item-info-2,
.sc-post-type-list .g-dist-main-item-info-3,
.sc-post-type-list .g-dist-main-item-info-4,
.sc-post-type-list .g-dist-main-item-info-5,
.sc-post-type-list .dist-main-item-info {
  grid-area: 1 / 1 / 2 / 2 !important;
  justify-content: center;
  padding-bottom: 0;
  margin-top: 0;
  min-width: 0;
  max-width: 100%;
  overflow: visible;
}

.sc-post-type-list .g-dist-main-item-img-wrap-1,
.sc-post-type-list .g-dist-main-item-img-wrap-2,
.sc-post-type-list .g-dist-main-item-img-wrap-3,
.sc-post-type-list .g-dist-main-item-img-wrap-4,
.sc-post-type-list .g-dist-main-item-img-wrap-5,
.sc-post-type-list .dist-main-item-img-wrap {
  grid-area: 1 / 2 / 2 / 3 !important;
  width: 100%;
  min-height: 0;
  height: auto;
  max-width: 100%;
  align-self: stretch;
}

.sc-post-type-list .dist-main-item-title {
  color: #f4efe6 !important;
  max-width: none !important;
  min-height: 0 !important;
  font-size: clamp(3.6rem, 4vw, 5.6rem);
  line-height: 1.12;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.sc-post-type-list .dist-main-item-sub,
.sc-dist-main .dist-main-item-sub,
html body .txt.dist-main-item-sub {
  color: #ede9e8 !important;
  -webkit-text-fill-color: #ede9e8 !important;
  max-width: 42rem;
}

.sc-post-type-list .dist-main-item-img-overlay {
  background-image: linear-gradient(#0000, #00000040 85%), linear-gradient(#0003, #0003);
}

.sc-post-type-list .dist-main-item-img-overlay-left,
.sc-post-type-list .dist-main-item-img-overlay-right {
  display: none;
}

/* Blog carousel chrome */
.sc-post-type-list.is-blog-carousel .home-blog-carousel {
  width: 100%;
  min-width: 0;
  position: relative;
  z-index: 2;
}

.sc-post-type-list.is-blog-carousel .home-blog-swiper {
  overflow: hidden;
  width: 100%;
  position: relative;
}

/* Horizontal Swiper needs flex wrapper — never stack slides as a column */
.sc-post-type-list.is-blog-carousel .home-blog-swiper .swiper-wrapper {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch;
  grid-row-gap: 0 !important;
  min-height: 36rem;
  box-sizing: border-box;
}

.sc-post-type-list.is-blog-carousel .swiper-slide {
  height: auto;
  box-sizing: border-box;
  width: 100%;
  flex-shrink: 0;
  opacity: 1 !important;
  visibility: visible !important;
}

.sc-post-type-list.is-blog-carousel .swiper-slide > .dist-main-cms-item {
  width: 100%;
  opacity: 1 !important;
  visibility: visible !important;
}

.sc-post-type-list.is-blog-carousel .dist-main-cms-item,
.sc-post-type-list.is-blog-carousel .dist-main-item-inner,
.sc-post-type-list.is-blog-carousel .dist-main-item-info {
  opacity: 1 !important;
  visibility: visible !important;
}

.sc-post-type-list.is-blog-carousel .dist-main-item-img-wrap {
  border-radius: 0.8rem;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  min-height: 36rem;
  opacity: 1 !important;
  pointer-events: auto !important;
  clip-path: none !important;
}

.sc-post-type-list.is-blog-carousel .dist-main-item-img-wrap img {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

.sc-post-type-list.is-blog-carousel .dist-main-item-img {
  object-fit: cover;
}

.sc-post-type-list.is-blog-carousel .home-blog-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2rem;
  margin-top: 3.2rem;
  width: 100%;
  position: relative;
  z-index: 5;
  pointer-events: auto;
}

.sc-post-type-list.is-blog-carousel .home-blog-pag {
  font-family: inherit;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.08em;
  font-size: 1.6rem;
  line-height: 1;
  color: #f4efe6;
  white-space: nowrap;
}

.sc-post-type-list.is-blog-carousel .home-blog-pag-cur {
  color: var(--cl-primary, #ba9d4e);
}

.sc-post-type-list.is-blog-carousel .home-blog-pag-sep,
.sc-post-type-list.is-blog-carousel .home-blog-pag-tot {
  color: var(--cl-warm, #ede9e8);
}

.sc-post-type-list.is-blog-carousel .home-blog-arrows {
  display: flex;
  align-items: center;
  gap: 1rem;
}

html body .home-blog-arrows .home-blog-prev,
html body .home-blog-arrows .home-blog-next,
html body .sc-post-type-list.is-blog-carousel .home-blog-prev,
html body .sc-post-type-list.is-blog-carousel .home-blog-next {
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 50%;
  border: 1px solid #ba9d4e !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #ba9d4e !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  pointer-events: auto;
  position: relative;
  z-index: 6;
  box-shadow: none !important;
  transition:
    background 0.35s ease,
    color 0.35s ease,
    border-color 0.35s ease,
    transform 0.35s ease;
}

html body .home-blog-arrows .home-blog-prev svg,
html body .home-blog-arrows .home-blog-next svg {
  width: 1.8rem;
  height: 1.8rem;
  display: block;
  color: #ba9d4e !important;
  fill: none !important;
  stroke: #ba9d4e !important;
}

html body .home-blog-arrows .home-blog-prev svg path,
html body .home-blog-arrows .home-blog-next svg path {
  stroke: #ba9d4e !important;
  fill: none !important;
}

html body .home-blog-arrows .home-blog-prev:hover,
html body .home-blog-arrows .home-blog-next:hover {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-color: #ba9d4e !important;
  color: #ba9d4e !important;
}

.sc-post-type-list.is-blog-carousel .home-blog-prev:hover {
  transform: translateX(-0.1rem);
}

.sc-post-type-list.is-blog-carousel .home-blog-next:hover {
  transform: translateX(0.1rem);
}

.sc-post-type-list.is-blog-carousel .home-blog-prev:focus-visible,
.sc-post-type-list.is-blog-carousel .home-blog-next:focus-visible {
  outline: 2px solid var(--cl-primary, #ba9d4e);
  outline-offset: 3px;
}

@media screen and (max-width: 991px) {
  .g-dist-main-head {
    grid-area: span 1 / span 4 / span 1 / span 4;
    margin-bottom: 3.2rem;
  }

  .g-dist-hero-sub,
  .g-dist-main-cms {
    grid-area: span 1 / span 4 / span 1 / span 4;
  }

  .sc-post-type-list {
    padding: 8rem 0 10rem;
  }

  .sc-post-type-list .dist-main-head,
  .sc-post-type-list .g-dist-main-head {
    margin-bottom: 3.2rem;
    gap: 1.6rem;
  }

  .sc-post-type-list .dist-main-item-inner {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
    grid-column-gap: 0;
    grid-row-gap: 0;
  }

  .sc-post-type-list .g-dist-main-item-info-1,
  .sc-post-type-list .g-dist-main-item-info-2,
  .sc-post-type-list .g-dist-main-item-info-3,
  .sc-post-type-list .g-dist-main-item-info-4,
  .sc-post-type-list .g-dist-main-item-info-5,
  .sc-post-type-list .dist-main-item-info {
    grid-area: 2 / 1 / 3 / 2 !important;
    text-align: left;
    align-items: flex-start;
    margin-top: 2.8rem;
    padding: 0;
  }

  .sc-post-type-list .g-dist-main-item-img-wrap-1,
  .sc-post-type-list .g-dist-main-item-img-wrap-2,
  .sc-post-type-list .g-dist-main-item-img-wrap-3,
  .sc-post-type-list .g-dist-main-item-img-wrap-4,
  .sc-post-type-list .g-dist-main-item-img-wrap-5,
  .sc-post-type-list .dist-main-item-img-wrap {
    grid-area: 1 / 1 / 2 / 2 !important;
    min-height: 0;
    height: 36rem;
    width: 100%;
  }

  .sc-post-type-list.is-blog-carousel .dist-main-item-img-wrap {
    min-height: 32rem;
    height: 32rem;
    aspect-ratio: auto;
  }

  .sc-post-type-list.is-blog-carousel .home-blog-nav {
    margin-top: 2.4rem;
    justify-content: flex-start;
  }

  .sc-post-type-list .dist-main-item-title {
    font-size: clamp(3.2rem, 7vw, 4.8rem);
    max-width: none !important;
  }

  .sc-post-type-list .dist-main-item-sub {
    max-width: none;
  }
}

@media screen and (max-width: 767px) {
  .sc-post-type-list {
    padding: 6rem 0 8rem;
    overflow-x: visible;
  }

  .g-dist-main-head,
  .g-dist-main-cms,
  .sc-post-type-list .g-dist-main-head,
  .sc-post-type-list .g-dist-main-cms {
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .sc-post-type-list .dist-main-item-info {
    margin-top: 2.4rem;
    padding-left: 0;
    padding-right: 0;
  }

  .sc-post-type-list .dist-main-item-img-wrap {
    height: 28rem;
  }

  .sc-post-type-list .dist-main-item-title {
    font-size: clamp(2.8rem, 8vw, 4rem);
  }

  .sc-post-type-list .mod-dist-main-view-all,
  .sc-post-type-list .mod-dist-main-btn {
    padding: 1.2rem 2.2rem;
  }

  .sc-post-type-list .dist-main-item-sub {
    max-width: 100% !important;
    width: 100%;
  }
}

.g-dist-main-item-info-1,
.g-dist-main-item-info-2,
.g-dist-main-item-info-3,
.g-dist-main-item-info-4,
.g-dist-main-item-info-5 {
  grid-area: 1 / 1 / 2 / 4;
}

.g-dist-main-item-img-wrap-1,
.g-dist-main-item-img-wrap-2,
.g-dist-main-item-img-wrap-3,
.g-dist-main-item-img-wrap-4,
.g-dist-main-item-img-wrap-5 {
  grid-area: 1 / 3 / 2 / 11;
}

@media screen and (max-width: 991px) {
  .g-dist-main-item-info-1,
  .g-dist-main-item-info-2,
  .g-dist-main-item-info-3,
  .g-dist-main-item-info-4,
  .g-dist-main-item-info-5 {
    grid-row: 2 / 3;
    grid-column-end: 2;
  }

  .g-dist-main-item-img-wrap-1,
  .g-dist-main-item-img-wrap-2,
  .g-dist-main-item-img-wrap-3,
  .g-dist-main-item-img-wrap-4,
  .g-dist-main-item-img-wrap-5 {
    grid-column: 1 / 2;
  }
}

@media screen and (max-width: 767px) {
  .g-dist-hero-title {
    grid-column-end: 3;
    justify-self: center;
  }

  .g-dist-hero-sub {
    grid-column: span 2 / span 2;
    justify-self: center;
  }
}

.elementor-editor-active .dist-hero-title,
.elementor-editor-active .dist-hero-sub,
.elementor-editor-active .dist-main-item-title,
.elementor-editor-active .dist-main-item-sub,
.elementor-editor-active .mod-dist-main-btn {
  opacity: 1 !important;
  visibility: visible !important;
}

.elementor-editor-active .dist-main-item-img-wrap,
.elementor-editor-active .dist-main-item-img-wrap img {
  clip-path: none !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* How whisky is made — grid placements missing from theme compass.css */
.g-whis-hero-title-wrap {
  grid-area: 1 / 2 / 2 / 11;
}

.g-whis-hero-img-wrap {
  grid-area: span 1 / span 12 / span 1 / span 12;
}

.g-whis-abt-bg-wrap {
  grid-area: 1 / 2 / 2 / 12;
}

.g-whis-abt-title {
  grid-area: 1 / 2 / 2 / 12;
  justify-self: center;
}

.g-whis-process-title-wrap {
  grid-area: 1 / 2 / 2 / -2;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

/* Process section intro copy — full width, one line on desktop */
.sc-whis-process .whis-process-sub,
.sc-post-type-process .whis-process-sub,
.txt.txt-18.whis-process-sub {
  max-width: none !important;
  width: 100%;
  white-space: nowrap;
}

@media screen and (max-width: 991px) {
  .sc-whis-process .whis-process-sub,
  .sc-post-type-process .whis-process-sub,
  .txt.txt-18.whis-process-sub {
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

.g-whis-process-stick-wrap {
  grid-area: 2 / 2 / 3 / 6;
}

.g-whis-process-main-stick-wrap {
  grid-area: 2 / 7 / 3 / 12;
}

.whis-process-main-stick-wrap,
.g-whis-process-main-stick-wrap,
.sc-whis-process .whis-process-main-stick-wrap,
.sc-post-type-process .whis-process-main-stick-wrap {
  margin-top: 3rem !important;
}

/* Services / process images — soft growth on hover (links to service pages) */
.sc-whis-process .whis-proc-main-img-wrap,
.sc-post-type-process .whis-proc-main-img-wrap {
  overflow: hidden;
  cursor: pointer;
  position: relative;
}

.sc-whis-process .whis-proc-main-img-wrap a,
.sc-post-type-process .whis-proc-main-img-wrap a {
  display: block;
  width: 100%;
  height: 100%;
}

.sc-whis-process .whis-proc-main-img-wrap img,
.sc-post-type-process .whis-proc-main-img-wrap img {
  transition: transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
  transform: scale(1);
  transform-origin: center center;
  will-change: transform;
}

@media (hover: hover) and (pointer: fine) {
  .sc-whis-process .whis-proc-main-img-wrap:hover img,
  .sc-whis-process .whis-proc-main-img-wrap:focus-within img,
  .sc-post-type-process .whis-proc-main-img-wrap:hover img,
  .sc-post-type-process .whis-proc-main-img-wrap:focus-within img {
    transform: scale(1.1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .sc-whis-process .whis-proc-main-img-wrap img,
  .sc-post-type-process .whis-proc-main-img-wrap img {
    transition: none;
  }
}

.g-whis-contact-main {
  grid-area: 1 / 2 / 2 / 12;
}

.g-whis-contact-img-wrap,
.g-whis-contact-content {
  grid-area: 1 / 1 / 2 / 2;
}

@media screen and (max-width: 991px) {
  .g-whis-hero-img-wrap {
    grid-column: span 4 / span 4;
  }

  .g-whis-abt-bg-wrap,
  .g-whis-abt-title,
  .g-whis-process-title-wrap,
  .g-whis-process-stick-wrap,
  .g-whis-process-main-stick-wrap,
  .g-whis-contact-main {
    grid-column: 1 / 5;
  }
}

@media screen and (max-width: 767px) {
  .g-whis-hero-img-wrap {
    grid-column: span 2 / span 2;
  }
}

.elementor-editor-active .whis-hero-label,
.elementor-editor-active .whis-hero-title,
.elementor-editor-active .whis-abt-title,
.elementor-editor-active .whis-process-label,
.elementor-editor-active .whis-process-title,
.elementor-editor-active .whis-process-sub,
.elementor-editor-active .whis-hero-img-wrap {
  opacity: 1 !important;
  visibility: visible !important;
}

.elementor-editor-active .sc-home-reviews .home-reviews-label,
.elementor-editor-active .sc-home-reviews .home-reviews-title,
.elementor-editor-active .sc-home-reviews .home-reviews-intro,
.elementor-editor-active .sc-home-reviews .home-reviews-quote-mark,
.elementor-editor-active .sc-home-reviews .home-reviews-quote,
.elementor-editor-active .sc-home-reviews .home-reviews-foot,
.elementor-editor-active .sc-home-reviews .home-reviews-meta,
.elementor-editor-active .sc-home-reviews .home-reviews-name,
.elementor-editor-active .sc-home-reviews .home-reviews-role,
.elementor-editor-active .sc-home-reviews .home-reviews-location,
.elementor-editor-active .sc-home-reviews .home-reviews-stars,
.elementor-editor-active .sc-home-reviews .home-reviews-nav,
.elementor-editor-active .sc-home-reviews .home-reviews-toolbar,
.elementor-editor-active .sc-home-reviews .home-reviews-rail-item,
.elementor-editor-active .sc-home-reviews .home-reviews-progress-bar {
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: none !important;
  transform: none !important;
}

.elementor-editor-active .sc-post-type-list .dist-main-label,
.elementor-editor-active .sc-post-type-list .dist-main-head,
.elementor-editor-active .sc-post-type-list .mod-dist-main-btn,
.elementor-editor-active .sc-post-type-list .mod-dist-main-view-all {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Buyer Guide / Invest — grid placements missing from theme compass.css */
.g-invest-hero-title-wrap {
  grid-area: 1 / 2 / 2 / 8;
  align-self: center;
}

.g-invest-hero-book-wrap {
  grid-area: 1 / 7 / 2 / 13;
  align-self: center;
}

.g-invest-hero-aspect {
  grid-area: 1 / 1 / 2 / 2;
}

.g-invest-hero-book-img-wrap {
  grid-area: 1 / 1 / 2 / 2;
  align-self: center;
}

.g-invest-hero-book-cir-wrap {
  grid-area: 1 / 1 / 2 / 2;
  place-self: center;
}

.g-invest-abt-bg-wrap {
  grid-area: 1 / 2 / 2 / 12;
}

.g-invest-abt-title {
  grid-area: 1 / 3 / 2 / 11;
}

.g-invest-how-item-wrap-1 {
  grid-area: 1 / 2 / 2 / 12;
}

.g-invest-how-item-img-wrap-1 {
  grid-area: 1 / 1 / 2 / 6;
}

.g-invest-how-item-content-wrap-1 {
  grid-area: 1 / 7 / 2 / 11;
}

.g-invest-how-item-wrap-2 {
  grid-area: 2 / 2 / 3 / 12;
}

.g-invest-how-item-img-wrap-2 {
  grid-area: 1 / 6 / 2 / 11;
  align-self: center;
}

.g-invest-how-item-content-wrap-2 {
  grid-area: 1 / 1 / 2 / 5;
}

.g-invest-form-wrap {
  grid-area: 1 / 7 / 2 / 12;
}

.g-input-wrap-2,
.g-input-wrap-3,
.g-input-wrap-4 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 991px) {
  .g-invest-hero-title-wrap {
    grid-area: 2 / 1 / 3 / 5;
    align-self: start;
  }

  .g-invest-hero-book-wrap {
    grid-area: 1 / 1 / 2 / 5;
  }

  .g-invest-hero-book-img-wrap {
    justify-self: center;
  }

  .g-invest-abt-bg-wrap,
  .g-invest-abt-title {
    grid-column: 1 / 5;
  }

  .g-invest-how-item-wrap-1 {
    grid-area: span 1 / span 4 / span 1 / span 4;
  }

  .g-invest-how-item-img-wrap-1 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  .g-invest-how-item-content-wrap-1 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  .g-invest-how-item-wrap-2 {
    grid-area: span 1 / span 4 / span 1 / span 4;
  }

  .g-invest-how-item-img-wrap-2 {
    grid-area: 1 / 2 / 2 / 3;
  }

  .g-invest-how-item-content-wrap-2 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  .g-invest-form-wrap {
    grid-column: 1 / 5;
  }
}

@media screen and (max-width: 767px) {
  .g-invest-how-item-img-wrap-1 {
    grid-area: 2 / 1 / 3 / 3;
  }

  .g-invest-how-item-img-wrap-2 {
    grid-row: 2 / 3;
    grid-column-start: 1;
  }
}

.elementor-editor-active .invest-hero-label,
.elementor-editor-active .invest-hero-title,
.elementor-editor-active .invest-hero-sub,
.elementor-editor-active .invest-hero-book-img-wrap,
.elementor-editor-active .invest-abt-title,
.elementor-editor-active .invest-how-item-title,
.elementor-editor-active .invest-how-item-label,
.elementor-editor-active .invest-how-item-body,
.elementor-editor-active .invest-how-item-inner-item,
.elementor-editor-active .invest-form-title,
.elementor-editor-active .invest-form-wrap {
  opacity: 1 !important;
  visibility: visible !important;
}

.elementor-editor-active .sc-post-type-process .whis-process-title,
.elementor-editor-active .sc-post-type-process .whis-proc-main-step-title,
.elementor-editor-active .sc-post-type-list .dist-main-item-title,
.elementor-editor-active .sc-post-type-list .dist-main-item-sub,
.elementor-editor-active .sc-post-type-list .dist-main-item-img,
.elementor-editor-active .sc-post-type-list .dist-main-item-img-wrap {
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: none !important;
  transform: none !important;
}

/* Home invest steps-only (no pre / Trading block) */
.home-pre-invest-wrap.mod-steps-only {
  margin-top: 0;
  padding-top: 16rem;
  padding-bottom: 12rem;
  z-index: 4;
  background-color: var(--cl-bg, #101929);
  isolation: isolate;
  overflow: clip;
}

.home-pre-invest-wrap.mod-steps-only .home-invest-steps {
  padding-bottom: 30vh;
}

.home-pre-invest-wrap.mod-steps-only .home-invest-step-item {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.sc-whis-process,
.sc-post-type-process {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
  padding-top: clamp(6rem, 10vh, 12rem);
  padding-bottom: 5rem;
}

/* Sticky TOC no longer needs a huge bottom runway before Reviews */
.sc-whis-process .whis-process-stick,
.sc-post-type-process .whis-process-stick {
  margin-bottom: 5rem;
}

/*
 * Tablet/mobile: kill horizontal page scroll (navy strip / sideways drag).
 * Prefer overflow-x:clip so overflow-y stays usable for sticky sections.
 */
@media screen and (max-width: 991px) {
  html,
  body,
  body.body,
  html.lenis body.body {
    overflow-x: clip !important;
    max-width: 100%;
  }

  .main,
  .elementor,
  .elementor-location-header,
  .elementor-location-footer,
  .elementor > .elementor-element,
  .e-con,
  .elementor-section,
  .elementor-widget,
  .elementor-widget-container {
    max-width: 100% !important;
  }

  .sc-home-discor,
  .sc-home-discor .container,
  .sc-home-discor .home-discor-head-wrap,
  .sc-home-discor .g-home-discor-head-wrap,
  .sc-home-discor .home-discor-body-wrap:not(.home-discor-body-wrap--guided),
  .sc-home-intro,
  .sc-whis-process,
  .sc-post-type-process,
  .home-pre-invest-wrap,
  .sc-home-hero,
  .sc-nabt-hero,
  .sc-nabt-main,
  .sc-how-why,
  .sc-how-steps {
    overflow-x: clip !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box;
  }

  /* Guided Defence sticky card stack needs visible overflow on all wrappers */
  .sc-home-discor:has(.home-discor-body-wrap--guided),
  .sc-home-discor .home-discor-body-wrap--guided,
  .sc-home-discor .home-discor-body-wrap--guided .discor-guided,
  .sc-home-discor .discor-guided-mobile-stack,
  .sc-home-discor .discor-guided-col--left,
  .sc-home-discor .discor-guided-col--right,
  .sc-home-discor .discor-guided-card,
  .e-con:has(.home-discor-body-wrap--guided),
  .elementor-widget-compass-home-discover:has(.home-discor-body-wrap--guided),
  .elementor-widget-compass-home-discover:has(.home-discor-body-wrap--guided) > .elementor-widget-container {
    overflow: visible !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box;
  }

  /* Reviews keeps overflow visible so the 3D compass peek is not clipped */
  .sc-home-reviews {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box;
    overflow: visible !important;
  }

  .sc-home-discor .heading.h-size160.home-discor-title,
  .sc-home-discor .home-discor-title {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box;
  }

  .sc-home-discor .home-3d-stick-wrap,
  .sc-home-discor .home-3d-wrap {
    max-width: 100% !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    overflow: hidden !important;
  }

  .sc-whis-process .container.grid,
  .sc-post-type-process .container.grid,
  .sc-whis-process .whis-process-main-stick-wrap,
  .sc-post-type-process .whis-process-main-stick-wrap,
  .sc-whis-process .whis-proc-main-sitck,
  .sc-post-type-process .whis-proc-main-sitck {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .g-whis-process-title-wrap,
  .g-whis-process-stick-wrap,
  .g-whis-process-main-stick-wrap {
    grid-column: 1 / -1 !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .sc-whis-process .whis-proc-main-img-wrap,
  .sc-post-type-process .whis-proc-main-img-wrap {
    width: 100%;
    max-width: 100%;
  }
}

.sc-home-reviews .home-reviews-title,
.sc-home-reviews .home-reviews-quote,
.sc-home-reviews .home-reviews-name,
.sc-home-reviews .home-reviews-intro,
.sc-home-reviews .home-reviews-pag,
.sc-home-reviews .home-reviews-rail-name,
.sc-home-reviews .heading,
.sc-home-reviews .txt:not(.home-reviews-label):not(.home-reviews-role):not(.home-reviews-stars) {
  color: #101929;
}

.sc-site-root {
  position: relative;
  z-index: 2;
}

/* Elementor: keep Compass sections full-bleed and scrollable (no overflow trap) */
.elementor .e-con:has(> .elementor-element > [class*="elementor-widget-compass-"]),
.elementor .elementor-widget[class*="elementor-widget-compass-"] > .elementor-widget-container {
  overflow: visible !important;
  max-width: none;
}

.elementor .elementor-widget[class*="elementor-widget-compass-"] {
  width: 100%;
}

/* Lenis + Elementor: avoid html/body height locks that stall wheel scroll */
html.lenis,
html.lenis body {
  height: auto;
}

body.compass-elementor-edit .sc-home-discor .home-3d-wrap,
body.compass-elementor-edit .home-3d-stick-wrap {
  pointer-events: none;
}

/* Reviews + footer: Elementor width traps / overflow on tablet+mobile */
.elementor-widget-compass-home-reviews,
.elementor-widget-compass-home-footer,
.elementor-widget-compass-home-reviews > .elementor-widget-container,
.elementor-widget-compass-home-footer > .elementor-widget-container {
  max-width: 100%;
  min-width: 0;
}

.elementor-widget-compass-home-footer > .elementor-widget-container {
  overflow-x: clip;
  overflow-y: visible;
  max-width: 100%;
}

.e-con:has(.elementor-widget-compass-home-footer),
.e-con:has(.sc-home-footer.mod-site-ft) {
  overflow: visible !important;
  max-width: 100%;
}

.elementor-widget-compass-home-reviews,
.elementor-widget-compass-home-reviews > .elementor-widget-container,
.e-con:has(.elementor-widget-compass-home-reviews),
.e-con:has(.sc-home-reviews) {
  overflow: visible !important;
}

.sc-home-reviews .swiper,
.sc-home-reviews .swiper-wrapper,
.sc-home-reviews .swiper-slide,
.sc-home-footer.mod-site-ft .container {
  min-width: 0;
  max-width: 100%;
}

/* Site Header / Nav in Elementor Theme Builder */
.elementor-widget-compass-site-header,
.elementor-widget-compass-site-nav,
.elementor-widget-compass-site-header > .elementor-widget-container,
.elementor-widget-compass-site-nav > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  max-width: none;
  overflow: visible !important;
}

.e-con:has(.elementor-widget-compass-site-header),
.e-con:has(.elementor-widget-compass-site-nav),
.elementor-section:has(.elementor-widget-compass-site-header),
.elementor-section:has(.elementor-widget-compass-site-nav) {
  --height: auto;
  --min-height: initial;
  --overflow: visible;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  max-width: none;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* Theme Builder header location — never paint a dark strip behind the bar */
.elementor-location-header,
.elementor-location-header > .elementor-element,
.elementor-location-header .e-con,
.elementor-location-header .e-con-inner,
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-widget-wrap,
.elementor-location-header .elementor-widget-container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.header-wrap.mod-top-bar,
.header-wrap.mod-top-bar.dark-mode {
  mix-blend-mode: normal !important;
  filter: none !important;
}

/* Editor: keep fullscreen nav inspectable without covering the canvas forever */
.elementor-editor-active .elementor-widget-compass-site-nav .nav {
  position: relative !important;
  inset: auto !important;
  width: 100%;
  min-height: 48rem;
  height: auto;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: 1;
}

.elementor-editor-active .elementor-widget-compass-site-nav .nav-main {
  position: relative;
  height: auto;
  min-height: 48rem;
}

.elementor-editor-active .elementor-widget-compass-site-header .header-wrap {
  position: relative !important;
  inset: auto !important;
  width: 100%;
  min-height: 8rem;
  opacity: 1 !important;
  pointer-events: auto !important;
}

@media screen and (max-width: 991px) {
  .elementor-editor-active .sc-home-reviews .home-reviews-slide,
  .elementor-editor-active .sc-home-footer.mod-site-ft .ft-appt-grid {
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/*
 * Gold cursor-fill buttons (btn-hover-v2 + --cl-primary dot): keep dark label text.
 * Base compass.css used to force white on .btn-md:hover, which vanished on gold.
 */
.btn.btn-md:hover,
.btn.btn-md.btn-hover-v2:hover,
.btn.btn-lg.btn-hover-v2:hover,
.btn.btn-sm.btn-hover-v2:hover,
.btn.btn-md.btn-hover-v2:hover .txt,
.btn.btn-lg.btn-hover-v2:hover .txt,
.btn.btn-sm.btn-hover-v2:hover .txt,
.btn.btn-md.mod-outline.btn-hover-v2:hover,
.btn.btn-md.mod-outline.btn-hover-v2:hover .txt,
.btn.btn-md.mod-outline.home-footer-submit.btn-hover-v2:hover,
.btn.btn-md.mod-outline.home-footer-submit.btn-hover-v2:hover .txt,
.btn.btn-md.mod-outline.ft-callout-btn.btn-hover-v2:hover,
.btn.btn-md.mod-outline.ft-callout-btn.btn-hover-v2:hover .txt,
.btn.btn-md.mod-outline.mod-dist-main-btn.btn-hover-v2:hover,
.btn.btn-md.mod-outline.mod-dist-main-btn.btn-hover-v2:hover .txt,
.sc-dist-main.mod-case-study .mod-dist-main-btn.btn-hover-v2:hover,
.sc-dist-main.mod-case-study .mod-dist-main-btn.btn-hover-v2:hover .txt,
.sc-post-type-list .mod-dist-main-btn.btn-hover-v2:hover,
.sc-post-type-list .mod-dist-main-btn.btn-hover-v2:hover .txt {
  color: #101929 !important;
  -webkit-text-fill-color: #101929 !important;
}

/* Post Type List / Distillery CTAs — keep outline chrome; gold fill comes from btn-dot */
.sc-post-type-list .mod-dist-main-btn.btn-hover-v2,
.sc-dist-main .mod-dist-main-btn.btn-hover-v2 {
  overflow: hidden;
  position: relative;
}

.sc-post-type-list .mod-dist-main-btn.btn-hover-v2 .txt,
.sc-dist-main .mod-dist-main-btn.btn-hover-v2 .txt {
  position: relative;
  z-index: 3;
}

/* Blog Post — never collapse into a 12-col grid cell / Elementor boxed width */
.e-con:has(.elementor-widget-compass-blog-post),
.elementor-section:has(.elementor-widget-compass-blog-post),
.e-con:has(.elementor-widget-compass-blog-post) > .e-con-inner,
.elementor-section:has(.elementor-widget-compass-blog-post) > .elementor-container,
.elementor-widget-compass-blog-post,
.elementor-widget-compass-blog-post > .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.single-post .compass-blog-post,
body.single .compass-blog-post {
  width: 100%;
  max-width: 100%;
}

/* -------------------------------------------------------------------------- */
/* Performance — reduce paint/compositing cost while scrolling                */
/* -------------------------------------------------------------------------- */

.header-wrap.dark-mode {
  filter: none !important;
}

.sc-home-reviews {
  content-visibility: auto;
  contain-intrinsic-size: 1px 800px;
}

/* Blog carousel must always paint — content-visibility blanks non-active slides */
.sc-post-type-list.is-blog-carousel {
  content-visibility: visible;
  contain: none;
}

/* content-visibility breaks ScrollTrigger measurements on the process-map marquee */
.home-pre-invest-wrap.mod-process-map {
  content-visibility: visible;
  contain: none;
}

/* Discover feature cards — hide legacy zigzag mod-6 only (not Guided Defence) */
.sc-home-discor .home-discor-body-wrap:not(.home-discor-body-wrap--guided) > .container > .home-discor-bg-item.mod-6.mod-info {
  display: none !important;
}

.home-discor-body-wrap--guided .discor-guided-card.g-home-discor-bg-item-6,
.home-discor-body-wrap--guided .discor-guided-card[data-discor-card="6"] {
  display: flex !important;
}

.sc-home-discor .home-discor-body-wrap > .container > .home-discor-bg-item.mod-info.is-discor-last,
.sc-home-discor .home-discor-body-wrap > .container > .home-discor-bg-item.mod-info:last-child {
  margin-bottom: clamp(6rem, 10vh, 12rem);
}

/* Extra slots if editors add more than 5 cards later */
.g-home-discor-bg-item-6 {
  grid-area: 5 / 3 / 6 / 7;
}

.g-home-discor-bg-item-8 {
  grid-area: 6 / 9 / 7 / 12;
}

.g-home-discor-bg-item-9 {
  grid-area: 7 / 2 / 8 / 5;
}

.g-home-discor-bg-item-10 {
  grid-area: 8 / 10 / 9 / 12;
}

@media only screen and (max-width: 991px) {
  .g-home-discor-bg-item-6,
  .g-home-discor-bg-item-8,
  .g-home-discor-bg-item-9,
  .g-home-discor-bg-item-10 {
    grid-column: 1 / -1;
    grid-row: auto;
  }
}

/* Discover hosts sticky WebGL — content-visibility breaks its layout/IO */
.sc-home-discor {
  content-visibility: visible;
  contain: none;
}

/* No paint containment on visual — PNG mix-blend needs the hero backdrop */
.home-banner-visual {
  contain: layout style;
  transform: translateZ(0);
}

.embed-home-banner-3d {
  contain: layout paint;
  transform: translateZ(0);
}

.home-3d-wrap {
  contain: none;
}

@media (prefers-reduced-motion: reduce) {
  html.lenis {
    scroll-behavior: auto;
  }
}

/* Legal notice and privacy policy pages */
.compass-legal {
  padding: 18rem 6rem 10rem;
  background: var(--cl-bg, #101929);
  color: var(--cl-white, #fff);
}

.compass-legal-inner {
  width: min(92rem, 100%);
  margin: 0 auto;
}

.compass-legal-kicker {
  margin: 0 0 1.2rem;
  color: var(--cl-gold, #ba9d4e);
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
}

.compass-legal-title {
  margin: 0 0 2.4rem;
  color: #fff;
  font-family: "IvyPresto Display", "Playfair Display", Georgia, "Times New Roman", serif;
  font-size: clamp(4.2rem, 5vw, 6.4rem);
  font-weight: 500;
  line-height: 1.05;
}

.compass-legal-meta {
  display: grid;
  gap: 1rem 2rem;
  margin: 0 0 3.2rem;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid rgba(186, 157, 78, 0.35);
}

.compass-legal-meta-row {
  display: grid;
  grid-template-columns: 14rem minmax(0, 1fr);
  gap: 1.2rem;
}

.compass-legal-meta dt {
  margin: 0;
  color: var(--cl-gold, #ba9d4e);
  font-size: 1.4rem;
  font-weight: 500;
}

.compass-legal-meta dd {
  margin: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: 1.6rem;
  line-height: 1.5;
}

.compass-legal h2 {
  margin: 3.2rem 0 1.2rem;
  color: #fff;
  font-family: "IvyPresto Display", "Playfair Display", Georgia, "Times New Roman", serif;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.15;
}

.compass-legal p,
.compass-legal li {
  color: rgba(237, 233, 232, 0.86);
  font-size: 1.7rem;
  line-height: 1.65;
}

.compass-legal p {
  margin: 0 0 1.4rem;
}

.compass-legal ul {
  margin: 0 0 1.6rem;
  padding-left: 2rem;
}

.compass-legal li {
  margin: 0 0 0.7rem;
}

.compass-legal a {
  color: var(--cl-gold, #ba9d4e);
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

@media screen and (max-width: 767px) {
  .compass-legal {
    padding: 14rem 2.4rem 8rem;
  }

  .compass-legal-meta-row {
    grid-template-columns: 1fr;
    gap: 0.3rem;
  }
}


