:root { --northstar-ink: #102532; --northstar-deep: #07131d; --northstar-blue: #6ba8ff; --northstar-mist: #e8eef1; --northstar-nav-height: 84px; }
.northstar-demo { margin: 0; overflow-x: clip; background: var(--northstar-mist); color: var(--northstar-ink); font: 1rem/1.65 "Manrope", sans-serif; }
.northstar-demo [id] { scroll-margin-top: 6.5rem; }
.northstar-demo ::selection { background: #193e58; color: #fff; }
.northstar-demo a:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.northstar-demo h1,.northstar-demo h2,.northstar-demo h3,.northstar-demo p { text-wrap: pretty; }
.northstar-demo h1 em,.northstar-demo h2 em { font-family: Georgia, serif; font-weight: 400; }
.northstar-eyebrow { margin: 0; font-size: .67rem; font-weight: 700; line-height: 1.5; letter-spacing: .14em; }
.demo-notice { position: relative; z-index: 80; display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 3rem; padding: .25rem 4vw; background: #07131d; color: #d6e3eb; font-size: .7rem; letter-spacing: .04em; }
.demo-notice a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 4px; }
.northstar-nav { position: sticky; top: 0; z-index: 70; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; min-height: 5.25rem; padding: .7rem 4vw; border-bottom: 1px solid #6b829250; background: #e5edf1dc; backdrop-filter: blur(16px); }
.northstar-brand { display: inline-flex; align-items: center; gap: .55rem; color: inherit; font-size: 1.08rem; font-weight: 700; letter-spacing: .045em; text-decoration: none; }
.northstar-brand span { color: #416b89; font-size: 1.5rem; }
.northstar-route { display: flex; align-items: center; padding: .25rem; border: 1px solid #637d8e55; border-radius: 999px; background: #d9e5ebc9; box-shadow: 0 .5rem 2rem #142e3e12; }
.northstar-route a { position: relative; display: grid; min-width: 68px; min-height: 44px; padding: .55rem .8rem; place-items: center; border-radius: 999px; color: #405965; font-size: .72rem; text-decoration: none; }
.northstar-route a[aria-current="location"] { background: #17394f; color: #f4f8fb; }
.northstar-route a[aria-current="location"]::after { content: ""; position: absolute; bottom: .38rem; width: 3px; height: 3px; border-radius: 50%; background: #8fc0ff; }
.northstar-nav-cta { justify-self: end; display: inline-flex; min-height: 46px; padding: .65rem 1.1rem; align-items: center; border: 1px solid #516d7e; border-radius: 999px; color: inherit; font-size: .78rem; text-decoration: none; }

.northstar-world { position: relative; height: auto; background: #8fa9b9; }
.northstar-world__sticky { position: relative; height: calc(100svh - var(--northstar-nav-height)); min-height: 34rem; overflow: hidden; isolation: isolate; }
.northstar-landscape { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.055); }
.northstar-atmosphere { position: absolute; inset: -5%; z-index: -1; pointer-events: none; background: radial-gradient(ellipse at 12% 86%,#dcebf188,transparent 53%); }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .northstar-landscape { transform: perspective(1400px) translate3d(calc(var(--northstar-pointer-x,0) * -14px),calc(var(--northstar-pointer-y,0) * -10px),0) rotateX(calc(var(--northstar-pointer-y,0) * .8deg)) rotateY(calc(var(--northstar-pointer-x,0) * -1.2deg)) scale(1.055); }
  .northstar-atmosphere { transform: translate3d(calc(var(--northstar-pointer-x,0) * 22px),calc(var(--northstar-pointer-y,0) * 14px),0); }
}
.northstar-world__sticky::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#e8f0f5ed 0%,#e8f0f5b0 31%,#e8f0f51a 62%),linear-gradient(0deg,#0a2038d9 0%,transparent 29%); }
.northstar-world__sticky::after { content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none; background: radial-gradient(circle at 75% 55%,transparent 0 17%,#d8e9f115 34%,transparent 54%); mix-blend-mode: screen; }
.northstar-terrain,.northstar-terrain-fallback { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; pointer-events: none; }
.northstar-terrain { opacity: .7; mask-image: linear-gradient(90deg,transparent 12%,#000 42%); }
.northstar-terrain--summit { opacity: .92; z-index: -1; }
.northstar-terrain-fallback { fill: none; stroke: #a7d2ff73; stroke-width: 1.4; vector-effect: non-scaling-stroke; }
.is-terrain-ready .northstar-terrain-fallback { display: none; }
.northstar-intro { position: relative; z-index: 4; width: min(68rem,86vw); padding: clamp(4rem,9vh,7rem) 4vw 5rem; }
.northstar-intro h1 { max-width: none; white-space: nowrap; margin: 2rem 0 1.65rem; font: 400 clamp(4rem,6.5vw,7rem)/1.02 Georgia,serif; letter-spacing: -.055em; }
.northstar-intro > p:not(.northstar-eyebrow) { max-width: 32rem; margin: 0; color: #274253; font-size: 1.05rem; }
.northstar-button { display: inline-flex; justify-content: space-between; align-items: center; gap: 2rem; min-height: 54px; margin-top: 1.7rem; padding: .8rem 1.25rem; border-radius: 999px; background: #112f43; color: #f2f8fb; font-size: .84rem; text-decoration: none; box-shadow: 0 1rem 2.5rem #06182529; }
.northstar-coordinate { position: absolute; z-index: 4; right: 4vw; bottom: 2rem; display: grid; grid-template-columns: auto minmax(4rem,12vw) auto; align-items: center; gap: .8rem; color: #eef7ff; font: .62rem/1.4 ui-monospace,monospace; letter-spacing: .12em; }
.northstar-coordinate i { height: 1px; background: currentColor; }

.northstar-friction { height: 180svh; background: #07131d; color: #e7edf0; }
.northstar-friction__sticky { position: sticky; top: var(--northstar-nav-height); display: grid; min-height: calc(100svh - var(--northstar-nav-height)); padding: 8vh 4vw; align-content: center; }
.northstar-friction h2 { margin: 2rem 0; font: 400 clamp(3rem,7.2vw,7.2rem)/1.02 Georgia,serif; letter-spacing: -.055em; }
.northstar-friction h2 span { display: block; width: max-content; max-width: 100%; }
.northstar-friction h2 span:nth-child(2) { margin-left: 13vw; color: #8ba2af; }
.northstar-friction h2 span:nth-child(3) { margin-left: 27vw; color: #85b8ff; font-style: italic; }
.northstar-friction__sticky > p:last-child { justify-self: end; max-width: 34rem; margin-top: 2rem; color: #9eb1bc; font-size: 1.02rem; }

.northstar-reframe { min-height: 110svh; padding: 10rem 4vw; display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 8vw; background: #dce6ea; }
.northstar-reframe__map { position: relative; display: grid; min-height: 31rem; padding: 3rem; place-content: center; overflow: hidden; border-radius: 50% 44% 48% 43%; background: radial-gradient(circle at 55% 42%,#e9f4fa 0 14%,#8eaaba 15% 15.5%,#d4e1e7 16% 29%,#758f9f 30% 30.5%,#c2d2da 31% 47%,#668192 48% 48.5%,#afc3cd 49%); box-shadow: inset 0 0 0 1px #314d5d33,0 2rem 6rem #31536a1e; }
.northstar-reframe__map::before,.northstar-reframe__map::after { content: ""; position: absolute; width: 1px; height: 140%; background: #49687a56; transform: rotate(36deg); }
.northstar-reframe__map::after { transform: rotate(-58deg); }
.northstar-reframe__map span,.northstar-reframe__map strong { position: relative; z-index: 2; min-width: 10rem; padding: .75rem 1rem; border-radius: 999px; background: #ecf3f6e8; color: #264657; text-align: center; font-size: .65rem; letter-spacing: .12em; }
.northstar-reframe__map strong { background: #16394f; color: #f5f9fc; }
.northstar-reframe__map i { position: relative; z-index: 1; width: 1px; height: 3.5rem; justify-self: center; background: #35576a; }
.northstar-reframe__copy h2,.northstar-approach h2,.northstar-arrival h2 { margin: 1.8rem 0; font: 400 clamp(2.8rem,4.8vw,5.4rem)/1.08 Georgia,serif; letter-spacing: -.05em; }
.northstar-reframe__copy > p:last-child { max-width: 35rem; color: #4c6370; }

.northstar-expertise { --pan-progress: 0; height: 280svh; background: #132936; color: #eaf2f5; }
.northstar-expertise__sticky { position: sticky; top: var(--northstar-nav-height); height: calc(100svh - var(--northstar-nav-height)); min-height: 38rem; padding: 5vh 4vw; overflow: hidden; }
.northstar-expertise__heading { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-bottom: 5vh; }
.northstar-expertise__heading h2 { margin: 0; font: 400 clamp(2.7rem,4.6vw,5rem)/1 Georgia,serif; letter-spacing: -.05em; }
.northstar-expertise__viewport { width: 100%; overflow: visible; }
.northstar-expertise__rail { display: grid; grid-template-columns: 34vw 43vw 36vw 45vw 34vw; gap: 1rem; width: max-content; transform: translate3d(calc(var(--pan-progress) * -57%),0,0); will-change: transform; }
.northstar-terrain-card { position: relative; display: flex; min-height: min(54vh,31rem); padding: 2rem; flex-direction: column; justify-content: end; overflow: hidden; border: 1px solid #bad1dc40; background: #183647; }
.northstar-terrain-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 60% 20%,#87b4d655 0 8%,transparent 9%),repeating-radial-gradient(ellipse at 64% 30%,transparent 0 28px,#b8d9ea18 29px 30px); transform: scale(1.35); transition: transform .24s cubic-bezier(.2,.8,.2,1); }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) { .northstar-terrain-card:hover::before { transform: scale(1.2) translate3d(1%,-2%,0); } }
.northstar-terrain-card > * { position: relative; z-index: 1; }
.northstar-terrain-card > span { margin-bottom: auto; color: #9fc0d0; font-size: .65rem; letter-spacing: .12em; }
.northstar-terrain-card h3 { max-width: 12ch; margin: 2rem 0 1rem; font: 400 clamp(2rem,3.2vw,3.5rem)/1.05 Georgia,serif; letter-spacing: -.04em; }
.northstar-terrain-card p { max-width: 31rem; margin: 0; color: #b9cbd3; }
.northstar-terrain-card b { margin-top: 1.5rem; color: #82b9ff; font-size: .7rem; letter-spacing: .1em; }
.northstar-terrain-card--lead,.northstar-terrain-card--end { background: #d9e6eb; color: #173243; }
.northstar-terrain-card--lead p,.northstar-terrain-card--end p { color: #516a77; }
.northstar-terrain-card--lead > span,.northstar-terrain-card--end > span { color: #3f6275; }
.northstar-terrain-card--brand { background: #214458; }
.northstar-terrain-card--digital { background: #0b1c27; }

.northstar-approach { padding: clamp(4rem,7vw,6rem) 4vw; display: grid; grid-template-columns: .9fr 1.1fr; align-items: start; gap: 9vw; background: #e8eef1; }
.northstar-path { margin: 0; padding: 0; list-style: none; }
.northstar-path li { display: grid; grid-template-columns: 6rem 1fr; gap: 1.5rem; padding: 2rem 0 3rem; border-top: 1px solid #6077855e; }
.northstar-path li > span { color: #537080; font-size: .66rem; font-weight: 700; letter-spacing: .12em; }
.northstar-path h3 { margin: 0 0 .6rem; font-size: clamp(1.35rem,2vw,2rem); font-weight: 550; letter-spacing: -.04em; }
.northstar-path p { max-width: 35rem; margin: 0; color: #546c78; }

.northstar-summit { --pan-progress: 0; height: 240svh; background: #07131d; color: #eff5f8; }
.northstar-summit__sticky { position: sticky; top: var(--northstar-nav-height); height: calc(100svh - var(--northstar-nav-height)); min-height: 34rem; overflow: hidden; isolation: isolate; }
.northstar-summit__image { position: absolute; inset: 0; z-index: -3; background: url('/assets/work/northstar-landscape-v2.webp') center/cover no-repeat; transform: scale(calc(1.18 - var(--pan-progress) * .13)) translate3d(0,calc(3% - var(--pan-progress) * 5%),0); }
.northstar-summit__veil { position: absolute; inset: 0; z-index: 0; background: linear-gradient(90deg,#06121dea 0%,#06121d8a 42%,transparent 72%),linear-gradient(0deg,#06121de8,transparent 43%); }
.northstar-summit__copy { position: absolute; left: 4vw; bottom: 10vh; z-index: 2; max-width: 56rem; }
.northstar-summit__copy > span { color: #acd0e2; font-size: .67rem; letter-spacing: .14em; }
.northstar-summit h2 { margin: 1.5rem 0; font: 400 clamp(3rem,5.7vw,6rem)/1.03 Georgia,serif; letter-spacing: -.055em; }
.northstar-summit__copy p { max-width: 36rem; color: #c2d1d8; }
.northstar-summit__route { position: absolute; inset: 8% 3% 5% 42%; z-index: 1; width: 55%; height: 75%; overflow: visible; fill: none; stroke: #8cbfff; stroke-width: 2; }
.northstar-summit__sticky:has(.northstar-terrain:not([hidden])) .northstar-summit__route { visibility: hidden; }
.northstar-summit__route path { stroke-dasharray: 1200; stroke-dashoffset: calc(1200 - (var(--pan-progress) * 1200)); }

.northstar-arrival { min-height: 100svh; display: grid; padding: 10rem 4vw; place-items: center; text-align: center; background: radial-gradient(circle at 50% 30%,#fff 0,#e7eef2 46%,#d1dfe6 100%); }
.northstar-arrival > div { max-width: 70rem; }
.northstar-arrival p:not(.northstar-eyebrow) { max-width: 43rem; margin: 2rem auto 0; color: #506874; }
.northstar-footer { display: flex; padding: 3rem 4vw; align-items: center; justify-content: space-between; gap: 2rem; border-top: 1px solid #546c7b55; background: #e8eef1; }
.northstar-footer p { margin: 0; color: #516875; font-size: .8rem; }
.northstar-footer a { display: inline-flex; min-height: 44px; align-items: center; font-size: .85rem; text-underline-offset: 4px; }

.demo-motion-ready .demo-reveal { opacity: .04; transform: translate3d(0,28px,0); transition: opacity .75s,transform .9s cubic-bezier(.16,.76,.2,1); }
.demo-motion-ready .demo-reveal.is-visible { opacity: 1; transform: none; }
html:not(.demo-enhanced) .northstar-world__sticky,
html:not(.demo-enhanced) .northstar-friction__sticky,
html:not(.demo-enhanced) .northstar-expertise__sticky,
html:not(.demo-enhanced) .northstar-summit__sticky { top: 0; }

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) and (min-width: 861px) {
    .northstar-friction h2 span { animation: northstar-line linear both; animation-timeline: view(); animation-range: entry 15% cover 48%; }
    .northstar-friction h2 span:nth-child(2) { animation-range: entry 24% cover 56%; }
    .northstar-friction h2 span:nth-child(3) { animation-range: entry 33% cover 64%; }
    @keyframes northstar-line { from { opacity: .06; transform: translate3d(-3rem,0,0); } to { opacity: 1; transform: none; } }
  }
}

@media (max-width: 860px) {
  .northstar-demo [id] { scroll-margin-top: 8.5rem; }
  .demo-notice { flex-wrap: wrap; min-height: 2.6rem; padding: .25rem 1rem; gap: .1rem; font-size: .57rem; }
  .northstar-nav { grid-template-columns: 1fr auto; gap: .35rem 1rem; min-height: 6.9rem; padding: .55rem 1rem .6rem; }
  .northstar-nav > .northstar-brand { grid-column: 1; grid-row: 1; }
  .northstar-nav-cta { grid-column: 2; grid-row: 1; }
  .northstar-brand { font-size: .92rem; }
  .northstar-nav-cta { min-height: 44px; padding: .5rem .8rem; font-size: .7rem; }
  .northstar-route { grid-column: 1 / -1; grid-row: 2; justify-self: stretch; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; }
  .northstar-route::-webkit-scrollbar { display: none; }
  .northstar-route a { min-width: 64px; flex: 1 0 auto; }
  .northstar-world { height: auto; }
  .northstar-world__sticky { min-height: 31rem; }
  .northstar-landscape { object-position: 59% center; }
  .northstar-world__sticky::before { background: linear-gradient(180deg,#e7f0f4e8 0%,#e7f0f48e 48%,transparent 71%),linear-gradient(0deg,#071a2be8,transparent 35%); }
  .northstar-intro { width: auto; padding: 3rem 1rem 7rem; }
  .northstar-intro h1 { margin: 1.35rem 0; font-size: clamp(2.2rem,11.4vw,4.5rem); }
  .northstar-intro > p:not(.northstar-eyebrow) { max-width: 30rem; font-size: .94rem; }
  .northstar-button { min-height: 52px; margin-top: 1.25rem; }
  .northstar-coordinate { right: 1rem; bottom: 1.25rem; left: 1rem; grid-template-columns: auto 1fr auto; font-size: .55rem; }
  .northstar-friction { height: 145svh; }
  .northstar-friction__sticky { padding: 3.5rem 1rem; }
  .northstar-friction h2 { font-size: clamp(2.7rem,13vw,5rem); }
  .northstar-friction h2 span:nth-child(2) { margin-left: 4vw; }
  .northstar-friction h2 span:nth-child(3) { margin-left: 11vw; }
  .northstar-friction__sticky > p:last-child { justify-self: start; max-width: 29rem; font-size: .94rem; }
  .northstar-reframe { min-height: 0; padding: 6rem 1rem; grid-template-columns: 1fr; gap: 3rem; }
  .northstar-reframe__map { min-height: min(88vw,27rem); padding: 2rem; }
  .northstar-reframe__copy h2,.northstar-approach h2,.northstar-arrival h2 { font-size: clamp(2.45rem,10vw,4.5rem); }
  .northstar-expertise { height: auto; padding: 5rem 0; }
  .northstar-expertise__sticky { position: relative; top: auto; height: auto; min-height: 0; padding: 0; overflow: visible; }
  .northstar-expertise__heading { padding: 0 1rem; align-items: start; flex-direction: column; gap: 1rem; }
  .northstar-expertise__heading h2 { font-size: clamp(2.7rem,11vw,4.5rem); }
  .northstar-expertise__viewport { overflow-x: auto; padding: .5rem 1rem 1.5rem; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .northstar-expertise__viewport::-webkit-scrollbar { display: none; }
  .northstar-expertise__rail { grid-template-columns: repeat(5,min(82vw,25rem)); gap: .75rem; transform: none; }
  .northstar-terrain-card { min-height: 28rem; padding: 1.5rem; scroll-snap-align: center; }
  .northstar-approach { min-height: 0; padding: 6rem 1rem; grid-template-columns: 1fr; gap: 3rem; }
  .northstar-path li { grid-template-columns: 4.5rem 1fr; gap: 1rem; }
  .northstar-summit { height: 165svh; }
  .northstar-summit__sticky { min-height: 31rem; }
  .northstar-summit__image { background-position: 65% center; }
  .northstar-summit__veil { background: linear-gradient(0deg,#06121df2 0%,#06121dba 48%,transparent 80%); clip-path: none; }
  .northstar-summit__copy { right: 1rem; left: 1rem; bottom: 8vh; }
  .northstar-summit h2 { font-size: clamp(2.15rem,9.7vw,4rem); }
  .northstar-summit__route { inset: 15% 5% 35% 18%; width: 77%; height: 45%; }
  .northstar-arrival { min-height: 90svh; padding: 7rem 1rem; }
  .northstar-footer { padding: 2.5rem 1rem; align-items: start; flex-direction: column; gap: 1.3rem; }
}

@media (max-width: 370px) {
  .northstar-intro h1 { font-size: 2.25rem; }
  .northstar-intro { padding-top: 2.2rem; }
  .northstar-eyebrow { font-size: .58rem; }
  .northstar-route a { min-width: 54px; padding-inline: .4rem; font-size: .65rem; }
}

@media (max-height: 600px) and (min-width: 861px) {
  .northstar-world__sticky,.northstar-summit__sticky { min-height: 27rem; }
  .northstar-intro { padding-top: 2rem; }
  .northstar-intro h1 { font-size: clamp(3rem,5.5vw,4.3rem); margin-block: 1rem; }
  .northstar-friction__sticky { min-height: 0; padding-block: 2rem; }
}

@media (max-height: 540px) and (max-width: 860px) {
  .northstar-nav { position: relative; }
  .northstar-world,.northstar-friction,.northstar-summit { height: auto; }
  .northstar-world__sticky,.northstar-friction__sticky,.northstar-summit__sticky { position: relative; top: 0; height: auto; min-height: 32rem; }
  .northstar-intro { max-width: 40rem; padding-top: 3rem; }
  .northstar-intro h1 { font-size: 3.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .demo-motion-ready .demo-reveal,.demo-reveal { opacity: 1; transform: none; transition: none; }
  .northstar-world,.northstar-friction,.northstar-summit { height: auto; }
  .northstar-world__sticky,.northstar-friction__sticky,.northstar-summit__sticky { position: relative; top: 0; min-height: 100svh; }
  .northstar-landscape,.northstar-summit__image,.northstar-expertise__rail { transform: none; }
  .northstar-summit__veil { clip-path: none; }
  .northstar-summit__route path { stroke-dashoffset: 0; }
}

/* A tangible advisory artifact, rather than decorative method circles. */
.northstar-deliverable { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.3rem; margin:1.25rem 0 0; min-height:9rem; border-block:1px solid #9bb9ca42; font-size:.65rem; letter-spacing:.08em; color:#b5cbd8; }
.northstar-deliverable i { font-style:normal; color:#72a8df; }
.northstar-deliverable strong { padding:.4rem .7rem; background:#aac8df; color:#132b3c; font-size:.65rem; }
.northstar-deliverable--statement { align-items:start; }
.northstar-deliverable small { font:600 .6rem/1.5 "Manrope",sans-serif; letter-spacing:.08em; }
.northstar-deliverable q { margin-top:.7rem; color:#e6f1f7; font:italic 400 clamp(1.2rem,2vw,1.7rem)/1.25 Georgia,serif; letter-spacing:-.025em; quotes:none; }
.northstar-deliverable--route { flex-direction:row; flex-wrap:wrap; gap:.5rem; }
.northstar-deliverable + h3 { margin-top:1.5rem; }
.northstar-terrain-card:has(.northstar-deliverable)::before { opacity:.35; }
.northstar-reframe { min-height:0; padding-block:clamp(4rem,7vw,7rem); gap:6vw; }
.northstar-decision { padding:clamp(1.4rem,3vw,3rem); background:#f1f6f8; border:1px solid #a8bcc7; box-shadow:0 2rem 4rem #25435614; transform:rotate(-1deg); }
.northstar-decision__heading { display:flex; justify-content:space-between; gap:1rem; padding-bottom:1.25rem; border-bottom:1px solid #b4c6d0; font:.63rem/1.5 "Manrope",sans-serif; letter-spacing:.08em; color:#466374; }
.northstar-decision h3 { margin:1.75rem 0 1rem; font:400 clamp(1.75rem,2.7vw,2.8rem)/1.12 Georgia,serif; letter-spacing:-.04em; }
.northstar-decision > p { color:#4c6370; font-size:.95rem; line-height:1.75; }
.northstar-routes { margin:1.75rem 0; }
.northstar-routes > div { display:grid; grid-template-columns:.9fr 1.3fr; gap:1rem; padding:1rem 0; border-top:1px solid #bdcdd5; }
.northstar-routes dt { font-size:.87rem; font-weight:650; }
.northstar-routes dd { margin:0; font-size:.83rem; color:#506a79; line-height:1.6; }
.northstar-routes .northstar-route-chosen { margin-inline:-1rem; padding:1rem; background:#dbeaf3; border-color:#829eae; }
.northstar-route-chosen dt span { display:block; margin-top:.5rem; color:#2c6691; font-size:1.2rem; }
.northstar-decision__result { padding-top:1rem; border-top:1px solid #b4c6d0; }
.northstar-decision__result > span { font-size:.65rem; font-weight:700; letter-spacing:.08em; color:#466374; }
.northstar-decision__result p { margin:.5rem 0 0; font-size:.9rem; line-height:1.7; }
@media (max-width:860px) {
 .northstar-decision { transform:none; }
 .northstar-reframe__copy { grid-row:1; }
 .northstar-routes > div { grid-template-columns:1fr; gap:.4rem; }
 .northstar-route-chosen dt span { display:inline; margin-left:.5rem; }
}
@media (prefers-reduced-motion:reduce) { .northstar-decision { transform:none; } }
