diff --git a/src/assets/img/about.jpg b/src/assets/img/about.jpg
new file mode 100644
index 0000000..2e3b6ac
Binary files /dev/null and b/src/assets/img/about.jpg differ
diff --git a/src/assets/img/services/1.jpg b/src/assets/img/services/1.jpg
new file mode 100644
index 0000000..00165b9
Binary files /dev/null and b/src/assets/img/services/1.jpg differ
diff --git a/src/assets/img/services/2.jpg b/src/assets/img/services/2.jpg
new file mode 100644
index 0000000..a0a9273
Binary files /dev/null and b/src/assets/img/services/2.jpg differ
diff --git a/src/assets/img/services/3.jpg b/src/assets/img/services/3.jpg
new file mode 100644
index 0000000..0ef5305
Binary files /dev/null and b/src/assets/img/services/3.jpg differ
diff --git a/src/components/GlobalStyles.astro b/src/components/GlobalStyles.astro
index afb01e8..f60a7cc 100644
--- a/src/components/GlobalStyles.astro
+++ b/src/components/GlobalStyles.astro
@@ -2,10 +2,9 @@
@import url("../styles/poppins.css");
:root {
- --font-sans:
- "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
- Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
- sans-serif;
+ --font-sans: "Poppins", system-ui, -apple-system, BlinkMacSystemFont,
+ "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans",
+ "Helvetica Neue", sans-serif;
/* --fs-md: clamp(1.25rem, 0.25vw + 1rem, 2.5rem); */
--fs-md: 1.25rem;
@@ -17,11 +16,14 @@
--leading-paragraph: 1.5;
--tracking-narrow: -0.09375rem;
+ --base-grid: repeat(12, 1fr);
+ --max-content-width: 1920px;
+
--clr-light-400: hsl(0 10% 100%);
--clr-dark-400: hsl(0 17.6% 3.3%);
--clr-ts-warm-red-400: hsl(3 94% 60%);
- --gradient-heading: linear-gradient(
+ --gradient-page-title: linear-gradient(
to bottom,
hsl(from var(--clr-light-400) h s l),
hsl(from var(--clr-light-400) h s calc(l - 10)),
@@ -31,6 +33,22 @@
hsl(from var(--clr-light-400) h s calc(l - 40)),
hsl(from var(--clr-light-400) h s calc(l - 80))
);
+
+ --gradient-heading: linear-gradient(
+ to bottom,
+ hsl(from var(--clr-light-400) h s l),
+ hsl(from var(--clr-light-400) h s calc(l - 10)),
+ hsl(from var(--clr-light-400) h s calc(l - 30)),
+ hsl(from var(--clr-light-400) h s calc(l - 80)),
+ hsl(from var(--clr-light-400) h s calc(l - 90))
+ );
+
+ --gradient-overlay: linear-gradient(
+ to bottom,
+ rgba(0, 0, 0, 0.3) 0%,
+ rgba(0, 0, 0, 0) 40%,
+ rgba(0, 0, 0, 0.3) 100%
+ );
}
body {
@@ -47,7 +65,18 @@
h1,
h2,
- h3 {
+ h3,
+ h4 {
+ font-weight: 600;
+ }
+
+ h1 {
+ background: var(--gradient-page-title);
+ background-clip: text;
+ color: transparent;
+ }
+
+ h2 {
background: var(--gradient-heading);
background-clip: text;
color: transparent;
diff --git a/src/components/landing/AboutSection.astro b/src/components/landing/AboutSection.astro
new file mode 100644
index 0000000..d901889
--- /dev/null
+++ b/src/components/landing/AboutSection.astro
@@ -0,0 +1,107 @@
+---
+import AboutImage from "../../assets/img/about.jpg";
+import { Picture } from "astro:assets";
+---
+
+
+
+
+ Creative.
+ Innovative.
+ Authentic.
+
+
+
+
+ Based in the beautiful city of Vienna, Austria, Tideshift aims
+ to create long lasting partnerships built on sustainable tech
+ and processes.
+
+
+ Whether you're just starting out as a business or you're an
+ enterprise, we will cater to your specific needs and provide
+ creative and tailored solutions that solve your individual
+ problems.
+
+
+
+
+
+
+
+
+ Tideshift is a digital agency specializing in digital sovereignty
+ and innovative systems built with modern web technologies and open
+ source software.
+
+
+
+
+
diff --git a/src/components/landing/HeroSection.astro b/src/components/landing/HeroSection.astro
index ab350c8..4fdef2b 100644
--- a/src/components/landing/HeroSection.astro
+++ b/src/components/landing/HeroSection.astro
@@ -1,12 +1,17 @@
---
-import Image from "astro/components/Image.astro";
+import Picture from "astro/components/Picture.astro";
import HeroImage from "../../assets/img/hero.jpg";
import ArrowDown from "../icons/ArrowDown.astro";
---
@@ -30,10 +35,11 @@ import ArrowDown from "../icons/ArrowDown.astro";
diff --git a/src/components/landing/ServicesSection.astro b/src/components/landing/ServicesSection.astro
new file mode 100644
index 0000000..e2cfbc2
--- /dev/null
+++ b/src/components/landing/ServicesSection.astro
@@ -0,0 +1,99 @@
+---
+import type { ComponentProps } from "astro/types";
+import ServicesCard from "./ServicesCard.astro";
+import Image1 from "../../assets/img/services/1.jpg";
+import Image2 from "../../assets/img/services/2.jpg";
+import Image3 from "../../assets/img/services/3.jpg";
+
+const services: Array
> = [
+ {
+ title: "Innovative Solutions",
+ image: {
+ src: Image1,
+ alt: "A picture showing an abstract form in teal",
+ },
+ items: [
+ "Modern Websites",
+ "Specialized Web Applications",
+ "Cross-platform Mobile Apps",
+ ],
+ },
+ {
+ title: "Tailored Designs",
+ image: {
+ src: Image2,
+ alt: "A picture showing an abstract form in blue/purple",
+ },
+ items: ["Webdesign", "App Design", "Brand/Identity Design"],
+ },
+ {
+ title: "Flexible Projects",
+ image: {
+ src: Image3,
+ alt: "A picture showing an abstract form in red",
+ },
+ items: ["Digital Sovereignty", "Freelancing", "Consulting"],
+ },
+];
+---
+
+
+
+
Our Services.
+
+
+ Together as partners, we will tackle your digital challenge and turn
+ your vision into reality.
+
+
+
+
+ {services.map((service) => )}
+
+
+
+
diff --git a/src/components/landing/ValuesSection.astro b/src/components/landing/ValuesSection.astro
new file mode 100644
index 0000000..9be6ce9
--- /dev/null
+++ b/src/components/landing/ValuesSection.astro
@@ -0,0 +1,98 @@
+---
+import { late } from "astro:schema";
+
+const values = [
+ {
+ title: "Sustainability",
+ text: "Choosing Tideshift as your digital partner is a sustainable way to build your next project and keep it running. We will build your vision on open tech and support you in gaining digital sovereignty.",
+ },
+ {
+ title: "Collaboration",
+ text: "Tideshift is creative at heart and we want your projects to succeed. Iteration is a core principle of creativity and where there is a place to reinvent, there is opportunity for innovation. So feel free to help us improve - feedback and new ideas are always welcome.",
+ },
+ {
+ title: "Privacy",
+ text: "We strongly believe that individuals and businesses should be in control of their data and stay aware of what is happening with their creative work. That's why we focus on using technology and services that protect your data instead of selling it for profit.",
+ },
+];
+
+function formatIndex(index: number) {
+ return `0${index + 1}`.slice(-2);
+}
+---
+
+
+
+
Our Values.
+
+
+ {
+ values.map((v, index) => (
+ -
+ {/* List is grid container */}
+
+
+ {/* Item title */}
+
{v.title}
+
+ {/* Item text */}
+
{v.text}
+
+
+ {/* two digit number left */}
+ {formatIndex(index)}
+
+ ))
+ }
+
+
+
+
+
diff --git a/src/pages/index.astro b/src/pages/index.astro
index 8d17ed7..eefde6d 100644
--- a/src/pages/index.astro
+++ b/src/pages/index.astro
@@ -1,10 +1,19 @@
---
+import AboutSection from "../components/landing/AboutSection.astro";
import HeroSection from "../components/landing/HeroSection.astro";
+import ServicesSection from "../components/landing/ServicesSection.astro";
+import ValuesSection from "../components/landing/ValuesSection.astro";
import BaseLayout from "../layouts/BaseLayout.astro";
---
+
+
+
+
+
+