167 lines
2.8 KiB
CSS
167 lines
2.8 KiB
CSS
.section {
|
|
padding-block: var(--space-16);
|
|
}
|
|
|
|
.inner {
|
|
max-width: var(--container-width);
|
|
margin-inline: auto;
|
|
padding-inline: var(--space-4);
|
|
}
|
|
|
|
.intro {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: var(--space-4);
|
|
margin-bottom: var(--space-8);
|
|
text-align: center;
|
|
}
|
|
|
|
.heading {
|
|
max-width: 18ch;
|
|
}
|
|
|
|
.lead {
|
|
max-width: 58ch;
|
|
color: var(--color-text-muted);
|
|
}
|
|
|
|
.grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
|
|
gap: var(--space-4);
|
|
justify-content: center;
|
|
}
|
|
|
|
.card {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: var(--space-4);
|
|
background-color: #e2ebe5;
|
|
color: var(--color-accent);
|
|
border-radius: var(--radius-lg);
|
|
padding: var(--space-6) var(--space-6);
|
|
text-decoration: none;
|
|
min-height: 88px;
|
|
transition:
|
|
background-color 0.25s ease,
|
|
color 0.25s ease,
|
|
box-shadow 0.25s ease;
|
|
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
|
|
}
|
|
|
|
.card:hover,
|
|
.card:focus-visible {
|
|
background-color: var(--color-accent);
|
|
color: #ffffff;
|
|
}
|
|
|
|
.cardText {
|
|
font-size: var(--font-size-body);
|
|
line-height: 1.2;
|
|
font-weight: var(--font-weight-semibold);
|
|
max-width: 18ch;
|
|
}
|
|
|
|
.iconWrap {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50px;
|
|
background-color: var(--color-accent);
|
|
color: #ffffff;
|
|
transition:
|
|
background-color 0.25s ease,
|
|
color 0.25s ease;
|
|
}
|
|
|
|
.card:hover .iconWrap,
|
|
.card:focus-visible .iconWrap {
|
|
background-color: #ffffff;
|
|
color: var(--color-accent);
|
|
}
|
|
|
|
.icon {
|
|
display: block;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.section {
|
|
padding-block: var(--space-24);
|
|
}
|
|
|
|
.intro {
|
|
margin-bottom: var(--space-10);
|
|
}
|
|
|
|
.heading {
|
|
max-width: 18ch;
|
|
}
|
|
|
|
.grid {
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
}
|
|
|
|
.card {
|
|
min-height: 96px;
|
|
}
|
|
|
|
.card:nth-child(4),
|
|
.card:nth-child(5) {
|
|
grid-column: span 1;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 1024px) {
|
|
.section {
|
|
padding-block: var(--space-24);
|
|
}
|
|
|
|
.inner {
|
|
padding-inline: var(--space-6);
|
|
}
|
|
|
|
.grid {
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
max-width: 860px;
|
|
margin-inline: auto;
|
|
}
|
|
|
|
.card {
|
|
padding: var(--space-12) var(--space-6);
|
|
}
|
|
|
|
.card:nth-child(4) {
|
|
grid-column: 1 / 2;
|
|
justify-self: end;
|
|
width: 100%;
|
|
max-width: 100%;
|
|
}
|
|
|
|
.card:nth-child(5) {
|
|
grid-column: 2 / 3;
|
|
justify-self: start;
|
|
width: 100%;
|
|
max-width: 100%;
|
|
}
|
|
}
|
|
|
|
@media (hover: none) {
|
|
.card:hover,
|
|
.card:focus-visible {
|
|
background-color: #e2ebe5;
|
|
color: var(--color-accent);
|
|
transform: none;
|
|
}
|
|
|
|
.card:hover .iconWrap,
|
|
.card:focus-visible .iconWrap {
|
|
background-color: var(--color-accent);
|
|
color: #ffffff;
|
|
}
|
|
}
|