/* =========================================================
   LEGACY INTELLIGENCE — ADVISORY PAGE
   File: advisory.css
========================================================= */


/* =========================================================
   PAGE TOKENS
========================================================= */

:root {
  --advisory-ink: #1b1a17;
  --advisory-cream: #f1eee4;
  --advisory-cream-2: #e8e3d8;
  --advisory-brown: #6c4943;
  --advisory-sage: #8e955f;
  --advisory-line: rgba(27, 26, 23, 0.15);
  --advisory-line-light: rgba(241, 238, 228, 0.22);
  --advisory-pad: clamp(22px, 4.5vw, 76px);
  --advisory-gap: clamp(10px, 0.75vw, 14px);
}

.advisory-page {
  width: 100%;
  overflow: hidden;
  background: var(--dark);
  color: var(--advisory-ink);
}

.advisory-page *,
.advisory-page *::before,
.advisory-page *::after {
  box-sizing: border-box;
}

.advisory-page img,
.advisory-page video {
  display: block;
  width: 100%;
}

.advisory-page a {
  color: inherit;
  text-decoration: none;
}


/* =========================================================
   SHARED TYPE
========================================================= */

.advisory-hero-topline span,
.advisory-section-head > span,
.advisory-strategic-statement > span,
.advisory-strategic-signoff span,
.advisory-lens-card > span,
.advisory-positioning-copy > span,
.advisory-positioning-footer span,
.advisory-positioning-index span,
.advisory-positioning-card > span,
.advisory-creative-copy > span,
.advisory-creative-services article > span,
.advisory-business-statement > span,
.advisory-business-statement > div > p,
.advisory-business-copy > span,
.advisory-business-signoff span,
.advisory-growth-title > span,
.advisory-sustainability-copy > span,
.advisory-sustainability-symbol > span,
.advisory-sustainability-card > span,
.advisory-growth-copy > span,
.advisory-growth-number > span,
.advisory-growth-system-head > span,
.advisory-growth-system-grid article > span,
.advisory-final-overlay > span,
.advisory-final-copy > span {
  font-family: "Inter", sans-serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.advisory-hero h1,
.advisory-hero h2,
.advisory-section-head h2,
.advisory-strategic-statement h3,
.advisory-lens-card h3,
.advisory-positioning-copy h2,
.advisory-positioning-index strong,
.advisory-positioning-card h3,
.advisory-creative-services h3,
.advisory-business-statement h2,
.advisory-growth-title h2,
.advisory-sustainability-copy h2,
.advisory-sustainability-card h3,
.advisory-growth-number strong,
.advisory-growth-system-head h3,
.advisory-growth-system-grid h4,
.advisory-final-overlay h2,
.advisory-final-copy h2 {
  font-family: "Canela", serif;
  font-weight: 400;
  letter-spacing: -0.045em;
}

.advisory-hero-bottom p,
.advisory-section-head p,
.advisory-strategic-copy p,
.advisory-lens-card p,
.advisory-positioning-copy p,
.advisory-positioning-card p,
.advisory-creative-copy p,
.advisory-creative-services p,
.advisory-business-copy p,
.advisory-sustainability-copy p,
.advisory-sustainability-card p,
.advisory-growth-copy p,
.advisory-growth-system-grid p,
.advisory-final-copy p {
  font-family: "Inter", sans-serif;
}

.advisory-lead {
  font-size: clamp(20px, 1.65vw, 27px) !important;
  line-height: 1.48 !important;
  color: var(--advisory-ink) !important;
}


/* =========================================================
   HERO
========================================================= */

.advisory-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr);
  min-height: 100svh;
  padding-top: 74px;
    background:var(--maslina);
  border-bottom: 1px solid var(--advisory-line);
}

.advisory-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: calc(100svh - 74px);
  padding: clamp(34px, 4.8vw, 82px) var(--advisory-pad);
  border-right: 1px solid var(--advisory-line);
}

.advisory-hero-topline {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  color: rgba(27, 26, 23, 0.52);
}

.advisory-hero-title-wrap {
  position: relative;
  padding: clamp(40px, 6vw, 100px) 0;
}

.advisory-hero-index {
  position: absolute;
  top: 8px;
  left: 0;
  font-family: "Inter", sans-serif;
  font-size: 10px;
  letter-spacing: 0.18em;
  color: rgba(27, 26, 23, 0.42);
}

.advisory-hero h1 {
  margin: 0;
  max-width: 860px;
  font-size: clamp(72px, 7.7vw, 140px);
  line-height: 0.84;
  color: var(--advisory-ink);
}

.advisory-hero-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 40px;
  align-items: end;
}

.advisory-hero-bottom p {
  max-width: 590px;
  margin: 0;
  font-size: clamp(14px, 1.15vw, 18px);
  line-height: 1.65;
  color: rgba(27, 26, 23, 0.68);
}

.advisory-scroll-link {
  display: inline-flex;
  align-items: center;
  gap: 24px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(27, 26, 23, 0.32);
  font-family: "Inter", sans-serif;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.advisory-scroll-link span:last-child {
  transition: transform 0.35s ease;
}

.advisory-scroll-link:hover span:last-child {
  transform: translateY(5px);
}

.advisory-hero-media {
  position: relative;
  min-height: calc(100svh - 74px);
  overflow: hidden;
  background: var(--advisory-brown);
}

.advisory-hero-media img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(0.72) contrast(1.02);
  transform: scale(1.01);
}

.advisory-hero-media-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(27, 26, 23, 0.08), rgba(27, 26, 23, 0.58)),
    linear-gradient(90deg, rgba(27, 26, 23, 0.14), transparent 58%);
}

.advisory-hero-media-copy {
  position: absolute;
  z-index: 2;
  left: clamp(28px, 4vw, 68px);
  right: clamp(28px, 4vw, 68px);
  bottom: clamp(34px, 5vw, 82px);
  color: var(--advisory-cream);
}

.advisory-hero-media-copy > span {
  display: block;
  margin-bottom: 18px;
  font-family: "Inter", sans-serif;
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0.76;
}

.advisory-hero-media-copy h2 {
  margin: 0;
  font-size: clamp(56px, 5.6vw, 98px);
  line-height: 0.92;
}


/* =========================================================
   SHARED SECTION HEADER
========================================================= */

.advisory-section-head {
  display: grid;
  grid-template-columns: 0.55fr 1.3fr 1fr;
  gap: clamp(28px, 4vw, 72px);
  align-items: end;
  padding:
    clamp(84px, 10vw, 170px)
    var(--advisory-pad)
    clamp(54px, 6vw, 98px);
}

.advisory-section-head > span {
  align-self: start;
  color: rgba(27, 26, 23, 0.48);
}

.advisory-section-head h2 {
  margin: 0;
  font-size: clamp(56px, 6.2vw, 108px);
  line-height: 0.92;
}

.advisory-section-head p {
  max-width: 500px;
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(27, 26, 23, 0.66);
}


/* =========================================================
   01 — STRATEGIC ADVISORY
========================================================= */

.advisory-strategic {
  background: var(--advisory-cream);
}

.advisory-strategic-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.15fr);
  gap: var(--advisory-gap);
  padding: 0 var(--advisory-pad);
}

.advisory-strategic-statement,
.advisory-strategic-copy {
  min-height: 620px;
}

.advisory-strategic-statement {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(38px, 4.6vw, 76px);
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-strategic-statement > span {
  max-width: 330px;
  opacity: 0.7;
}

.advisory-strategic-statement h3 {
  max-width: 850px;
  margin: 60px 0 0;
  font-size: clamp(50px, 5.4vw, 94px);
  line-height: 0.95;
}

.advisory-strategic-copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: clamp(38px, 4.8vw, 82px);
  background: var(--advisory-cream-2);
}

.advisory-strategic-copy p {
  max-width: 760px;
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(27, 26, 23, 0.7);
}

.advisory-strategic-signoff {
  margin-top: auto;
  padding-top: 36px;
  border-top: 1px solid var(--advisory-line);
}

.advisory-strategic-signoff span,
.advisory-strategic-signoff strong {
  display: block;
}

.advisory-strategic-signoff span {
  margin-bottom: 10px;
  color: rgba(27, 26, 23, 0.46);
}

.advisory-strategic-signoff strong {
  font-family: "Canela", serif;
  font-size: clamp(26px, 2.1vw, 38px);
  font-weight: 400;
}

.advisory-lens-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--advisory-gap);
  padding:
    var(--advisory-gap)
    var(--advisory-pad)
    clamp(90px, 10vw, 170px);
}

.advisory-lens-card {
  position: relative;
  min-height: 470px;
  overflow: hidden;
  padding: 30px;
}

.advisory-lens-cream {
  background: var(--advisory-cream-2);
  color: var(--advisory-ink);
}

.advisory-lens-sage {
  background: var(--advisory-sage);
  color: var(--advisory-cream);
}

.advisory-lens-brown {
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-lens-dark {
  background: var(--advisory-ink);
  color: var(--advisory-cream);
}

.advisory-lens-card > span,
.advisory-lens-card > div {
  position: relative;
  z-index: 2;
}

.advisory-lens-card > span {
  opacity: 0.66;
}

.advisory-lens-card > div {
  position: absolute;
  z-index: 2;
  left: 30px;
  right: 30px;
  bottom: 30px;
}

.advisory-lens-card h3 {
  max-width: 390px;
  margin: 0 0 16px;
  font-size: clamp(32px, 2.7vw, 52px);
  line-height: 0.98;
}

.advisory-lens-card p {
  max-width: 310px;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  opacity: 0.82;
}

.advisory-lens-card > img {
  position: absolute;
  z-index: 1;
  top: 22%;
  right: -5%;
  width: 54%;
  opacity: 0.08;
  transform: rotate(-12deg);
  transition:
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.45s ease;
}

.advisory-lens-card:hover > img {
  opacity: 0.16;
  transform: rotate(-6deg) scale(1.05);
}


/* =========================================================
   02 — BRAND POSITIONING
========================================================= */

.advisory-positioning {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
  gap: var(--advisory-gap);
  padding:
    clamp(80px, 8vw, 140px)
    var(--advisory-pad)
    clamp(100px, 11vw, 180px);
  background: var(--dark);
}

.advisory-positioning-copy,
.advisory-positioning-media {
  min-height: 680px;
}

.advisory-positioning-copy {
  display: flex;
  flex-direction: column;
  padding: clamp(40px, 4.8vw, 80px);
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-positioning-copy > span {
  opacity: 0.68;
}

.advisory-positioning-copy h2 {
  max-width: 820px;
  margin: clamp(70px, 8vw, 130px) 0 32px;
  font-size: clamp(54px, 5.8vw, 100px);
  line-height: 0.94;
}

.advisory-positioning-copy > p {
  max-width: 600px;
  margin: 0;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(241, 238, 228, 0.76);
}

.advisory-positioning-footer {
  margin-top: auto;
  padding-top: 36px;
  border-top: 1px solid var(--advisory-line-light);
}

.advisory-positioning-footer span,
.advisory-positioning-footer strong {
  display: block;
}

.advisory-positioning-footer span {
  margin-bottom: 10px;
  opacity: 0.58;
}

.advisory-positioning-footer strong {
  font-family: "Canela", serif;
  font-size: clamp(26px, 2.1vw, 38px);
  font-weight: 400;
}

.advisory-positioning-media {
  position: relative;
  overflow: hidden;
  background: var(--advisory-sage);
}

.advisory-positioning-media video {
  height: 100%;
  object-fit: cover;
}

.advisory-positioning-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(27, 26, 23, 0.08), rgba(27, 26, 23, 0.56));
}

.advisory-positioning-index {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(32px, 4vw, 64px);
  color: var(--advisory-cream);
}

.advisory-positioning-index span {
  opacity: 0.76;
}

.advisory-positioning-index strong {
  align-self: flex-end;
  font-size: clamp(120px, 14vw, 250px);
  line-height: 0.72;
  color: rgba(241, 238, 228, 0.86);
}

.advisory-positioning-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--advisory-gap);
}

.advisory-positioning-card {
  min-height: 330px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 30px;
}

.advisory-positioning-brown {
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-positioning-sage {
  background: var(--advisory-sage);
  color: var(--advisory-cream);
}

.advisory-positioning-cream {
  background: var(--advisory-cream);
  color: var(--advisory-ink);
}

.advisory-positioning-dark {
  background: #11110f;
  color: var(--advisory-cream);
}

.advisory-positioning-card > span {
  opacity: 0.64;
}

.advisory-positioning-card h3 {
  margin: 0 0 16px;
  font-size: clamp(31px, 2.7vw, 50px);
  line-height: 0.98;
}

.advisory-positioning-card p {
  max-width: 300px;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  opacity: 0.8;
}


/* =========================================================
   03 — CREATIVE STRATEGY
========================================================= */

.advisory-creative {
  background: var(--advisory-cream);
}

.advisory-creative-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: var(--advisory-gap);
  padding:
    0
    var(--advisory-pad)
    clamp(100px, 11vw, 180px);
}

.advisory-creative-copy {
  position: relative;
  min-height: 700px;
  overflow: hidden;
  padding: clamp(40px, 4.8vw, 80px);
  background: var(--advisory-sage);
  color: var(--advisory-cream);
}

.advisory-creative-copy > span {
  display: block;
  margin-bottom: clamp(70px, 8vw, 130px);
  opacity: 0.72;
}

.advisory-creative-copy p {
  max-width: 620px;
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(241, 238, 228, 0.82);
}

.advisory-creative-copy .advisory-lead {
  color: var(--advisory-cream) !important;
}

.advisory-creative-symbol {
  position: absolute;
  right: -8%;
  bottom: -12%;
  width: 64%;
  opacity: 0.12;
  transform: rotate(-14deg);
}

.advisory-creative-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--advisory-gap);
}

.advisory-creative-services article {
  min-height: 342px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 30px;
  background: var(--advisory-cream-2);
}

.advisory-creative-services article:nth-child(2) {
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-creative-services article:nth-child(3) {
  background: var(--dark);
  color: var(--advisory-cream);
}

.advisory-creative-services article:nth-child(4) {
  background: var(--advisory-cream);
  border: 1px solid var(--advisory-line);
}

.advisory-creative-services article > span {
  opacity: 0.62;
}

.advisory-creative-services h3 {
  margin: auto 0 16px;
  font-size: clamp(32px, 2.9vw, 54px);
  line-height: 0.98;
}

.advisory-creative-services p {
  max-width: 300px;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  opacity: 0.8;
}


/* =========================================================
   04 — BUSINESS DEVELOPMENT
========================================================= */

.advisory-business {
  padding:
    clamp(80px, 8vw, 140px)
    var(--advisory-pad)
    clamp(100px, 11vw, 180px);
  background: var(--dark);
}

.advisory-business-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.15fr);
  gap: var(--advisory-gap);
}

.advisory-business-statement,
.advisory-business-copy {
  min-height: 700px;
}

.advisory-business-statement {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(40px, 4.8vw, 80px);
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-business-statement > span {
  opacity: 0.7;
}

.advisory-business-statement > div > p {
  margin: 0 0 22px;
  opacity: 0.62;
}

.advisory-business-statement h2 {
  margin: 0;
  font-size: clamp(50px, 5.5vw, 96px);
  line-height: 0.94;
}

.advisory-business-copy {
  display: flex;
  flex-direction: column;
  padding: clamp(40px, 4.8vw, 80px);
  background: var(--advisory-cream);
}

.advisory-business-copy > span {
  color: rgba(27, 26, 23, 0.48);
}

.advisory-business-copy p {
  max-width: 740px;
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(27, 26, 23, 0.7);
}

.advisory-business-copy .advisory-lead {
  margin-top: clamp(72px, 8vw, 130px);
}

.advisory-business-signoff {
  margin-top: auto;
  padding-top: 36px;
  border-top: 1px solid var(--advisory-line);
}

.advisory-business-signoff span,
.advisory-business-signoff strong {
  display: block;
}

.advisory-business-signoff span {
  margin-bottom: 10px;
  color: rgba(27, 26, 23, 0.46);
}

.advisory-business-signoff strong {
  font-family: "Canela", serif;
  font-size: clamp(26px, 2.1vw, 38px);
  font-weight: 400;
}

.advisory-growth-disciplines {
  display: grid;
  grid-template-columns: minmax(360px, 0.88fr) minmax(0, 1.12fr);
  gap: 10px;
  margin-top: var(--advisory-gap);
}

.advisory-growth-title {
  position: relative;
  min-height: 720px;
  overflow: hidden;
  padding: clamp(38px, 4vw, 66px);
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-growth-title > span,
.advisory-growth-title h2 {
  position: relative;
  z-index: 2;
}

.advisory-growth-title > span {
  display: block;
  max-width: 300px;
  line-height: 1.7;
  opacity: 0.76;
}

.advisory-growth-title h2 {
  position: absolute;
  left: clamp(38px, 4vw, 66px);
  right: clamp(38px, 4vw, 66px);
  bottom: clamp(38px, 4vw, 66px);
  margin: 0;
  font-size: clamp(48px, 4.6vw, 82px);
  line-height: 0.94;
}

.advisory-growth-title .animated-pattern {
  position: absolute;
  inset: 18% -5% auto -4%;
  z-index: 1;
  display: grid;
  gap: 9px;
  transform: rotate(-9deg) scale(1.08);
  opacity: 0.92;
}

.advisory-growth-title .pattern-row {
  display: flex;
  gap: 9px;
}

.advisory-growth-title .pattern-row:nth-child(2) {
  transform: translateX(34px);
}

.advisory-growth-title .animated-pattern span {
  display: block;
  width: 48px;
  aspect-ratio: 1;
  background:
    url("assets/ikona.svg")
    center / contain no-repeat;
  opacity: 0.14;
}

.advisory-growth-list {
  min-height: 720px;
  padding: 18px clamp(28px, 2.6vw, 42px);
  background: var(--advisory-cream);
}

.advisory-growth-list .expertise-link {
  width: 100%;
  min-height: 74px;
  padding: 17px 0;
  gap: 22px;
  border-bottom: 1px solid var(--advisory-line);
  font-size: clamp(27px, 2.15vw, 42px);
  line-height: 0.94;
  letter-spacing: -0.035em;
}

.advisory-growth-list .expertise-link:first-child {
  border-top: 1px solid var(--advisory-line);
}

.advisory-growth-list .expertise-text {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  width: 100%;
  min-width: 0;
}

.advisory-growth-list .expertise-icon {
  width: 14px;
  height: 14px;
  margin: 0;
  object-fit: contain;
}

.advisory-growth-list .expertise-arrows {
  flex: 0 0 auto;
  gap: 2px;
  margin-left: 8px;
}

.advisory-growth-list .expertise-arrows img {
  width: 10px;
  height: 10px;
}

.advisory-growth-list .expertise-link:hover,
.advisory-growth-list .expertise-link.active {
  padding-left: 0;
}


/* =========================================================
   05 — SUSTAINABILITY
========================================================= */

.advisory-sustainability {
  padding:
    clamp(90px, 10vw, 170px)
    var(--advisory-pad)
    clamp(100px, 11vw, 180px);
  background: var(--advisory-cream);
}

.advisory-sustainability-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
  gap: var(--advisory-gap);
}

.advisory-sustainability-copy,
.advisory-sustainability-symbol {
  min-height: 650px;
}

.advisory-sustainability-copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(40px, 4.8vw, 80px);
  background: var(--advisory-cream-2);
}

.advisory-sustainability-copy > span {
  margin-bottom: auto;
  color: rgba(27, 26, 23, 0.48);
}

.advisory-sustainability-copy h2 {
  max-width: 950px;
  margin: 70px 0 36px;
  font-size: clamp(54px, 5.8vw, 100px);
  line-height: 0.94;
}

.advisory-sustainability-copy p {
  max-width: 740px;
  margin: 0 0 22px;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(27, 26, 23, 0.7);
}

.advisory-sustainability-symbol {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(36px, 4.4vw, 72px);
  background: var(--advisory-sage);
  color: var(--advisory-cream);
}

.advisory-sustainability-symbol img {
  position: absolute;
  top: 10%;
  right: -14%;
  width: 86%;
  opacity: 0.18;
  transform: rotate(-12deg);
}

.advisory-sustainability-symbol > span {
  position: relative;
  z-index: 2;
  margin-top: auto;
  font-family: "Canela", serif;
  font-size: clamp(35px, 3.5vw, 62px);
  line-height: 0.96;
  letter-spacing: -0.04em;
  text-transform: none;
}

.advisory-sustainability-pillars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--advisory-gap);
  margin-top: var(--advisory-gap);
}

.advisory-sustainability-card {
  min-height: 380px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 32px;
}

.advisory-sustainability-cream {
  background: var(--advisory-cream);
  border: 1px solid var(--advisory-line);
  color: var(--advisory-ink);
}

.advisory-sustainability-brown {
  background: var(--advisory-brown);
  color: var(--advisory-cream);
}

.advisory-sustainability-sage {
  background: var(--advisory-sage);
  color: var(--advisory-cream);
}

.advisory-sustainability-card > span {
  opacity: 0.64;
}

.advisory-sustainability-card h3 {
  margin: auto 0 18px;
  font-size: clamp(34px, 3.1vw, 56px);
  line-height: 0.98;
}

.advisory-sustainability-card p {
  max-width: 320px;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  opacity: 0.8;
}


/* =========================================================
   06 — LONG-TERM GROWTH
========================================================= */

.advisory-growth {
  background: var(--dark);
  color: var(--advisory-cream);
}

.advisory-growth-head > span,
.advisory-growth-head p {
  color: rgba(241, 238, 228, 0.52);
}

.advisory-growth-head h2 {
  color: var(--advisory-cream);
}

.advisory-growth-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(320px, 0.78fr);
  gap: var(--advisory-gap);
  padding: 0 var(--advisory-pad);
}

.advisory-growth-copy,
.advisory-growth-number {
  min-height: 520px;
}

.advisory-growth-copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(40px, 4.8vw, 80px);
  background: var(--advisory-cream);
  color: var(--advisory-ink);
}

.advisory-growth-copy p {
  max-width: 740px;
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(27, 26, 23, 0.7);
}

.advisory-growth-number {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(36px, 4.4vw, 72px);
  background: var(--advisory-brown);
}

.advisory-growth-number strong {
  font-size: clamp(130px, 15vw, 250px);
  line-height: 0.72;
}

.advisory-growth-number span {
  font-family: "Canela", serif;
  font-size: clamp(29px, 2.7vw, 46px);
  line-height: 1.06;
  letter-spacing: -0.035em;
  text-transform: none;
}

.advisory-growth-system {
  margin:
    var(--advisory-gap)
    var(--advisory-pad)
    clamp(100px, 11vw, 180px);
  background: var(--advisory-cream);
  color: var(--advisory-ink);
}

.advisory-growth-system-head {
  display: grid;
  grid-template-columns: 0.45fr 1.55fr;
  gap: clamp(26px, 4vw, 70px);
  align-items: start;
  padding: clamp(42px, 5vw, 84px);
  border-bottom: 1px solid var(--advisory-line);
}

.advisory-growth-system-head > span {
  color: rgba(27, 26, 23, 0.46);
}

.advisory-growth-system-head h3 {
  max-width: 950px;
  margin: 0;
  font-size: clamp(50px, 5.2vw, 92px);
  line-height: 0.94;
}

.advisory-growth-system-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.advisory-growth-system-grid article {
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 34px;
  border-right: 1px solid var(--advisory-line);
}

.advisory-growth-system-grid article:last-child {
  border-right: 0;
}

.advisory-growth-system-grid article > span {
  color: rgba(27, 26, 23, 0.42);
}

.advisory-growth-system-grid h4 {
  margin: auto 0 18px;
  font-size: clamp(32px, 3vw, 54px);
  line-height: 0.98;
}

.advisory-growth-system-grid p {
  max-width: 320px;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: rgba(27, 26, 23, 0.66);
}


/* =========================================================
   FINAL CTA
========================================================= */

.advisory-final {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  gap: var(--advisory-gap);
  padding:
    0
    var(--advisory-pad)
    clamp(80px, 9vw, 150px);
  background: var(--dark);
}

.advisory-final-media,
.advisory-final-copy {
  min-height: 620px;
}

.advisory-final-media {
  position: relative;
  overflow: hidden;
}

.advisory-final-media video {
  height: 100%;
  object-fit: cover;
}

.advisory-final-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(27, 26, 23, 0.42);
}

.advisory-final-overlay {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(38px, 4.6vw, 76px);
  color: var(--advisory-cream);
}

.advisory-final-overlay > span {
  opacity: 0.72;
}

.advisory-final-overlay h2 {
  max-width: 720px;
  margin: auto 0 0;
  font-size: clamp(48px, 5.2vw, 90px);
  line-height: 0.94;
}

.advisory-final-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 38px;
}

.advisory-final-socials a {
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(241, 238, 228, 0.45);
  font-family: "Inter", sans-serif;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.advisory-final-copy {
  display: flex;
  flex-direction: column;
  padding: clamp(38px, 4.8vw, 78px);
  background: var(--advisory-cream);
}

.advisory-final-copy > span {
  color: rgba(27, 26, 23, 0.46);
}

.advisory-final-copy h2 {
  max-width: 700px;
  margin: auto 0 28px;
  font-size: clamp(58px, 6vw, 104px);
  line-height: 0.9;
}

.advisory-final-copy p {
  max-width: 560px;
  margin: 0 0 44px;
  font-size: 15px;
  line-height: 1.7;
  color: rgba(27, 26, 23, 0.68);
}

.advisory-final-copy > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 18px 0 12px;
  border-top: 1px solid var(--advisory-line);
  border-bottom: 1px solid var(--advisory-line);
  font-family: "Inter", sans-serif;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.advisory-final-copy > a span:last-child {
  font-size: 20px;
  transition: transform 0.35s ease;
}

.advisory-final-copy > a:hover span:last-child {
  transform: translateX(7px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1180px) {

  .advisory-hero {
    grid-template-columns: 1fr 0.88fr;
  }

  .advisory-section-head {
    grid-template-columns: 0.45fr 1.4fr;
  }

  .advisory-section-head p {
    grid-column: 2;
  }

  .advisory-lens-grid,
  .advisory-positioning-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .advisory-growth-disciplines {
    grid-template-columns: 0.82fr 1.18fr;
  }

  .advisory-growth-title,
  .advisory-growth-list {
    min-height: 680px;
  }

  .advisory-growth-list .expertise-link {
    font-size: clamp(26px, 2.45vw, 38px);
  }

}


/* =========================================================
   SMALL TABLET
========================================================= */

@media (max-width: 900px) {

  .advisory-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .advisory-hero-copy {
    min-height: 760px;
    border-right: 0;
    border-bottom: 1px solid var(--advisory-line);
  }

  .advisory-hero-media {
    min-height: 720px;
  }

  .advisory-hero-bottom {
    grid-template-columns: 1fr;
  }

  .advisory-strategic-intro,
  .advisory-positioning,
  .advisory-creative-intro,
  .advisory-business-intro,
  .advisory-growth-disciplines,
  .advisory-sustainability-intro,
  .advisory-growth-intro,
  .advisory-final {
    grid-template-columns: 1fr;
  }

  .advisory-positioning-grid,
  .advisory-creative-services,
  .advisory-sustainability-pillars {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .advisory-growth-title {
    min-height: 560px;
  }

  .advisory-growth-list {
    min-height: auto;
  }

  .advisory-growth-list .expertise-link {
    min-height: 68px;
    font-size: clamp(28px, 4.5vw, 38px);
  }

  .advisory-growth-system-head {
    grid-template-columns: 1fr;
  }

  .advisory-growth-system-grid {
    grid-template-columns: 1fr;
  }

  .advisory-growth-system-grid article {
    border-right: 0;
    border-bottom: 1px solid var(--advisory-line);
  }

  .advisory-growth-system-grid article:last-child {
    border-bottom: 0;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 640px) {

  :root {
    --advisory-pad: 14px;
    --advisory-gap: 10px;
  }

  .advisory-hero {
    padding-top: 70px;
  }

  .advisory-hero-copy {
    min-height: 640px;
    padding: 28px 22px 34px;
  }

  .advisory-hero-topline {
    flex-direction: column;
    gap: 8px;
  }

  .advisory-hero-title-wrap {
    padding: 58px 0 38px;
  }

  .advisory-hero h1 {
    font-size: clamp(62px, 19vw, 90px);
  }

  .advisory-hero-media {
    min-height: 580px;
  }

  .advisory-hero-media-copy {
    left: 24px;
    right: 24px;
    bottom: 30px;
  }

  .advisory-hero-media-copy h2 {
    font-size: 56px;
  }

  .advisory-section-head {
    display: block;
    padding: 70px 22px 42px;
  }

  .advisory-section-head h2 {
    margin: 22px 0 28px;
    font-size: 54px;
  }

  .advisory-strategic-intro {
    padding: 0 12px;
  }

  .advisory-strategic-statement,
  .advisory-strategic-copy {
    min-height: 560px;
    padding: 30px 24px;
  }

  .advisory-strategic-statement h3 {
    font-size: 48px;
  }

  .advisory-lens-grid {
    grid-template-columns: 1fr;
    padding: 10px 12px 90px;
  }

  .advisory-lens-card {
    min-height: 420px;
  }

  .advisory-positioning {
    padding: 70px 12px 90px;
  }

  .advisory-positioning-copy,
  .advisory-positioning-media {
    min-height: 560px;
  }

  .advisory-positioning-copy {
    padding: 30px 24px;
  }

  .advisory-positioning-copy h2 {
    font-size: 50px;
  }

  .advisory-positioning-index {
    padding: 28px 24px;
  }

  .advisory-positioning-grid {
    grid-template-columns: 1fr;
  }

  .advisory-positioning-card {
    min-height: 310px;
  }

  .advisory-creative-intro {
    padding: 0 12px 90px;
  }

  .advisory-creative-copy {
    min-height: 560px;
    padding: 30px 24px;
  }

  .advisory-creative-services {
    grid-template-columns: 1fr;
  }

  .advisory-creative-services article {
    min-height: 310px;
  }

  .advisory-business {
    padding: 70px 12px 90px;
  }

  .advisory-business-statement,
  .advisory-business-copy {
    min-height: 560px;
    padding: 30px 24px;
  }

  .advisory-business-statement h2 {
    font-size: 49px;
  }

  .advisory-growth-disciplines {
    gap: 10px;
  }

  .advisory-growth-title {
    min-height: 500px;
    padding: 28px 22px;
  }

  .advisory-growth-title h2 {
    left: 22px;
    right: 22px;
    bottom: 28px;
    font-size: 50px;
  }

  .advisory-growth-title .animated-pattern {
    top: 20%;
    transform: rotate(-9deg) scale(0.88);
  }

  .advisory-growth-title .animated-pattern span {
    width: 40px;
  }

  .advisory-growth-list {
    padding: 12px 18px;
  }

  .advisory-growth-list .expertise-link {
    min-height: 62px;
    padding: 14px 0;
    font-size: clamp(27px, 8vw, 34px);
  }

  .advisory-growth-list .expertise-text {
    grid-template-columns: 14px minmax(0, 1fr);
    gap: 12px;
  }

  .advisory-growth-list .expertise-icon {
    width: 12px;
    height: 12px;
  }

  .advisory-growth-list .expertise-arrows img {
    width: 8px;
    height: 8px;
  }

  .advisory-sustainability {
    padding: 70px 12px 90px;
  }

  .advisory-sustainability-copy,
  .advisory-sustainability-symbol {
    min-height: 540px;
  }

  .advisory-sustainability-copy {
    padding: 30px 24px;
  }

  .advisory-sustainability-copy h2 {
    font-size: 50px;
  }

  .advisory-sustainability-pillars {
    grid-template-columns: 1fr;
  }

  .advisory-sustainability-card {
    min-height: 330px;
  }

  .advisory-growth-intro {
    padding: 0 12px;
  }

  .advisory-growth-copy,
  .advisory-growth-number {
    min-height: 500px;
    padding: 30px 24px;
  }

  .advisory-growth-number strong {
    font-size: 150px;
  }

  .advisory-growth-system {
    margin: 10px 12px 90px;
  }

  .advisory-growth-system-head {
    padding: 30px 24px;
  }

  .advisory-growth-system-head h3 {
    font-size: 50px;
  }

  .advisory-growth-system-grid article {
    min-height: 320px;
    padding: 28px 24px;
  }

  .advisory-final {
    padding: 0 12px 80px;
  }

  .advisory-final-media,
  .advisory-final-copy {
    min-height: 560px;
  }

  .advisory-final-overlay,
  .advisory-final-copy {
    padding: 30px 24px;
  }

  .advisory-final-overlay h2,
  .advisory-final-copy h2 {
    font-size: 54px;
  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

  .advisory-page *,
  .advisory-page *::before,
  .advisory-page *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

}