/* Prototype 03: scoped additions; approved opening and Transforma remain intact. */
.technologies { --card-width: min(82vw, 360px); --rail-gap: 16px; background: var(--paper); color: var(--ink); color-scheme: light; padding: 72px 0 0; border-top: 1px solid #25425920; }
.technologies-heading { padding: 0 var(--gutter); max-width: 1600px; margin: 0 auto 42px; }
.technologies-heading .tech-eyebrow { color: #4c687c; font-size: 12px; font-weight: 500; letter-spacing: .17em; margin: 0 0 24px; }
.technologies h2 { font-weight: 400; font-size: clamp(35px, 8.6vw, 86px); line-height: 1.05; letter-spacing: -.055em; margin: 0; }
.technologies h2 span { color: #42627a; }
.technologies-heading > p:last-child { max-width: 530px; color: #566b79; font-size: 16px; line-height: 1.65; margin: 24px 0 0; }
.technology-rail { display: flex; gap: var(--rail-gap); overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); padding: 8px var(--gutter) 22px; margin: 0; list-style: none; scrollbar-width: thin; scrollbar-color: #8095a4 transparent; overscroll-behavior-x: contain; touch-action: pan-x pan-y pinch-zoom; -webkit-overflow-scrolling: touch; }
.technology-rail:focus-visible { outline: 2px solid #436b87; outline-offset: -3px; }
.technology-card { flex: 0 0 var(--card-width); min-width: 0; scroll-snap-align: start; display: flex; flex-direction: column; background: #e4e9ec; border: 1px solid #36546a24; border-radius: 3px; overflow: hidden; }
.technology-card:focus-visible { outline: 3px solid #42627a; outline-offset: 3px; }
.card-visual { position: relative; min-height: 252px; display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 30px 22px; background: #e8edef; }
.card-visual .technology-index { position: absolute; top: 22px; left: 24px; color: #576f7e; font-size: 12px; letter-spacing: .14em; }
.card-visual .type-art { font-size: clamp(76px, 22vw, 118px); line-height: .95; letter-spacing: -.065em; font-weight: 300; color: #658497; }
.card-visual .type-art.small { font-size: 66px; }
.card-visual::after { content: ""; position: absolute; left: 24px; right: 24px; bottom: 0; height: 1px; background: #47657a26; }
.card-visual img { display: block; width: 100%; height: auto; object-fit: contain; mix-blend-mode: multiply; }
.card-copy { display: flex; flex-direction: column; flex: 1; padding: 28px 24px 25px; }
.card-copy h3 { margin: 0 0 14px; font-weight: 450; font-size: 27px; line-height: 1.12; letter-spacing: -.04em; }
.card-copy > p { font-size: 15px; line-height: 1.6; color: #526775; margin: 0 0 34px; min-height: 48px; }
.card-affordance { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 18px; border-top: 1px solid #47657a26; font-size: 14px; color: #526775; }
.card-affordance span { font-size: 22px; }
.technology-card:nth-child(3) .card-visual { background: #dbe5eb; }
.technology-card:nth-child(4) .card-visual { background: #e0e6e9; }
.technology-card[data-name="Emerald Laser"] .card-visual { background: #dee7e6; }
.carousel-controls { display: flex; justify-content: space-between; gap: 24px; align-items: center; padding: 24px var(--gutter); max-width: 1600px; margin: 0 auto; }
.carousel-progress { display: flex; align-items: baseline; gap: 10px; color: #5c7181; font-size: 14px; font-variant-numeric: tabular-nums; }
.carousel-progress .current-card { color: #183a51; font-size: 22px; }
.carousel-buttons { display: flex; gap: 12px; }
.carousel-buttons button { display: grid; place-items: center; min-width: 48px; min-height: 48px; border: 1px solid #4c687c66; background: transparent; border-radius: 50%; color: #203e53; font-size: 24px; touch-action: manipulation; }
.carousel-buttons button[aria-disabled="true"] { opacity: .35; cursor: default; }
.carousel-buttons button:focus-visible { outline: 2px solid #436b87; outline-offset: 4px; }
.carousel-announcement { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.technology-ending { min-height: 150px; display: grid; place-items: center; }
.technology-ending::after { content: ""; width: 1px; height: 62px; background: #4f6c814a; }
@media (min-width: 768px) {
  .technologies { --card-width: 350px; --rail-gap: 22px; padding-top: 100px; }
  .technologies-heading { margin-bottom: 56px; }
  .technology-ending { min-height: 190px; }
}
@media (min-width: 1200px) {
  .technologies { --card-width: 390px; --rail-gap: 24px; }
  .technologies-heading { display: grid; grid-template-columns: 1.8fr 1fr; column-gap: 80px; align-items: end; }
  .technologies h2 { font-size: 76px; }
  .technologies-heading .tech-eyebrow { grid-column: 1 / -1; }
  .technologies-heading > p:last-child { margin: 0; max-width: 360px; font-size: 18px; padding-bottom: 4px; }
  .card-visual { min-height: 288px; }
  .card-copy { padding: 30px; }
  .card-copy h3 { font-size: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  .technology-rail { scroll-behavior: auto; }
}

/* Integration V2: approved NuEra product, within the existing card geometry. */
.card-visual .nuera-card-product { display:block; height:192px; width:100%; object-fit:contain; padding:0; }
@media(min-width:1200px){.card-visual .nuera-card-product{height:228px;}}

.card-visual .trilift-card-product{display:block;height:192px;width:100%;object-fit:contain;padding:0}
@media(min-width:1200px){.card-visual .trilift-card-product{height:228px}}

.card-visual .emerald-card-product{display:block;height:192px;width:100%;object-fit:contain;padding:0;mix-blend-mode:multiply}
@media(min-width:1200px){.card-visual .emerald-card-product{height:228px}}

.card-visual .emszero-card-product{display:block;height:192px;width:100%;object-fit:contain;padding:0;mix-blend-mode:multiply}
@media(min-width:1200px){.card-visual .emszero-card-product{height:228px}}

.card-visual .multishape-card-product{display:block;height:192px;width:100%;object-fit:contain;padding:0;mix-blend-mode:multiply}
@media(min-width:1200px){.card-visual .multishape-card-product{height:228px}}

.hydro-card-product{width:100%;height:100%;object-fit:contain;background:white;padding:16px}

/* Morpheus carousel: original platform/ice cutout and separate HTML message. */
.card-visual .morpheus-card-platform{height:192px;width:calc(100% - 90px);object-fit:contain;object-position:center;mix-blend-mode:normal}
.morpheus-card-message{flex:0 0 78px;margin-left:12px;color:#183a51;font-size:10px;font-weight:500;letter-spacing:.08em;line-height:2.1}
@media(min-width:1200px){.card-visual .morpheus-card-platform{height:228px}.morpheus-card-message{font-size:11px}}
