Skip to content

Commit db11478

Browse files
committed
feat(footer): enhance contact section with new label and email link
feat(header): update navigation to include dynamic homepage link fix(index): correct heading text for clarity in English and Polish pages style(global): implement mobile-friendly horizontal scroll for problem cards
1 parent d311b28 commit db11478

File tree

5 files changed

+90
-13
lines changed

5 files changed

+90
-13
lines changed

src/components/Footer.astro

Lines changed: 33 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,50 @@ const { lang } = Astro.props;
44
const text = lang === "pl"
55
? {
66
line1: "Szczecin / Europe-Warsaw · Dostępność: konsulting + wdrożenia",
7-
line2: "GitHub + LinkedIn + mail po ustaleniu współpracy (platform rules friendly).",
7+
label: "Kontakt:",
8+
suffix: "Opisz swój kontekst — zaproponujemy sensowny kolejny krok.",
89
}
910
: {
1011
line1: "Szczecin / Europe-Warsaw · Availability: consulting + delivery",
11-
line2: "GitHub + LinkedIn + email after engagement (platform rules friendly).",
12+
label: "Contact:",
13+
suffix: "Share your context — we’ll suggest a reasonable next step.",
1214
};
1315
---
1416

1517
<div style="display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap;">
1618
<div>
1719
<div>{text.line1}</div>
18-
<div style="margin-top:6px; color: rgba(255,255,255,.5)">{text.line2}</div>
20+
21+
<div style="margin-top:6px; color: rgba(255,255,255,.5)">
22+
{text.label}
23+
{" "}
24+
<a
25+
href="mailto:hello@rocketdeploy.dev"
26+
style="border-bottom-color: rgba(122,162,255,.55)"
27+
>
28+
hello@rocketdeploy.dev
29+
</a>
30+
{" "}
31+
· {text.suffix}
32+
</div>
1933
</div>
2034

2135
<div style="display:flex; gap:14px; align-items:center;">
22-
<a href="https://github.com/rocketdeploy-dev" target="_blank" rel="noreferrer">GitHub</a>
23-
<a href="#" aria-disabled="true" style="opacity:.65; border-bottom: none;">LinkedIn</a>
36+
<a
37+
href="https://github.com/rocketdeploy-dev"
38+
target="_blank"
39+
rel="noreferrer"
40+
>
41+
GitHub
42+
</a>
43+
44+
<a
45+
href="#"
46+
aria-disabled="true"
47+
style="opacity:.65; border-bottom: none;"
48+
>
49+
LinkedIn
50+
</a>
2451
</div>
2552
</div>
2653

@@ -35,5 +62,5 @@ const text = lang === "pl"
3562
user-select:none;
3663
"
3764
>
38-
— end of output —
65+
EOF
3966
</div>

src/components/Header.astro

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import LanguageSwitch from "./LanguageSwitch.astro";
33
44
const { lang } = Astro.props;
55
6+
const homeHref = lang === "pl" ? "/pl/" : "/en/";
7+
68
const nav = lang === "pl"
79
? [
810
{ href: "/pl/", label: "Start" },
@@ -17,12 +19,14 @@ const nav = lang === "pl"
1719
{ href: "/en/contact/", label: "Contact" },
1820
];
1921
---
22+
2023
<nav class="nav">
2124
<div class="nav-header">
22-
<div class="brand">
25+
<a href={homeHref} class="brand" aria-label="Go to homepage">
2326
<b>rocketdeploy</b>
2427
<small>systems · delivery · ops</small>
25-
</div>
28+
</a>
29+
2630
<button
2731
class="nav-toggle"
2832
type="button"

src/pages/en/index.astro

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,9 @@ import HeroVisual from "../../components/HeroVisual.astro";
6565
</section>
6666

6767
<section class="section">
68-
<h2>the problem we solve</h2>
68+
<h2>the problems we solve</h2>
6969

70-
<div class="grid" style="grid-template-columns: repeat(3, 1fr);">
70+
<div class="grid problem-snap">
7171
<div class="card">
7272
<div class="kicker">01</div>
7373
<h3>Prototypes don’t reach production</h3>

src/pages/pl/index.astro

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ import HeroVisual from "../../components/HeroVisual.astro";
6868
</section>
6969

7070
<section class="section">
71-
<h2>problem, który rozwiązujemy</h2>
71+
<h2>problemy, które rozwiązujemy</h2>
7272

73-
<div class="grid" style="grid-template-columns: repeat(3, 1fr);">
73+
<div class="grid problem-snap">
7474
<div class="card">
7575
<div class="kicker">01</div>
7676
<h3>Prototyp nie trafia do produkcji</h3>

src/styles/global.css

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ a:hover{ border-bottom-color: rgba(122,162,255,.85); }
6767
display:flex;
6868
gap: 10px;
6969
align-items: baseline;
70+
border-bottom: none;
7071
}
7172
.brand b{ letter-spacing: .2px; }
7273
.brand small{
@@ -409,4 +410,49 @@ h1{
409410
.icon-btn:disabled {
410411
cursor: default;
411412
opacity: 0.9;
412-
}
413+
}
414+
415+
/* Mobile horizontal scroll + snap (opt-in) */
416+
@media (max-width: 700px){
417+
.grid.problem-snap{
418+
/* grid -> flex track (na mobile) */
419+
display: flex;
420+
gap: 12px;
421+
margin-top: 18px;
422+
423+
overflow-x: auto;
424+
overflow-y: visible;
425+
padding: 6px 14px 12px; /* oddech + żeby karta nie kleiła się do krawędzi */
426+
-webkit-overflow-scrolling: touch;
427+
428+
scroll-snap-type: x mandatory;
429+
scroll-padding-left: 14px;
430+
431+
/* ważne: żeby flex nie próbował “upchnąć” elementów */
432+
align-items: stretch;
433+
}
434+
435+
.grid.problem-snap > .card{
436+
flex: 0 0 70%; /* <-- TU jest te “70%” */
437+
scroll-snap-align: start;
438+
}
439+
440+
/* Subtelny hint, że jest scroll w prawo (bardzo oszczędnie) */
441+
.grid.problem-snap{
442+
position: relative;
443+
mask-image: linear-gradient(
444+
90deg,
445+
rgba(0,0,0,1) 0%,
446+
rgba(0,0,0,1) 84%,
447+
rgba(0,0,0,0) 100%
448+
);
449+
}
450+
}
451+
452+
/* Uporządkowanie scrollbarów (nie wpływa na iOS, poprawia desktop/Android) */
453+
.grid.problem-snap{
454+
scrollbar-width: none; /* Firefox */
455+
}
456+
.grid.problem-snap::-webkit-scrollbar{
457+
display: none; /* Chromium/Safari */
458+
}

0 commit comments

Comments
 (0)