/* Company profile photo region only: five supplied factory photos. */
.about-company-profile .factory-gallery { width:100%; aspect-ratio:1.1; min-width:0; }
.factory-gallery .factory-stage { position:absolute; inset:0 0 44px; perspective:1000px; overflow:hidden; border-radius:12px; touch-action:pan-y; }
.factory-gallery .factory-slide { position:absolute; left:12%; top:3%; width:76%; height:94%; padding:0; border:0; border-radius:10px; background:#fffdf8; cursor:pointer; opacity:0; visibility:hidden; transform:translateX(0) scale(.7); transition:transform .65s cubic-bezier(.22,.7,.25,1),opacity .5s,filter .5s; transform-style:preserve-3d; }
.about-company-profile .factory-slide img { width:100%; height:100%; object-fit:cover; border-radius:10px; box-shadow:none; pointer-events:none; user-select:none; -webkit-user-drag:none; }
.factory-gallery .factory-slide[data-position="0"] { z-index:3; opacity:1; visibility:visible; transform:translateX(0) rotateY(0) scale(1); filter:none; cursor:default; box-shadow:0 8px 20px rgba(35,34,30,.12); }
.factory-gallery .factory-slide[data-position="-1"] { z-index:2; opacity:.72; visibility:visible; transform:translateX(-76%) rotateY(52deg) scale(.84); filter:brightness(.86); }
.factory-gallery .factory-slide[data-position="1"] { z-index:2; opacity:.72; visibility:visible; transform:translateX(76%) rotateY(-52deg) scale(.84); filter:brightness(.86); }
.factory-gallery .factory-slide[data-position="-2"] { transform:translateX(-120%) rotateY(60deg) scale(.7); }
.factory-gallery .factory-slide[data-position="2"] { transform:translateX(120%) rotateY(-60deg) scale(.7); }
.factory-gallery .factory-controls { position:absolute; bottom:0; inset-inline:0; height:36px; display:flex; align-items:center; justify-content:center; gap:17px; }
.factory-gallery .factory-arrow { display:grid; place-items:center; width:32px; height:32px; padding:0; border:1px solid #b28d48; border-radius:50%; background:#fffdf8; color:#947339; cursor:pointer; }
.factory-gallery .factory-arrow svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.6; }
.factory-gallery .factory-arrow:hover { background:#f0e7d5; }
.factory-gallery .factory-count { color:#806333; font:14px/1.5 Georgia,serif; letter-spacing:.14em; min-width:48px; text-align:center; }
.factory-gallery button:focus-visible { outline:2px solid #b44336; outline-offset:2px; }
@media(max-width:600px){ .about-company-profile .factory-gallery { aspect-ratio:1.1; } .factory-gallery .factory-controls{gap:22px;height:44px} .factory-gallery .factory-stage{bottom:52px} .factory-gallery .factory-arrow{width:44px;height:44px} }
@media(prefers-reduced-motion:reduce){ .factory-gallery .factory-slide {transition:none} }
