/* Inner page hero — photo background (About / blog archive) */
.sc-nabt-hero {
  --nabt-hero-bg-image: none;
  --nabt-hero-bg-position: center center;
  --nabt-hero-bg-size: cover;
  --nabt-hero-bg-overlay: #101929;
  --nabt-hero-bg-overlay-alpha: 0.52;
}

.sc-nabt-hero-stick {
  isolation: isolate;
}

.sc-nabt-hero .nabt-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  transform-origin: 50% 42%;
  will-change: transform, opacity;
  background-color: var(--cl-navy-deep, #101929);
  background-image:
    radial-gradient(ellipse 70% 55% at 18% 88%, rgba(186, 157, 78, 0.2), transparent 54%),
    radial-gradient(ellipse 80% 65% at 82% 12%, rgba(255, 248, 236, 0.07), transparent 50%),
    radial-gradient(ellipse 100% 100% at 50% 40%, transparent 34%, rgba(10, 8, 6, 0.45) 100%),
    var(--nabt-hero-bg-image);
  background-position: center, center, center, var(--nabt-hero-bg-position);
  background-size: auto, auto, auto, var(--nabt-hero-bg-size);
  background-repeat: no-repeat;
}

.sc-nabt-hero .nabt-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--nabt-hero-bg-overlay);
  opacity: 0;
}

.sc-nabt-hero.has-hero-bg-image .nabt-hero-bg::after {
  opacity: var(--nabt-hero-bg-overlay-alpha);
}

.sc-nabt-hero.has-hero-bg-image .nabt-hero-title-wrap .heading {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  text-shadow: 0 0.2rem 2.4rem rgba(0, 0, 0, 0.28);
  opacity: 1;
}

.sc-nabt-hero.has-hero-bg-image .nabt-hero-title-wrap .heading .word {
  -webkit-text-fill-color: currentColor;
  opacity: 1;
}

.sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150 {
  line-height: 1.15 !important;
}

.sc-nabt-hero .nabt-hero-title-wrap .heading .line {
  display: block;
  overflow: hidden;
  box-sizing: content-box;
  padding-bottom: 0.34em;
}

.sc-nabt-hero .nabt-hero-title-wrap .heading .word {
  display: inline-block;
  vertical-align: top;
  padding-bottom: 0.06em;
}

.sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .line,
.sc-nabt-hero .nabt-hero-title-wrap .heading.is-lines-ready .word {
  overflow: visible !important;
  padding-bottom: 0;
}

@media (prefers-reduced-motion: reduce) {
  .sc-nabt-hero .nabt-hero-bg {
    will-change: auto;
    transform: none !important;
  }
}

.sc-nabt-hero.has-hero-bg-image .pre-invest-bg-wrap {
  z-index: 1;
  opacity: 0.42;
}

.sc-nabt-hero.has-hero-bg-image .nabt-hero-title-wrap {
  z-index: 3;
}

.sc-nabt-hero.has-hero-bg-image .sc-nabt-hero-stick {
  overflow: hidden;
}

[data-compass-namespace="about"] .nabt-main-img,
[data-barba-namespace="about"] .nabt-main-img {
  overflow: hidden;
}

/* About nabt-main — decorative compass (top-right on panels + intro) */
.nabt-main-inner,
.sc-nabt-main:has(.nabt-main-compass) {
  position: relative;
}

.nabt-main-inner {
  overflow: hidden;
}

.nabt-main-compass {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  pointer-events: none;
  color: var(--cl-gold, #ba9d4e);
  overflow: hidden;
}

.nabt-main-compass-svg {
  width: min(62vw, 56rem);
  height: auto;
  aspect-ratio: 1;
  opacity: 0.5;
  transform: translate(18%, -14%);
  flex-shrink: 0;
}

/* About intro — keep compass centered behind copy */
[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-compass,
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-compass {
  align-items: center;
  justify-content: center;
}

[data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-compass-svg,
[data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-compass-svg {
  transform: translateY(-6%);
  opacity: 0.22;
}

.nabt-main-inner > .container,
.nabt-main-inner > .w-layout-blockcontainer {
  position: relative;
  z-index: 2;
}

[data-compass-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone) .nabt-main-item-list,
[data-compass-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone) .nabt-main-item-wrap,
[data-barba-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone) .nabt-main-item-list,
[data-barba-namespace="about"] .sc-nabt-main:has(.g-nabt-main-item-standalone) .nabt-main-item-wrap {
  position: relative;
  z-index: 2;
}

.nabt-compass-rose {
  transform-origin: 260px 260px;
  animation: nabt-compass-drift 48s linear infinite;
}

.nabt-compass-rings {
  transform-origin: 260px 260px;
  animation: nabt-compass-drift-rev 72s linear infinite;
}

@keyframes nabt-compass-drift {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes nabt-compass-drift-rev {
  from { transform: rotate(0deg); }
  to { transform: rotate(-360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .nabt-compass-rose,
  .nabt-compass-rings {
    animation: none;
  }
}

/* Service Details mission — compass visible on warm grey band */
.sc-nabt-main.mod-service-details-mission .nabt-compass-rose {
  animation-duration: 36s;
}

.sc-nabt-main.mod-service-details-mission .nabt-compass-rings {
  animation-duration: 54s;
}

@media screen and (max-width: 991px) {
  .nabt-main-compass-svg {
    width: min(78vw, 40rem);
    opacity: 0.42;
    transform: translate(14%, -10%);
  }

  [data-compass-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-compass-svg,
  [data-barba-namespace="about"] .sc-nabt-main:has(.nabt-main-inner) .nabt-main-compass-svg {
    width: min(88vw, 34rem);
    opacity: 0.14;
    transform: translateY(-2%);
  }

  /*
   * About hero (tablet): center "About" and scale title so "Compass Law"
   * fits the viewport — oversized h-size150 was left-aligning the block and
   * causing horizontal page scroll.
   */
  [data-compass-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap,
  [data-barba-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap {
    text-align: center !important;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  [data-compass-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150,
  [data-barba-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap .heading.h-size150 {
    text-align: center !important;
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    font-size: clamp(5.2rem, 10.5vw, 9.2rem) !important;
    line-height: 1.08 !important;
  }

  [data-compass-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line,
  [data-barba-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap .heading .line {
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
  }

  [data-compass-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap .heading .word,
  [data-barba-namespace="about"] .sc-nabt-hero .nabt-hero-title-wrap .heading .word {
    text-align: center;
  }

  [data-compass-namespace="about"] .sc-nabt-hero .container,
  [data-barba-namespace="about"] .sc-nabt-hero .container {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
}

@media screen and (max-width: 767px) {
  .nabt-main-compass-svg {
    width: min(92vw, 32rem);
    opacity: 0.36;
    transform: translate(10%, -6%);
  }
}

/* About panel — phone CTA in content column */
.nabt-main-phone-actions {
  margin-top: 2.8rem;
  position: relative;
  z-index: 2;
}

.nabt-main-phone-btn.home-discor-cta-btn {
  --cta-gold: #ba9d4e;
  --cta-navy: #101929;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.85rem;
  min-height: 5.4rem;
  padding: 1.45rem 2.8rem;
  border: 1.5px solid var(--cta-gold);
  border-radius: 0.15rem;
  background: transparent;
  color: var(--cta-gold) !important;
  -webkit-text-fill-color: var(--cta-gold) !important;
  font-family: "Neue Haas Grotesk Display Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.28rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-decoration: none !important;
  text-transform: none;
  white-space: nowrap;
  box-shadow: none;
  transition: background-color 0.22s ease, color 0.22s ease, border-color 0.22s ease, transform 0.22s ease;
  cursor: pointer;
}

.nabt-main-phone-btn.home-discor-cta-btn--outline:hover,
.nabt-main-phone-btn.home-discor-cta-btn--outline:focus-visible {
  background: var(--cta-gold);
  border-color: var(--cta-gold);
  color: var(--cta-navy) !important;
  -webkit-text-fill-color: var(--cta-navy) !important;
}

.nabt-main-phone-btn .home-discor-cta-btn__phone {
  display: inline-flex;
  width: 1.55rem;
  height: 1.55rem;
  flex-shrink: 0;
  color: inherit;
}

.nabt-main-phone-btn .home-discor-cta-btn__phone svg {
  display: block;
  width: 100%;
  height: 100%;
}

.nabt-main-phone-btn-label {
  color: inherit;
  -webkit-text-fill-color: inherit;
}

@media screen and (max-width: 767px) {
  .nabt-main-phone-btn.home-discor-cta-btn {
    width: 100%;
  }
}
