/* Shared unit cards: photographs stay in the card, with quiet dot controls. */
.intro-photo-carousel{position:relative;min-width:0;overflow:hidden;background:#e5e3dc;border-bottom:3px solid var(--orange)}
.intro-photo-slide{position:relative}
.intro-photo-frame{aspect-ratio:3/2;overflow:hidden;background:#e5e3dc}
.intro-photo-frame img{width:100%;height:100%;object-fit:cover}
.intro-photo-full-frame img{object-fit:contain}
.intro-photo-slide[hidden],.intro-photo-controls[hidden]{display:none}
.intro-photo-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 16px 12px;background:linear-gradient(transparent,rgba(24,27,23,.86));color:#fff;font-size:11px;line-height:1.6}
.intro-photo-controls{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:10px;pointer-events:none}
.intro-photo-count{position:absolute;right:12px;top:12px;padding:5px 9px;background:rgba(24,27,23,.7);color:#fff;font-size:10px;letter-spacing:.5px;min-width:38px;text-align:center;font-variant-numeric:tabular-nums}
.intro-photo-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff80;background:rgba(24,27,23,.65);color:#fff;font-size:21px;line-height:1;cursor:pointer;pointer-events:auto}
.intro-photo-controls button:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.intro-photo-controls button:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(max-width:680px){.intro-photo-slide figcaption{font-size:10px;padding-left:12px}}
.facility-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.facility-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.factory-carousel{min-width:0}.factory-photo{overflow:hidden;background:#e9e7df}.factory-slide img{width:100%;height:100%;object-fit:cover;filter:brightness(1.04) contrast(1.02) saturate(.96)}.factory-slide figcaption{padding:11px 15px 0;font-size:11px;line-height:1.5;color:var(--muted)}.factory-photo-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 11px 3px 15px}.factory-photo-count{font-size:9px;letter-spacing:1px;color:var(--muted)}.factory-photo-dots{display:flex}.factory-photo-dots button{display:grid;place-items:center;width:28px;height:32px;border:0;background:transparent;padding:0}.factory-photo-dots button span{width:6px;height:6px;border-radius:50%;background:#c9c5bd;transition:background .15s}.factory-photo-dots button[aria-pressed=true] span{background:var(--orange);box-shadow:0 0 0 3px #c6452215}.factory-photo-dots button:hover span{background:var(--orange)}.facility-copy{border-top:1px solid var(--line);padding:18px;display:flex;flex-direction:column;flex:1}.facility-copy>.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:8px}.facility-copy h3{font-size:27px;margin-bottom:10px}.facility-description{font-size:12px;line-height:1.75;min-height:42px}.facility-facts{display:grid;grid-template-columns:1fr 1fr;gap:17px 10px;padding-top:16px;margin:15px 0 0;border-top:1px solid var(--line)}.facility-facts dt{font-size:9px;color:var(--muted);line-height:1.4;margin-bottom:5px}.facility-facts dd{font-size:19px;line-height:1.2;letter-spacing:-.4px;margin:0;color:var(--ink)}.facility-facts dd span{font-size:10px;color:var(--muted);letter-spacing:0}.facility-facts .facility-office{grid-column:1/-1}.facility-facts .facility-office dd{font-size:13px;letter-spacing:0;line-height:1.4}.facility-basis{font-size:10px;line-height:1.6;margin-top:14px;color:var(--muted)}.facility-description{flex:1}
@media(max-width:1100px){.facility-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.facility-copy{padding:20px}.facility-description{min-height:42px}.facility-copy h3{font-size:27px}.factory-slide figcaption{padding-inline:15px;font-size:11px}.factory-photo-controls{padding-left:15px}.factory-photo-dots button{width:30px}}
@media(max-width:900px){.facility-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.facility-copy{padding:20px}.facility-description{min-height:42px}.factory-slide figcaption{font-size:11px;padding-inline:15px}.factory-photo-controls{padding-inline:15px}.factory-photo-dots button{width:30px;height:36px}.manufacturing-page .facility-facts{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.facility-cards{grid-template-columns:1fr;gap:20px}.manufacturing-page .facility-cards{grid-template-columns:1fr;gap:20px}.factory-photo-controls{padding-bottom:2px}.factory-photo-dots button{width:36px;height:38px}.facility-copy{padding:20px}.manufacturing-page .facility-copy{padding:20px}.facility-copy h3{font-size:28px}.facility-description{min-height:0;font-size:13px}.facility-facts{gap:17px 20px;margin-top:14px}.facility-facts dt{font-size:10px}.facility-facts dd{font-size:21px}}/* Consistent photo frames keep adjacent units aligned while approved views remain uncropped. */
