.surgical-home {
  background: linear-gradient(145deg, #edf8f8 0%, #f8fbfc 50%, #e8f4f3 100%);
  border-block: 1px solid var(--line);
}

/* Professional product catalogue */
.catalogue-section{background:linear-gradient(180deg,#fff 0%,#f5fbfb 100%)}
.catalog-intro{max-width:760px;margin-bottom:38px}.catalog-intro h2{margin:5px 0 12px;font-size:clamp(2rem,3.5vw,3rem)}.catalog-intro p:last-child{color:var(--muted);font-size:1.05rem}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}.catalog-card{display:flex;min-width:0;height:100%;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(7,72,79,.08);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.catalog-card:hover{transform:translateY(-7px);border-color:#a9d5d1;box-shadow:0 24px 55px rgba(7,72,79,.16)}
.catalog-photo{display:flex;height:260px;align-items:center;justify-content:center;padding:22px;overflow:hidden;border-bottom:1px solid #e6f0ef;background:linear-gradient(145deg,#fff,#f3f8f8)}.catalog-photo img{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .4s ease}.catalog-card:hover .catalog-photo img{transform:scale(1.045)}
.catalog-card-copy{display:flex;min-width:0;flex:1;flex-direction:column;padding:24px}.catalog-category{flex:none!important;align-self:flex-start;margin:0 0 10px!important;padding:5px 9px;border-radius:999px;background:var(--mist);color:var(--teal)!important;font-size:.68rem!important;font-weight:800;line-height:1.2;letter-spacing:.05em;text-transform:uppercase}.catalog-card-copy h3{min-height:2.6em;margin:0 0 10px;font-size:1.25rem;line-height:1.3}.catalog-card-copy h3 a{color:var(--navy)}.catalog-card-copy>p{flex:1;margin:0;color:var(--muted);font-size:.94rem}.catalog-view{margin:20px 0 15px}
.catalog-actions{display:grid;grid-template-columns:minmax(112px,1fr) auto auto;gap:8px;align-items:center}.catalog-actions .button{min-height:42px;padding:10px 13px;font-size:.75rem}.catalog-icon-action{display:flex;align-items:center;justify-content:center;width:44px;height:42px;border:1px solid #b7d8d5;border-radius:10px;background:#eff9f7;color:#087f62;font-size:1.1rem;transition:.2s}.catalog-icon-action svg{width:21px;height:21px}.catalog-icon-action span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.catalog-icon-action:hover{transform:translateY(-2px);background:#138b64;color:#fff;border-color:#138b64}.call-action{background:#edf5fb;color:#0b6483;border-color:#c8dce5}.call-action:hover{background:#0b6483;border-color:#0b6483}
.rental-catalogue{background:linear-gradient(180deg,#fff 0%,#f4fbfa 100%)}.rental-notice{display:flex;align-items:center;gap:16px;margin:-8px 0 30px;padding:18px 22px;border:1px solid #c9e3df;border-radius:15px;background:#eaf8f5;color:var(--teal)}.rental-notice strong{white-space:nowrap}.rental-notice span{color:var(--muted)}.rental-product-grid{align-items:stretch}
.catalog-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.back-products{display:inline-flex;margin-top:34px}.product-detail-v2{background:#f7fbfb}.product-detail-main{display:grid;grid-template-columns:minmax(340px,.9fr) 1.1fr;gap:46px;align-items:start}.product-detail-photo{position:sticky;top:110px;height:540px;padding:32px;border:1px solid var(--line);border-radius:25px;background:#fff;box-shadow:0 18px 48px rgba(7,72,79,.1)}.product-detail-photo img{width:100%;height:100%;object-fit:contain}.product-detail-copy{padding:18px 0}.product-detail-copy h2{margin-top:4px;font-size:2.5rem}.product-detail-copy h3{margin:28px 0 8px}.product-detail-copy>p{color:var(--muted);font-size:1.04rem}.availability-box{margin:28px 0;padding:23px;border:1px solid #cce2e0;border-radius:18px;background:#fff}.availability-box p{margin:7px 0 14px;color:var(--muted)}.product-detail-copy .catalog-actions{max-width:410px;margin-top:24px}.detail-enquiry{max-width:900px;margin:70px auto}.related-products{padding-top:20px}.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.related-grid .catalog-photo{height:190px}.related-grid .catalog-card-copy{padding:18px}.related-grid .catalog-card-copy>p{display:none}.related-grid .catalog-actions{display:none}.related-grid .catalog-view{margin:12px 0 0}
.home-catalogue{overflow:hidden}.catalog-carousel{display:flex;gap:22px;overflow-x:auto;padding:8px 3px 28px;scroll-snap-type:x mandatory;scrollbar-width:none}.catalog-carousel::-webkit-scrollbar{display:none}.catalog-carousel .catalog-card{flex:0 0 calc((100% - 66px)/4);scroll-snap-align:start}.catalog-carousel .catalog-photo{height:215px}.catalog-carousel .catalog-card-copy{padding:20px}.catalog-carousel .catalog-card-copy>p{display:none}.catalog-carousel .catalog-actions{grid-template-columns:1fr auto auto}.catalog-carousel .catalog-icon-action{width:40px}
@media(max-width:1050px){.catalog-grid,.catalog-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-carousel .catalog-card{flex-basis:calc((100% - 44px)/3)}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.product-detail-main{grid-template-columns:1fr;gap:24px}.product-detail-photo{position:static;height:390px}.catalog-carousel .catalog-card{flex-basis:calc((100% - 22px)/2)}}
@media(max-width:620px){.catalog-grid,.catalog-type-grid{grid-template-columns:1fr;gap:20px}.catalog-photo{height:240px;padding:18px}.catalog-card-copy{padding:21px}.catalog-card-copy h3{min-height:auto}.catalog-actions{grid-template-columns:1fr 48px 48px}.catalog-icon-action{width:48px}.rental-notice{align-items:flex-start;flex-direction:column;gap:4px}.product-detail-photo{height:320px;padding:20px}.product-detail-copy h2{font-size:2rem}.detail-enquiry{margin:48px 0}.related-grid{display:flex;overflow-x:auto;margin-right:-14px;padding:4px 14px 24px 2px;scroll-snap-type:x mandatory}.related-grid .catalog-card{flex:0 0 82%;scroll-snap-align:start}.catalog-carousel .catalog-card{flex-basis:86%}.catalog-carousel .catalog-card-copy>p{display:block}.catalog-intro{margin-bottom:28px}}

.surgical-heading {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 44px;
  margin-bottom: 34px;
}

.surgical-heading h2 {
  margin: 0 0 14px;
  font-size: clamp(2.25rem, 4.6vw, 3.75rem);
  line-height: 1.05;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.surgical-heading p {
  max-width: 720px;
  margin: 7px 0;
  color: var(--muted);
}

.surgical-heading .surgical-subtitle {
  color: var(--navy);
  font-size: 1.15rem;
  font-weight: 750;
}

.surgical-view-all {
  white-space: nowrap;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.surgical-carousel-shell { position: relative; }

.surgical-carousel {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 60px) / 4);
  gap: 20px;
  overflow-x: auto;
  padding: 7px 2px 24px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.surgical-carousel::-webkit-scrollbar { display: none; }

.surgical-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(13, 66, 73, .08);
  scroll-snap-align: start;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.surgical-card:hover {
  transform: translateY(-7px);
  border-color: #b7d8d8;
  box-shadow: 0 22px 48px rgba(13, 66, 73, .16);
}

.surgical-image-link {
  display: block;
  overflow: hidden;
  background: #fff;
}

.surgical-card img {
  height: 210px;
  padding: 15px;
  object-fit: contain;
  background: #fff;
  transition: transform .35s ease;
}

.surgical-card:hover img { transform: scale(1.055); }

.surgical-card-body {
  display: flex;
  flex-direction: column;
  min-height: 225px;
  padding: 22px;
}

.surgical-card h3 {
  margin: 0 0 10px;
  font-size: 1rem;
  line-height: 1.35;
  text-transform: uppercase;
}

.surgical-card p {
  margin: 0;
  color: var(--muted);
  font-size: .91rem;
}

.surgical-card-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: auto;
  padding-top: 18px;
}

.surgical-card .text-link { margin: 0; }

.mini-enquire {
  padding: 8px 10px;
  border-radius: 8px;
  background: var(--mist);
  color: var(--teal);
  font-size: .76rem;
  font-weight: 800;
  text-transform: uppercase;
  transition: .2s;
}

.surgical-card:hover .mini-enquire {
  background: var(--teal);
  color: #fff;
}

.carousel-arrow {
  position: absolute;
  z-index: 3;
  top: 42%;
  width: 46px;
  height: 46px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 22px rgba(13, 66, 73, .16);
  color: var(--teal);
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
}

.carousel-arrow.prev { left: -23px; }
.carousel-arrow.next { right: -23px; }

.carousel-dots {
  display: flex;
  justify-content: center;
  gap: 7px;
  margin-top: 10px;
}

.carousel-dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #bad2d2;
  cursor: pointer;
  transition: .2s;
}

.carousel-dot.active {
  width: 25px;
  background: var(--teal);
}

.surgical-detail-list { display: grid; gap: 30px; }

.surgical-detail {
  display: grid;
  grid-template-columns: minmax(300px, .8fr) 1.2fr;
  gap: 40px;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 12px 36px rgba(14, 67, 72, .07);
  scroll-margin-top: 140px;
}

.surgical-detail > img {
  height: 100%;
  min-height: 430px;
  padding: 20px;
  border: 1px solid #e7eeee;
  border-radius: 16px;
  object-fit: contain;
  background: #fff;
}

.surgical-detail-copy { padding: 12px 12px 12px 0; }

.surgical-detail-copy h3 {
  margin: 0 0 12px;
  font-size: clamp(1.55rem, 2.6vw, 2.25rem);
  line-height: 1.15;
  text-transform: uppercase;
}

.surgical-detail-copy > p { color: var(--muted); }

.surgical-info {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 28px;
  margin: 24px 0;
}

.surgical-info h4 {
  margin: 0 0 8px;
  color: var(--teal);
  font-size: .9rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.surgical-info ul {
  margin: 0;
  padding-left: 19px;
  color: var(--muted);
}

.surgical-info p {
  margin: 0 0 17px;
  color: var(--muted);
}

@media (max-width: 900px) {
  .surgical-heading { grid-template-columns: 1fr; align-items: start; }
  .surgical-carousel { grid-auto-columns: calc((100% - 20px) / 2); }
  .surgical-detail { grid-template-columns: 1fr; }
  .surgical-detail > img { height: 360px; min-height: 0; }
  .surgical-detail-copy { padding: 0 6px 8px; }
}

@media (max-width: 620px) {
  .surgical-heading { gap: 20px; }
  .surgical-heading h2 { font-size: 2.25rem; }
  .surgical-heading .surgical-subtitle { font-size: 1rem; }
  .surgical-view-all { width: 100%; }
  .surgical-carousel { grid-auto-columns: 86%; gap: 14px; margin-right: -14px; padding-bottom: 18px; }
  .surgical-card img { height: 190px; }
  .surgical-card-body { min-height: 215px; }
  .carousel-arrow { display: none; }
  .carousel-dots { max-width: 180px; margin: 8px auto 0; flex-wrap: wrap; }
  .surgical-detail { gap: 22px; padding: 16px; }
  .surgical-detail > img { height: 280px; padding: 12px; }
  .surgical-info { grid-template-columns: 1fr; gap: 18px; }
  .surgical-detail-copy .button-row { flex-direction: column; }
  .surgical-detail-copy .button { width: 100%; }
}
