.osn-home { --oh-copy:#415983; --oh-line:#dce8f0; --oh-cyan:#12cce6; color:#0c1220; }
.osn-home h2 { font-size:42px; line-height:1.1; font-weight:700; margin-bottom:20px; }
.osn-home h3 { font-size:17px; line-height:1.4; color:#103776; }
.osn-home p { font-size:16px; line-height:1.6; color:var(--oh-copy); }
.osn-home .osn-button { min-height:50px; padding:13px 24px; font-size:14px; background:var(--oh-cyan); }
.osn-home .osn-button:hover { background:#5edff0; }
.osn-home .osn-link { font-size:14px; gap:18px; color:#006e8d!important; }
.osn-home .osn-eyebrow { color:#007e9c; font-size:10px; margin-bottom:12px!important; }
.oh-hero { position:relative; isolation:isolate; overflow:hidden; color:#fff; background:#101b22; }
.oh-hero-art { position:absolute; inset:0; z-index:-2; }
.oh-hero-art img { width:100%; height:100%; object-fit:cover; object-position:center; }
.oh-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#0a141b38,#0a141b18 48%,transparent 75%); }
.oh-hero-inner { padding-block:var(--osn-hero-space) 48px; }
.oh-hero-copy { width:64%; max-width:720px; }
.oh-hero h1 { font-size:44px; line-height:1.1; font-weight:700; margin-bottom:16px; text-wrap:initial; }
.osn-home .oh-tagline { font-size:30px; line-height:1.3; color:#fff; margin-bottom:16px; }
.osn-home .oh-hero-description { max-width:550px; color:#edf2f5; font-size:16px; line-height:1.55; margin-bottom:0; }
.oh-hero .osn-actions { margin-top:26px; gap:18px 30px; }
.oh-hero .osn-link { color:#37d6eb!important; }
.oh-intro { padding-block:32px 28px; }
.oh-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.oh-intro-grid h2 { margin:0; }
.oh-prose { border-left:1px solid var(--oh-line); padding-left:48px; }
.oh-prose p { margin-bottom:14px; font-size:15px; line-height:1.6; }
.oh-prose p:last-child { margin-bottom:0; }
.oh-perspectives { display:grid; grid-template-columns:1fr 1fr 1fr auto; align-items:center; gap:28px; margin-top:24px; }
.oh-perspectives>div { display:flex; align-items:center; gap:28px; }
.oh-perspectives>div+div { border-left:1px solid var(--oh-line); padding-left:32px; }
.oh-perspectives .bi { color:#103e87; font-size:60px; line-height:1; flex-shrink:0; }
.oh-perspectives h3 { margin:0; font-size:17px; }
.oh-outline-icon { display:block; width:60px; height:60px; flex-shrink:0; background:#103e87; mask:var(--oh-icon) center/contain no-repeat; }
.oh-icon-stethoscope { --oh-icon:url('/assets/img/osn/icons/stethoscope.svg'); }
.oh-icon-brain { --oh-icon:url('/assets/img/osn/icons/brain.svg'); }
.oh-icon-flask { --oh-icon:url('/assets/img/osn/icons/flask-conical.svg'); width:38px; height:44px; }
.oh-capabilities { padding-block:44px; background:#f3f9fc; }
.oh-capabilities-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; align-items:center; }
.oh-capabilities-copy { position:relative; z-index:1; }
.oh-capabilities-copy>h2 { max-width:550px; margin-bottom:12px; }
.osn-home .oh-capabilities-lead { font-size:18px; line-height:1.5; max-width:520px; margin-bottom:32px; }
.oh-capability-list { list-style:none; padding:0; margin:0 0 22px; display:grid; gap:30px; }
.oh-capability-list li { display:grid; grid-template-columns:52px 54px minmax(0,1fr); gap:22px; align-items:start; }
.oh-number { font-size:36px; line-height:1.15; font-weight:400; color:#4576b3; border-right:1px solid #ccddeb; }
.oh-capability-list .bi { color:#143e8b; font-size:38px; line-height:1.2; }
.oh-capability-list h3 { font-size:18px; margin:0 0 6px; }
.oh-capability-list p { font-size:16px; line-height:1.5; margin:0; max-width:330px; }
.oh-capabilities-art { min-width:0; margin:-36px -28px -36px -16px; }
.oh-capabilities-art img { width:100%; height:auto; }
.oh-portfolio { padding-block:40px; }
.oh-portfolio-heading { display:grid; grid-template-columns:2fr 1fr; gap:48px; align-items:center; }
.oh-portfolio-heading h2 { font-size:32px; margin:0; }
.oh-portfolio-heading>p { border-left:1px solid var(--oh-line); padding-left:36px; font-size:14px; line-height:1.5; margin:0; }
.oh-preview-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:24px; }
.oh-preview { min-width:0; }
.oh-preview>a { display:block; height:100%; }
.oh-preview-art { height:200px; margin:0 0 16px; }
.oh-preview-art img { width:100%; height:100%; object-fit:contain; }
.oh-preview-copy { position:relative; padding-right:24px; }
.oh-preview+.oh-preview .oh-preview-copy { border-left:1px solid var(--oh-line); padding-left:20px; }
.oh-preview h3 { font-size:18px; margin:0 0 6px; }
.oh-preview p { font-size:13px; line-height:1.5; margin:0; }
.oh-preview-copy>.bi { position:absolute; right:0; bottom:2px; color:#007e9c; font-size:18px; }
.oh-preview>a:hover h3 { text-decoration:underline; text-underline-offset:4px; color:#007e9c; }
.oh-portfolio-more { display:flex; justify-content:flex-end; margin-top:24px; }
.oh-portfolio-more .osn-link { font-weight:500; }
.oh-cta { position:relative; isolation:isolate; padding-block:36px; color:white; background:#0d1921 url('/assets/img/osn/about-v6-hero-1920.webp') center/cover no-repeat; }
.oh-cta::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#09141b88,#09141b44 65%,transparent); z-index:-1; }
.oh-cta-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:42px; align-items:end; }
.osn-home .oh-cta h2 { color:white; font-size:36px; line-height:1.1; margin-bottom:12px; width:calc(100% + 150px); max-width:600px; }
.osn-home .oh-cta p { color:#edf4f8; font-size:16px; line-height:1.5; margin-bottom:18px; }
.oh-partner-types { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; margin:0 0 28px; padding:0; max-width:400px; }
.oh-partner-types li { display:flex; flex-direction:column; align-items:center; gap:10px; padding-inline:16px; font-size:15px; line-height:1.4; text-align:center; }
.oh-partner-types li+li { border-left:1px solid #b4d9e36b; }
.oh-partner-types .bi { color:#fff; font-size:38px; line-height:1.1; }
@media(max-width:1220px) { .oh-capabilities-art { margin-right:0; } }
@media(max-width:1100px) {
  .oh-hero-copy { width:61%; }
  .oh-hero h1 { font-size:38px; }
  .oh-prose { padding-left:32px; }
  .oh-intro-grid { gap:32px; }
  .oh-perspectives { gap:20px; }
  .oh-perspectives>div { gap:20px; }
  .oh-perspectives>div+div { padding-left:24px; }
  .oh-capability-list li { gap:16px; grid-template-columns:46px 42px minmax(0,1fr); }
  .oh-capability-list .bi { font-size:34px; }
  .oh-icon-flask { width:34px; height:40px; }
  .oh-preview-grid { gap:18px; }
  .oh-preview-art { height:190px; }
  .oh-portfolio-heading { gap:32px; }
}
@media(max-width:960px) {
  .oh-hero-copy { width:64%; }
  .oh-hero h1 { font-size:34px; }
  .oh-hero::before { background:linear-gradient(90deg,#0a141bdb,#0a141b77 57%,#0a141b00); }
  .osn-home h2 { font-size:30px; }
  .osn-home .oh-tagline { font-size:24px; }
  .oh-perspectives { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:24px; }
  .oh-perspectives>.osn-link { grid-column:1/-1; }
  .oh-capabilities-grid { grid-template-columns:1.1fr .9fr; gap:16px; }
  .oh-capabilities-art { margin:0; }
  .oh-capability-list li { gap:12px; grid-template-columns:34px 32px minmax(0,1fr); }
  .oh-number { font-size:28px; }
  .oh-capability-list .bi { font-size:28px; }
  .oh-icon-flask { width:28px; height:34px; }
  .oh-capability-list h3 { font-size:15px; }
  .oh-capability-list p { font-size:14px; }
  .oh-portfolio-heading { grid-template-columns:1fr 1fr; gap:32px; }
  .oh-portfolio-heading h2 { font-size:28px; }
  .oh-preview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
  .oh-preview-art { height:220px; }
  .oh-preview:nth-child(3) .oh-preview-copy { border-left:0; padding-left:0; }
  .oh-cta-grid { grid-template-columns:1fr 1fr; gap:30px; }
  .osn-home .oh-cta h2 { font-size:28px; width:auto; }
  .oh-partner-types li { padding-inline:8px; font-size:13px; }
}
@media(max-width:760px) {
  .oh-hero { display:flex; flex-direction:column; }
  .oh-hero-inner { order:1; padding-bottom:0; }
  .oh-hero-copy { width:100%; max-width:560px; }
  .oh-hero h1 { text-wrap:initial; }
  .oh-hero-art { position:relative; inset:auto; order:2; height:260px; margin-top:24px; z-index:0; }
  .oh-hero-art img { object-position:right center; }
  .oh-hero::before { display:none; }
  .oh-hero .osn-actions { gap:16px 24px; }
  .oh-intro { padding-block:36px; }
  .oh-intro-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .oh-prose { border:0; padding:0; }
  .oh-perspectives { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px 12px; margin-top:28px; }
  .oh-perspectives>div,.oh-perspectives>div+div { flex-direction:column; padding:0; gap:12px; text-align:center; }
  .oh-perspectives .bi { font-size:38px; }
  .oh-perspectives .oh-outline-icon { width:38px; height:38px; }
  .oh-perspectives h3 { font-size:14px; }
  .oh-perspectives>.osn-link { justify-self:start; }
  .oh-capabilities { padding-block:40px 32px; }
  .oh-capabilities-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .oh-capability-list li { grid-template-columns:40px 40px minmax(0,1fr); gap:16px; }
  .oh-capability-list h3 { font-size:16px; }
  .oh-capability-list p { font-size:15px; }
  .oh-capabilities-art { max-width:520px; margin:0 auto; }
  .oh-portfolio { padding-block:36px; }
  .oh-portfolio-heading { grid-template-columns:minmax(0,1fr); gap:18px; }
  .oh-portfolio-heading>p { border:0; padding:0; }
  .oh-preview-grid { gap:28px 20px; margin-top:20px; }
  .oh-preview-art { height:190px; }
  .oh-preview+.oh-preview .oh-preview-copy { padding-left:0; border-left:0; }
  .oh-preview h3 { font-size:18px; }
  .oh-preview-copy { padding-right:22px; }
  .oh-portfolio-more { justify-content:flex-start; margin-top:28px; }
  .oh-cta { padding-block:36px; }
  .oh-cta-grid { grid-template-columns:minmax(0,1fr); gap:30px; }
  .oh-cta::before { background:#09141bb3; }
  .oh-partner-types { margin:0; max-width:460px; width:100%; }
  .oh-partner-types li { font-size:14px; }
  .oh-cta br { display:none; }
}
@media(max-width:520px) {
  .oh-preview-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .oh-preview-art { height:235px; }
}
@media(max-width:440px) {
  .oh-hero h1 { font-size:30px; }
  .osn-home h2 { font-size:28px; }
  .oh-portfolio-heading h2 { font-size:28px; }
  .osn-home .oh-tagline { font-size:23px; }
  .osn-home .osn-button { padding-inline:18px; gap:18px; font-size:13px; }
}
