Compare commits
4 Commits
0.2.0
...
7fb037d155
| Author | SHA1 | Date | |
|---|---|---|---|
| 7fb037d155 | |||
| db3a515aaa | |||
| 1ee70ba8d6 | |||
| d70791aff2 |
12
.gitmodules
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
[submodule "hotline.mjs"]
|
||||
path = hotline.mjs
|
||||
url = https://git.svoboda.works/mirzaev/hotline.mjs
|
||||
branch = stable
|
||||
[submodule "womb3-simplex.mjs"]
|
||||
path = womb3-simplex.mjs
|
||||
url = https://git.svoboda.works/mirzaev/womb3-simplex.mjs
|
||||
branch = stable
|
||||
[submodule "icons"]
|
||||
path = icons
|
||||
url = https://git.svoboda.works/mirzaev/icons
|
||||
branch = stable
|
||||
54
composer.lock
generated
@@ -1289,16 +1289,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v7.3.6",
|
||||
"version": "v7.3.7",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-foundation.git",
|
||||
"reference": "6379e490d6ecfc5c4224ff3a754b90495ecd135c"
|
||||
"reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/6379e490d6ecfc5c4224ff3a754b90495ecd135c",
|
||||
"reference": "6379e490d6ecfc5c4224ff3a754b90495ecd135c",
|
||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/db488a62f98f7a81d5746f05eea63a74e55bb7c4",
|
||||
"reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1348,7 +1348,7 @@
|
||||
"description": "Defines an object-oriented layer for the HTTP specification",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-foundation/tree/v7.3.6"
|
||||
"source": "https://github.com/symfony/http-foundation/tree/v7.3.7"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1368,20 +1368,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2025-11-06T11:05:57+00:00"
|
||||
"time": "2025-11-08T16:41:12+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-kernel",
|
||||
"version": "v7.3.6",
|
||||
"version": "v7.3.7",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-kernel.git",
|
||||
"reference": "f9a34dc0196677250e3609c2fac9de9e1551a262"
|
||||
"reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/f9a34dc0196677250e3609c2fac9de9e1551a262",
|
||||
"reference": "f9a34dc0196677250e3609c2fac9de9e1551a262",
|
||||
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/10b8e9b748ea95fa4539c208e2487c435d3c87ce",
|
||||
"reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1466,7 +1466,7 @@
|
||||
"description": "Provides a structured process for converting a Request into a Response",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-kernel/tree/v7.3.6"
|
||||
"source": "https://github.com/symfony/http-kernel/tree/v7.3.7"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1486,7 +1486,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2025-11-06T20:58:12+00:00"
|
||||
"time": "2025-11-12T11:38:40+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/intl",
|
||||
@@ -2453,22 +2453,22 @@
|
||||
},
|
||||
{
|
||||
"name": "twig/extra-bundle",
|
||||
"version": "v3.22.0",
|
||||
"version": "v3.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/twigphp/twig-extra-bundle.git",
|
||||
"reference": "6d253f0fe28a83a045497c8fb3ea9bfe84e82cf4"
|
||||
"reference": "b6534bc925bec930004facca92fccebd0c809247"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/6d253f0fe28a83a045497c8fb3ea9bfe84e82cf4",
|
||||
"reference": "6d253f0fe28a83a045497c8fb3ea9bfe84e82cf4",
|
||||
"url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/b6534bc925bec930004facca92fccebd0c809247",
|
||||
"reference": "b6534bc925bec930004facca92fccebd0c809247",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1.0",
|
||||
"symfony/framework-bundle": "^5.4|^6.4|^7.0",
|
||||
"symfony/twig-bundle": "^5.4|^6.4|^7.0",
|
||||
"symfony/framework-bundle": "^5.4|^6.4|^7.0|^8.0",
|
||||
"symfony/twig-bundle": "^5.4|^6.4|^7.0|^8.0",
|
||||
"twig/twig": "^3.2|^4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
@@ -2511,7 +2511,7 @@
|
||||
"twig"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.22.0"
|
||||
"source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -2523,25 +2523,25 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2025-09-15T05:57:37+00:00"
|
||||
"time": "2025-11-02T11:00:49+00:00"
|
||||
},
|
||||
{
|
||||
"name": "twig/intl-extra",
|
||||
"version": "v3.22.0",
|
||||
"version": "v3.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/twigphp/intl-extra.git",
|
||||
"reference": "7393fc911c7315db18a805d3a541ac7bb9e4fdc0"
|
||||
"reference": "93ac31e53cdd3f2e541f42690cd0c54ca8138ab1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/twigphp/intl-extra/zipball/7393fc911c7315db18a805d3a541ac7bb9e4fdc0",
|
||||
"reference": "7393fc911c7315db18a805d3a541ac7bb9e4fdc0",
|
||||
"url": "https://api.github.com/repos/twigphp/intl-extra/zipball/93ac31e53cdd3f2e541f42690cd0c54ca8138ab1",
|
||||
"reference": "93ac31e53cdd3f2e541f42690cd0c54ca8138ab1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1.0",
|
||||
"symfony/intl": "^5.4|^6.4|^7.0",
|
||||
"symfony/intl": "^5.4|^6.4|^7.0|^8.0",
|
||||
"twig/twig": "^3.13|^4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
@@ -2575,7 +2575,7 @@
|
||||
"twig"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/twigphp/intl-extra/tree/v3.22.0"
|
||||
"source": "https://github.com/twigphp/intl-extra/tree/v3.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -2587,7 +2587,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2025-09-15T06:05:04+00:00"
|
||||
"time": "2025-11-02T11:00:49+00:00"
|
||||
},
|
||||
{
|
||||
"name": "twig/twig",
|
||||
|
||||
1
icons
Submodule
12
install.sh
@@ -21,3 +21,15 @@ fi
|
||||
if ! [ -L kodorvan/perm/system/public/js/modules/hotline.mjs ]; then
|
||||
ln -s ../../../../../../hotline.mjs/hotline.mjs kodorvan/perm/system/public/js/modules/hotline.mjs;
|
||||
fi
|
||||
|
||||
if ! [ -L kodorvan/perm/system/public/js/modules/womb3-simplex.mjs ]; then
|
||||
ln -s ../../../../../../womb3-simplex.mjs/womb3-simplex.mjs kodorvan/perm/system/public/js/modules/womb3-simplex.mjs;
|
||||
fi
|
||||
|
||||
if ! [ -L kodorvan/perm/system/public/js/modules/simplex-noise.mjs ]; then
|
||||
ln -s ../../../../../../womb3-simplex.mjs/simplex-noise.mjs kodorvan/perm/system/public/js/modules/simplex-noise.mjs;
|
||||
fi
|
||||
|
||||
if ! [ -d kodorvan/perm/system/public/css/icons ]; then
|
||||
ln -s ../../../../../icons/css kodorvan/perm/system/public/css/icons;
|
||||
fi
|
||||
|
||||
@@ -44,6 +44,12 @@ final class index extends core
|
||||
if (str_contains($this->request->headers['accept'] ?? '', content::html->value)) {
|
||||
// Request for HTML response
|
||||
|
||||
// Initializing the team workload
|
||||
$this->view->workload = (string) ($_COOKIE['workload'] ?? rand(20, 80));
|
||||
|
||||
// Sending the cookie with the team workload (1800 = 30min)
|
||||
setcookie('workload', $this->view->workload, time() + 1800, '/');
|
||||
|
||||
// Render page
|
||||
$page = $this->view->render('main/index.html');
|
||||
|
||||
|
||||
1
kodorvan/perm/system/public/css/icons
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../../icons/css
|
||||
1
kodorvan/perm/system/public/js/modules/simplex-noise.mjs
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../../../womb3-simplex.mjs/simplex-noise.mjs
|
||||
1
kodorvan/perm/system/public/js/modules/womb3-simplex.mjs
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../../../womb3-simplex.mjs/womb3-simplex.mjs
|
||||
@@ -10,12 +10,40 @@ import("../modules/hotline.mjs").then((module) => {
|
||||
instance.alive = true;
|
||||
instance.wheel = false;
|
||||
instance.delta = 3;
|
||||
instance.step = -0.5;
|
||||
|
||||
// Starting the hotline instance
|
||||
instance.start();
|
||||
});
|
||||
|
||||
document.addEventListener('dragstart', function(event) {
|
||||
event.preventDefault();
|
||||
return false;
|
||||
});
|
||||
import("../modules/womb3-simplex.mjs").then((module) => {
|
||||
// Initializing the instance
|
||||
const womb = new module.womb(document.getElementById("introdution_animation"));
|
||||
womb.block = {
|
||||
width: 40,
|
||||
height: 40,
|
||||
};
|
||||
womb.init();
|
||||
womb.generate(undefined, '#000');
|
||||
|
||||
// Initializing the process registers
|
||||
let offset = 0;
|
||||
let speed = 0.01;
|
||||
|
||||
// Starting the process
|
||||
setInterval(function () {
|
||||
womb.dump();
|
||||
womb.generate((offset += speed), '#000');
|
||||
}, 60);
|
||||
|
||||
// Initializing the resizing event processor
|
||||
window.addEventListener(
|
||||
"resize",
|
||||
function (e) {
|
||||
womb.init();
|
||||
womb.dump();
|
||||
womb.generate((offset += speed), '#000');
|
||||
},
|
||||
true
|
||||
);
|
||||
});
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
aside {
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
.advantages {
|
||||
margin: 0 auto;
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#company {
|
||||
justify-self: end;
|
||||
width: 160px;
|
||||
padding: 1rem;
|
||||
padding-bottom: unset;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.5rem;
|
||||
font-family: "Bahnschrift";
|
||||
|
||||
> h4.name {
|
||||
margin: unset;
|
||||
display: block;
|
||||
text-align: right;
|
||||
font-weight: 600;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
> p.column {
|
||||
margin: unset;
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
text-align: right;
|
||||
gap: 0.2em;
|
||||
font-size: 0.8rem;
|
||||
color: grey;
|
||||
|
||||
> span.row {
|
||||
display: inline-flex;
|
||||
justify-content: end;
|
||||
font-weight: 400;
|
||||
|
||||
&:before {
|
||||
margin-right: auto;
|
||||
font-weight: 600;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
> span.tax {
|
||||
&:before {
|
||||
content: var(--company-tax) ":";
|
||||
}
|
||||
}
|
||||
|
||||
> span.identifier {
|
||||
&:before {
|
||||
content: var(--company-identifier) ":";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#cookies {
|
||||
--shadow: 4px 4px 10px 0px rgb(0 0 0 / 45%);
|
||||
z-index: 3100;
|
||||
right: var(--fixed-right, 2rem);
|
||||
bottom: var(--fixed-bottom, 2rem);
|
||||
position: fixed;
|
||||
font-family: "Bahnschrift";
|
||||
/* border: 1px solid #a8a8a847; */
|
||||
border: 1px solid #fff;
|
||||
/* border-right: unset;
|
||||
border-bottom: unset; */
|
||||
border-radius: 0.75rem;
|
||||
color: #fff;
|
||||
background-color: #000000b8;
|
||||
background-color: #000000;
|
||||
/* backdrop-filter: blur(3px); */
|
||||
box-shadow: var(--shadow);
|
||||
-webkit-box-shadow: var(--shadow);
|
||||
-moz-box-shadow: var(--shadow);
|
||||
transition: opacity 0.1s ease-out;
|
||||
|
||||
> div {
|
||||
padding: 0.8rem 1.2rem 0.7rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
> p {
|
||||
margin: unset;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
> small {
|
||||
font-size: 0.8rem;
|
||||
font-weight: 200;
|
||||
color: #a6a69d;
|
||||
}
|
||||
}
|
||||
|
||||
> button {
|
||||
top: -0.4rem;
|
||||
right: -2rem;
|
||||
position: absolute;
|
||||
padding: unset;
|
||||
padding-right: 0.1em;
|
||||
cursor: pointer;
|
||||
border: unset;
|
||||
color: #f00;
|
||||
background: unset;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#cookies {
|
||||
--shadow: 4px 4px 10px 0px rgb(0 0 0 / 45%);
|
||||
z-index: var(--cookies-z-index, 6000);
|
||||
right: var(--cookies-right, 2rem);
|
||||
bottom: var(--cookies-bottom, 2rem);
|
||||
position: fixed;
|
||||
width: var(--cookies-width, 400px);
|
||||
height: var(--cookies-height, 40px);
|
||||
/* padding: 0.8rem 1.2rem 0.7rem; */
|
||||
font-family: "Bahnschrift";
|
||||
color: #fff;
|
||||
transition: opacity 0.1s ease-out;
|
||||
|
||||
:is(> label[for="cookies"]:focus) {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
+ div.cookies.background {
|
||||
z-index: calc(var(--cookies-z-index, 6000) - 1);
|
||||
right: var(--cookies-right, 2rem);
|
||||
bottom: var(--cookies-bottom, 2rem);
|
||||
position: fixed;
|
||||
width: var(--cookies-width, 400px);
|
||||
height: var(--cookies-height, 40px);
|
||||
border: 1px solid #a8a8a847;
|
||||
border-right: unset;
|
||||
border-bottom: unset;
|
||||
border-radius: 0.75rem;
|
||||
background-color: #33323691;
|
||||
backdrop-filter: blur(3px);
|
||||
mix-blend-mode: screen;
|
||||
box-shadow: var(--shadow);
|
||||
-webkit-box-shadow: var(--shadow);
|
||||
-moz-box-shadow: var(--shadow);
|
||||
}
|
||||
|
||||
> div {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
> p {
|
||||
margin: unset;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
> small {
|
||||
font-size: 0.8rem;
|
||||
font-weight: 200;
|
||||
color: #a6a69d;
|
||||
}
|
||||
}
|
||||
|
||||
> label {
|
||||
right: -20px;
|
||||
top: -20px;
|
||||
position: absolute;
|
||||
padding: unset;
|
||||
padding-right: 0.1em;
|
||||
cursor: pointer;
|
||||
border: unset;
|
||||
color: #f00;
|
||||
background: unset;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#description {
|
||||
padding-top: 1.5rem;
|
||||
gap: 1rem;
|
||||
|
||||
> p {
|
||||
margin: unset;
|
||||
width: var(--width);
|
||||
font-family: "Cascadia Code";
|
||||
font-weight: 300;
|
||||
font-size: 0.8rem;
|
||||
|
||||
> span {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
+ small {
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 100;
|
||||
}
|
||||
}
|
||||
|
||||
> ul.table {
|
||||
/* --border-color: #000; */
|
||||
--border-color: unset;
|
||||
margin: unset;
|
||||
margin-top: 1rem;
|
||||
width: var(--width);
|
||||
padding: unset;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 0.8rem;
|
||||
font-weight: 400;
|
||||
list-style: none;
|
||||
overflow: hidden;
|
||||
border-radius: 0.75rem;
|
||||
border: 1px solid var(--border-color);
|
||||
|
||||
> li {
|
||||
height: 3rem;
|
||||
display: flex;
|
||||
border-bottom: 1px dashed var(--border-color);
|
||||
|
||||
&:is(:last-of-type) {
|
||||
border-bottom: unset;
|
||||
}
|
||||
|
||||
> span {
|
||||
padding: 0.25rem 0.45rem;
|
||||
display: inline;
|
||||
align-content: center;
|
||||
|
||||
&:is(.bad) {
|
||||
width: 45%;
|
||||
opacity: 0.6;
|
||||
border-right: 1px solid var(--border-color);
|
||||
/* background-color: #ffe1e1; */
|
||||
|
||||
> i.icon.close {
|
||||
margin-top: -0.4em;
|
||||
color: #c64d4d;
|
||||
}
|
||||
}
|
||||
|
||||
&:is(.good) {
|
||||
width: 70%;
|
||||
/* background-color: #e0ffd5; */
|
||||
|
||||
> i.icon.check {
|
||||
min-width: var(--width);
|
||||
color: #77b81b;
|
||||
}
|
||||
}
|
||||
|
||||
> i.icon {
|
||||
float: left;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> strong.partners {
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
font-size: 1.2rem;
|
||||
|
||||
> span {
|
||||
color: #1e1df2;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,162 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#introdution {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: var(--introdution-height, 350px);
|
||||
overflow: hidden;
|
||||
|
||||
+ section.row {
|
||||
--shadow: 0px -10px 60px 30px rgba(0, 0, 0, 0.6);
|
||||
padding-top: 1rem;
|
||||
box-shadow: var(--shadow);
|
||||
-webkit-box-shadow: var(--shadow);
|
||||
-moz-box-shadow: var(--shadow);
|
||||
}
|
||||
|
||||
> div.information {
|
||||
z-index: 200;
|
||||
position: fixed;
|
||||
width: 30vw;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
cursor: default;
|
||||
|
||||
> span#label {
|
||||
margin-top: -2em;
|
||||
padding: 0.4em 0.8em 0.2em 1.2em;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1em;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
border-radius: 1.125rem;
|
||||
color: #aeb629;
|
||||
border: 1px solid #bababa1c;
|
||||
background-color: #6262623b;
|
||||
backdrop-filter: blur(1.3px);
|
||||
|
||||
> i.icon.code {
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
}
|
||||
|
||||
> h2#title {
|
||||
margin: unset;
|
||||
width: max-content;
|
||||
padding: 0.2em 0.5em 0em;
|
||||
font-family: Bahnschrift;
|
||||
font-size: 2.6rem;
|
||||
font-weight: 400;
|
||||
color: #fff;
|
||||
text-shadow:
|
||||
0px 0px 4px #ffffff,
|
||||
0px 0px 9px #ffffff96;
|
||||
}
|
||||
|
||||
> p#team {
|
||||
margin: unset;
|
||||
width: 100%;
|
||||
/* height: 70px; */
|
||||
box-sizing: border-box;
|
||||
padding: 0.6em 1em;
|
||||
text-align: center;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
border-radius: 0.75rem;
|
||||
background-color: #fff;
|
||||
|
||||
> b {
|
||||
color: #152bcb;
|
||||
}
|
||||
|
||||
> strong {
|
||||
color: #de1111;
|
||||
}
|
||||
}
|
||||
|
||||
> span {
|
||||
position: absolute;
|
||||
display: flex;
|
||||
padding: 0.4em 0.8rem 0.3em;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
border-radius: 0.75rem;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
> div.background {
|
||||
z-index: 100;
|
||||
top: -5%;
|
||||
left: -5%;
|
||||
position: absolute;
|
||||
width: 110%;
|
||||
height: 110%;
|
||||
animation-name: appearance;
|
||||
animation-fill-mode: forwards;
|
||||
animation-duration: 0.2s;
|
||||
animation-timing-function: ease-in;
|
||||
filter: blur(1.8px) contrast(50);
|
||||
|
||||
> div.dots {
|
||||
--dot-bg: black;
|
||||
--dot-color: #00ff00;
|
||||
--dot-size: 4px;
|
||||
--dot-space: 7px;
|
||||
z-index: -50;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background:
|
||||
linear-gradient(
|
||||
90deg,
|
||||
var(--dot-bg) calc(var(--dot-space) - var(--dot-size)),
|
||||
transparent 1%
|
||||
)
|
||||
center / var(--dot-space) var(--dot-space),
|
||||
linear-gradient(
|
||||
var(--dot-bg) calc(var(--dot-space) - var(--dot-size)),
|
||||
transparent 1%
|
||||
)
|
||||
center / var(--dot-space) var(--dot-space),
|
||||
var(--dot-color);
|
||||
mix-blend-mode: color-burn;
|
||||
filter: contrast(5);
|
||||
}
|
||||
|
||||
> video:only-of-type {
|
||||
z-index: -100;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
object-position: center;
|
||||
scale: 1.1;
|
||||
filter: blur(5px);
|
||||
}
|
||||
|
||||
> canvas#introdution_animation {
|
||||
z-index: -100;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
scale: 1.2;
|
||||
filter: url(#blob) contrast(var(--contrast, 30));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes appearance {
|
||||
0% {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
nav#links {
|
||||
flex-grow: 1;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
gap: 1rem;
|
||||
|
||||
> a {
|
||||
text-decoration: none;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
font-size: 0.85rem;
|
||||
color: #807f7f;
|
||||
transition: color 0.1s ease-out;
|
||||
|
||||
&:is(:hover, :focus) {
|
||||
color: #d5d5d5;
|
||||
transition: color 0s;
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: #4b4b4b;
|
||||
transition: color 0s;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#office {
|
||||
display: flex;
|
||||
height: 100%;
|
||||
|
||||
> div.map {
|
||||
width: 250px;
|
||||
height: 100%;
|
||||
overflow: hidden;
|
||||
border-radius: 0.75rem;
|
||||
border: 1px solid #fff;
|
||||
background-color: #0c110c;
|
||||
|
||||
> div.loading {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
filter: brigtless(0.8) blur(1px);
|
||||
|
||||
&:before {
|
||||
margin-top: 50px;
|
||||
position: absolute;
|
||||
content: var(--map-loading, "Loading");
|
||||
width: max-content;
|
||||
text-align: center;
|
||||
font-family: "Geologica";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 0.6rem;
|
||||
color: #533a3a;
|
||||
}
|
||||
|
||||
> i.icon.loading.spinner {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#projects {
|
||||
padding-top: 2.5rem;
|
||||
padding-bottom: 1rem;
|
||||
/* transform: rotate3d(220, -777, -100, 385deg) scale(1.1); */
|
||||
|
||||
> h2.title {
|
||||
font-size: 2.4rem;
|
||||
font-family: "Bahnschrift";
|
||||
margin: 0.1em 0 0.2em 0;
|
||||
}
|
||||
|
||||
div.hotline {
|
||||
width: 100vw;
|
||||
height: 250px;
|
||||
display: inline-flex;
|
||||
gap: 15px;
|
||||
|
||||
> :is(article, div) {
|
||||
position: relative;
|
||||
min-width: 220px;
|
||||
max-width: 220px;
|
||||
width: 220px;
|
||||
height: 100%;
|
||||
overflow: hidden;
|
||||
border-radius: 0.75rem;
|
||||
|
||||
h4 {
|
||||
position: absolute;
|
||||
z-index: 50;
|
||||
justify-self: center;
|
||||
bottom: 0.4rem;
|
||||
margin: unset;
|
||||
padding: 0.4rem 1rem 0.3rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 1.2rem;
|
||||
font-weight: 900;
|
||||
color: #fff;
|
||||
text-shadow: 2px 2px 3px #000;
|
||||
}
|
||||
|
||||
img.background {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
&:is(.pechatalka) {
|
||||
> img.background {
|
||||
filter: blur(1.5px) brightness(0.8);
|
||||
}
|
||||
}
|
||||
|
||||
&:is(.understyle) {
|
||||
> img.background {
|
||||
object-position: bottom;
|
||||
filter: blur(1px) brightness(0.8);
|
||||
}
|
||||
}
|
||||
|
||||
&:is(.surikov) {
|
||||
> img.background {
|
||||
object-position: bottom;
|
||||
filter: blur(0.4px) brightness(0.8);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,5 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#services {
|
||||
margin: unset;
|
||||
display: flex;
|
||||
@@ -0,0 +1,41 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#shortcut {
|
||||
> div {
|
||||
width: var(--width);
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
gap: 1rem;
|
||||
|
||||
> div.column {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
&:is(.statistics) {
|
||||
width: 300px;
|
||||
|
||||
> p {
|
||||
margin: unset;
|
||||
margin-top: 0.8rem;
|
||||
display: flex;
|
||||
gap: 0.4rem;
|
||||
font-family: "Cascadia Code";
|
||||
font-weight: 600;
|
||||
|
||||
&:is(:first-of-type) {
|
||||
margin-top: unset;
|
||||
}
|
||||
|
||||
> span {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
+ small {
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 100;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#telegram {
|
||||
--diameter: var(--telegram-diameter, 50px);
|
||||
z-index: 3000;
|
||||
bottom: var(--fixed-bottom);
|
||||
left: var(--fixed-left);
|
||||
position: fixed;
|
||||
width: var(--diameter);
|
||||
height: var(--diameter);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
> a {
|
||||
z-index: 200;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 100%;
|
||||
box-shadow: 0px 0px 8px 0px rgb(0 0 0 / 30%);
|
||||
transition: scale 0.1s ease-out;
|
||||
|
||||
&:is(:hover, :focus) {
|
||||
scale: 1.05;
|
||||
transition: scale 0.1s ease-in;
|
||||
}
|
||||
|
||||
&:active {
|
||||
scale: 1;
|
||||
filter: brightness(0.8);
|
||||
transition: scale 0s;
|
||||
}
|
||||
|
||||
> img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
> div {
|
||||
--half: calc(var(--telegram-diameter, 0) / 2);
|
||||
--border-radius: 10rem;
|
||||
--gap: 1rem;
|
||||
--border: 1px;
|
||||
z-index: 100;
|
||||
left: var(--half);
|
||||
position: absolute;
|
||||
width: max-content;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
padding-right: 2rem;
|
||||
padding-left: calc(var(--half, 0) + var(--gap, 1rem));
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
font-family: "Bahnschrift";
|
||||
border-radius: 0 var(--border-radius) var(--border-radius) 0;
|
||||
border: var(--border, 1px) solid #ded9fae6;
|
||||
border-bottom: unset;
|
||||
background-color: #c0bcd6cc;
|
||||
backdrop-filter: blur(2px);
|
||||
|
||||
> span {
|
||||
font-size: 1.2rem;
|
||||
font-weight: 400;
|
||||
color: #09394e;
|
||||
}
|
||||
|
||||
> small {
|
||||
margin-top: -0.2em;
|
||||
font-size: 0.8rem;
|
||||
font-weight: 400;
|
||||
color: #415970;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
section#workload {
|
||||
height: 80px;
|
||||
padding-top: unset !important;
|
||||
padding-bottom: 1rem;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
> p {
|
||||
margin: unset;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
font-family: "Cascadia Code";
|
||||
font-size: 1.2rem;
|
||||
|
||||
> span {
|
||||
position: relative;
|
||||
margin-left: 1rem;
|
||||
font-weight: 700;
|
||||
|
||||
&:is(.small) {
|
||||
color: #18c32a;
|
||||
}
|
||||
|
||||
&:is(.medium) {
|
||||
color: #184dc3;
|
||||
}
|
||||
|
||||
&:is(.heavy) {
|
||||
color: #ff0b0b;
|
||||
}
|
||||
|
||||
> small {
|
||||
right: 0;
|
||||
bottom: -1rem;
|
||||
position: absolute;
|
||||
width: max-content;
|
||||
font-size: 0.8rem;
|
||||
font-weight: 300;
|
||||
color: initial;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
0
kodorvan/perm/system/public/themes/default/css/fonts.css
Executable file → Normal file
@@ -1,42 +1,28 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
footer {
|
||||
box-sizing: border-box;
|
||||
padding: 0 20%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
gap: 0.5rem;
|
||||
margin: 2rem 0 1rem 0;
|
||||
z-index: 4000;
|
||||
position: relative;
|
||||
height: var(--footer-height, 200px);
|
||||
padding: 1rem 10vw;
|
||||
display: flex;
|
||||
align-items: self-end;
|
||||
color: #fff;
|
||||
background-color: #000;
|
||||
--shadow: 0px 0px 80px 25px rgba(0, 0, 0, 0.4);
|
||||
box-shadow: var(--shadow);
|
||||
-webkit-box-shadow: var(--shadow);
|
||||
-moz-box-shadow: var(--shadow);
|
||||
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
> div.column {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: end;
|
||||
gap: 1rem;
|
||||
|
||||
> p#description {
|
||||
text-align: center;
|
||||
font-size: 1rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
margin: unset;
|
||||
color: rgb(0, 0, 0, 0.6);
|
||||
}
|
||||
> div#link {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
gap: 1rem;
|
||||
|
||||
> a {
|
||||
text-decoration: none;
|
||||
font-size: 1rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
color: rgb(160, 160, 160);
|
||||
transition: ease 0.2s;
|
||||
&:hover {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
&:is(:last-of-type:last-child) {
|
||||
margin-left: auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,84 +1,75 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
header {
|
||||
top: 0;
|
||||
left: 0;
|
||||
position: fixed;
|
||||
width: 100vw;
|
||||
height: 70px;
|
||||
box-sizing: border-box;
|
||||
padding: 0 20%;
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 2fr 1fr;
|
||||
z-index: 1000;
|
||||
top: 0;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
width: 100vw;
|
||||
height: calc(var(--menu-height) + var(--introdution-height));
|
||||
pointer-events: none;
|
||||
|
||||
justify-items: center;
|
||||
align-items: center;
|
||||
background-color: #f7fafc;
|
||||
z-index: 1000;
|
||||
> div {
|
||||
top: 0;
|
||||
position: sticky;
|
||||
width: 100%;
|
||||
height: var(--menu-height);
|
||||
box-sizing: border-box;
|
||||
padding: 0 20%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
pointer-events: all;
|
||||
background-color: #fff;
|
||||
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
> span#logotype {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-size: 1.1rem;
|
||||
> a#logotype {
|
||||
margin-top: -0.4rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-size: 1.1rem;
|
||||
text-decoration: none;
|
||||
color: #000;
|
||||
|
||||
> h4:only-of-type:first-child {
|
||||
margin: unset;
|
||||
font-family: "Cascadia Code";
|
||||
font-size: 2.5em;
|
||||
}
|
||||
> h4:only-of-type:first-child {
|
||||
margin: unset;
|
||||
font-family: "Cascadia Code";
|
||||
font-size: 2.5em;
|
||||
}
|
||||
|
||||
> small:only-of-type:last-child {
|
||||
justify-self: end;
|
||||
align-self: end;
|
||||
margin-top: -0.8em;
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 0.62em;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
> small:only-of-type:last-child {
|
||||
justify-self: end;
|
||||
align-self: end;
|
||||
margin-top: -0.8em;
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 0.62em;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
|
||||
> nav#menu {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
font-family: "Geologica";
|
||||
> nav#menu {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
font-family: "Geologica";
|
||||
|
||||
> a {
|
||||
text-decoration: none;
|
||||
font-weight: 500;
|
||||
font-size: 1rem;
|
||||
text-transform: uppercase;
|
||||
color: rgb(0, 0, 0, 0.5);
|
||||
transition: ease 0.2s;
|
||||
> a {
|
||||
text-decoration: none;
|
||||
font-weight: 500;
|
||||
font-size: 1rem;
|
||||
text-transform: uppercase;
|
||||
color: rgb(0, 0, 0, 0.5);
|
||||
transition: ease 0.2s;
|
||||
|
||||
&:hover {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> a#order {
|
||||
display: flex;
|
||||
gap: 5px;
|
||||
align-items: center;
|
||||
padding: 0.5em 1.3em;
|
||||
border-radius: 1.125em;
|
||||
|
||||
font-family: "Cascadia Code";
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: #0ea5e9;
|
||||
color: #fff;
|
||||
transition: 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
}
|
||||
&:hover {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
section.hotline {
|
||||
|
||||
max-width: 100vw;
|
||||
max-height: 360px;
|
||||
height: max(16vw, 16vh);
|
||||
display: inline-flex;
|
||||
gap: 15px;
|
||||
|
||||
> :is(article, div) {
|
||||
position: relative;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: centr;
|
||||
|
||||
min-width: 200px;
|
||||
height: 100%;
|
||||
border-radius: 1.125rem;
|
||||
overflow: hidden;
|
||||
background: rgb(0, 0, 0);
|
||||
|
||||
p {
|
||||
font-family: "Cascadia Code";
|
||||
font-size: 1.8rem;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
text-shadow: 5px 5px 2px rgba(14, 165, 2335, 0.7);
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
i.icon.code.slash {
|
||||
position: relative;
|
||||
width: 2px;
|
||||
height: 16px;
|
||||
box-sizing: border-box;
|
||||
display: block;
|
||||
transform: rotate(15deg);
|
||||
background: currentColor;
|
||||
|
||||
&::after,
|
||||
&::before {
|
||||
position: absolute;
|
||||
content: "";
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
box-sizing: border-box;
|
||||
display: block;
|
||||
transform: rotate(-60deg);
|
||||
}
|
||||
|
||||
&::before {
|
||||
top: 5px;
|
||||
left: -8px;
|
||||
border-top: 2px solid;
|
||||
border-left: 2px solid;
|
||||
}
|
||||
|
||||
&::after {
|
||||
top: 3px;
|
||||
right: -8px;
|
||||
border-right: 2px solid;
|
||||
border-bottom: 2px solid;
|
||||
}
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
i.icon.telegram {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
background: transparent;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
i.icon.telegram::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background: white;
|
||||
border-radius: 50%;
|
||||
top: 2px;
|
||||
left: 2px;
|
||||
}
|
||||
|
||||
i.icon.telegram::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-left: 5px solid transparent;
|
||||
border-right: 5px solid transparent;
|
||||
border-bottom: 8px solid currentColor;
|
||||
transform: rotate(-30deg);
|
||||
top: 7px;
|
||||
left: 9px;
|
||||
color: #ffffff; /* Цвет бумажного самолетика */
|
||||
}
|
||||
141
kodorvan/perm/system/public/themes/default/css/main.css
Executable file → Normal file
@@ -6,137 +6,16 @@
|
||||
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@900&display=swap");
|
||||
@import url("https://fonts.googleapis.com/css2?family=Geologica:wght@100..900&family=Pochaevsk&display=swap");
|
||||
|
||||
body {
|
||||
margin: unset;
|
||||
background-color: #f7fafc;
|
||||
}
|
||||
|
||||
main {
|
||||
flex-grow: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 2rem;
|
||||
transition: 0s;
|
||||
margin-top: 6rem;
|
||||
/* overflow-x: hidden; */
|
||||
margin-top: var(--menu-height);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-grow: 1;
|
||||
align-items: center;
|
||||
transition: 0s;
|
||||
overflow-x: hidden;
|
||||
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
> div.container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: auto;
|
||||
|
||||
> span#shape {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 20px;
|
||||
padding: 0.3em 1em;
|
||||
border-radius: 1.125rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 1.2rem;
|
||||
font-weight: 400;
|
||||
color: #0ea5e9;
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
rgba(227, 242, 249, 1) 0%,
|
||||
rgba(14, 165, 233, 0.2) 50%,
|
||||
rgba(227, 242, 249, 1) 100%
|
||||
);
|
||||
}
|
||||
|
||||
> h2#title {
|
||||
font-size: 2.4rem;
|
||||
font-family: "Bahnschrift";
|
||||
margin: 0.1em 0 0.2em 0;
|
||||
|
||||
> span {
|
||||
color: #0ea5e9;
|
||||
}
|
||||
}
|
||||
|
||||
> p#description {
|
||||
text-align: center;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
|
||||
margin: unset;
|
||||
color: rgb(0, 0, 0, 0.6);
|
||||
}
|
||||
> p.description {
|
||||
width: 40%;
|
||||
}
|
||||
|
||||
> div#team {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
margin-top: 1rem;
|
||||
|
||||
> div#card {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: start;
|
||||
padding: 0.6em 0.8em;
|
||||
border-radius: 1.125rem;
|
||||
box-shadow: 0px 0px 15px 0px rgba(14, 165, 233, 0.1);
|
||||
background-color: #fff;
|
||||
transition: ease 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scaleY(1.03);
|
||||
}
|
||||
> img {
|
||||
object-fit: cover;
|
||||
width: 250px;
|
||||
height: 270px;
|
||||
margin: 0 auto;
|
||||
border-radius: 1.125rem;
|
||||
}
|
||||
> p {
|
||||
font-size: 1.5em;
|
||||
font-weight: 900;
|
||||
font-family: "Cascadia Code";
|
||||
color: #000000;
|
||||
margin: 15px 0 0;
|
||||
}
|
||||
> span {
|
||||
font-size: 1em;
|
||||
font-family: "Cascadia Code";
|
||||
font-weight: 400;
|
||||
color: #0ea5e9;
|
||||
}
|
||||
}
|
||||
}
|
||||
> a#telegram {
|
||||
display: flex;
|
||||
gap: 5px;
|
||||
align-items: center;
|
||||
padding: 0.5em 1.3em;
|
||||
margin-top: 1rem;
|
||||
border-radius: 1.125em;
|
||||
font-size: 1em;
|
||||
font-family: "Cascadia Code";
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: #0ea5e9;
|
||||
color: #fff;
|
||||
transition: 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
> img {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
130
kodorvan/perm/system/public/themes/default/css/pages/index.css
Normal file
@@ -0,0 +1,130 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
main {
|
||||
> section.row {
|
||||
z-index: 500;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background-color: #fff;
|
||||
|
||||
> h2#title {
|
||||
font-size: 2.4rem;
|
||||
font-family: "Bahnschrift";
|
||||
margin: 0.1em 0 0.2em 0;
|
||||
|
||||
> span {
|
||||
color: #0ea5e9;
|
||||
}
|
||||
}
|
||||
|
||||
> p#description {
|
||||
margin: unset;
|
||||
text-align: center;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
color: rgb(0, 0, 0, 0.6);
|
||||
|
||||
> span {
|
||||
color: #0ea5e9;
|
||||
font-weight: 800;
|
||||
}
|
||||
}
|
||||
|
||||
> p.description {
|
||||
width: 40%;
|
||||
}
|
||||
|
||||
> a#order {
|
||||
padding: 0.5em 1.3em;
|
||||
margin-top: 1rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
border-radius: 1.125em;
|
||||
font-size: 1em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: #0ea5e9;
|
||||
color: #fff;
|
||||
transition: 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
}
|
||||
> div#team {
|
||||
margin-top: 1rem;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
|
||||
> div#card {
|
||||
padding: 0.6em 0.8em;
|
||||
width: 180px;
|
||||
height: 220px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
border-radius: 1.125rem;
|
||||
box-shadow: 0px 0px 15px 0px rgba(14, 165, 233, 0.1);
|
||||
background-color: #fff;
|
||||
transition: ease 0.2s;
|
||||
|
||||
> img {
|
||||
object-fit: cover;
|
||||
width: 140px;
|
||||
height: 140px;
|
||||
border-radius: 100%;
|
||||
}
|
||||
|
||||
> p {
|
||||
margin: 1em 0 0;
|
||||
font-size: 1.2em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 900;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
> span {
|
||||
font-size: 1em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
color: #0ea5e9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> a#telegram {
|
||||
padding: 0.5em 1.3em;
|
||||
margin-top: 1rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
border-radius: 1.125em;
|
||||
font-size: 1em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: #0ea5e9;
|
||||
color: #fff;
|
||||
transition: 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
> img {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,20 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
:root {
|
||||
--width: max(850px, 45vw);
|
||||
--menu-height: 70px;
|
||||
--introdution-height: min(350px, 35vh);
|
||||
--gap: min(12px, 1rem);
|
||||
--fixed-right: 3rem;
|
||||
--fixed-bottom: 2rem;
|
||||
--fixed-left: 3rem;
|
||||
--telegram-diameter: 50px;
|
||||
|
||||
--cookies-z-index: 6000;
|
||||
--cookies-right: var(--fixed-right);
|
||||
--cookies-bottom: var(--fixed-bottom);
|
||||
--cookies-width: 24rem;
|
||||
--cookies-height: 4rem;
|
||||
|
||||
/* font-family: , system-ui, sans-serif; */
|
||||
font-family: "dejavu";
|
||||
@@ -11,18 +24,12 @@
|
||||
transition: 0.1s ease-out;
|
||||
}
|
||||
|
||||
/* Selection */
|
||||
::selection {
|
||||
color: var(--text-selected-color);
|
||||
background: var(--text-selected-background-color);
|
||||
body {
|
||||
margin: unset;
|
||||
overflow-x: hidden;
|
||||
background-color: #f7fafc;
|
||||
}
|
||||
|
||||
::-moz-selection {
|
||||
color: var(--text-selected-color);
|
||||
background: var(--text-selected-background-color);
|
||||
}
|
||||
|
||||
|
||||
.unselectable {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
@@ -31,4 +38,3 @@
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 83 KiB |
@@ -1 +1,16 @@
|
||||
<svg fill="#FFFFFF" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" width="50px" height="50px"><path d="M46.137,6.552c-0.75-0.636-1.928-0.727-3.146-0.238l-0.002,0C41.708,6.828,6.728,21.832,5.304,22.445 c-0.259,0.09-2.521,0.934-2.288,2.814c0.208,1.695,2.026,2.397,2.248,2.478l8.893,3.045c0.59,1.964,2.765,9.21,3.246,10.758 c0.3,0.965,0.789,2.233,1.646,2.494c0.752,0.29,1.5,0.025,1.984-0.355l5.437-5.043l8.777,6.845l0.209,0.125 c0.596,0.264,1.167,0.396,1.712,0.396c0.421,0,0.825-0.079,1.211-0.237c1.315-0.54,1.841-1.793,1.896-1.935l6.556-34.077 C47.231,7.933,46.675,7.007,46.137,6.552z M22,32l-3,8l-3-10l23-17L22,32z"/></svg>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="1000px" height="1000px" viewBox="0 0 1000 1000" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
|
||||
<title>Artboard</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs>
|
||||
<linearGradient x1="50%" y1="0%" x2="50%" y2="99.2583404%" id="linearGradient-1">
|
||||
<stop stop-color="#2AABEE" offset="0%"></stop>
|
||||
<stop stop-color="#229ED9" offset="100%"></stop>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g id="Artboard" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<circle id="Oval" fill="url(#linearGradient-1)" cx="500" cy="500" r="500"></circle>
|
||||
<path d="M226.328419,494.722069 C372.088573,431.216685 469.284839,389.350049 517.917216,369.122161 C656.772535,311.36743 685.625481,301.334815 704.431427,301.003532 C708.567621,300.93067 717.815839,301.955743 723.806446,306.816707 C728.864797,310.92121 730.256552,316.46581 730.922551,320.357329 C731.588551,324.248848 732.417879,333.113828 731.758626,340.040666 C724.234007,419.102486 691.675104,610.964674 675.110982,699.515267 C668.10208,736.984342 654.301336,749.547532 640.940618,750.777006 C611.904684,753.448938 589.856115,731.588035 561.733393,713.153237 C517.726886,684.306416 492.866009,666.349181 450.150074,638.200013 C400.78442,605.66878 432.786119,587.789048 460.919462,558.568563 C468.282091,550.921423 596.21508,434.556479 598.691227,424.000355 C599.00091,422.680135 599.288312,417.758981 596.36474,415.160431 C593.441168,412.561881 589.126229,413.450484 586.012448,414.157198 C581.598758,415.158943 511.297793,461.625274 375.109553,553.556189 C355.154858,567.258623 337.080515,573.934908 320.886524,573.585046 C303.033948,573.199351 268.692754,563.490928 243.163606,555.192408 C211.851067,545.013936 186.964484,539.632504 189.131547,522.346309 C190.260287,513.342589 202.659244,504.134509 226.328419,494.722069 Z" id="Path-3" fill="#FFFFFF"></path>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 631 B After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 11 KiB |
@@ -1,7 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
aside {
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
section#projects {
|
||||
> h2.title {
|
||||
font-size: 2.4rem;
|
||||
font-family: "Bahnschrift";
|
||||
margin: 0.1em 0 0.2em 0;
|
||||
}
|
||||
|
||||
div.hotline {
|
||||
max-width: 100vw;
|
||||
max-height: 360px;
|
||||
height: max(16vw, 16vh);
|
||||
display: inline-flex;
|
||||
gap: 15px;
|
||||
|
||||
> :is(article, div) {
|
||||
position: relative;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: centr;
|
||||
|
||||
min-width: 200px;
|
||||
height: 100%;
|
||||
border-radius: 1.125rem;
|
||||
overflow: hidden;
|
||||
background: rgb(0, 0, 0);
|
||||
|
||||
p {
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 1.8rem;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
text-shadow: 5px 5px 2px rgba(14, 165, 2335, 0.7);
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,126 +0,0 @@
|
||||
section#introdution {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: min(500px, 45vh);
|
||||
overflow: hidden;
|
||||
|
||||
>div.dots {
|
||||
--dot-bg: black;
|
||||
--dot-color: red;
|
||||
--dot-size: 3px;
|
||||
--dot-space: 8px;
|
||||
z-index: -50;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background:
|
||||
linear-gradient(90deg, var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) center / var(--dot-space) var(--dot-space),
|
||||
linear-gradient(var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) center / var(--dot-space) var(--dot-space), var(--dot-color);
|
||||
mix-blend-mode: color-burn;
|
||||
filter: blur(1px);
|
||||
}
|
||||
|
||||
>video:only-of-type {
|
||||
z-index: -100;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
object-position: center;
|
||||
scale: 1.1;
|
||||
filter: blur(5px);
|
||||
}
|
||||
|
||||
>div {
|
||||
position: relative;
|
||||
width: 30vw;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
cursor: default;
|
||||
|
||||
>span#label {
|
||||
margin-top: -60px;
|
||||
margin-bottom: 20px;
|
||||
width: 320px;
|
||||
padding: 0.3em .5em 0.3em 1em;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 20px;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Bahnschrift";
|
||||
font-weight: 400;
|
||||
border-radius: 1.125rem;
|
||||
border: 1px solid #8080803d;
|
||||
color: #ffe0e0;
|
||||
border: 1px solid #eeeeee1c;
|
||||
background-color: #dadada30;
|
||||
backdrop-filter: blur(2px);
|
||||
}
|
||||
|
||||
>h2#title {
|
||||
margin: unset;
|
||||
width: max-content;
|
||||
padding: 0.2em 0.5em 0em;
|
||||
font-family: 'Bahnschrift';
|
||||
font-size: 2.6rem;
|
||||
font-weight: 600;
|
||||
border-radius: 0 0.75rem 0 0;
|
||||
color: #241fd3;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
>p#team {
|
||||
margin: unset;
|
||||
width: 650px;
|
||||
height: 70px;
|
||||
box-sizing: border-box;
|
||||
padding: 0.6em 1.2em;
|
||||
text-align: center;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
border-radius: 0.75rem;
|
||||
background-color: #fff;
|
||||
|
||||
>span {
|
||||
color: #0ea5e9;
|
||||
font-weight: 800;
|
||||
}
|
||||
}
|
||||
|
||||
>span {
|
||||
position: absolute;
|
||||
display: flex;
|
||||
padding: 0.4em 0.8rem 0.3em;
|
||||
font-size: 1.2rem;
|
||||
font-family: 'Bahnschrift';
|
||||
font-weight: 400;
|
||||
border-radius: 0.75rem;
|
||||
background-color: #fff;
|
||||
|
||||
&:is(#experience) {
|
||||
bottom: -3.4rem;
|
||||
left: 0px;
|
||||
font-size: 1.4rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
&:is(#anything) {
|
||||
right: -10px;
|
||||
bottom: -30px;
|
||||
font-weight: 200;
|
||||
border-radius: 0 0 0.75rem 0.75rem;
|
||||
}
|
||||
|
||||
&:is(#technology) {
|
||||
left: -70px;
|
||||
top: -1.5rem;
|
||||
font-size: 1rem;
|
||||
font-weight: 600;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,67 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
@media (prefers-color-scheme: default) {
|
||||
:root {
|
||||
--text-color: #fff;
|
||||
--text-color-inverted: #000;
|
||||
--button-background-color-inverted: #fff;
|
||||
--button-background-color: #000;
|
||||
--section-background-color-inverted: #fff;
|
||||
--section-background-color: #000;
|
||||
--background-color: #000;
|
||||
--background-color-inverted: #fff;
|
||||
|
||||
--interface-top-background-color: var(--background-color, #000);
|
||||
--interface-background-color: var(--background-color, #000);
|
||||
--interface-bottom-background-color: var(--background-color, #000);
|
||||
|
||||
--red: red;
|
||||
--white: #fff;
|
||||
--blue: #0ea5e9;
|
||||
|
||||
--paper: var(--white);
|
||||
}
|
||||
}
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--text-color: #fff;
|
||||
--text-color-inverted: #000;
|
||||
--button-background-color-inverted: #fff;
|
||||
--button-background-color: #000;
|
||||
--section-background-color-inverted: #fff;
|
||||
--section-background-color: #fff;
|
||||
--background-color: #000;
|
||||
--background-color-inverted: #fff;
|
||||
|
||||
--interface-top-background-color: var(--background-color, #000);
|
||||
--interface-background-color: var(--background-color, #000);
|
||||
--interface-bottom-background-color: var(--background-color, #000);
|
||||
|
||||
--red: red;
|
||||
--white: #fff;
|
||||
|
||||
--paper: var(--white);
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: light) {
|
||||
:root {
|
||||
--text-color: #fff;
|
||||
--text-color-inverted: #000;
|
||||
--button-background-color-inverted: #fff;
|
||||
--button-background-color: #000;
|
||||
--section-background-color-inverted: #fff;
|
||||
--section-background-color: #000;
|
||||
--background-color: #000;
|
||||
--background-color-inverted: #fff;
|
||||
|
||||
--interface-top-background-color: var(--background-color, #000);
|
||||
--interface-background-color: var(--background-color, #000);
|
||||
--interface-bottom-background-color: var(--background-color, #000);
|
||||
|
||||
--red: red;
|
||||
--white: #fff;
|
||||
|
||||
--paper: var(--white);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
@import url('/css/fonts/fira.css');
|
||||
@import url('/css/fonts/hack.css');
|
||||
@import url('/css/fonts/dejavu.css');
|
||||
@import url('/css/fonts/bahnschrift.css');
|
||||
|
||||
@font-face {
|
||||
font-family: 'Commissioner';
|
||||
src: url('/fonts/commissioner.ttf');
|
||||
font-weight: 400;
|
||||
}
|
||||
@@ -1,42 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
footer {
|
||||
box-sizing: border-box;
|
||||
padding: 0 20%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
gap: 0.5rem;
|
||||
margin: 2rem 0 1rem 0;
|
||||
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
> p#description {
|
||||
text-align: center;
|
||||
font-size: 1rem;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
margin: unset;
|
||||
color: rgb(0, 0, 0, 0.6);
|
||||
}
|
||||
> div#link {
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
gap: 1rem;
|
||||
|
||||
> a {
|
||||
text-decoration: none;
|
||||
font-size: 1rem;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
color: rgb(160, 160, 160);
|
||||
transition: ease 0.2s;
|
||||
&:hover {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
header {
|
||||
top: 0;
|
||||
left: 0;
|
||||
position: fixed;
|
||||
width: 100vw;
|
||||
height: var(--menu-height);
|
||||
box-sizing: border-box;
|
||||
padding: 0 20%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
align-items: center;
|
||||
background-color: #f7fafc;
|
||||
z-index: 1000;
|
||||
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
> a#logotype {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-size: 1.1rem;
|
||||
text-decoration: none;
|
||||
color: #000;
|
||||
|
||||
> h4:only-of-type:first-child {
|
||||
margin: unset;
|
||||
font-family: "Cascadia Code";
|
||||
font-size: 2.5em;
|
||||
}
|
||||
|
||||
> small:only-of-type:last-child {
|
||||
justify-self: end;
|
||||
align-self: end;
|
||||
margin-top: -0.8em;
|
||||
font-family: "Bahnschrift";
|
||||
font-size: 0.62em;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
|
||||
> nav#menu {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
font-family: "Geologica";
|
||||
|
||||
> a {
|
||||
text-decoration: none;
|
||||
font-weight: 500;
|
||||
font-size: 1rem;
|
||||
text-transform: uppercase;
|
||||
color: rgb(0, 0, 0, 0.5);
|
||||
transition: ease 0.2s;
|
||||
|
||||
&:hover {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
i.icon.code.slash {
|
||||
position: relative;
|
||||
width: 2px;
|
||||
height: 16px;
|
||||
box-sizing: border-box;
|
||||
display: block;
|
||||
transform: rotate(15deg);
|
||||
background: currentColor;
|
||||
|
||||
&::after,
|
||||
&::before {
|
||||
position: absolute;
|
||||
content: "";
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
box-sizing: border-box;
|
||||
display: block;
|
||||
transform: rotate(-60deg);
|
||||
}
|
||||
|
||||
&::before {
|
||||
top: 5px;
|
||||
left: -8px;
|
||||
border-top: 2px solid;
|
||||
border-left: 2px solid;
|
||||
}
|
||||
|
||||
&::after {
|
||||
top: 3px;
|
||||
right: -8px;
|
||||
border-right: 2px solid;
|
||||
border-bottom: 2px solid;
|
||||
}
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
i.icon.telegram {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
background: transparent;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
i.icon.telegram::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background: white;
|
||||
border-radius: 50%;
|
||||
top: 2px;
|
||||
left: 2px;
|
||||
}
|
||||
|
||||
i.icon.telegram::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-left: 5px solid transparent;
|
||||
border-right: 5px solid transparent;
|
||||
border-bottom: 8px solid currentColor;
|
||||
transform: rotate(-30deg);
|
||||
top: 7px;
|
||||
left: 9px;
|
||||
color: #ffffff; /* Цвет бумажного самолетика */
|
||||
}
|
||||
@@ -1,163 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
@import url("https://fonts.googleapis.com/css2?family=Commissioner:wght@100;200;300;400;500;600;700;800;900&display=swap");
|
||||
@import url("https://fonts.googleapis.com/css2?family=Cascadia+Code:ital,wght@0,200..700;1,200..700&family=Rubik:ital,wght@0,300..900;1,300..900&family=Wix+Madefor+Display:wght@400..800&display=swap");
|
||||
@import url("https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap");
|
||||
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@900&display=swap");
|
||||
@import url("https://fonts.googleapis.com/css2?family=Geologica:wght@100..900&family=Pochaevsk&display=swap");
|
||||
|
||||
body {
|
||||
margin: unset;
|
||||
/* overflow-x: hidden; */
|
||||
background-color: #f7fafc;
|
||||
}
|
||||
|
||||
.unselectable {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
main {
|
||||
margin-top: var(--menu-height);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-grow: 1;
|
||||
align-items: center;
|
||||
gap: 2rem;
|
||||
transition: 0s;
|
||||
overflow-x: hidden;
|
||||
|
||||
&:not(:has(*)) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
> section.container {
|
||||
height: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
> h2#title {
|
||||
font-size: 2.4rem;
|
||||
font-family: "Bahnschrift";
|
||||
margin: 0.1em 0 0.2em 0;
|
||||
|
||||
> span {
|
||||
color: #0ea5e9;
|
||||
}
|
||||
}
|
||||
|
||||
> p#description {
|
||||
margin: unset;
|
||||
text-align: center;
|
||||
font-size: 1.2rem;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
color: rgb(0, 0, 0, 0.6);
|
||||
|
||||
> span {
|
||||
color: #0ea5e9;
|
||||
font-weight: 800;
|
||||
}
|
||||
}
|
||||
|
||||
> p.description {
|
||||
width: 40%;
|
||||
}
|
||||
|
||||
> a#order {
|
||||
padding: 0.5em 1.3em;
|
||||
margin-top: 1rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
border-radius: 1.125em;
|
||||
font-size: 1em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: #0ea5e9;
|
||||
color: #fff;
|
||||
transition: 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
}
|
||||
> div#team {
|
||||
margin-top: 1rem;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
|
||||
> div#card {
|
||||
padding: 0.6em 0.8em;
|
||||
width: 180px;
|
||||
height: 220px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
border-radius: 1.125rem;
|
||||
box-shadow: 0px 0px 15px 0px rgba(14, 165, 233, 0.1);
|
||||
background-color: #fff;
|
||||
transition: ease 0.2s;
|
||||
|
||||
> img {
|
||||
object-fit: cover;
|
||||
width: 140px;
|
||||
height: 140px;
|
||||
border-radius: 100%;
|
||||
}
|
||||
|
||||
> p {
|
||||
margin: 1em 0 0;
|
||||
font-size: 1.2em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 900;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
> span {
|
||||
font-size: 1em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
color: #0ea5e9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> a#telegram {
|
||||
padding: 0.5em 1.3em;
|
||||
margin-top: 1rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
border-radius: 1.125em;
|
||||
font-size: 1em;
|
||||
font-family: "Geologica";
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
background-color: #0ea5e9;
|
||||
color: #fff;
|
||||
transition: 0.2s;
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
> img {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
:root {
|
||||
--menu-height: 70px;
|
||||
--gap: min(12px, 1rem);
|
||||
|
||||
/* font-family: , system-ui, sans-serif; */
|
||||
font-family: "dejavu";
|
||||
text-decoration: none;
|
||||
outline: none;
|
||||
border: none;
|
||||
transition: 0.1s ease-out;
|
||||
}
|
||||
|
||||
/* Selection */
|
||||
::selection {
|
||||
color: var(--text-selected-color);
|
||||
background: var(--text-selected-background-color);
|
||||
}
|
||||
|
||||
::-moz-selection {
|
||||
color: var(--text-selected-color);
|
||||
background: var(--text-selected-background-color);
|
||||
}
|
||||
|
||||
|
||||
.unselectable {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 447 KiB |
|
Before Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 762 KiB |
|
Before Width: | Height: | Size: 26 KiB |
@@ -1 +0,0 @@
|
||||
<svg fill="#FFFFFF" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" width="50px" height="50px"><path d="M46.137,6.552c-0.75-0.636-1.928-0.727-3.146-0.238l-0.002,0C41.708,6.828,6.728,21.832,5.304,22.445 c-0.259,0.09-2.521,0.934-2.288,2.814c0.208,1.695,2.026,2.397,2.248,2.478l8.893,3.045c0.59,1.964,2.765,9.21,3.246,10.758 c0.3,0.965,0.789,2.233,1.646,2.494c0.752,0.29,1.5,0.025,1.984-0.355l5.437-5.043l8.777,6.845l0.209,0.125 c0.596,0.264,1.167,0.396,1.712,0.396c0.421,0,0.825-0.079,1.211-0.237c1.315-0.54,1.841-1.793,1.896-1.935l6.556-34.077 C47.231,7.933,46.675,7.007,46.137,6.552z M22,32l-3,8l-3-10l23-17L22,32z"/></svg>
|
||||
|
Before Width: | Height: | Size: 631 B |
@@ -62,7 +62,7 @@ final class templater extends controller implements array_access
|
||||
$this->twig = new twig(new FilesystemLoader(VIEWS));
|
||||
|
||||
// Initializing global variables
|
||||
$this->twig->addGlobal('theme', 'test');
|
||||
$this->twig->addGlobal('theme', THEME);
|
||||
$this->twig->addGlobal('server', $_SERVER);
|
||||
$this->twig->addGlobal('cookies', $_COOKIE);
|
||||
$this->twig->addGlobal('language', $language = $session?->buffer['language'] ?? language::en);
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
||||
2
kodorvan/perm/system/views/themes/default/core.html
Executable file → Normal file
@@ -27,4 +27,4 @@
|
||||
{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
<style>
|
||||
:root {
|
||||
--company-identifier: "{{ language.name == 'ru' or true ? 'ОГРН' : 'ID' }}";
|
||||
--company-tax: "{{ language.name == 'ru' or true ? 'ИНН' : 'TAX' }}";
|
||||
}
|
||||
</style>
|
||||
|
||||
<section id="company">
|
||||
<h4 class="name">ИП Мирзаев</h4>
|
||||
<p class="column"><span class="tax row">271103176488</span><span class="identifier row">322270000004691</span></p>
|
||||
</section>
|
||||
@@ -0,0 +1,7 @@
|
||||
<section id="cookies" class="unselectable">
|
||||
<div>
|
||||
<p>ИСПОЛЬЗУЕТСЯ ТЕХНОЛОГИЯ COOKIES</p>
|
||||
<small>№152-ФЗ «О персональных данных»</small>
|
||||
</div>
|
||||
<button onclick="setTimeout(() => this.parentElement.remove(), 200); this.parentElement.style.opacity = 0"><i class="icon close small"></i></button>
|
||||
</section>
|
||||
@@ -0,0 +1,7 @@
|
||||
<nav id="links" class="unselectable">
|
||||
<a href="/offer">ПУБЛИЧНАЯ ОФЕРТА</a>
|
||||
<a href="https://ru.wikipedia.org/wiki/WTFPL">ЛИЦЕНЗИЯ</a>
|
||||
<a href="https://t.me/kodorvan">КОДОРВАНЬ</a>
|
||||
<a href="https://t.me/blog_mirzaev_sexy">МИРЗАЕВ</a>
|
||||
<a href="https://git.svoboda.works/kodorvan">РЕПОЗИТОРИЙ</a>
|
||||
</nav>
|
||||
@@ -0,0 +1,13 @@
|
||||
<style>
|
||||
:root {
|
||||
--map-loading: "Загрузка карты";
|
||||
}
|
||||
</style>
|
||||
|
||||
<section id="office">
|
||||
<div class="map">
|
||||
<div class="loading">
|
||||
<i class="icon loading spinner animated"></i>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@@ -0,0 +1,10 @@
|
||||
<section id="telegram" class="unselectable">
|
||||
<a href="https://t.me/kodorvan?direct" rel="nofollow">
|
||||
<img src="themes/default/images/icons/telegram.svg" alt="Telegram logotype icon" ondragstart="return false"/>
|
||||
</a>
|
||||
|
||||
<div>
|
||||
<span>Конструктор заказа</span>
|
||||
<small>Получи стоимость за 2 минуты</small>
|
||||
</div>
|
||||
</section>
|
||||
23
kodorvan/perm/system/views/themes/default/footer.html
Executable file → Normal file
@@ -1,16 +1,21 @@
|
||||
{% block css %}
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/company.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/links.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/office.css" />
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<footer>
|
||||
<p id="description">Профессиональная разработка ваших проектов</p>
|
||||
<div id="link">
|
||||
<a href="https://t.me/kodorvan?direct">КОДОРВАНЬ</a>
|
||||
<a href="https://git.svoboda.works/kodorvan">РЕПОЗИТОРИИ</a>
|
||||
<a href="https://ru.wikipedia.org/wiki/WTFPL">WTFPL</a>
|
||||
</div>
|
||||
</footer>
|
||||
<footer>
|
||||
<div class="column">
|
||||
{% include '/themes/default/elements/office.html' %}
|
||||
{% include '/themes/default/elements/links.html' %}
|
||||
</div>
|
||||
|
||||
<div class="column">
|
||||
{% include '/themes/default/elements/company.html' %}
|
||||
</div>
|
||||
</footer>
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
||||
2
kodorvan/perm/system/views/themes/default/head.html
Executable file → Normal file
@@ -21,6 +21,6 @@
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/aside.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/footer.css" />
|
||||
<style id="theme">
|
||||
@import url('/themes/default/css/themes/default/colorscheme.css');
|
||||
@import url('/themes/default/css/themes/default/colorscheme.css');
|
||||
</style>
|
||||
{% endblock %}
|
||||
|
||||
26
kodorvan/perm/system/views/themes/default/header.html
Executable file → Normal file
@@ -1,16 +1,16 @@
|
||||
{% block css %} {% endblock %} {% block body %}
|
||||
<header>
|
||||
<span id="logotype" class="unselectable">
|
||||
<h4>КОДОРВАНЬ</h4>
|
||||
<small>реальных программистов</small>
|
||||
</span>
|
||||
<header>
|
||||
<div>
|
||||
<a href="https://perm.kodorvan.tech" id="logotype" class="unselectable">
|
||||
<h4>КОДОРВАНЬ</h4>
|
||||
<small>реальных программистов</small>
|
||||
</a>
|
||||
|
||||
<nav id="menu" class="unselectable">
|
||||
<a href="/project">Проекты</a>
|
||||
<a href="#contacts">Контакты</a>
|
||||
<a href="#comand">Команда</a>
|
||||
</nav>
|
||||
|
||||
<a id="order" class="unselectable" href="https://t.me/kodorvan?direct">Заказать</a>
|
||||
</header>
|
||||
<nav id="menu" class="unselectable">
|
||||
<a href="https://git.svoboda.works/kodorvan">Проекты</a>
|
||||
<a href="#contacts">Контакты</a>
|
||||
<a href="#services">Услуги</a>
|
||||
</nav>
|
||||
</div>
|
||||
</header>
|
||||
{% endblock %} {% block js %} {% endblock %}
|
||||
|
||||
2
kodorvan/perm/system/views/themes/default/index.html
Executable file → Normal file
@@ -16,7 +16,7 @@
|
||||
|
||||
<main>
|
||||
{% block main %}
|
||||
{{main|raw}}
|
||||
{{ main|raw }}
|
||||
{% endblock %}
|
||||
</main>
|
||||
|
||||
|
||||
0
kodorvan/perm/system/views/themes/default/js.html
Executable file → Normal file
@@ -1,27 +0,0 @@
|
||||
<div id="comand" class="container">
|
||||
<h2 id="title">Наша команда</h2>
|
||||
<p id="description">
|
||||
Познакомьтесь с профессионалами, которые воплотят ваши идеи в жизнь
|
||||
</p>
|
||||
<div id="team">
|
||||
<div id="card">
|
||||
<img src="themes/default/images/avatar/arsen.jpg" alt="Арсен" />
|
||||
<p>Арсен</p>
|
||||
<span>Программист</span>
|
||||
</div>
|
||||
<div id="card">
|
||||
<img src="themes/default/images/avatar/hollspae.png" alt="Ксения" />
|
||||
<p>Ксения</p>
|
||||
<span>Coder</span>
|
||||
</div>
|
||||
<div id="card">
|
||||
<img src="themes/default/images/avatar/algiz.png" alt="Альгиз" />
|
||||
<p>Альгиз</p>
|
||||
<span>Нeйроcетка и крипта</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- познакомьтесь что-то там никто читать на хуй не будет
|
||||
заменяем на
|
||||
Более 12 лет опыта в разных IT направлениях -->
|
||||
@@ -1,17 +0,0 @@
|
||||
<div id="contacts" class="container unselectable">
|
||||
<h2 id="title">Связатьcя с нами</h2>
|
||||
<p id="description">Готовы обсудить ваш проект? Напишите нам!</p>
|
||||
|
||||
<a id="telegram" class="unselectable" href="https://t.me/kodorvan?direct">
|
||||
<img src="themes/default/images/icons/telegram.svg" alt="">
|
||||
|
||||
<span>TELEGRAM</span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Готовы обсудить проект
|
||||
заменить на
|
||||
что-то связанное с конструктором заказа
|
||||
написать о том что будет посчитана цена, составлено ТЗ, сроки
|
||||
влепить что есть рассрочка, оплата по СБП, работа с юр лицами
|
||||
поэтапная оплата и возможность индивидуального чего-нибудь -->
|
||||
@@ -1,20 +0,0 @@
|
||||
<div id="description" class="container">
|
||||
<span id="shape">
|
||||
<i class="icon code slash"></i>
|
||||
<span>Профессиональная разработка</span>
|
||||
</span>
|
||||
|
||||
<h2 id="title">
|
||||
Ваша идея — наша <span>реализация</span>
|
||||
</h2>
|
||||
<p id="description" class="description">
|
||||
Команда из опытных разработчиков, специализирующихся на создании
|
||||
современных веб-приложений, чат-ботов, приложений, видеоигр для малого
|
||||
бизнеса
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<!-- IDEA -->
|
||||
<!-- Создаем решения будущего -->
|
||||
<!-- Ваш рост - наш код -->
|
||||
<!-- От идеи до работающего бизнеса -->
|
||||
@@ -1,36 +0,0 @@
|
||||
<section id="wrap" class="hotline unselectable" data-hotline="true" data-hotline-step="-3"
|
||||
data-hotline-magnetic="center" data-hotline-interval="10">
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
|
||||
</section>
|
||||
@@ -1,4 +1,4 @@
|
||||
<section id="contacts" class="container unselectable">
|
||||
<section id="contacts" class="row unselectable">
|
||||
<h2 id="title">Связатьcя с нами</h2>
|
||||
<p id="description">Готовы обсудить ваш проект? Напишите нам!</p>
|
||||
|
||||
@@ -14,4 +14,4 @@
|
||||
что-то связанное с конструктором заказа
|
||||
написать о том что будет посчитана цена, составлено ТЗ, сроки
|
||||
влепить что есть рассрочка, оплата по СБП, работа с юр лицами
|
||||
поэтапная оплата и возможность индивидуального чего-нибудь -->
|
||||
поэтапная оплата и возможность индивидуального чего-нибудь -->
|
||||
@@ -0,0 +1,30 @@
|
||||
<section id="description" class="row">
|
||||
<p class="unselectable"><strong>Создание сайта</strong>, <strong>разработка чат-бота телеграм</strong>, <strong>написание парсера</strong>, <strong>подключение воронки</strong>, а так же разработка любой сложности калькулятора, интернет-магазина (маркетплейса) и полноценной CRM с нуля <strong>в Перми</strong></p>
|
||||
|
||||
<ul class="table unselectable">
|
||||
<li>
|
||||
<span class="bad"><i class="icon close small"></i>Не копируем проекты по шаблонам</span>
|
||||
<span class="good"><i class="icon check small"></i><strong>Пишем код с нуля</strong> с использованием наших <strong>уникальных технологий</strong>, которые позволяют сокращать сроки разработки и преумножить качество проекта</span>
|
||||
</li>
|
||||
<li>
|
||||
<span class="bad"><i class="icon close small"></i>Не перепродаём проекты другим заказчикам</span>
|
||||
<span class="good"><i class="icon check small"></i><strong>Репозиторий и код проекта полностью передаются заказчику</strong> под нашу публичную репутацию, либо под патент или договор о неразглашении (NDA)</span>
|
||||
</li>
|
||||
<li>
|
||||
<span class="bad"><i class="icon close small"></i>Не навязываем дополнительные услуги</span>
|
||||
<span class="good"><i class="icon check small"></i><strong>Бесплатный сервер</strong> на время разработки, <strong>бесплатная установка на сервер заказчика</strong> и <strong>бесплатная техподдержка</strong></span>
|
||||
</li>
|
||||
<li>
|
||||
<span class="bad"><i class="icon close small"></i>Не создаём зависимость от нашей команды</span>
|
||||
<span class="good"><i class="icon check small"></i>Документируем код, пишем инструкции и разрабатываем систему вики-страниц на английском языке для <strong>длительной поддержки проекта</strong></span>
|
||||
</li>
|
||||
<li>
|
||||
<span class="bad"><i class="icon close small"></i>Не вводим в заблуждение сложной терминологией</span>
|
||||
<span class="good"><i class="icon check small"></i>Процесс работы можно наблюдать в реальном времени на нашем сайте, чтобы убедиться, что <strong>мы честно отрабатываем поставленную задачу</strong></span>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<strong class="partners">Мы мотивированы сотрудничать на <span>постоянной основе</span>, поэтому <span>работаем на результат</span></strong>
|
||||
</section>
|
||||
|
||||
<!-- , либо реально выгодная аренда сервера у нас по самой низкой цене на рынке и максимально эффективной техподдержкой с бесплатными бекапами и оперативной установкой критических обновлений безопасности -->
|
||||
@@ -0,0 +1,27 @@
|
||||
<section id="introdution" class="row">
|
||||
<div class="information">
|
||||
<span id="label">
|
||||
<i class="icon code slash"></i>
|
||||
<span class="unselectable">ПРОФЕССИОНАЛЫ С ОПЫТОМ</span>
|
||||
</span>
|
||||
|
||||
<h2 id="title" class="unselectable">ПЕРМСКИЕ РАЗРАБОТЧИКИ</h2>
|
||||
|
||||
<p id="team" class="unselectable"><b>Чистый код</b>, реальные сроки и собственные сервера в <strong>Перми</strong><br />по <b>честной цене</b> и с <b>вечной техподдержкой</b></p>
|
||||
</div>
|
||||
|
||||
<div class="background" style="opacity: 0">
|
||||
<div class="dots"></div>
|
||||
|
||||
<canvas id="introdution_animation"></canvas>
|
||||
|
||||
<svg style="position: absolute">
|
||||
<defs>
|
||||
<filter id="blob">
|
||||
<feGaussianBlur in="SourceGraphic" stdDeviation="12" result="blur"></feGaussianBlur>
|
||||
<feColorMatrix in="blur" mode="matrix" values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 19 -9" result="blob"></feColorMatrix>
|
||||
</filter>
|
||||
</defs>
|
||||
</svg>
|
||||
</div>
|
||||
</section>
|
||||
@@ -0,0 +1,48 @@
|
||||
<section id="projects" class="row unselectable">
|
||||
<div id="wrap" class="hotline unselectable">
|
||||
<article class="pechatalka">
|
||||
<h4>ПЕЧАТАЛКА</h4>
|
||||
<img class="background" src="/themes/default/images/projects/pechatalka.gif" alt="pechatalka" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="understyle">
|
||||
<h4>under.style</h4>
|
||||
<img class="background" src="/themes/default/images/projects/understyle.png" alt="under.style" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="surikov">
|
||||
<h4>Музей-библиотека имени Сурикова</h4>
|
||||
<img class="background" src="/themes/default/images/projects/surikov.png" alt="surikov" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="pechatalka">
|
||||
<h4>ПЕЧАТАЛКА</h4>
|
||||
<img class="background" src="/themes/default/images/projects/pechatalka.gif" alt="pechatalka" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="understyle">
|
||||
<h4>under.style</h4>
|
||||
<img class="background" src="/themes/default/images/projects/understyle.png" alt="under.style" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="surikov">
|
||||
<h4>Музей-библиотека имени Сурикова</h4>
|
||||
<img class="background" src="/themes/default/images/projects/surikov.png" alt="surikov" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="pechatalka">
|
||||
<h4>ПЕЧАТАЛКА</h4>
|
||||
<img class="background" src="/themes/default/images/projects/pechatalka.gif" alt="pechatalka" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="understyle">
|
||||
<h4>under.style</h4>
|
||||
<img class="background" src="/themes/default/images/projects/understyle.png" alt="under.style" ondragstart="return false;"/>
|
||||
</article>
|
||||
|
||||
<article class="surikov">
|
||||
<h4>Музей-библиотека имени Сурикова</h4>
|
||||
<img class="background" src="/themes/default/images/projects/surikov.png" alt="surikov" ondragstart="return false;"/>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
@@ -0,0 +1,2 @@
|
||||
<section id="server" class="row">
|
||||
</section>
|
||||
@@ -0,0 +1,11 @@
|
||||
<section id="shortcut" class="row">
|
||||
<div class="row">
|
||||
<div class="statistics column">
|
||||
<p>Репозитории:<span>{{ projects ?? 98 }}</span></p>
|
||||
<small class="unselectable">Наши разработки + проекты заказчиков</small>
|
||||
|
||||
<p>Просмотры:<span>{{ month ?? '304 258' }}</span></p>
|
||||
<small class="unselectable">За последние 30 дней</small>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@@ -0,0 +1,3 @@
|
||||
<section id="workload" class="row">
|
||||
<p><i class="icon coffe"></i>Загруженность команды: <span class="{{ workload < 51 ? 'small' : (workload < 71 ? 'medium' : 'heavy')}}">{{ workload }}%<small class="unselectable">Обновлено 5 минут назад</small></span></p>
|
||||
</section>
|
||||
@@ -1,19 +1,45 @@
|
||||
{% extends "/themes/default/index.html" %}
|
||||
|
||||
{% block css %}
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/icons/code_slash.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/icons/telegram.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/hotline.css" />
|
||||
{{ parent() }}
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/code_slash.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/coffe.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/telegram.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/close.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/check.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/eye.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/loading_spinner.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/css/icons/close.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/pages/index.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/introdution.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/shortcut.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/description.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/projects.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/service.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/advantages.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/advantages.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/telegram.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/workload.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/default/css/elements/cookies.css" />
|
||||
{% endblock %}
|
||||
|
||||
{% block main %}
|
||||
{% include '/themes/default/main/blocks/introdution.html' %}
|
||||
{% include '/themes/default/main/blocks/projects.html' %}
|
||||
{% include '/themes/default/main/blocks/comand.html' %}
|
||||
{% include '/themes/default/main/blocks/contacts.html' %}
|
||||
{% include '/themes/default/main/elements/introdution.html' %}
|
||||
{% include '/themes/default/main/elements/workload.html' %}
|
||||
{% include '/themes/default/main/elements/shortcut.html' %}
|
||||
{% include '/themes/default/main/elements/description.html' %}
|
||||
{% include '/themes/default/main/elements/projects.html' %}
|
||||
{% include '/themes/default/main/elements/server.html' %}
|
||||
|
||||
{% include '/themes/default/elements/telegram.html' %}
|
||||
{% include '/themes/default/elements/cookies.html' %}
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
<script src="/js/modules/hotline.mjs" type="module"></script>
|
||||
<script src="/js/pages/main.js" defer></script>
|
||||
{% endblock %}
|
||||
{{ parent() }}
|
||||
<script src="/js/modules/hotline.mjs" type="module"></script>
|
||||
<script src="/js/modules/womb3-simplex.mjs" type="module"></script>
|
||||
<script src="/js/pages/main.js" defer></script>
|
||||
<script src="/js/modules/service.js" defer></script>
|
||||
<script src="/js/modules/advantages.js" defer></script>
|
||||
{% endblock %}
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
{% block css %}
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
{% endblock %}
|
||||
@@ -1,30 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="ru">
|
||||
|
||||
<head>
|
||||
{% use '/themes/test/head.html' with title as head_title, meta as head_meta, css as head_css %}
|
||||
|
||||
{% block title %}
|
||||
{{ block('head_title') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block meta %}
|
||||
{{ block('head_meta') }}
|
||||
{% endblock %}
|
||||
|
||||
{{ block('head_css') }}
|
||||
{% block css %}
|
||||
{% endblock %}
|
||||
</head>
|
||||
|
||||
<body>
|
||||
{% block body %}
|
||||
{% endblock %}
|
||||
|
||||
{% include '/themes/default/js.html' %}
|
||||
{% block js %}
|
||||
{% endblock %}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -1,16 +0,0 @@
|
||||
{% block css %}
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<footer class="unselectable">
|
||||
<p id="description">Профессиональная разработка ваших проектов</p>
|
||||
<div id="link" class="unselectable" >
|
||||
<a href="https://t.me/kodorvan?direct" > КОДОРВАНЬ</a>
|
||||
<a href="https://git.svoboda.works/kodorvan">РЕПОЗИТОРИИ</a>
|
||||
<a href="https://ru.wikipedia.org/wiki/WTFPL">WTFPL</a>
|
||||
</div>
|
||||
</footer>
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
{% endblock %}
|
||||
@@ -1,26 +0,0 @@
|
||||
{% block title %}
|
||||
<title>{% if head.title != empty %}{{ head.title }}{% else %}perm by kodorvan{% endif %}</title>
|
||||
{% endblock %}
|
||||
|
||||
{% block meta %}
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
{% for meta in head.metas %}
|
||||
<meta {% for name, value in meta.attributes %}{{ name }}="{{ value }}" {% endfor %}>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
|
||||
{% block css %}
|
||||
{% for element in css %}
|
||||
<link type="text/css" rel="stylesheet" {% if element.href %} href="{{ element.href }}" {% endif %} />
|
||||
{% endfor %}
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/fonts.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/system.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/header.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/main.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/aside.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/footer.css" />
|
||||
<style id="theme">
|
||||
@import url('/themes/test/css/themes/test/colorscheme.css');
|
||||
</style>
|
||||
{% endblock %}
|
||||
@@ -1,16 +0,0 @@
|
||||
{% block css %} {% endblock %} {% block body %}
|
||||
<header>
|
||||
<a href="https://perm.kodorvan.tech" id="logotype" class="unselectable">
|
||||
<h4>КОДОРВАНЬ</h4>
|
||||
<small>реальных программистов</small>
|
||||
</ф>
|
||||
|
||||
<nav id="menu" class="unselectable">
|
||||
<a href="https://git.svoboda.works/kodorvan">Проекты</a>
|
||||
<a href="#contacts">Контакты</a>
|
||||
<a href="#services">Услуги</a>
|
||||
</nav>
|
||||
|
||||
|
||||
</header>
|
||||
{% endblock %} {% block js %} {% endblock %}
|
||||
@@ -1,30 +0,0 @@
|
||||
{% extends "/themes/test/core.html" %}
|
||||
|
||||
{% use "/themes/test/header.html" with css as header_css, body as header, js as header_js %}
|
||||
{% use "/themes/test/aside.html" with css as aside_css, body as aside, js as aside_js %}
|
||||
{% use "/themes/test/footer.html" with css as footer_css, body as footer, js as footer_js %}
|
||||
|
||||
{% block css %}
|
||||
{{ block('header_css') }}
|
||||
{{ block('aside_css') }}
|
||||
{{ block('footer_css') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
{{ block('header') }}
|
||||
{{ block('aside') }}
|
||||
|
||||
<main>
|
||||
{% block main %}
|
||||
{{main|raw}}
|
||||
{% endblock %}
|
||||
</main>
|
||||
|
||||
{{ block('footer') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
{{ block('header_js') }}
|
||||
{{ block('aside_js') }}
|
||||
{{ block('footer_js') }}
|
||||
{% endblock %}
|
||||
@@ -1,9 +0,0 @@
|
||||
{% block js %}
|
||||
{% for element in js %}
|
||||
<script
|
||||
{% if element.src %}src="{{ element.src }}" {% endif %}
|
||||
{% if element.type %}type="{{ element.type }}" {% endif %}>
|
||||
{{ element.innerText }}
|
||||
</script>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
@@ -1,29 +0,0 @@
|
||||
<section id="introdution" class="container">
|
||||
<div>
|
||||
<!-- <span id="label">
|
||||
<i class="icon code slash"></i>
|
||||
<span class="unselectable">Профессиональная разработка</span>
|
||||
</span> -->
|
||||
|
||||
<h2 id="title" class="unselectable">ПЕРМСКИЕ РАЗРАБОТЧИКИ</h2>
|
||||
|
||||
<p id="team" class="unselectable">Разработка с нуля командой профессионалов<br />ответственно и без лапши - работа на результат</p>
|
||||
|
||||
<span id="experience">БОЛЕЕ 12 ЛЕТ ОПЫТА</span>
|
||||
|
||||
<span id="anything">УМЕЕМ ВСЁ</span>
|
||||
|
||||
<span id="technology">УНИКАЛЬНЫЕ ТЕХНОЛОГИИ</span>
|
||||
</div>
|
||||
|
||||
<div class="dots"></div>
|
||||
<video autoplay loop muted>
|
||||
<source src="/themes/test/videos/cover.mp4" type="video/mp4">
|
||||
</video>
|
||||
</section>
|
||||
|
||||
<!-- IDEA -->
|
||||
<!-- Создаем решения будущего -->
|
||||
<!-- Ваш рост - наш код -->
|
||||
<!-- От идеи до работающего бизнеса -->
|
||||
<!-- Ваша идея - наша реализация -->
|
||||
@@ -1,48 +0,0 @@
|
||||
<section id="projects" class="container unselectable">
|
||||
|
||||
<h2 class="title">Проекты</h2>
|
||||
<div id="wrap" class="hotline unselectable" data-hotline="true" data-hotline-step="-3" data-hotline-magnetic="center"
|
||||
data-hotline-interval="10">
|
||||
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
|
||||
<article>
|
||||
<p>ZHARKO</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>STCS</p>
|
||||
</article>
|
||||
<article>
|
||||
<p>BRAINROT</p>
|
||||
</article>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
@@ -1,27 +0,0 @@
|
||||
{% extends "/themes/test/index.html" %}
|
||||
|
||||
{% block css %}
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/icons/code_slash.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/icons/telegram.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/blocks/introdution.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/blocks/hotline.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/blocks/service.css" />
|
||||
<link type="text/css" rel="stylesheet" href="/themes/test/css/blocks/advantages.css" />
|
||||
{% endblock %}
|
||||
|
||||
{% block main %}
|
||||
{% include '/themes/test/main/blocks/introdution.html' %}
|
||||
{% include '/themes/test/main/blocks/projects.html' %}
|
||||
{% include '/themes/test/main/blocks/service.html' %}
|
||||
{% include '/themes/test/main/blocks/advantages.html' %}
|
||||
{% include '/themes/test/main/blocks/comand.html' %}
|
||||
|
||||
{% include '/themes/test/main/blocks/contacts.html' %}
|
||||
{% endblock %}
|
||||
|
||||
{% block js %}
|
||||
<script src="/js/modules/hotline.mjs" type="module"></script>
|
||||
<script src="/js/pages/main.js" defer></script>
|
||||
<script src="/js/modules/service.js" defer></script>
|
||||
<script src="/js/modules/advantages.js" defer></script>
|
||||
{% endblock %}
|
||||