
/* Shared visual shell; project-specific interaction styles stay in product/style.css. */
.product-image-button{display:block;position:relative;width:100%;padding:0;border:0;border-radius:inherit;background:transparent;text-align:left}
.product-case .project-media img{object-fit:contain}
.product-case .product-image-button .zoom-cue{width:32px;height:32px;min-width:0;min-height:0;right:12px;bottom:12px}
.product-case .captioned-cover{overflow:visible;border-radius:0;background:transparent}
.product-case .captioned-cover>figcaption{padding:4px 2px 0;line-height:1.55;max-width:none}
.product-case .photo-carousel .carousel-arrow{min-width:44px;min-height:48px}
.product-case .photo-carousel:focus-visible{outline:3px solid #65438a;outline-offset:6px}
.product-case{background:var(--paper);color:var(--ink)}.product-case .wrap{width:min(1180px,calc(100% - 64px))}.product-case .site-header{padding:26px 0;margin:0;max-width:none}.product-case .site-header nav{display:flex;flex-wrap:wrap}.product-case .site-header .pill{display:inline-flex;align-items:center;justify-content:center;line-height:1.6;border:1px solid #85718f;border-radius:999px;font-weight:600;padding:9px 17px;font-size:.91rem;min-height:44px}.product-case .site-header .back-link{text-decoration:none;color:var(--ink)}.product-case .intro{padding:48px 0 30px}.product-case .intro h1,.product-case main>section>h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.1rem,6.3vw,5.9rem);font-weight:400;letter-spacing:-.055em;line-height:1.1;margin:14px 0 22px}.product-case .intro .subtitle{font-size:clamp(1.1rem,2.1vw,1.5rem);line-height:1.5;letter-spacing:-.02em;max-width:70ch}.product-case .facts{display:flex;gap:12px 24px;flex-wrap:wrap;padding:18px 0;margin-top:24px;margin-bottom:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.product-case .case-summary{max-width:80ch}.product-case .site-footer{margin-top:15px;padding:30px 0;max-width:none}.product-case .site-footer .footer-links a{border:1px solid #ac9cb7;background:#ffffff80;border-radius:13px;padding:10px 16px;min-height:44px;display:inline-flex;text-decoration:none;font-size:.9rem}.product-case .project-pagination{margin-top:15px;padding:32px 0;max-width:none}.product-case .project-pagination a{display:inline-flex;align-items:center;gap:12px;text-decoration:none;border:1px solid #ac9cb7;background:#ffffff80;border-radius:13px;padding:10px 16px;min-height:44px;font-size:.9rem;font-weight:550}.product-case .project-pagination .actions{gap:12px}.product-case .color-field{z-index:-1}.product-case .photo-carousel .carousel-arrow{padding:0}.product-case .captioned-cover>figcaption{position:static;display:block;overflow:visible}.product-case .casehero+figcaption{position:static;overflow:visible}@media(max-width:680px){.product-case .wrap{width:calc(100% - 32px)}.product-case .site-header{display:block;padding:20px 0}.product-case .site-header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%}.product-case .site-header .pill{padding:8px 5px;font-size:.77rem;white-space:nowrap}.product-case .intro{padding:30px 0 24px}.product-case .intro h1{font-size:clamp(2.7rem,10vw,4.5rem)}.product-case .site-footer{align-items:start;flex-direction:column;gap:20px}.product-case .site-footer .footer-links a,.product-case .project-pagination a{font-size:.82rem;padding:9px 12px}.product-case .site-header>.back-link{display:inline-flex;margin-bottom:13px;min-height:30px}.product-case .facts{font-size:.87rem}}

.product-case .study-grid .card img{object-fit:contain;object-position:center;padding:18px;background:#eeeaf3}
