3.4 KB
raw
@keyframes fadeRight {
from {
opacity: 0;
transform: translateX(-40px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
.githubLink {
position: absolute;
top: 24px;
right: 24px;
text-decoration: none;
z-index: 5;
}
.githubLogo {
width: 32px;
height: 32px;
color: var(--text-muted);
opacity: 0.6;
transition:
opacity 200ms ease,
color 200ms ease,
transform 200ms ease;
}
.githubLink:hover .githubLogo {
opacity: 1;
color: var(--green-bright);
transform: rotate(6deg);
}
.blockquote {
font-size: 1.35em;
margin: 4rem auto 3.5rem auto;
padding: 0 2rem;
position: relative;
max-width: 520px;
color: var(--text);
line-height: 1.6;
letter-spacing: 0.01em;
opacity: 0;
animation: fadeRight 600ms ease-out forwards;
}
.blockquote::before {
content: "”";
position: absolute;
top: -1.5rem;
right: 0;
font-size: 6em;
opacity: 0.12;
line-height: 0.5em;
color: var(--green-bright);
pointer-events: none;
}
@media (max-width: 1023.99px) {
.blockquote {
font-size: 1.05em;
margin: 2.5rem auto 2.5rem auto;
padding: 0 1rem;
}
.blockquote::before {
font-size: 4em;
}
}
.creator {
display: block;
margin-left: auto;
margin-right: 2rem;
margin-bottom: 4rem;
width: fit-content;
font-size: 1.25em;
color: var(--text-bright);
text-decoration: none;
transition: color 200ms ease;
position: relative;
opacity: 0;
animation: fadeRight 600ms ease-out 300ms forwards;
padding-bottom: 6px;
}
.creator::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 2px;
background: var(--green);
opacity: 0.25;
pointer-events: none;
}
.creator::before {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 2px;
background: var(--green);
transform-origin: left;
transform: scaleX(1);
animation: scaleLeftOut 400ms ease forwards;
pointer-events: none;
}
.creator:hover {
color: var(--green-bright);
}
.creator:hover::before {
animation: scaleRightIn 300ms ease forwards;
}
@keyframes scaleLeftOut {
from {
transform: scaleX(1);
transform-origin: right;
}
to {
transform: scaleX(0);
transform-origin: right;
}
}
@keyframes scaleRightIn {
from {
transform: scaleX(0);
transform-origin: left;
}
to {
transform: scaleX(1);
transform-origin: left;
}
}
@media (max-width: 1023.99px) {
.creator {
font-size: 1.05em;
}
}
.descriptionContainer {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 3rem;
margin-top: 1rem;
}
@media (max-width: 1023.99px) {
.descriptionContainer {
grid-template-columns: 1fr;
gap: 1.5rem;
}
}
.keysColumn {
display: flex;
flex-direction: column;
gap: 6px;
}
.keysDescription {
font-size: 0.88em;
color: var(--text);
display: flex;
align-items: center;
gap: 12px;
margin: 0;
padding: 4px 0;
opacity: 0;
animation: fadeRight 600ms ease-out 400ms forwards;
}
.keysDescription span {
min-width: 58px;
text-align: center;
padding: 3px 8px;
background: var(--surface);
border: 1px solid var(--border-green);
border-radius: 2px;
font-family: var(--font-mono);
font-size: 0.85em;
color: var(--green-bright);
letter-spacing: 0.04em;
}
@media (max-width: 1023.99px) {
.keysDescription {
font-size: 0.82em;
}
}
.languageRow {
margin-top: 0.5rem;
margin-bottom: 2rem;
}