feat: update partners view with new collage layout, improved item styling, and responsive design for enhanced user experience
This commit is contained in:
@@ -90,50 +90,97 @@
|
|||||||
position: relative;
|
position: relative;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
.partners-showcase__grid {
|
.partners-showcase__collage {
|
||||||
display: grid;
|
position: relative;
|
||||||
grid-template-columns: repeat(3, 1fr);
|
width: 100%;
|
||||||
gap: 2rem 1.5rem;
|
max-width: 540px;
|
||||||
align-items: center;
|
min-height: 300px;
|
||||||
justify-items: center;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
@media (min-width: 768px) {
|
@media (min-width: 992px) {
|
||||||
.partners-showcase__grid {
|
.partners-showcase__collage {
|
||||||
grid-template-columns: repeat(4, 1fr);
|
min-height: 340px;
|
||||||
gap: 2.25rem 1.75rem;
|
max-width: none;
|
||||||
|
margin: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.partners-showcase__item {
|
.partners-showcase__item {
|
||||||
|
position: absolute;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
width: 100%;
|
padding: 0.25rem;
|
||||||
padding: 0.5rem;
|
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
transition: transform 0.25s ease;
|
transition: transform 0.3s ease, filter 0.3s ease;
|
||||||
}
|
}
|
||||||
.partners-showcase__item:hover {
|
.partners-showcase__item:hover {
|
||||||
transform: scale(1.06);
|
transform: scale(1.08) !important;
|
||||||
|
z-index: 2;
|
||||||
}
|
}
|
||||||
.partners-showcase__item img {
|
.partners-showcase__item img {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
max-height: 72px;
|
|
||||||
width: auto;
|
width: auto;
|
||||||
height: auto;
|
height: auto;
|
||||||
object-fit: contain;
|
object-fit: contain;
|
||||||
filter: grayscale(15%);
|
filter: grayscale(12%);
|
||||||
opacity: 0.9;
|
opacity: 0.92;
|
||||||
transition: filter 0.25s ease, opacity 0.25s ease;
|
transition: filter 0.25s ease, opacity 0.25s ease;
|
||||||
}
|
}
|
||||||
@media (min-width: 992px) {
|
|
||||||
.partners-showcase__item img {
|
|
||||||
max-height: 88px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.partners-showcase__item:hover img {
|
.partners-showcase__item:hover img {
|
||||||
filter: grayscale(0%);
|
filter: grayscale(0%);
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
.partners-showcase__item--0 {
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 44%;
|
||||||
|
transform: rotate(-2deg);
|
||||||
|
}
|
||||||
|
.partners-showcase__item--0 img { max-height: 76px; }
|
||||||
|
.partners-showcase__item--1 {
|
||||||
|
top: 4%;
|
||||||
|
right: 0;
|
||||||
|
width: 46%;
|
||||||
|
transform: rotate(3deg);
|
||||||
|
}
|
||||||
|
.partners-showcase__item--1 img { max-height: 84px; }
|
||||||
|
.partners-showcase__item--2 {
|
||||||
|
top: 36%;
|
||||||
|
left: 18%;
|
||||||
|
width: 52%;
|
||||||
|
transform: rotate(-1deg);
|
||||||
|
}
|
||||||
|
.partners-showcase__item--2 img { max-height: 96px; }
|
||||||
|
.partners-showcase__item--3 {
|
||||||
|
bottom: 2%;
|
||||||
|
left: 2%;
|
||||||
|
width: 42%;
|
||||||
|
transform: rotate(2deg);
|
||||||
|
}
|
||||||
|
.partners-showcase__item--3 img { max-height: 72px; }
|
||||||
|
.partners-showcase__item--4 {
|
||||||
|
bottom: 0;
|
||||||
|
right: 0;
|
||||||
|
width: 40%;
|
||||||
|
transform: rotate(-3deg);
|
||||||
|
}
|
||||||
|
.partners-showcase__item--4 img { max-height: 80px; }
|
||||||
|
@media (max-width: 767.98px) {
|
||||||
|
.partners-showcase__collage {
|
||||||
|
min-height: 260px;
|
||||||
|
max-width: 360px;
|
||||||
|
}
|
||||||
|
.partners-showcase__item--0 img,
|
||||||
|
.partners-showcase__item--1 img,
|
||||||
|
.partners-showcase__item--2 img,
|
||||||
|
.partners-showcase__item--3 img,
|
||||||
|
.partners-showcase__item--4 img {
|
||||||
|
max-height: 64px;
|
||||||
|
}
|
||||||
|
.partners-showcase__item--2 img {
|
||||||
|
max-height: 72px;
|
||||||
|
}
|
||||||
|
}
|
||||||
.partners-stats-badge {
|
.partners-stats-badge {
|
||||||
display: inline-flex;
|
display: inline-flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@@ -223,8 +270,8 @@
|
|||||||
<img class="w-full opacity-40" src="{{ asset('assets/img/photos/blurry.png') }}" alt="" loading="lazy">
|
<img class="w-full opacity-40" src="{{ asset('assets/img/photos/blurry.png') }}" alt="" loading="lazy">
|
||||||
</div>
|
</div>
|
||||||
<div class="partners-showcase relative z-[1]">
|
<div class="partners-showcase relative z-[1]">
|
||||||
<div class="partners-showcase__grid">
|
<div class="partners-showcase__collage">
|
||||||
@foreach(array_slice(array_filter($partners, fn ($p) => !empty($p['logo'])), 0, 7) as $featured)
|
@foreach(array_slice(array_filter($partners, fn ($p) => !empty($p['logo'])), 0, 5) as $index => $featured)
|
||||||
@php
|
@php
|
||||||
$featuredName = $featured['name'] ?? null;
|
$featuredName = $featured['name'] ?? null;
|
||||||
if (!$featuredName && !empty($featured['url'])) {
|
if (!$featuredName && !empty($featured['url'])) {
|
||||||
@@ -233,9 +280,9 @@
|
|||||||
}
|
}
|
||||||
@endphp
|
@endphp
|
||||||
@if(!empty($featured['url']))
|
@if(!empty($featured['url']))
|
||||||
<a href="{{ $featured['url'] }}" target="_blank" rel="nofollow noopener" class="partners-showcase__item" title="{{ $featuredName }}">
|
<a href="{{ $featured['url'] }}" target="_blank" rel="nofollow noopener" class="partners-showcase__item partners-showcase__item--{{ $index }}" title="{{ $featuredName }}">
|
||||||
@else
|
@else
|
||||||
<div class="partners-showcase__item">
|
<div class="partners-showcase__item partners-showcase__item--{{ $index }}">
|
||||||
@endif
|
@endif
|
||||||
<img
|
<img
|
||||||
src="{{ asset('storage/' . $featured['logo']) }}"
|
src="{{ asset('storage/' . $featured['logo']) }}"
|
||||||
|
|||||||
Reference in New Issue
Block a user