html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
dialog, /* custom */
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
display: block;
}
body {
line-height: 1;
}
ol,
ul {
list-style: none;
}
blockquote,
q {
quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* custom */
body {
background: #fff;
}
table,
th,
td {
vertical-align: middle;
}
caption,
th,
td {
text-align: left;
font-weight: normal;
}
:focus {
outline: 0;
}
@media print {
.header {
display:none;
}
.horizontalmenu {
display:none;
}
.left {
display:none;
}
.confoot2 {
display:none;
}
.footer {
display:none;
}
}
@-ms-viewport {
width: device-width;
}
body {
line-height: 1.625;
font-family: 'Arial CE', 'Helvetica CE', Arial, Verdana, Helvetica, sans-serif;
text-align: left;
color: #000;
}
/* margin bottom */
address, dl, p, pre, ol, table, ul {
margin-bottom: 1em;
}
ul ul, ol ol, ul ol, ol ul {
margin-bottom: 0em;
}
ul, ol, dd {
margin-left: 2em;
}
ul {
list-style-type: square; /* custom */
}
ol {
list-style-type: decimal;
}
/* extra margin */
blockquote {
margin-bottom: 2em;
margin-top: 2em;
}
h1 + blockquote, h2 + blockquote, h3 + blockquote, h4 + blockquote,
h5 + blockquote, h6 + blockquote {
margin-top: 0;
}
/* overflow */
pre {
overflow: auto;
}
/* font size */
sub, sup, small {
font-size: smaller;
}
big {
font-size: larger;
}
/* vertical align */
sub {
vertical-align: sub;
}
sup {
vertical-align: super;
}
/* monospace font */
code, kbd, pre, samp, tt, var, listing {
font-family: monospace;
text-indent: 0; /* <code> inline-block fix */
}
/* code output */
pre {
-o-tab-size: 4;
-moz-tab-size: 4;
tab-size: 4;
}
pre code {
display: inline; /* <code> inline-block fix */
}
/* italic */
address, blockquote, cite, dfn, em, i, ins, q, var {
font-style: italic;
}
/* bold */
b, kbd, strong, th {
font-weight: bold;
}
/* underline */
a, u {
text-decoration: underline;
}
/* line through */
del, s, strike {
text-decoration: line-through;
}
/* text decoration */
ins {
text-decoration: none;
}
/* heading */
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: bold;
margin-top: 1em;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child  {
margin-top: 0;
}
h1 {
font-size: 250%;
line-height: 1.2;
margin-bottom: 0.4em; /* 16 / 40 */
}
h2 {
font-size: 200%;
line-height: 1.25;
margin-bottom: 0.5em; /* 16 / 32 */
}
h3 {
font-size: 175%;
line-height: 1.286;
margin-bottom: 0.571em; /* 16 / 28 */
}
h4 {
font-size: 150%;
line-height: 1.167;
margin-bottom: 0.667em; /* 16 / 24 */
}
h5 {
font-size: 125%;
line-height: 1.2;
margin-bottom: 0.8em; /* 16 / 20 */
}
h6 {
font-size: 100%;
line-height: 1.25;
margin-bottom: 1em;
}
/* tables */
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
vertical-align: inherit;
}
td, th, caption {
padding: 0.2em 0.6em;
text-align: left;
}
th {
text-align: center;
}
/*fix for IE6, IE7*/
th p {
text-align: left;
}
/*\fix for IE7*/
caption {
text-align: center;
}
form td, form tr {
border: none;
}
/* forms */
fieldset {
border: 1px solid #bbb;
margin-bottom: 1em;
padding: 0.6em 1em 1em;
}
legend {
margin-left: 0.2em;
padding: 0 0.4em;
}
/* HTML5 */
mark {
color: #000;
background-color: #ff0;
padding: 1px 3px;
}
/* other */
hr {
background: transparent;
height: 1px;
border-width: 0;
border-top: 1px solid #aaa;
}
/* other - deprecated */
center {
text-align: center;
}
a,
a:hover,
a:focus,
a:active {
text-decoration: underline;
}
input, select, textarea {
padding: 0.25em 0.5em;
box-sizing: border-box;
}
textarea {
resize: vertical;
}
blockquote {
margin: 2em;
padding: 0.625em 2em;
border-left: 0.5em solid #dddddd;
}
.bottom {
clear: both;
}
.h4_warning {
color: #CC0000;
margin: 0.5em 0.5em 0.5em 1em;
}
.p_margin { /* p s odsazenim */
margin: 1em 0 0.25em 0;
padding: 0.25em;
}
/* error/warning messages */
.mess_error {
margin: 0 0 5px 0;
padding: 10px;
text-align: left;
background: #FCFFD5;
border: 1px solid red;
color: red;
}
.mess_info {
margin: 0 0 5px 0;
padding: 10px;
text-align: left;
background: #FCFFD5;
border: 1px solid green;
color: green;
}
.required {
/* povinne pole ve formulari */
vertical-align: top;
color: red;
}
/**** LAYOUT ****/
.header-inner,
.horizontalmenu-inner,
.navigation-inner,
.body-inner,
.footer-inner {
max-width: 75em;
margin-left: auto;
margin-right: auto;
box-sizing: border-box;
padding: 1em;
}
.horizontalmenu-inner {
padding-top: 0;
padding-bottom: 0;
}
/*** TABLES ***/
table {
border-collapse: collapse;
margin-bottom: 1em;
}
th {
padding: 0.5em;
background: #ECECEC;
}
td {
padding: 0.5em 1em;
border: 1px solid #555555;
}
.tr_zebra1 {
background: white;
border-bottom: 1px dotted #B4B4B4;
}
.tr_zebra2 {
background: white;
border-bottom: 1px dotted #B4B4B4;
}
.tr_over2 {
background: #F6F6F6;
}
table.bordernone td {
border: none;
}
table.noborder td {
border: none;
}
.row {
display: grid;
row-gap: 1em;
margin-bottom: 2em;
grid-template-columns: 1fr;
}
.row > .bottom {
display: none;
}
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-3x1,
.col-md-3x2,
.col-md-4x1,
.col-md-4x2 {
grid-column: span 1;
min-width: 0; /* https://stackoverflow.com/a/43312314 */
}
@media only screen and (min-width:60em) {
.row {
grid-template-columns: repeat(60, 1fr);
}
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-3x1,
.col-md-3x2,
.col-md-4x1,
.col-md-4x2 {
margin-right: 1em;
}
.col-md-1 {
grid-column: span 60;
}
.col-md-2 {
grid-column: span 30;
}
.col-md-3 {
grid-column: span 20;
}
.col-md-4 {
grid-column: span 15;
}
.col-md-5 {
grid-column: span 12;
}
.col-md-3x1 {
grid-column: span 20;
}
.col-md-3x2 {
grid-column: span 40;
}
.col-md-4x1 {
grid-column: span 15;
}
.col-md-4x2 {
grid-column: span 30;
}
}
.horizontalmenu .m0_0 {
display: inline-block;
}
.horizontalmenu .m0_0 a {
display: block;
padding: 0.75em 1.5em;
text-decoration: none;
}
.horizontalmenu .m0_0 a span {
display: block;
}
.horizontalmenu .m0_0 a:hover,
.horizontalmenu .m0_0 a:focus,
.horizontalmenu .m0_0 a:active {
text-decoration: underline;
}
.left,
.right {
box-sizing: border-box;
}
@media only screen and (min-width: 60em) {
.left {
float: left;
width: 30%;
padding-right: 1em;
padding-top: 1em;
}
.right {
float: right;
width: 70%;
padding-left: 1em;
padding-top: 1em;
}
.right--wide {
float: none;
width: auto;
border: none;
}
.right--on-left {
float: left;
padding-left: 0;
padding-right: 1em;
}
.left--on-right {
float: right;
padding-right: 0;
padding-left: 1em;
}
}
.menu2 .m1_0,
.menu2 .m1_0 a,
.menu2 .m1_0 span,
.menu2 .m1_1,
.menu2 .m1_1 a,
.menu2 .m1_1 span,
.menu2 .m1_2,
.menu2 .m1_2 a,
.menu2 .m1_2 span,
.menu2 .m1_3,
.menu2 .m1_3 a,
.menu2 .m1_3 span,
.menu2 .m1_4,
.menu2 .m1_4 a,
.menu2 .m1_4 span,
.menu2 .m1_5,
.menu2 .m1_5 a,
.menu2 .m1_5 span {
display: block;
box-sizing: border-box;
}
.menu2 .m1_2 {
padding-left: 1em;
}
.menu2 .m1_3 {
padding-left: 2em;
}
.menu2 .m1_4 {
padding-left: 3em;
}
.menu2 .m1_5 {
padding-left: 4em;
}
.menu2 .m1_0 a:hover,
.menu2 .m1_0 a:focus,
.menu2 .m1_0 a:active,
.menu2 .m1_1 a:hover,
.menu2 .m1_1 a:focus,
.menu2 .m1_1 a:active,
.menu2 .m1_2 a:hover,
.menu2 .m1_2 a:focus,
.menu2 .m1_2 a:active,
.menu2 .m1_3 a:hover,
.menu2 .m1_3 a:focus,
.menu2 .m1_3 a:active,
.menu2 .m1_4 a:hover,
.menu2 .m1_4 a:focus,
.menu2 .m1_4 a:active,
.menu2 .m1_5 a:hover,
.menu2 .m1_5 a:focus,
.menu2 .m1_5 a:active {
text-decoration: underline;
}
/* calendar */
.calendar {
width: 100%;
border: 1px solid #B4B4B4;
}
.calendar .td_date {
width: 20%;
text-align: right;
vertical-align: top;
}
.calendar .td_date .day {
font-size: 150%;
float: right;
margin: 0 5px 0 0;
}
.calendar .td_date .monthyear {
float: right;
text-align: left;
}
.calendar .td_date .year {
font-size: 80%;
color: #999;
}
.calendar .td_desc {
width: 80%;
vertical-align: top;
}
/* widget calendar */
.wg_calendar {
position: relative;
padding-top: 3.25em;
}
.wg_cal_table {
font-size: 100%;
table-layout: fixed;
width: 100%;
margin-bottom: 1em;
}
.wg_cal_navi {
display: block;
position: absolute;
left: 0;
right: 0;
top: 0;
}
.wg_cal_navi td {
color: inherit;
font-weight: bold;
text-align: center;
padding: 0.85em 0;
display: block;
}
.wg_cal_navi td:first-child,
.wg_cal_navi td:last-child {
display: none;
}
.wg_cal_navi td:nth-child(2),
.wg_cal_navi td:nth-child(4) {
position: absolute;
top: 0;
bottom: 0;
width: 36px;
overflow: hidden;
}
.wg_cal_navi td:nth-child(2) a,
.wg_cal_navi td:nth-child(4) a {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background-position: center center;
background-repeat: no-repeat;
overflow: hidden;
padding-left: 36px;
box-sizing: border-box;
}
.wg_cal_navi td:nth-child(2) {
left: 0;
}
.wg_cal_navi td:nth-child(4) {
right: 0;
}
.wg_cal_navi td:first-child a,
.wg_cal_navi td:last-child a {
display: none;
}
.wg_cal_th {
width: 100%;
height: 100%;
display: block;
font-weight: bold;
text-align: center;
color: #fff;
font-size: 150%;
line-height: 1;
text-decoration: none;
}
.wg_cal_days td {
font-weight: bold;
}
.wg_cal_td {
text-align: right;
padding: 0.85em 3px;
font-size: 87.5%;
position: relative;
}
.wg_cal_td_a {
display: block;
text-align: inherit;
text-decoration: none;
font-weight: bold;
padding: 0.85em 3px;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
box-sizing: border-box;
}
.wg_cal_td_a:hover,
.wg_cal_td_a:focus,
.wg_cal_td_a:active {
text-decoration: underline;
}
/* global content footer (send and print) */
.confoot1 {
clear: both;
}
.confoot2 {
clear: both;
text-align: right;
}
.confoot2 span {
position: relative;
left: 3px;
bottom: 4px;
}
.confoot2 a {
text-decoration: none;
}
.confoot2 img {
width: 18px;
}
/* CONTENT */
.content p {
margin-top: 1em;
margin-bottom: 1em;
}
.cimg {
float: left;
}
.cimg img {
width: 150px;
}
.methodone.cperex {
margin: 1em 0;
}
.methodone.cimg {
margin: 0.5em 1em 0.5em 0;
}
.methodtwo.ctitle {
clear: both;
margin: 1em 0 0 0;
font-size: 112.5%;
font-weight: bold;
}
.methodtwo.cperex {
margin: 0.5em 0 1em 0;
}
.methodtwo.cimg {
margin: 0.5em 1em 0.5em 0;
}
/* canteen */
.canteen_table {
width: 100%;
border: 1px solid #B4B4B4;
}
.tr_day {
background: #ECECEC;
}
.tr_day h4 {
margin: 4px 0 4px 0;
}
.desc_short {
display: none;
}
.food {
vertical-align: top;
}
.td_typefood {
width: 20%;
vertical-align: top;
}
.td_quantity {
text-align: right;
width: 10%;
vertical-align: top;
}
.td_title {
width: 55%;
}
.td_price {
width: 10%;
}
.td_price {
width: 5%;
}
.td_po {
vertical-align: top;
}
.legendtitle {
font-size: 120%;
font-weight: bold;
}
.food_type {
margin: 10px 10px 0 10px;
padding: 0 10px;
font-size: 90%;
font-weight: bold;
}
.food_title {
margin: 0 10px;
padding: 0 10px;
}
.food_next {
text-align: right;
}
.alg {
cursor: help;
border-bottom: 1px dotted #000;
}
/* FORUM */
.forum {
width: 100%;
border: 1px solid #B4B4B4;
}
.forum_headers {
background: #ECECEC;
border-top: 1px solid #B4B4B4;
border-bottom: 1px solid #B4B4B4;
}
.forum_theme {
background-color: #F8FCFE;
}
.forum_article {
border: 1px solid #B4B4B4;
background-color: #F8FCFE;
float: right;
clear: both;
text-align: left;
padding: 8px;
margin: 5px 0 5px 0;
width: 97%;
}
.dis_vminus_div {
width: 20px;
height: 24px;
float: right;
display: block;
background: url(/templates/mod/forum/img/like_w40.png) top right;
margin: 0 0 0 5px;
}
.dis_vplus_div {
width: 20px;
height: 24px;
float: right;
display: block;
background: url(/templates/mod/forum/img/like_w40.png);
}
.for_insert_theme {
width: 98%;
border: none;
}
.for_insert_theme .for_subject {
width: 100%;
}
height
.for_insert_theme .for_body {
width: 100%;
height: 100px;
}
.for_insert_theme .for_owner {
width: 90%;
}
.for_insert_theme .for_email {
width: 100%;
}
.for_insert_article {
width: 98%;
border: none;
}
.for_insert_article .for_subject {
width: 100%;
}
.for_insert_article .for_body {
width: 100%;
height: 100px;
}
.for_insert_article .for_owner {
width: 90%;
}
.for_insert_article .for_email {
width: 100%;
}
/* login */
.login {
text-align: center;
}
.login .log_nadpis {
margin: 50px 0 0 0;
}
.login .log_box {
margin: 0% auto;
width: 300px;
padding: 10px;
text-align: left;
}
.login .log_form {
margin: 10px;
text-align: right;
}
.log_login,
.log_pass,
.log_sub {
margin: 7px 0 0 0;
}
.logged {
padding: 7px;
}
.log_cntnews {
color: #FF0000;
}
/* login - userpage */
.userpage .for_insert_theme td {
border: none;
}
.userpage .acount_dashboard td {
border: none;
}
.userpage .forum td {
border: 1px solid #B4B4B4
}
.userpage .files td {
border: 1px solid #B4B4B4
}
/* mapa webu */
.map1 {
margin: 4px 0 4px 5px;
font-weight: bold;
}
.map1_0 {
margin: 10px 0 4px 20px;
}
.map1_1 {
margin: 4px 0 4px 40px;
}
.map1_2 {
margin: 2px 0 2px 60px;
}
.map1_3 {
margin: 2px 0 2px 80px;
}
.map1_4 {
margin: 2px 0 2px 100px;
}
.map1_5 {
margin: 2px 0 2px 120px;
}
/* feedback box */
.feedback-box {
position: fixed;
right: 0;
top: 50%;
margin: 60px 0 0 0;
height: 200px;
width: 48px;
z-index: 80;
}
a .feedback {
width: 50px;
height: 96px;
background: url(/img/feedback.png) no-repeat left;
border: 1px solid #ACACAC;
}
a:hover .feedback {
background: url(/img/feedback.png) no-repeat right;
border: 1px solid #7EB4EA;
}
/* files */
.files {
width: 100%;
border: 1px solid #B4B4B4;
}
.files_headers {
background: #ECECEC;
border-top: 1px solid #B4B4B4;
border-bottom: 1px solid #B4B4B4;
}
.files .icon_file img {
width: 30px;
}
.files .filename {
font-size: 80%;
color: #555555;
}
.files .file_desc {
font-size: 80%;
}
/* epodatelna */
.epodinput {
width: 96%;
}
/* POLLS */
.poll {
padding: 10px;
margin: 10px;
width: 204px;
color: black;
}
.poll a {
}
.poll_title {
}
.poll_wallfull {
background: #E1E1E1;
height: 6px;
}
.poll_wall {
background: #B4B4B4;
height: 6px;/*width:$p%;  - v scripts/poll.php */
}
/* teachers */
.ucitele {
width: 100%;
border: 1px solid #B4B4B4;
}
/* quiz/test */
.pcenter {
text-align: center;
}
.pcenter a {
font-weight: bold;
}
.pq {
margin: 20px 10px 20px 10px;
}
h4 {
margin: 20px 0 5px 0;
}
/* dashboard */
.contribution {
border: 1px solid #B4B4B4;
background: white;
text-align: center;
padding: 0 20px 20px 20px;
margin: 0 0 30px 0;
box-shadow: 5px 5px 2px #D0D0D0;
}
.contribution .pin {
width: 40px;
position: relative;
left: -10px;
top: -15px;
}
.contribution p {
text-align: left;
}
.contribution .owner {
float: right;
position: relative;
top: 10px;
left: -10px;
color: #999;
}
.contribution .date {
float: left;
position: relative;
top: 10px;
color: #999;
}
.contribution .cb_box {
text-align: left;
}
/* fotogalery */
.photos_viewsetting .active {
opacity: 0.7;
}
.photogallery {
}
.imgb {
float: left;
width: 23%;
padding: 2px 5px;
text-align: center;
}
.imgb .inner {
position: relative;
}
.imgb .desc {
width: 100%;
position: absolute;
bottom: 5px;
background-image: -moz-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
background-image: -ms-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 1)));
background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
background-image: -o-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='rgba(0, 0, 0, 1)', endColorstr='rgba(0, 0, 0, 0)', GradientType=1);
color: #fff;
display: none;
}
.imgb .desc div {
margin: 5px 3px 0 3px;
}
.imgb .desc div a {
color: #fff;
}
.imgb .hover {
display: block;
}
.photogallery img {
width: 100%;
max-height: 133px;
border: 1px solid #E1E1E1;
box-shadow: 5px 5px 2px #EAEAEA;
}
.navidate {
text-align: center;
font-weight: bold;
}
.footer_box {
margin-bottom: 1em;
font-size: 87.5%;
}
.footer_box:last-child {
margin-bottom: 0;
}
/** TAKEN FROM Typro https://github.com/typro/typro/ */
.form input,
.form select,
.form textarea {
box-sizing: border-box;
font: inherit;
font-weight: normal;
}
.form input[type=text],
.form input[type=password],
.form input[type=file],
.form input[type=email],
.form input[type=number],
.form input[type=date],
.form input[type=datetime-local],
.form select,
.form textarea {
padding: 0.25em 0.5em;
}
.form input[type=text],
.form input[type=password],
.form input[type=file],
.form input[type=email],
.form input[type=number],
.form textarea {
width: 100%;
}
.form textarea {
resize: vertical;
}
.form__label {
font-weight: bold;
margin-bottom: 0.125em;
}
.form__control-pair {
margin-bottom: 0.75em;
}
.form__control__description {
font-size: 87.5%;
display: block;
color: #666;
margin-bottom: 0.25em;
margin-top: 0.25em;
}
.form__errors,
.form__control__error {
color: #de0000;
}
.form__control__error {
font-size: 87.5%;
margin-bottom: 0.25em;
margin-top: 0.25em;
}
.form__group { /* fieldset */
border: none;
margin: 0 0 1em;
padding: 0;
}
.form__group__label { /* legend */
width: 100%;
font-weight: bold;
font-size: 112.5%;
border-bottom: 1px solid #ddd;
margin: 0 0 0.5em;
padding: 0 0 0.5em;
}
.form__group__description {
margin: 0 0 1em;
}
.form--hidden {
display: none;
}
.form--wide {
width: 100%;
}
/** MODS */
.form__control--required:after,
.form__control-pair--required > .form__control > label:after {
content: "*";
color: red;
margin-left: 0.25em;
font-weight: bold;
}
.form__control-pair--radiolist > .form__control > label:after {
content: none;
}
.eu-cookies {
color: #ddd;
position: fixed;
left: 0;
bottom: 0;
width: 100%;
padding: 0.5em;
background-color: #444;
z-index: 2000;
text-align: center;
}
.eu-cookies p,
.eu-cookies ul {
margin-bottom: 0;
}
.eu-cookies__content {
display: inline-block;
}
.eu-cookies button {
font: inherit;
background: green;
color: white;
border-radius: 3px;
border: none;
font-weight: bold;
line-height: 1;
padding: 0.5em 0.75em;
font-size: 87.5%;
margin: 0 1.5em;
}
.cookie-bar {
display: none;
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: #fff;
z-index: 1000;
box-shadow: 0 0.25em 1em rgba(0, 0, 0, 0.5);
padding: 1.5em 2em 1.25em;
box-sizing: border-box;
}
.cookie-bar--active {
display: block;
}
.cookie-bar__description {
margin-bottom: 1em;
}
.cookie-bar__category {
margin-bottom: 1em;
display: none;
}
.cookie-bar__category label {
cursor: pointer;
}
.cookie-bar__category--disabled label {
cursor: not-allowed;
}
.cookie-bar__checkbox {
position: relative;
display: inline-block;
width: 2.5em;
height: 1.5em;
vertical-align: middle;
}
.cookie-bar__checkbox input {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
border: 0;
white-space: nowrap;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
}
.cookie-bar__checkbox-round {
position: absolute;
background: #ddd;
top: 0;
left: 0;
right: 0;
bottom: 0;
border-radius: 1em;
}
.cookie-bar__checkbox-round:before {
content: "";
width: 1em;
height: 1em;
background: #fff;
border-radius: 50%;
position: absolute;
top: 0.25em;
left: 0.25em;
}
.cookie-bar__checkbox input:focus + .cookie-bar__checkbox-round {
outline: -webkit-focus-ring-color auto 1px;
}
.cookie-bar__checkbox input:checked + .cookie-bar__checkbox-round {
background: green;
}
.cookie-bar__checkbox input:checked + .cookie-bar__checkbox-round:before {
left: auto;
right: 0.25em;
}
.cookie-bar__category-label {
display: inline-block;
}
.cookie-bar__buttons {
margin-top: 1.5em;
display: flex;
flex-wrap: wrap;
gap: 0.75em;
}
.cookie-bar__button {
display: block;
flex: 1;
padding: 0.5em 1em;
box-sizing: border-box;
font: inherit;
font-weight: bold;
background-color: #eee;
color: #000;
cursor: pointer;
border-radius: 0.25em;
border: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
text-decoration: none;
border: 0.125em solid #eee;
}
.cookie-bar__button:hover,
.cookie-bar__button:focus,
.cookie-bar__button:active {
text-decoration: underline;
}
.cookie-bar__button:active {
background: #fff;
}
.cookie-bar__button--accept {
background-color: #1779ba;
border-color: #1779ba;
color: #fff;
flex: 1 1 100%;
}
.cookie-bar__button--accept:active {
background: #2196e3;
border-color: #2196e3;
}
.cookie-bar__button--save {
display: none;
}
.cookie-bar--show-settings .cookie-bar__category {
display: block;
}
.cookie-bar--show-settings .cookie-bar__button--settings {
display: none;
}
.cookie-bar--show-settings .cookie-bar__button--save {
display: block;
}
@media only screen and (min-width: 40em) {
.cookie-bar {
bottom: 1em;
right: 1em;
left: auto;
width: 30em;
max-width: 100%;
border-radius: 0.25em;
}
.cookie-bar--centered {
left: 1em;
right: 1em;
top: 50%;
transform: translateY(-37%);
bottom: auto;
margin: 0 auto;
padding: 3.5em 4em 3.25em;
width: 34em;
}
.cookie-bar--wide {
border-radius: 0;
right: 0;
left: 0;
max-width: none;
width: auto;
bottom: 0;
}
.cookie-bar--wide .cookie-bar__inner {
display: flex;
align-items: center;
gap: 1.5em;
max-width: 70em;
margin: 0 auto;
}
.cookie-bar--wide .cookie-bar__content,
.cookie-bar--wide .cookie-bar__buttons {
flex: 1;
}
.cookie-bar--wide .cookie-bar__buttons {
margin-top: 0;
max-width: 27em;
}
}
.lang-switcher,
.lang-switcher__current,
.lang-switcher__button,
.lang-switcher__lang-icon,
.lang-switcher__lang-icon img,
.lang-switcher__langs,
.lang-switcher__lang,
.lang-switcher__lang-title {
display: block;
}
.lang-switcher {
position: relative;
display: inline-block;
}
.lang-switcher__button {
display: flex;
align-items: center;
padding: 0.25em;
border-radius: 3px;
}
.lang-switcher__button:after {
display: block;
content: "";
background: url('../../../css/../img/sipka-down-black.png') no-repeat center center;
width: 15px;
height: 15px;
margin-left: 0.25em;
}
.lang-switcher__lang-icon {
width: 24px;
}
.lang-switcher__lang-icon img {
max-width: 100%;
height: auto;
}
.lang-switcher__current .lang-switcher__lang-icon {
width: 20px;
}
.lang-switcher__langs {
display: none;
position: absolute;
right: 0;
background: #fff;
box-sizing: border-box;
border: 1px solid #d4d4d4;
z-index: 380;
border-radius: 3px;
box-shadow: 0 2px 7px rgba(0, 0, 0, 0.25);
top: 100%;
margin-top: 0.25em;
}
.lang-switcher__lang {
display: flex;
align-items: center;
text-decoration: none;
padding: 0.5em 0.75em;
}
.lang-switcher__lang--current {
background: #cae4ff;
}
.lang-switcher__lang:first-child {
border-radius: 3px 3px 0 0;
}
.lang-switcher__lang:last-child {
border-radius: 0 0 3px 3px;
}
.lang-switcher__lang:hover,
.lang-switcher__lang:focus,
.lang-switcher__lang:active {
background-color: #f8f8f8;
}
.lang-switcher__lang--current:hover,
.lang-switcher__lang--current:focus,
.lang-switcher__lang--current:active {
background-color: #b4d1ef;
}
.lang-switcher__lang:hover .lang-switcher__lang-title,
.lang-switcher__lang:focus .lang-switcher__lang-title,
.lang-switcher__lang:active .lang-switcher__lang-title {
text-decoration: underline;
}
.lang-switcher__lang-title {
flex: 1;
margin-left: 0.5em;
}
.lang-switcher--active .lang-switcher__button {
background: #d4d4d4;
}
.lang-switcher--active .lang-switcher__langs {
display: block;
}
.pswp__caption .pswp__caption__center {
text-align: center;
}
.wide-content {
overflow-x: auto;
margin-bottom: 1em;
}
.wide-content :last-child {
margin-bottom: 0;
}
.references {
margin-bottom: 1em;
}
.references .owl-theme .owl-controls {
margin: 0;
padding: 0;
}
.references .owl-dots {
text-align: center;
margin: 0;
padding: 0;
}
.references .owl-dot {
width: 0.875em;
height: 0.875em;
box-sizing: border-box;
border-radius: 50%;
border: 0.125em solid #fff;
background: #ddd;
display: inline-block;
margin: 0.25em;
vertical-align: middle;
cursor: pointer;
}
.references .owl-dot.active {
background: silver;
border-color: silver;
}
.references__reference {
padding: 1em 1em 0;
text-align: center;
}
#modal-pagePopup .modal__container {
max-width: none;
}
.popup,
.popup__image,
.popup img,
.popup__text {
display: block;
}
.popup img {
max-width: 100%;
height: auto;
}
.popup__image + .popup__text {
margin-top: 1em;
}
.contextMenu,
.contextMenu__header,
.contextMenu__items,
.contextMenu__item,
.contextMenu__subitems,
.contextMenu__subitem,
.contextMenuLink,
.contextMenuLink__icon,
.contextMenuLink__label {
display: block;
}
.contextMenu__header {
margin-bottom: 0.25em;
}
.contextMenu__items,
.contextMenu__subitems {
margin: 0;
list-style: none;
}
.contextMenu__subitems {
margin-left: 1em;
}
.contextMenu__item {
margin-bottom: 0.25em;
}
.contextMenu__item:last-child {
margin-bottom: 0;
}
.contextMenuLink {
display: flex;
text-decoration: none;
color: inherit;
gap: 1em;
padding: 0.5em 1em;
}
.contextMenuLink__icon {
background-repeat: no-repeat;
background-position: center center;
}
.contextMenuLink--current .contextMenuLink__label,
.contextMenuLink:hover .contextMenuLink__label,
.contextMenuLink:focus .contextMenuLink__label,
.contextMenuLink:active .contextMenuLink__label {
text-decoration: underline;
}
.contextMenuLink__label {
flex: 1;
}
.contextMenu__subitem .contextMenuLink__label {
font-size: 87.5%;
}
.navigation {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
align-items: center;
}
.navigation__item,
.navigation__separator {
font-size: 87.5%;
}
.navigation__item {
color: inherit;
text-decoration: none;
box-sizing: border-box;
}
.navigation__item:hover,
.navigation__item:focus,
.navigation__item:active {
text-decoration: underline;
}
.siteMenu,
.siteMenu__item,
.siteMenuLink,
.siteMenuLink__icon,
.siteMenuLink__label {
display: block;
}
.siteMenu__title {
margin-bottom: 0;
}
.siteMenu__items {
margin: 0;
list-style: none;
}
.siteMenu__item {
margin-bottom: 0.25em;
}
.siteMenu__item:last-child {
margin-bottom: 0;
}
.siteMenuLink {
display: flex;
text-decoration: none;
color: inherit;
gap: 1em;
padding: 0.5em 1em;
}
.siteMenuLink:hover .siteMenuLink__label,
.siteMenuLink:focus .siteMenuLink__label,
.siteMenuLink:active .siteMenuLink__label {
text-decoration: underline;
}
.siteMenuLink__icon {
background-repeat: no-repeat;
background-position: center center;
}
.siteMenuLink__label {
flex: 1;
}
.posts {
display: grid;
gap: 2rem;
}
.post {
display: flex;
flex-direction: column;
row-gap: 1em;
column-gap: 1.5em;
}
.post__image,
.post__content,
.post__title,
.post__date,
.post__perex {
display: block;
}
.post__content {
flex: 1;
position: relative;
}
.post__title {
font-weight: bold;
font-size: 150%;
margin-bottom: 0.5em;
}
.post__title:last-child {
margin-bottom: 0;
}
.post__link {
display: inline-block;
color: inherit;
text-decoration: none;
}
.post__link:hover,
.post__link:focus,
.post__link:active {
text-decoration: underline;
}
.post__date {
color: gray;
font-size: 87.5%;
margin-bottom: 1em;
}
.post__perex {
font-size: 87.5%;
}
.post--horizontal {
flex-direction: row;
}
@media only screen and (min-width:30em) {
.post--horizontal\@xs {
flex-direction: row;
}
}
@media only screen and (min-width:40em) {
.post--horizontal\@sm {
flex-direction: row;
}
}
@media only screen and (min-width:60em) {
.post--horizontal\@md {
flex-direction: row;
}
}
@media only screen and (min-width:75em) {
.post--horizontal\@lg {
flex-direction: row;
}
}
@media only screen and (min-width:112em) {
.post--horizontal\@xl {
flex-direction: row;
}
}
.post-v2 {
display: flex;
flex-direction: row;
row-gap: 1rem;
column-gap: 1.5rem;
flex-wrap: wrap;
}
.post-v2__image,
.post-v2__content,
.post-v2__title,
.post-v2__date,
.post-v2__perex {
display: block;
}
.post-v2__content {
flex: 1;
position: relative;
min-width: 50%;
}
.post-v2__title {
font-weight: bold;
font-size: 1.125rem;
margin-bottom: 0.5rem;
}
.post-v2__title:last-child {
margin-bottom: 0;
}
.post-v2__link {
display: inline-block;
color: inherit;
text-decoration: none;
}
.post-v2__link:hover,
.post-v2__link:focus,
.post-v2__link:active {
text-decoration: underline;
}
.post-v2__date {
color: gray;
font-size: 0.875rem;
margin-bottom: 1rem;
}
.post-v2__perex {
font-size: 0.875rem;
}
.categoryPosts {
display: grid;
gap: 2rem;
}
.galleryPreviews {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
gap: 2rem;
}
.galleryPreview {
max-width: 12.5rem;
display: block;
text-decoration: none;
transition: transform 0.2s;
box-sizing: border-box;
position: relative;
grid-column: span 1;
min-width: 0; /* https://stackoverflow.com/a/43312314 */
}
.galleryPreview__preview {
display: block;
margin-bottom: 0.75rem;
}
.galleryPreview__label {
font-weight: bold;
font-size: 1.125rem;
display: block;
line-height: 1.25;
}
.galleryPreview:hover,
.galleryPreview:focus,
.galleryPreview:active {
text-decoration: none;
transform: scale(1.025);
}
.galleryPreview:hover .galleryPreview__label,
.galleryPreview:focus .galleryPreview__label,
.galleryPreview:active .galleryPreview__label {
text-decoration: underline;
}
.calendarEvents {
display: grid;
gap: 1.5rem;
}
.calendarEvent {
display: flex;
align-items: center;
gap: 1rem;
text-decoration: none;
color: inherit;
}
.calendarEvent:hover,
.calendarEvent:focus,
.calendarEvent:active {
text-decoration: none;
}
.calendarEvent:hover .calendarEvent__title,
.calendarEvent:focus .calendarEvent__title,
.calendarEvent:active .calendarEvent__title {
text-decoration: underline;
}
.calendarEvent__date {
text-align: center;
background-color: #999;
padding: 0.625rem 0.5rem;
min-width: 2.5rem;
line-height: 1.25;
}
.calendarEvent__dateDay {
font-size: 1.125rem;
color: #fff;
font-weight: bold;
}
.calendarEvent__dateMonth {
font-size: 0.75rem;
color: #fff;
}
.calendarEvent__title {
font-size: 0.875rem;
font-weight: bold;
line-height: 1.5;
}
.calendarEvent__button {
font-weight: bold;
padding: 0.5rem 1.5rem;
margin-top: 1rem;
font-size: 0.875rem;
}
.cimg {
--cimg-borderRadius: 0;
--cimg-height: 20rem;
}
.content .cimg {
margin-left: 0;
margin-right: 0;
margin-top: 0;
margin-bottom: 1rem;
float: none;
}
.content .cimg a {
display: block;
}
.content .cimg img {
display: block;
max-height: var(--cimg-height);
width: 100%;
object-fit: cover;
border-radius: var(--cimg-borderRadius);
}
.contactToolbar {
display: flex;
gap: 1rem;
align-items: center;
margin-bottom: 2rem;
flex-wrap: wrap;
}
.persons {
display: grid;
gap: 2rem;
}
@media only screen and (min-width: 40em) {
.persons {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (min-width: 60em) {
.persons {
grid-template-columns: repeat(3, 1fr);
}
}
.person {
min-width: 0;
text-align: left;
box-sizing: border-box;
}
.person--detail {
margin-bottom: 2rem;
display: flex;
gap: 2rem;
flex-direction: row;
flex-wrap: wrap;
align-items: center;
}
.person__content {
flex: 1 1 14rem;
}
.person__header {
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
gap: 1rem;
margin-bottom: 1rem;
}
.person__photo {
display: flex;
}
.person__photo img,
.person__photo svg {
width: 8.75rem;
height: 8.75rem;
border-radius: 50%;
}
.person__info {
flex: 1;
}
.person__name {
font-size: 112.5%;
font-weight: bold;
text-decoration: none;
}
.person__name:hover,
.person__name:focus,
.person__name:active {
text-decoration: underline;
}
.person__categories {
margin-top: 0.5rem;
text-align: center;
}
.person__note {
margin-bottom: 1rem;
}
.person__contacts {
margin: 0;
padding: 0;
list-style: none;
}
.person__contact {
margin-top: 0.5rem;
}
.postCard {
display: block;
text-decoration: none;
min-width: 0;
}
.postCard__date {
font-size: 0.875rem;
line-height: 1;
margin-bottom: 1rem;
}
.postCard__title {
font-weight: bold;
font-size: 1.25rem;
}
.postCard__perex {
font-size: 0.875rem;
}
.postCards {
display: grid;
gap: 1rem;
}
.main-menu {
width: 100%;
box-sizing: border-box;
}
.main-menu__items {
list-style: none;
margin: 0;
margin-left: 2em;
box-sizing: border-box;
}
.main-menu--top > .main-menu__items {
margin-left: 0;
}
.main-menu__item-wrapper {
display: block;
position: relative;
}
.main-menu__item-arrow {
display: block;
position: absolute;
right: 0;
top: 50%;
background: transparent;
border: none;
box-sizing: border-box;
width: 2em;
height: 2em;
padding: 0;
margin: 0;
margin-top: -1em;
font-weight: bold;
font: inherit;
color: inherit;
cursor: pointer;
background: url('/img/chevron-right-white.svg') no-repeat center center;
background-size: 1em;
}
.main-menu--submenu {
height: 0;
overflow: hidden;
}
.main-menu__item--opened > .main-menu--submenu {
height: auto;
overflow: visible;
}
.main-menu__item--opened > .main-menu__item-wrapper > .main-menu__item-arrow {
transform: rotate(90deg);
}
/* LINK */
.main-menu-link,
.main-menu-link__icon,
.main-menu-link__label {
display:  block;
box-sizing: border-box;
}
.main-menu-link {
text-decoration: none;
color: inherit;
display: flex;
align-items: center;
}
.main-menu-link__label {
padding: 0.75em;
flex: 1;
}
.main-menu-link {
position: relative;
}
.main-menu--submenu .main-menu-link:before {
content: "";
width: 0.5em;
height: 0.5em;
background: currentColor;
display: block;
position: absolute;
border-radius: 50%;
left: -0.375em;
}
.main-menu-link:hover > .main-menu-link__label,
.main-menu-link:focus > .main-menu-link__label,
.main-menu-link:active > .main-menu-link__label {
text-decoration: underline;
color: inherit;
}
.main-menu-link--active,
.main-menu-link--current {
font-weight: bold;
}
.menu-switcher-container {
display: block;
width: 100%;
height: 0px;
overflow: hidden;
transform: scaleY(0);
transform-origin: top;
transition: transform 0.26s ease;
}
.menu-switcher-container--active {
height: auto;
transform: scaleY(1);
}
.menu-switcher,
.menu-switcher__button,
.menu-switcher__icon,
.menu-switcher__label {
display: block;
box-sizing: border-box;
}
.menu-switcher__icon {
margin: 0 auto;
}
.menu-switcher__button {
text-align: center;
cursor: pointer;
border: none;
border-radius: 0.5em;
background: #333;
color: #fff;
padding: 0.25em 0.5em;
}
.menu-switcher__label {
font-weight: bold;
font-size: 112.5%;
text-decoration: none;
}
.menu-switcher__button:hover .menu-switcher__label,
.menu-switcher__button:focus .menu-switcher__label {
text-decoration: underline;
}
@property --button-backpos {
syntax: '<percentage>';
inherits: false;
initial-value: 0%;
}
:root {
--primary: #3b82f6;
--primary-light: #60a5fa;
--primary-lighter: #93c5fd;
--primary-lightest: #dbeafe;
--primary-dark: #2563eb;
--dark: #0f172a;
--dark-lighter: #1e293b;
--dark-light: #334155;
--gray: #94a3b8;
--gray-light: #cbd5e1;
--white: #ffffff;
--accent: #06b6d4;
--success: #10b981;
--error: #ef4444;
--size-h1: clamp(2.2rem, 1.5rem + 3vw, 3rem);
--size-h2: clamp(1.8rem, 1.1rem + 2.5vw, 2.5rem);
--size-h3: clamp(1.4rem, 0.9rem + 2vw, 1.8rem);
--size-h4: clamp(1.2rem, 0.8rem + 1.5vw, 1.6rem);
--size-h5: clamp(1rem, 0.7rem + 1.3vw, 1.4rem);
--size-h6: clamp(0.9rem, 0.6rem + 1vw, 1.2rem);
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
line-height: 1.6;
color: var(--gray-light);
background: var(--dark);
overflow-x: hidden;
opacity: 0;
transition: opacity 1s ease;
color-scheme: dark;
}
body.light-theme {
color-scheme: light;
}
a {
color: var(--primary-light);
text-decoration: none;
}
a:hover,
a:focus,
a:active {
color: var(--accent);
text-shadow: 0 0 10px rgba(6, 182, 212, 0.8);
text-decoration: none;
}
body.light-theme a {
color: var(--primary);
}
body.light-theme a:hover,
body.light-theme a:focus,
body.light-theme a:active {
color: var(--primary);
text-shadow: none;
text-decoration: underline;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: bold;
color: var(--white);
text-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
}
h1 {
font-size: var(--size-h1);
margin-bottom: 1.5rem;
}
h2 {
font-size: var(--size-h2);
margin-bottom: 1.5rem;
}
h3 {
font-size: var(--size-h3);
margin-bottom: 1rem;
}
h4 {
font-size: var(--size-h4);
margin-bottom: 0.8rem;
}
h5 {
font-size: var(--size-h5);
margin-bottom: 0.6rem;
}
h6 {
font-size: var(--size-h6);
margin-bottom: 0.5rem;
}
body.light-theme :is(h1, h2, h3, h4, h5, h6) {
font-weight: bold;
color: var(--dark);
}
.body-inner {
padding: 0;
max-width: 100%;
overflow-x: hidden;
}
.homepage-inner {
overflow-x: hidden;
}
.subpageTitle,
.subpagePerex {
text-align: center;
}
.subpageTitle {
font-size: var(--size-h1);
margin-bottom: 1.5rem;
background: linear-gradient(135deg, var(--white) 0%, var(--primary-light) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
filter: drop-shadow(0 0 30px rgba(59, 130, 246, 0.5));
}
.subpagePerex {
font-size: 1.3rem;
color: var(--gray);
margin-bottom: 2rem;
text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}
body.light-theme .subpageTitle {
background: linear-gradient(135deg, var(--dark) 0%, var(--primary) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
filter: none;
}
body.light-theme .subpagePerex {
color: var(--gray);
text-shadow: none;
}
.content img {
border-radius: 14px;
border: 0 !important;
}
/* Gradient backgrounds */
.gradient-bg {
background: linear-gradient(135deg, var(--dark) 0%, var(--dark-lighter) 50%, var(--dark) 100%);
position: relative;
}
.gradient-bg::before {
content: '';
position: absolute;
inset: 0;
background:
radial-gradient(circle at 20% 50%, rgba(59, 130, 246, 0.1) 0%, transparent 50%),
radial-gradient(circle at 80% 80%, rgba(6, 182, 212, 0.1) 0%, transparent 50%);
pointer-events: none;
}
/*** HEADER ***/
.header {
background: rgba(15, 23, 42, 0.95);
backdrop-filter: blur(10px);
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
transition: all 0.3s ease;
position: sticky;
top: 0;
z-index: 1000;
}
.header-wrapper {
max-width: 75rem;
margin: 0 auto;
display: flex;
justify-content: space-between;
align-items: center;
padding: 1rem 2rem;
box-sizing: border-box;
}
.header-inner {
padding: 0;
margin-left: 0;
margin-right: 0;
}
/*** LOGO ***/
.logo {
display: flex;
align-items: center;
gap: 0.94rem;
text-decoration: none;
transition: transform 0.3s ease;
}
.header-row .logo {
text-decoration: none !important;
}
.logo:hover {
transform: translateY(-2px);
}
.logo-symbol {
width: 40px;
height: 40px;
position: relative;
filter: drop-shadow(0 0 20px rgba(59, 130, 246, 0.5));
}
.logo-square {
width: 20px;
height: 20px;
background: var(--primary);
position: absolute;
border-radius: 3px;
transition: all 0.3s ease;
}
.logo-square:nth-child(1) {
top: 0;
left: 0;
background: linear-gradient(135deg, var(--primary), var(--primary-dark));
box-shadow: 0 0 15px rgba(59, 130, 246, 0.8);
}
.logo-square:nth-child(2) {
top: 0;
right: 0;
background: var(--primary-light);
transform: scale(0.8);
opacity: 0.9;
}
.logo-square:nth-child(3) {
bottom: 0;
left: 0;
background: var(--primary-lighter);
transform: scale(0.6);
opacity: 0.7;
}
.logo-square:nth-child(4) {
bottom: 0;
right: 0;
background: var(--accent);
transform: scale(0.4);
opacity: 0.5;
}
.logo:hover .logo-square {
filter: brightness(1.2);
}
.logo-text {
font-size: 1.5rem;
font-weight: 600;
color: var(--white);
}
.logo-highlight {
color: var(--primary-light);
text-shadow: 0 0 20px rgba(96, 165, 250, 0.8);
}
.logo-domain {
font-size:1.2rem;
}
.logo:hover,
.logo:focus,
.logo:active {
text-decoration: none;
color: var(--web-logo-color, #444);
}
/*** HORIZONTAL MENU ***/
.header-wrapper .horizontalmenu {
background-color: transparent;
}
.horizontalmenu-inner {
gap: 2rem;
}
.header-wrapper .horizontalmenu .m0_0 a {
color: var(--gray-light);
padding: 0;
text-decoration: none;
font-weight: 500;
position: relative;
transition: color 0.3s ease;
}
.header-wrapper .horizontalmenu .m0_0 a::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 2px;
background: linear-gradient(90deg, var(--primary), var(--accent));
transition: width 0.3s ease;
box-shadow: 0 0 10px rgba(59, 130, 246, 0.8);
}
.header-wrapper .horizontalmenu .m0_0 a:hover,
.header-wrapper .horizontalmenu .m0_0 a:focus,
.header-wrapper .horizontalmenu .m0_0 a:active,
.header-wrapper .horizontalmenu .m0_0 a.horizontalmenuLink--active {
color: var(--white);
text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
}
.header-wrapper .horizontalmenu .m0_0 a:hover::after,
.header-wrapper .horizontalmenu .m0_0 a:focus::after,
.header-wrapper .horizontalmenu .m0_0 a:active::after,
.header-wrapper .horizontalmenu .m0_0 a.horizontalmenuLink--active::after {
width: 100%;
}
.bottom {
display: none;
}
.horizontalmenu-inner {
padding: 0;
}
.horizontalmenu-inner {
display: none;
}
.horizontalmenu-mobile {
display: none;
}
@media only screen and (max-width: 60em) {
.header-wrapper {
display: grid;
grid-template-columns: 1fr;
}
.header-logo {
display: flex;
justify-content: space-between;
width: 100%;
}
}
.header-logo {
justify-content: space-between;
}
.horizontalmenu-secondary {
display: none;
padding: 1em;
background: #fff;
}
.horizontalmenu-secondary:empty {
padding: 0;
}
.horizontalmenu--active .horizontalmenu-inner {
height: auto;
transform: scaleY(1);
}
.horizontalmenu--active .horizontalmenu-mobile,
.horizontalmenu--active .horizontalmenu-secondary {
display: block;
}
.horizontalmenu--active .horizontalmenu-mobile {
display: block;
padding-top: 1rem;
}
.horizontalmenu-switch .horizontalmenu-switcher {
display: inline;
background-color: transparent;
text-align: center;
vertical-align: middle;
padding: 0;
text-decoration: none;
box-sizing: border-box;
white-space: nowrap;
overflow: hidden;
}
.horizontalmenu-switch .horizontalmenu-switcher-label {
display: none;
}
.horizontalmenu-switcher:hover,
.horizontalmenu-switcher:focus,
.horizontalmenu-switcher:active {
text-decoration: none;
}
.horizontalmenu-switcher-icon,
.horizontalmenu-switcher-label {
display: inline-block;
vertical-align: middle;
width: 26px;
height: 26px;
}
.horizontalmenu-switcher:hover .horizontalmenu-switcher-label,
.horizontalmenu-switcher:focus .horizontalmenu-switcher-label,
.horizontalmenu-switcher:active .horizontalmenu-switcher-label {
text-decoration: underline;
}
@media only screen and (min-width: 60em) {
.page--desktop .horizontalmenu-switch {
display: none;
}
.page--desktop .horizontalmenu-inner {
display: flex;
flex-wrap: wrap;
}
.page--desktop .horizontalmenu-mobile,
.page--desktop .horizontalmenu-secondary,
.page--desktop .horizontalmenu--active .horizontalmenu-secondary {
display: none;
}
}
.content {
width: 100%;
position: relative;
}
/* Hero Section */
.hero {
padding: 6rem 2rem;
text-align: center;
position: relative;
background: var(--dark);
display: flex;
align-items: center;
}
.hero::before {
content: '';
position: absolute;
top: -50%;
right: -20%;
width: 600px;
height: 600px;
background: radial-gradient(circle, rgba(59, 130, 246, 0.2) 0%, transparent 70%);
animation: float 20s ease-in-out infinite;
}
.hero::after {
content: '';
position: absolute;
bottom: -50%;
left: -20%;
width: 600px;
height: 600px;
background: radial-gradient(circle, rgba(6, 182, 212, 0.2) 0%, transparent 70%);
animation: float 25s ease-in-out infinite reverse;
}
@keyframes float {
0%, 100% { transform: translateY(0) rotate(0deg); }
50% { transform: translateY(-30px) rotate(180deg); }
}
.hero-content {
margin: 0 auto;
position: relative;
z-index: 1;
text-align: left;
width: 100%;
}
.hero h1 {
font-size: var(--size-h1);
margin-bottom: 1.5rem;
background: linear-gradient(135deg, var(--white) 0%, var(--primary-light) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
filter: drop-shadow(0 0 30px rgba(59, 130, 246, 0.5));
}
.hero h1 span {
background: linear-gradient(135deg, var(--primary-light) 0%, var(--accent) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.hero p {
font-size: 1.3rem;
color: var(--gray);
margin-bottom: 2rem;
text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}
.hero-container {
width: 100%;
max-width: 75rem;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr;
align-items: center;
position: relative;
z-index: 1;
padding-left: 2rem;
padding-right: 2rem;
box-sizing: border-box;
}
.hero-container:has(> :nth-child(2)) {
grid-template-columns: 2fr 1fr;
}
/* Animated Logo Container */
.hero-logo-container {
display: flex;
justify-content: center;
align-items: center;
position: relative;
height: 350px;
perspective: 1000px;
}
.animated-logo {
width: 280px;
height: 280px;
position: relative;
transform-style: preserve-3d;
animation: logoRotate 20s linear infinite;
cursor: pointer;
transition: transform 0.3s ease;
}
.animated-logo:hover {
transform: scale(1.1);
animation-play-state: paused;
}
@keyframes logoRotate {
0% { transform: rotateY(0deg) rotateX(15deg); }
100% { transform: rotateY(360deg) rotateX(15deg); }
}
.logo-cube {
position: absolute;
width: 65px;
height: 65px;
transform-style: preserve-3d;
animation: cubeFloat 4s ease-in-out infinite;
}
.logo-cube:nth-child(1) {
top: 20px;
left: 20px;
animation-delay: 0s;
}
.logo-cube:nth-child(2) {
top: 20px;
right: 20px;
animation-delay: -1s;
}
.logo-cube:nth-child(3) {
bottom: 20px;
left: 20px;
animation-delay: -2s;
}
.logo-cube:nth-child(4) {
bottom: 20px;
right: 20px;
animation-delay: -3s;
}
@keyframes cubeFloat {
0%, 100% { transform: translateZ(0px) rotateX(0deg) rotateY(0deg); }
25% { transform: translateZ(50px) rotateX(90deg) rotateY(90deg); }
50% { transform: translateZ(0px) rotateX(180deg) rotateY(180deg); }
75% { transform: translateZ(-50px) rotateX(270deg) rotateY(270deg); }
}
.cube-face {
position: absolute;
width: 65px;
height: 65px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.8rem;
color: white;
text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
box-shadow: 0 0 50px rgba(59, 130, 246, 0.25);
line-height: 1;
font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', sans-serif;
text-align: center;
vertical-align: middle;
transform-origin: center center;
}
/* Specifické centrování pro rotované stěny */
.cube-right, .cube-left {
display: grid;
place-items: center;
align-content: center;
justify-content: center;
}
/* Cube 1 - Webový vývoj */
.logo-cube:nth-child(1) .cube-face {
background: linear-gradient(135deg, var(--primary), var(--primary-dark));
}
.logo-cube:nth-child(1) .front { transform: rotateY(0deg) translateZ(32.5px); }
.logo-cube:nth-child(1) .back { transform: rotateY(180deg) translateZ(32.5px); }
.logo-cube:nth-child(1) .cube-right { transform: rotateY(90deg) translateZ(32.5px); }
.logo-cube:nth-child(1) .cube-left { transform: rotateY(-90deg) translateZ(32.5px); }
.logo-cube:nth-child(1) .top { transform: rotateX(90deg) translateZ(32.5px); }
.logo-cube:nth-child(1) .bottom { transform: rotateX(-90deg) translateZ(32.5px); }
/* Cube 2 - Online marketing */
.logo-cube:nth-child(2) {
width: 58px;
height: 58px;
}
.logo-cube:nth-child(2) .cube-face {
width: 58px;
height: 58px;
font-size: 1.6rem;
background: linear-gradient(135deg, var(--primary-light), var(--primary));
}
.logo-cube:nth-child(2) .front  { transform: rotateY(0deg) translateZ(29px); }
.logo-cube:nth-child(2) .back   { transform: rotateY(180deg) translateZ(29px); }
.logo-cube:nth-child(2) .cube-right { transform: rotateY(90deg) translateZ(29px); }
.logo-cube:nth-child(2) .cube-left  { transform: rotateY(-90deg) translateZ(29px); }
.logo-cube:nth-child(2) .top    { transform: rotateX(90deg) translateZ(29px); }
.logo-cube:nth-child(2) .bottom { transform: rotateX(-90deg) translateZ(29px); }
/* Cube 3 - SEO a Analytics */
.logo-cube:nth-child(3) {
width: 50px;
height: 50px;
}
.logo-cube:nth-child(3) .cube-face {
width: 50px;
height: 50px;
font-size: 1.4rem;
background: linear-gradient(135deg, var(--primary-lighter), var(--primary-light));
}
.logo-cube:nth-child(3) .front  { transform: rotateY(0deg) translateZ(25px); }
.logo-cube:nth-child(3) .back   { transform: rotateY(180deg) translateZ(25px); }
.logo-cube:nth-child(3) .cube-right { transform: rotateY(90deg) translateZ(25px); }
.logo-cube:nth-child(3) .cube-left  { transform: rotateY(-90deg) translateZ(25px); }
.logo-cube:nth-child(3) .top    { transform: rotateX(90deg) translateZ(25px); }
.logo-cube:nth-child(3) .bottom { transform: rotateX(-90deg) translateZ(25px); }
/* Cube 4 - Podpora a služby */
.logo-cube:nth-child(4) {
width: 42px;
height: 42px;
}
.logo-cube:nth-child(4) .cube-face {
width: 42px;
height: 42px;
font-size: 1.2rem;
background: linear-gradient(135deg, var(--accent), var(--primary-lighter));
}
.logo-cube:nth-child(4) .front  { transform: rotateY(0deg) translateZ(21px); }
.logo-cube:nth-child(4) .back   { transform: rotateY(180deg) translateZ(21px); }
.logo-cube:nth-child(4) .cube-right { transform: rotateY(90deg) translateZ(21px); }
.logo-cube:nth-child(4) .cube-left  { transform: rotateY(-90deg) translateZ(21px); }
.logo-cube:nth-child(4) .top    { transform: rotateX(90deg) translateZ(21px); }
.logo-cube:nth-child(4) .bottom { transform: rotateX(-90deg) translateZ(21px); }
/* Connecting Lines */
.connecting-lines {
position: absolute;
inset: 0;
pointer-events: none;
opacity: 0.4;
}
.line {
position: absolute;
background: linear-gradient(90deg, transparent, var(--primary-light), transparent);
opacity: 0.3;
animation: lineGlow 3s ease-in-out infinite;
}
.line-horizontal {
height: 2px;
width: 120px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.line-vertical {
width: 2px;
height: 120px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.line-diagonal1 {
height: 2px;
width: 170px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) rotate(45deg);
}
.line-diagonal2 {
height: 2px;
width: 170px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) rotate(-45deg);
}
@keyframes lineGlow {
0%, 100% { opacity: 0.2; box-shadow: 0 0 10px rgba(59, 130, 246, 0.2); }
50% { opacity: 0.8; box-shadow: 0 0 20px rgba(59, 130, 246, 0.8); }
}
/* Particle System */
.particles {
position: absolute;
inset: 0;
pointer-events: none;
}
.particle {
position: absolute;
width: 4px;
height: 4px;
background: var(--primary-light);
border-radius: 50%;
animation: particleFloat 6s ease-in-out infinite;
box-shadow: 0 0 10px rgba(96, 165, 250, 0.8);
}
@keyframes particleFloat {
0% { transform: translateY(0) scale(0); opacity: 0; }
20% { opacity: 1; }
80% { opacity: 1; }
100% { transform: translateY(-200px) scale(1.5); opacity: 0; }
}
/* Neon button */
.btn-neon {
display: inline-block;
padding: 1rem 2.5rem;
background: transparent;
color: var(--primary-light);
text-decoration: none;
border: 2px solid var(--primary);
border-radius: 50px;
font-weight: 600;
position: relative;
overflow: hidden;
transition: all 0.3s ease;
text-transform: uppercase;
letter-spacing: 1px;
}
.btn-neon::before {
content: '';
position: absolute;
inset: 0;
background: var(--primary);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.3s ease;
z-index: -1;
}
.btn-neon:hover,
.btn-neon:focus,
.btn-neon:active {
color: var(--white);
border-color: var(--primary-light);
box-shadow:
0 0 20px rgba(59, 130, 246, 0.5),
inset 0 0 20px rgba(59, 130, 246, 0.2);
transform: translateY(-2px);
text-decoration: none;
}
.btn-neon:hover::before {
transform: scaleX(1);
}
.btn-wide {
width: 100%;
box-sizing: border-box;
text-align: center;
}
/* Services Section */
.services {
padding: 0 2rem;
max-width: 75rem;
margin: 0 auto;
}
.services-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 3rem;
padding: 4rem 0;
}
.service-card {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 20px;
padding: 3rem;
position: relative;
overflow: hidden;
transition: all 0.3s ease;
}
.service-card::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.3), transparent);
transition: left 0.6s ease;
}
.service-card:hover {
transform: translateY(-5px);
border-color: var(--primary);
box-shadow:
0 10px 40px rgba(0, 0, 0, 0.3),
0 0 30px rgba(59, 130, 246, 0.3);
}
.service-card:hover::before {
left: 100%;
}
.service-card h3 {
margin-bottom: 1rem;
color: var(--white);
text-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
}
.service-card p {
color: var(--gray);
line-height: 1.8;
margin-bottom: 1.5rem;
}
.service-cta {
display: inline-flex;
align-items: center;
gap: 0.5rem;
color: var(--primary-light);
text-decoration: none;
font-weight: 600;
transition: all 0.3s ease;
}
.service-cta:hover {
gap: 1rem;
color: var(--accent);
text-shadow: 0 0 10px rgba(6, 182, 212, 0.8);
}
/* Portfolio Section */
.portfolio {
padding: 4rem 2rem;
background: var(--dark-lighter);
position: relative;
}
.portfolio::before {
content: '';
position: absolute;
inset: 0;
background:
linear-gradient(180deg, var(--dark) 0%, transparent 10%, transparent 90%, var(--dark) 100%);
pointer-events: none;
}
.portfolio h2 {
text-align: center;
margin-bottom: 3rem;
color: var(--white);
text-shadow: 0 0 30px rgba(255, 255, 255, 0.3);
}
.portfolio-grid {
max-width: 75rem;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 2rem;
position: relative;
z-index: 1;
}
.portfolio-cta .btn-neon {
margin-top: 3rem;
}
.product__image {
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 15px;
overflow: hidden;
transition: all 0.3s ease;
cursor: pointer;
position: relative;
aspect-ratio: 16/10;
}
.product__image::before {
content: '';
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(6, 182, 212, 0.1));
font-size: 1.2rem;
font-weight: 600;
color: var(--primary-light);
letter-spacing: 2px;
}
.product__image:hover {
border-color: var(--primary);
box-shadow:
0 20px 40px rgba(0, 0, 0, 0.4),
0 0 40px rgba(59, 130, 246, 0.4);
}
.product__title {
margin-top: 0.5rem;
text-align: center;
}
.portfolio-cta {
text-align: center;
position: relative;
z-index: 1;
}
.product__image img {
width: 100%;
height: auto;
display: block;
}
/* About Section */
.about {
padding: 4rem 2rem;
max-width: 75rem;
margin: 0 auto;
}
.about h2 {
text-align: center;
margin-bottom: 3rem;
color: var(--white);
text-shadow: 0 0 30px rgba(255, 255, 255, 0.3);
}
.about-content {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 3rem;
align-items: center;
}
.about-image {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 2px solid var(--primary);
border-radius: 20px;
aspect-ratio: 1;
display: flex;
align-items: center;
justify-content: center;
font-size: 4rem;
font-weight: bold;
color: var(--primary-light);
position: relative;
overflow: hidden;
box-shadow:
0 0 50px rgba(59, 130, 246, 0.3),
inset 0 0 50px rgba(59, 130, 246, 0.1);
}
.about-image::before {
content: '';
position: absolute;
inset: -50%;
background: conic-gradient(from 0deg, var(--primary), var(--accent), var(--primary));
animation: rotate 10s linear infinite;
opacity: 0.1;
}
@keyframes rotate {
100% { transform: rotate(360deg); }
}
.about-text {
color: var(--gray-light);
}
.about-text p {
margin-bottom: 1.5rem;
line-height: 1.8;
font-size: 1.1rem;
}
.stats {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 2rem;
margin-top: 3rem;
}
.stat-card {
text-align: center;
padding: 2rem;
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 15px;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.stat-card::before {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(circle at center, var(--primary) 0%, transparent 70%);
opacity: 0;
transition: opacity 0.3s ease;
}
.stat-card:hover {
transform: translateY(-5px);
border-color: var(--primary);
box-shadow:
0 10px 30px rgba(0, 0, 0, 0.3),
0 0 30px rgba(59, 130, 246, 0.3);
}
.stat-card:hover::before {
opacity: 0.1;
}
.stat-number {
font-size: 3rem;
font-weight: bold;
background: linear-gradient(135deg, var(--primary-light) 0%, var(--accent) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
display: block;
filter: drop-shadow(0 0 20px rgba(59, 130, 246, 0.5));
}
.stat-label {
color: var(--gray);
margin-top: 0.5rem;
text-transform: uppercase;
letter-spacing: 1px;
font-size: 0.9rem;
}
/* Contact Section */
.contact {
padding: 5rem 2rem;
background: linear-gradient(180deg, var(--dark) 0%, var(--dark-lighter) 100%);
position: relative;
}
.contact::before {
content: '';
position: absolute;
inset: 0;
background:
radial-gradient(circle at 30% 20%, rgba(59, 130, 246, 0.1) 0%, transparent 40%),
radial-gradient(circle at 70% 80%, rgba(6, 182, 212, 0.1) 0%, transparent 40%);
pointer-events: none;
}
.contact h2 {
text-align: center;
margin-bottom: 3rem;
color: var(--white);
text-shadow: 0 0 30px rgba(255, 255, 255, 0.3);
}
.contact-content {
max-width: 75rem;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 3rem;
position: relative;
z-index: 1;
}
.contact-info {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
padding: 2.5rem;
border-radius: 15px;
transition: all 0.3s ease;
}
.contact-info:hover {
transform: translateY(-5px);
border-color: var(--primary);
box-shadow:
0 10px 30px rgba(0, 0, 0, 0.3),
0 0 30px rgba(59, 130, 246, 0.2);
}
.contact-info h3 {
margin-bottom: 1.5rem;
color: var(--white);
font-size: var(--size-h4);
}
.contact-item {
margin-bottom: 1rem;
color: var(--gray);
line-height: 1.6;
}
.contact-item strong {
color: var(--gray-light);
}
.contact-item a {
color: var(--primary-light);
text-decoration: none;
transition: all 0.3s ease;
}
.contact-item a:hover {
color: var(--accent);
text-shadow: 0 0 10px rgba(6, 182, 212, 0.8);
}
.social-links {
display: flex;
gap: 1rem;
margin-top: 1.5rem;
}
.social-links a {
display: inline-block;
width: 45px;
height: 45px;
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
color: var(--gray-light);
transition: all 0.3s ease;
font-size: 1.2rem;
}
.social-links a:hover {
background: var(--primary);
color: var(--white);
transform: translateY(-3px);
box-shadow:
0 5px 20px rgba(59, 130, 246, 0.5),
0 0 20px rgba(59, 130, 246, 0.5);
border-color: var(--primary);
}
.timeline {
position: relative;
padding: 2rem 0;
}
.timeline::before {
content: '';
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 4px;
background: linear-gradient(180deg, var(--primary) 0%, var(--accent) 100%);
transform: translateX(-50%);
box-shadow: 0 0 20px rgba(59, 130, 246, 0.5);
}
.timeline-item {
position: relative;
margin: 3rem 0;
opacity: 0;
animation: fadeInUp 0.8s ease forwards;
}
.timeline-item:nth-child(1) {
animation-delay: 0.1s;
}
.timeline-item:nth-child(2) {
animation-delay: 0.2s;
}
.timeline-item:nth-child(3) {
animation-delay: 0.3s;
}
.timeline-item:nth-child(4) {
animation-delay: 0.4s;
}
.timeline-item:nth-child(5) {
animation-delay: 0.5s;
}
.timeline-item:nth-child(6) {
animation-delay: 0.6s;
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.timeline-content {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 15px;
padding: 2rem;
box-sizing: border-box;
position: relative;
width: 45%;
transition: all 0.3s ease;
}
.timeline-content:hover {
transform: translateY(-5px);
border-color: var(--primary);
box-shadow:
0 10px 40px rgba(0, 0, 0, 0.3),
0 0 30px rgba(59, 130, 246, 0.3);
}
.timeline-item:nth-child(odd) .timeline-content {
margin-left: auto;
}
.timeline-item:nth-child(even) .timeline-content {
margin-right: auto;
}
.timeline-content::before {
content: '';
position: absolute;
top: 30px;
width: 0;
height: 0;
border: 15px solid transparent;
}
.timeline-item:nth-child(odd) .timeline-content::before {
left: -30px;
border-right-color: var(--dark-lighter);
}
.timeline-item:nth-child(even) .timeline-content::before {
right: -30px;
border-left-color: var(--dark-lighter);
}
.timeline-marker {
position: absolute;
left: 50%;
top: 30px;
width: 12px;
height: 12px;
background: var(--primary);
border: 4px solid var(--dark);
border-radius: 50%;
transform: translateX(-50%);
z-index: 2;
transition: all 0.3s ease;
}
.timeline-item:hover .timeline-marker {
background: var(--accent);
transform: translateX(-50%) scale(1.2);
}
.step-number {
display: inline-block;
background: var(--primary);
color: var(--white);
width: 30px;
height: 30px;
border-radius: 50%;
text-align: center;
line-height: 30px;
font-weight: bold;
box-shadow: 0 0 15px rgba(59, 130, 246, 0.5);
}
.timeline-content h3 {
font-size: var(--size-h4);
color: var(--white);
margin-bottom: 0.5rem;
text-shadow: 0 0 10px rgba(255, 255, 255, 0.3);
}
.timeline-content p {
color: var(--gray);
line-height: 1.6;
margin-bottom: 1rem;
}
.duration {
display: inline-block;
background: linear-gradient(135deg, var(--accent), var(--primary));
color: var(--white);
padding: 0.5rem 1rem;
border-radius: 20px;
font-size: 0.9rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
box-shadow: 0 5px 15px rgba(6, 182, 212, 0.3);
}
@media (max-width: 768px) {
.timeline::before {
left: 30px;
}
.timeline-content {
width: calc(100% - 80px);
margin-left: 80px !important;
margin-right: 0 !important;
}
.timeline-content::before {
left: -30px !important;
right: auto !important;
border-right-color: var(--dark-lighter) !important;
border-left-color: transparent !important;
}
.timeline-marker {
left: 30px;
}
.timeline-content h3 {
font-size: var(--size-h4);
}
}
/* Glowing effects */
.glow {
animation: glow 2s ease-in-out infinite alternate;
}
@keyframes glow {
from {
text-shadow: 0 0 10px currentColor;
}
to {
text-shadow: 0 0 20px currentColor, 0 0 30px currentColor;
}
}
/* Footer */
.footer-inner-content {
text-align: center;
}
.footer-links {
display: flex;
justify-content: center;
gap: 2rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
padding-top: 2rem;
padding-bottom: 2rem;
}
.j4w {
padding-top: 0.5rem;
}
.footer-inner-content.j4w .dimmed-text,
.footer-inner-content.j4w sup {
opacity: 0.4;
}
.footer-inner-content.j4w a {
opacity: 1;
}
.footer-inner-content a {
color: var(--gray);
text-decoration: none;
transition: all 0.3s ease;
opacity: 1;
}
.footer-inner-content a:hover {
color: var(--primary-light);
text-shadow: 0 0 10px rgba(96, 165, 250, 0.5);
}
.footer-center {
display: flex;
justify-content: center;
margin-top: 1rem;
}
.social-links a {
position: relative;
display: inline-block;
width: 40px;
height: 40px;
text-decoration: none;
}
.social-links .icon {
width: 40px;
height: 40px;
background-color: var(--blue);
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
}
.social-links .icon::before {
content: "";
display: block;
width: 60%;
height: 60%;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
filter: brightness(0) invert(1);
}
.social-links .facebook::before {
background-image: url('../img/facebook.svg');
background-repeat: no-repeat;
background-position: center;
filter: invert(89%) sepia(6%) saturate(326%) hue-rotate(174deg) brightness(94%) contrast(88%);
}
.social-links .youtube::before {
background-image: url('../img/youtube.svg');
background-size: 80%;
background-repeat: no-repeat;
background-position: center;
filter: invert(89%) sepia(6%) saturate(326%) hue-rotate(174deg) brightness(94%) contrast(88%);
}
/* Glow effects */
.glow-text {
text-shadow:
0 0 10px currentColor,
0 0 20px currentColor,
0 0 30px currentColor;
}
/* Responsive Design */
@media (max-width: 768px) {
.hero {
padding: 4rem 2rem;
}
.hero-container {
padding-left: 0;
padding-right: 0;
display: block;
}
.hero-logo-container {
display: none;
}
.hero-content {
text-align: center;
}
.hero h1 {
font-size: var(--size-h1);
}
.hero p {
font-size: 1.1rem;
}
.services-grid {
grid-template-columns: 1fr;
}
.about-content {
grid-template-columns: 1fr;
text-align: center;
}
.stats {
grid-template-columns: 1fr;
}
.contact-content {
grid-template-columns: 1fr;
}
.footer-links {
display: grid;
grid-template-columns: 1fr;
gap: 1rem;
}
}
/* Animations */
.fade-in {
opacity: 0;
transform: translateY(30px);
animation: fadeIn 0.8s ease forwards;
}
@keyframes fadeIn {
to {
opacity: 1;
transform: translateY(0);
}
}
.fade-in-delay-1 { animation-delay: 0.1s; }
.fade-in-delay-2 { animation-delay: 0.2s; }
.fade-in-delay-3 { animation-delay: 0.3s; }
/* Scrollbar */
::-webkit-scrollbar {
width: 10px;
}
::-webkit-scrollbar-track {
background: var(--dark);
}
::-webkit-scrollbar-thumb {
background: var(--dark-light);
border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
background: var(--primary);
}
/* Firefox */
* {
scrollbar-width: thin;
scrollbar-color: var(--dark-light) var(--dark);
}
/* Pricing Section */
.default-card.featured {
border-color: var(--primary);
box-shadow:
0 15px 40px rgba(0, 0, 0, 0.3),
0 0 40px rgba(59, 130, 246, 0.3);
transform: scale(1.05);
}
.default-card.featured::after {
content: 'NEJPOPULÁRNĚJŠÍ';
position: absolute;
top: -1px;
left: 50%;
transform: translateX(-50%);
background: linear-gradient(135deg, var(--primary), var(--accent));
color: var(--white);
padding: 0.5rem 1.5rem;
border-radius: 0 0 15px 15px;
font-size: 0.75rem;
font-weight: 700;
letter-spacing: 1px;
box-shadow: 0 5px 15px rgba(59, 130, 246, 0.5);
}
.default-card > div:last-child {
margin-top: auto;
}
.pricing-header {
margin-bottom: 2rem;
text-align: center;
}
.pricing-tier {
font-size: 1.1rem;
color: var(--gray);
font-weight: 500;
text-transform: uppercase;
letter-spacing: 2px;
margin-bottom: 1rem;
margin-top: 1rem;
}
.pricing-currency {
font-size: 1.5rem;
}
.pricing-features {
list-style: none;
margin: 2rem 0;
text-align: left;
}
.pricing-features li {
padding: 0.75rem 0;
color: var(--gray-light);
position: relative;
padding-left: 2rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
transition: all 0.3s ease;
}
.pricing-features li:last-child {
border-bottom: none;
}
.pricing-features li::before {
content: '✓';
position: absolute;
left: 0;
color: var(--success);
font-weight: bold;
font-size: 1.2rem;
text-shadow: 0 0 10px rgba(16, 185, 129, 0.8);
}
.pricing-features li:hover {
color: var(--white);
padding-left: 2.5rem;
text-shadow: 0 0 10px rgba(255, 255, 255, 0.3);
}
/* ================================= */
/* SVĚTLÉ TÉMA - LIGHT THEME STYLES */
/* ================================= */
body.light-theme {
--primary: #3b82f6;
--primary-light: #60a5fa;
--primary-lighter: #93c5fd;
--primary-lightest: #dbeafe;
--primary-dark: #1d4ed8;
--dark: #1e293b;
--dark-lighter: #ffffff;
--dark-light: #f1f5f9;
--gray: #64748b;
--gray-light: #1e293b;
--white: #ffffff;
--accent: #3b82f6;
--success: #10b981;
}
body.light-theme .body {
background-color: var(--white);
}
/* Light theme header */
body.light-theme .header {
border-bottom: none;
background: var(--white);
}
body.light-theme .header-wrapper .horizontalmenu .m0_0 a {
color: var(--dark);
}
body.light-theme .logo-symbol {
box-shadow: none;
}
body.light-theme .logo-square {
box-shadow: none;
}
body.light-theme .logo:hover .logo-square {
filter: brightness(1);
}
body.light-theme .logo-highlight {
box-shadow: none;
}
body.light-theme .logo-text {
color: var(--dark);
}
body.light-theme .header-wrapper .horizontalmenu .m0_0 a::after  {
box-shadow: none;
}
/* Light theme gradient backgrounds */
body.light-theme .gradient-bg {
background: linear-gradient(135deg, var(--dark-light) 0%, var(--white) 100%);
}
body.light-theme .gradient-bg::before {
background:
radial-gradient(circle at 20% 50%, var(--primary-lightest) 0%, transparent 70%);
}
/* Light theme hero section */
body.light-theme .hero {
background: linear-gradient(135deg, var(--dark-light) 0%, var(--white) 100%);
}
body.light-theme .hero::before {
background: radial-gradient(circle, var(--primary-lightest) 0%, transparent 70%);
}
body.light-theme .hero::after {
background: none;
}
body.light-theme .hero h1 {
background: linear-gradient(135deg, var(--dark) 0%, var(--primary) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
filter: none;
}
body.light-theme .hero h1 span {
background: var(--primary);
-webkit-background-clip: text;
-webkit-text-fill-color: var(--primary);
background-clip: text;
}
body.light-theme .hero p {
color: var(--gray);
text-shadow: none;
}
/* Light cube */
body.light-theme .cube-face {
box-shadow: 0 0 5px rgba(59, 130, 246, 0.5);
}
body.light-theme .logo-cube:nth-child(1) .cube-face {
background: linear-gradient(135deg, var(--primary), var(--primary-dark));
}
body.light-theme .logo-cube:nth-child(2) .cube-face {
background: linear-gradient(135deg, var(--primary-light), var(--primary));
}
body.light-theme .logo-cube:nth-child(3) .cube-face {
background: linear-gradient(135deg, var(--primary-lighter), var(--primary-light));
}
body.light-theme .logo-cube:nth-child(4) .cube-face {
background: linear-gradient(135deg, var(--accent), var(--primary-lighter));
}
body.light-theme .line {
animation: none;
}
/* Light theme service cards */
body.light-theme .service-card {
background: var(--white);
border: none;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
body.light-theme .service-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 5px;
background: linear-gradient(90deg, var(--primary), var(--primary-light));
transform: scaleX(0);
transform-origin: left;
transition: transform 0.3s ease;
}
body.light-theme .service-card:hover {
transform: translateY(-5px);
box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}
body.light-theme .service-card:hover::before {
transform: scaleX(1);
}
body.light-theme .service-card:hover {
box-shadow: 0 20px 40px rgba(0,0,0,0.15);
border-color: transparent;
}
body.light-theme .service-card:hover::before {
transform: scaleX(1);
}
body.light-theme .service-card h3 {
color: var(--dark);
text-shadow: none;
}
body.light-theme .service-card p {
color: var(--gray);
}
body.light-theme .service-cta {
color: var(--primary);
}
body.light-theme .service-cta:hover {
text-shadow: none;
}
/* Light theme btn-neon */
.light-theme .btn-neon {
background: var(--primary);
color: var(--white);
border-color: transparent;
box-shadow: 0 5px 15px rgba(59, 130, 246, 0.3);
}
.light-theme .btn-neon:hover,
.light-theme .btn-neon:focus,
.light-theme .btn-neon:active {
color: var(--white) !important;
}
.light-theme .btn-neon:hover {
background: var(--primary-light);
transform: translateY(-2px);
box-shadow: 0 10px 25px rgba(59, 130, 246, 0.4);
}
.light-theme .btn-neon:hover::before {
transform: scaleX(0);
}
/* Light theme portfolio */
body.light-theme .portfolio {
background: var(--dark-light);
}
body.light-theme .portfolio::before {
background: none;
}
body.light-theme .portfolio h2 {
color: var(--dark);
text-shadow: none;
}
body.light-theme .product__image {
background: var(--white);
border: none;
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}
body.light-theme .product__image::before {
color: var(--primary);
background: transparent;
}
body.light-theme .product__image:hover {
box-shadow: 0 10px 30px rgba(0,0,0,0.25);
border-color: transparent;
}
/* Light theme about section */
body.light-theme .about h2 {
color: var(--dark);
text-shadow: none;
}
body.light-theme .about-image {
background: var(--dark-light);
border: 2px solid var(--primary);
color: var(--primary);
box-shadow: none;
}
body.light-theme .about-image::before {
background: conic-gradient(from 0deg, var(--primary-lightest), var(--primary-light), var(--primary), var(--primary-light), var(--primary-lightest));
opacity: 0.1;
}
body.light-theme .about-text {
color: var(--gray);
}
body.light-theme .stat-card:hover {
background-color: var(--primary-lightest) !important;
}
/* Light theme stat cards */
body.light-theme .stat-card {
background: var(--dark-light);
border: none;
}
body.light-theme .stat-card:hover {
background: var(--primary-lightest);
box-shadow: none;
border-color: transparent;
}
body.light-theme .stat-card:hover::before {
opacity: 0;
}
body.light-theme .stat-number {
color: var(--primary);
filter: none;
}
body.light-theme .stat-label {
color: var(--gray);
}
/* Light theme contact section */
body.light-theme .contact {
background: var(--dark-light);
}
body.light-theme .contact::before {
background: none;
}
body.light-theme .contact h2 {
color: var(--dark);
text-shadow: none;
}
body.light-theme .contact-info {
background: var(--white);
border: none;
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}
body.light-theme .contact-info:hover {
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
border-color: transparent;
}
body.light-theme .contact-info h3 {
color: var(--dark);
}
body.light-theme .contact-item {
color: var(--gray);
}
body.light-theme .contact-item strong {
color: var(--dark);
}
body.light-theme .contact-item a {
color: var(--primary);
}
body.light-theme .contact-item a:hover {
text-shadow: none;
}
body.light-theme .social-links a {
border: none;
text-decoration: none;
}
body.light-theme .social-links a:hover {
background: var(--primary);
}
body.light-theme .social-links .youtube::before,
body.light-theme .social-links .facebook::before {
filter: invert(41%) sepia(95%) saturate(749%) hue-rotate(190deg) brightness(97%) contrast(98%);
}
body.light-theme .social-links .youtube:hover::before,
body.light-theme .social-links .facebook:hover::before {
filter: brightness(0) invert(1);
}
body.light-theme .footer-inner-content {
color: var(--white);
}
body.light-theme .footer-inner-content.j4w .dimmed-text,
body.light-theme .footer-inner-content.j4w sup {
opacity: 0.5;
}
body.light-theme .footer-inner-content a {
color: var(--white);
opacity: 0.8;
}
/* Pricing */
body.light-theme .pricing-features li:hover {
color: var(--dark);
padding-left: 2.5rem;
}
body.light-theme .timeline-content {
background: var(--dark-light);
}
body.light-theme .horizontalmenu-switcher-icon {
filter: brightness(0) saturate(100%) invert(39%) sepia(96%) saturate(748%) hue-rotate(188deg) brightness(96%) contrast(96%);
}
/* Theme Toggle */
.theme-toggle {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 50px;
padding: 0.5rem 1rem;
color: var(--primary-light);
cursor: pointer;
font-size: 0.9rem;
font-weight: 600;
transition: all 0.3s ease;
margin-top: 1rem;
display: flex;
align-items: center;
gap: 0.5rem;
}
.theme-toggle:hover {
background: var(--primary);
color: var(--white);
box-shadow: 0 0 20px rgba(59, 130, 246, 0.5);
transform: translateY(-2px);
}
.theme-icon {
font-size: 1.2rem;
transition: transform 0.3s ease;
}
.theme-toggle:hover .theme-icon {
transform: rotate(360deg);
}
/* UNIVERZÁLNÍ BLOKY */
.content-inner {
padding: 4rem 2rem;
max-width: 75rem;
margin: 0 auto;
position: relative;
z-index: 3;
}
.body-inner--limited {
max-width: 75rem;
margin: 0 auto;
}
.body-inner--limited > .content {
padding: 4rem 2rem;
box-sizing: border-box;
}
.body-inner--limited + .body-inner--limited > .content {
padding-top: 0;
}
.block-grid {
display: grid;
gap: 3rem;
margin-top: 3rem;
grid-template-columns: 1fr;
}
.btn-down {
display: flex;
flex-direction: column;
justify-content: space-between;
}
.btn-featured {
background-color: var(--primary);
color: var(--white);
}
.podnadpis {
font-size: 1.1rem;
}
.block-grid:not(.cols-1):not(.cols-2):not(.cols-3) {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.block-grid.cols-1 {
grid-template-columns: 1fr;
}
.block-grid.cols-2 {
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
}
.block-grid.cols-3 {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 2rem;
}
.text-effect {
font-size: 3rem;
font-weight: bold;
background: linear-gradient(135deg, var(--primary-light) 0%, var(--accent) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
display: block;
filter: drop-shadow(0 0 20px rgba(59, 130, 246, 0.5));
}
body.light-theme .text-effect {
color: var(--primary);
filter: none;
}
.title-effect {
text-align: center;
font-size: 3rem;
margin-bottom: 1.5rem;
background: linear-gradient(135deg, var(--white) 0%, var(--primary-light) 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
filter: drop-shadow(0 0 30px rgba(59, 130, 246, 0.5));
}
.default-card {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 20px;
padding: 2rem;
position: relative;
overflow: hidden;
transition: all 0.3s ease;
}
.default-card::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.3), transparent);
transition: left 0.6s ease;
}
.default-card:hover {
transform: translateY(-5px);
border-color: var(--primary);
box-shadow:
0 10px 40px rgba(0, 0, 0, 0.3),
0 0 30px rgba(59, 130, 246, 0.3);
}
.default-card:hover::before {
left: 100%;
}
.default-card h3 {
margin-bottom: 1rem;
color: var(--white);
text-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
}
.default-card p {
color: var(--gray);
line-height: 1.8;
margin-bottom: 1.5rem;
}
body.light-theme .default-card {
background: var(--white);
border: none;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
body.light-theme .default-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 5px;
background: linear-gradient(90deg, var(--primary), var(--primary-light));
transform: scaleX(0);
transform-origin: left;
transition: transform 0.3s ease;
}
body.light-theme .default-card:hover {
transform: translateY(-5px);
box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}
body.light-theme .default-card:hover::before {
transform: scaleX(1);
}
body.light-theme .default-card:hover {
box-shadow: 0 20px 40px rgba(0,0,0,0.15);
border-color: transparent;
}
body.light-theme .default-card:hover::before {
transform: scaleX(1);
}
body.light-theme .default-card h3 {
color: var(--dark);
text-shadow: none;
}
body.light-theme .default-card p {
color: var(--gray);
}
.btn-wrapper {
text-align: center;
}
#toggleButton {
margin: 3rem auto 0;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
line-height: 1.6;
font-size: 1rem;
cursor: pointer;
}
#moreContent {
margin-top: 0;
max-height: 0;
opacity: 0;
transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
transform: translateY(-20px);
margin: 0 auto;
}
#moreContent.show {
max-height: 2000px;
opacity: 1;
transform: translateY(0);
margin-top: 2rem;
}
.fade-in {
opacity: 1;
transform: translateY(0px);
transition: all 0.6s ease;
}
.fade-in-delay-1 {
transition-delay: 0.1s;
}
.fade-in-delay-2 {
transition-delay: 0.2s;
}
.hidden-cards .service-card {
opacity: 0;
transform: translateY(30px);
transition: all 0.4s ease;
}
.show .service-card {
opacity: 1;
transform: translateY(0);
}
.show .service-card:nth-child(1) { transition-delay: 0.1s; }
.show .service-card:nth-child(2) { transition-delay: 0.2s; }
.show .service-card:nth-child(3) { transition-delay: 0.3s; }
.show .service-card:nth-child(4) { transition-delay: 0.4s; }
.show .service-card:nth-child(5) { transition-delay: 0.5s; }
.show .service-card:nth-child(6) { transition-delay: 0.6s; }
.lazy {
opacity: 0;
transform: translateY(50px);
transition:
opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1),
transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.lazy.visible {
opacity: 1;
transform: translateY(0);
}
.lazy-loading:nth-child(1) { transition-delay: 0.1s; }
.lazy-loading:nth-child(2) { transition-delay: 0.2s; }
.lazy-loading:nth-child(3) { transition-delay: 0.3s; }
.lazy-loading:nth-child(4) { transition-delay: 0.4s; }
.lazy-loading:nth-child(5) { transition-delay: 0.5s; }
.lazy-loading:nth-child(6) { transition-delay: 0.6s; }
/* Modal */
.modal .modal__overlay {
background: rgba(0, 0, 0, 0.2);
backdrop-filter: blur(10px);
}
.modal .modal__container {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 20px;
padding: 2.5rem;
position: relative;
width: 100%;
max-width: 650px;
max-height: 90vh;
overflow-y: auto;
box-shadow:
0 20px 40px rgba(0, 0, 0, 0.5),
0 0 50px rgba(59, 130, 246, 0.2);
}
.modal .modal__close {
position: absolute;
top: 1rem;
right: 1rem;
width: 40px;
height: 40px;
background: transparent;
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 50%;
color: var(--gray);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.5rem;
transition: all 0.3s ease;
}
.modal .modal__close:hover {
background: var(--error);
border-color: var(--error);
color: var(--white);
transform: scale(1.1);
box-shadow: 0 0 20px rgba(239, 68, 68, 0.5);
}
/* Form styles */
.form__controls {
margin-bottom: 1.5rem;
}
.form__label {
display: block;
margin-bottom: 0.5rem;
color: var(--gray-light);
font-weight: 500;
font-size: 0.9rem;
}
.form__control--text,
#frm-message,
#frm-num_spam {
width: 100%;
padding: 0.875rem 1rem;
background: var(--dark);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 10px;
color: var(--white);
font-size: 1rem;
transition: all 0.3s ease;
outline: none;
}
body.light-theme .form__control--text,
body.light-theme #frm-message,
body.light-theme #frm-num_spam {
background: var(--white);
border-color: var(--dark);
color: var(--dark);
}
.form__control input[type="text"],
.form__control input[type="email"] {
padding: 0.75em;
}
.form__control--text::placeholder,
#frm-message::placeholder,
#frm-num_spam::placeholder {
color: var(--gray);
}
.form__control--text:focus,
#frm-message:focus,
#frm-num_spam:focus  {
border-color: var(--primary);
box-shadow:
0 0 0 3px rgba(59, 130, 246, 0.1),
0 0 20px rgba(59, 130, 246, 0.3);
background: rgba(59, 130, 246, 0.05);
}
.form-textarea {
min-height: 100px;
resize: vertical;
}
#frm-num_spam {
min-width: 100%;
}
.default-card .body-inner {
overflow: visible;
}
.button {
width: 100%;
padding: 1rem 2rem;
background: transparent linear-gradient(90deg, var(--primary) 0%, var(--accent) var(--button-backpos), var(--accent) var(--button-backpos), transparent var(--button-backpos), transparent);
color: var(--primary);
border: 2px solid var(--primary);
border-radius: 50px;
font-weight: 600;
font-size: 1rem;
cursor: pointer;
position: relative;
overflow: hidden;
transition: --button-backpos 0.3s ease;
text-transform: uppercase;
letter-spacing: 1px;
margin-top: 1.5rem;
}
/*.button::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.3s ease;
z-index: -1;
}*/
.button:hover {
color: var(--white);
border-color: var(--primary-light);
box-shadow:
0 0 20px rgba(59, 130, 246, 0.5),
inset 0 0 20px rgba(59, 130, 246, 0.2);
--button-backpos: 100%;
}
.light-theme .button {
background: var(--primary);
color: var(--white);
border-color: transparent;
box-shadow: 0 5px 15px rgba(59, 130, 246, 0.3);
}
.light-theme .button:hover,
.light-theme .button:focus,
.light-theme .button:active {
color: var(--white) !important;
}
.light-theme .button:hover {
background: var(--primary-light);
box-shadow: 0 10px 25px rgba(59, 130, 246, 0.4);
}
.light-theme .button:hover::before {
transform: scaleX(0);
}
/*.button:hover::before {
transform: scaleX(1);
}*/
.button:disabled {
opacity: 0.6;
cursor: not-allowed;
transform: none;
}
.button:disabled:hover {
transform: none;
box-shadow: none;
}
/** COOKIES **/
.cookie-bar {
background: linear-gradient(135deg, var(--dark-lighter) 0%, var(--dark-light) 100%);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 20px;
overflow: hidden;
}
.cookie-bar::before {
content: '';
position: absolute;
top: 0;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.3), transparent);
}
body.light-theme .cookie-bar::before {
display: none;
}
.cookie-bar:hover {
border-color: var(--primary);
box-shadow:
0 10px 40px rgba(0, 0, 0, 0.3),
0 0 30px rgba(59, 130, 246, 0.3);
}
.cookie-bar__inner {
position: relative;
z-index: 5;
}
.cookie-bar__button {
border-radius: 50px;
}
.cookie-bar__button--accept {
background-color: var(--primary);
border-color: var(--primary);
}
.content table {
width: 100%;
border-collapse: separate;
border-spacing: 0;
overflow: hidden;
font-family: sans-serif;
border-radius: 12px;
border: none;
}
.content th {
background: var(--primary);
padding: 10px;
text-align: left;
color: white;
border: none;
}
.content th:first-child {
border-top-left-radius: 12px;
}
.content th:last-child {
border-top-right-radius: 12px;
}
.content td {
padding: 10px;
color: #fff;
border: none;
}
.light-theme .content td {
padding: 10px;
color: #000;
border: none;
}
.content tbody tr:nth-child(odd) td {
background: var(--dark-lighter);
}
.content tbody tr:nth-child(even) td {
background: var(--dark-light);
}
.light-theme .content tbody tr:nth-child(odd) td {
background-color: white;
}
.light-theme .content tbody tr:nth-child(even) td {
background-color: #f0f0f0;
}
.content tbody tr:last-child td:first-child {
border-bottom-left-radius: 12px;
}
.content tbody tr:last-child td:last-child {
border-bottom-right-radius: 12px;
}
