feat(ui): redesign EU flag with perspective image and gradient fade mask
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 27s
Build & Deploy / 🧪 QA (push) Successful in 1m40s
Build & Deploy / 🏗️ Build (push) Successful in 2m54s
Build & Deploy / 🧪 Post-Deploy Verification (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 27s
Build & Deploy / 🧪 QA (push) Successful in 1m40s
Build & Deploy / 🏗️ Build (push) Successful in 2m54s
Build & Deploy / 🧪 Post-Deploy Verification (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
Build & Deploy / 🚀 Deploy (push) Has been cancelled
This commit is contained in:
@@ -1,44 +1,27 @@
|
||||
'use client';
|
||||
|
||||
import { motion } from 'framer-motion';
|
||||
import Image from 'next/image';
|
||||
|
||||
export function EUFundingBadge() {
|
||||
return (
|
||||
<motion.div
|
||||
initial={{ opacity: 0, x: 20 }}
|
||||
animate={{ opacity: 1, x: 0 }}
|
||||
transition={{ duration: 0.8, delay: 0.8, ease: [0.16, 1, 0.3, 1] }}
|
||||
className="fixed top-24 right-4 md:right-6 lg:right-8 z-40 pointer-events-none select-none"
|
||||
initial={{ opacity: 0 }}
|
||||
animate={{ opacity: 1 }}
|
||||
transition={{ duration: 2, ease: [0.16, 1, 0.3, 1] }}
|
||||
className="absolute top-0 right-0 w-[350px] md:w-[550px] h-[350px] md:h-[550px] z-0 pointer-events-none select-none"
|
||||
style={{
|
||||
maskImage: 'radial-gradient(ellipse at top right, black 10%, transparent 70%)',
|
||||
WebkitMaskImage: 'radial-gradient(ellipse at top right, black 10%, transparent 70%)',
|
||||
}}
|
||||
>
|
||||
<div className="bg-white p-2.5 rounded-sm shadow-[0_8px_30px_rgba(0,0,0,0.12)] border border-neutral-200/60 flex flex-col items-center w-[110px] sm:w-[130px]">
|
||||
{/* EU Flag */}
|
||||
<svg viewBox="0 0 810 540" xmlns="http://www.w3.org/2000/svg" className="w-full h-auto">
|
||||
<path d="M0 0h810v540H0z" fill="#003399"/>
|
||||
<g fill="#fc0" transform="translate(405 270)">
|
||||
<use href="#eu-star" y="-180"/>
|
||||
<use href="#eu-star" y="180"/>
|
||||
<use href="#eu-star" x="-180"/>
|
||||
<use href="#eu-star" x="180"/>
|
||||
<use href="#eu-star" x="-155.885" y="-90"/>
|
||||
<use href="#eu-star" x="155.885" y="90"/>
|
||||
<use href="#eu-star" x="-155.885" y="90"/>
|
||||
<use href="#eu-star" x="155.885" y="-90"/>
|
||||
<use href="#eu-star" x="-90" y="-155.885"/>
|
||||
<use href="#eu-star" x="90" y="155.885"/>
|
||||
<use href="#eu-star" x="-90" y="155.885"/>
|
||||
<use href="#eu-star" x="90" y="-155.885"/>
|
||||
</g>
|
||||
<defs>
|
||||
<path id="eu-star" d="m0-30 7.053 21.708H29.39L10.36 7.64l7.054 21.709L0 15.692l-17.414 13.657 7.054-21.71L-29.39-8.292h22.337z"/>
|
||||
</defs>
|
||||
</svg>
|
||||
{/* Text */}
|
||||
<div className="mt-2 text-center w-full">
|
||||
<span className="block text-[9.5px] sm:text-[11.5px] font-bold text-[#003399] leading-[1.25] tracking-tight font-sans">
|
||||
Kofinanziert von der<br />Europäischen Union
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<Image
|
||||
src="/assets/eu-flag-perspective.png"
|
||||
alt="European Union Background"
|
||||
fill
|
||||
className="object-cover object-top opacity-50 mix-blend-screen"
|
||||
priority
|
||||
/>
|
||||
</motion.div>
|
||||
);
|
||||
}
|
||||
|
||||
BIN
public/assets/eu-flag-perspective.png
Normal file
BIN
public/assets/eu-flag-perspective.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 572 KiB |
Reference in New Issue
Block a user