@charset "UTF-8";

:root {
--blue-color: #17b3e8;
--primary-color: #020202;
--secondary-color: #17b3e8;
--font-color: #020202;
--background-color: #fff;
--menu-color: #fff;
--menu-current: #020202;
--menu-hover: #020202;
--menu-background-color: #020202;
--menu-higlight: #17b3e8;
--logo-brightness: 1;
--logo-grayscale: 0;
--switcher-background: #4f4d4d;
--switcher-image: url(//densan.ru/wp-content/themes/densan/assets/img/shining-sun.svg);
--font-size-default: 16px;
font-size: var(--font-size-default);
}
[data-theme=dark] {
--primary-color: #17b3e8;
--font-color: #fff;
--background-color: #020202;
--menu-color: #020202;
--menu-current: #020202;
--menu-hover: #020202;
--menu-background-color: #17b3e8;
--menu-higlight: #fff;
--logo-brightness: 50;
--logo-grayscale: 1;
--switcher-background: #fff;
--switcher-image: url(//densan.ru/wp-content/themes/densan/assets/img/moon-solid.svg);
}
@keyframes scroll-icon {
0% {
translate: 0 0;
}
70% {
translate: 0 20px;
}
80% {
translate: 0 0;
}
100% {
translate: 0 0;
}
} html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
margin: 0;
padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-size: 100%;
font-weight: normal;
}
ul {
list-style: none;
}
button,
input,
select {
margin: 0;
}
html {
box-sizing: border-box;
}
*,
*::before,
*::after {
box-sizing: inherit;
}
img,
video {
height: auto;
max-width: 100%;
}
iframe {
border: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
} @font-face {
font-display: swap; font-family: "Roboto";
font-style: normal;
font-weight: 300;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/roboto-v47-cyrillic_latin-300.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Roboto";
font-style: italic;
font-weight: 300;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/roboto-v47-cyrillic_latin-300italic.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Roboto";
font-style: normal;
font-weight: 400;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/roboto-v47-cyrillic_latin-regular.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Roboto";
font-style: italic;
font-weight: 400;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/roboto-v47-cyrillic_latin-italic.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Roboto";
font-style: normal;
font-weight: 600;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/roboto-v47-cyrillic_latin-600.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Roboto";
font-style: italic;
font-weight: 600;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/roboto-v47-cyrillic_latin-600italic.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Oswald";
font-style: normal;
font-weight: 400;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/oswald-v53-cyrillic_latin-regular.woff2) format("woff2"); } @font-face {
font-display: swap; font-family: "Oswald";
font-style: normal;
font-weight: 600;
src: url(//densan.ru/wp-content/themes/densan/assets/fonts/oswald-v53-cyrillic_latin-600.woff2) format("woff2"); }
body {
font-family: "Roboto", sans-serif;
font-size: 1.5rem;
background-color: var(--background-color);
color: var(--font-color);
transition: background-color 0.3s, color 0.3s;
overflow-x: hidden;
}
@media (max-width: 768px) {
body {
font-size: 1.2rem;
}
}
@media (max-width: 576px) {
body {
font-size: 1rem;
}
}
p {
margin: 2rem 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: "Oswald", sans-serif;
text-transform: uppercase;
font-weight: 600;
line-height: 110%;
}
h1 .header-modify,
h2 .header-modify,
h3 .header-modify,
h4 .header-modify,
h5 .header-modify,
h6 .header-modify {
color: var(--secondary-color);
}
h1 {
font-size: 10rem;
}
@media (max-width: 1280px) {
h1 {
font-size: 7rem;
}
}
@media (max-width: 768px) {
h1 {
font-size: 5rem;
}
}
@media (max-width: 576px) {
h1 {
font-size: 3rem;
}
}
h2 {
font-size: 5rem;
}
@media (max-width: 1280px) {
h2 {
font-size: 4rem;
}
}
@media (max-width: 768px) {
h2 {
font-size: 3rem;
}
}
@media (max-width: 576px) {
h2 {
font-size: 2rem;
}
}
h3 {
font-size: 4rem;
}
@media (max-width: 1280px) {
h3 {
font-size: 3.2rem;
}
}
@media (max-width: 768px) {
h3 {
font-size: 2.5rem;
}
}
@media (max-width: 576px) {
h3 {
font-size: 1.5rem;
}
}
h4 {
font-size: 3rem;
}
@media (max-width: 1280px) {
h4 {
font-size: 2.5rem;
}
}
@media (max-width: 768px) {
h4 {
font-size: 2rem;
}
}
@media (max-width: 576px) {
h4 {
font-size: 1.2rem;
}
}
h5 {
font-size: 2.5rem;
}
h6 {
font-size: 2rem;
}
strong {
color: var(--secondary-color);
font-weight: 600;
}
a {
color: var(--font-color);
transition: all 0.2s;
}
a:hover {
color: var(--blue-color);
}
.animate-on-scroll {
opacity: 0;
transform-origin: 0 0;
transition: opacity 0.5s ease-in, transform 0.5s ease-out;
}
.animate-on-scroll.visible {
opacity: 1;
}
.animate-on-scroll.rotate {
transform: rotateZ(15deg);
}
.animate-on-scroll.rotate.visible {
transform: translateZ(0);
}
.animate-on-scroll.move-up {
transform: translateY(20%);
}
.animate-on-scroll.move-up.visible {
transform: translateY(0);
}
.header {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-start;
padding: 1rem;
position: relative;
}
.header .logo img {
max-width: 400px;
height: auto;
filter: brightness(var(--logo-brightness)) grayscale(var(--logo-grayscale));
}
@media (max-width: 576px) {
.header .logo img {
max-width: 200px;
}
}
.header .mode-switcher input[type=checkbox] {
display: none;
}
.header .mode-switcher input[type=checkbox]:checked + label::after {
left: calc(100% - 10px);
transform: translateX(-100%);
}
.header .mode-switcher label {
cursor: pointer;
width: 150px;
height: 70px;
background: var(--menu-background-color);
display: block;
border-radius: 100px;
position: relative;
}
@media (max-width: 576px) {
.header .mode-switcher label {
width: 75px;
height: 35px;
}
}
.header .mode-switcher label::after {
content: "";
position: absolute;
top: 10px;
left: 10px;
width: 50px;
height: 50px;
background: var(--switcher-image) no-repeat center center/30px var(--switcher-background);
border-radius: 90px;
transition: 0.3s;
}
@media (max-width: 576px) {
.header .mode-switcher label::after {
width: 25px;
height: 25px;
top: 5px;
left: 5px;
background-size: 15px;
}
}
.header__spot {
position: absolute;
top: 0;
right: 0;
width: 500px;
height: 500px;
background: var(--secondary-color);
border-radius: 50%;
filter: blur(200px);
transform: translate(110px, -110px);
}
@media (max-width: 576px) {
.header__spot {
width: 200px;
height: 200px;
filter: blur(50px);
transform: translate(0);
}
}
.main {
padding: 2rem 5rem;
}
@media (max-width: 576px) {
.main {
padding: 1rem 1rem;
}
}
.main h1 {
padding-top: 2rem;
}
@media (max-width: 768px) {
.main h1 {
padding-top: 1.5rem;
}
}
@media (max-width: 576px) {
.main h1 {
padding-top: 1rem;
}
}
.main .wellcome {
display: flex;
flex-direction: row;
justify-content: space-between;
gap: 20px;
}
@media (max-width: 992px) {
.main .wellcome {
flex-direction: column;
gap: 40px;
padding-top: 30px;
}
}
.main .wellcome__work {
max-width: 700px;
}
@media (max-width: 1400px) {
.main .wellcome__work {
padding-right: 100px;
}
}
@media (max-width: 992px) {
.main .wellcome__work {
max-width: 100%;
padding-right: 0;
}
}
.main .wellcome__about {
max-width: 700px;
font-size: 1.5em;
font-weight: 300;
translate: 0 -150px;
}
@media (max-width: 1280px) {
.main .wellcome__about {
font-size: 1.2em;
translate: 0 -50px;
}
}
@media (max-width: 992px) {
.main .wellcome__about {
translate: 0;
max-width: 100%;
}
}
.main .scroll-icon {
width: fit-content;
margin: 0 auto;
text-align: center;
animation: scroll-icon 2s ease-in-out infinite;
position: relative;
top: -70px;
}
@media (max-width: 768px) {
.main .scroll-icon {
top: 0;
}
}
@media (max-width: 576px) {
.main .scroll-icon {
display: none;
}
}
.main .scroll-icon svg {
width: 50px;
fill: var(--font-color);
}
.main .information {
margin: 5rem 0;
}
.main .information p {
margin: 4rem 0;
font-size: 1.3em;
font-weight: 300;
}
.main .main-services {
display: flex;
flex-direction: column;
gap: 5rem;
}
.main .main-services__service {
display: flex;
flex-direction: row;
gap: 4rem;
justify-content: space-between;
}
@media (min-width: 1280px) {
.main .main-services__service .title {
min-width: 650px;
}
}
.main .main-services__service .title p {
margin: 0;
}
.main .main-services__service .description {
font-size: 1.1em;
margin-top: 1.8rem;
}
@media (max-width: 992px) {
.main .main-services__service {
flex-direction: column;
gap: 0;
}
}
.main .main-services__btn {
min-width: 300px;
margin: 0 auto;
}
.main .prices {
margin-top: 4rem;
}
.main .prices h2 {
text-align: right;
margin-bottom: 4rem;
}
.main .prices .prices-container {
display: flex;
flex-direction: column;
gap: 2rem;
max-width: 900px;
margin: 0 auto 3rem;
}
@media (max-width: 576px) {
.main .prices .prices-container {
gap: 1.3rem;
}
}
.main .prices__price {
display: flex;
flex-direction: row;
align-items: flex-end;
font-size: 2.5rem;
}
@media (max-width: 992px) {
.main .prices__price {
font-size: 2rem;
}
}
@media (max-width: 768px) {
.main .prices__price {
font-size: 1.5rem;
}
}
@media (max-width: 576px) {
.main .prices__price {
font-size: 1.1rem;
}
}
.main .prices__price .price-spacer {
margin: 0 0.2em;
flex-grow: 1;
border-bottom: dotted 0.2em var(--font-color);
translate: 0 -0.2em;
}
.main .prices__price .price-price {
color: var(--font-color);
font-size: 1.3em;
}
.main .prices__price .price-price::after {
content: " ₽";
}
.main .prices a {
margin: 0 auto;
}
.prefooter {
position: relative;
width: 100%;
height: 15rem;
background-color: var(--blue-color);
}
@media (max-width: 576px) {
.prefooter {
height: 10rem;
}
}
.prefooter::before {
position: absolute;
inset: 0 0 auto 0;
height: 4rem;
content: "";
border-radius: 0 0 4rem 4rem;
background-color: var(--background-color);
}
.prefooter::after {
position: absolute;
inset: auto 0 0 0;
height: 4rem;
content: "";
border-radius: 4rem 4rem 0 0;
background-color: var(--background-color);
}
.footer {
margin: 0;
padding: 2rem 5rem 10rem;
}
@media (max-width: 576px) {
.footer {
padding: 1rem 1rem 4rem;
}
}
.footer h4 {
margin-bottom: 4rem;
}
@media (max-width: 992px) {
.footer h4 {
text-align: center;
}
}
.footer .footer-contacts {
display: flex;
flex-direction: row;
justify-content: space-between;
}
@media (max-width: 1280px) {
.footer .footer-contacts {
font-size: 0.9em;
}
}
@media (max-width: 992px) {
.footer .footer-contacts {
flex-direction: column;
align-items: center;
gap: 1rem;
font-size: 1em;
}
}
.footer .copyright {
margin-top: 6rem;
text-align: center;
font-size: 0.8em;
}
.menu {
position: fixed;
bottom: 2rem;
left: 50%;
translate: -50% 0;
background-color: var(--menu-background-color);
border-radius: 2rem;
outline: 1px #020202 solid;
font-size: 1.4rem;
padding: 10px;
z-index: 9999;
}
@media (max-width: 768px) {
.menu {
font-size: 0.8rem;
}
}
@media (max-width: 576px) {
.menu {
padding: 5px;
bottom: 1rem;
left: 0;
right: 0;
translate: 0;
}
}
.menu ul {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
text-transform: uppercase;
font-weight: 600;
}
@media (max-width: 576px) {
.menu ul {
font-weight: 400;
}
}
.menu ul li {
border-radius: 2rem;
z-index: 3;
}
.menu ul li a {
padding: 10px 25px;
display: block;
text-decoration: none;
color: var(--menu-color);
}
@media (max-width: 576px) {
.menu ul li a {
padding: 5px 7px;
}
}
.menu ul li a:hover {
color: var(--menu-hover);
transition: all 0.3s ease;
}
.menu ul li.current-menu-item a {
transition: all 0.3s ease;
color: var(--menu-current);
}
.menu ul li.mouseleave a {
transition: all 0.3s ease;
color: var(--menu-color);
}
.menu__highlight {
position: absolute;
top: 10px;
left: 0;
padding: 10px 25px;
height: 100%;
border-radius: 2rem;
background-color: var(--menu-higlight);
z-index: 1;
transition: all 0.3s ease;
opacity: 0;
}
@media (max-width: 576px) {
.menu__highlight {
top: 5px;
padding: 5px 7px;
}
}
.btn-arrow {
position: relative;
display: flex;
flex-direction: row;
align-items: center;
gap: 20px;
width: 280px;
height: 81px;
padding: 30px 0;
text-decoration: none;
color: var(--font-color);
z-index: 100;
}
.btn-arrow:hover .btn-arrow__text::after {
transform: scaleX(0);
}
.btn-arrow:hover svg:first-child {
transition: all 0.3s 0.5s ease-out;
width: 50px;
opacity: 1;
}
.btn-arrow:hover svg:last-child {
transition: all 0.3s ease-out;
width: 1px;
opacity: 0;
}
.btn-arrow__text {
position: relative;
display: inline-block;
font-size: 1.7rem;
transition: all 0.2s 0.3s ease;
padding-bottom: 8px;
}
.btn-arrow__text::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 3px;
background-color: var(--menu-higlight);
transform-origin: right center;
transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-arrow svg {
transition: all 0.3s 0.3s ease-out;
}
.btn-arrow svg circle {
fill: var(--menu-background-color);
}
.btn-arrow svg path {
fill: var(--background-color);
}
.btn-arrow svg:first-child {
opacity: 0;
width: 0;
}
.btn-arrow svg:last-child {
transition: all 0.3s 0.6s ease-out;
width: 50px;
opacity: 1;
}
#wpcf7-f56-o1 {
background-color: var(--background-color);
color: var(--font-color);
padding: 2rem 4rem;
border-radius: 2rem;
font-size: 1.3em;
}
#wpcf7-f56-o1 input,
#wpcf7-f56-o1 textarea {
width: 100%;
height: 2rem;
margin-top: 0.4rem;
padding: 0.7rem 0.5rem;
font-size: 1.1rem;
background-color: white;
border-radius: 0.5rem;
resize: none;
border: 1px solid var(--font-color);
}
#wpcf7-f56-o1 textarea {
height: 6rem;
}
#wpcf7-f56-o1 p:has(input[type=submit]) {
text-align: center;
}
#wpcf7-f56-o1 input[type=submit] {
width: fit-content;
margin: 0 auto;
padding: 1.3rem 2rem;
border: none;
background: var(--blue-color);
border-radius: 2rem;
line-height: 0;
color: white;
cursor: pointer;
transition: all 0.2s;
}
#wpcf7-f56-o1 input[type=submit]:hover {
filter: brightness(0.9);
}
#wpcf7-f56-o1 .wpcf7-spinner {
display: none;
}
#wpcf7-f56-o1 .wpcf7-not-valid-tip,
#wpcf7-f56-o1 .wpcf7-response-output {
font-size: 1rem;
border: none;
text-align: center;
}