/* AMALGAM Visual Presentation Update | private prototype | 2026-10-16
   Additive: preserve content, real service images and existing functional scripts. */
.am-carousel{display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;gap:0!important;overflow-x:auto!important;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;align-items:stretch;position:relative;border:1px solid #dbe5ee;border-radius:12px;background:#0b2339;box-shadow:0 16px 44px rgba(4,31,57,.1)}
.am-carousel::-webkit-scrollbar{display:none}
.am-carousel>.s7-detail-gallery-card,.am-carousel>.s8-gallery-trigger,.am-carousel>.rm-card,.am-carousel>.s9-gallery-item{display:block;flex:0 0 100%!important;width:100%!important;min-width:100%;max-width:100%;scroll-snap-align:start;scroll-snap-stop:always;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;transition:none!important}
.am-carousel>.s8-gallery-trigger:hover,.am-carousel>.s9-gallery-item:hover{transform:none!important}
.am-carousel .s7-detail-gallery-card{position:relative;isolation:isolate;background:#0b2339!important}
.am-carousel .s7-detail-gallery-card::before{content:"";position:absolute;inset:0 0 52px;background:var(--am-image) center/cover no-repeat;filter:blur(23px) brightness(.45);transform:scale(1.05);z-index:0;opacity:.7}
.am-carousel .s7-detail-gallery-card img{display:block;position:relative;z-index:1;width:100%!important;height:clamp(270px,42vw,485px)!important;max-width:100%;object-fit:contain!important;object-position:center center!important;padding:12px 18px;box-sizing:border-box}
.am-carousel .s7-detail-gallery-card figcaption{min-height:53px;position:relative;z-index:2;padding:15px 20px!important;font-size:11px!important;background:#fff!important;display:flex;align-items:center;line-height:1.45}
.am-carousel .s8-gallery-trigger{background:#0b2339!important}
.am-carousel .s8-gallery-trigger img{width:100%!important;height:clamp(270px,42vw,485px)!important;object-fit:contain!important;object-position:center!important;padding:12px;box-sizing:border-box;background:linear-gradient(125deg,#071c33,#16374d)}
.am-carousel .s8-photo-caption{min-height:62px;background:#fff!important;align-items:center;box-sizing:border-box}
.am-carousel .rm-card{background:#fff!important}
.am-carousel .rm-thumb{width:100%;height:clamp(270px,42vw,485px)!important;aspect-ratio:auto!important;border-radius:0}
.am-carousel .rm-thumb img{object-fit:contain!important;width:100%;height:100%;background:#edf3f7!important;transform:none!important}
.am-carousel .rm-card-info{padding:13px 24px 20px!important;min-height:90px}
.am-carousel .s9-gallery-item{height:clamp(270px,42vw,485px)!important;aspect-ratio:auto!important;background:#0b2339!important;position:relative}
.am-carousel .s9-gallery-item img{width:100%;height:100%;object-fit:contain!important;object-position:center!important;padding:12px 12px 74px;box-sizing:border-box;transform:none!important}
.am-carousel .s9-gallery-layer{pointer-events:none;inset:auto 0 0;min-height:73px;padding:13px 22px!important;background:linear-gradient(0deg,rgba(3,15,30,.97),rgba(3,15,30,.79));justify-content:center}
.am-carousel>.s9-gallery-item[hidden],.am-carousel>.rm-card[hidden],.am-carousel>[hidden]{display:none!important}
.am-carousel-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:12px 0 15px;padding:0;max-width:100%;color:#1b3a55}
.am-carousel-nav .am-nav-meta{display:grid;gap:4px;min-width:0}
.am-carousel-nav .am-nav-label{font-size:12px;font-weight:800;letter-spacing:.095em;text-transform:uppercase;color:#17668c}
.am-carousel-nav .am-nav-hint{font-size:11px;color:#647d91;line-height:1.45}
.am-carousel-nav .am-nav-actions{display:flex;gap:9px;align-items:center}
.am-carousel-nav button{appearance:none;border:1px solid #b8cad6;background:#fff;color:#0d2e48;display:inline-flex;justify-content:center;align-items:center;width:42px;height:42px;min-width:42px;border-radius:8px;font-size:22px;font-weight:650;cursor:pointer}
.am-carousel-nav button:hover,.am-carousel-nav button:focus-visible{background:#103957;border-color:#103957;color:#fff}
.am-carousel-nav button:disabled{opacity:.34;cursor:not-allowed}
.am-carousel-nav [data-am-position]{min-width:70px;text-align:center;font-size:12px;white-space:nowrap;letter-spacing:.05em;font-weight:750;font-variant-numeric:tabular-nums}
/* Display entire signboard, machinery and documentary image in its stage, rather than crop vital content. */
.s7-service-hero-visual.am-photo-ambient,.s7-feature-photo.am-photo-ambient{isolation:isolate;background:#08243c!important}
.s7-service-hero-visual.am-photo-ambient::before,.s7-feature-photo.am-photo-ambient::before{content:"";position:absolute;inset:-12px;background:var(--am-image) center/cover no-repeat;filter:blur(24px) brightness(.35);opacity:.65;z-index:0}
.s7-service-hero-visual.am-photo-ambient>img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;box-sizing:border-box;padding:12px 13px 57px;position:relative;z-index:1}
.s7-service-hero-visual.am-photo-ambient .s7-visual-caption{z-index:2;bottom:0!important;background:rgba(4,23,41,.9)!important;min-height:46px;padding:12px 18px!important;align-items:center;font-size:10px!important;line-height:1.5}
.s7-feature-photo.am-photo-ambient{position:relative}
.s7-feature-photo.am-photo-ambient>img{width:100%;height:100%;position:relative;z-index:1;object-fit:contain!important;object-position:center!important;padding:10px;box-sizing:border-box}
.s7-card-visual>img,.s7-about-mosaic img{object-fit:contain!important;object-position:center!important;background:#0c2a43}
.s8-hero-visual>img{object-fit:contain!important;object-position:center!important;transform:none!important;background:#0c2b47}
.s9-hero-image img,.s9-card-photo img,.s9-process-photo img,.s9-feature img,.s9-split figure img,.s9-preview-cards img{object-fit:contain!important;object-position:center!important;transform:none!important;background:#0a2b44}
.s9-card-photo,.s9-process-photo{background:#0b2944}
@media(max-width:650px){.am-carousel .s7-detail-gallery-card img,.am-carousel .s8-gallery-trigger img,.am-carousel .s9-gallery-item,.am-carousel .rm-thumb{height:clamp(285px,86vw,415px)!important}.am-carousel-nav{gap:8px}.am-carousel-nav .am-nav-hint{font-size:10px}.am-carousel-nav button{width:40px;height:40px;min-width:40px}.s7-service-hero-visual.am-photo-ambient>img{padding:8px 8px 68px}.s7-service-hero-visual.am-photo-ambient .s7-visual-caption{font-size:9px!important}}
@media(prefers-reduced-motion:reduce){.am-carousel{scroll-behavior:auto!important}}

/* Homepage slideshow: preserve complete 10 client-supplied frames, including tall sign diagrams. */
.hero-scene.am-photo-ambient{isolation:isolate;background:#08243d}
.hero-scene.am-photo-ambient::before{content:"";position:absolute;inset:-18px;background:var(--am-image) center/cover no-repeat;filter:blur(25px) brightness(.57);transform:scale(1.06);opacity:.96;z-index:0}
.hero-scene.am-photo-ambient>img{position:relative;width:100%;height:100%;object-fit:contain!important;object-position:75% center!important;transform:none!important;filter:none!important;transition:none!important}
.hero-scene.am-photo-ambient.is-active>img{transform:none!important}
/* Other inner page images should never crop sign text, certificates or equipment. */
.expertise-image img,.method-photo img,.equipment-feature img,.equipment-card img,.gallery-card img,
.s7-hero-side-image img,.s7-mosaic-grid img,.s7-approach-grid figure img,
.s10-hero-photo img,.s10-image-grid img,.s10-feature-art img,.s10-preview-grid img{object-fit:contain!important;object-position:center!important;transform:none!important}
.expertise-image,.method-photo,.equipment-feature,.equipment-card,.gallery-card,.s7-hero-side-image,.s7-approach-grid figure{background:#092a45}

.am-carousel-nav button[data-am-pause][hidden]{display:none!important}
.am-carousel-nav button[data-am-pause]{font-size:19px;background:#0b2944;color:#fff;border-color:#0b2944}
