:root {
  --navy: #061a33;
  --navy-2: #0a2e57;
  --navy-3: #114a82;
  --blue: #006dff;
  --blue-text: #005ecf;
  --blue-2: #16a4ff;
  --blue-soft: #eaf5ff;
  --orange: #ff6800;
  --orange-2: #ff922e;
  --orange-action: #c94800;
  --orange-text: #9f3600;
  --orange-soft: #fff1e6;
  --cream: #fffaf5;
  --ink: #10243d;
  --muted: #5f748b;
  --paper: #f5f9fd;
  --white: #ffffff;
  --line: #d7e4ef;
  --line-dark: #aebfd0;
  --shadow-sm: 0 8px 24px rgba(6, 26, 51, .08);
  --shadow: 0 22px 60px rgba(6, 26, 51, .15);
  --shadow-blue: 0 20px 55px rgba(0, 109, 255, .22);
  --radius-sm: 12px;
  --radius: 20px;
  --radius-lg: 30px;
  --wrap: min(1200px, calc(100% - 44px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
[hidden] { display: none !important; }
a { color: inherit; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
.wrap { width: var(--wrap); margin: 0 auto; }
.narrow { max-width: 820px; margin-inline: auto; }
.centered { text-align: center; }
.center { display: flex; justify-content: center; margin-top: 32px; }
.align-start { align-items: start !important; }
.two-col { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(42px, 7vw, 92px); align-items: center; }
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.skip-link {
  position: fixed;
  z-index: 9999;
  left: 12px;
  top: 12px;
  transform: translateY(-180%);
  padding: 10px 15px;
  border-radius: 10px;
  background: #fff;
  color: var(--navy);
  font-weight: 800;
  box-shadow: var(--shadow);
}
.skip-link:focus { transform: none; }

/* Signal and navigation */
.signal-bar { background: var(--blue); color: #fff; font-size: 13px; font-weight: 700; }
.signal-inner { display: flex; min-height: 38px; align-items: center; gap: 18px; }
.signal-inner > a { margin-left: auto; text-decoration: none; font-weight: 850; }
.signal-inner > a:hover { text-decoration: underline; }
.signal-badge { display: inline-flex; align-items: center; gap: 8px; padding-right: 18px; border-right: 1px solid rgba(255,255,255,.35); letter-spacing: .11em; font-size: 11px; }
.signal-badge i { width: 9px; height: 9px; border-radius: 50%; background: var(--orange-2); box-shadow: 0 0 0 5px rgba(255,146,46,.24); }
.site-header { position: sticky; z-index: 100; top: 0; background: rgba(255,255,255,.97); border-bottom: 1px solid rgba(215,228,239,.95); backdrop-filter: blur(15px); transition: box-shadow .2s ease; }
.site-header.is-scrolled { box-shadow: 0 10px 28px rgba(6,26,51,.09); }
.nav-row { display: flex; min-height: 82px; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 11px; color: var(--navy); text-decoration: none; flex: 0 0 auto; }
.brand-mark { display: grid; place-items: center; width: 45px; height: 45px; border-radius: 14px; background: linear-gradient(145deg,var(--navy),var(--navy-3)); box-shadow: 0 9px 24px rgba(6,26,51,.18); }
.brand-mark img { width: 34px; height: 34px; }
.brand-words { display: grid; grid-template-columns: auto auto; align-items: baseline; column-gap: 3px; line-height: 1; letter-spacing: -.045em; }
.brand-words strong, .brand-words em { font-size: 24px; font-style: normal; font-weight: 950; }
.brand-words strong { color: var(--blue); }
.brand-words em { color: var(--orange); }
.brand-words small { grid-column: 1 / -1; margin-top: 7px; color: #60738a; font-size: 7.5px; font-weight: 900; letter-spacing: .17em; }
.main-nav { display: flex; align-items: center; gap: 22px; }
.main-nav > a { position: relative; color: #233c57; text-decoration: none; font-size: 14px; font-weight: 800; }
.main-nav > a:not(.button)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 2px; background: var(--orange); transition: right .2s; }
.main-nav > a:not(.button):hover::after { right: 0; }
.watch-link span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; margin-left: 3px; border-radius: 999px; background: var(--blue-soft); color: var(--blue-text); font-size: 11px; }
.menu-button { display: none; width: 45px; height: 45px; padding: 9px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.menu-button span:not(.sr-only) { display: block; width: 24px; height: 2px; margin: 5px auto; background: var(--navy); transition: transform .2s, opacity .2s; }
.menu-button[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-button[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.menu-button[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Buttons and type */
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 11px 22px; border: 2px solid var(--orange-action); border-radius: 999px; background: var(--orange-action); color: #fff !important; box-shadow: 0 12px 28px rgba(201,72,0,.24); text-decoration: none; font-weight: 900; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); background: #b63f00; box-shadow: 0 16px 34px rgba(201,72,0,.32); }
.button-small { min-height: 38px; padding: 7px 15px; font-size: 13px; }
.button-outline { border-color: #91a9bf; background: transparent; color: var(--navy) !important; box-shadow: none; }
.button-outline:hover { border-color: var(--blue); background: var(--blue-soft); }
.button-ghost-light { border-color: rgba(255,255,255,.55); background: transparent; color: #fff !important; box-shadow: none; }
.button-ghost-light:hover { border-color: #fff; background: rgba(255,255,255,.10); }
.button-white { border-color: #fff; background: #fff; color: var(--navy) !important; box-shadow: 0 14px 34px rgba(6,26,51,.2); }
.button-white:hover { background: #fff5ee; }
.text-link { color: #005ecf; text-decoration: none; font-weight: 900; }
.text-link:hover { text-decoration: underline; }
.light-link { color: #fff; }
.eyebrow { margin-bottom: 10px; color: #005ecf; font-size: 12px; font-weight: 950; letter-spacing: .15em; text-transform: uppercase; }
.eyebrow.light { color: #7ec6ff; }
.eyebrow.light-blue { color: #67c8ff; }
.orange-text { color: #b33d00; }
h1, h2, h3 { margin: 0 0 18px; color: var(--navy); font-weight: 920; line-height: 1.05; letter-spacing: -.045em; }
h1 { font-size: clamp(44px, 6vw, 78px); }
h2 { font-size: clamp(34px, 4.1vw, 54px); }
h3 { font-size: 24px; }
p { margin: 0 0 20px; }
.lead, .big-copy { font-size: clamp(20px, 2.1vw, 27px); line-height: 1.48; }
.section { padding: clamp(76px, 9vw, 126px) 0; }
.section-head { margin-bottom: 44px; }
.section-head.split { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr); align-items: end; gap: 52px; }
.section-head.centered { max-width: 830px; margin-inline: auto; text-align: center; }
.section-head h2 { max-width: 790px; }
.section-head p { max-width: 650px; color: var(--muted); }
.section-intro { color: var(--muted); font-size: 19px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; align-items: center; margin-top: 30px; }
.centered-actions { justify-content: center; }

/* Home hero */
.home-hero { position: relative; overflow: hidden; min-height: 660px; padding: clamp(80px, 9vw, 125px) 0; color: #fff; background: linear-gradient(119deg,var(--navy) 0 58%,#0b3768 58% 77%,#194779 77% 100%); }
.home-hero::after { content: ""; position: absolute; inset: auto -12% -58% 48%; width: 680px; height: 680px; border: 1px solid rgba(65,178,255,.17); border-radius: 50%; }
.hero-orbit { position: absolute; border: 1px solid rgba(89,190,255,.16); border-radius: 50%; }
.orbit-one { width: 430px; height: 430px; right: 4%; top: 9%; }
.orbit-two { width: 230px; height: 230px; right: 11%; top: 24%; }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(410px, .82fr); gap: clamp(48px, 7vw, 94px); align-items: center; }
.hero-copy { max-width: 660px; }
.hero-copy h1 { color: #fff; font-size: clamp(50px, 6vw, 79px); }
.hero-copy h1 em { display: block; color: var(--orange); font-style: normal; }
.hero-copy > p { max-width: 650px; color: #dceaff; }
.hero-copy .hero-lead { color: #fff; font-size: clamp(21px, 2vw, 27px); font-weight: 700; line-height: 1.42; }
.hero-quote { display: grid; grid-template-columns: auto 1fr; gap: 0 14px; max-width: 560px; margin-top: 34px; padding: 17px 20px; border: 1px solid rgba(255,255,255,.23); border-left: 4px solid var(--orange); background: rgba(255,255,255,.05); }
.hero-quote > span { color: var(--orange-2); font-size: 36px; line-height: 1; }
.hero-quote p { margin: 0; color: #e9f3ff; font-size: 14px; line-height: 1.5; }
.hero-quote a { grid-column: 2; color: #fff; font-size: 13px; font-weight: 900; text-decoration: none; }
.action-console { position: relative; overflow: hidden; padding: 23px; border-radius: 23px; background: #fff; color: var(--ink); box-shadow: 0 35px 80px rgba(0,0,0,.28); transform: rotate(-.8deg); }
.action-console::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: linear-gradient(90deg,var(--blue) 0 72%,var(--orange) 72%); }
.console-header { display: flex; align-items: center; justify-content: space-between; padding-bottom: 14px; border-bottom: 1px solid var(--line); color: #33506d; font-size: 10px; letter-spacing: .12em; }
.console-header div { display: flex; align-items: center; gap: 7px; color: var(--blue); }
.console-header i { width: 8px; height: 8px; border-radius: 50%; background: var(--orange); }
.console-title { padding: 24px 3px 18px; }
.console-title small { color: var(--orange-action); font-size: 10px; font-weight: 950; letter-spacing: .15em; }
.console-title h2 { margin-top: 6px; font-size: 29px; }
.console-actions { display: grid; gap: 9px; }
.console-actions > a { display: grid; grid-template-columns: 43px 1fr auto; gap: 12px; align-items: center; min-height: 68px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 13px; text-decoration: none; transition: transform .18s, border-color .18s, box-shadow .18s; }
.console-actions > a:hover { transform: translateX(4px); border-color: #91c4fa; box-shadow: var(--shadow-sm); }
.action-icon { display: grid; place-items: center; width: 41px; height: 41px; border-radius: 11px; color: #fff; font-size: 12px; font-weight: 950; }
.action-icon.blue { background: var(--blue); }
.action-icon.orange { background: var(--orange); color: var(--navy); }
.console-actions strong { display: block; color: var(--navy); font-size: 15px; }
.console-actions small { display: block; color: var(--muted); font-size: 11px; line-height: 1.35; }
.console-actions b { color: var(--blue); }
.console-meter { display: grid; grid-template-columns: repeat(5,1fr); gap: 5px; margin-top: 20px; }
.console-meter div { display: grid; gap: 5px; color: #8295a9; font-size: 7px; font-weight: 900; text-align: center; }
.console-meter i { height: 3px; border-radius: 99px; background: #d8e2ec; }
.console-meter .active { color: var(--orange-action); }
.console-meter .active i { background: var(--orange); }
.number-strip { position: relative; z-index: 3; background: #fff; border-bottom: 1px solid var(--line); }
.number-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.number-grid > div { min-height: 104px; display: flex; align-items: center; gap: 13px; padding: 20px 28px; border-right: 1px solid var(--line); }
.number-grid > div:first-child { border-left: 1px solid var(--line); }
.number-grid strong { color: var(--blue); font-size: 30px; line-height: 1; }
.number-grid > div:nth-child(2) strong { color: var(--orange-action); }
.number-grid span { color: #4e647b; font-size: 12px; font-weight: 800; line-height: 1.25; }

/* Services */
.service-intro { background: linear-gradient(180deg,#fff 0,var(--paper) 100%); }
.service-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.service-card { position: relative; overflow: hidden; min-height: 270px; padding: 27px; border-radius: 19px; box-shadow: var(--shadow-sm); }
.service-card::after { content: ""; position: absolute; width: 155px; height: 155px; right: -55px; bottom: -72px; border: 20px solid rgba(255,255,255,.12); border-radius: 50%; }
.service-card > span { display: inline-block; margin-bottom: 38px; font-size: 11px; font-weight: 950; letter-spacing: .12em; }
.service-card h3 { margin-bottom: 12px; color: inherit; font-size: 25px; }
.service-card p { font-size: 15px; }
.service-card a { position: absolute; z-index: 1; bottom: 25px; color: inherit; text-decoration: none; font-size: 13px; font-weight: 950; }
.service-blue { background: linear-gradient(145deg,#006dff,#035ac9); color: #fff; }
.service-blue h3 { color: #fff; }
.service-orange { background: linear-gradient(145deg,#ff7a12,#ff5f00); color: var(--navy); }
.service-orange h3 { color: var(--navy); }

/* Updates */
.updates-section { background: linear-gradient(145deg,var(--navy),#0b3769); color: #fff; }
.updates-section h2, .updates-section h3 { color: #fff; }
.updates-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.update-card { display: grid; grid-template-columns: 74px 1fr; gap: 18px; padding: 22px; border: 1px solid rgba(173,211,244,.24); border-radius: 14px; background: rgba(255,255,255,.055); }
.update-date { display: grid; place-items: center; align-content: center; min-height: 70px; border-radius: 10px; background: var(--orange); color: var(--navy); text-align: center; }
.update-date strong { font-size: 25px; line-height: 1; }
.update-date span { margin-top: 5px; font-size: 9px; font-weight: 950; }
.update-label { color: #77c8ff; font-size: 10px; font-weight: 950; letter-spacing: .13em; }
.update-card h3 { margin: 6px 0 7px; font-size: 21px; line-height: 1.15; }
.update-card h3 a { text-decoration: none; }
.update-card p { color: #cee1f2; font-size: 14px; line-height: 1.45; }
.update-link { color: #fff; text-decoration: none; font-size: 12px; font-weight: 900; }
.timeline-list { display: grid; gap: 18px; }
.timeline-item { display: grid; grid-template-columns: 92px 1fr; gap: 30px; padding: 31px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.timeline-item time { display: grid; place-items: center; align-content: center; min-height: 92px; border-radius: 16px; background: var(--orange); color: var(--navy); }
.timeline-item time strong { font-size: 34px; line-height: 1; }
.timeline-item time span { font-size: 11px; font-weight: 950; }
.timeline-item time small { font-size: 10px; }
.timeline-item h2 { margin: 7px 0 10px; font-size: 31px; }
.timeline-item h2 a { text-decoration: none; }
.timeline-item p { color: var(--muted); }

/* Radar */
.radar-section { background: var(--paper); }
.radar-tools { display: grid; grid-template-columns: minmax(260px,1.3fr) minmax(210px,.75fr) minmax(210px,.75fr) auto; gap: 10px; align-items: center; margin-bottom: 25px; }
.sticky-tools { position: sticky; z-index: 20; top: 100px; padding: 13px; border: 1px solid var(--line); border-radius: 16px; background: rgba(245,249,253,.96); box-shadow: var(--shadow-sm); backdrop-filter: blur(12px); }
.search-box input, .radar-tools select, .ask-form input { width: 100%; min-height: 50px; padding: 10px 15px; border: 1px solid #a8bdcf; border-radius: 10px; background: #fff; color: var(--ink); }
.search-box input:focus, .radar-tools select:focus, .ask-form input:focus, input:focus, select:focus, textarea:focus { outline: 3px solid rgba(0,109,255,.18); border-color: var(--blue); }
.result-count { padding: 0 8px; color: var(--muted); font-size: 12px; white-space: nowrap; }
.result-count b { color: var(--blue); font-size: 16px; }
.project-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 17px; }
.project-card { display: flex; min-height: 330px; flex-direction: column; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow-sm); transition: transform .2s, box-shadow .2s, border-color .2s; }
.project-card:hover { transform: translateY(-4px); border-color: #a2cdf7; box-shadow: 0 20px 45px rgba(6,26,51,.12); }
.card-topline { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.stage-pill { display: inline-flex; align-items: center; min-height: 24px; padding: 4px 8px; border-radius: 999px; background: var(--blue-soft); color: #0055bc; font-size: 9px; font-weight: 950; letter-spacing: .07em; text-transform: uppercase; }
.stage-4, .stage-5 { background: var(--orange-soft); color: #a73b00; }
.watch-button { display: inline-flex; align-items: center; gap: 3px; border: 1px solid #adc0d1; border-radius: 999px; background: #fff; color: var(--navy); cursor: pointer; }
.watch-button.compact { min-height: 27px; padding: 3px 8px; font-size: 10px; }
.watch-button[aria-pressed="true"] { border-color: var(--orange-action); background: var(--orange-soft); color: #9f3600; }
.card-category { margin: 20px 0 7px; color: #005ecf; font-size: 9px; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.project-card h3 { margin-bottom: 10px; font-size: 22px; line-height: 1.12; }
.project-card h3 a { text-decoration: none; }
.project-card > p { color: var(--muted); font-size: 14px; line-height: 1.48; }
.card-footer { display: flex; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line); }
.card-footer span { max-width: 62%; color: #73869a; font-size: 10px; }
.card-footer a { color: #005ecf; font-size: 11px; font-weight: 950; text-decoration: none; white-space: nowrap; }
.project-grid:not(.show-all) .project-card:nth-child(n+13) { display: none; }
.no-results, .no-answer, .watchlist-empty { padding: 60px 24px; border: 2px dashed #b8ccdc; border-radius: 20px; text-align: center; background: #fff; }
.no-results > span, .no-answer > span, .watchlist-empty > span { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 18px; border-radius: 50%; background: var(--blue-soft); color: var(--blue-text); font-size: 30px; font-weight: 950; }
.no-results h3, .no-answer h2, .watchlist-empty h2 { font-size: 32px; }

/* Membership band and hope */
.membership-band { position: relative; overflow: hidden; padding: 80px 0; background: linear-gradient(111deg,var(--navy) 0 51%,var(--blue) 51% 100%); color: #fff; }
.membership-band::after { content: ""; position: absolute; left: 46%; top: -45%; width: 250px; height: 190%; background: var(--blue); transform: rotate(25deg); }
.membership-band-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; }
.membership-band h2 { color: #fff; }
.membership-band p { color: #d6e7f8; }
.tier-ladder { display: grid; gap: 9px; }
.tier-ladder article { display: grid; grid-template-columns: 105px 1fr; gap: 13px; padding: 12px 16px; border: 1px solid rgba(255,255,255,.25); border-radius: 8px; background: rgba(6,26,51,.18); }
.tier-ladder article.active { background: var(--orange); color: var(--navy); border-color: var(--orange); }
.tier-ladder span { font-size: 9px; font-weight: 950; letter-spacing: .1em; }
.tier-ladder strong { font-size: 13px; }
.compact-band .membership-band-grid { grid-template-columns: 1fr auto; }
.hope-section { background: #fff; }
.hope-grid { display: grid; grid-template-columns: 250px 1fr; gap: 80px; align-items: center; }
.hope-number { position: relative; display: grid; place-items: center; width: 210px; height: 210px; border: 25px solid var(--blue-soft); border-radius: 50%; color: var(--blue-text); font-size: 64px; font-weight: 950; }
.hope-number span { position: absolute; right: -10px; top: 17px; padding: 6px 9px; border-radius: 8px; background: var(--orange); color: var(--navy); font-size: 17px; }
.hope-number small { position: absolute; left: -10px; bottom: 13px; padding: 5px 8px; border-radius: 7px; background: var(--navy); color: #fff; font-size: 12px; }

/* General page heroes */
.page-hero, .project-hero { position: relative; overflow: hidden; padding: clamp(78px,9vw,126px) 0; background: linear-gradient(125deg,var(--navy),#0a376a); color: #fff; }
.page-hero::after, .project-hero::after { content: ""; position: absolute; right: -80px; top: -90px; width: 520px; height: 520px; border: 1px solid rgba(84,187,255,.18); border-radius: 50%; box-shadow: 0 0 0 80px rgba(0,109,255,.035),0 0 0 170px rgba(255,104,0,.025); }
.page-hero-grid, .project-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); gap: 80px; align-items: center; }
.page-hero h1, .project-hero h1 { color: #fff; }
.page-hero p, .project-hero p { max-width: 760px; color: #dceaff; font-size: 21px; }
.radar-orbit, .contact-mark, .about-symbol, .escape-number, .pulse-visual, .watch-visual, .membership-orbit, .route-visual, .help-visual, .join-promise, .source-visual, .medical-split { position: relative; display: grid; place-items: center; min-height: 280px; color: #fff; }
.radar-orbit::before, .membership-orbit::before, .watch-visual::before { content: ""; position: absolute; width: 220px; height: 220px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; box-shadow: 0 0 0 38px rgba(0,109,255,.11),0 0 0 76px rgba(255,104,0,.055); }
.radar-orbit span { z-index: 1; color: var(--orange); font-size: 65px; font-weight: 950; }
.radar-orbit i { z-index: 1; margin-top: -70px; font-style: normal; font-weight: 950; letter-spacing: .14em; }
.radar-orbit b { position: absolute; z-index: 1; bottom: 25px; color: #74caff; font-size: 12px; }
.pulse-visual i { position: absolute; width: 200px; height: 200px; border: 1px solid rgba(87,194,255,.3); border-radius: 50%; animation: pulse 3s infinite; }
.pulse-visual i:nth-child(2) { animation-delay: 1s; }
.pulse-visual i:nth-child(3) { animation-delay: 2s; }
.pulse-visual span { z-index: 2; display: grid; place-items: center; width: 100px; height: 100px; border-radius: 50%; background: var(--orange); color: var(--navy); font-size: 25px; font-weight: 950; }
@keyframes pulse { 0% { transform: scale(.5); opacity: .8; } 100% { transform: scale(1.5); opacity: 0; } }
.watch-visual span, .contact-mark { z-index: 2; display: grid; place-items: center; width: 130px; height: 130px; border-radius: 34px; background: var(--orange); color: var(--navy); font-size: 70px; font-weight: 950; transform: rotate(-7deg); }
.membership-orbit span { z-index: 2; display: grid; place-items: center; width: 115px; height: 115px; border-radius: 50%; background: var(--orange); color: var(--navy); font-weight: 950; }
.membership-orbit i, .membership-orbit b, .membership-orbit em { position: absolute; z-index: 2; font-style: normal; font-size: 11px; font-weight: 950; letter-spacing: .1em; }
.membership-orbit i { left: 10%; top: 18%; }.membership-orbit b { right: 3%; top: 34%; }.membership-orbit em { left: 20%; bottom: 11%; color: #7bcbff; }
.route-visual, .help-visual, .join-promise, .source-visual { align-content: center; gap: 10px; }
.route-visual span, .route-visual i, .route-visual b, .route-visual em, .help-visual i, .help-visual b, .help-visual em, .join-promise span, .join-promise i, .join-promise b, .join-promise em, .source-visual span, .source-visual i, .source-visual b, .source-visual em { min-width: 205px; padding: 10px 15px; border: 1px solid rgba(255,255,255,.28); border-radius: 8px; background: rgba(255,255,255,.08); font-style: normal; font-weight: 900; text-align: center; }
.route-visual b, .help-visual b, .join-promise b, .source-visual b { background: var(--blue); }
.route-visual em, .help-visual em, .join-promise em, .source-visual em { background: var(--orange); color: var(--navy); }
.help-visual > span { position: absolute; left: 10px; top: 20px; color: var(--orange); font-size: 100px; font-weight: 950; opacity: .35; }
.about-symbol { align-content: center; font-size: 43px; font-weight: 950; line-height: .9; }
.about-symbol span { color: var(--blue-2); }.about-symbol b { color: var(--orange); }
.escape-number { grid-template-columns: repeat(2,auto); align-content: center; gap: 8px; }
.escape-number strong { color: #fff; font-size: 85px; }.escape-number span,.escape-number b { padding: 8px; border-radius: 10px; background: var(--orange); color: var(--navy); font-size: 24px; }.escape-number b { background: var(--blue); color: #fff; }.escape-number em { grid-column: 1/-1; font-size: 35px; }
.medical-split { grid-template-columns: 1fr 1fr; align-content: center; }
.medical-split span,.medical-split i { padding: 44px 22px; border: 1px solid rgba(255,255,255,.28); font-style: normal; font-weight: 950; text-align: center; }
.medical-split span { background: var(--blue); }.medical-split i { background: var(--orange); color: var(--navy); }

/* Project detail */
.crumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; color: #abcce9; font-size: 12px; }
.crumbs a { text-decoration: none; }
.project-hero .lead { color: #fff; }
.project-status-card { padding: 25px; border: 1px solid rgba(255,255,255,.2); border-radius: 20px; background: #fff; color: var(--ink); box-shadow: var(--shadow); }
.status-head { display: flex; align-items: center; gap: 15px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.stage-number { display: grid; place-items: center; width: 55px; height: 55px; border-radius: 15px; background: var(--orange); color: var(--navy); font-size: 27px; font-weight: 950; }
.status-head small { display: block; color: #6c8297; font-size: 9px; font-weight: 950; letter-spacing: .12em; }
.status-head strong { display: block; color: var(--navy); }
.project-status-card dl { margin: 0; }
.project-status-card dl div { padding: 14px 0; border-bottom: 1px solid var(--line); }
.project-status-card dt { color: #6a8095; font-size: 10px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.project-status-card dd { margin: 4px 0 0; font-size: 14px; line-height: 1.4; }
.checked-date { display: block; margin-top: 14px; color: #6e8193; }
.reading-grid { display: grid; grid-template-columns: 120px 1fr; gap: 55px; align-items: start; }
.section-number { color: var(--blue); font-size: 72px; font-weight: 950; line-height: 1; }
.muted-number { color: #b3c4d3; }
.reading-copy { max-width: 850px; }
.outlook-section { background: linear-gradient(125deg,var(--navy),#0b3a6f); color: #fff; }
.outlook-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(320px,.8fr); gap: 65px; align-items: center; }
.outlook-main h2 { color: #fff; }
.outlook-main p { color: #d1e3f4; }
.time-card { padding: 28px; border: 1px solid rgba(255,255,255,.24); border-radius: 18px; background: rgba(255,255,255,.07); }
.time-card > small { color: #7dcbff; font-weight: 950; letter-spacing: .12em; }
.time-card > strong { display: block; margin: 8px 0 24px; font-size: 25px; line-height: 1.2; }
.progress-road { display: grid; grid-template-columns: repeat(5,1fr); align-items: center; }
.progress-road i { position: relative; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; margin: auto; border: 2px solid #6889a8; border-radius: 50%; background: var(--navy); color: #9eb6ca; font-style: normal; font-size: 12px; font-weight: 900; }
.progress-road::before { content: ""; position: absolute; }
.progress-road i.reached { border-color: var(--orange); background: var(--orange); color: var(--navy); }
.road-labels { display: grid; grid-template-columns: repeat(5,1fr); margin-top: 8px; color: #b6ccdf; font-size: 8px; text-align: center; }
.service-route-section { background: var(--paper); }
.service-route-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 65px; align-items: center; }
.route-card { position: relative; padding: 30px 30px 30px 85px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.route-card > p { font-size: 21px; }
.route-icon { position: absolute; left: 24px; top: 30px; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--orange); color: var(--navy); font-size: 22px; font-weight: 950; }
.science-section { background: var(--cream); }
.science-facts { display: grid; margin: 35px 0; border-top: 1px solid var(--line-dark); }
.science-facts > div { display: grid; grid-template-columns: 210px 1fr; gap: 30px; padding: 17px 0; border-bottom: 1px solid var(--line); }
.science-facts strong { color: var(--navy); }
.science-facts span { color: #4e6479; }
.science-detail { margin: 25px 0; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.science-detail summary { color: var(--blue); font-weight: 900; cursor: pointer; }
.science-detail p { margin: 15px 0 0; }
.sources-box { margin-top: 30px; padding: 26px; border-left: 5px solid var(--orange); border-radius: 0 14px 14px 0; background: #fff; box-shadow: var(--shadow-sm); }
.sources-box h3 { font-size: 24px; }
.sources-box ul { margin: 0; padding-left: 20px; }
.sources-box li { margin: 10px 0; }
.sources-box a { color: #005ecf; font-weight: 800; }
.related-section { background: var(--paper); }
.project-grid.compact .project-card { min-height: 295px; }

/* Services, membership, content grids */
.steps-grid, .help-grid, .values-grid, .check-method-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 17px; }
.steps-grid article, .help-grid article, .values-grid article, .check-method-grid article { padding: 28px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.steps-grid article:nth-child(even), .help-grid article:nth-child(even) { border-top: 5px solid var(--orange); }
.steps-grid article:nth-child(odd), .help-grid article:nth-child(odd) { border-top: 5px solid var(--blue); }
.steps-grid span, .help-grid span, .values-grid span, .check-method-grid span { color: #005ecf; font-size: 12px; font-weight: 950; letter-spacing: .12em; }
.steps-grid h2, .help-grid h2, .check-method-grid h2 { margin-top: 25px; font-size: 27px; }
.values-grid h3 { margin-top: 25px; }
.steps-grid p, .help-grid p, .values-grid p, .check-method-grid p { color: var(--muted); font-size: 15px; }
.dark-process { background: var(--navy); color: #fff; }
.dark-process h2 { color: #fff; }
.dark-process .section-head p { color: #c6dcec; }
.process-line, .value-flow, .chain-grid { display: grid; grid-template-columns: repeat(7,auto); align-items: center; gap: 13px; }
.process-line > div, .value-flow > div { display: grid; flex: 1; gap: 5px; min-height: 130px; padding: 20px; border: 1px solid rgba(255,255,255,.22); border-radius: 14px; background: rgba(255,255,255,.06); }
.process-line > div span, .value-flow > div span { color: var(--orange); font-weight: 950; }
.process-line > div small { color: #b9cfe0; }
.process-line > i, .value-flow > i, .chain-grid > i { color: var(--orange); font-style: normal; font-size: 25px; }
.service-stack { display: grid; gap: 12px; }
.service-stack a { display: grid; grid-template-columns: 50px 1fr auto; gap: 14px; align-items: center; padding: 18px; border: 1px solid var(--line); border-radius: 14px; text-decoration: none; box-shadow: var(--shadow-sm); }
.service-stack a > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 13px; background: var(--blue); color: #fff; font-weight: 950; }
.service-stack a:nth-child(even) > span { background: var(--orange); color: var(--navy); }
.service-stack small { display: block; color: var(--muted); }
.question-board { display: grid; gap: 11px; }
.question-board p { margin: 0; padding: 17px 20px; border: 1px solid rgba(255,255,255,.2); border-left: 4px solid var(--orange); border-radius: 10px; background: rgba(255,255,255,.075); color: #fff; }
.service-questions, .help-example, .source-depth, .about-values { background: linear-gradient(145deg,var(--navy),#0a3767); color: #fff; }
.service-questions h2, .help-example h2, .source-depth h2, .about-values h2, .about-values h3 { color: #fff; }
.help-example p, .source-depth p, .about-values p { color: #d3e4f3; }
.example-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.example-grid a { display: grid; grid-template-columns: 42px 1fr auto; gap: 13px; align-items: center; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; text-decoration: none; font-weight: 800; box-shadow: var(--shadow-sm); }
.example-grid a span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: var(--orange); color: var(--navy); font-size: 22px; font-weight: 950; }
.result-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 35px; }
.result-heading > span { padding: 8px 13px; border-radius: 999px; background: var(--blue-soft); color: var(--blue-text); font-weight: 900; }
.ask-form { display: grid; grid-template-columns: 1fr auto; gap: 10px; margin-top: 30px; padding: 10px; border-radius: 999px; background: #fff; box-shadow: var(--shadow); }
.ask-form input { min-height: 52px; border: 0; border-radius: 999px; }
.ask-form .button { min-width: 180px; }
.watchlist-content .project-card:not([data-watching="true"]) { display: none; }
.light-panel { background: var(--paper); }

.tier-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; align-items: stretch; }
.tier-card { position: relative; display: flex; flex-direction: column; padding: 29px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow-sm); }
.tier-card.featured { border: 3px solid var(--orange); transform: translateY(-14px); box-shadow: var(--shadow); }
.tier-ribbon { position: absolute; top: -15px; left: 22px; padding: 6px 10px; border-radius: 999px; background: var(--orange); color: var(--navy); font-size: 9px; font-weight: 950; letter-spacing: .1em; }
.tier-top { display: flex; align-items: end; justify-content: space-between; gap: 10px; padding-bottom: 19px; border-bottom: 1px solid var(--line); }
.tier-top span { color: #005ecf; font-size: 10px; font-weight: 950; letter-spacing: .12em; }
.tier-top strong { color: var(--navy); font-size: 20px; }
.tier-card h2 { margin-top: 25px; font-size: 28px; }
.tier-card > p { color: var(--muted); font-size: 15px; }
.tier-card .button { margin-top: auto; }
.check-list { list-style: none; margin: 10px 0 28px; padding: 0; }
.check-list li { position: relative; margin: 11px 0; padding-left: 28px; }
.check-list li::before { content: "✓"; position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: var(--blue-soft); color: #005ecf; font-size: 11px; font-weight: 950; }
.membership-value { background: var(--navy); color: #fff; }
.membership-value h2 { color: #fff; }
.value-flow > div { min-width: 0; background: rgba(255,255,255,.07); }
.value-flow small { color: #b9d0e3; }
.plain-panel { padding: 30px; border: 1px solid var(--line); border-radius: 18px; background: var(--paper); }
.plain-panel h3 { font-size: 27px; }
.depth-stack { display: grid; gap: 12px; }
.depth-stack article { display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: center; padding: 18px; border: 1px solid rgba(255,255,255,.22); border-radius: 12px; background: rgba(255,255,255,.06); }
.depth-stack span { color: var(--orange); font-weight: 950; }
.depth-stack small { display: block; color: #c3d9ea; }
.boundary-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.boundary-grid article { padding: 34px; border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow-sm); }
.boundary-grid article:nth-child(2) { background: var(--orange-soft); border-color: #f5c39e; }

/* Escape chain */
.escape-chain { background: var(--paper); }
.chain-grid { grid-template-columns: repeat(7,auto); }
.chain-grid article { min-width: 0; padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: var(--shadow-sm); }
.chain-grid article span { color: #005ecf; font-size: 9px; font-weight: 950; letter-spacing: .12em; }
.chain-grid article strong { display: block; margin: 13px 0 8px; color: var(--navy); font-size: 20px; line-height: 1.2; }
.chain-grid article p { color: var(--muted); font-size: 14px; }

/* Forms and legal */
.form-layout { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); gap: 80px; align-items: start; }
.form-side { position: sticky; top: 125px; }
.contact-form { display: grid; gap: 18px; padding: 32px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.contact-form label { display: grid; gap: 7px; color: var(--navy); font-size: 14px; font-weight: 850; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; padding: 12px 14px; border: 1px solid #a8bdcf; border-radius: 10px; background: #fff; color: var(--ink); font-weight: 500; }
.contact-form textarea { resize: vertical; }
.contact-form small { color: var(--muted); font-size: 12px; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.form-message { padding: 14px 16px; border-left: 5px solid var(--blue); border-radius: 8px; background: var(--blue-soft); color: var(--navy); font-weight: 800; }
.contact-options { display: grid; gap: 11px; margin-top: 28px; }
.contact-options a { display: grid; gap: 2px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; text-decoration: none; }
.contact-options span { color: #005ecf; font-size: 13px; font-weight: 850; }
.legal-copy h2 { margin-top: 42px; font-size: 31px; }
.legal-copy p { color: #465d74; }
.big-404 { color: var(--orange); font-size: 120px; font-weight: 950; line-height: 1; }
.not-found-hero { min-height: 620px; display: grid; align-items: center; }

/* CTA and footer */
.cta-band { padding: 65px 0; background: linear-gradient(110deg,var(--blue),#0057ca); color: #fff; }
.cta-grid { display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: center; }
.cta-band h2 { color: #fff; }
.cta-band p { color: #dcecff; }
.site-footer { padding: 65px 0 22px; background: #041428; color: #b6c9da; border-top: 4px solid var(--blue); }
.footer-grid { display: grid; grid-template-columns: 1.6fr repeat(3,1fr); gap: 50px; }
.footer-about p { max-width: 360px; margin-top: 22px; font-size: 14px; }
.brand-footer .brand-words small { color: #8ca6bc; }
.footer-grid h2 { margin-bottom: 17px; color: #fff; font-size: 14px; letter-spacing: .08em; }
.footer-grid > div:not(.footer-about) { display: flex; flex-direction: column; gap: 8px; }
.footer-grid a { color: #b8cede; text-decoration: none; font-size: 13px; }
.footer-grid a:hover { color: #fff; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 48px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); color: #8199ad; font-size: 11px; }

/* Responsive */
@media (max-width: 1080px) {
  .main-nav { gap: 15px; }
  .main-nav > a { font-size: 13px; }
  .hero-grid { grid-template-columns: 1fr 390px; gap: 45px; }
  .service-grid, .tier-grid, .steps-grid, .help-grid, .values-grid, .check-method-grid { grid-template-columns: 1fr 1fr; }
  .project-grid { grid-template-columns: 1fr 1fr; }
  .tier-card.featured { transform: none; }
}

@media (max-width: 860px) {
  :root { --wrap: min(100% - 32px, 760px); }
  body { font-size: 16px; }
  .signal-inner > span:not(.signal-badge), .signal-inner > a { display: none; }
  .signal-inner { justify-content: center; }
  .signal-badge { border: 0; padding: 0; }
  .menu-button { display: block; }
  .main-nav { position: fixed; inset: 120px 16px auto; display: none; max-height: calc(100vh - 140px); overflow: auto; padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow); }
  .main-nav.is-open { display: grid; }
  .main-nav > a { padding: 12px 6px; font-size: 16px; }
  .main-nav > a:not(.button)::after { display: none; }
  .nav-row { min-height: 76px; }
  .hero-grid, .page-hero-grid, .project-hero-grid, .outlook-grid, .service-route-grid, .membership-band-grid, .hope-grid, .form-layout, .section-head.split, .two-col { grid-template-columns: 1fr; }
  .home-hero { min-height: 0; background: linear-gradient(145deg,var(--navy),#0a3768); }
  .hero-grid { gap: 55px; }
  .action-console { max-width: 620px; transform: none; }
  .number-grid { grid-template-columns: 1fr 1fr; }
  .number-grid > div:first-child { border-left: 0; }
  .number-grid > div:nth-child(2) { border-right: 0; }
  .radar-tools { grid-template-columns: 1fr 1fr; }
  .radar-tools .search-box { grid-column: 1 / -1; }
  .sticky-tools { top: 90px; }
  .membership-band { background: linear-gradient(145deg,var(--navy),var(--blue)); }
  .membership-band::after { display: none; }
  .membership-band-grid { gap: 45px; }
  .hope-grid { justify-items: center; text-align: center; }
  .hope-grid .hero-actions { justify-content: center; }
  .reading-grid { grid-template-columns: 75px 1fr; gap: 25px; }
  .section-number { font-size: 53px; }
  .form-side { position: static; }
  .process-line, .value-flow, .chain-grid { grid-template-columns: 1fr; }
  .process-line > i, .value-flow > i, .chain-grid > i { transform: rotate(90deg); text-align: center; }
  .example-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-about { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  :root { --wrap: calc(100% - 26px); }
  h1 { font-size: 42px; }
  h2 { font-size: 34px; }
  .section { padding: 72px 0; }
  .brand-mark { width: 40px; height: 40px; }
  .brand-words strong, .brand-words em { font-size: 20px; }
  .brand-words small { font-size: 6.5px; }
  .home-hero { padding: 72px 0; }
  .hero-copy h1 { font-size: 47px; }
  .hero-actions { align-items: stretch; }
  .hero-actions .button { width: 100%; }
  .hero-quote { grid-template-columns: 1fr; }
  .hero-quote > span { display: none; }
  .hero-quote a { grid-column: 1; }
  .action-console { padding: 17px; }
  .console-actions > a { grid-template-columns: 40px 1fr auto; padding: 9px; }
  .number-grid { grid-template-columns: 1fr 1fr; }
  .number-grid > div { min-height: 85px; padding: 15px; border-bottom: 1px solid var(--line); }
  .number-grid strong { font-size: 25px; }
  .service-grid, .project-grid, .tier-grid, .steps-grid, .help-grid, .values-grid, .check-method-grid, .updates-grid, .boundary-grid, .example-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 245px; }
  .update-card { grid-template-columns: 62px 1fr; padding: 16px; }
  .radar-tools { grid-template-columns: 1fr; }
  .radar-tools .search-box { grid-column: auto; }
  .result-count { padding: 8px 2px; }
  .project-grid:not(.show-all) .project-card:nth-child(n+7) { display: none; }
  .project-card { min-height: 300px; }
  .page-hero, .project-hero { padding: 68px 0; }
  .page-hero-grid, .project-hero-grid { gap: 38px; }
  .radar-orbit, .contact-mark, .about-symbol, .escape-number, .pulse-visual, .watch-visual, .membership-orbit, .route-visual, .help-visual, .join-promise, .source-visual, .medical-split { min-height: 210px; }
  .project-status-card { padding: 20px; }
  .reading-grid { grid-template-columns: 1fr; }
  .section-number { font-size: 42px; }
  .science-facts > div { grid-template-columns: 1fr; gap: 5px; }
  .route-card { padding: 75px 22px 24px; }
  .route-icon { top: 20px; left: 22px; }
  .hope-number { width: 180px; height: 180px; }
  .ask-form { grid-template-columns: 1fr; border-radius: 20px; }
  .ask-form input { border: 1px solid var(--line); border-radius: 12px; }
  .ask-form .button { width: 100%; }
  .field-row { grid-template-columns: 1fr; }
  .contact-form { padding: 20px; }
  .timeline-item { grid-template-columns: 60px 1fr; gap: 16px; padding: 18px; }
  .timeline-item time { min-height: 70px; }
  .timeline-item time strong { font-size: 26px; }
  .timeline-item h2 { font-size: 25px; }
  .cta-grid { grid-template-columns: 1fr; }
  .cta-grid .button { width: 100%; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-about { grid-column: auto; }
  .footer-bottom { flex-direction: column; }
  .big-404 { font-size: 88px; }
}

/* v0.4 member service and editorial layer */
.account-link { display: inline-flex; align-items: center; gap: 6px; }
.nav-alert { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--orange); color: var(--navy); font-size: 10px; font-weight: 950; }

/* Project identities and deeper source trail */
.project-card { position: relative; overflow: hidden; }
.category-accent { position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--blue); }
.category-cell-reset-and-repair .category-accent { background: #7c5cff; }
.category-clearing-damaged-cells .category-accent { background: #ff6800; }
.category-medicines-and-metabolism .category-accent { background: #006dff; }
.category-mitochondria-and-energy .category-accent { background: #00a6c8; }
.category-organ-replacement-and-regeneration .category-accent { background: #f14f86; }
.category-blood-and-circulating-factors .category-accent { background: #d63447; }
.category-immune-system-and-inflammation .category-accent { background: #4e9b50; }
.category-measuring-ageing .category-accent { background: #7754b8; }
.category-animal-longevity .category-accent { background: #b97800; }
.category-brain-ageing .category-accent { background: #007bb8; }
.category-long-range-and-preservation .category-accent { background: #394c73; }
.card-next { margin: 2px 0 17px; padding: 12px 13px; border-radius: 10px; background: var(--paper); }
.card-next small { display: block; margin-bottom: 4px; color: var(--orange-action); font-size: 8px; font-weight: 950; letter-spacing: .11em; }
.card-next span { display: block; color: #405a73; font-size: 12px; line-height: 1.45; }
.project-category-glow { position: absolute; z-index: 1; right: -70px; top: 30%; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle,rgba(255,104,0,.20),rgba(0,109,255,.04) 55%,transparent 72%); filter: blur(8px); }
.simple-position { margin-top: 35px; padding: 22px 25px; border-left: 5px solid var(--blue); border-radius: 0 14px 14px 0; background: var(--blue-soft); }
.simple-position strong { display: block; margin-bottom: 7px; color: var(--navy); }
.simple-position p { margin: 0; color: #38536d; }
.time-card > p { margin: 18px 0 0; color: #bcd4e8; font-size: 12px; line-height: 1.5; }
.sources-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.sources-head small { color: var(--orange-action); font-size: 9px; font-weight: 950; letter-spacing: .12em; }
.sources-head h3 { margin: 4px 0 0; }
.sources-head > span { display: inline-flex; padding: 5px 9px; border-radius: 999px; background: var(--blue-soft); color: var(--blue-text); font-size: 11px; font-weight: 900; }
.sources-box ul { list-style: none; padding: 0; }
.sources-box li { padding: 13px 0; border-top: 1px solid var(--line); }
.sources-box li:first-child { border-top: 0; }
.sources-box li small { display: block; margin-bottom: 4px; color: var(--muted); font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }

/* Account entry, member area and service dashboard */
.account-entry { min-height: calc(100vh - 120px); padding: clamp(70px,8vw,115px) 0; background: linear-gradient(122deg,var(--navy) 0 52%,#0b3b70 52% 100%); color: #fff; }
.compact-entry { min-height: 650px; }
.account-entry-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(420px,.82fr); gap: clamp(50px,8vw,110px); align-items: center; }
.entry-copy h1 { color: #fff; }
.entry-copy > p { max-width: 650px; color: #d8e8f7; font-size: 21px; }
.entry-points { display: grid; grid-template-columns: 42px 1fr; gap: 15px 16px; max-width: 620px; margin-top: 34px; }
.entry-points > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--orange); color: var(--navy); font-size: 11px; font-weight: 950; }
.entry-points p { margin: 0; color: #d9e9f7; font-size: 14px; }
.entry-points strong { color: #fff; }
.account-form { display: grid; gap: 16px; padding: clamp(24px,4vw,38px); border-radius: 24px; background: #fff; color: var(--ink); box-shadow: 0 35px 80px rgba(0,0,0,.28); }
.form-title { padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.form-title span { color: var(--orange-action); font-size: 10px; font-weight: 950; letter-spacing: .14em; }
.form-title h2 { margin: 5px 0 0; font-size: 33px; }
.account-form label, .settings-form label, .admin-form label, .admin-response-form label { display: grid; gap: 7px; color: var(--navy); font-size: 13px; font-weight: 850; }
.account-form input, .account-form select, .account-form textarea, .settings-form input, .settings-form select, .settings-form textarea, .admin-form input, .admin-form select, .admin-form textarea, .admin-response-form input, .admin-response-form select, .admin-response-form textarea, .admin-search input, .admin-search select, .inline-admin-form select { width: 100%; padding: 12px 14px; border: 1px solid #9fb6ca; border-radius: 10px; background: #fff; color: var(--ink); }
.account-form small, .settings-form small { color: var(--muted); font-size: 11px; }
.form-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding-top: 10px; border-top: 1px solid var(--line); font-size: 12px; }
.form-links a { color: var(--blue); font-weight: 850; }
.light-inline-link { display: inline-block; margin-top: 18px; color: #fff; font-weight: 850; }

.member-hero, .member-page-hero, .admin-hero { position: relative; overflow: hidden; padding: 75px 0; background: linear-gradient(118deg,var(--navy),#0b3c71); color: #fff; }
.member-hero::after, .member-page-hero::after, .admin-hero::after { content: ""; position: absolute; right: -120px; top: -180px; width: 500px; height: 500px; border: 1px solid rgba(93,197,255,.20); border-radius: 50%; box-shadow: 0 0 0 70px rgba(0,109,255,.04),0 0 0 140px rgba(255,104,0,.025); }
.member-page-hero h1, .member-hero h1, .admin-hero h1 { position: relative; z-index: 1; color: #fff; }
.member-page-hero p, .member-hero p, .admin-hero p { position: relative; z-index: 1; max-width: 760px; color: #d4e7f7; font-size: 20px; }
.member-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
.member-scoreboard { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.member-scoreboard > div { padding: 18px; border: 1px solid rgba(255,255,255,.22); border-radius: 14px; background: rgba(255,255,255,.07); }
.member-scoreboard strong { display: block; color: var(--orange); font-size: 27px; }
.member-scoreboard span { color: #d3e4f2; font-size: 11px; }
.member-shell, .admin-shell { padding: 38px 0 100px; background: var(--paper); }
.account-nav, .admin-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; padding: 8px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: var(--shadow-sm); }
.account-nav a, .admin-nav a { display: inline-flex; align-items: center; gap: 6px; padding: 9px 12px; border-radius: 9px; color: #34506a; text-decoration: none; font-size: 12px; font-weight: 850; }
.account-nav a:hover, .admin-nav a:hover { background: var(--blue-soft); color: var(--blue-text); }
.account-nav span, .admin-nav span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--orange-soft); color: var(--orange-text); font-size: 10px; }
.member-action-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-bottom: 22px; }
.member-action { display: grid; grid-template-columns: 48px 1fr auto; gap: 14px; align-items: center; padding: 20px; border: 1px solid var(--line); border-top: 5px solid var(--blue); border-radius: 16px; background: #fff; box-shadow: var(--shadow-sm); text-decoration: none; }
.member-action.orange { border-top-color: var(--orange); }
.member-action > span { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 13px; background: var(--blue); color: #fff; font-size: 13px; font-weight: 950; }
.member-action.orange > span { background: var(--orange); color: var(--navy); }
.member-action strong { display: block; color: var(--navy); }
.member-action small { display: block; color: var(--muted); }
.member-action b { color: var(--blue); }
.dashboard-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 18px; }
.dashboard-panel, .admin-panel { min-width: 0; padding: 25px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.dashboard-panel.wide { grid-row: span 2; }
.panel-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.panel-head h2 { margin: 3px 0 0; font-size: 28px; }
.panel-head a { color: var(--blue); font-size: 12px; font-weight: 900; text-decoration: none; }
.panel-empty { display: flex; align-items: center; gap: 18px; padding: 28px; border: 2px dashed #bdcfde; border-radius: 14px; background: var(--paper); }
.panel-empty > span { display: grid; place-items: center; flex: 0 0 auto; width: 54px; height: 54px; border-radius: 14px; background: var(--orange); color: var(--navy); font-size: 24px; font-weight: 950; }
.panel-empty h3 { margin: 0 0 5px; font-size: 22px; }
.panel-empty p { margin: 0 0 12px; color: var(--muted); }
.panel-empty.small { padding: 20px; }
.panel-empty.small > span { width: 44px; height: 44px; }
.notification-list { display: grid; }
.notification-list article { display: grid; grid-template-columns: 13px 1fr; gap: 14px; padding: 17px 0; border-top: 1px solid var(--line); }
.notification-list article:first-child { border-top: 0; }
.notification-list article > span { width: 10px; height: 10px; margin-top: 7px; border-radius: 50%; background: #abc0d2; }
.notification-list article.unread > span { background: var(--orange); box-shadow: 0 0 0 5px var(--orange-soft); }
.notification-list strong, .notification-list h3 { display: block; margin: 0 0 4px; color: var(--navy); }
.notification-list p { margin: 0 0 5px; color: var(--muted); font-size: 13px; }
.notification-list small { color: #7b8ea1; font-size: 10px; }
.notification-list a { color: var(--blue); font-size: 12px; font-weight: 850; }
.question-history { display: grid; gap: 10px; }
.question-history details, .question-history article { padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); }
.question-history summary { display: flex; justify-content: space-between; gap: 20px; color: var(--navy); font-weight: 850; cursor: pointer; }
.question-history details > div { padding-top: 14px; color: var(--muted); }
.member-question-form, .expanded-ask { display: grid; grid-template-columns: 1fr auto; gap: 11px; max-width: 900px; margin-top: 28px; }
.member-question-form textarea, .expanded-ask textarea { width: 100%; min-height: 90px; padding: 15px; border: 1px solid #9bb5ca; border-radius: 14px; resize: vertical; }
.answer-section { background: var(--paper); }
.answer-panel { display: grid; grid-template-columns: 58px 1fr; gap: 22px; padding: 30px; border: 1px solid var(--line); border-top: 6px solid var(--blue); border-radius: 18px; background: #fff; box-shadow: var(--shadow); }
.answer-mark { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; background: var(--orange); color: var(--navy); font-weight: 950; }
.answer-panel h2 { font-size: 31px; }
.answer-panel p { color: #405a72; }
.answer-projects { display: grid; gap: 7px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.answer-projects strong { margin-bottom: 4px; }
.answer-projects a { display: flex; justify-content: space-between; gap: 12px; padding: 10px 12px; border-radius: 9px; background: var(--blue-soft); color: var(--blue-text); text-decoration: none; font-weight: 850; }
.answer-error { border-top-color: #b03a2e; }
.settings-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 18px; align-items: start; }
.settings-form { display: grid; gap: 16px; }
.check-row { display: grid !important; grid-template-columns: 20px 1fr; align-items: start; gap: 10px !important; padding: 12px; border-radius: 10px; background: var(--paper); }
.check-row input { width: 18px; margin-top: 4px; }
.data-controls { display: grid; gap: 8px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.data-controls a, .signout-form button { color: var(--blue); font-size: 12px; font-weight: 850; }
.data-controls a:last-child { color: #9b2c2c; }
.signout-form { margin-top: 18px; text-align: right; }
.signout-form button { padding: 8px 0; border: 0; background: transparent; cursor: pointer; }
.danger-panel { max-width: 680px; border-top: 6px solid #b42318; }
.danger-button { border-color: #b42318; background: #b42318; box-shadow: none; }
.request-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 18px; align-items: start; }
.request-list { display: grid; gap: 14px; }
.request-list article { padding: 19px; border: 1px solid var(--line); border-radius: 14px; background: var(--paper); }
.request-top { display: flex; justify-content: space-between; gap: 10px; }
.request-top span, .request-top b { color: var(--blue); font-size: 9px; letter-spacing: .09em; }
.request-list h3 { margin: 8px 0; }
.request-list p { color: var(--muted); }
.response-note { margin-top: 14px; padding: 14px; border-left: 4px solid var(--orange); background: #fff; }

/* Administration */
.admin-hero { padding: 65px 0; }
.admin-hero.compact { padding: 52px 0; }
.admin-hero h1 { font-size: clamp(40px,5vw,64px); }
.admin-metrics { display: grid; grid-template-columns: repeat(auto-fit,minmax(165px,1fr)); gap: 13px; margin-bottom: 20px; }
.admin-metrics article { padding: 22px; border-radius: 15px; background: var(--navy); color: #fff; box-shadow: var(--shadow-sm); }
.admin-metrics article:nth-child(even) { background: linear-gradient(145deg,var(--blue),#0055c7); }
.admin-metrics strong { display: block; color: var(--orange); font-size: 31px; }
.admin-metrics span { color: #d3e5f4; font-size: 11px; }
.admin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.admin-list { display: grid; }
.admin-list article { display: grid; grid-template-columns: 110px 1fr auto; gap: 13px; align-items: center; padding: 14px 0; border-top: 1px solid var(--line); }
.admin-list article:first-child { border-top: 0; }
.admin-list > article > span { color: var(--orange-action); font-size: 9px; font-weight: 950; letter-spacing: .08em; }
.admin-list strong { display: block; }
.admin-list small { display: block; color: var(--muted); }
.admin-list a { color: var(--blue); font-size: 11px; font-weight: 850; }
.admin-quick-actions { display: grid; gap: 9px; margin-top: 25px; }
.admin-quick-actions a { display: flex; justify-content: space-between; gap: 10px; padding: 13px; border-radius: 10px; background: var(--paper); color: var(--navy); text-decoration: none; font-weight: 850; }
.admin-search { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; margin-bottom: 18px; padding: 13px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.admin-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow-sm); }
.admin-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.admin-table th { padding: 13px; background: var(--navy); color: #fff; text-align: left; white-space: nowrap; }
.admin-table td { padding: 13px; border-top: 1px solid var(--line); vertical-align: top; }
.admin-table td > strong, .admin-table td > small { display: block; }
.admin-table td > small { color: var(--muted); }
.admin-table a { color: var(--blue); font-weight: 850; white-space: nowrap; }
.inline-admin-form { display: grid; grid-template-columns: repeat(3,minmax(105px,1fr)) auto; gap: 7px; min-width: 520px; }
.inline-admin-form select { padding: 8px; font-size: 11px; }
.filter-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.filter-pills a { padding: 8px 11px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--navy); text-decoration: none; font-size: 11px; font-weight: 850; }
.admin-request-list { display: grid; gap: 16px; }
.admin-request-card { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.admin-request-card > header { display: flex; justify-content: space-between; gap: 20px; padding: 22px; background: var(--navy); color: #fff; }
.admin-request-card header span { color: var(--orange); font-size: 9px; font-weight: 950; letter-spacing: .09em; }
.admin-request-card header h2 { margin: 5px 0; color: #fff; font-size: 28px; }
.admin-request-card header p { margin: 0; color: #c6dbeb; font-size: 11px; }
.admin-request-card header b { align-self: start; padding: 6px 9px; border-radius: 999px; background: var(--orange); color: var(--navy); font-size: 10px; }
.request-body { padding: 22px; }
.request-body p { color: #405a72; }
.request-body a { color: var(--blue); font-weight: 850; }
.admin-response-form { display: grid; grid-template-columns: 220px 1fr auto; gap: 13px; align-items: end; padding: 22px; border-top: 1px solid var(--line); background: var(--paper); }
.admin-response-form textarea { min-height: 110px; resize: vertical; }
.admin-form { display: grid; gap: 15px; }
.admin-actions-row { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
.audit-flags { display: flex; flex-wrap: wrap; gap: 5px; }
.audit-flags span { padding: 4px 6px; border-radius: 6px; background: var(--orange-soft); color: var(--orange-text); font-size: 9px; font-weight: 850; }
.audit-clear { color: #247a43; font-weight: 850; }

@media (max-width: 1080px) {
  .account-entry-grid { grid-template-columns: 1fr 430px; gap: 45px; }
  .member-action-grid, .admin-metrics { grid-template-columns: 1fr 1fr; }
  .admin-response-form { grid-template-columns: 180px 1fr; }
  .admin-response-form .button { grid-column: 2; justify-self: start; }
}

@media (max-width: 860px) {
  .account-entry-grid, .member-hero-grid, .dashboard-grid, .settings-grid, .request-layout, .admin-grid { grid-template-columns: 1fr; }
  .account-entry { background: linear-gradient(145deg,var(--navy),#0a3768); }
  .dashboard-panel.wide { grid-row: auto; }
  .member-action-grid { grid-template-columns: 1fr; }
  .admin-search { grid-template-columns: 1fr auto; }
  .admin-search select { grid-column: 1; }
  .admin-response-form { grid-template-columns: 1fr; }
  .admin-response-form .button { grid-column: auto; }
}

@media (max-width: 620px) {
  .account-entry-grid { grid-template-columns: 1fr; }
  .account-form { padding: 20px; }
  .entry-points { grid-template-columns: 36px 1fr; }
  .member-scoreboard, .admin-metrics { grid-template-columns: 1fr 1fr; }
  .member-action { grid-template-columns: 42px 1fr auto; padding: 15px; }
  .account-nav, .admin-nav { display: grid; grid-template-columns: 1fr 1fr; }
  .member-question-form, .expanded-ask { grid-template-columns: 1fr; }
  .answer-panel { grid-template-columns: 1fr; padding: 20px; }
  .field-row { grid-template-columns: 1fr; }
  .sources-head { align-items: start; flex-direction: column; }
  .admin-search { grid-template-columns: 1fr; }
  .admin-search select { grid-column: auto; }
  .admin-list article { grid-template-columns: 80px 1fr; }
  .admin-list article > a { grid-column: 2; }
  .admin-request-card > header { flex-direction: column; }
  .member-scoreboard strong, .admin-metrics strong { font-size: 24px; }
}

/* v0.4 project access, source labels and preference controls */
.access-now-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #edf7ff 0 62%, #fff4e9 62% 100%);
}
.access-now-section::before {
  content: "";
  position: absolute;
  width: 390px;
  height: 390px;
  right: -170px;
  bottom: -250px;
  border: 1px solid rgba(0,109,255,.13);
  border-radius: 50%;
  box-shadow: 0 0 0 55px rgba(0,109,255,.035), 0 0 0 110px rgba(255,104,0,.025);
}
.access-now-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(340px,.85fr);
  gap: clamp(42px,7vw,88px);
  align-items: center;
}
.access-now-grid > div:first-child > p {
  max-width: 720px;
  color: #405b74;
  font-size: 20px;
}
.access-action-card {
  position: relative;
  padding: 31px;
  border: 1px solid #c9dceb;
  border-top: 6px solid var(--orange);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--shadow);
}
.access-action-card > span {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  margin-bottom: 20px;
  border-radius: 16px;
  background: linear-gradient(145deg,var(--blue),var(--blue-2));
  color: #fff;
  font-size: 25px;
  font-weight: 950;
  box-shadow: var(--shadow-blue);
}
.access-action-card p { color: #38536c; font-size: 19px; }
.access-action-card .button { margin-top: 5px; }

.source-intro { color: var(--muted); font-size: 14px; }
.sources-box li > a {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 10px 12px;
  align-items: center;
  text-decoration: none;
}
.sources-box li > a:hover strong { text-decoration: underline; }
.sources-box li > small {
  margin: 7px 0 0;
  color: #60758b;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.45;
  text-transform: none;
}
.source-type {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--blue-soft);
  color: #0059c6;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
}
.sources-box li:nth-child(even) .source-type { background: var(--orange-soft); color: var(--orange-text); }

.preference-group {
  display: grid;
  gap: 9px;
  min-width: 0;
  margin: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
}
.preference-group legend {
  padding: 0 7px;
  color: var(--navy);
  font-size: 13px;
  font-weight: 900;
}
.check-row span { display: grid; gap: 2px; }
.check-row span strong { color: var(--navy); font-size: 13px; }
.check-row span small { color: var(--muted); font-weight: 500; }

.account-nav a[aria-current="page"], .admin-nav a[aria-current="page"] {
  background: var(--navy);
  color: #fff;
}
.account-nav a[aria-current="page"] span, .admin-nav a[aria-current="page"] span {
  background: var(--orange);
  color: var(--navy);
}
.project-audit-table td:nth-child(1) { min-width: 260px; }
.project-audit-table td:nth-child(4) { min-width: 220px; }
.project-audit-table td:nth-child(4) small { margin-top: 5px; line-height: 1.4; }
.admin-table tbody tr:hover { background: #f8fbfe; }
.admin-panel > p { color: var(--muted); }

.watchlist-member-note {
  margin: 0 0 22px;
  padding: 16px 18px;
  border-left: 5px solid var(--blue);
  border-radius: 0 12px 12px 0;
  background: var(--blue-soft);
  color: #36536e;
}

@media (max-width: 860px) {
  .access-now-section { background: linear-gradient(155deg,#edf7ff,#fff4e9); }
  .access-now-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .access-action-card { padding: 22px; }
  .sources-box li > a { grid-template-columns: 1fr auto; }
  .source-type { grid-column: 1 / -1; justify-self: start; }
  .account-nav a, .admin-nav a { justify-content: space-between; }
}


.member-selection-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 22px 0 18px;
  padding: 17px 20px;
  border: 1px solid rgba(255, 111, 0, .35);
  border-left: 5px solid var(--orange);
  border-radius: 15px;
  background: #fff8f2;
  box-shadow: 0 12px 28px rgba(4, 31, 61, .06);
}
.member-selection-note div { display: grid; gap: 3px; }
.member-selection-note strong { color: var(--navy); font-size: 1.03rem; }
.member-selection-note span { color: var(--muted); line-height: 1.45; }
.member-selection-note a { color: var(--blue); font-weight: 800; white-space: nowrap; }
@media (max-width: 700px) {
  .member-selection-note { align-items: flex-start; flex-direction: column; gap: 11px; }
}


.admin-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:18px 0; }
.admin-filter-links { display:flex; flex-wrap:wrap; gap:7px; }
.admin-filter-links a { padding:8px 12px; border-radius:999px; border:1px solid var(--line); background:#fff; color:var(--navy); font-weight:800; font-size:12px; }
.admin-filter-links a[aria-current="page"] { background:var(--navy); border-color:var(--navy); color:#fff; }
.admin-message-list { display:grid; gap:16px; }
.admin-message-card { padding:22px; border:1px solid var(--line); border-radius:17px; background:#fff; box-shadow:var(--shadow-sm); }
.admin-message-card header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; border-bottom:1px solid var(--line); padding-bottom:14px; }
.admin-message-card header span { color:var(--blue); font-size:10px; font-weight:900; letter-spacing:.12em; }
.admin-message-card header h2 { margin:4px 0 6px; font-size:1.35rem; }
.admin-message-card header p { margin:0; color:var(--muted); font-size:12px; }
.admin-message-card header b { padding:6px 10px; border-radius:999px; background:#fff2e8; color:#a84600; font-size:11px; text-transform:uppercase; }
.admin-message-body { padding:18px 0; color:var(--navy); line-height:1.65; }
.admin-message-form { display:grid; grid-template-columns:180px 1fr auto; gap:12px; align-items:end; }
.admin-message-form label { display:grid; gap:6px; color:var(--navy); font-size:11px; font-weight:800; }
.admin-message-form select, .admin-message-form textarea { width:100%; border:1px solid var(--line); border-radius:10px; padding:10px 12px; background:#f8fbff; color:var(--navy); font:inherit; }
@media (max-width:760px) { .admin-toolbar, .admin-message-card header { align-items:flex-start; flex-direction:column; } .admin-message-form { grid-template-columns:1fr; } }
