From 9485daf99e714ea34e65a453538ddb4b869c2d70 Mon Sep 17 00:00:00 2001 From: Ksan Date: Mon, 31 Aug 2026 12:12:04 +0200 Subject: [PATCH] Give section badge pills a rhomboid shape --- app/[locale]/about/AboutContent.tsx | 2 +- app/[locale]/contact/page.tsx | 2 +- app/[locale]/plans/[code]/PlansContent.tsx | 4 +-- app/[locale]/projects/page.tsx | 2 +- app/[locale]/services/ServicesContent.tsx | 10 +++---- app/globals.css | 32 ++++++++++++++++++++++ components/sections/ProjectsCarousel.tsx | 2 +- components/sections/Services.tsx | 2 +- components/sections/TechStack.tsx | 2 +- 9 files changed, 45 insertions(+), 13 deletions(-) diff --git a/app/[locale]/about/AboutContent.tsx b/app/[locale]/about/AboutContent.tsx index 2da144b..1e147cb 100644 --- a/app/[locale]/about/AboutContent.tsx +++ b/app/[locale]/about/AboutContent.tsx @@ -54,7 +54,7 @@ export default function AboutContent({ locale, dict }: AboutContentProps) { {t.badge} diff --git a/app/[locale]/contact/page.tsx b/app/[locale]/contact/page.tsx index ff2590c..9de90d5 100644 --- a/app/[locale]/contact/page.tsx +++ b/app/[locale]/contact/page.tsx @@ -36,7 +36,7 @@ export default async function ContactPage({
- + diff --git a/app/[locale]/plans/[code]/PlansContent.tsx b/app/[locale]/plans/[code]/PlansContent.tsx index af8ed67..7cb99b1 100644 --- a/app/[locale]/plans/[code]/PlansContent.tsx +++ b/app/[locale]/plans/[code]/PlansContent.tsx @@ -31,7 +31,7 @@ export default function PlansContent({ locale, plans }: PlansContentProps) { > {t.badge} @@ -92,7 +92,7 @@ export default function PlansContent({ locale, plans }: PlansContentProps) { }`} > {tier.highlighted && ( - + {t.popularBadge} diff --git a/app/[locale]/projects/page.tsx b/app/[locale]/projects/page.tsx index b2a1241..4a5f2f5 100644 --- a/app/[locale]/projects/page.tsx +++ b/app/[locale]/projects/page.tsx @@ -37,7 +37,7 @@ export default async function ProjectsPage({
- + {t.badge} diff --git a/app/[locale]/services/ServicesContent.tsx b/app/[locale]/services/ServicesContent.tsx index e72050f..8957434 100644 --- a/app/[locale]/services/ServicesContent.tsx +++ b/app/[locale]/services/ServicesContent.tsx @@ -67,7 +67,7 @@ export default function ServicesContent({ > {t.badge} @@ -114,7 +114,7 @@ export default function ServicesContent({ > {t.offeringsLabel} @@ -198,7 +198,7 @@ export default function ServicesContent({ className="grid grid-cols-1 gap-8 lg:grid-cols-5" > - + @@ -255,7 +255,7 @@ export default function ServicesContent({ > {t.processLabel} @@ -329,7 +329,7 @@ export default function ServicesContent({
- + {t.pricingLabel}

diff --git a/app/globals.css b/app/globals.css index c12c067..f1a61ac 100644 --- a/app/globals.css +++ b/app/globals.css @@ -210,6 +210,38 @@ ); } +@utility rhomboid { + /* Rhomboid (skewed parallelogram) chrome drawn on a pseudo-element so the + label itself stays upright. Colors come from --rhomboid-* (see the + rhomboid-emerald / rhomboid-strong modifiers). */ + position: relative; + isolation: isolate; + + &::before { + content: ""; + position: absolute; + inset: 0; + z-index: -1; + transform: skewX(-12deg); + /* Rounded before the skew, so the slanted points read as soft corners + rather than blades. */ + border-radius: var(--rhomboid-radius, 6px); + border: 1px solid var(--rhomboid-border, rgba(167, 139, 250, 0.3)); + background: var(--rhomboid-bg, rgba(139, 92, 246, 0.1)); + backdrop-filter: blur(12px); + } +} + +@utility rhomboid-emerald { + --rhomboid-border: rgba(52, 211, 153, 0.3); + --rhomboid-bg: rgba(16, 185, 129, 0.1); +} + +@utility rhomboid-strong { + --rhomboid-border: rgba(167, 139, 250, 0.4); + --rhomboid-bg: rgba(139, 92, 246, 0.2); +} + @utility vignette { box-shadow: inset 0 0 200px 50px rgba(0, 0, 0, 0.5); } diff --git a/components/sections/ProjectsCarousel.tsx b/components/sections/ProjectsCarousel.tsx index 4a49f93..8aa260b 100644 --- a/components/sections/ProjectsCarousel.tsx +++ b/components/sections/ProjectsCarousel.tsx @@ -274,7 +274,7 @@ export default function ProjectsCarousel({
{dict.projects.badge} diff --git a/components/sections/Services.tsx b/components/sections/Services.tsx index b488219..92b8776 100644 --- a/components/sections/Services.tsx +++ b/components/sections/Services.tsx @@ -32,7 +32,7 @@ export default function Services({ dict }: ServicesProps) { > {dict.services.badge} diff --git a/components/sections/TechStack.tsx b/components/sections/TechStack.tsx index 5060e4b..e08b47c 100644 --- a/components/sections/TechStack.tsx +++ b/components/sections/TechStack.tsx @@ -68,7 +68,7 @@ export default function TechStack({ dict }: TechStackProps) { > {dict.techStack.badge}