/* NS BIO application cards: separate products from cases for faster scanning. */
.application-showcase{
  margin:clamp(28px,5vw,46px) 0 !important;
  padding:clamp(22px,4vw,34px) !important;
  border:1px solid #eadde2;
  border-radius:18px !important;
  background:linear-gradient(180deg,#fff,#fbf8fa) !important;
  box-shadow:var(--shadow-soft);
}

.application-showcase > h3{
  margin:0 0 clamp(18px,3vw,26px) !important;
  padding:0 0 14px;
  border-bottom:1px solid #eadde2;
  color:#2d252a !important;
  font-size:clamp(1.25rem,2.5vw,1.55rem);
  line-height:1.35;
}

.application-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:clamp(18px,2.5vw,24px) !important;
  margin:0 !important;
}

.application-showcase .application-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:100%;
  padding:0 !important;
  overflow:hidden;
  border:1px solid #eadde2 !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 10px 28px rgba(46,30,38,0.07) !important;
}

.application-showcase .application-card:hover{
  transform:translateY(-2px) !important;
  border-color:#ddb4c5 !important;
  box-shadow:0 16px 34px rgba(70,34,50,0.11) !important;
}

.application-showcase .application-card h4{
  position:relative;
  margin:0 !important;
  padding:18px 20px 16px 38px;
  border-bottom:1px solid #f0e4e9;
  background:linear-gradient(90deg,#fff3f8,#fff 78%);
  color:#201a1e !important;
  font-size:1.18rem;
  font-weight:800;
  line-height:1.4;
}

.application-showcase .application-card h4::before{
  content:"";
  position:absolute;
  left:20px;
  top:50%;
  width:5px;
  height:1.35em;
  border-radius:999px;
  background:var(--primary-color);
  transform:translateY(-50%);
}

.application-card-group{
  padding:14px 20px 2px;
}

.application-card-group:last-child{
  padding-bottom:18px;
}

.application-card-group + .application-card-group{
  padding-top:10px;
}

.application-card-label{
  margin:0 0 8px !important;
  color:#756a70 !important;
  font-size:0.88rem !important;
  font-weight:700;
  letter-spacing:0.03em;
}

.application-link-list{
  display:grid;
  gap:7px;
  margin:0 !important;
  padding:0 !important;
  list-style:none;
}

.application-link-list li{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  min-width:0;
  margin:0 !important;
  padding:8px 12px !important;
  border:1px solid #f1e5ea;
  border-radius:9px;
  background:#fff;
  color:#3a3236;
  font-size:0.94rem !important;
  line-height:1.45 !important;
}

.application-link-list.case-list li{
  background:#fff8fb;
}

.application-showcase .application-link-list a,
.application-showcase .application-card p a{
  display:inline !important;
  width:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#30292d !important;
  font-weight:700;
  line-height:inherit !important;
  text-decoration:none;
}

.application-showcase .application-link-list.case-list a,
.application-showcase .application-card .case-link{
  color:var(--primary-dark) !important;
}

.application-showcase .application-link-list a:hover,
.application-showcase .application-link-list a:focus-visible{
  color:var(--primary-color) !important;
  text-decoration:underline;
}

.application-card .case-primary-link{
  display:block;
  color:inherit;
  text-decoration:none;
  border-radius:8px;
}

.application-card .case-primary-link h3{
  margin-top:12px;
}

.application-card .case-primary-link:hover h3,
.application-card .case-primary-link:focus-visible h3{
  text-decoration:underline;
}

.application-card .case-primary-link:focus-visible{
  outline:3px solid var(--primary-color);
  outline-offset:3px;
}

.application-link-list span{
  color:#756a70;
  font-size:0.86rem;
}

.application-showcase .cta-buttons{
  margin-top:clamp(20px,3vw,28px) !important;
}

@media (max-width:960px){
  .application-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:620px){
  .application-showcase{
    padding:18px !important;
  }

  .application-grid{
    grid-template-columns:1fr !important;
  }

  .application-showcase .application-card h4,
  .application-card-group{
    padding-inline:18px;
  }

  .application-showcase .application-card h4{
    padding-left:36px;
  }

  .application-showcase .application-card h4::before{
    left:18px;
  }
}

/* Design system rollout: technical content uses a calm, evidence-led hierarchy. */
.application-showcase{
  border-color:var(--border-soft);
  border-radius:var(--radius-lg) !important;
  background:#fff !important;
  box-shadow:var(--shadow-soft);
}

.application-showcase > h3{
  position:relative;
  padding-left:14px;
  border-bottom-color:var(--border-soft);
  color:#202124 !important;
}

.application-showcase > h3::before{
  content:"";
  position:absolute;
  left:0;
  top:0.08em;
  width:4px;
  height:1.08em;
  border-radius:2px;
  background:var(--tech-blue);
}

.application-showcase .application-card{
  border-color:var(--border-soft) !important;
  border-radius:var(--radius-md) !important;
  box-shadow:var(--shadow-soft) !important;
}

.application-showcase .application-card:hover{
  border-color:#b7d2e1 !important;
  box-shadow:var(--shadow-raised) !important;
}

.application-showcase .application-card h4{
  border-bottom-color:var(--border-soft);
  background:#f7f8f7;
  color:#202124 !important;
}

.application-showcase .application-card h4::before{
  background:var(--tech-blue);
}

.application-card-label,
.application-link-list span{
  color:#5f6368 !important;
}

.application-link-list li{
  border-color:var(--border-soft);
  border-radius:var(--radius-md);
  background:#fff;
  color:#35393d;
}

.application-link-list.case-list li{
  border-color:#d6e7da;
  background:#f4faf5;
}

.application-showcase .application-link-list a,
.application-showcase .application-card p a{
  color:#1d5f87 !important;
}

.application-showcase .application-link-list.case-list a,
.application-showcase .application-card .case-link{
  color:#2f6f39 !important;
}

.application-showcase .application-link-list a:hover,
.application-showcase .application-link-list a:focus-visible{
  color:#155478 !important;
}

.patent-highlight{
  border-color:#c8dce8 !important;
  border-left-color:var(--tech-blue) !important;
  border-radius:var(--radius-md);
  background:#f3f8fb !important;
  color:#35474f;
}

.patent-highlight a{
  color:#1d5f87 !important;
}

.flow-container{
  padding:clamp(20px,3vw,28px);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  background:#fff;
  box-shadow:var(--shadow-soft);
}

.flow-container > h3{
  position:relative;
  padding-left:14px;
  color:#202124;
}

.flow-container > h3::before{
  content:"";
  position:absolute;
  left:0;
  top:0.1em;
  width:4px;
  height:1.05em;
  border-radius:2px;
  background:var(--tech-blue);
}

.flow-step{
  border-color:var(--border-soft);
  border-left-color:var(--tech-blue);
  border-radius:var(--radius-md);
  background:#f7f8f7;
  box-shadow:none;
}

.flow-step::before{
  background:var(--tech-blue);
  box-shadow:none;
}

#download .download-card{
  border-color:var(--border-soft);
  background:#fff;
}

#download .download-card h3{
  color:#202124;
}

#download a.download-link[href$=".pdf" i]{
  border-color:var(--tech-blue) !important;
  background:var(--tech-blue) !important;
}

#download a.download-link[href$=".pdf" i]:hover,
#download a.download-link[href$=".pdf" i]:focus-visible{
  border-color:#155478 !important;
  background:#155478 !important;
}
