/* ============================================================
   优科生物官网 - 定制发酵原料开发服务页样式
   由 /service/styles.css 迁移而来，类名统一加 service 前缀，
   变量统一加 svc 前缀，避免与 global.css 及其他页面冲突。
   引入方式（需在 global.css 之后）：
   <link rel="stylesheet" href="/css/global.css">
   <link rel="stylesheet" href="/css/service.css">
   说明：导航与页脚样式由 global.css 提供，此处不包含。
   ============================================================ */

:root {
  --svc-green: #07883f;
  --svc-green-dark: #005a2c;
  --svc-green-deep: #003d26;
  --svc-lime: #a8cf45;
  --svc-ink: #17261e;
  --svc-muted: #66736b;
  --svc-soft: #f1f7f3;
  --svc-line: #dce9df;
  --svc-shadow: 0 18px 50px rgba(10, 70, 39, 0.10);
}

/* ---------- 页面基础（作用域限定，不覆盖全局） ---------- */
body.page-service {
  font-family: "Noto Sans SC", "Microsoft YaHei", Arial, sans-serif;
  line-height: 1.7;
}

.service-main {
  color: var(--svc-ink);
}

/* 覆盖全局 a 颜色/悬停行为，保持原设计 */
.service-breadcrumb a,
.service-breadcrumb a:hover { color: inherit; }
.service-text-link:hover { color: var(--svc-green); }
.service-button:hover { transform: translateY(-2px); }
.service-button--primary:hover { color: #123a1e; }
.service-button--ghost:hover { color: #fff; }
.service-button--outline:hover { color: var(--svc-green); }
.service-button--white:hover { color: var(--svc-green-dark); }

/* ---------- 首屏 Hero ---------- */
.service-hero {
  position: relative;
  isolation: isolate;
  background:
    linear-gradient(103deg, rgba(0, 50, 31, .98) 0%, rgba(0, 76, 43, .94) 43%, rgba(9, 111, 56, .55) 100%),
    url('../images/banner.jpg') center/cover;
  color: #fff;
  overflow: hidden;
}

.service-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image:
    linear-gradient(rgba(255, 255, 255, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .035) 1px, transparent 1px);
  background-size: 52px 52px;
}

.service-hero__glow {
  position: absolute;
  width: 570px;
  height: 570px;
  border: 1px solid rgba(255, 255, 255, .15);
  border-radius: 50%;
  right: -130px;
  top: -210px;
  box-shadow: 0 0 0 90px rgba(255, 255, 255, .025), 0 0 0 180px rgba(255, 255, 255, .018);
}

.service-hero__inner {
  min-height: 610px;
  display: grid;
  grid-template-columns: 1.35fr .75fr;
  align-items: center;
  gap: 90px;
  padding-block: 72px 110px;
}

.service-eyebrow {
  font-size: 12px;
  letter-spacing: 2.1px;
  color: #d8f0df;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 12px;
}

.service-eyebrow span {
  width: 34px;
  height: 2px;
  background: var(--svc-lime);
}

.service-hero h1 {
  font-size: 64px;
  line-height: 1.12;
  margin: 22px 0 24px;
  letter-spacing: 1px;
  font-weight: 600;
}

.service-hero h1 strong {
  color: #bce56e;
}

.service-hero__lead {
  font-size: 18px;
  line-height: 1.9;
  color: #e0eee5;
  max-width: 700px;
}

.service-hero__actions {
  display: flex;
  gap: 14px;
  margin: 35px 0 24px;
}

.service-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 50px;
  padding: 0 24px;
  border-radius: 9px;
  font-weight: 700;
  font-size: 15px;
  transition: .25s;
}

.service-button--primary {
  background: linear-gradient(135deg, #a9d550, #7ab634);
  color: #123a1e;
  box-shadow: 0 12px 30px rgba(150, 210, 65, .25);
}

.service-button--ghost {
  border: 1px solid rgba(255, 255, 255, .35);
  color: #fff;
  background: rgba(255, 255, 255, .05);
}

.service-button--outline {
  border: 1px solid var(--svc-green);
  color: var(--svc-green);
  margin-top: 20px;
}

.service-button--white {
  background: #fff;
  color: var(--svc-green-dark);
}

.service-hero__trust {
  display: flex;
  gap: 24px;
  color: #cde2d4;
  font-size: 13px;
}

.service-hero-panel {
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 24px;
  padding: 36px;
  backdrop-filter: blur(10px);
  box-shadow: 0 28px 70px rgba(0, 25, 13, .24);
}

.service-hero-panel__tag {
  display: inline-block;
  padding: 5px 10px;
  background: rgba(183, 219, 85, .16);
  color: #cde987;
  border-radius: 20px;
  font-size: 12px;
  margin: 0;
}

.service-hero-panel h2 {
  font-size: 29px;
  line-height: 1.45;
  margin: 14px 0 28px;
}

.service-hero-panel__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-block: 1px solid rgba(255, 255, 255, .18);
  padding: 20px 0;
  gap: 8px;
}

.service-hero-panel__stats div {
  display: flex;
  flex-direction: column;
}

.service-hero-panel__stats strong {
  font-size: 32px;
}

.service-hero-panel__stats sup {
  font-size: 12px;
  margin-left: 2px;
}

.service-hero-panel__stats span {
  font-size: 12px;
  color: #cfe0d5;
}

.service-mini-path {
  margin-top: 25px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11px;
  color: #d7e6dc;
}

.service-mini-path i {
  width: 8px;
  height: 8px;
  background: var(--svc-lime);
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(183, 219, 85, .13);
}

.service-hero__bottom {
  position: absolute;
  bottom: 0;
  inset-inline: 0;
  background: rgba(0, 36, 20, .44);
  border-top: 1px solid rgba(255, 255, 255, .1);
}

.service-hero__bottom .container {
  height: 64px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
}

.service-hero__bottom span {
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, .16);
  font-size: 14px;
  color: #d8e7dc;
}

.service-hero__bottom span:last-child {
  border: 0;
}

/* ---------- 面包屑 ---------- */
.service-breadcrumb {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-top: 30px;
  color: #89958e;
  font-size: 13px;
}

.service-breadcrumb b {
  color: var(--svc-ink);
  font-weight: 500;
}

/* ---------- 通用段落 ---------- */
.service-section {
  padding: 90px 0;
}

.service-section--soft {
  background: var(--svc-soft);
}

.service-section-kicker {
  color: var(--svc-green);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2px;
  margin: 0 0 12px;
}

.service-section-kicker:before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 2px;
  background: var(--svc-lime);
  vertical-align: middle;
  margin-right: 10px;
}

.service-section-copy h2,
.service-section-heading h2,
.service-patent-copy h2,
.service-delivery__copy h2,
.service-faq__intro h2 {
  font-size: 39px;
  line-height: 1.35;
  margin: 0 0 23px;
  letter-spacing: -1px;
}

.service-section-copy h2 strong {
  color: var(--svc-green);
}

.service-section-copy>p {
  color: var(--svc-muted);
  font-size: 16px;
}

/* ---------- 服务概述 ---------- */
.service-overview__grid {
  display: grid;
  grid-template-columns: 1fr .9fr;
  gap: 90px;
  align-items: center;
}

.service-fit-list {
  margin-top: 34px;
  display: grid;
  gap: 12px;
}

.service-fit-list div {
  display: grid;
  grid-template-columns: 54px 1fr;
  align-items: center;
  padding: 13px 0;
  border-top: 1px solid var(--svc-line);
}

.service-fit-list span {
  color: var(--svc-green);
  font-weight: 800;
  font-size: 13px;
}

.service-fit-list p {
  margin: 0;
  color: var(--svc-muted);
}

.service-fit-list b {
  color: var(--svc-ink);
  margin-right: 10px;
}

.service-system-card {
  background: linear-gradient(145deg, #fff, #edf6f0);
  border: 1px solid var(--svc-line);
  border-radius: 26px;
  padding: 28px 32px 22px;
  box-shadow: var(--svc-shadow);
}

.service-system-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--svc-line);
  padding-bottom: 18px;
}

.service-system-card__head span {
  font-size: 10px;
  letter-spacing: 1.8px;
  color: #91a098;
}

.service-system-card__head b {
  font-size: 15px;
}

.service-orbit {
  height: 365px;
  position: relative;
}

.service-orbit:before,
.service-orbit:after {
  content: "";
  position: absolute;
  inset: 63px 88px;
  border: 1px dashed #abd0b7;
  border-radius: 50%;
  transform: rotate(-8deg);
}

.service-orbit:after {
  inset: 95px 120px;
  border-style: solid;
  border-color: #d6e8dc;
}

.service-orbit__center {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 128px;
  height: 128px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: linear-gradient(145deg, var(--svc-green), var(--svc-green-dark));
  display: grid;
  place-items: center;
  text-align: center;
  color: #fff;
  box-shadow: 0 15px 30px rgba(7, 136, 63, .25);
  z-index: 2;
}

.service-orbit__item {
  position: absolute;
  background: #fff;
  border: 1px solid var(--svc-line);
  border-radius: 22px;
  padding: 7px 13px;
  font-size: 12px;
  color: var(--svc-green-dark);
  box-shadow: 0 6px 16px rgba(10, 80, 40, .08);
  z-index: 3;
}

.service-orbit__item--1 { left: 10%; top: 18%; }
.service-orbit__item--2 { right: 9%; top: 20%; }
.service-orbit__item--3 { right: 1%; top: 50%; }
.service-orbit__item--4 { right: 14%; bottom: 12%; }
.service-orbit__item--5 { left: 12%; bottom: 12%; }
.service-orbit__item--6 { left: 0; top: 50%; }

.service-system-card>p {
  text-align: center;
  color: var(--svc-muted);
  font-size: 13px;
  margin: 0;
}

/* ---------- 标题行 ---------- */
.service-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 80px;
  margin-bottom: 38px;
}

.service-section-heading>p {
  max-width: 480px;
  margin: 0;
  color: var(--svc-muted);
}

.service-section-heading--light>p {
  color: #bdd2c5;
}

.service-section-heading--light .service-section-kicker {
  color: #bfe772;
}

/* ---------- 核心服务 ---------- */
.service-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.service-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--svc-line);
  padding: 30px;
  border-radius: 16px;
  min-height: 325px;
  transition: .28s;
  overflow: hidden;
}

.service-card:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--svc-green), var(--svc-lime));
  transition: .28s;
}

.service-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--svc-shadow);
}

.service-card:hover:after {
  width: 100%;
}

.service-card__no {
  position: absolute;
  right: 22px;
  top: 16px;
  font-size: 34px;
  font-weight: 800;
  color: #ecf2ee;
}

.service-line-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  background: #eaf5ee;
  color: var(--svc-green);
  font-size: 25px;
  border-radius: 12px;
}

.service-card h3 {
  font-size: 20px;
  margin: 18px 0 9px;
}

.service-card p {
  font-size: 14px;
  color: var(--svc-muted);
  margin: 0 0 16px;
}

.service-card ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.service-card li {
  font-size: 11px;
  color: #4f6658;
  background: #f3f7f4;
  padding: 4px 8px;
  border-radius: 4px;
}

/* ---------- 合作流程 ---------- */
.service-process {
  background: radial-gradient(circle at 90% 5%, #0a7951 0, transparent 35%), var(--svc-green-deep);
  color: #fff;
  overflow: hidden;
}

.service-process-list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  position: relative;
  padding: 25px 0 20px;
}

.service-process-list:before {
  content: "";
  position: absolute;
  left: 7%;
  right: 7%;
  top: 55px;
  height: 1px;
  background: rgba(255, 255, 255, .2);
}

.service-process-step {
  position: relative;
  padding: 0 16px;
  text-align: center;
}

.service-process-step:before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  border: 4px solid var(--svc-green-deep);
  background: var(--svc-lime);
  border-radius: 50%;
  margin: 20px auto 26px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .35);
  position: relative;
  z-index: 2;
}

.service-process-step span {
  font-size: 10px;
  color: #9ad8b5;
  letter-spacing: 1px;
}

.service-process-step b {
  display: block;
  font-size: 17px;
  margin: 8px 0;
}

.service-process-step p {
  font-size: 12px;
  color: #b9cec0;
  margin: 0;
}

.service-process-note {
  margin-top: 38px;
  padding: 19px 24px;
  border: 1px solid rgba(255, 255, 255, .15);
  background: rgba(255, 255, 255, .055);
  border-radius: 12px;
  display: flex;
  gap: 26px;
  font-size: 13px;
  align-items: center;
}

.service-process-note b {
  color: #d8ef9c;
}

.service-process-note span:before {
  content: "✓";
  color: var(--svc-lime);
  margin-right: 7px;
}

/* ---------- 典型方向 ---------- */
.service-application-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.service-application-card {
  min-height: 330px;
  border-radius: 20px;
  padding: 34px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
  overflow: hidden;
}

.service-application-card:before {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  border: 1px solid currentColor;
  border-radius: 50%;
  opacity: .13;
  right: -35px;
  top: -40px;
  box-shadow: 0 0 0 40px currentColor;
}

.service-application-card small {
  letter-spacing: 1.5px;
  font-size: 10px;
  opacity: .7;
}

.service-application-card h3 {
  font-size: 26px;
  margin: 10px 0;
}

.service-application-card p {
  font-size: 14px;
  opacity: .8;
}

.service-application-card span {
  font-size: 12px;
  border-top: 1px solid currentColor;
  padding-top: 15px;
  margin-top: 18px;
  opacity: .7;
}

.service-application-card--green {
  background: #075d3b;
  color: #fff;
}

.service-application-card--sage {
  background: #dcebdd;
  color: #183d2b;
}

.service-application-card--cream {
  background: #f4f0dd;
  color: #4d4a2b;
}

/* ---------- 研发成果 ---------- */
.service-patent-layout {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 70px;
  align-items: center;
}

.service-patent-copy>p:not(.service-section-kicker) {
  color: var(--svc-muted);
}

.service-patent-count {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 28px 0;
}

.service-patent-count strong {
  font-size: 62px;
  line-height: 1;
  color: var(--svc-green);
}

.service-patent-count span {
  font-weight: 700;
  line-height: 1.4;
}

.service-patent-count small {
  font-weight: 400;
  color: var(--svc-muted);
}

.service-text-link {
  color: var(--svc-green);
  font-weight: 700;
}

.service-patent-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.service-patent-card {
  background: #fff;
  padding: 10px;
  border-radius: 14px;
  border: 1px solid var(--svc-line);
  box-shadow: 0 8px 22px rgba(8, 70, 35, .06);
  transition: .2s;
}

.service-patent-card:hover {
  transform: translateY(-5px);
}

.service-patent-card img {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: cover;
  object-position: top;
  border-radius: 9px;
}

.service-patent-card div {
  padding: 14px 5px 7px;
}

.service-patent-card small,
.service-patent-card b,
.service-patent-card span {
  display: block;
}

.service-patent-card small {
  font-size: 10px;
  color: var(--svc-green);
}

.service-patent-card b {
  font-size: 13px;
  line-height: 1.55;
  margin: 6px 0;
}

.service-patent-card span {
  font-size: 11px;
  color: var(--svc-muted);
}

/* ---------- 项目交付 ---------- */
.service-delivery__grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 75px;
  align-items: center;
}

.service-delivery__image {
  position: relative;
}

.service-delivery__image img {
  height: 500px;
  width: 100%;
  object-fit: cover;
  border-radius: 22px;
}

.service-delivery__image div {
  position: absolute;
  left: 25px;
  right: 25px;
  bottom: 25px;
  background: rgba(0, 57, 34, .86);
  color: #fff;
  border-radius: 12px;
  padding: 18px 22px;
  display: flex;
  justify-content: space-between;
}

.service-delivery__image strong {
  letter-spacing: 1.5px;
}

.service-delivery__image span {
  font-size: 13px;
  color: #d6e5dc;
}

.service-delivery-list {
  display: grid;
  gap: 4px;
}

.service-delivery-list>div {
  display: grid;
  grid-template-columns: 54px 1fr;
  align-items: center;
  padding: 17px 0;
  border-top: 1px solid var(--svc-line);
}

.service-delivery-list span {
  font-size: 12px;
  color: var(--svc-green);
  font-weight: 800;
}

.service-delivery-list p {
  margin: 0;
}

.service-delivery-list b,
.service-delivery-list small {
  display: block;
}

.service-delivery-list b {
  font-size: 16px;
}

.service-delivery-list small {
  color: var(--svc-muted);
  font-size: 13px;
  margin-top: 3px;
}

/* ---------- 常见问题 ---------- */
.service-faq {
  background: #fbfdfb;
}

.service-faq__grid {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 100px;
}

.service-faq__intro>p:not(.service-section-kicker) {
  color: var(--svc-muted);
}

.service-accordion details {
  border-bottom: 1px solid var(--svc-line);
}

.service-accordion summary {
  list-style: none;
  cursor: pointer;
  padding: 21px 0;
  font-size: 16px;
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.service-accordion summary::-webkit-details-marker {
  display: none;
}

.service-accordion summary span {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid var(--svc-line);
  border-radius: 50%;
  color: var(--svc-green);
  transition: .2s;
}

.service-accordion details[open] summary span {
  transform: rotate(45deg);
  background: var(--svc-green);
  color: #fff;
}

.service-accordion details p {
  color: var(--svc-muted);
  font-size: 14px;
  margin: 0;
  padding: 0 40px 22px 0;
}

/* ---------- 项目咨询 ---------- */
.service-contact {
  background: linear-gradient(115deg, var(--svc-green) 0%, #006538 65%, #004c31 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
}

.service-contact:after {
  content: "";
  position: absolute;
  width: 450px;
  height: 450px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 50%;
  right: -80px;
  top: -180px;
  box-shadow: 0 0 0 80px rgba(255, 255, 255, .025);
}

.service-contact__inner {
  min-height: 330px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
  position: relative;
  z-index: 2;
}

.service-contact p {
  font-size: 11px;
  letter-spacing: 2px;
  color: #c4e5ce;
}

.service-contact h2 {
  font-size: 38px;
  line-height: 1.4;
  margin: 12px 0;
}

.service-contact>span {
  color: #d5e9db;
}

.service-contact__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  min-width: 270px;
}

.service-contact__actions small {
  color: #c4d9ca;
}

/* ---------- 进入动画 ---------- */
.service-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .65s ease, transform .65s ease;
}

.service-reveal.service-is-visible {
  opacity: 1;
  transform: none;
}

/* ---------- 响应式（≤980px） ---------- */
@media (max-width: 980px) {
  .service-hero__inner {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .service-hero h1 {
    font-size: 50px;
  }

  .service-hero-panel {
    max-width: 600px;
  }

  .service-overview__grid,
  .service-patent-layout,
  .service-delivery__grid,
  .service-faq__grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .service-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .service-process-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }

  .service-process-list:before {
    display: none;
  }

  .service-application-grid {
    grid-template-columns: 1fr;
  }

  .service-application-card {
    min-height: 270px;
  }

  .service-patent-cards {
    max-width: 720px;
  }

  .service-section-heading {
    align-items: start;
    flex-direction: column;
    gap: 5px;
  }
}

/* ---------- 响应式（≤640px） ---------- */
@media (max-width: 640px) {
  .service-hero__inner {
    min-height: auto;
    padding: 65px 0 120px;
  }

  .service-hero h1 {
    font-size: 39px;
  }

  .service-hero__lead {
    font-size: 16px;
  }

  .service-hero__actions,
  .service-hero__trust {
    flex-direction: column;
    align-items: stretch;
  }

  .service-hero__trust {
    gap: 5px;
  }

  .service-hero-panel {
    padding: 24px;
  }

  .service-hero-panel h2 {
    font-size: 24px;
  }

  .service-hero-panel__stats {
    gap: 2px;
  }

  .service-hero-panel__stats strong {
    font-size: 25px;
  }

  .service-hero__bottom .container {
    grid-template-columns: repeat(2, 1fr);
    height: 86px;
  }

  .service-hero__bottom span:nth-child(2) {
    border: 0;
  }

  .service-section {
    padding: 62px 0;
  }

  .service-section-copy h2,
  .service-section-heading h2,
  .service-patent-copy h2,
  .service-delivery__copy h2,
  .service-faq__intro h2 {
    font-size: 29px;
  }

  .service-fit-list div {
    grid-template-columns: 42px 1fr;
  }

  .service-system-card {
    padding: 22px 15px;
  }

  .service-system-card__head {
    align-items: start;
    gap: 8px;
  }

  .service-orbit {
    height: 330px;
  }

  .service-orbit:before {
    inset: 58px 45px;
  }

  .service-orbit:after {
    inset: 88px 75px;
  }

  .service-orbit__item--1 { left: 1%; }
  .service-orbit__item--2 { right: 0; }
  .service-orbit__item--3 { right: -2%; }
  .service-orbit__item--4 { right: 5%; }
  .service-orbit__item--5 { left: 5%; }
  .service-orbit__item--6 { left: -2%; }

  .service-grid {
    grid-template-columns: 1fr;
  }

  .service-card {
    min-height: auto;
  }

  .service-process-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .service-process-note {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .service-patent-cards {
    grid-template-columns: 1fr;
  }

  .service-patent-card {
    display: grid;
    grid-template-columns: 110px 1fr;
  }

  .service-patent-card img {
    height: 150px;
  }

  .service-delivery__image img {
    height: 360px;
  }

  .service-delivery__image div {
    flex-direction: column;
    gap: 3px;
  }

  .service-contact__inner {
    padding: 55px 0;
    flex-direction: column;
    align-items: flex-start;
  }

  .service-contact h2 {
    font-size: 30px;
  }

  .service-contact__actions {
    align-items: stretch;
    width: 100%;
  }

  .service-breadcrumb {
    overflow: hidden;
    white-space: nowrap;
  }
}
