/* CutoverGrid content adapters for the shared OncogenTime design system. */
:root { --background: var(--bg); --surface: #fff; --surface-soft: #eef5ff; --surface-strong: #e5eefe; --text-secondary: var(--muted); --text-soft: #7d8ca4; --primary-soft: #edf2ff; --border-strong: #c5d3e9; --radius-large: 8px; --shadow-large: 0 26px 70px rgba(15,35,75,.14); }
body { font-weight: 500; }
h1, h2, h3, h4 { font-weight: 800; }
p, li, label, input, select, textarea { font-weight: 500; }
[hidden] { display: none !important; }
.site-header { height: auto; }
.site-header .brand { flex: 0 0 auto; font-size: 1.05rem; font-weight: 900; }
.cutover-brand-icon { border-radius: 0; box-shadow: none; object-fit: contain; }
.site-nav { margin-left: auto; font-weight: 750; gap: clamp(.8rem, 1.6vw, 1.55rem); }
.site-nav a { position: relative; white-space: nowrap; }
.site-nav a[aria-current="page"] { color: #fff; box-shadow: 0 2px 0 var(--cyan); }
.nav-mobile-start { display: none; }
.nav-actions { flex: 0 0 auto; }
.btn, .button { font-weight: 800; }
.button-primary { color: #fff; background: linear-gradient(135deg,var(--primary),var(--primary-2)); box-shadow: 0 12px 26px rgba(50,92,255,.2); }
.button-secondary { color: var(--primary); background: #fff; border-color: var(--border); }
.reference-home .hero-grid { min-height: 0; }
.reference-home .hero-content h1 { font-weight: 850; letter-spacing: -.035em; }
.reference-home .hero h1, .page-hero h1, .page-hero h2 { color: #fff; }
.reference-home .dashboard-shell { max-width: none; padding: 0; color: #fff; transform: none; }
.reference-home .dashboard-content { min-width: 0; }
.reference-home .dashboard-shell .tag { color: #a9edf6; background: rgba(22,199,232,.13); border: 0; }
.reference-home .dashboard-shell .metric strong { color: #fff; }
.reference-home .dash-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
.reference-home .dashboard-heading h2 { font-size: 1rem; }
.reference-home .metric-card { height: auto; min-height: 0; }
.reference-home .metric-card > strong { display: block; font-size: 1.65rem; font-weight: 850; }
.reference-home .metric-card > span { color: var(--muted); font-size: .85rem; }
.reference-home .trust-item { display: flex; align-items: center; gap: .5rem; font-weight: 750; }
.trust-item > svg { width: 25px; height: 25px; flex: 0 0 auto; color: var(--primary); }
.inline-vector { display: inline-grid; width: 27px; height: 27px; place-items: center; color: var(--cyan); }
.inline-vector svg { width: 22px; height: 22px; }
.vector-icon { display: inline-grid; width: 38px; height: 38px; padding: 7px; flex: 0 0 auto; place-items: center; border-radius: 7px; color: #3d60f8; background: linear-gradient(135deg,#d9f6fc,#e9e0ff); box-shadow: 0 10px 22px rgba(50,92,255,.1); }
.vector-icon svg { width: 24px; height: 24px; }
.feature-icon > svg { width: 28px; height: 28px; }
.hero-signal-board .signal-board-grid > span > svg { width: 26px; height: 26px; flex: 0 0 auto; color: #75dff2; }
.company-identity .signal-board-top { display: block; }
.company-identity .signal-board-top > span { display: block; margin-bottom: .7rem; }
.company-identity .signal-board-top > strong { display: block; font-size: 1.3rem; line-height: 1.4; }
.company-story { margin-top: 1.1rem; color: #485c79; line-height: 1.85; }
.company-home-board { width: 100%; }
.company-values { display: grid; gap: 1rem; }
.company-values > div { position: relative; padding: 1.1rem 1.1rem 1.1rem 3.4rem; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; background: rgba(255,255,255,.06); }
.company-values > div > span { position: absolute; left: 1rem; top: 1.2rem; color: #71dff0; font-size: .8rem; font-weight: 800; }
.company-values strong { color: #fff; font-size: 1rem; }
.company-values p { margin: .4rem 0 0; color: #c1cfe4; font-size: .9rem; }
.company-details > div + div { margin-top: 1.4rem; padding-top: 1.4rem; border-top: 1px solid var(--border); }
.company-details > div > span { display: block; margin-bottom: .5rem; color: #64728a; font-size: .75rem; font-weight: 800; text-transform: uppercase; }
.company-details strong, .company-details address { color: var(--text); font-size: 1.05rem; font-weight: 700; font-style: normal; line-height: 1.7; }
.company-details a { color: var(--primary); font-weight: 750; overflow-wrap: anywhere; }
.reference-about .section-eyebrow { font-weight: 850; }
.reference-home .dark-band .info-card { color: var(--text); }
.reference-home .dark-band .claim-track-badge { margin-top: 0; }
.reference-home .roadmap-stage > .vector-icon { margin-bottom: 1rem; }
.reference-home .pricing-card > .vector-icon { margin-bottom: 1rem; }
.reference-home .pricing-card .form-note { margin: 1rem 0 0; font-size: .8rem; }
.reference-home .pricing-card .popular-badge { position: static; display: inline-flex; width: fit-content; margin-bottom: .8rem; padding: .25rem .55rem; color: var(--primary); background: #edf2ff; border-radius: 99px; font-size: .72rem; font-weight: 850; }
.reference-home .pricing-grid article { display: block; min-height: 0; }
.reference-home .contact-point .vector-icon { width: 40px; height: 40px; }
.consent-field { align-items: flex-start; margin: 1.2rem 0; color: #526582; font-size: .82rem; line-height: 1.7; }
.consent-field a { color: var(--primary); font-weight: 750; text-decoration: underline; }
.form-honeypot { display: none !important; }
.form-card .form-note { color: #61728c; font-size: .8rem; font-weight: 500; line-height: 1.7; }
.form-status { color: #526582; font-size: .85rem; font-weight: 600; }
.form-card button:disabled, .demo-form button:disabled { opacity: .65; cursor: wait; }
.footer-grid { grid-template-columns: 1.25fr .75fr .75fr .8fr 1.5fr; }
.footer-brand { min-width: 0; }
.footer-brand .brand { font-weight: 900; }
.footer-brand p, .footer-col p, .footer-col a { font-weight: 550; }
.footer-col h2 { font-size: .9rem; font-weight: 850; }
.footer-office address { display: grid; gap: .85rem; font-size: .85rem; font-style: normal; line-height: 1.7; }
.footer-company-name { color: #fff; font-size: .92rem; font-weight: 750; line-height: 1.6; }
.footer-office address > span { color: #c3cee0; font-weight: 550; }
.footer-office address a { overflow-wrap: anywhere; }
.footer-tagline { color: #c3cee0; font-size: .85rem; }
.footer-bottom { gap: 1rem; flex-wrap: wrap; }
.footer-legal-links { display: flex; flex-wrap: wrap; gap: 1rem; font-weight: 600; }
.subhero { color: #fff; border-color: transparent; background: linear-gradient(135deg,#061936,#09234b); }
.subhero h1, .subhero h2 { color: #fff; }
.subhero .lead, .subhero > .container > p, .subhero .breadcrumb, .subhero .breadcrumbs { color: #c5d2e7; }
.subhero .eyebrow { color: #75dff2; }
.subhero .button-secondary { color: #fff; border-color: #ffffff55; background: #ffffff14; }
.subhero .report-shell { color: var(--text); background: #fff; }
.cta-section { color: #fff; background: linear-gradient(135deg,#325cff,#6b4dff); }
.section-dark:not(.dark-band) { color: #fff; background: linear-gradient(135deg,#061936,#0b2448); }
.section-dark:not(.dark-band) h2, .section-dark:not(.dark-band) h3 { color: #fff; }
.info-card p, .feature-row p, .large-copy, .legal-content p, .legal-content li { font-weight: 500; }
.demo-form-shell, .scout-form, .thank-you-card { background: #fff; border-color: var(--border); }
.page-contact .contact-hero { color: #fff; }
@media (min-width: 861px) and (max-width: 1050px) { .site-nav { gap: .7rem; font-size: .76rem; } .nav-wrap { gap: .8rem; } .site-header .btn { padding: .7rem .85rem; font-size: .8rem; } }
@media (max-width: 1000px) { .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .footer-office { grid-column: 1 / -1; max-width: 470px; } }
@media (max-width: 860px) { .nav-mobile-start { display: block; color: #b8d2ff; font-weight: 850; } .site-nav a[aria-current="page"] { color: #fff; background: #ffffff14; box-shadow: none; } .site-nav { margin-left: 0; } .site-nav.is-open { max-height: calc(100dvh - 100px); overflow-y: auto; } .reference-home .dashboard-grid { grid-template-columns: 1fr; } .reference-home .dash-row { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem 1rem; } .footer-brand, .footer-office { grid-column: 1 / -1; } .footer-office { max-width: 100%; } .company-identity .signal-board-grid { grid-template-columns: 1fr; } .reference-home .hero h1 { font-size: clamp(2.45rem,9vw,3.6rem); } .company-identity .signal-board-top > strong { font-size: 1.1rem; } }
