Jak loom.studio wygląda, brzmi i się porusza — zasady, żywe przykłady i pliki w jednym miejscu.
Wersja 1.0 · [DO UZUPEŁNIENIA: data]
01
Wprowadzenie
loom.studio to studio designu w subskrypcji: jedna miesięczna cena, jedno zadanie naraz, średnio 48 godzin na realizację. Identyfikacja mówi to samo co oferta — porządek, konkret i nic ponad potrzebę.
Efektywny design dla Twojej firmy
loom.studio
Hero w miniaturze: logo na osi, żywy gradient na tuszu, kompozycja na papierze. Przełącz motyw — płyta odwraca się razem ze stroną.
Porządek
Jedna oś, jedna siatka, jeden odstęp między sekcjami.
Figura
Kwadrat, koło i trójkąt prowadzą po stronie — to nawigacja, nie ozdoba.
Ruch z umiarem
Ruszają się tylko transformacje, przezroczystość, przycięcie i rozmiar; przy ograniczeniu ruchu wszystko stoi.
Jak czytać tę księgę
Przełącz motyw w prawym górnym rogu — wszystkie przykłady zmienią się na żywo.
Nazwy nie odmieniamy: „w loom.studio”, „dla loom.studio”.
Domena
[DO UZUPEŁNIENIA] — w konfiguracji strony: loomstudio.pl
02
Logo
Logotyp to nazwa złożona krojem Haus Bold. Kropka stoi na osi — tam, gdzie spotykają się tusz i papier.
Logotyp
loom.studioxxxx
Haus Bold 700 · −0,01 em · tusz na papierze
Niebieskie linie: linia bazowa, wysokość x (0,47 em) i wydłużenia górne (0,70 em). Przerywana ramka: pole ochronne x z każdej strony. Pionowa oś w logo na osi przecina kropkę.
Definicja
Logotyp
„loom.studio” małymi literami, Haus Bold 700, odstęp między literami −0,01 em, interlinia 1.
Rozmiar
W nagłówkach rozmiar T (36 / 32 / 28 px), na dużych płaszczyznach (okładka) rozmiar D (60 / 56 / 48 px).
Proporcje
Szerokość składu 4,60 em, tusz 4,53 em × 0,70 em, wysokość x 0,47 em, kropka 0,106 em × 0,106 em. Bez wydłużeń dolnych.
Kropka
Kropka kroju Haus Bold, bez zmian. W logo na osi stoi w środku siatki 1fr auto 1fr, z korektą optyczną 0,04 em; na podzielonej płaszczyźnie oś tnie ją na 0,053 em — tyle zostaje na tuszu.
Pole ochronne
x = wysokość „o” (0,47 em) z każdej strony, licząc od krawędzi tuszu. Przy 36 px to 17 px. W środku nie ma tekstu, krawędzi ani innych logo.
Minimalny rozmiar
Na ekranie 18 px (tusz ok. 82 × 13 px), w druku 25 mm szerokości. Mniejszy — wtedy sygnet.
Logo na osi
loom.studio
Tak stoi w hero — zawsze na granicy dwóch płaszczyzn: „loom” na tuszu, „studio” na papierze, kropka przecięta osią.
Logotyp w skali 1 : 1 na ekranie. Mniejszy traci kropkę i światło między literami — wtedy sygnet.
Nie rób tego
1Rozciągnięty lub ściśnięty
2Wielkie litery lub inna pisownia
3Kropka usunięta lub zamieniona
4Kolor spoza palety lub gradient w literach
5Efekty: cień, obrys, poświata
6Obrót lub pochylenie
7Za słaby kontrast: papier na żółtym, 1,27 : 1
8Kropka poza osią w logo na osi
Zasady
Tak
Gotowe pliki z sekcji 11.
Logo jest w nich obrysowane — wygląda tak samo bez względu na zainstalowane fonty.
Nie
Logo przepisane innym krojem albo inną grubością.
Logotyp to rysunek, nie tekst — inny krój albo grubość to już inny znak.
Tak
Pole ochronne x z każdej strony.
Logo potrzebuje powietrza jak każdy nagłówek.
Nie
Logo w przycisku albo w ramce.
Przyciski są dla działań, logo stoi samo.
Tak
Jeden kolor na cały logotyp.
Jedyny wyjątek to kropka przecięta osią w logo na osi.
Nie
Animowane litery poza filmem promocyjnym.
Ruch należy do figur i gradientów.
03
Kolory
Papier i tusz budują stronę, trzy kolory podstawowe nadają jej rytm. Każda wartość działa w motywie jasnym i ciemnym.
Proporcje
Papier 60%
Tusz 30%
Czerwony 4%
Niebieski 3%
Żółty 3%
Kolory podstawowe to figury i akcenty, nie tła.
Kolory główne
Stałe
Te wartości nie odwracają się z motywem — na płaszczyznach, które zawsze są ciemne albo białe.
Akcenty i odcienie gradientów
Akcenty
Ciemne odcienie
Jasne odcienie
Marki zewnętrzne
Odcienie żyją wyłącznie w gradientach (content/gradients.ts, content/flow-palettes.ts) — nigdy w tekście ani w przyciskach.
Dwa motywy
Motyw jasny
Jedno zadanie naraz, średnio 48 godzin na realizację.
Umów rozmowęZobacz plan
Motyw ciemny
Jedno zadanie naraz, średnio 48 godzin na realizację.
Umów rozmowęZobacz plan
O motywie decyduje atrybut data-theme na <html> albo prefers-color-scheme; wybór zapisuje cookie loom-theme. Każdy token ma dwie wartości w light-dark() — tu widać obie naraz. Z kolorów podstawowych zmienia się tylko niebieski: #4F59DB w motywie jasnym, #6A73E4 w ciemnym.
Kontrast
Para
Kontrast
Zastosowanie
Tusz na papierze (i odwrotnie)#000000 / #E8E6DF
16,82 : 1
Cały tekst
Papier stały na nocy#E8E6DF / #040C0D
15,81 : 1
Cały tekst
Papier stały na fiolecie głębokim#E8E6DF / #2D0532
14,26 : 1
Cały tekst
Czerń na żółtym#000000 / #F0CA42
13,23 : 1
Cały tekst
Czerń na różu 1#000000 / #F182CF
8,83 : 1
Cały tekst
Niebieski na bieli#4F59DB / #FFFFFF
5,55 : 1
Tekst
Czerwony na czerni#ED3434 / #000000
5,14 : 1
Tekst
Niebieski na czerni (motyw ciemny)#6A73E4 / #000000
5,19 : 1
Tekst
Niebieski na papierze#4F59DB / #E8E6DF
4,44 : 1
Duży tekst i grafika
Biel na czerwonym#FFFFFF / #ED3434
4,08 : 1
Duży tekst i grafika
Czerwony na papierze#ED3434 / #E8E6DF
3,27 : 1
Duży tekst i grafika
Biel na różu 2#FFFFFF / #EF5588
3,32 : 1
Tylko grafika
Szarość na papierze#A6A6A6 / #E8E6DF
1,95 : 1
Nigdy tekst
Żółty na papierze#F0CA42 / #E8E6DF
1,27 : 1
Nigdy sam — z obrysem tuszu 2 px
Zasady
Tak
Kolory tylko przez tokeny i light-dark().
Wtedy oba motywy działają same.
Nie
Nowe wartości HEX w komponentach.
Nowy odcień zaczyna się w styles/globals.css albo w presetach gradientów.
Tak
Kolory podstawowe na figury, stany aktywne i pojedyncze akcenty.
Rytm, nie tapeta.
Nie
Tekst w kolorze podstawowym na papierze.
Czerwony na papierze ma 3,27 : 1, niebieski 4,44 : 1 — za mało na tekst.
Tak
Zaznaczenie: żółte tło i czarny tekst. Fokus: obrys 3 px w kolorze --blue, 3 px od elementu.
Oba stany wyglądają tak samo w każdym miejscu strony.
Nie
Rozjaśnione i półprzezroczyste wersje kolorów podstawowych.
Płaszczyzny są pełne.
Tak
Żółty na papierze zawsze z obrysem tuszu 2 px.
Sam ma 1,27 : 1 — bez obrysu trójkąt znika.
Nie
Odcienie gradientów w tekście albo w przyciskach.
Żyją tylko w gradientach.
04
Typografia
Jeden krój — Haus — w czterech grubościach i czterech rozmiarach na ekran. Hierarchię budujemy grubością, kolorem i odstępem, nie kolejnym rozmiarem.
WOFF2 na własnym serwerze (public/fonts/haus/): Light 300, Regular 400, Medium 500, Bold 700. font-display: swap; wstępnie ładowane 300, 500, 700.
Krój zastępczy
„Haus Fallback” = Arial z korektą metryk (ascent 100,09%, descent 25,6%, line-gap 2,86%, size-adjust 91,02%), potem system-ui. Podmiana nie przesuwa układu.
Kursywa
Jest w pakiecie licencji, ale jej nie używamy — wyróżniamy grubością, nigdy kursywą.
Grubości
AaLight 300Tekst główny, leady, nadtytuły, punktory, hasło na ciemnych płaszczyznach.
AaRegular 400Drobny druk, podpisy, tabele, białe pole (zaproszenie i pole pisania).
AaMedium 500Przyciski, tytuły kroków, tytuł hero, cena, wyróżnienia w listach, numery w spisie treści.
AaBold 700Logotyp, tytuły sekcji (H2) i tytuły podstron (H1), kod języka.
Skala
Rola
Desktop ≥ 1024
Tablet 640–1023
Telefon < 640
Interlinia
D — Display--fs-dtext-d
60
56
48
Interlinia1 · −0,01 em
T — Tytuł--fs-ttext-t
36
32
28
Interlinia1,15
M — Główny--fs-mtext-m
24
22
18
Interlinia1,4 (akapity), 1,2 (interfejs)
S — Mały--fs-stext-s
16
16
14
Interlinia1,4
Na żywo, w rozmiarach tego ekranu
Księga znaku
D · na tym ekranie:
Typografia
T · na tym ekranie:
Jedno zadanie naraz, średnio 48 godzin na realizację.
M · na tym ekranie:
Podpis pod płytą, drobny druk, tabela.
S · na tym ekranie:
Role
Tytuł sekcji (H2)
D Bold; T Bold w FAQ i w tej księdze
Tytuł hero
D Medium
Cena
D Medium, okres M
Nadtytuł
M Light
Tytuł kroku
T Medium
Tekst główny
M Light
Przycisk
M Medium; wersaliki tylko w dwóch przyciskach hero i w „Zapytaj asystenta” w FAQ
Białe pole
M Regular, #000
Drobny druk
S Regular
Tytuł spisu treści
S Medium, wersaliki, +0,06 em
Logo
T Bold
Tester
Zasady
Tak
Nagłówki z text-wrap: balance, akapity z pretty; tekst ciągły do 720 px.
Równe wiersze, bez wdów i sierot.
Nie
Piąty rozmiar albo font-size w stylu inline.
Czterech rozmiarów na widok pilnują Stylelint i test e2e.
Tak
Polskie cudzysłowy „…”, angielskie “…”; pauza ze spacjami „ — ”; wielokropek jednym znakiem „…”.
Typografia, nie maszynopis.
Nie
Kursywa i podkreślenie dla wyróżnienia.
Wyróżnia grubość.
Tak
Twarda spacja po jednoliterowych słowach (a, i, o, u, w, z); ceny tylko przez Intl.
Nic nie zostaje samo na końcu wiersza.
Nie
Tekst wyjustowany, całe zdania wersalikami, spacjowanie w tekście ciągłym.
Wyjustowanie robi dziury między słowami, a wersaliki i spacjowanie męczą przy czytaniu.
05
Ikony
Proste figury na siatce 24 px, jeden kolor, bez zaokrągleń. Kierunek pokazuje trójkąt, nigdy strzałka.
Ikony sekcji
stairsJak pracujemy · 4,7 s
arrowRealizacje · 4,4 s
starCennik · 10 s
dropOpinie · 4,6 s
questionFAQ · 2,6 s
atKontakt · 5 s
Tak wyglądają w nagłówkach sekcji — w rzeczywistym rozmiarze.
Jak pracujemy
Realizacje
Cennik
Opinie
FAQ
Kontakt
BauhausGlyph w polu 20 / 18 / 15 px (desktop / tablet / telefon), 8 px od nadtytułu. Na kafelkach powiększone do 64 px. Każda ikona ma własną pętlę; poza ekranem się zatrzymuje, a przy ograniczonym ruchu stoi w kształcie spoczynkowym.
Ikony interfejsu
Glyph, pole 24 × 24, kolor tekstu (currentColor), obrys 2–2,5 px z prostymi końcami. Kliknij ikonę, żeby skopiować jej kod SVG. Formularze Google zachowują swoje fiolety #7248B9 / #A78BDA. Send i external to jeszcze strzałki — w nowych miejscach kierunek pokazuje Tri.
Kierunek
right · 0°linki, następny miesiąc
down · 90°pobieranie, do najnowszej
left · 180°powrót, poprzedni miesiąc
up · 270°zwiń opinię
Strona głównaPobierz brand kitZapytaj asystenta
Tri: wypełniony trójkąt 10 × 12, ścieżka M0 0 10 6 0 12Z, kolor tekstu, 8 px od etykiety. Obracamy go o 0 / 90 / 180 / 270° — nie rysujemy nowych grotów.
Ikony systemowe
motyw jasny30 × 30
motyw ciemny30 × 30
znak asystentaØ 48
ładowanie22 × 22
kod dostępupo 3 / 6 / 8 znakach
Najedź na słońce albo księżyc: przejście trwa 450 ms, promienie ruszają co 20 ms. Znak asystenta to różowe koło z białym kwadratem, który obraca się o 90°. Ładowanie zmienia kwadrat w koło i trójkąt co 600 ms.
Logotypy narzędzi i serwisów
Next.js
Discord
Framer
Wix
Blender
Figma
Instagram
Facebook
GitHub
X
Behance
Dribbble
Linktree
Trello
LinkedIn
After Effects
InDesign
Next.js
Discord
Framer
After Effects
Wix
InDesign
Blender
Next.js
Discord
Framer
After Effects
Wix
InDesign
Blender
W użyciu: pasek narzędzi, 56 px, 40% krycia (100% po najechaniu). Ścieżki z simple-icons (CC0); znaki towarowe należą do właścicieli. LinkedIn, After Effects i InDesign rysujemy sami. To nie są elementy naszej marki i nie ma ich w paczce do pobrania.
Zasady
Tak
Siatka 24 px, jeden kolor
Wypełnienia albo obrys 2–2,5 px w kolorze tekstu (currentColor).
Nie
Znaki strzałek i emoji
Kierunek pokazuje wyłącznie Tri.
Tak
Opis tylko tam, gdzie ikona jest sama
Obok tekstu ikona ma aria-hidden; sama w przycisku dostaje aria-label, np. „Kopiuj e-mail”.
Nie
Zaokrąglone końce linii
Końce są proste, a narożniki ostre — jak figury Bauhausu.
Tak
Pole kliknięcia co najmniej 24 px
Zalecane 44 px — na telefonie i w rzędach przycisków.
Nie
Ikony dwukolorowe i fonty z ikonami
Jeden kolor, SVG w kodzie. Wyjątki: Formularze Google i znak asystenta.
06
Znaki graficzne
Kwadrat, koło i trójkąt to nasza nawigacja i nasz podpis. Każda figura ma swój kolor i swoje znaczenie.
Kompozycja
179 × 13877 × 77Ø 79 · 46, 4687 × 76 · 92, 62
Kompozycja z hero w skali 2 : 1. Pole 179 × 138; kwadrat 77 × 77 w punkcie (0, 0), koło Ø 79 w (46, 46), trójkąt 87 × 76 w (92, 62), wierzchołkiem do góry. Warstwy od dołu: trójkąt, koło, kwadrat.
Znaczenie
Portfoliokonkret: praca, którą widaćCzerwony · --red · #ED3434
Opinieludzie: klienci i ich słowaNiebieski · --blue · #4F59DB / #6A73E4
Showreelruch: film i animacjaŻółty · --yellow · #F0CA42
W znakach marki przypisanie jest stałe: kwadrat czerwony, koło niebieskie, trójkąt żółty. Wymieniamy je zawsze w tej kolejności; wyjątki są w zasadach niżej.
Zachowanie
Najedź na figurę.
Portfolio rozpada się na 4 × 4 części420 ms
Opinie staje się kroplą250 ms
Showreel obraca się w znak odtwarzania350 ms
Tak reagują figury w hero: kwadrat prowadzi do portfolio, koło do opinii, trójkąt włącza film. Rozpad: części odlatują o 8 + 6·|d| px, obracają się o −12 / −6 / 6 / 12°, narożne maleją do 0,86. Przy ograniczonym ruchu figury stoją.
Figury w użyciu
spoczynek
aktywna
Zakładki dokumentów: obrys 2 px w spoczynku, kolor przy aktywnej.
0 znaków
3 znaki
6 znaków
8 znaków
Kod dostępu: figury wypełniają się po 3, 6 i 8 znakach.
Ładowanie: kwadrat, koło, trójkąt — zmiana co 600 ms (tu 2×).
Proces: żółty kwadrat to Twoje zadanie — dzień rozmowy, karta na tablicy, gotowy projekt.
Ostatnie ujęcie filmu: figury składają się w koło w kwadracie.
Zasady
Tak
Płasko, pełnym kolorem
Każda figura ma jeden kolor podstawowy: kwadrat czerwony, koło niebieskie, trójkąt żółty.
Nie
Gradienty, cienie, obrys z wypełnieniem
Jedyny wyjątek: żółty na jasnym tle dostaje obrys 2 px w kolorze tuszu.
Tak
Kolejność: kwadrat, koło, trójkąt
Tak samo w hero, w zakładkach, w kodzie dostępu i w ładowaniu.
Nie
Inne kolory i inne figury
Wyjątki: żółte zadanie w scenach procesu, czerwona kropka i czarny trójkąt w filmie oraz znak asystenta. Gwiazda tylko w ikonie cennika.
Tak
Obrót tylko w ruchu
W spoczynku figury stoją prosto, a ich proporcje się nie zmieniają.
Nie
Znaki zastępcze z portfolio
Koło w kwadracie, paski i horyzont wypełniają siatkę — to nie są znaki marki.
07
Gradienty i poświaty
Żywe gradienty to powierzchnie, nie ozdobniki: płyną powoli, w kolorach marki, i zatrzymują się, gdy ich nie widać.
Laboratorium
Rampa WebGL work-ember, od najciemniejszego
Siedem gradientów z siatki realizacji: poster CSS (OrganicGradient), a nad nim płynny WebGL (FlowGradient) — dokładnie jak w polu portfolio. „Zatrzymaj” zostawia sam poster. Kliknij kolor rampy, żeby go skopiować.
fBm ze zniekształceniem dziedziny (domain warping), połowa rozdzielczości (najwyżej 1280 × 720), do 30 klatek na sekundę (24 na ekranach dotykowych). Startuje po wczytaniu strony, w bezczynności; poza ekranem i w ukrytej karcie stoi.
Bez WebGL
Przy ograniczonym ruchu, oszczędzaniu danych, 2 rdzeniach lub mniej albo renderowaniu programowym zostaje poster CSS.
Kontrast
Najjaśniejszy kolor ciemnych ramp ma luminancję 0,03 — tekst w kolorze papieru ma na nich zawsze co najmniej 11,2 : 1.
Jedyny gradient statyczny
--pink-gradient: linear-gradient(180deg, #F182CF 0%, #EF5588 100%). To kolor asystenta i niczego więcej — znak asystenta to jedyny przycisk z gradientem.
Poświaty i ziarno
hero-mobile.avif
1170 × 1980 · 1,9 kB
Panel główny hero na telefonie: poświata na --color-night.
hero-tablet.avif
1668 × 2176 · 2,8 kB
Panel główny hero na tablecie: ta sama poświata, szerszy kadr.
testimonial-bg.avif
2400 × 1680 · 4,2 kB
Karty opinii: indygo i śliwka na #2D0532.
Ziarno · krycie 0,06
Ziarno · krycie 0,6
Poświaty to bitmapy AVIF (z zapasowym WebP), bo w tych miejscach nie ma żywego gradientu. Ziarno /media/grain.png kafelkujemy co 128 px z kryciem 0,06 — to jedyna tekstura marki. Obok to samo ziarno dziesięć razy mocniej, żeby było je widać.
Miękki cień ma tylko szkło systemowe: górna nawigacja, dolny pasek, asystent i karta cookies, zawsze z data-surface="glass". Nigdzie indziej nie ma cieni ani drop-shadow. Pełna specyfikacja szkła jest w sekcji 09.
Zasady
Tak
Gradient jako powierzchnia pod treścią
Tło panelu, pola portfolio, hero — nigdy pojedynczy element na papierze.
Nie
Gradient w tekście, logo albo przycisku
Jedyny wyjątek to znak asystenta.
Tak
Tylko kolory z palety i listy odcieni
Nowy preset dopisujemy do content/gradients.ts i content/flow-palettes.ts — najpierw poster CSS, potem rampa.
Nie
Rozmycia, poświaty za tekstem, gotowe siatki
Plamy są ostrymi elipsami w ruchu — miękkość daje ruch, nie filtr.
Tak
Sprawdź kontrast na skrajnych klatkach
Tekst musi być czytelny na najjaśniejszej i najciemniejszej klatce.
Nie
Ruch, którego nie da się zatrzymać
Poza ekranem, w ukrytej karcie i przy ograniczonym ruchu gradient stoi.
08
Zdjęcia / filmy
Pokazujemy pracę, nie stock. Film gra bez dźwięku i bez kontrolek, a w opiniach mogą się pojawić tylko twarze prawdziwych klientów.
Film promocyjny
Film promocyjny loom.studio
loomstudio
16 : 9 — okno showreelu na desktopie
Film promocyjny loom.studio
loomstudio
9 : 16 — panel karuzeli na tablecie i telefonie
Na razie gra makieta — prawdziwy film dodamy wkrótce. [DO UZUPEŁNIENIA]
Odtwarzanie
Bez dźwięku, w pętli, w miejscu (muted, loop, playsinline). Bez kontrolek, obrazu w obrazie i AirPlay. Nigdy YouTube.
Widoczność
Źródła wczytują się przy 10% widoczności, film gra od 60%, poniżej staje — także w ukrytej karcie.
Ograniczony ruch
Zamiast filmu poster (ujęcie 2). Tak samo, gdy przeglądarka zablokuje autoodtwarzanie.
Pliki
Pion 720 × 1280 px, H.264 do 4 MB (+ opcjonalnie WebM) i poziom 16 : 9; 15–30 s, bez ścieżki dźwiękowej; poster AVIF do 60 kB.
Gdzie
public/media/promo/ albo Vercel Blob, adresy w zmiennych NEXT_PUBLIC_PROMO_*. [DO UZUPEŁNIENIA]
Scenariusz makiety
loomstudio
01 · Czerń0–3 s
Logotyp składa się litera po literze, kropka spada jako czerwone koło.
02 · Papier3–6 s
Rysują się linie siatki, wjeżdżają kwadrat, koło i trójkąt.
03 · Niebieski6–9 s
Przewija się ekran aplikacji, wskakuje żółty element.
04 · Żółty9–12 s
Trzy figury krążą i składają się w koło w kwadracie.
Pętla 12 s: cztery ujęcia po 3 s. Każde cięcie to płaskie przetarcie od lewej (clip-path), nigdy przenikanie.
Prawdziwe nagrania ekranu z prawdziwych projektów.
Nie
Stockowe ujęcia ludzi, biur i laptopów.
Pokazujemy pracę, nie stock.
Portrety
JDEM
Opinia — monogram
Odznaka — koła w kolorach podstawowych
Na tej stronie nie ma twarzy — tylko zastępstwa, które serwis pokazuje, gdy brakuje zdjęcia. Portret trafia na stronę wyłącznie za zgodą osoby, która na nim jest.
Kto
Prawdziwi klienci ze zgodą na wizerunek. Do podglądu — portrety AI osób, które nie istnieją (sprawdź licencję komercyjną generatora). Nigdy zdjęcia stockowe prawdziwych ludzi.
Portret
256 × 256 px, AVIF i WebP do 40 kB, kadr 1 : 1 wokół punktu centralnego (domyślnie 50% 35%) — pnpm avatars.
Miniatura
64 × 64 px do 6 kB — do odznaki nad tytułem i w cenniku.
Kształt
Koło, bez ramki i bez cienia.
Brak pliku
Monogram w opiniach, koło w kolorze podstawowym w odznace.
Podgląd AI
Jednolite, ciepłe jasnoszare tło #E8E6DF, miękkie światło z okna z lewej, obiektyw 85 mm, kadr kwadratowy, bez tekstu i logo.
Wizualizacje projektów
Logo białe — na ciemnym albo nasyconym gradiencie · ember
Logo czarne — na jasnym gradiencie · sun
Logo w komórce
Na środku, szerokość min(52%, 220 px), wysokość do 42%, przycięte do znaku — pnpm logos:trim. SVG albo przezroczysty PNG / WebP.
Tło
Żywy gradient z palety marki — nigdy zdjęcie.
Karuzele w cenniku
Pole 288 × 180 px — scena CSS albo wyciszona pętla do 1 MB.
Zasady
Tak
Prawdziwa praca i prawdziwi klienci — za ich zgodą.
Nie
Zdjęcia stockowe ludzi, wymyślone opinie, twarze z AI podpisane jako klienci.
Opinia jest coś warta tylko wtedy, gdy jest prawdziwa.
Tak
Tekst alternatywny mówi, co widać. Obraz ozdobny ma pusty alt.
Nie
Alt „obrazek”, „zdjęcie1.jpg” albo powtórzony podpis.
Czytnik ekranu przeczyta to na głos.
Tak
AVIF i WebP, jawne wymiary (width, height) — nic nie skacze.
Nie
Filtry spoza palety, dźwięk, który gra sam, kontrolki odtwarzacza.
Obraz ma należeć do strony, nie do odtwarzacza.
09
Elementy graficzne
Przyciski, białe pole, szkło, linie i płaszczyzny — mały zestaw, z którego zbudowany jest cały serwis.
Przyciski
Najedź na przycisk, żeby zobaczyć wypełnienie.
Na papierze
Umów rozmowę.btn--solid-inkDowiedz się więcej.btn--outlineZobacz plan.btn--yellow
Na tuszu
Zobacz plan.btn--solid-paperUmów rozmowę.btn--yellowDowiedz się więcej.btn--outline-card
Na stałych ciemnych powierzchniach
Zobacz plan.btn--solid-lightWypełnij formularz.btn--outline-light
Wysokość
--pill-h: 56 / 64 px — jedna dla wszystkich przycisków, nawigacji i dolnego paska.
Odstęp wewnętrzny
--pill-px: 24 / 28 / 32 px
Etykieta
M, Medium 500, wielka litera tylko na początku; wersaliki mają wyłącznie dwa przyciski hero i „Zapytaj asystenta” w FAQ. Na telefonie długa etykieta łamie się na dwie linie w tej samej wysokości.
Kształt
promień 999 px (pełne zaokrąglenie), obrys 2 px w kolorze tekstu (1,5 px na ciemnej karcie).
Najechanie
wypełnienie wjeżdża od lewej: clip-path z inset(0 100% 0 0) do inset(0 0 0 0) w 220 ms (--ease-bauhaus).
Kliknięcie
scale(0.97), 120 ms.
Białe pole
Zapytaj, jak działa subskrypcja…zaproszenie w górnej nawigacjiZapytaj o plan, proces albo cenę…pole pisania asystenta
Kolor
tło #FFF, tekst #000 — tak samo w obu motywach.
Wysokość
--pill-h − 12 px = 44 / 52 px; pełne zaokrąglenie przy jednej linii, bez obrysu i cienia.
Tekst
M, Regular 400.
Podpowiedź
#595959 (7 : 1 na bieli); przycisk wysyłki: czarne koło Ø 34 / 40 px z trójkątem.
Tylko elementy systemowe: górna nawigacja, dolny pasek, asystent, karta cookies — zawsze z data-surface="glass". Nigdy karty treści, cennik ani portfolio.
Linie i ramy
2 pxobrysy figur, linia pod zakładkami, tabele, obrys przycisków
3 pxaktywny wpis spisu treści, pierścień fokusu
4 pxlinia aktywnej zakładki, belki zasad Tak / Nie
5 / 6 px--line: przerwy w siatce portfolio
5 / 7 px--frame: rama siatki i procesu
1 pxjedyna linia 1 px w treści: porządkuje kolumny w karcie cennika
Grubości w rzeczywistym rozmiarze. Oddzielamy płaszczyzną albo linią w kolorze tuszu — nigdy cieniem.
Płaszczyzny
tuszszarośćpapier
Proces na desktopie: papier w szarości w tuszu, wcięte o 7 px i 15 px. Płaszczyzny i karty mają proste narożniki.
Narożniki — nic poza tym nie jest zaokrąglone.
0płaszczyzny, karty, pola siatki
999pxprzyciski
calc(--field-h / 2)białe pole
28px / 20pxkarta cookies
12pxokno Calendly
Drobne elementy
Jedno zadanie naraz
Średnio 48 godzin na realizację
Wstrzymaj lub anuluj w dowolnej chwili
Punktory: kwadrat 3 px, 4 px od lewej, na wysokości wersalików.
+37% więcej leadów już w pierwszym miesiącu
Odznaka: trzy portrety Ø 22 / 24 px, nachodzące na siebie, S Regular obok. [DO WERYFIKACJI] źródło liczby.
FAQ
Najczęstsze pytania
Nagłówek sekcji: ikona i 8 px odstępu, nadtytuł M Light, tytuł pod ikoną bez wcięcia.
Strona główna
Link z kierunkiem: Tri 8 px od etykiety; w linku powrotu po najechaniu cofa się o 3 px.