/* Review proposal: readable type, clear blue surfaces, established Coramar identity. */
:root {
  --bg: #040b14;
  --surface: #0b243c;
  --surface-raised: #103653;
  --line: #315574;
  --text: #f1f7fd;
  --muted: #b7ccdf;
  --accent: #83d4ff;
  --blue-canvas: #040b14;
  --blue-band: #081d32;
  --blue-panel: #0c2b46;
  --blue-feature: #123f67;
  --blue-action: #1765b3;
  --type-body: 1.125rem;
  --type-lead: 1.25rem;
  --type-ui: 1rem;
  --type-small: .875rem;
  scroll-padding-top: 110px;
}
body { background: var(--bg); color: var(--text); font-size: var(--type-body); line-height: 1.7; }
::selection { background: #2477b8; color: #fff; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: #3d6687; }
a:focus-visible, button:focus-visible, summary:focus-visible, [tabindex="0"]:focus-visible { outline: 3px solid #83d4ff; outline-offset: 5px; }
.container, .nav-wrap { width: min(1200px, calc(100% - 96px)); }
.site-header { height: 88px; background: #061524; border-bottom: 1px solid #23415b; }
.nav-wrap { gap: 24px; }
#main-nav { font-size: var(--type-ui); gap: 22px; color: #c8daea; }
#main-nav a { padding-block: 12px; }
#main-nav a.is-current { color: #92daff; text-decoration: underline; text-underline-offset: 8px; }
.button, .button-small, .hero-actions .button, .hero-actions .text-link, .page-hero .button,
.page-closing .button, .text-link, .intro .text-link, .report-intro .text-link,
.featured-services .text-link, .tech-page-link, .step-page-link, .operations .text-link,
.service-detail > .service-page-link, .future .text-link, .home-insights .text-link {
  font-size: var(--type-ui); line-height: 1.4;
}
.button { min-height: 48px; padding: 13px 20px; background: #0d2b45; border-color: #507b9b; box-shadow: none; }
.button:hover { background: #194767; border-color: #83d4ff; }
.hero-actions > .button, .contact > .button, .page-primary, .package-partnership .package-button {
  background: var(--blue-action); border-color: #60b6ef; color: #fff;
}
.hero-actions > .button:hover, .contact > .button:hover, .page-primary:hover, .package-partnership .package-button:hover { background: #1c77c9; border-color: #b3e5ff; }
.text-link { color: #9dddff; text-decoration: underline; text-underline-offset: 5px; text-decoration-color: #426f8d; }
.text-link:hover { color: #fff; text-decoration-color: #b3e5ff; }
.resend-hero { min-height: 720px; padding-block: 65px; }
.hero-copy { padding-left: 0; }
.resend-hero h1 { font-size: clamp(54px, 5.6vw, 78px); line-height: 1.05; }
.hero-growth { color: #94d7ff; }
.hero-copy > p { font-size: var(--type-lead); line-height: 1.7; max-width: 42ch; color: #c2d5e6; margin-top: 28px; }
.hero-actions { gap: 22px; flex-wrap: wrap; }
.assessment-link { font-size: var(--type-small); color: #c9e8ff; background: #0c2944; border-color: #345d7d; padding: 10px 14px; }
.signal-caption { font-size: var(--type-small); color: #b7ccdf; flex-wrap: wrap; }
.signal-caption strong { color: #e3f4ff; }
.motion-toggle { font-size: var(--type-small); min-height: 40px; background: #0a2034; border-color: #365c77; color: #c1d9eb; }
.cue-platform-definition { font-size: clamp(12px, 1.1vw, 15px); color: #c9e7fa; }
.cue-platform { background: linear-gradient(180deg, #1b4a6e, #0a2239); border-color: #5184a8; }
.clarity-region { background: var(--blue-band); padding-bottom: 32px; }
.planning-region { background: var(--blue-canvas); }
.discipline-strip { color: #badcf5; font-size: var(--type-body); border-color: #2e5370; padding-block: 27px; }
.featured-services { gap: 36px; padding-top: 48px; }
.featured-services article { border-top-color: #68b8eb; }
.featured-services .eyebrow, .eyebrow, .packages-heading .eyebrow { font-size: var(--type-small); color: #9edfff; line-height: 1.6; }
.featured-services h2 { font-size: clamp(32px, 3vw, 40px); }
.featured-services article > p:not(.eyebrow) { font-size: var(--type-body); line-height: 1.7; color: #c3d7e7; max-width: 38ch; }
.report-intro { gap: 60px; padding-block: 90px 45px; }
.report-intro h2, .report-heading h2 { font-size: clamp(36px, 3.5vw, 48px); }
.report-intro p, .report-heading p, .report-next p { font-size: var(--type-body); color: #c3d7e7; line-height: 1.75; }
.report-glimpse, .report-surface { background: var(--blue-panel); border-color: #436b8b; padding: 30px; }
.report-label, .report-topline { font-size: var(--type-small); color: #b6e5ff; }
.report-metrics dt { font-size: var(--type-small); color: #c6dbea; }
.report-metrics dd { font-size: 42px; color: #a2dfff; }
.report-insight { border-color: #426d8f; }
.report-insight strong { font-size: var(--type-ui); color: #a2dfff; }
.report-insight p { font-size: var(--type-body); color: #e0edf7; }
.report-note { font-size: var(--type-small) !important; color: #b7ccdf !important; }
.report-tabs button, .report-table-wrap table, .report-table-wrap caption, .funnel-row > div:first-child { font-size: var(--type-ui); }
.report-table-wrap thead { font-size: var(--type-small); }
.intro { max-width: 850px; padding-block: 80px 45px; }
.intro > div { max-width: 720px; }
.large-copy { font-size: 24px; color: #e0edf7; }
.intro p + p { font-size: var(--type-body); color: #c1d4e4; line-height: 1.8; }
.section-heading > p { font-size: var(--type-lead); color: #bfd3e5; line-height: 1.7; }
.workspace, .workspace-main { background: #092139; border-color: #3c607e; }
.workspace-sidebar { background: #061a2c; border-color: #2f5270; }
.workspace-title h2 { font-size: 30px; }
.workspace-toolbar, .demo-label, .source-item small, .result-footer, .workflow-footer,
.mini-title, .mini-title span:last-child, .context-row div > span, .message-note, .message-steps,
.preview-caption, .channel-preview span, .follow-row small, .follow-row > span { font-size: var(--type-small); color: #bfd5e7; }
.workspace-toolbar, .workflow-footer { height: auto; min-height: 54px; padding-block: 12px; gap: 14px; flex-wrap: wrap; }
.flow-tabs button { font-size: var(--type-ui); line-height: 1.5; padding-block: 12px; color: #bcd2e5; }
.flow-tabs button[aria-selected="true"] { color: #b5e7ff; border-color: #83d4ff; }
.source-item, .channel-preview { background: #10324d; border-color: #3a6686; color: #e1f0fb; font-size: var(--type-ui); }
.source-item small { display: block; margin-top: 3px; }
.signal-source { width: 42%; }
.audience-result h3, .channel-preview strong { font-size: 19px; }
.audience-result p, .follow-row strong, .message-example p { font-size: var(--type-ui); color: #c0d5e6; }
.service-menu { grid-template-columns: repeat(3, 1fr); gap: 8px; border: 0; margin-bottom: 5px; }
.service-menu button { font-size: var(--type-ui); min-height: 60px; border: 1px solid #315574; border-radius: 8px; background: #0a2136; color: #bfd5e7; padding: 14px 18px; }
.service-menu button[aria-selected="true"] { background: #164c78; border-color: #83d4ff; color: #fff; box-shadow: inset 0 -3px 0 #83d4ff; }
.service-menu button:hover { color: #fff; background: #103553; }
.service-detail { background: var(--blue-panel); border-color: #3c6584; padding: 38px; gap: 0 38px; }
.detail-title { color: #b3e3ff; font-size: var(--type-small); }
.service-detail h3 { font-size: 34px; line-height: 1.2; }
.service-detail > p, .service-subdetails p, .operations p { font-size: var(--type-body); color: #c5d9e8; line-height: 1.75; }
.service-subdetails { border-color: #3c6584; padding-left: 30px; }
.service-subdetails h4, .operations h4 { font-size: 20px; line-height: 1.4; }
.channel-list > span { font-size: var(--type-small); background: #173f5f; border-color: #47728f; color: #d5edfc; }
.operations > div:first-child > p { font-size: var(--type-small); color: #a9d7f4; }
.technology-section { background: var(--blue-band); border-block: 1px solid #2d526f; padding-block: 90px 50px; }
.technology-card { background: var(--blue-panel); border-color: #3b6585; padding: 32px 30px 0; }
.technology-card.sonar { background: #103650; }
.technology-card > p { font-size: var(--type-body); color: #c7daea; min-height: 0; line-height: 1.75; }
.technology-card h3 { font-size: 40px; line-height: 1.13; }
.tech-heading { flex-wrap: wrap; row-gap: 12px; }
.tech-category { font-size: var(--type-small); color: #adddff; }
.cue-visual, .sonar-visual { background: #071d30; border-color: #3b6585; min-height: 300px; }
.context-row strong { font-size: var(--type-ui); color: #e1f0fb; }
.context-row { padding-block: 16px; border-color: #315574; }
.message-example strong { font-size: var(--type-body); }
.message-steps { flex-wrap: wrap; row-gap: 12px; }
.technology-note { font-size: var(--type-ui); color: #bfd5e7; line-height: 1.8; max-width: 900px; margin-inline: auto; }
.packages-heading > p { font-size: var(--type-body); color: #c2d6e6; }
.package-grid { gap: 22px; }
.package-card { background: #0b243c; border-color: #365d7a; padding: 30px 26px; }
.package-card:nth-child(2) { background: #0d2f4e; }
.package-partnership { background: var(--blue-feature); border-color: #70beec; box-shadow: inset 0 3px 0 #83d4ff; }
.package-step, .package-step > span:first-child, .package-tag { font-size: var(--type-small); }
.package-step { flex-wrap: wrap; color: #a9d9f7; margin-bottom: 24px; }
.package-tag { margin-left: 0; color: #d9f2ff; border-color: #608eaf; padding: 4px 7px; }
.package-card h3 { font-size: 34px; min-height: 78px; }
.package-description { font-size: var(--type-body); line-height: 1.7; color: #c9dce9; min-height: 124px; max-width: 38ch; }
.package-price { font-size: 42px; letter-spacing: -.035em; }
.price-range { font-size: 26px; margin-inline: 2px; color: #b7d1e5; }
.price-period { font-size: 19px; color: #c5daeb; }
.package-cadence { font-size: var(--type-small); color: #bfd3e4; min-height: 44px; }
.package-condition { font-size: var(--type-ui); color: #b5e7ff; border-color: #426986; min-height: 82px; }
.package-condition span { color: #c7ddeb; }
.package-features { font-size: var(--type-ui); color: #e0edf7; line-height: 1.75; }
.package-features li { padding-left: 23px; }
.package-features li:before { font-size: var(--type-ui); color: #9dddff; }
.package-button { font-size: var(--type-ui); white-space: normal; min-height: 50px; }
.package-addon { background: #092136; border-color: #375f7e; }
.package-addon .eyebrow { font-size: var(--type-small); color: #a3dcff; }
.package-addon h3 { font-size: 22px; line-height: 1.4; }
.package-addon > p { font-size: var(--type-ui); color: #c2d6e6; }
.addon-price .text-link, .package-footnote .text-link { font-size: var(--type-ui); }
.package-footnote p { font-size: var(--type-small); color: #b1c9dd; }
.package-details > div > p:last-child, .package-faqs details > div { font-size: var(--type-body); color: #bfd5e6; }
.package-faqs summary { font-size: 19px; }
.steps p { font-size: var(--type-body); color: #bfd4e5; min-height: 0; line-height: 1.75; }
.steps article { border-color: #4c7a9d; }
.step-number { font-size: var(--type-ui); color: #9dddff; }
.step-footer { font-size: var(--type-ui); color: #a8dfff; }
.onboarding span, .onboarding p { font-size: var(--type-small); color: #bbd1e3; }
.future { background: #0a263d; padding: 30px; border: 1px solid #315574; border-radius: 12px; }
.future p { font-size: var(--type-ui); color: #bcd3e4; }
.future h3 { font-size: 22px; }
.coming-soon { font-size: var(--type-small); color: #b6e6ff; background: #163f5b; border-color: #4b7390; }
.contact { background: #0c2c48; border: 1px solid #375f7e; border-radius: 16px; padding: 80px 40px; margin-block: 80px; }
.contact p, .page-closing p { font-size: var(--type-lead); color: #c7dbeb; }
.breadcrumbs { font-size: var(--type-small); color: #b1c9dd; }
.breadcrumbs [aria-current] { color: #d8edfc; }
.page-hero { position: relative; background: var(--blue-band); box-shadow: 0 0 0 100vmax var(--blue-band); clip-path: inset(0 -100vmax); border-color: #315574; }
.page-intro { font-size: 22px; line-height: 1.75; color: #c8dceb; max-width: 64ch; }
.page-outline > p { font-size: var(--type-small); color: #a4deff; }
.page-outline > a { font-size: var(--type-ui); color: #bfd4e6; border-color: #345e7d; padding: 11px 16px; }
.page-outline > a:hover { background: #123652; color: #e4f4ff; }
.copy-section h2 { font-size: 40px; color: #dfF2ff; }
.copy-section p, .copy-section li, .definition-list dd { font-size: var(--type-body); line-height: 1.8; color: #c2d5e6; }
.definition-list dt { font-size: 21px; color: #b0e1ff; }
.definition-list dd { border-color: #2e526c; }
.page-link-list strong, .home-insights .page-link-list strong { font-size: 23px; }
.page-link-list > a > span:first-child > span { font-size: var(--type-body); color: #bcd2e4; }
.page-link-list > a { border-color: #315574; }
.faq summary { font-size: 20px; color: #d2e9fa; }
.related-pages > div > a { font-size: var(--type-body); border-color: #3c6888; }
.page-closing { background: var(--blue-band); padding-inline: 28px; border: 1px solid #315574; border-radius: 16px; margin-block: 50px; }
.article-byline, .timing-row span { font-size: var(--type-ui); color: #b8cfe2; }
.cue-heading-name { color: #9dddff; }
.cue-context-grid { background: #0d304d; border-color: #426e8f; }
.cue-context-grid > div { padding: 30px 26px; border-color: #426e8f; }
.cue-context-grid > div:nth-child(2), .cue-context-grid > div:nth-child(3) { background: #123b5c; }
.cue-context-number { font-size: var(--type-small); color: #a6e0ff; }
.cue-context-grid h3 { font-size: 24px; color: #ecf7ff; }
.cue-context-grid p, .cue-context-example p { font-size: var(--type-body); color: #c9dfef; line-height: 1.75; }
.cue-context-example { background: #17496f; border: 1px solid #6caad0; border-radius: 12px; padding: 32px; }
.cue-context-example h3 { font-size: 34px; line-height: 1.2; color: #f1f8fe; }
.cue-context-example .cue-context-takeaway { font-size: var(--type-body); color: #c3edff; border-color: #5484a5; }
.cue-context-section .cue-context-scope { font-size: var(--type-small); color: #adc9df; }
.footer-directory { gap: 48px; }
.footer-directory h2 { font-size: 17px; font-weight: 700; color: #d8edfc; }
.footer-directory li { font-size: var(--type-ui); line-height: 1.65; margin-block: 14px; }
.footer-directory a { color: #b5cfe3; }
.footer-bottom > span, .footer-bottom > a:last-child { font-size: var(--type-small); color: #b8d1e5; }

@media (max-width: 1150px) {
  .container, .nav-wrap { width: calc(100% - 64px); }
  .resend-hero { grid-template-columns: 1.1fr 1fr; }
  .hero-copy > p { max-width: 38ch; }
  .package-grid { grid-template-columns: 1fr; }
  .package-card { display: grid; grid-template-columns: 1fr 1fr; gap: 0 36px; padding: 32px; }
  .package-step { grid-column: 1/-1; }
  .package-card h3 { grid-column: 1; min-height: 0; }
  .package-description { grid-column: 1; min-height: 0; }
  .package-pricing { grid-column: 2; grid-row: 2/4; margin-top: 0; }
  .package-condition { grid-column: 1; min-height: 0; }
  .package-features { grid-column: 2; grid-row: 4/6; margin-block: 24px 0; }
  .package-button { grid-column: 1; margin-top: 24px; }
  .package-cadence { min-height: 0; }
}
@media (max-width: 1050px) {
  .nav-cta { margin-left: auto; }
  #main-nav { display: none; position: absolute; top: 87px; left: 0; right: 0; margin: 0; padding: 20px 32px; background: #0a233a; border-bottom: 1px solid #426d8f; flex-direction: column; align-items: stretch; gap: 2px; font-size: 18px; }
  #main-nav.is-open { display: flex; }
  #main-nav a { padding: 12px 10px; }
  .menu-toggle { display: flex; width: 44px; height: 44px; flex-direction: column; justify-content: center; align-items: center; gap: 6px; background: transparent; border: 1px solid #3d6380; border-radius: 7px; padding: 8px; }
  .menu-toggle span { height: 1px; width: 22px; background: #e8f5ff; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .signal-caption { flex-direction: column; gap: 7px; }
  .signal-caption span + span { border: 0; padding-left: 0; }
  .page-layout { grid-template-columns: 195px minmax(0, 1fr); gap: 35px; }
  .cue-context-grid { grid-template-columns: 1fr; }
  .cue-context-grid > div { border-right: 0; border-bottom: 1px solid #426e8f; }
  .cue-context-grid > div:nth-last-child(2) { border-bottom: 1px solid #426e8f; }
  .cue-context-grid > div:last-child { border-bottom: 0; }
}
@media (max-width: 800px) {
  .container, .nav-wrap { width: calc(100% - 40px); }
  .site-header { height: 80px; }
  #main-nav { top: 79px; padding-inline: 20px; }
  .resend-hero { grid-template-columns: 1fr; min-height: 0; padding-block: 60px 40px; }
  .resend-hero h1 { font-size: clamp(46px, 8.8vw, 68px); max-width: 680px; }
  .hero-copy > p { max-width: 55ch; font-size: var(--type-lead); }
  .hero-actions { flex-direction: row; align-items: center; flex-wrap: wrap; }
  .hero-art.signal-art { width: min(500px, 100%); margin: 20px auto 0; }
  .signal-caption { flex-direction: row; gap: 12px; }
  .signal-caption span + span { border-left: 1px solid #315574; padding-left: 12px; }
  .featured-services { grid-template-columns: 1fr; gap: 38px; }
  .featured-services h2 br { display: none; }
  .featured-services article > p:not(.eyebrow) { max-width: 60ch; }
  .report-intro { grid-template-columns: 1fr; gap: 32px; padding-block: 65px 35px; }
  .section-heading > p { font-size: var(--type-body); }
  .service-menu { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; overflow: visible; }
  .service-menu button { white-space: normal; text-align: center; padding: 12px; font-size: var(--type-ui); }
  .service-detail { display: block; padding: 28px; }
  .service-subdetails { border-left: 0; border-top: 1px solid #426986; margin-top: 28px; padding: 25px 0 0; }
  .service-detail > p { max-width: 65ch; }
  .technology-grid { grid-template-columns: 1fr; max-width: 640px; }
  .technology-card > p { min-height: 0; }
  .page-layout { grid-template-columns: 1fr; gap: 40px; }
  .page-outline { position: static; max-height: none; }
  .page-outline > a { padding: 8px 12px; }
  .page-intro { font-size: var(--type-lead); }
  .footer-directory { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 600px) {
  .package-card { display: flex; padding: 28px 24px; }
  .package-card h3 { font-size: 34px; min-height: 0; }
  .package-description { min-height: 0; }
  .package-pricing { margin-top: 28px; }
  .package-condition { min-height: 0; }
  .package-features { margin-block: 25px; }
  .package-button { margin-top: 0; }
  .package-addon { display: block; padding: 26px 24px; }
  .package-addon > p { margin-top: 20px; }
  .addon-price { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; }
  .addon-price .text-link { white-space: normal; }
}
@media (max-width: 520px) {
  .nav-wrap { gap: 10px; }
  .nav-cta { font-size: var(--type-small); padding: 10px 12px; gap: 8px; min-height: 44px; }
  .nav-cta svg { display: none; }
  .resend-hero { padding-top: 45px; }
  .resend-hero h1 { font-size: clamp(40px, 10.5vw, 55px); }
  .hero-copy > p { font-size: var(--type-body); }
  .assessment-link { font-size: 13px; gap: 8px; }
  .hero-actions { gap: 20px; }
  .hero-art.signal-art { width: 100%; margin: 20px auto 0; }
  .cue-platform { left: 9%; right: 9%; }
  .cue-platform-definition { font-size: 13px; letter-spacing: .015em; }
  .signal-caption { font-size: 13px; gap: 10px; }
  .signal-caption span + span { padding-left: 10px; }
  .discipline-strip { font-size: var(--type-ui); gap: 14px 24px; padding-inline: 0; }
  .intro { padding-top: 60px; }
  .intro h2, .section-heading h2 { font-size: 40px; }
  .large-copy { font-size: 22px; }
  .report-glimpse, .report-surface { padding: 24px 20px; }
  .report-metrics { gap: 12px; }
  .report-metrics dd { font-size: 34px; }
  .report-metrics dt { font-size: 13px; }
  .workspace-content { padding-inline: 18px; }
  .workspace-title h2 { font-size: 26px; }
  .flow-tabs { gap: 10px; }
  .flow-tabs button { font-size: var(--type-small); max-width: 33%; }
  .signal-source { width: 100%; }
  .source-item, .source-item small { font-size: var(--type-small); }
  .workflow-footer { font-size: 13px; }
  .workflow-footer > span:first-child { max-width: none; }
  .service-menu button { font-size: var(--type-small); }
  .service-detail { padding: 26px 22px; }
  .service-detail h3 { font-size: 30px; }
  .technology-card { padding: 28px 24px 0; }
  .technology-card h3 { font-size: 36px; }
  .tech-heading { flex-direction: column; align-items: flex-start; }
  .cue-visual, .sonar-visual { padding-inline: 16px; }
  .mini-title { flex-wrap: wrap; gap: 8px; }
  .context-row { gap: 10px; }
  .context-row > svg { display: none; }
  .steps h3 { font-size: 30px; }
  .steps p { font-size: var(--type-body); }
  .future { padding: 25px 20px; }
  .contact { padding: 55px 22px; margin-block: 55px; }
  .contact h2 { font-size: 42px; }
  .contact p { font-size: var(--type-body); }
  .page-hero h1 { font-size: clamp(40px, 11vw, 50px); }
  .page-hero .cue-full-name { font-size: 8.7cqw; }
  .copy-section h2 { font-size: 34px; }
  .copy-section p, .copy-section li { font-size: var(--type-body); }
  .cue-context-grid > div { padding: 28px 24px; }
  .cue-context-example { padding: 28px 24px; }
  .cue-context-example h3 { font-size: 30px; }
  .footer-directory { grid-template-columns: 1fr; gap: 28px; }
  .footer-directory > div:last-child { grid-column: auto; }
  .footer-directory > div:last-child ul { display: block; }
  .footer-directory li { font-size: var(--type-ui); }
  .footer-bottom { gap: 22px; }
}
@media (max-width: 360px) { .nav-cta { display: none; } .menu-toggle { margin-left: auto; } }
