:root {
  --navy: #0a1827;
  --ink: #10273b;
  --muted: #486171;
  --surface: #edf5f6;
  --line: #d8e7e9;
  --blue: #087b70;
  --blue-dark: #075e57;
  --mint: #76efd5;
  --terminal: #0c2334;
  --gold: #eccb91;
  --radius: 15px;
}
body { background: #f8fbfb; }
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  background: url("/assets/starwell-gold-mark.png") right 7vw center / clamp(240px,43vw,590px) auto no-repeat;
  opacity: .11;
}
.icon { display: inline-block; width: 1.22em; height: 1.22em; flex: 0 0 auto; vertical-align: -.2em; }
.site-head { min-height: 73px; }
.site-head nav a, .site-foot nav a { color: #cce0e7; }
.partner-link { display: inline-flex; align-items: center; gap: 8px; background: #183244; border-color: #426777; }
#header, #footer { background: #091724; }
.site-foot nav { flex-wrap: wrap; }
.button { border-radius: 7px; }
.primary { background: var(--blue); }
.secondary { background: #edf7f5; border-color: #b9d9d4; color: #0f534f; }
.secondary:hover { background: #dff0ed; border-color: #72b1a7; }
.light { color: #0e2b3a; background: #e7f8f3; }
.light:hover { background: #d4f5eb; }
.hero, .login-photo {
  background-image: linear-gradient(95deg,#091827fa 3%,#0a1929de 52%,#09223377 100%),
    var(--site-image,url("/assets/taipei-boardroom.webp"));
  background-position: center,center 54%;
  background-size: cover;
}
.hero-inner {
  display: grid;
  grid-template-columns: minmax(0,1.32fr) minmax(265px,.78fr);
  align-items: center;
  gap: clamp(25px,5vw,72px);
  padding-block: clamp(70px,10vw,142px) clamp(62px,9vw,119px);
}
.hero h1 { font-size: clamp(2.65rem,5.3vw,4.75rem); letter-spacing: -.055em; }
.hero-copy { color: #cce0e8; max-width: 29em; }
.hero .primary, .result-next .primary { background: var(--mint); color: #082e2b; }
.hero .primary:hover, .result-next .primary:hover { background: #b0fae9; }
.hero-meta { padding-top: 17px; margin-top: 42px; border-color: #b0d8dd55; gap: 12px 20px; font-size: .91rem; }
.hero-meta span { display: flex; gap: 6px; align-items: center; }
.hero-meta .icon { color: var(--mint); }
.hero-terminal {
  margin: 0;
  border: 1px solid #86c3d26e;
  background: linear-gradient(150deg,#122e44f5,#0a1e2eeb);
  border-radius: 13px;
  box-shadow: 0 26px 65px #05111f75;
  padding: clamp(14px,2.5vw,30px);
  overflow: hidden;
}
.hero-terminal figcaption { display: flex; align-items: center; gap: 7px; font-weight: 740; color: #e1f3f7; }
.hero-terminal figcaption > span { margin-left: auto; font-size: .79rem; color: #a6c4cb; }
.hero-terminal .icon { color: var(--mint); }
.hero-terminal > svg:not(.icon) {
  width: 100%;
  margin-block: 22px 15px;
  background-image: linear-gradient(#85ced620 1px,transparent 1px),linear-gradient(90deg,#85ced620 1px,transparent 1px);
  background-size: 100% 25%, 12.5% 100%;
  overflow: visible;
}
.terminal-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.terminal-metrics div { display: grid; border-top: 1px solid #507384; padding-top: 10px; }
.terminal-metrics span { color: #a3bdc7; font-size: .84rem; }
.terminal-metrics b { color: #e9faf8; }
.spotlights { grid-template-columns: 1.21fr 1fr; gap: 13px; }
.spot { background: #eff7f6; border-color: #d4e8e5; }
.spot.feature { background: radial-gradient(ellipse at 75% 15%,#1e4955,#0b2534 70%); border-color: #285364; }
.spot.feature span { color: #a9eee1; }
.spot .icon { width: 1.2em; height: 1.2em; margin: 0; }
.spot span, .spot strong { display: flex; align-items: center; gap: 8px; }
.spot .spot-chart { margin-bottom: 13px; }
.advice-band { background: #e8f3f3; }
.advice-grid img { max-height: 320px; min-height: 240px; }
.advice-grid .button { margin-top: 22px; }
.page-head { background: linear-gradient(110deg,#e7f2f2,#f5faf9); border-color: #d5e8e6; }
.page-head .wrap { padding-block: clamp(32px,5vw,62px); }
.page-head h1 { font-size: clamp(2.2rem,4vw,3.45rem); }
.section { padding-block: clamp(40px,6vw,79px); }
.assessment { min-height: 65vh; gap: clamp(22px,6vw,85px); }
.assessment-side { border-color: var(--blue); }
.assessment-form { background: #fff; border-color: #d6e6e7; box-shadow: 0 23px 60px #173d4812; }
.option { border-color: #c4d9da; }
.option:hover { background: #eaf8f4; border-color: #73aea6; }
.option:has(input:checked) { background: #e1f7ee; }
.option-key { background: #e8f2f0; color: #15514e; }
.step-rail .active { background: #dff3ee; }
.form-actions .muted { text-align: right; }
.result-hero, .partner-top { background: radial-gradient(ellipse at 88% 0%,#18546a,#0a1c2c 65%); }
.result-top { grid-template-columns: minmax(0,1fr) minmax(210px,320px); gap: clamp(18px,5vw,60px); }
.result-top h1 { font-size: clamp(2.1rem,4.8vw,3.75rem); }
.result-next { display: flex; flex-wrap: wrap; gap: 13px 20px; align-items: center; margin-top: 22px; padding-top: 18px; border-top: 1px solid #b8d5d750; }
.health-gauge { position: relative; width: min(100%,292px); margin-inline: auto; color: var(--mint); }
.health-gauge svg { width: 100%; }
.health-gauge.steady { color: #6acfff; }
.health-gauge.focus { color: #f7c77a; }
.health-gauge.empty { color: #9eb5c2; }
.gauge-ticks { stroke: currentColor; stroke-opacity: .62; stroke-width: 1; }
.gauge-track, .gauge-fill { fill: none; stroke-width: 12; stroke-linecap: round; }
.gauge-track { stroke: #2c4b5e; }
.gauge-fill {
  stroke: currentColor;
  stroke-dasharray: var(--score) 100;
  animation: gauge-in .8s cubic-bezier(.17,.8,.28,1) both;
}
.empty .gauge-fill { visibility: hidden; }
@keyframes gauge-in { from { stroke-dasharray: 0 100; } }
.gauge-copy { position: absolute; inset: 29% 0 auto; display: grid; text-align: center; color: #e3f5f5; }
.gauge-copy strong { font-size: clamp(2.9rem,6.2vw,4.85rem); line-height: 1.07; color: currentColor; font-variant-numeric: tabular-nums; }
.gauge-copy span { font-size: .92rem; }
.result-dim { background: #eaf4f5; }
.dimension-grid { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(16px,3vw,38px); align-items: start; margin-top: 20px; }
.radar-panel { background: #f9fdfd; border: 1px solid #d8e8e9; border-radius: var(--radius); padding: 12px; }
.radar-panel p { text-align: center; margin: 2px 0 8px; }
.radar-shape { stroke: #008d82; stroke-width: 2.6; }
polygon.radar-shape { fill: #22b6a0; fill-opacity: .21; }
.radar circle { fill: #0c9f92; }
.dimension { --band: #a76a20; border-bottom: 1px solid #c9dfe2; padding: 0 5px; }
.dimension.strong { --band: #0c9079; }
.dimension.steady { --band: #287ea2; }
.dimension summary { display: grid; align-items: center; grid-template-columns: minmax(85px,1fr) minmax(25px,1.4fr) minmax(56px,.65fr) 19px; gap: 8px; min-height: 49px; list-style: none; }
.dimension summary::-webkit-details-marker { display: none; }
.dimension summary:hover { color: var(--blue-dark); }
.dimension summary strong { justify-self: end; color: #305669; font-size: .89rem; }
.dimension[open] summary .icon { transform: rotate(90deg); }
.dimension-meter { height: 7px; border-radius: 8px; background: #d8e8e9; overflow: hidden; }
.dimension-meter i { display: block; width: var(--meter); height: 100%; background: var(--band); border-radius: inherit; animation: bar-in .6s ease-out both; }
@keyframes bar-in { from { width: 0; } }
.dimension > p { color: var(--muted); font-size: .96rem; padding-block: 2px 10px; }
.dimension > .button { min-height: 39px; font-size: .9rem; margin-bottom: 12px; }
.priority { border-color: #d6e6e6; }
.priority .sequence { color: #137f75; font-size: clamp(1.65rem,4vw,3.25rem); }
.priority p { max-width: 57ch; }
.next-step { position: relative; }
.next-step h2 { max-width: 22em; }
.filters { margin-bottom: 27px; }
.filter { background: #edf6f6; color: #114c48; border-color: #c9dfdc; border-radius: 20px; }
.filter:hover:not([aria-pressed=true]) { background: #d8f0eb; }
#tool-index-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.tool-group, .tool-group + .tool-group { background: #fff; border: 1px solid #d6e7e7; border-radius: 14px; margin: 0; padding: clamp(15px,2.5vw,27px); }
.tool-group h2 { display: flex; align-items: center; gap: 9px; font-size: 1.33rem; }
.tool-group h2 > span { display: grid; place-items: center; width: 35px; height: 35px; background: #e2f4ef; color: #086e65; border-radius: 8px; }
.tool-group h2 .icon { width: 21px; height: 21px; }
.tool-item { grid-template-columns: 1fr 20px; gap: 4px 10px; min-height: 0; padding: 12px 2px; }
.tool-item p { grid-row: 2; font-size: .91rem; line-height: 1.5; }
.tool-item .icon { grid-column: 2; grid-row: 1 / 3; color: var(--blue-dark); }
.tool-item:hover { background: #edf7f5; }
.breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.calc-wrap { padding-block: 16px 65px; }
.calc-grid { grid-template-columns: minmax(245px,.66fr) minmax(0,1.34fr); gap: 12px 20px; }
.calc-controls, .calc-result { border-color: #d2e5e5; }
.calc-controls { background: #f6fbfa; }
.calc-block { display: grid; gap: 11px; border-top: 1px solid #c9e2dd; padding: 11px 0 6px; }
.calc-block legend { padding-right: 8px; font-weight: 800; color: #0d5c55; font-size: .95rem; }
.calc-metric { position: relative; overflow: hidden; background: linear-gradient(112deg,#102a3a,#174d56); }
.calc-metric span { color: #d4eced; }
.calc-metric strong { color: #b0f3e4; padding-right: 18px; }
.calc-metric > .icon { position: absolute; top: 19px; right: 19px; color: #a0f0e0; width: 30px; height: 30px; opacity: .64; }
.calc-result { background: #fff; }
.calc-result .stats { margin-top: 0; }
.desk-chart { color: #d8efef; background: var(--terminal); border-radius: 11px; padding: clamp(12px,2vw,21px); }
.desk-chart .line-chart { background: #0c2334; }
.desk-chart .line-chart text { fill: #c0d9df; }
.desk-chart .line-chart line[stroke="#dae3f2"] { stroke: #345063; }
.desk-chart .chart-reading { color: #c7dde1; }
.desk-chart .bar-track { background: #294455; }
.desk-chart .data-bars { padding: 8px 0; }
.desk-chart .allocation-chart circle[stroke="#e2e9f5"] { stroke: #345063; }
.desk-chart input[type=range] { accent-color: #6be1cc; }
.tool-insight { display: grid; grid-template-columns: 29px 1fr; align-items: start; gap: 9px; padding: 17px 0 6px; }
.tool-insight > .icon { color: var(--blue-dark); width: 23px; height: 23px; }
.tool-insight span { color: var(--blue-dark); font-size: .89rem; font-weight: 800; }
.tool-insight h2 { font-size: clamp(1.17rem,2.3vw,1.6rem); margin-block: 3px 8px; }
.tool-insight p { color: var(--muted); font-size: .99rem; }
.calc-assumptions { border-top: 1px solid var(--line); padding-top: 10px; }
.calc-assumptions p { color: var(--muted); font-size: .94rem; padding-block: 8px 2px; }
.notes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.notes article { grid-template-columns: 42px 1fr; align-items: start; background: #fff; border: 1px solid #d7e7e7; border-radius: 12px; padding: clamp(16px,3vw,30px); }
.notes article:first-child { grid-column: 1 / -1; background: #112e3f; color: white; }
.notes article:first-child p { color: #cbe1e5; }
.notes article:first-child .sequence { color: var(--mint); }
.notes h2 { font-size: clamp(1.25rem,2.9vw,2.1rem); }
.login-photo { background-size: cover; }
.studio-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 16px; }
.studio-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.studio-grid h2 { font-size: 1.4rem; margin-bottom: 12px; }
.studio-list { display: grid; margin-bottom: 22px; background: #fff; border: 1px solid #d6e7e7; border-radius: 10px; }
.studio-list a { display: flex; justify-content: space-between; gap: 10px; padding: 11px 14px; border-bottom: 1px solid #e1eded; font-weight: 680; text-decoration: none; }
.studio-list a:last-child { border: 0; }
.studio-list a:hover { background: #e6f6f2; }
.edit-tag { color: var(--blue-dark); font-size: .91rem; }
.question-editor { display: grid; gap: 10px; align-items: start; background: #fff; border: 1px solid #d6e7e7; border-radius: 10px; padding: 14px; }
.admin-demo { margin-top: 14px; }
.cms-mode { padding-bottom: 83px; }
.cms-bar .button { min-height: 40px; margin-top: 0; padding-block: 7px; }
.cms-exit { align-self: center; padding: 5px; font-size: .9rem; }
.cms-editable:hover { outline: 2px dashed #19a996; outline-offset: 3px; cursor: crosshair; }
.cms-multiline { white-space: pre-line; }
@media (max-width: 760px) {
  .hero-inner { grid-template-columns: 1fr; padding-block: 47px 37px; }
  .hero h1 { font-size: clamp(2.15rem,8.6vw,3.45rem); }
  .hero-copy { margin-block: 16px 20px; }
  .hero-terminal { width: min(100%,440px); }
  .hero-terminal > svg:not(.icon) { max-height: 100px; margin-block: 13px 10px; }
  .hero-meta { margin-top: 24px; }
  .spotlights, .calc-grid, #tool-index-list, .dimension-grid, .notes, .studio-grid { grid-template-columns: minmax(0,1fr); }
  .notes article:first-child { grid-column: auto; }
  .result-top { grid-template-columns: minmax(0,1fr) minmax(130px,.64fr); gap: 12px; }
  .result-top p:not(.eyebrow) { font-size: .97rem; }
  .health-gauge { width: min(100%,210px); }
  .gauge-copy span { font-size: .73rem; }
  .gauge-copy strong { font-size: clamp(2rem,8vw,3.35rem); }
  .result-next { gap: 8px; }
  .result-next .button { min-height: 44px; }
}
@media (max-width: 470px) {
  body::before { background-position: center 61%; }
  .result-top { grid-template-columns: minmax(0,1fr); }
  .result-next { margin-top: 12px; padding-top: 12px; }
  .health-gauge { margin-block: 8px 0; }
  .cms-bar .button { padding-inline: 7px; font-size: .84rem; }
}
@media (prefers-reduced-motion: reduce) {
  .gauge-fill, .dimension-meter i { animation: none; }
}

@media (prefers-reduced-motion: no-preference) {
  body:not(.cms-mode) .hero-inner > div { animation: hero-arrival .62s cubic-bezier(.2,.78,.29,1) both; }
  body:not(.cms-mode) .hero-terminal { animation: hero-arrival .73s .12s cubic-bezier(.2,.78,.29,1) both; }
  body:not(.cms-mode) .hero-trace { stroke-dasharray: 1; animation: trace-in 1.25s .23s ease-out both; }
  body:not(.cms-mode) .trace-halo { transform-box: fill-box; transform-origin: center; animation: signal-pulse 3.6s 1.3s ease-out infinite; }
  .button .icon, .tool-item > .icon, .spot strong .icon { transition: transform .22s ease; }
  .button:hover .icon, .tool-item:hover > .icon, .spot:hover strong .icon { transform: translateX(3px); }
  .reveal-in { animation: section-in .52s cubic-bezier(.18,.8,.32,1) both; }
  .spot:nth-child(2).reveal-in, .priority:nth-of-type(2).reveal-in { animation-delay: .06s; }
  .spot:nth-child(3).reveal-in, .priority:nth-of-type(3).reveal-in { animation-delay: .12s; }
  .question-in fieldset { animation: question-in .26s ease-out both; }
  .option { transition: background .17s,border-color .17s,translate .17s; }
  .option:hover { translate: 2px; }
  .gauge-copy strong { animation: section-in .5s .12s both; }
  .radar-shape { transform-box: view-box; transform-origin: 50% 50%; animation: radar-in .62s ease-out both; }
  .desk-chart .chart-trace { stroke-dasharray: 1; animation: trace-in .47s ease-out both; }
  .desk-chart .bar-track b { transform-origin: left; animation: graph-bar-in .32s ease-out both; }
  .desk-chart .allocation-chart svg { animation: radar-in .46s ease-out both; }
  .dimension summary .icon { transition: transform .21s ease; }
  .dimension[open] > p { animation: section-in .24s ease-out both; }
}
@keyframes hero-arrival { from { opacity: .2; transform: translateY(15px); } to { opacity: 1; transform: none; } }
@keyframes trace-in { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes signal-pulse {
  0% { opacity: .68; transform: scale(.55); }
  56%,100% { opacity: 0; transform: scale(2.3); }
}
@keyframes section-in { from { opacity: .62; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes question-in { from { opacity: .68; transform: translateX(8px); } to { opacity: 1; transform: none; } }
@keyframes graph-bar-in { from { transform: scaleX(.12); } to { transform: scaleX(1); } }
@keyframes radar-in { from { transform: scale(.88); opacity: .35; } to { transform: none; opacity: 1; } }

/* Advisor access and contact */
.brand span { letter-spacing: .045em; }
#advisor-access { justify-self: end; }
.partner-link.signed-in { border-color: #54aa9a; }
.partner-link small { padding: 2px 7px; border-radius: 4px; color: #a6f7e5; background: #275247; font-size: .72rem; font-weight: 720; white-space: nowrap; }
.advisor-section { background: #e8f3f3; border-top: 1px solid #d5e8e6; }
.advisor-directory { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,270px),1fr)); gap: 12px; margin-bottom: 25px; }
.advisor-profile { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 13px; background: white; border: 1px solid #d0e6e3; border-radius: 12px; padding: 19px; }
.advisor-avatar { display: grid; place-items: center; width: 49px; height: 49px; border-radius: 50%; background: #dff3ee; color: #075e57; font-weight: 800; }
.advisor-profile .eyebrow { margin: 0 0 4px; font-size: .73rem; }
.advisor-profile h3 { margin: 0 0 8px; overflow-wrap: anywhere; }
.advisor-profile p:not(.eyebrow) { color: var(--muted); font-size: .94rem; overflow-wrap: anywhere; }
.advisor-profile .button { margin-top: 14px; min-height: 41px; }
.contact-card { display: grid; grid-template-columns: minmax(175px,.8fr) minmax(0,1.2fr); gap: clamp(20px,4vw,48px); align-items: start; background: #fff; border: 1px solid #cce5e1; border-radius: 16px; padding: clamp(20px,4vw,46px); scroll-margin-top: 20px; }
.contact-intro > .icon { width: 27px; height: 27px; margin-bottom: 9px; color: var(--blue-dark); }
.contact-intro h2 { margin-bottom: 8px; }
.contact-intro p:last-child { color: var(--muted); }
.advisor-contact { display: grid; gap: 11px; }
.contact-inputs { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: 9px; }
.contact-status { color: #086454; font-weight: 710; }
.advisor-contact > .button { justify-self: start; }
.login-panel .button:not(.full) { margin-bottom: 4px; }

/* Direct editing and reordering */
.cms-bar {
  position: fixed;
  inset: auto 0 12px;
  z-index: 35;
  width: min(970px,calc(100% - 24px));
  margin-inline: auto;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 9px;
  align-items: start;
  padding: 10px;
  max-height: 58dvh;
  overflow: auto;
  background: #0a2437;
  color: #effbfa;
  box-shadow: 0 10px 35px #07162150;
  border: 1px solid #5b8c98;
  border-radius: 11px;
}
.cms-command { min-width: 0; }
.cms-command > p { color: #e4f8f4; font-size: .95rem; font-weight: 720; overflow-wrap: anywhere; margin: 6px 0; }
.cms-command [data-cms-actions] { display: flex; flex-wrap: wrap; gap: 6px; }
.cms-command [data-cms-actions]:empty { display: none; }
.cms-command button { min-height: 34px; font-size: .88rem; }
.cms-command [data-cms-field] { background: #f5fbfa; color: var(--ink); border-radius: 8px; margin-top: 8px; padding: 10px; }
.cms-command [data-cms-field] label { font-size: .94rem; font-weight: 730; }
.cms-command [data-cms-field] input, .cms-command [data-cms-field] textarea { margin-top: 4px; }
.cms-command [data-cms-field] .row { margin-top: 8px; gap: 7px; }
.cms-link-choices { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.cms-link-choices button { background: #e1f4ee; border: 1px solid #bfded5; border-radius: 5px; color: #075e57; cursor: grab; }
.cms-mode [data-cms-item] { position: relative; }
.cms-drag-handle { position: absolute; top: 7px; right: 7px; z-index: 6; display: grid; place-items: center; width: 32px; height: 32px; color: #d5f5ec; background: #0e5260; border: 1px solid #71c9bc; border-radius: 5px; cursor: grab; }
.cms-drag-handle:active { cursor: grabbing; }
.cms-selected { outline: 2px solid #19a996; outline-offset: 4px; }
.cms-drop-before { box-shadow: inset 0 4px #19a996 !important; }
.cms-drop-after { box-shadow: inset 0 -4px #19a996 !important; }
@media (max-width: 760px) {
  #advisor-access { grid-row: 1; grid-column: 2; }
  .contact-card { grid-template-columns: 1fr; }
}
@media (max-width: 470px) {
  .contact-inputs { grid-template-columns: 1fr; }
  .cms-bar { padding: 8px; gap: 5px; }
  .cms-exit { font-size: .76rem; }
  .partner-link.signed-in { gap: 5px; }
  .partner-link small { font-size: .66rem; }
}
.hero-meta .hero-assessment-link { display: inline-flex; align-items: center; gap: .4rem; color: #c1ffed; text-decoration: none; }
.hero-assessment-link:hover { text-decoration: underline; }
.home-orientation { color: #edfdf9; background: #102e3b; padding-block: 25px; }
.home-entry:has([data-cms-reorder="sections"] > .hero:first-child) .home-orientation { display: none; }
.home-orientation .wrap { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 13px 25px; }
.home-orientation .eyebrow { color: #a4efdd; margin-bottom: 4px; }
.home-orientation h2 { color: white; font-size: clamp(1.6rem,3.6vw,2.6rem); }
.home-orientation h2 + p { margin: 6px 0 0; color: #ccdfdf; }
.home-entry:not(:has([data-cms-reorder="sections"] > .hero:first-child)) .hero { margin-top: 20px; }
.hero-plan { display: flex; align-items: center; gap: 12px; padding-block: 15px; border-top: 1px solid #94dac43a; }
.hero-plan:first-of-type { margin-top: 17px; }
.hero-plan:last-child { padding-bottom: 0; }
.hero-plan-step { color: #92e6cd; font: 650 .78rem ui-monospace,monospace; padding: 8px; background: #84e4c619; border-radius: 7px; }
.hero-plan p { color: #b8d7db; margin: 0 0 3px; font-size: .79rem; }
.hero-plan strong { color: #f2fffc; }
.calc-metric .calc-mode { display: table; padding: 2px 9px; border-radius: 4px; margin-bottom: 8px; background: #c5f6e62b; color: #e7fff7; font-size: .74rem; }
.advisor-contact .muted a, .contact-status a { margin-left: .25em; text-underline-offset: 2px; }
.registration-link { margin-top: 16px; }
.pending-advisors { margin-block: 16px 32px; }
.pending-advisors li { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 9px 24px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.pending-advisors ul { padding: 0; list-style: none; }
.pending-advisors p { margin: 3px 0; overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .hero-plan { padding-block: 10px; }
  .advanced-result-top .advanced-summary { width: 100%; }
}
.assessment-paths { grid-column: 2; display: grid; gap: 10px; margin-top: -30px; }
.assessment-paths p, .result-tools p { color: var(--muted); margin: 0; }
.result-tools { padding: 21px; margin-top: 27px; border-left: 3px solid #267c70; background: #edf7f4; }
.result-tools .row { margin-top: 10px; }
.priority .answer-evidence { padding: 8px 12px; border-radius: 6px; color: #15584d; background: #eaf6f2; }
.advanced-page, .advanced-result-hero { color: #f0faf7; background: radial-gradient(ellipse at 4% 10%, #1d5c58 0%, transparent 52%), #0a2330; }
.advanced-shell, .advanced-result-top { display: grid; grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); align-items: center; gap: clamp(22px,6vw,92px); padding-block: clamp(34px,7vw,93px); }
.advanced-intro { padding-block: 20px; }
.advanced-intro .eyebrow, .advanced-result-hero .eyebrow { color: #92ecd6; }
.advanced-intro h1, .advanced-result-hero h1 { color: #fff; font-size: clamp(2.4rem,5.25vw,4.5rem); line-height: 1.08; letter-spacing: -.04em; }
.advanced-result-hero h1[tabindex="-1"]:focus { outline: none; }
.advanced-intro p:not(.eyebrow), .advanced-result-hero p { max-width: 33ch; color: #c5dfdb; }
.advanced-intro small { color: #a8d9d0; }
.advanced-phases { display: grid; gap: 9px; padding: 0; margin: 26px 0 20px; list-style: none; }
.advanced-phases li { display: flex; gap: 12px; align-items: center; width: fit-content; color: #a8d9d0; }
.advanced-phases span { font: 700 .78rem ui-monospace,monospace; padding: 4px 6px; border: 1px solid #5f8c88; border-radius: 4px; }
.advanced-phases li[aria-current] { color: #e3fff6; font-weight: 800; }
.advanced-phases li[aria-current] span { background: #a1f0db; border-color: #a1f0db; color: #102e30; }
.advanced-form { color: var(--ink); min-width: 0; margin: 0; }
.advanced-form .options.many-options { grid-template-columns: repeat(2,minmax(0,1fr)); }
.advanced-form .many-options .suboptions { grid-column: 1/-1; }
.advanced-result-top { grid-template-columns: minmax(0,1.35fr) minmax(0,.65fr); }
.advanced-result-hero .row { margin-top: 25px; }
.advanced-result-hero .primary { background: #9ef3dc; color: #112f30; }
.advanced-result-hero .primary:hover { background: #c2ffec; }
.advanced-summary { padding: clamp(21px,4vw,42px); border: 1px solid #9ce7d45e; border-radius: 16px; background: #103c43; }
.advanced-summary h2 { color: #fff; margin-block: 0 10px; }
.advanced-summary p:last-child { margin: 0; }
.topic-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,270px),1fr)); gap: 15px; margin-top: 22px; }
.topic-grid article { display: grid; justify-items: start; gap: 10px; align-content: start; padding: clamp(18px,3vw,29px); background: #fff; border: 1px solid #d5e7e3; border-radius: 14px; }
.topic-grid article p { margin: 0; }
.topic-grid h3 { margin: 0; }
.advanced-footer { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 25px; }
.share-panel { margin-top: 20px; padding: clamp(15px,3vw,25px); border: 1px solid #c6e2dc; background: #f4faf8; border-radius: 14px; }
.share-panel form { display: grid; gap: 13px; }
.share-panel-head h3 { margin: 0 0 15px; }
.share-panel .form-error:empty { display: none; }
.share-panel button[type="submit"] { justify-self: start; }
.selected-recipient { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; padding: 10px 13px; background: white; border-radius: 8px; border: 1px solid #d3e6e2; }
.selected-recipient .button { min-height: 38px; }
.cms-launch { position: fixed; z-index: 55; right: max(13px,env(safe-area-inset-right)); bottom: max(13px,env(safe-area-inset-bottom)); display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 9px 14px; border-radius: 26px; color: #fff; background: #143b43; border: 1px solid #82d9c2; box-shadow: 0 5px 20px #102e3652; font-size: .86rem; font-weight: 800; text-decoration: none; }
.cms-launch:hover { background: #205a57; }
.cms-launch svg { width: 17px; height: 17px; }
@media (prefers-reduced-motion: no-preference) {
  .advanced-intro, .advanced-result-top > * { animation: hero-arrival .42s both; }
  .advanced-result-top > :nth-child(2) { animation-delay: .12s; }
}
@media (max-width: 760px) {
  .assessment-paths { grid-column: 1; margin-top: -5px; }
  .advanced-shell, .advanced-result-top { grid-template-columns: minmax(0,1fr); gap: 14px; }
  .advanced-shell { padding-top: 24px; }
  .advanced-intro { padding: 0; }
  .advanced-intro .eyebrow { font-size: .68rem; margin-bottom: 5px; }
  .advanced-intro h1 br { display: none; }
  .advanced-intro p:not(.eyebrow) { margin-bottom: 0; font-size: .9rem; line-height: 1.42; }
  .advanced-phases { display: flex; flex-wrap: wrap; margin-block: 10px 2px; gap: 7px 14px; font-size: .82rem; }
  .advanced-phases li { gap: 5px; }
  .advanced-phases span { padding: 2px 4px; }
}
@media (max-width: 420px) {
  .advanced-intro h1 { font-size: 2rem; }
  .advanced-form .many-options .option { gap: 7px; padding-inline: 7px; }
}
