|
| 1 | +--- |
| 2 | +import Base from '../../layouts/Base.astro'; |
| 3 | +import CornerNav from '../../components/CornerNav.astro'; |
| 4 | +--- |
| 5 | + |
| 6 | +<Base |
| 7 | + title="Роман Пуртов — маркетолог, дизайнер, разработчик" |
| 8 | + description="Создаю лендинги и сайты на чистом коде. Маркетинг, UX/UI дизайн, разработка под ключ." |
| 9 | + ogUrl="https://roman-purtow.ru/offer/02" |
| 10 | + canonical="https://roman-purtow.ru/offer/02" |
| 11 | +> |
| 12 | + <CornerNav showLang={false} homeLink={true} /> |
| 13 | + |
| 14 | + <main class="relative w-screen h-auto min-h-dvh pt-[90px] px-5 pb-8 md:h-dvh md:min-h-0 md:pt-0 md:px-[clamp(20px,2.5vw,48px)] md:pb-0 overflow-hidden flex items-center justify-center bg-zinc-50 dark:bg-zinc-950"> |
| 15 | + |
| 16 | + <div class="flex flex-col gap-8 text-center w-full h-auto md:grid md:grid-cols-12 md:gap-[clamp(20px,2vw,40px)] md:h-full md:text-left items-center"> |
| 17 | + |
| 18 | + <!-- Text block: 5 колонок --> |
| 19 | + <div class="flex flex-col justify-center items-center md:items-start md:col-span-5 pt-[clamp(16px,4dvh,40px)]"> |
| 20 | + <h1 class="text-[clamp(28px,7vw,44px)] md:text-[clamp(56px,7vw,120px)] font-bold leading-[0.93] tracking-tight text-zinc-950 dark:text-zinc-50 mb-[clamp(20px,2vw,36px)] animate-fade-in-up [animation-delay:0.1s]"> |
| 21 | + Маркетолог, дизайнер,<br />разработчик |
| 22 | + </h1> |
| 23 | + <p class="text-[clamp(15px,4vw,18px)] md:text-[clamp(18px,1.8vw,28px)] leading-[1.55] text-zinc-500 dark:text-zinc-400 mb-[28px] md:mb-[clamp(28px,2.5vw,44px)] animate-fade-in-up [animation-delay:0.25s]"> |
| 24 | + Создаю лендинги и сайты на чистом коде —<br class="hidden md:inline" /> |
| 25 | + быстрее студии, качественнее конструктора |
| 26 | + </p> |
| 27 | + <a |
| 28 | + href="https://t.me/roman_purtow" |
| 29 | + class="inline-flex items-center justify-center py-[clamp(14px,1.1vw,18px)] px-[clamp(28px,2.4vw,40px)] bg-zinc-950 dark:bg-zinc-50 text-white dark:text-zinc-950 font-semibold text-[clamp(15px,1.15vw,18px)] rounded-xl no-underline transition-[background,transform] duration-200 ease-in-out w-fit hover:bg-zinc-800 dark:hover:bg-zinc-300 hover:-translate-y-0.5 active:translate-y-0 animate-fade-in-up [animation-delay:0.4s]" |
| 30 | + target="_blank" |
| 31 | + rel="noopener noreferrer" |
| 32 | + > |
| 33 | + Написать в Telegram |
| 34 | + </a> |
| 35 | + </div> |
| 36 | + |
| 37 | + <!-- Photo block: 7 колонок --> |
| 38 | + <div class="flex items-center md:items-end justify-center h-auto flex-1 md:h-full overflow-hidden md:col-span-7 animate-fade-in-up [animation-delay:0.55s]"> |
| 39 | + <img |
| 40 | + src="/images/offer/roman-purtow.png" |
| 41 | + alt="Роман Пуртов" |
| 42 | + class="w-[260px] max-w-[65vw] max-h-none md:max-h-[92dvh] md:w-auto md:max-w-full object-contain block" |
| 43 | + /> |
| 44 | + </div> |
| 45 | + </div> |
| 46 | + |
| 47 | + <!-- Grain overlay --> |
| 48 | + <div class="grain absolute inset-0 pointer-events-none opacity-[0.03]" aria-hidden="true"></div> |
| 49 | + </main> |
| 50 | +</Base> |
| 51 | + |
| 52 | +<style> |
| 53 | + :global(body)::before { display: none !important; } |
| 54 | + :global(body) { background: #fafafa !important; overflow: hidden; } |
| 55 | + :global(.dark body) { background: #09090b !important; } |
| 56 | + |
| 57 | + @keyframes fade-in-up { |
| 58 | + from { opacity: 0; transform: translateY(24px); } |
| 59 | + to { opacity: 1; transform: translateY(0); } |
| 60 | + } |
| 61 | + |
| 62 | + .animate-fade-in-up { |
| 63 | + opacity: 0; |
| 64 | + animation: fade-in-up 0.8s ease forwards; |
| 65 | + } |
| 66 | + |
| 67 | + .grain { |
| 68 | + background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E"); |
| 69 | + background-repeat: repeat; |
| 70 | + background-size: 256px 256px; |
| 71 | + } |
| 72 | + |
| 73 | + @media (max-width: 767px) { |
| 74 | + :global(body) { overflow: auto !important; } |
| 75 | + } |
| 76 | +</style> |
0 commit comments