updated look and feel of the hero component
This commit is contained in:
@@ -3,9 +3,12 @@ import {age} from "../../utils/getAge"
|
||||
import {study} from "../../utils/getCurrentStudy"
|
||||
|
||||
import hero_img from "../../assets/hero.png"
|
||||
const hero_img_src = `url(${hero_img.src})`;
|
||||
|
||||
import Button from "./Button.astro"
|
||||
import EmailButton from "./EmailButton.astro"
|
||||
|
||||
const hero_img_src = `url(${hero_img.src})`;
|
||||
|
||||
---
|
||||
|
||||
<div id="container">
|
||||
@@ -16,8 +19,8 @@ import Button from "./Button.astro"
|
||||
|
||||
<div class="buttonContainer">
|
||||
<Button icon="mdi:git" label="Gitea" href="https://git.herpiederpiee.nl/valentijn?tab=repositories"/>
|
||||
<Button icon="mdi:linkedin" label="LinkedIn", href="https://nl.linkedin.com/in/valentijn-van-der-jagt"/>
|
||||
<Button icon="mdi:email-outline" label="E-mail" href="mailto:valentijn@example.com"/>
|
||||
<Button icon="mdi:linkedin" label="LinkedIn" href="https://nl.linkedin.com/in/valentijn-van-der-jagt"/>
|
||||
<EmailButton icon="mdi:email-outline" label="E-mail" />
|
||||
</div>
|
||||
|
||||
|
||||
@@ -29,47 +32,104 @@ import Button from "./Button.astro"
|
||||
|
||||
#container {
|
||||
font-family: Inter, Roboto, 'Helvetica Neue', 'Arial Nova', 'Nimbus Sans', Arial, sans-serif;
|
||||
height: 60dvh;
|
||||
margin: 10px 10px 0px 10px;
|
||||
background:rgb(172, 146, 116);
|
||||
background-image: var(--hero_img_src) !important;
|
||||
position: relative;
|
||||
min-height: clamp(420px, 58vh, 680px);
|
||||
margin: 10px;
|
||||
padding: clamp(1.5rem, 3vw, 2.5rem);
|
||||
background: radial-gradient(circle at 15% 18%, rgba(255, 246, 228, 0.32), transparent 24%),
|
||||
linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(10, 10, 10, 0.24)),
|
||||
var(--hero_img_src);
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-blend-mode: hue;
|
||||
border-radius: 10pt;
|
||||
border-radius: 20px;
|
||||
box-shadow: 0 24px 60px rgba(16, 14, 12, 0.18);
|
||||
overflow: hidden;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: flex-start;
|
||||
animation: driftBackground 16s ease-in-out infinite alternate;
|
||||
}
|
||||
|
||||
.buttonContainer {
|
||||
padding-left:10px;
|
||||
display: flex;
|
||||
justify-content: start;
|
||||
gap:10px;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
gap: 1rem;
|
||||
margin-top: 1.4rem;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.buttonContainer > * {
|
||||
flex: 0 1 auto;
|
||||
}
|
||||
|
||||
.titleContainer {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.9rem;
|
||||
}
|
||||
|
||||
h1, h3 {
|
||||
font-family: "Work Sans", sans-serif;
|
||||
font-optical-sizing: auto;
|
||||
font-style: normal;
|
||||
margin:0;
|
||||
margin: 0;
|
||||
color: #ecfbff;
|
||||
}
|
||||
|
||||
.main-title {
|
||||
font-size: max(min(8dvw, 130px), 30px);
|
||||
font-weight: 600;
|
||||
|
||||
font-size: clamp(2.5rem, 6vw, 5.25rem);
|
||||
font-weight: 700;
|
||||
line-height: 0.95;
|
||||
letter-spacing: -0.03em;
|
||||
animation: floatText 10s ease-in-out infinite alternate;
|
||||
}
|
||||
|
||||
.sub-title {
|
||||
font-size: max(min(3dvw, 90px), 18px);
|
||||
font-size: clamp(1.5rem, 2.5vw, 2.5rem);
|
||||
font-weight: 300;
|
||||
color: rgba(255, 255, 255, 0.9);
|
||||
margin-top: 0.7rem;
|
||||
opacity: 0.94;
|
||||
}
|
||||
|
||||
@keyframes floatText {
|
||||
0% { transform: translateY(0); }
|
||||
100% { transform: translateY(-8px); }
|
||||
}
|
||||
|
||||
@keyframes driftBackground {
|
||||
0% { background-position: center top; }
|
||||
100% { background-position: 12% 62%; }
|
||||
}
|
||||
|
||||
@media (max-width: 900px) {
|
||||
#container {
|
||||
padding: 1.5rem 1.2rem;
|
||||
}
|
||||
|
||||
|
||||
@media (max-width: 600px) {
|
||||
.buttonContainer {
|
||||
justify-content: space-around;
|
||||
padding-left:0
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 760px) {
|
||||
.buttonContainer {
|
||||
justify-content: center;
|
||||
gap: 0.85rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 600px) {
|
||||
#container {
|
||||
min-height: 360px;
|
||||
}
|
||||
|
||||
.buttonContainer {
|
||||
justify-content: center;
|
||||
gap: 0.8rem;
|
||||
padding: 0.75rem 0 0;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user