/* Beevision Portfolio — front end (gallery tiles 786 / 326 / 440 × 360, gap 20) */
.bv-pf-gallery { display: flex; flex-direction: column; gap: 20px; width: 100%; max-width: 786px; }
.bv-pf-row { display: flex; flex-direction: row; gap: 2.5445%; }
.bv-pf-tile { margin: 0; overflow: hidden; background: #fbfbfb; }
.bv-pf-tile img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bv-pf-tile--full { width: 100%; aspect-ratio: 786 / 360; }
.bv-pf-tile--narrow { width: 41.4758%; aspect-ratio: 326 / 360; }
.bv-pf-tile--wide { width: 55.9797%; aspect-ratio: 440 / 360; }
@media (max-width: 767px) {
	.bv-pf-gallery { gap: 12px; }
	.bv-pf-row { flex-direction: column; gap: 12px; }
	.bv-pf-tile--narrow, .bv-pf-tile--wide { width: 100%; }
}
.bv-pf-tech { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; padding: 0; list-style: none; }
.bv-pf-tech-item { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; margin: 0; padding: 6px; background: #fff; border-radius: 10px; }
.bv-pf-tech-item img { max-width: 100%; max-height: 100%; object-fit: contain; }
.bv-pf-tech-item span { font-size: 11px; text-align: center; line-height: 1.2; }
.bv-pf-next { display: flex; align-items: center; gap: 24px; padding: 28px 32px; background: #011738; border-bottom-right-radius: 40px; color: #fbfbfb; text-decoration: none; transition: background-color .3s ease; }
.bv-pf-next:hover { background: #0b2a55; }
.bv-pf-next-text { display: flex; flex-direction: column; gap: 6px; flex: 1; }
.bv-pf-next-label { font-size: 14px; line-height: 18px; color: #8ecae6; }
.bv-pf-next-name { font-size: 32px; line-height: 38px; font-weight: 500; color: #fbfbfb; }
.bv-pf-next-arrow { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: #ffd703; color: #011738; font-size: 24px; transition: transform .3s ease; }
.bv-pf-next:hover .bv-pf-next-arrow { transform: translateX(4px); }
@media (max-width: 767px) { .bv-pf-next-name { font-size: 24px; line-height: 29px; } }
.bv-pf-tile--video { width: 100%; aspect-ratio: 16 / 9; background: #011738; }
.bv-pf-tile--video iframe { display: block; width: 100%; height: 100%; border: 0; }
