Assets hinzugefügt
0
src/assets/BuLiTipp/style.css
Executable file
70
src/assets/SektionArchiv/kontakt.html
Executable file
@@ -0,0 +1,70 @@
|
||||
<!--Dies ist das Sektionen Archiv für die Kontakt Sektion
|
||||
Wenn sie wieder genutzt werden soll, z.B. zur Anmeldung zum Doppelkopf
|
||||
kann dieser Code in die index.html kopiert und angepasst werden.
|
||||
-->
|
||||
|
||||
|
||||
<style>
|
||||
.cid-u6k7q0BfGa {
|
||||
padding-top: 6rem;
|
||||
padding-bottom: 6rem;
|
||||
background-color: transparent;
|
||||
}
|
||||
.cid-u6k7q0BfGa .mbr-overlay {
|
||||
background-color: #ffffff;
|
||||
opacity: 0.4;
|
||||
}
|
||||
.cid-u6k7q0BfGa form .mbr-section-btn {
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
.cid-u6k7q0BfGa form .mbr-section-btn .btn {
|
||||
display: inline-flex;
|
||||
}
|
||||
@media (max-width: 991px) {
|
||||
.cid-u6k7q0BfGa form .mbr-section-btn .btn {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
.cid-u6k7q0BfGa .content-head {
|
||||
max-width: 800px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<section class="form5 cid-u6k7q0BfGa" id="contact-form-2-u6k7q0BfGa">
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-12 content-head">
|
||||
<div class="mbr-section-head mb-5">
|
||||
<h3 class="mbr-section-title mbr-fonts-style align-center mb-0 display-2">
|
||||
<strong>Kontaktiere uns</strong>
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-lg-8 mx-auto mbr-form" data-form-type="formoid">
|
||||
<form action="https://mobirise.eu/" method="POST" class="mbr-form form-with-styler" data-form-title="Form Name"><input type="hidden" name="email" data-form-email="true" value="">
|
||||
<div class="row">
|
||||
<div hidden="hidden" data-form-alert="" class="alert alert-success col-12">Thanks for filling out the form!</div>
|
||||
<div hidden="hidden" data-form-alert-danger="" class="alert alert-danger col-12">
|
||||
Oops...! some problem!
|
||||
</div>
|
||||
</div>
|
||||
<div class="dragArea row">
|
||||
<div class="col-md col-sm-12 form-group mb-3" data-for="name">
|
||||
<input type="text" name="name" placeholder="Name" data-form-field="name" class="form-control" value="" id="name-form02-0">
|
||||
</div>
|
||||
<div class="col-md col-sm-12 form-group mb-3" data-for="email">
|
||||
<input type="email" name="email" placeholder="E-Mail" data-form-field="email" class="form-control" value="" id="email-form02-0">
|
||||
</div>
|
||||
<div class="col-12 form-group mb-3" data-for="textarea">
|
||||
<textarea name="textarea" placeholder="Nachricht" data-form-field="textarea" class="form-control" id="textarea-form02-0"></textarea>
|
||||
</div>
|
||||
<div class="col-lg-12 col-md-12 col-sm-12 align-center mbr-section-btn"><button type="submit" class="btn btn-primary display-7">Absenden</button></div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
4074
src/assets/animatecss/animate.css
vendored
Executable file
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_001.jpg
Executable file
|
After Width: | Height: | Size: 3.4 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_002-2.jpg
Executable file
|
After Width: | Height: | Size: 3.8 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_002.jpg
Executable file
|
After Width: | Height: | Size: 3.4 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_003.jpg
Executable file
|
After Width: | Height: | Size: 2.6 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_004-2.jpg
Executable file
|
After Width: | Height: | Size: 4.0 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_004.jpg
Executable file
|
After Width: | Height: | Size: 3.7 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_006.jpg
Executable file
|
After Width: | Height: | Size: 2.8 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_007.jpg
Executable file
|
After Width: | Height: | Size: 3.2 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_008.jpg
Executable file
|
After Width: | Height: | Size: 3.0 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_009.jpg
Executable file
|
After Width: | Height: | Size: 3.6 MiB |
BIN
src/assets/background-images/2012/2012-02-11_weser-eis_011.jpg
Executable file
|
After Width: | Height: | Size: 2.6 MiB |
BIN
src/assets/background-images/2012/2012-07-12_regenbogen_003.jpg
Executable file
|
After Width: | Height: | Size: 2.1 MiB |
BIN
src/assets/background-images/2012/2012-07-12_regenbogen_004.jpg
Executable file
|
After Width: | Height: | Size: 2.5 MiB |
BIN
src/assets/background-images/2013/2013-12_wintersonne_001.jpg
Executable file
|
After Width: | Height: | Size: 3.1 MiB |
BIN
src/assets/background-images/2013/2013-12_wintersonne_002.jpg
Executable file
|
After Width: | Height: | Size: 3.3 MiB |
BIN
src/assets/background-images/2013/2013-12_wintersonne_004.jpg
Executable file
|
After Width: | Height: | Size: 1.9 MiB |
BIN
src/assets/background-images/2013/2013-12_wintersonne_005.jpg
Executable file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
src/assets/background-images/2013/2013-12_wintersonne_006.jpg
Executable file
|
After Width: | Height: | Size: 1.9 MiB |
BIN
src/assets/background-images/20161208-himmel001.jpg
Executable file
|
After Width: | Height: | Size: 3.4 MiB |
6
src/assets/bootstrap/css/bootstrap-grid.min.css
vendored
Executable file
7
src/assets/bootstrap/css/bootstrap-reboot.min.css
vendored
Executable file
@@ -0,0 +1,7 @@
|
||||
/*!
|
||||
* Bootstrap Reboot v5.0.1 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2021 The Bootstrap Authors
|
||||
* Copyright 2011-2021 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
|
||||
*/*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}
|
||||
6
src/assets/bootstrap/css/bootstrap.min.css
vendored
Executable file
6
src/assets/bootstrap/js/bootstrap.bundle.min.js
vendored
Executable file
BIN
src/assets/css/Design ohne Titel (3).png
Executable file
|
After Width: | Height: | Size: 10 MiB |
350
src/assets/css/bulitipp2.css
Executable file
@@ -0,0 +1,350 @@
|
||||
.buli-container {
|
||||
width: 100%; /* Passe die Breite an deine Bedürfnisse an */
|
||||
margin: 0 auto; /* Zentriert den Container */
|
||||
padding: 20px;
|
||||
|
||||
}
|
||||
|
||||
form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
input[type="number"],
|
||||
input[type="text"],
|
||||
input[type="password"] {
|
||||
padding: 10px;
|
||||
margin-bottom: 15px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
input[type="submit"] {
|
||||
background-color: #4CAF50; /* Grün für einen positiven Button */
|
||||
color: white;
|
||||
padding: 12px 20px;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
transition: background-color 0.3s ease;
|
||||
}
|
||||
|
||||
input[type="submit"]:hover {
|
||||
background-color: #3e8e41;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.scroll-x{
|
||||
overflow-x: scroll;
|
||||
}
|
||||
/* Paarungsergebnisse */
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
width: 60%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
tr, td {
|
||||
border: 1px solid #ddd;
|
||||
padding: 8px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
tr:first-child{
|
||||
background-color: #fafafa;
|
||||
}
|
||||
|
||||
tr:hover{
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
|
||||
.TippsAnzeigen tr:hover, .TippsAnzeigen tr:first-child {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.buli-results a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.buli-results h2 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.buli-results span.team {
|
||||
width: 40%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: baseline;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.buli-results{
|
||||
display: block;
|
||||
}
|
||||
.teams{
|
||||
display: flex;
|
||||
font-size: 17px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
flex-direction: row;
|
||||
float: left;
|
||||
width: 100%;
|
||||
max-width: 500px;
|
||||
|
||||
}
|
||||
|
||||
.buli-results span.team:first-child{
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.buli-results span.team:last-child{
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.buli-results span.team img {
|
||||
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
|
||||
border-radius: 50%; /* Macht das Bild rund */
|
||||
|
||||
}
|
||||
.buli-results span.team p{
|
||||
width: 175px;
|
||||
height: 30px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
vertical-align: middle;
|
||||
margin-bottom: 0;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
span.vs{
|
||||
width: 20px;
|
||||
/* margin-left: 10%;
|
||||
margin-right: 10%; */
|
||||
height: 3px;
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
|
||||
h2 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#spieltagText {
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
padding-bottom: 5px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* TippenEintragen */
|
||||
|
||||
.tippenEintragen form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
.paarung {
|
||||
margin: 10px 0;
|
||||
width: 100vw;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.tippenEintragen span.team-name {
|
||||
width: 30%;
|
||||
}
|
||||
|
||||
.tippenEintragen input[type="number"] {
|
||||
/* max-width: 150px; */
|
||||
width: 50px;
|
||||
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 5px;
|
||||
text-align: center;
|
||||
}
|
||||
@media (max-width: 512px){
|
||||
.paarung img{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
/* Submit-Button */
|
||||
.tippenEintragen input[type="submit"] {
|
||||
background-color: #4CAF50;
|
||||
color: white;
|
||||
padding: 10px 20px;
|
||||
border: none;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
|
||||
/* Meldung für nicht vorbereiteten Spieltag */
|
||||
.tippenEintragen h1 {
|
||||
color: red;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Spieler hat bereits getippt Tabelle */
|
||||
|
||||
.TippsAnzeigen {
|
||||
text-align: center;
|
||||
font-family: "Roboto", sans-serif;
|
||||
}
|
||||
|
||||
.TippsAnzeigen table {
|
||||
border-collapse: collapse;
|
||||
width: 80%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.TippsAnzeigen th, .TippsAnzeigen td {
|
||||
border: 1px solid #ddd;
|
||||
padding: 8px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Alternierende Zeilen für bessere Lesbarkeit */
|
||||
.TippsAnzeigen tr:nth-child(even) {
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
|
||||
#load-table-btn{
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
.detailansichtSchriftart {
|
||||
font-family: "Roboto", sans-serif;
|
||||
}
|
||||
|
||||
|
||||
.buli-table{
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#load-table-btn-container{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
background: white;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
#load-table-btn{
|
||||
color: white;
|
||||
border-radius: 5px;
|
||||
background-color: green;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.as-link{
|
||||
color: #00f;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.roboto-thin {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 100;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.roboto-light {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 300;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.roboto-regular {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 400;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.roboto-medium {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 500;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.roboto-bold {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 700;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.roboto-black {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 900;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.roboto-thin-italic {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 100;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.roboto-light-italic {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 300;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.roboto-regular-italic {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 400;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.roboto-medium-italic {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 500;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.roboto-bold-italic {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 700;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.roboto-black-italic {
|
||||
font-family: "Roboto", sans-serif;
|
||||
font-weight: 900;
|
||||
font-style: italic;
|
||||
}
|
||||
148
src/assets/css/chatbox.css
Executable file
@@ -0,0 +1,148 @@
|
||||
@import url('https://fonts.googleapis.com/css2?family=Permanent+Marker&display=swap');
|
||||
|
||||
|
||||
|
||||
|
||||
/* Basis-Styling */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#chatbox-button {
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
cursor: pointer;
|
||||
background-color: #996633; /* Braun #996633 */
|
||||
color: white; /* Weiße Textfarbe */
|
||||
border: none; /* Keine Umrandung */
|
||||
border-radius: 50%; /* Runde Form */
|
||||
padding: 20px;
|
||||
font-size: 20px;
|
||||
transition: background-color 0.3s ease; /* Hover-Effekt */
|
||||
}
|
||||
|
||||
#chatbox-button:hover {
|
||||
background-color: #774422; /* Dunkleres Braun beim Hovern */
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#modalbox {
|
||||
position: fixed; /* Festlegen der Position */
|
||||
top: 50%; /* Positionierung vertikal mittig */
|
||||
left: 50%; /* Positionierung horizontal mittig */
|
||||
transform: translate(-50%, -50%); /* Verschieben von der Mitte */
|
||||
width: 550px; /* Breite der Modalbox */
|
||||
max-width: 90%; /* Maximale Breite für Responsiveness */
|
||||
background-color: white;
|
||||
padding: 20px;
|
||||
border-radius: 5px;
|
||||
box-shadow: 0 4px 8px rgba(0,0,0,0.5);
|
||||
display: none; /* Modalbox wird zunächst ausgeblendet */
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
#modalbox-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#modalbox-title {
|
||||
font-weight: bold;
|
||||
font-family: "Permanent Marker", cursive;
|
||||
}
|
||||
|
||||
#close-button {
|
||||
cursor: pointer;
|
||||
font-size: 40pt;
|
||||
color: red;
|
||||
}
|
||||
|
||||
#chat-messages {
|
||||
height: 300px; /* Höhe des Nachrichtenbereichs */
|
||||
overflow-y: scroll; /* Scrollfunktion aktivieren */
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.message {
|
||||
margin-bottom: 10px;
|
||||
padding: 10px;
|
||||
border-radius: 5px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.message-sender {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.message-content {
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.own-message {
|
||||
background-color: #f0f0f0;
|
||||
align-self: flex-end; /* Eigene Nachrichten rechtsbündig */
|
||||
}
|
||||
|
||||
.other-message {
|
||||
background-color: #e0e0e0;
|
||||
}
|
||||
|
||||
#chat-input {
|
||||
display: flex;
|
||||
flex-direction: column; /* Anordnung in Spalten */
|
||||
}
|
||||
|
||||
#name-input{
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#name-input, #email-input {
|
||||
flex-grow: 1; /* Nameingabefeld über die gesamte Breite */
|
||||
padding: 10px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 3px;
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
|
||||
}
|
||||
|
||||
#message-input {
|
||||
padding: 10px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 3px;
|
||||
margin-bottom: 5px; /* Abstand zwischen den Eingabefeldern */
|
||||
}
|
||||
|
||||
#send-button {
|
||||
background-color: #4CAF50; /* Grün */
|
||||
color: white;
|
||||
padding: 10px;
|
||||
border: none;
|
||||
border-radius: 3px;
|
||||
cursor: pointer;
|
||||
width: auto; /* Automatische Breite */
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
#chat-input {
|
||||
flex-direction: column; /* Anordnung in Spalten */
|
||||
}
|
||||
|
||||
#name-input,
|
||||
#message-input {
|
||||
margin-bottom: 1px; /* Abstand zwischen den Eingabefeldern */
|
||||
}
|
||||
|
||||
#send-button {
|
||||
width: 100%; /* Volle Breite des Containers */
|
||||
margin-top: 1px; /* Abstand zum vorherigen Element */
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
1311
src/assets/css/index.css
Executable file
273
src/assets/dropdown/css/style.css
Executable file
@@ -0,0 +1,273 @@
|
||||
.navbar-dropdown {
|
||||
left: 0;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
transition: all 0.45s ease;
|
||||
z-index: 200;
|
||||
background: #282828; }
|
||||
.navbar-dropdown .navbar-logo {
|
||||
margin-right: 0.8rem;
|
||||
transition: margin 0.3s ease-in-out;
|
||||
vertical-align: middle; }
|
||||
.navbar-dropdown .navbar-logo img {
|
||||
height: 3.125rem;
|
||||
transition: all 0.3s ease-in-out; }
|
||||
.navbar-dropdown .navbar-logo.mbr-iconfont {
|
||||
font-size: 3.125rem;
|
||||
line-height: 3.125rem; }
|
||||
.navbar-dropdown .navbar-caption {
|
||||
font-weight: 700;
|
||||
white-space: normal;
|
||||
vertical-align: -4px;
|
||||
line-height: 3.125rem !important; }
|
||||
.navbar-dropdown .navbar-caption, .navbar-dropdown .navbar-caption:hover {
|
||||
color: inherit;
|
||||
text-decoration: none; }
|
||||
.navbar-dropdown .mbr-iconfont + .navbar-caption {
|
||||
vertical-align: -1px; }
|
||||
.navbar-dropdown.navbar-fixed-top {
|
||||
position: fixed; }
|
||||
.navbar-dropdown .navbar-brand span {
|
||||
vertical-align: -4px; }
|
||||
.navbar-dropdown.bg-color.transparent {
|
||||
background: none; }
|
||||
.navbar-dropdown.navbar-short .navbar-brand {
|
||||
padding: 0.625rem 0; }
|
||||
.navbar-dropdown.navbar-short .navbar-brand span {
|
||||
vertical-align: -1px; }
|
||||
.navbar-dropdown.navbar-short .navbar-caption {
|
||||
line-height: 2.375rem !important;
|
||||
vertical-align: -2px; }
|
||||
.navbar-dropdown.navbar-short .navbar-logo {
|
||||
margin-right: 0.5rem; }
|
||||
.navbar-dropdown.navbar-short .navbar-logo img {
|
||||
height: 2.375rem; }
|
||||
.navbar-dropdown.navbar-short .navbar-logo.mbr-iconfont {
|
||||
font-size: 2.375rem;
|
||||
line-height: 2.375rem; }
|
||||
.navbar-dropdown.navbar-short .mbr-table-cell {
|
||||
height: 3.625rem; }
|
||||
.navbar-dropdown .navbar-close {
|
||||
left: 0.6875rem;
|
||||
position: fixed;
|
||||
top: 0.75rem;
|
||||
z-index: 200; }
|
||||
.navbar-dropdown .hamburger-icon {
|
||||
content: "";
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: 16px;
|
||||
-webkit-box-shadow: 0 -6px 0 1px #282828,0 0 0 1px #282828,0 6px 0 1px #282828;
|
||||
-moz-box-shadow: 0 -6px 0 1px #282828,0 0 0 1px #282828,0 6px 0 1px #282828;
|
||||
box-shadow: 0 -6px 0 1px #282828,0 0 0 1px #282828,0 6px 0 1px #282828; }
|
||||
|
||||
.dropdown-menu .dropdown-toggle[data-toggle="dropdown-submenu"]::after {
|
||||
border-bottom: 0.35em solid transparent;
|
||||
border-left: 0.35em solid;
|
||||
border-right: 0;
|
||||
border-top: 0.35em solid transparent;
|
||||
margin-left: 0.3rem; }
|
||||
|
||||
.dropdown-menu .dropdown-item:focus {
|
||||
outline: 0; }
|
||||
|
||||
.nav-dropdown {
|
||||
font-size: 0.75rem;
|
||||
font-weight: 500;
|
||||
height: auto !important; }
|
||||
.nav-dropdown .nav-btn {
|
||||
padding-left: 1rem; }
|
||||
.nav-dropdown .link {
|
||||
margin: .667em 1.667em;
|
||||
font-weight: 500;
|
||||
padding: 0;
|
||||
transition: color .2s ease-in-out; }
|
||||
.nav-dropdown .link.dropdown-toggle {
|
||||
margin-right: 2.583em; }
|
||||
.nav-dropdown .link.dropdown-toggle::after {
|
||||
margin-left: .25rem;
|
||||
border-top: 0.35em solid;
|
||||
border-right: 0.35em solid transparent;
|
||||
border-left: 0.35em solid transparent;
|
||||
border-bottom: 0; }
|
||||
.nav-dropdown .link.dropdown-toggle[aria-expanded="true"] {
|
||||
margin: 0;
|
||||
padding: 0.667em 3.263em 0.667em 1.667em; }
|
||||
.nav-dropdown .link::after,
|
||||
.nav-dropdown .dropdown-item::after {
|
||||
color: inherit; }
|
||||
.nav-dropdown .btn {
|
||||
font-size: 0.75rem;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0;
|
||||
margin-bottom: 0;
|
||||
padding-left: 1.25rem;
|
||||
padding-right: 1.25rem; }
|
||||
.nav-dropdown .dropdown-menu {
|
||||
border-radius: 0;
|
||||
border: 0;
|
||||
left: 0;
|
||||
margin: 0;
|
||||
padding-bottom: 1.25rem;
|
||||
padding-top: 1.25rem;
|
||||
position: relative; }
|
||||
.nav-dropdown .dropdown-submenu {
|
||||
margin-left: 0.125rem;
|
||||
top: 0; }
|
||||
.nav-dropdown .dropdown-item {
|
||||
font-weight: 500;
|
||||
line-height: 2;
|
||||
padding: 0.3846em 4.615em 0.3846em 1.5385em;
|
||||
position: relative;
|
||||
transition: color .2s ease-in-out, background-color .2s ease-in-out; }
|
||||
.nav-dropdown .dropdown-item::after {
|
||||
margin-top: -0.3077em;
|
||||
position: absolute;
|
||||
right: 1.1538em;
|
||||
top: 50%; }
|
||||
.nav-dropdown .dropdown-item:focus, .nav-dropdown .dropdown-item:hover {
|
||||
background: none; }
|
||||
|
||||
@media (max-width: 767px) {
|
||||
.nav-dropdown.navbar-toggleable-sm {
|
||||
bottom: 0;
|
||||
display: none;
|
||||
left: 0;
|
||||
overflow-x: hidden;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
transform: translateX(-100%);
|
||||
-ms-transform: translateX(-100%);
|
||||
-webkit-transform: translateX(-100%);
|
||||
width: 18.75rem;
|
||||
z-index: 200; } }
|
||||
.nav-dropdown.navbar-toggleable-xl {
|
||||
bottom: 0;
|
||||
display: none;
|
||||
left: 0;
|
||||
overflow-x: hidden;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
transform: translateX(-100%);
|
||||
-ms-transform: translateX(-100%);
|
||||
-webkit-transform: translateX(-100%);
|
||||
width: 18.75rem;
|
||||
z-index: 200; }
|
||||
|
||||
.nav-dropdown-sm {
|
||||
display: block !important;
|
||||
overflow-x: hidden;
|
||||
overflow: auto;
|
||||
padding-top: 3.875rem; }
|
||||
.nav-dropdown-sm::after {
|
||||
content: "";
|
||||
display: block;
|
||||
height: 3rem;
|
||||
width: 100%; }
|
||||
.nav-dropdown-sm.collapse.in ~ .navbar-close {
|
||||
display: block !important; }
|
||||
.nav-dropdown-sm.collapsing, .nav-dropdown-sm.collapse.in {
|
||||
transform: translateX(0);
|
||||
-ms-transform: translateX(0);
|
||||
-webkit-transform: translateX(0);
|
||||
transition: all 0.25s ease-out;
|
||||
-webkit-transition: all 0.25s ease-out;
|
||||
background: #282828; }
|
||||
.nav-dropdown-sm.collapsing[aria-expanded="false"] {
|
||||
transform: translateX(-100%);
|
||||
-ms-transform: translateX(-100%);
|
||||
-webkit-transform: translateX(-100%); }
|
||||
.nav-dropdown-sm .nav-item {
|
||||
display: block;
|
||||
margin-left: 0 !important;
|
||||
padding-left: 0; }
|
||||
.nav-dropdown-sm .link,
|
||||
.nav-dropdown-sm .dropdown-item {
|
||||
border-top: 1px dotted rgba(255, 255, 255, 0.1);
|
||||
font-size: 0.8125rem;
|
||||
line-height: 1.6;
|
||||
margin: 0 !important;
|
||||
padding: 0.875rem 2.4rem 0.875rem 1.5625rem !important;
|
||||
position: relative;
|
||||
white-space: normal; }
|
||||
.nav-dropdown-sm .link:focus, .nav-dropdown-sm .link:hover,
|
||||
.nav-dropdown-sm .dropdown-item:focus,
|
||||
.nav-dropdown-sm .dropdown-item:hover {
|
||||
background: rgba(0, 0, 0, 0.2) !important;
|
||||
color: #c0a375; }
|
||||
.nav-dropdown-sm .nav-btn {
|
||||
position: relative;
|
||||
padding: 1.5625rem 1.5625rem 0 1.5625rem; }
|
||||
.nav-dropdown-sm .nav-btn::before {
|
||||
border-top: 1px dotted rgba(255, 255, 255, 0.1);
|
||||
content: "";
|
||||
left: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%; }
|
||||
.nav-dropdown-sm .nav-btn + .nav-btn {
|
||||
padding-top: 0.625rem; }
|
||||
.nav-dropdown-sm .nav-btn + .nav-btn::before {
|
||||
display: none; }
|
||||
.nav-dropdown-sm .btn {
|
||||
padding: 0.625rem 0; }
|
||||
.nav-dropdown-sm .dropdown-toggle[data-toggle="dropdown-submenu"]::after {
|
||||
margin-left: .25rem;
|
||||
border-top: 0.35em solid;
|
||||
border-right: 0.35em solid transparent;
|
||||
border-left: 0.35em solid transparent;
|
||||
border-bottom: 0; }
|
||||
.nav-dropdown-sm .dropdown-toggle[data-toggle="dropdown-submenu"][aria-expanded="true"]::after {
|
||||
border-top: 0;
|
||||
border-right: 0.35em solid transparent;
|
||||
border-left: 0.35em solid transparent;
|
||||
border-bottom: 0.35em solid; }
|
||||
.nav-dropdown-sm .dropdown-menu {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
position: relative;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
border: 0;
|
||||
float: none;
|
||||
border-radius: 0;
|
||||
background: none; }
|
||||
.nav-dropdown-sm .dropdown-submenu {
|
||||
left: 100%;
|
||||
margin-left: 0.125rem;
|
||||
margin-top: -1.25rem;
|
||||
top: 0; }
|
||||
|
||||
.navbar-toggleable-sm .nav-dropdown .dropdown-menu {
|
||||
position: absolute; }
|
||||
|
||||
.navbar-toggleable-sm .nav-dropdown .dropdown-submenu {
|
||||
left: 100%;
|
||||
margin-left: 0.125rem;
|
||||
margin-top: -1.25rem;
|
||||
top: 0; }
|
||||
|
||||
.navbar-toggleable-sm.opened .nav-dropdown .dropdown-menu {
|
||||
position: relative; }
|
||||
|
||||
.navbar-toggleable-sm.opened .nav-dropdown .dropdown-submenu {
|
||||
left: 0;
|
||||
margin-left: 00rem;
|
||||
margin-top: 0rem;
|
||||
top: 0; }
|
||||
|
||||
.is-builder .nav-dropdown.collapsing {
|
||||
transition: none !important; }
|
||||
|
||||
|
||||
.engine {
|
||||
position: absolute;
|
||||
text-indent: -2400px;
|
||||
text-align: center;
|
||||
padding: 0;
|
||||
top: 0;
|
||||
left: -2400px;
|
||||
}
|
||||
111
src/assets/dropdown/js/navbar-dropdown.js
Executable file
@@ -0,0 +1,111 @@
|
||||
(function () {
|
||||
|
||||
function _dataApiHandler(event) {
|
||||
|
||||
if (event.type === 'resize') {
|
||||
document.body.classList.remove('navbar-dropdown-open');
|
||||
document.querySelector('.navbar-dropdown').querySelector('.navbar-collapse').classList.remove('show');
|
||||
document.querySelector('.navbar-dropdown').classList.remove('opened');
|
||||
Array.from(document.querySelector('.navbar-dropdown').querySelectorAll('.navbar-toggler[aria-expanded="true"]')).forEach(el => {
|
||||
let target = el.querySelector(el.getAttribute('data-target'));
|
||||
if (target) {
|
||||
target.classList.remove('in');
|
||||
target.setAttribute('aria-expanded', 'false');
|
||||
el.setAttribute('aria-expanded', 'false');
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
let scrollTop = document.documentElement.scrollTop;
|
||||
|
||||
Array.from(document.querySelectorAll('.navbar-dropdown')).forEach(el => {
|
||||
|
||||
if (!el.matches('.navbar-fixed-top')) return;
|
||||
|
||||
if (el.matches('.transparent') && !el.classList.contains('opened')) {
|
||||
if (scrollTop > 0) {
|
||||
el.classList.remove('bg-color');
|
||||
} else {
|
||||
el.classList.add('bg-color');
|
||||
}
|
||||
}
|
||||
|
||||
if (scrollTop > 0) {
|
||||
el.classList.add('navbar-short');
|
||||
} else {
|
||||
el.classList.remove('navbar-short');
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var _timeout;
|
||||
var windowEvents = ['scroll', 'resize'];
|
||||
windowEvents.forEach(eventName => {
|
||||
document.addEventListener(eventName, event => {
|
||||
clearTimeout(_timeout);
|
||||
_timeout = setTimeout(function () {
|
||||
_dataApiHandler(event);
|
||||
}, 10);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
const dropdownEvents = ['show.bs.collapse', 'hide.bs.collapse'];
|
||||
dropdownEvents.forEach(eventName => {
|
||||
document.addEventListener(eventName, ({ target }) => {
|
||||
const dropDown = target.closest('.navbar-dropdown');
|
||||
|
||||
if (!dropDown) return;
|
||||
|
||||
if (eventName === 'show.bs.collapse') {
|
||||
document.body.classList.add('navbar-dropdown-open')
|
||||
dropDown.classList.add('opened')
|
||||
} else {
|
||||
document.body.classList.remove('navbar-dropdown-open');
|
||||
dropDown.classList.remove('opened');
|
||||
window.dispatchEvent(new Event('scroll.bs.navbar-dropdown.data-api'));
|
||||
dropDown.dispatchEvent(new Event('collapse.bs.navbar-dropdown'));
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
const isBuilder = document.querySelector('html').classList.contains('is-builder');
|
||||
|
||||
if (!isBuilder){
|
||||
document.addEventListener('click', function(event) {
|
||||
const target = event.target;
|
||||
if (target.classList.contains('nav-link') || target.parentNode.classList.contains('nav-link')) return;
|
||||
const navbarContent = document.querySelector('#navbarSupportedContent');
|
||||
const navbarDropdown = document.querySelector('.navbar-dropdown');
|
||||
const isNavbarExpanded = navbarContent.classList.contains('show');
|
||||
const isNavItemLink = target.closest('.nav-item a:not(.dropdown-toggle)');
|
||||
const isNavbarDropdownCollapsed = navbarDropdown.classList.contains('collapsed');
|
||||
if (window.matchMedia('(max-width: 1200px)').matches || isNavbarDropdownCollapsed) {
|
||||
if (isNavbarExpanded && !target.closest('.navbar-collapse') || isNavItemLink) {
|
||||
new bootstrap.Collapse(navbarContent);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
document.addEventListener('collapse.bs.nav-dropdown', event => {
|
||||
let dropDown = event.relatedTarget.closest('.navbar-dropdown');
|
||||
if (dropDown) {
|
||||
let toggler = dropDown.querySelector('.navbar-toggler[aria-expanded="true"]');
|
||||
if (toggler) {
|
||||
toggler.dispatchEvent(new Event('click'));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
const dropdowns = document.querySelectorAll('.nav-link.dropdown-toggle')
|
||||
dropdowns.forEach(item => {
|
||||
item.addEventListener('click', e => {
|
||||
e.preventDefault();
|
||||
e.target.parentNode.classList.toggle('open');
|
||||
})
|
||||
})
|
||||
})();
|
||||
1106
src/assets/embla/embla.min.js
vendored
Executable file
167
src/assets/embla/script.js
Executable file
@@ -0,0 +1,167 @@
|
||||
~(() => {
|
||||
const options = { align: 'center', draggable: false, skipSnaps: true, loop: false, autoPlay: false, autoPlayInterval: 5 }
|
||||
let carousels = []
|
||||
|
||||
function setupPrevNextBtns (prevBtn, nextBtn, embla) {
|
||||
prevBtn.addEventListener('click', embla.scrollPrev, false)
|
||||
nextBtn.addEventListener('click', embla.scrollNext, false)
|
||||
}
|
||||
|
||||
function disablePrevNextBtns (prevBtn, nextBtn, embla) {
|
||||
return () => {
|
||||
if (embla.canScrollPrev()) prevBtn.removeAttribute('disabled');
|
||||
else prevBtn.setAttribute('disabled', 'disabled')
|
||||
|
||||
if (embla.canScrollNext()) nextBtn.removeAttribute('disabled');
|
||||
else nextBtn.setAttribute('disabled', 'disabled')
|
||||
}
|
||||
}
|
||||
|
||||
function autoPlay(carouselId, bool, sec = 0) {
|
||||
const index = carousels.findIndex((obj) => obj.carouselId === carouselId)
|
||||
if (index === -1) return
|
||||
if (bool) {
|
||||
if (!carousels[index].intervalId) {
|
||||
carousels[index].intervalId = setInterval(() => {
|
||||
if (!document.hidden && !JSON.parse(localStorage.getItem("scroll-gallery")).includes(carouselId)) {
|
||||
const currentIndex = carousels.findIndex((obj) => obj.carouselId === carouselId)
|
||||
if (currentIndex === -1) return
|
||||
if(carousels[currentIndex].embla.scrollProgress() !== 1) {
|
||||
carousels[currentIndex].embla.scrollNext()
|
||||
return
|
||||
}
|
||||
carousels[currentIndex].embla.scrollTo(0)
|
||||
}
|
||||
}, sec * 1000)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function initCarouseMultiple(target, options) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const wrap = target.querySelector('.embla')
|
||||
const carouselId = target.getAttribute('id')
|
||||
const viewPort = wrap.querySelector('.embla__viewport')
|
||||
const prevBtn = wrap.querySelector('.embla__button--prev')
|
||||
const nextBtn = wrap.querySelector('.embla__button--next')
|
||||
let index = carousels.findIndex((obj) => obj.carouselId === carouselId)
|
||||
if (index !== -1) return
|
||||
|
||||
const embla = EmblaCarousel(viewPort, options)
|
||||
const disablePrevAndNextBtns = disablePrevNextBtns(prevBtn, nextBtn, embla)
|
||||
|
||||
setupPrevNextBtns(prevBtn, nextBtn, embla)
|
||||
|
||||
embla.on('select', disablePrevAndNextBtns)
|
||||
embla.on('init', disablePrevAndNextBtns)
|
||||
carousels.push({carouselId , embla, intervalId: null})
|
||||
resolve(embla)
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
function getDataAttr(el) {
|
||||
const data = {}
|
||||
const array = []
|
||||
array.forEach.call(el.attributes, (attr) => {
|
||||
if (/^data-/.test(attr.name)) {
|
||||
var camelCaseName = attr.name.substr(5).replace(/-(.)/g, ($0, $1) => {
|
||||
return $1.toUpperCase()
|
||||
})
|
||||
data[camelCaseName] = parseBool(attr.value)
|
||||
}
|
||||
})
|
||||
return data
|
||||
}
|
||||
|
||||
function carouselDestroy(carouselId) {
|
||||
const index = carousels.findIndex((obj) => obj.carouselId === carouselId)
|
||||
if (index === -1) return
|
||||
if ('embla' in carousels[index]) carousels[index].embla.destroy()
|
||||
clearInterval(carousels[index].intervalId)
|
||||
carousels.splice(index, 1)
|
||||
}
|
||||
|
||||
function parseBool(val) { return val === "true" ? true : val }
|
||||
|
||||
function contains(whereObj, whatObj){
|
||||
const data = {}
|
||||
for(let key in whatObj) {
|
||||
if(!whereObj[key]) data[key] = false
|
||||
}
|
||||
return data
|
||||
}
|
||||
let add = false
|
||||
|
||||
let $,
|
||||
isJQuery = typeof jQuery == 'function'
|
||||
if (isJQuery) $ = jQuery
|
||||
const isBuilder = document.querySelector('html').classList.contains('is-builder')
|
||||
if (isBuilder && isJQuery) {
|
||||
$(document).on('add.cards', (e) => {
|
||||
const hasClass = $(e.target).hasClass('mbr-embla');
|
||||
if (!hasClass || add) return Promise.resolve();
|
||||
|
||||
const carouselId = e.target.getAttribute('id')
|
||||
carouselDestroy(carouselId)
|
||||
|
||||
const buildOptions = getDataAttr(e.target.querySelector('.embla'))
|
||||
const falsyOptions = contains(buildOptions, options)
|
||||
const fnOptions = Object.assign(buildOptions, falsyOptions)
|
||||
fnOptions.draggable = false
|
||||
|
||||
return initCarouseMultiple(e.target, fnOptions).then((embla) => {
|
||||
embla.reInit(fnOptions);
|
||||
autoPlay(carouselId, fnOptions.autoPlay, fnOptions.autoPlayInterval);
|
||||
add = true;
|
||||
setTimeout(() => {
|
||||
add = false;
|
||||
}, 0);
|
||||
});
|
||||
}).on('delete.cards', (e) => {
|
||||
const carouselId = e.target.getAttribute('id')
|
||||
|
||||
carouselDestroy(carouselId)
|
||||
}).on('changeParameter.cards', (e, paramName, value) => {
|
||||
if ($(e.target).hasClass('mbr-embla')) {
|
||||
const carouselId = e.target.getAttribute('id')
|
||||
const prodOptions = getDataAttr(e.target.querySelector('.embla'))
|
||||
const falsyOptions = contains(prodOptions, options)
|
||||
const fnOptions = Object.assign(prodOptions, falsyOptions)
|
||||
switch (paramName) {
|
||||
case 'loop':
|
||||
if (value) {
|
||||
options.loop = true
|
||||
} else {
|
||||
options.loop = false
|
||||
}
|
||||
break;
|
||||
case 'autoplay':
|
||||
options.autoPlay = value
|
||||
break;
|
||||
case 'interval':
|
||||
options.autoPlayInterval = +value
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
carouselDestroy(carouselId)
|
||||
fnOptions.draggable = false
|
||||
initCarouseMultiple(e.target, fnOptions)
|
||||
autoPlay(carouselId, fnOptions.autoPlay, fnOptions.autoPlayInterval)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
if (typeof window.initCarouseMultiplePlugin === 'undefined') {
|
||||
window.initCarouseMultiplePlugin = true
|
||||
document.querySelectorAll('.mbr-embla').forEach((el) => {
|
||||
const carouselId = el.getAttribute('id')
|
||||
const prodOptions = getDataAttr(el.querySelector('.embla'))
|
||||
const falsyOptions = contains(prodOptions, options)
|
||||
const fnOptions = Object.assign(prodOptions, falsyOptions)
|
||||
initCarouseMultiple(el, Object.assign(prodOptions, falsyOptions))
|
||||
autoPlay(carouselId, fnOptions.autoPlay, +fnOptions.autoPlayInterval)
|
||||
})
|
||||
}
|
||||
}
|
||||
})()
|
||||
242
src/assets/formoid/formoid.min.js
vendored
Executable file
@@ -0,0 +1,242 @@
|
||||
var Formoid = (function () {
|
||||
|
||||
var API_URL = 'https://formoid.net/api/push';
|
||||
|
||||
function $ajax(url, settings) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open(settings.type, url);
|
||||
xhr.onload = function () {
|
||||
if (xhr.status !== 200) {
|
||||
return reject(new Error('Incorrect server response.'));
|
||||
}
|
||||
resolve(xhr.responseText);
|
||||
};
|
||||
xhr.onerror = function () {
|
||||
var message = 'Failed to query the server. ';
|
||||
if ('onLine' in navigator && !navigator.onLine) {
|
||||
message += 'No connection to the Internet.';
|
||||
} else {
|
||||
message += 'Check the connection and try again.';
|
||||
}
|
||||
reject(new Error(message));
|
||||
};
|
||||
xhr.send(settings.data);
|
||||
})
|
||||
};
|
||||
|
||||
var prop = function (name, args) {
|
||||
name = '__' + name + '__';
|
||||
if (args.length) {
|
||||
this[name] = args[0];
|
||||
return this;
|
||||
}
|
||||
return this[name];
|
||||
};
|
||||
|
||||
var Form = function (settings) {
|
||||
settings = settings || {};
|
||||
this.__email__ = settings.email || '';
|
||||
this.__title__ = settings.title || '';
|
||||
this.__data__ = settings.data || [];
|
||||
};
|
||||
|
||||
Form.prototype.email = function (value) {
|
||||
return prop.call(this, 'email', arguments);
|
||||
};
|
||||
|
||||
Form.prototype.title = function (value) {
|
||||
return prop.call(this, 'title', arguments);
|
||||
};
|
||||
|
||||
Form.prototype.data = function (value) {
|
||||
return prop.call(this, 'data', arguments);
|
||||
};
|
||||
|
||||
Form.prototype.send = function (data) {
|
||||
return $ajax(API_URL, {
|
||||
type: 'POST',
|
||||
data: JSON.stringify({
|
||||
email: this.__email__,
|
||||
form: {
|
||||
title: this.__title__,
|
||||
data: (arguments.length ? data : this.__data__)
|
||||
}
|
||||
})
|
||||
})
|
||||
.then(function(responseText) {
|
||||
var data;
|
||||
try {
|
||||
data = JSON.parse(responseText);
|
||||
} catch (e) {
|
||||
throw new Error('Incorrect server response.');
|
||||
}
|
||||
if (data.error) {
|
||||
throw new Error(data.error);
|
||||
}
|
||||
return data.response;
|
||||
});
|
||||
};
|
||||
|
||||
return {
|
||||
Form: function (settings) {
|
||||
return new Form(settings);
|
||||
}
|
||||
}
|
||||
|
||||
})();
|
||||
|
||||
const formModalDOM = document.createElement('div');
|
||||
let formModal;
|
||||
|
||||
formModalDOM.classList.add('modal');
|
||||
formModalDOM.setAttribute('tabindex', -1);
|
||||
formModalDOM.style.overflow = 'hidden';
|
||||
|
||||
if (typeof bootstrap !== 'undefined') {
|
||||
if (bootstrap.Tooltip.VERSION.startsWith(5)) {
|
||||
//bs5
|
||||
formModalDOM.innerHTML = `
|
||||
<div class="modal-dialog d-flex align-items-center" style="">
|
||||
<div class="modal-content" style="height:auto;border-radius:0;border:none;box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);">
|
||||
<div class="modal-body d-flex justify-content-end flex-column align-items-end">
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
<p class="display-7" style="text-align:center;width:100%;">Modal body text goes here.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>`
|
||||
} else {
|
||||
// bs4
|
||||
formModalDOM.innerHTML = `
|
||||
<div class="modal-dialog d-flex align-items-center" style="">
|
||||
<div class="modal-content" style="height:auto;border-radius:0;border:none;box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);">
|
||||
<div class="modal-body d-flex justify-content-end flex-column align-items-end">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<p class="display-7" style="text-align:center;width:100%;">Modal body text goes here.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>`
|
||||
}
|
||||
} else if ($.fn.Tooltip) {
|
||||
// bs3
|
||||
formModalDOM.innerHTML = `
|
||||
<div class="modal-dialog d-flex align-items-center" style="">
|
||||
<div class="modal-content" style="height:auto;border-radius:0;border:none;box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);">
|
||||
<div class="modal-body d-flex justify-content-end flex-column align-items-end">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<p class="display-7" style="text-align:center;width:100%;">Modal body text goes here.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>`
|
||||
}
|
||||
|
||||
if (bootstrap) {
|
||||
formModal = new bootstrap.Modal(formModalDOM);
|
||||
}
|
||||
|
||||
var isValidEmail = function (input) {
|
||||
return input.value ? /^([^@]+?)@(([a-z0-9]-*)*[a-z0-9]+\.)+([a-z0-9]+)$/i.test(input.value) : true;
|
||||
};
|
||||
|
||||
var formComponents = document.querySelectorAll('[data-form-type="formoid"]');
|
||||
|
||||
formComponents.forEach(function (component) {
|
||||
var formData,
|
||||
form = component.tagName === 'FORM' ? component : component.querySelector('form'),
|
||||
alert = component.querySelector('[data-form-alert]'),
|
||||
title = component.getAttribute('data-form-title') ? component : component.querySelector('[data-form-title]'),
|
||||
submit = component.querySelector('[type="submit"]'),
|
||||
inputArr = component.querySelectorAll('[data-form-field]'),
|
||||
alertSuccess = alert.innerHTML;
|
||||
|
||||
form.addEventListener('change', function (event) {
|
||||
if (event.target.type === 'file') {
|
||||
if (event.target.files[0].size > 1000000) {
|
||||
formModal._element.querySelector('.modal-body p').innerText = 'File size must be less than 1mb';
|
||||
formModal._element.querySelector('.modal-content').classList.add('alert-danger');
|
||||
formModal._element.querySelector('.modal-content').style.backgroundColor = '#ff9966';
|
||||
formModal.show();
|
||||
submit.classList.add('btn-loading');
|
||||
submit.setAttribute('disabled', true);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
form.addEventListener('submit', function (event) {
|
||||
event.stopPropagation();
|
||||
event.preventDefault();
|
||||
|
||||
if (submit.classList.contains('btn-loading')) return;
|
||||
|
||||
var inputs = inputArr;
|
||||
|
||||
form.classList.add('form-active');
|
||||
submit.classList.add('btn-loading');
|
||||
submit.setAttribute('disabled', true);
|
||||
alert.innerHTML = '';
|
||||
|
||||
formData = formData || Formoid.Form({
|
||||
email: component.querySelector('[data-form-email]').value,
|
||||
title: title.getAttribute('data-form-title') || title.innerText
|
||||
});
|
||||
|
||||
function parseInput(input) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
// valide email
|
||||
if (input.getAttribute('name') === 'email' && !isValidEmail(input)) {
|
||||
return reject(new Error('Form is not valid'));
|
||||
}
|
||||
var name = input.getAttribute('data-form-field') || input.getAttribute('name');
|
||||
switch (input.getAttribute('type')) {
|
||||
case 'file':
|
||||
var file = input.files[0];
|
||||
if (!file) return resolve();
|
||||
var reader = new FileReader()
|
||||
reader.onloadend = function () {
|
||||
resolve([name, reader.result]);
|
||||
};
|
||||
reader.onerror = function () {
|
||||
reject(reader.error);
|
||||
};
|
||||
reader.readAsDataURL(file);
|
||||
break;
|
||||
case 'checkbox':
|
||||
resolve([name, input.checked ? input.value : 'No']);
|
||||
break;
|
||||
case 'radio':
|
||||
resolve(input.checked && [name, input.value]);
|
||||
break;
|
||||
default:
|
||||
resolve([name, input.value]);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Promise
|
||||
.all(Array.prototype.map.call(inputs, function (input) { return parseInput(input); }))
|
||||
.then(function (data) { return formData.send(data.filter(function (v) { return v; })); })
|
||||
.then(function (message) {
|
||||
form.reset();
|
||||
form.classList.remove('form-active');
|
||||
formModal._element.querySelector('.modal-body p').innerText = alertSuccess || message;
|
||||
formModal._element.querySelector('.modal-content').classList.add('alert-success');
|
||||
formModal._element.querySelector('.modal-content').style.backgroundColor = '#70c770'
|
||||
formModal.show();
|
||||
}, function (err) {
|
||||
formModal._element.querySelector('.modal-body p').innerText = err.message;
|
||||
formModal._element.querySelector('.modal-content').classList.add('alert-danger');
|
||||
formModal._element.querySelector('.modal-content').style.backgroundColor = '#ff9966'
|
||||
})
|
||||
.then(function () {
|
||||
submit.classList.remove('btn-loading');
|
||||
submit.removeAttribute('disabled');
|
||||
});
|
||||
});
|
||||
|
||||
inputArr.forEach(function (elem) {
|
||||
elem.addEventListener('focus', function () {
|
||||
submit.classList.remove('btn-loading')
|
||||
submit.removeAttribute('disabled');
|
||||
});
|
||||
});
|
||||
})
|
||||
95
src/assets/gallery/gallery.js
Executable file
@@ -0,0 +1,95 @@
|
||||
my = (function(){
|
||||
var brData = [
|
||||
{'name':'Firefox','value':44.9},
|
||||
{'name':'Chrome','value':41.5},
|
||||
{'name':'Safari','value':8.7},
|
||||
{'name':'Opera','value':2.8},
|
||||
{'name':'MSIE','value':0.1},
|
||||
{'name':'Edge','value':0.0},
|
||||
{'name':'Mobile','value':0.0},
|
||||
{'name':'Mozilla','value':0.0},
|
||||
{'name':'Netscape','value':0.0},
|
||||
];
|
||||
brData.sort((a,b) => b.value-a.value)
|
||||
var lsOk=false,date = new Date(),year = date.getFullYear(),month;
|
||||
date.getMonth() < 10 ? month = '0'+date.getMonth() : month = date.getMonth();
|
||||
//
|
||||
function readLS(key){
|
||||
return lsOk ? window.localStorage.getItem(key) : false;
|
||||
}
|
||||
//
|
||||
function writeLS(key,value){
|
||||
if(lsOk) window.localStorage.setItem(key,value);
|
||||
}
|
||||
//
|
||||
function storageAvailable() {
|
||||
try {
|
||||
var storage = window.localStorage, x = '__storage_test__';
|
||||
storage.setItem(x, x); storage.removeItem(x);
|
||||
lsOk = true;
|
||||
}
|
||||
catch(e) {
|
||||
lsOk = false;
|
||||
}
|
||||
}
|
||||
// font size
|
||||
function set_font_size(size){
|
||||
switch (size){
|
||||
case 'small':
|
||||
document.getElementById("font-k").checked = "checked";
|
||||
break;
|
||||
case 'normal':
|
||||
document.getElementById("font-s").checked = "checked";
|
||||
break;
|
||||
case 'big':
|
||||
document.getElementById("font-g").checked = "checked";
|
||||
break;
|
||||
}
|
||||
}
|
||||
//
|
||||
function updateBrowser(){
|
||||
var query = '.rightpad.browser',elm,i,be,v=0;
|
||||
be = document.querySelector(query);
|
||||
if(!be) return;
|
||||
document.querySelector(query+' .head').innerHTML = 'Browseranteile '+year;
|
||||
elm = be.getElementsByTagName('p');
|
||||
for(i=elm.length-1;i>=0;i--){elm[i].remove()}
|
||||
for(i in brData){
|
||||
v+=brData[i].value
|
||||
elm = newElement('p',brData[i].name+' '+brData[i].value.toFixed(1)+'%','class='+brData[i].name);
|
||||
be.appendChild(elm);
|
||||
}
|
||||
v = (100-v).toFixed(1);
|
||||
elm = newElement('p','sonstige '+v+'%','');
|
||||
be.appendChild(elm);
|
||||
}
|
||||
// -------------------------------------
|
||||
// (split arguments width ' ')
|
||||
function newElement(elm,txt,atrb){
|
||||
var el = document.createElement(elm),atribs,i,at;
|
||||
el.appendChild(document.createTextNode(txt));
|
||||
if(atrb){
|
||||
atribs = atrb.split(' ');
|
||||
for(i=0;i<atribs.length;i++){
|
||||
at = atribs[i].split('=');
|
||||
el.setAttribute(at[0],at[1]);
|
||||
}
|
||||
}
|
||||
return el;
|
||||
}
|
||||
//
|
||||
function init(){
|
||||
storageAvailable();
|
||||
if(document.getElementById("inp_form")) focus_to_input();
|
||||
var copyUpd = document.getElementById('copyr');
|
||||
if(copyUpd) copyUpd.innerHTML = '© Jo Klimek 2010-'+year;
|
||||
set_font_size(readLS('font_size'));
|
||||
updateBrowser();
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded',init)
|
||||
return{
|
||||
writeLS:writeLS,
|
||||
readLS:readLS
|
||||
}
|
||||
})()
|
||||
BIN
src/assets/images/grass-2616911.jpg
Executable file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
src/assets/images/photo-1528826542659-27db5adea13c.jpeg
Executable file
|
After Width: | Height: | Size: 103 KiB |
91
src/assets/loading/loading.css
Executable file
@@ -0,0 +1,91 @@
|
||||
|
||||
|
||||
iframe.loaded{
|
||||
opacity: 1;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
iframe{
|
||||
opacity: 0;
|
||||
height: 0;
|
||||
transition: all ease-in-out 300ms;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.dots-bars-6 {
|
||||
width: 40px;
|
||||
height: 20px;
|
||||
--c:radial-gradient(farthest-side,currentColor 93%,#0000);
|
||||
background:
|
||||
var(--c) 0 0,
|
||||
var(--c) 50% 0;
|
||||
background-size:8px 8px;
|
||||
background-repeat: no-repeat;
|
||||
position: relative;
|
||||
clip-path: inset(-200% -100% 0 0);
|
||||
animation: db6-0 1.5s linear infinite;
|
||||
}
|
||||
.dots-bars-6:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 8px;
|
||||
height: 12px;
|
||||
background:currentColor;
|
||||
left:-16px;
|
||||
top:0;
|
||||
animation:
|
||||
db6-1 1.5s linear infinite,
|
||||
db6-2 0.5s cubic-bezier(0,200,.8,200) infinite;
|
||||
}
|
||||
.dots-bars-6:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
inset:0 0 auto auto;
|
||||
width:8px;
|
||||
height: 8px;
|
||||
border-radius: 50%;
|
||||
background:currentColor;
|
||||
animation: db6-3 1.5s linear infinite;
|
||||
}
|
||||
|
||||
@keyframes db6-0 {
|
||||
0%,30% {background-position: 0 0 ,50% 0 }
|
||||
33% {background-position: 0 100%,50% 0 }
|
||||
41%,63% {background-position: 0 0 ,50% 0 }
|
||||
66% {background-position: 0 0 ,50% 100%}
|
||||
74%,100%{background-position: 0 0 ,50% 0 }
|
||||
}
|
||||
|
||||
@keyframes db6-1 {
|
||||
90% {transform:translateY(0)}
|
||||
95% {transform:translateY(15px)}
|
||||
100% {transform:translateY(15px);left:calc(100% - 8px)}
|
||||
}
|
||||
|
||||
@keyframes db6-2 {
|
||||
100% {top:-0.1px}
|
||||
}
|
||||
|
||||
@keyframes db6-3 {
|
||||
0%,80%,100% {transform:translate(0)}
|
||||
90% {transform:translate(26px)}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.loader.active{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
opacity: 1;
|
||||
}
|
||||
.loader{
|
||||
height: 0;
|
||||
opacity: 0;
|
||||
transition: height ease-in-out 300ms;
|
||||
|
||||
}
|
||||
13
src/assets/loading/loading.js
Executable file
@@ -0,0 +1,13 @@
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
var iframes = document.querySelectorAll("iframe");
|
||||
|
||||
iframes.forEach(function(iframe) {
|
||||
var loader = iframe.parentElement.querySelector(".loader");
|
||||
loader.classList.add("active");
|
||||
iframe.addEventListener("load", function() {
|
||||
loader.classList.remove("active");
|
||||
iframe.classList.add("loaded");
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
153
src/assets/mbr-switch-arrow/mbr-switch-arrow.js
Executable file
@@ -0,0 +1,153 @@
|
||||
// var $,
|
||||
// isJQuery = typeof jQuery == 'function';
|
||||
// if (isJQuery) $ = jQuery;
|
||||
// var isBuilder = document.querySelector('html').classList.contains('is-builder');
|
||||
// function ready(fn) {
|
||||
// if (document.readyState != 'loading'){
|
||||
// fn();
|
||||
// } else {
|
||||
// document.addEventListener('DOMContentLoaded', fn);
|
||||
// }
|
||||
// }
|
||||
|
||||
// /*
|
||||
// if (!isBuilder) {
|
||||
// if (typeof window.initSwitchArrowPlugin === 'undefined') {
|
||||
// window.initSwitchArrowPlugin = true;
|
||||
// ready(function () {
|
||||
// if (document.querySelectorAll('.accordionStyles').length != 0) {
|
||||
// document.querySelectorAll('.accordionStyles .card-header a[role="button"]').forEach(function (el) {
|
||||
// if (!el.classList.contains('collapsed')) {
|
||||
// el.classList.add('collapsed');
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
// document.querySelectorAll('.accordionStyles .card-header a[role="button"]').forEach(element => {
|
||||
// element.addEventListener('click', function (event) {
|
||||
// var el = event.target,
|
||||
// id = el.closest('.accordionStyles').getAttribute('id'),
|
||||
// iscollapsing = el.closest('.card').querySelector('.panel-collapse'),
|
||||
// card = el.closest('.card'),
|
||||
// sign = card.querySelector('span.mbr-iconfont'),
|
||||
// button = card.querySelector('a[role="button"]');
|
||||
// if (!iscollapsing.classList.contains('collapsing')) {
|
||||
// if (id.indexOf('toggle') != -1) {
|
||||
// if (button.classList.contains('collapsed')) {
|
||||
// sign.classList.remove('mbri-arrow-down');
|
||||
// sign.classList.add('mbri-arrow-up');
|
||||
// button.classList.remove('collapsed');
|
||||
// } else {
|
||||
// sign.classList.remove('mbri-arrow-up');
|
||||
// sign.classList.add('mbri-arrow-down');
|
||||
// button.classList.add('collapsed');
|
||||
// }
|
||||
// }
|
||||
// else if (id.indexOf('accordion') != -1) {
|
||||
// var accordion = el.closest('.accordionStyles ');
|
||||
// if (accordion) {
|
||||
// if (card.querySelector('.collapsed')) {
|
||||
// sign.classList.remove('mbri-arrow-down');
|
||||
// sign.classList.add('mbri-arrow-up');
|
||||
// button.classList.remove('collapsed');
|
||||
// } else {
|
||||
// sign.classList.remove('mbri-arrow-up');
|
||||
// sign.classList.add('mbri-arrow-down');
|
||||
// button.classList.add('collapsed');
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
// })
|
||||
// }
|
||||
// };
|
||||
// */
|
||||
|
||||
|
||||
// if (!isBuilder) {
|
||||
// if (typeof window.initSwitchArrowPlugin === 'undefined'){
|
||||
// window.initSwitchArrowPlugin = true;
|
||||
// ready(function () {
|
||||
// if (document.querySelectorAll('.accordionStyles').length!=0) {
|
||||
// document.querySelectorAll('.accordionStyles > .card > .card-header > a[role="button"]').forEach(function(el){
|
||||
// if(!el.classList.contains('collapsed')){
|
||||
// el.classList.add('collapsed');
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
// document.querySelectorAll('.accordionStyles > .card > .card-header > a[role="button"]').forEach(el => {
|
||||
// el.addEventListener('click', () => {
|
||||
// var id = el.closest('.accordionStyles').getAttribute('id'),
|
||||
// iscollapsing = el.closest('.card').querySelector('.panel-collapse'),
|
||||
// sign = el.querySelector('span.sign');
|
||||
|
||||
// if (iscollapsing.classList.contains('collapsing')) {
|
||||
// if (id.indexOf('toggle')!= -1 || id.indexOf('accordion')!= -1) {
|
||||
// if (el.classList.contains('collapsed')) {
|
||||
// sign.classList.remove('mbri-arrow-up');
|
||||
// sign.classList.add('mbri-arrow-down');
|
||||
// } else {
|
||||
// sign.classList.remove('mbri-arrow-down');
|
||||
// sign.classList.add('mbri-arrow-up');
|
||||
// }
|
||||
// if (id.indexOf('accordion')!= -1) {
|
||||
// var accordion = el.closest('.accordionStyles');
|
||||
// Array.from(accordion.children).filter(el => el.querySelector('span.sign') !== sign)
|
||||
// .forEach(child => {
|
||||
// child.querySelector('span.sign').classList.remove('mbri-arrow-up');
|
||||
// child.querySelector('span.sign').classList.add('mbri-arrow-down');
|
||||
// })
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
// })
|
||||
// }
|
||||
// };
|
||||
|
||||
|
||||
// /*
|
||||
// var isBuilder = $('html').hasClass('is-builder');
|
||||
// if (!isBuilder) {
|
||||
// if (typeof window.initSwitchArrowPlugin === 'undefined'){
|
||||
// window.initSwitchArrowPlugin = true;
|
||||
// $(document).ready(function() {
|
||||
// if ($('.accordionStyles').length!=0) {
|
||||
// $('.accordionStyles .card-header a[role="button"]').each(function(){
|
||||
// if(!$(this).hasClass('collapsed')){
|
||||
// $(this).addClass('collapsed');
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
|
||||
// $('.accordionStyles .card-header a[role="button"]').click(function(){
|
||||
// var $id = $(this).closest('.accordionStyles').attr('id'),
|
||||
// $iscollapsing = $(this).closest('.card').find('.panel-collapse');
|
||||
|
||||
// if (!$iscollapsing.hasClass('collapsing')) {
|
||||
// if ($id.indexOf('toggle') != -1){
|
||||
// if ($(this).hasClass('collapsed')) {
|
||||
// $(this).find('span.sign').removeClass('mbri-arrow-down').addClass('mbri-arrow-up');
|
||||
// }
|
||||
// else{
|
||||
// $(this).find('span.sign').removeClass('mbri-arrow-up').addClass('mbri-arrow-down');
|
||||
// }
|
||||
// }
|
||||
// else if ($id.indexOf('accordion')!=-1) {
|
||||
// var $accordion = $(this).closest('.accordionStyles ');
|
||||
|
||||
// $accordion.children('.card').each(function() {
|
||||
// $(this).find('span.sign').removeClass('mbri-arrow-up').addClass('mbri-arrow-down');
|
||||
// });
|
||||
// if ($(this).hasClass('collapsed')) {
|
||||
// $(this).find('span.sign').removeClass('mbri-arrow-down').addClass('mbri-arrow-up');
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// };
|
||||
// */
|
||||
772
src/assets/mobirise/css/additional.css
Executable file
@@ -0,0 +1,772 @@
|
||||
.btn {
|
||||
border-width: 2px;
|
||||
}
|
||||
img,
|
||||
.card-wrap,
|
||||
.card-wrapper,
|
||||
.video-wrapper,
|
||||
.mbr-figure iframe,
|
||||
.google-map iframe,
|
||||
.slide-content,
|
||||
.plan,
|
||||
.card,
|
||||
.item-wrapper {
|
||||
border-radius: 2rem !important;
|
||||
}
|
||||
.video-wrapper {
|
||||
overflow: hidden;
|
||||
}
|
||||
body {
|
||||
font-family: var(--display1-font, 'Inter Tight');
|
||||
background: color-mix(in srgb, var(--dominant-color, #0f1305) 10%, transparent);
|
||||
|
||||
}
|
||||
|
||||
.display-1 {
|
||||
font-family: var(--display1-font);
|
||||
font-size: calc(var(--display1-size, 5) * 1rem);
|
||||
line-height: 1;
|
||||
}
|
||||
.display-2 {
|
||||
font-family: var(--display2-font);
|
||||
font-size: calc(var(--display2-size, 4) * 1rem);
|
||||
line-height: 1.1;
|
||||
}
|
||||
.display-4 {
|
||||
font-family: var(--display4-font);
|
||||
font-size: calc(var(--display4-size, 1.4) * 1rem);
|
||||
line-height: 1.5;
|
||||
}
|
||||
.display-5 {
|
||||
font-family: var(--display5-font);
|
||||
font-size: calc(var(--display5-size, 2) * 1rem);
|
||||
line-height: 1.5;
|
||||
}
|
||||
.display-7 {
|
||||
font-family: var(--display7-font);
|
||||
font-size: calc(var(--display7-size, 1.4) * 1rem);
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
.display-1 > .mbr-iconfont {
|
||||
font-size: calc(var(--display1-size, 5) * 1.25rem);
|
||||
}
|
||||
.display-2 > .mbr-iconfont {
|
||||
font-size: calc(var(--display2-size, 4) * 1.25rem);
|
||||
}
|
||||
.display-4 > .mbr-iconfont {
|
||||
font-size: calc(var(--display4-size, 1.4) * 1.25rem);
|
||||
}
|
||||
.display-5 > .mbr-iconfont {
|
||||
font-size: calc(var(--display5-size, 2) * 1.25rem);
|
||||
}
|
||||
.display-7 > .mbr-iconfont {
|
||||
font-size: calc(var(--display7-size, 1.4) * 1.25rem);
|
||||
}
|
||||
/* ---- Fluid typography for mobile devices ---- */
|
||||
/* 1.4 - font scale ratio ( bootstrap == 1.42857 ) */
|
||||
/* 100vw - current viewport width */
|
||||
/* (48 - 20) 48 == 48rem == 768px, 20 == 20rem == 320px(minimal supported viewport) */
|
||||
/* 0.65 - min scale variable, may vary */
|
||||
@media (max-width: 992px) {
|
||||
.display-1 {
|
||||
font-size: calc(var(--display1-size, 5) * 0.8rem);
|
||||
}
|
||||
}
|
||||
@media (max-width: 768px) {
|
||||
.display-1 {
|
||||
--display1-size_min: calc(var(--display1-size, 5) - (var(--display1-size, 5) - 1) * 0.65);
|
||||
font-size: calc(var(--display1-size, 5) * 0.7rem);
|
||||
font-size: calc(var(--display1-size_min) * 1rem + (var(--display1-size, 5) - var(--display1-size_min)) * ((100vw - 20rem) / (48 - 20)));
|
||||
line-height: calc(1.1 * (var(--display1-size_min) * 1rem + (var(--display1-size, 5) - var(--display1-size_min)) * ((100vw - 20rem) / (48 - 20))));
|
||||
}
|
||||
.display-2 {
|
||||
--display2-size_min: calc(var(--display2-size, 4) - (var(--display2-size, 4) - 1) * 0.65);
|
||||
font-size: calc(var(--display2-size, 4) * 0.8rem);
|
||||
font-size: calc(var(--display2-size_min) * 1rem + (var(--display2-size, 4) - var(--display2-size_min)) * ((100vw - 20rem) / (48 - 20)));
|
||||
line-height: calc(1.3 * (var(--display2-size_min) * 1rem + (var(--display2-size, 4) - var(--display2-size_min)) * ((100vw - 20rem) / (48 - 20))));
|
||||
}
|
||||
.display-4 {
|
||||
--display4-size_min: calc(var(--display4-size, 1.4) - (var(--display4-size, 1.4) - 1) * 0.65);
|
||||
font-size: calc(var(--display4-size, 1.4) * 0.8rem);
|
||||
font-size: calc(var(--display4-size_min) * 1rem + (var(--display4-size, 1.4) - var(--display4-size_min)) * ((100vw - 20rem) / (48 - 20)));
|
||||
line-height: calc(1.4 * (var(--display4-size_min) * 1rem + (var(--display4-size, 1.4) - var(--display4-size_min)) * ((100vw - 20rem) / (48 - 20))));
|
||||
}
|
||||
.display-5 {
|
||||
--display5-size_min: calc(var(--display5-size, 2) - (var(--display5-size, 2) - 1) * 0.65);
|
||||
font-size: calc(var(--display5-size, 2) * 0.8rem);
|
||||
font-size: calc(var(--display5-size_min) * 1rem + (var(--display5-size, 2) - var(--display5-size_min)) * ((100vw - 20rem) / (48 - 20)));
|
||||
line-height: calc(1.4 * (var(--display5-size_min) * 1rem + (var(--display5-size, 2) - var(--display5-size_min)) * ((100vw - 20rem) / (48 - 20))));
|
||||
}
|
||||
.display-7 {
|
||||
--display7-size_min: calc(var(--display7-size, 1.4) - (var(--display7-size, 1.4) - 1) * 0.65);
|
||||
font-size: calc(var(--display7-size, 1.4) * 0.8rem);
|
||||
font-size: calc(var(--display7-size_min) * 1rem + (var(--display7-size, 1.4) - var(--display7-size_min)) * ((100vw - 20rem) / (48 - 20)));
|
||||
line-height: calc(1.4 * (var(--display7-size_min) * 1rem + (var(--display7-size, 1.4) - var(--display7-size_min)) * ((100vw - 20rem) / (48 - 20))));
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 992px) and (max-width: 1400px) {
|
||||
.display-1 {
|
||||
--display1-size_min: calc(var(--display1-size, 5) - (var(--display1-size, 5) - 1) * 0.65);
|
||||
font-size: calc(var(--display1-size, 5) * 0.7rem);
|
||||
font-size: calc(var(--display1-size_min) * 1rem + (var(--display1-size, 5) - var(--display1-size_min)) * ((100vw - 62rem) / (87 - 62)));
|
||||
line-height: calc( 1.1 * (var(--display1-size_min) * 1rem + (var(--display1-size, 5) - var(--display1-size_min)) * ((100vw - 62rem) / (87 - 62))));
|
||||
}
|
||||
|
||||
.display-2 {
|
||||
--display2-size_min: calc(var(--display2-size, 4) - (var(--display2-size, 4) - 1) * 0.65);
|
||||
font-size: calc(var(--display2-size, 4) * 0.8rem);
|
||||
font-size: calc(var(--display2-size_min) * 1rem + (var(--display2-size, 4) - var(--display2-size_min)) * ((100vw - 62rem) / (87 - 62)));
|
||||
line-height: calc(1.3 * (var(--display2-size_min) * 1rem + (var(--display2-size, 4) - var(--display2-size_min)) * ((100vw - 62rem) / (87 - 62))));
|
||||
}
|
||||
|
||||
.display-4 {
|
||||
--display4-size_min: calc(var(--display4-size, 1.4) - (var(--display4-size, 1.4) - 1) * 0.65);
|
||||
font-size: calc(var(--display4-size, 1.4) * 0.8rem);
|
||||
font-size: calc(var(--display4-size_min) * 1rem + (var(--display4-size, 1.4) - var(--display4-size_min)) * ((100vw - 62rem) / (87 - 62)));
|
||||
line-height: calc(1.4 * (var(--display4-size_min) * 1rem + (var(--display4-size, 1.4) - var(--display4-size_min)) * ((100vw - 62rem) / (87 - 62))));
|
||||
}
|
||||
|
||||
.display-5 {
|
||||
--display5-size_min: calc(var(--display5-size, 2) - (var(--display5-size, 2) - 1) * 0.65);
|
||||
font-size: calc(var(--display5-size, 2) * 0.8rem);
|
||||
font-size: calc(var(--display5-size_min) * 1rem + (var(--display5-size, 2) - var(--display5-size_min)) * ((100vw - 62rem) / (87 - 62)));
|
||||
line-height: calc(1.4 * (var(--display5-size_min) * 1rem + (var(--display5-size, 2) - var(--display5-size_min)) * ((100vw - 62rem) / (87 - 62))));
|
||||
}
|
||||
|
||||
.display-7 {
|
||||
--display7-size_min: calc(var(--display7-size, 1.4) - (var(--display7-size, 1.4) - 1) * 0.65);
|
||||
font-size: calc(var(--display7-size, 1.4) * 0.8rem);
|
||||
font-size: calc(var(--display7-size_min) * 1rem + (var(--display7-size, 1.4) - var(--display7-size_min)) * ((100vw - 62rem) / (87 - 62)));
|
||||
line-height: calc(1.4 * (var(--display7-size_min) * 1rem + (var(--display7-size, 1.4) - var(--display7-size_min)) * ((100vw - 62rem) / (87 - 62))));
|
||||
}
|
||||
}
|
||||
/* Buttons */
|
||||
.btn {
|
||||
padding: 1.25rem 2rem;
|
||||
border-radius: 4px;
|
||||
}
|
||||
@media (max-width: 767px) {
|
||||
.btn {
|
||||
padding: 0.75rem 1.5rem;
|
||||
}
|
||||
}
|
||||
.btn-sm {
|
||||
padding: 0.6rem 1.2rem;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.btn-md {
|
||||
padding: 0.6rem 1.2rem;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.btn-lg {
|
||||
padding: 1.25rem 2rem;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bg-primary {
|
||||
background-color: var(--primary-color, #9fe870) !important;
|
||||
}
|
||||
.btn-secondary {
|
||||
background-color: var(--secondary-color, #ffd7ef) !important;
|
||||
}
|
||||
.bg-success {
|
||||
background-color: var(--success-color, #3a341c) !important;
|
||||
}
|
||||
.bg-info {
|
||||
background-color: var(--info-color, #320707) !important;
|
||||
}
|
||||
.bg-warning {
|
||||
background-color: var(--warning-color, #a0e2e1) !important;
|
||||
}
|
||||
.bg-danger {
|
||||
background-color: var(--danger-color, #ffea64) !important;
|
||||
}
|
||||
.btn-primary,
|
||||
.btn-primary:active {
|
||||
background-color: var(--primary-color, #9fe870) !important;
|
||||
border-color: var(--primary-color, #9fe870) !important;
|
||||
color: var(--primary-text, #264d0c) !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-primary:hover,
|
||||
.btn-primary:focus,
|
||||
.btn-primary.focus,
|
||||
.btn-primary.active {
|
||||
color: inherit;
|
||||
background-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 20%) !important;
|
||||
border-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 20%) !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-primary.disabled,
|
||||
.btn-primary:disabled {
|
||||
color: var(--primary-text, #264d0c) !important;
|
||||
background-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 40%) !important;
|
||||
}
|
||||
.btn-secondary,
|
||||
.btn-secondary:active {
|
||||
background-color: var(--secondary-color, #ffd7ef) !important;
|
||||
border-color: var(--secondary-color, #ffd7ef) !important;
|
||||
color: var(--secondary-text, #d70081) !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-secondary:hover,
|
||||
.btn-secondary:focus,
|
||||
.btn-secondary.focus,
|
||||
.btn-secondary.active {
|
||||
color: inherit;
|
||||
background-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 20%) !important;
|
||||
border-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 20%) !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-secondary.disabled,
|
||||
.btn-secondary:disabled {
|
||||
color: var(--secondary-text, #d70081) !important;
|
||||
background-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 40%) !important;
|
||||
}
|
||||
.btn-info,
|
||||
.btn-info:active {
|
||||
background-color: var(--info-color, #320707) !important;
|
||||
border-color: var(--info-color, #320707) !important;
|
||||
color: var(--info-text, #ffffff) !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-info:hover,
|
||||
.btn-info:focus,
|
||||
.btn-info.focus,
|
||||
.btn-info.active {
|
||||
color: inherit;
|
||||
background-color: color-mix(in srgb,var(--info-color, #320707),#000 20%) !important;
|
||||
border-color: color-mix(in srgb,var(--info-color, #320707),#000 20%) !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-info.disabled,
|
||||
.btn-info:disabled {
|
||||
color: var(--info-text, #ffffff) !important;
|
||||
background-color: color-mix(in srgb,var(--info-color, #320707),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--info-color, #320707),#000 40%) !important;
|
||||
}
|
||||
.btn-success,
|
||||
.btn-success:active {
|
||||
background-color: var(--success-color, #3a341c) !important;
|
||||
border-color: var(--success-color, #3a341c) !important;
|
||||
color: var(--success-text, #ffffff) !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-success:hover,
|
||||
.btn-success:focus,
|
||||
.btn-success.focus,
|
||||
.btn-success.active {
|
||||
color: inherit;
|
||||
background-color: color-mix(in srgb,var(--success-color, #3a341c),#000 20%) !important;
|
||||
border-color: color-mix(in srgb,var(--success-color, #3a341c),#000 20%) !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-success.disabled,
|
||||
.btn-success:disabled {
|
||||
color: var(--success-text, #ffffff) !important;
|
||||
background-color: color-mix(in srgb,var(--success-color, #3a341c),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--success-color, #3a341c),#000 40%) !important;
|
||||
}
|
||||
.btn-warning,
|
||||
.btn-warning:active {
|
||||
background-color: var(--warning-color, #a0e2e1) !important;
|
||||
border-color: var(--warning-color, #a0e2e1) !important;
|
||||
color: var(--warning-text, #1f6463) !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-warning:hover,
|
||||
.btn-warning:focus,
|
||||
.btn-warning.focus,
|
||||
.btn-warning.active {
|
||||
color: inherit;
|
||||
background-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 20%) !important;
|
||||
border-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 20%) !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-warning.disabled,
|
||||
.btn-warning:disabled {
|
||||
color: var(--warning-text, #1f6463) !important;
|
||||
background-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 40%) !important;
|
||||
}
|
||||
.btn-danger,
|
||||
.btn-danger:active {
|
||||
background-color: var(--danger-color, #ffea64) !important;
|
||||
border-color: var(--danger-color, #ffea64) !important;
|
||||
color: var(--danger-text, #645600) !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-danger:hover,
|
||||
.btn-danger:focus,
|
||||
.btn-danger.focus,
|
||||
.btn-danger.active {
|
||||
color: inherit;
|
||||
background-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 20%) !important;
|
||||
border-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 20%) !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-danger.disabled,
|
||||
.btn-danger:disabled {
|
||||
color: var(--danger-text, #645600) !important;
|
||||
background-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 40%) !important;
|
||||
}
|
||||
.btn-white,
|
||||
.btn-white:active {
|
||||
background-color: #fafafa !important;
|
||||
border-color: #fafafa !important;
|
||||
color: #7a7a7a !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-white:hover,
|
||||
.btn-white:focus,
|
||||
.btn-white.focus,
|
||||
.btn-white.active {
|
||||
color: #4f4f4f !important;
|
||||
background-color: #cfcfcf !important;
|
||||
border-color: #cfcfcf !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-white.disabled,
|
||||
.btn-white:disabled {
|
||||
color: #7a7a7a !important;
|
||||
background-color: #cfcfcf !important;
|
||||
border-color: #cfcfcf !important;
|
||||
}
|
||||
.btn-black,
|
||||
.btn-black:active {
|
||||
background-color: #232323 !important;
|
||||
border-color: #232323 !important;
|
||||
color: #ffffff !important;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-black:hover,
|
||||
.btn-black:focus,
|
||||
.btn-black.focus,
|
||||
.btn-black.active {
|
||||
color: #ffffff !important;
|
||||
background-color: #000000 !important;
|
||||
border-color: #000000 !important;
|
||||
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.btn-black.disabled,
|
||||
.btn-black:disabled {
|
||||
color: #ffffff !important;
|
||||
background-color: #000000 !important;
|
||||
border-color: #000000 !important;
|
||||
}
|
||||
.btn-primary-outline,
|
||||
.btn-primary-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: var(--primary-color, #9fe870);
|
||||
color: var(--primary-color, #9fe870);
|
||||
}
|
||||
.btn-primary-outline:hover,
|
||||
.btn-primary-outline:focus,
|
||||
.btn-primary-outline.focus,
|
||||
.btn-primary-outline.active {
|
||||
color: color-mix(in srgb,var(--primary-color, #9fe870),#000 20%) !important;
|
||||
background-color: transparent!important;
|
||||
border-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 20%) !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-primary-outline.disabled,
|
||||
.btn-primary-outline:disabled {
|
||||
color: var(--primary-text, #264d0c) !important;
|
||||
background-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--primary-color, #9fe870),#000 40%) !important;
|
||||
}
|
||||
.btn-secondary-outline,
|
||||
.btn-secondary-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: var(--secondary-color, #ffd7ef);
|
||||
color: var(--secondary-color, #ffd7ef);
|
||||
}
|
||||
.btn-secondary-outline:hover,
|
||||
.btn-secondary-outline:focus,
|
||||
.btn-secondary-outline.focus,
|
||||
.btn-secondary-outline.active {
|
||||
color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 20%) !important;
|
||||
background-color: transparent!important;
|
||||
border-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 20%) !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-secondary-outline.disabled,
|
||||
.btn-secondary-outline:disabled {
|
||||
color: var(--secondary-text, #d70081) !important;
|
||||
background-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 40%) !important;
|
||||
}
|
||||
.btn-info-outline,
|
||||
.btn-info-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: var(--info-color, #320707);
|
||||
color: var(--info-color, #320707);
|
||||
}
|
||||
.btn-info-outline:hover,
|
||||
.btn-info-outline:focus,
|
||||
.btn-info-outline.focus,
|
||||
.btn-info-outline.active {
|
||||
color: color-mix(in srgb,var(--info-color, #320707),#000 20%) !important;
|
||||
background-color: transparent!important;
|
||||
border-color: color-mix(in srgb,var(--info-color, #320707),#000 20%) !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-info-outline.disabled,
|
||||
.btn-info-outline:disabled {
|
||||
color: var(--info-text, #ffffff) !important;
|
||||
background-color: color-mix(in srgb,var(--info-color, #320707),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--info-color, #320707),#000 40%) !important;
|
||||
}
|
||||
.btn-success-outline,
|
||||
.btn-success-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: var(--success-color, #3a341c);
|
||||
color: var(--success-color, #3a341c);
|
||||
}
|
||||
.btn-success-outline:hover,
|
||||
.btn-success-outline:focus,
|
||||
.btn-success-outline.focus,
|
||||
.btn-success-outline.active {
|
||||
color: color-mix(in srgb,var(--success-color, #3a341c),#000 20%) !important;
|
||||
background-color: transparent!important;
|
||||
border-color: color-mix(in srgb,var(--success-color, #3a341c),#000 20%) !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-success-outline.disabled,
|
||||
.btn-success-outline:disabled {
|
||||
color: var(--success-text, #ffffff) !important;
|
||||
background-color: color-mix(in srgb,var(--success-color, #3a341c),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--success-color, #3a341c),#000 40%) !important;
|
||||
}
|
||||
.btn-warning-outline,
|
||||
.btn-warning-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: var(--warning-color, #a0e2e1);
|
||||
color: var(--warning-color, #a0e2e1);
|
||||
}
|
||||
.btn-warning-outline:hover,
|
||||
.btn-warning-outline:focus,
|
||||
.btn-warning-outline.focus,
|
||||
.btn-warning-outline.active {
|
||||
color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 20%) !important;
|
||||
background-color: transparent!important;
|
||||
border-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 20%) !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-warning-outline.disabled,
|
||||
.btn-warning-outline:disabled {
|
||||
color: var(--warning-text, #1f6463) !important;
|
||||
background-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 40%) !important;
|
||||
}
|
||||
.btn-danger-outline,
|
||||
.btn-danger-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: var(--danger-color, #ffea64);
|
||||
color: var(--danger-color, #ffea64);
|
||||
}
|
||||
.btn-danger-outline:hover,
|
||||
.btn-danger-outline:focus,
|
||||
.btn-danger-outline.focus,
|
||||
.btn-danger-outline.active {
|
||||
color: color-mix(in srgb,var(--danger-color, #ffea64),#000 20%) !important;
|
||||
background-color: transparent!important;
|
||||
border-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 20%) !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-danger-outline.disabled,
|
||||
.btn-danger-outline:disabled {
|
||||
color: var(--danger-text, #645600) !important;
|
||||
background-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 40%) !important;
|
||||
border-color: color-mix(in srgb,var(--danger-color, #ffea64),#000 40%) !important;
|
||||
}
|
||||
.btn-black-outline,
|
||||
.btn-black-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: #232323;
|
||||
color: #232323;
|
||||
}
|
||||
.btn-black-outline:hover,
|
||||
.btn-black-outline:focus,
|
||||
.btn-black-outline.focus,
|
||||
.btn-black-outline.active {
|
||||
color: #000000 !important;
|
||||
background-color: transparent!important;
|
||||
border-color: #000000 !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-black-outline.disabled,
|
||||
.btn-black-outline:disabled {
|
||||
color: #ffffff !important;
|
||||
background-color: #232323 !important;
|
||||
border-color: #232323 !important;
|
||||
}
|
||||
.btn-white-outline,
|
||||
.btn-white-outline:active {
|
||||
background-color: transparent !important;
|
||||
border-color: #fafafa;
|
||||
color: #fafafa;
|
||||
}
|
||||
.btn-white-outline:hover,
|
||||
.btn-white-outline:focus,
|
||||
.btn-white-outline.focus,
|
||||
.btn-white-outline.active {
|
||||
color: #cfcfcf !important;
|
||||
background-color: transparent!important;
|
||||
border-color: #cfcfcf !important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
.btn-white-outline.disabled,
|
||||
.btn-white-outline:disabled {
|
||||
color: #7a7a7a !important;
|
||||
background-color: #fafafa !important;
|
||||
border-color: #fafafa !important;
|
||||
}
|
||||
.text-primary {
|
||||
color: var(--primary-text, #264d0c) !important;
|
||||
}
|
||||
.text-secondary {
|
||||
color: var(--secondary-text, #d70081) !important;
|
||||
}
|
||||
.text-success {
|
||||
color: var(--success-text, #ffffff) !important;
|
||||
}
|
||||
.text-info {
|
||||
color: var(--info-text, #ffffff) !important;
|
||||
}
|
||||
.text-warning {
|
||||
color: var(--warning-text, #1f6463) !important;
|
||||
}
|
||||
.text-danger {
|
||||
color: var(--danger-text, #645600) !important;
|
||||
}
|
||||
.text-white {
|
||||
color: #fafafa !important;
|
||||
}
|
||||
.text-black {
|
||||
color: #232323 !important;
|
||||
}
|
||||
a.text-primary:hover,
|
||||
a.text-primary:focus,
|
||||
a.text-primary.active {
|
||||
color: color-mix(in srgb,var(--primary-color, #9fe870),#000 20%);
|
||||
}
|
||||
a.text-secondary:hover,
|
||||
a.text-secondary:focus,
|
||||
a.text-secondary.active {
|
||||
color: color-mix(in srgb,var(--secondary-color, #ffd7ef),#000 20%);
|
||||
}
|
||||
a.text-success:hover,
|
||||
a.text-success:focus,
|
||||
a.text-success.active {
|
||||
color: color-mix(in srgb,var(--success-color, #3a341c),#000 20%);
|
||||
}
|
||||
a.text-info:hover,
|
||||
a.text-info:focus,
|
||||
a.text-info.active {
|
||||
color: color-mix(in srgb,var(--info-color, #320707),#000 20%);
|
||||
}
|
||||
a.text-warning:hover,
|
||||
a.text-warning:focus,
|
||||
a.text-warning.active {
|
||||
color: color-mix(in srgb,var(--warning-color, #a0e2e1),#000 20%);
|
||||
}
|
||||
a.text-danger:hover,
|
||||
a.text-danger:focus,
|
||||
a.text-danger.active {
|
||||
color: color-mix(in srgb,var(--danger-color, #ffea64),#000 20%);
|
||||
}
|
||||
a.text-white:hover,
|
||||
a.text-white:focus,
|
||||
a.text-white.active {
|
||||
color: color-mix(in srgb,#fafafa,#000 20%);
|
||||
}
|
||||
a.text-black:hover,
|
||||
a.text-black:focus,
|
||||
a.text-black.active {
|
||||
color: color-mix(in srgb,#232323,#000 20%);
|
||||
}
|
||||
body[data-underlined-links="true"] a[class*="text-"]:not(.nav-link):not(.dropdown-item):not([role]):not(.navbar-caption){
|
||||
transition: 0.2s;
|
||||
position: relative;
|
||||
background-image: linear-gradient(currentColor 50%, currentColor 50%);
|
||||
background-size: 10000px 2px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 0 1.2em;
|
||||
}
|
||||
body[data-underlined-links="false"] a[class*="text-"]:not(.nav-link):not(.dropdown-item):not([role]):not(.navbar-caption){
|
||||
position: relative;
|
||||
background-image: transparent;
|
||||
background-size: 10000px 2px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 0px 1.2em;
|
||||
background-position: -10000px 1.2em;
|
||||
}
|
||||
body[data-underlined-links="false"] a[class*="text-"]:not(.nav-link):not(.dropdown-item):not([role]):not(.navbar-caption):hover{
|
||||
transition: background-position 2s ease-in-out;
|
||||
background-image: linear-gradient(currentColor 50%, currentColor 50%);
|
||||
background-position: 0px 1.2em;
|
||||
}
|
||||
body[data-is-rounded-buttons="true"] .nav-tabs .nav-link {
|
||||
border-radius: 100px !important;
|
||||
}
|
||||
.nav-tabs .nav-link.active {
|
||||
color: var(--primary-color, #9fe870);
|
||||
}
|
||||
.nav-tabs .nav-link:not(.active) {
|
||||
color: #232323;
|
||||
}
|
||||
.alert-success {
|
||||
background-color: var(--success-color, #70c770);
|
||||
}
|
||||
.alert-info {
|
||||
background-color: var(--info-color, #320707);
|
||||
}
|
||||
.alert-warning {
|
||||
background-color: var(--warning-color, #a0e2e1);
|
||||
}
|
||||
.alert-danger {
|
||||
background-color: var(--danger-color, #ffea64);
|
||||
}
|
||||
|
||||
:root[data-is-rounded-buttons="true"] .mbr-section-btn a.btn:not(.btn-form) {
|
||||
border-radius: 100px;
|
||||
}
|
||||
|
||||
:root[data-is-rounded-buttons="true"] .mbr-gallery-filter li a {
|
||||
border-radius: 100px !important;
|
||||
}
|
||||
|
||||
.mbr-section-btn .btn:not(.btn-form) {
|
||||
border-radius: 100px;
|
||||
}
|
||||
.mbr-gallery-filter li a {
|
||||
border-radius: 100px !important;
|
||||
}
|
||||
|
||||
.mbr-gallery-filter li.active .btn {
|
||||
background-color: var(--primary-color, #9fe870);
|
||||
border-color: var(--primary-color, #9fe870);
|
||||
color: #ffffff;
|
||||
}
|
||||
.mbr-gallery-filter li.active .btn:focus {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
a,
|
||||
a:hover {
|
||||
color: var(--primary-color, #9fe870);
|
||||
}
|
||||
|
||||
:root[data-is-scroll-to-top-buttons="true"][data-is-rounded-buttons="true"] #scrollToTop a{
|
||||
border-radius: 100px;
|
||||
}
|
||||
:root[data-is-scroll-to-top-buttons="false"] .scrollToTop_wraper{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.form-control {
|
||||
font-family: var(--display1-font);
|
||||
font-size: 1.4rem;
|
||||
line-height: 1.3;
|
||||
font-weight: 400;
|
||||
border-radius: 40px !important;
|
||||
}
|
||||
.form-control > .mbr-iconfont {
|
||||
font-size: 1.375rem;
|
||||
}
|
||||
.form-control:hover,
|
||||
.form-control:focus {
|
||||
box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px 0px, rgba(0, 0, 0, 0.07) 0px 1px 3px 0px, rgba(0, 0, 0, 0.03) 0px 0px 0px 1px;
|
||||
border-color: var(--primary-color, #9fe870) !important;
|
||||
}
|
||||
.form-control:-webkit-input-placeholder {
|
||||
font-family: var(--display1-font);
|
||||
font-size: 1.1rem;
|
||||
line-height: 1.5;
|
||||
font-weight: 400;
|
||||
}
|
||||
.form-control:-webkit-input-placeholder > .mbr-iconfont {
|
||||
font-size: 1.375rem;
|
||||
}
|
||||
blockquote {
|
||||
border-color: var(--primary-color, #9fe870);
|
||||
}
|
||||
/* Forms */
|
||||
.jq-selectbox li:hover,
|
||||
.jq-selectbox li.selected {
|
||||
background-color: var(--primary-color, #9fe870);
|
||||
color: #ffffff;
|
||||
}
|
||||
.jq-number__spin {
|
||||
transition: 0.25s ease;
|
||||
}
|
||||
.jq-number__spin:hover {
|
||||
border-color: var(--primary-color, #9fe870);
|
||||
}
|
||||
.jq-selectbox .jq-selectbox__trigger-arrow,
|
||||
.jq-number__spin.minus:after,
|
||||
.jq-number__spin.plus:after {
|
||||
transition: 0.4s;
|
||||
border-top-color: #353535;
|
||||
border-bottom-color: #353535;
|
||||
}
|
||||
.jq-selectbox:hover .jq-selectbox__trigger-arrow,
|
||||
.jq-number__spin.minus:hover:after,
|
||||
.jq-number__spin.plus:hover:after {
|
||||
border-top-color: var(--primary-color, #9fe870);
|
||||
border-bottom-color: var(--primary-color, #9fe870);
|
||||
}
|
||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
|
||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
|
||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div.xdsoft_current {
|
||||
color: #ffffff !important;
|
||||
background-color: var(--primary-color, #9fe870) !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.xdsoft_datetimepicker .xdsoft_calendar td:hover,
|
||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover {
|
||||
color: #000000 !important;
|
||||
background: var(--secondary-color, #ffd7ef) !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.lazy-bg {
|
||||
background-image: none !important;
|
||||
}
|
||||
.lazy-placeholder:not(section),
|
||||
.lazy-none {
|
||||
display: block;
|
||||
position: relative;
|
||||
padding-bottom: 56.25%;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
iframe.lazy-placeholder,
|
||||
.lazy-placeholder:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
background: transparent no-repeat center;
|
||||
background-size: contain;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translateX(-50%) translateY(-50%);
|
||||
background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='32' height='32' viewBox='0 0 64 64' xmlns='http://www.w3.org/2000/svg' stroke='%236592e6' %3e%3cg fill='none' fill-rule='evenodd'%3e%3cg transform='translate(16 16)' stroke-width='2'%3e%3ccircle stroke-opacity='.5' cx='16' cy='16' r='16'/%3e%3cpath d='M32 16c0-9.94-8.06-16-16-16'%3e%3canimateTransform attributeName='transform' type='rotate' from='0 16 16' to='360 16 16' dur='1s' repeatCount='indefinite'/%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e");
|
||||
}
|
||||
section.lazy-placeholder:after {
|
||||
opacity: 0.5;
|
||||
}
|
||||
body, html {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
a {
|
||||
transition: color 0.6s;
|
||||
}
|
||||
.mbr-fullscreen{
|
||||
overflow: hidden;
|
||||
}
|
||||
15
src/assets/parallax/jarallax.css
Executable file
@@ -0,0 +1,15 @@
|
||||
.jarallax {
|
||||
position: relative;
|
||||
z-index: 0;
|
||||
}
|
||||
.jarallax > .jarallax-img {
|
||||
position: absolute;
|
||||
object-fit: cover;
|
||||
/* support for plugin https://github.com/bfred-it/object-fit-images */
|
||||
font-family: 'object-fit: cover;';
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: -1;
|
||||
}
|
||||
1033
src/assets/parallax/jarallax.js
Executable file
136
src/assets/scrollgallery/scroll-gallery.js
Executable file
@@ -0,0 +1,136 @@
|
||||
(() => {
|
||||
if (document.querySelector('html').classList.contains('is-builder')) return;
|
||||
|
||||
function applyScrollAnimation() {
|
||||
const galleryWrappers = document.querySelectorAll('.gallery-wrapper');
|
||||
|
||||
if (!galleryWrappers.length) return;
|
||||
|
||||
galleryWrappers.forEach((galleryWrapper) => {
|
||||
const gridContainer1 = galleryWrapper.querySelector('.grid-container-1');
|
||||
const gridContainer2 = galleryWrapper.querySelector('.grid-container-2');
|
||||
const gridContainer3 = galleryWrapper.querySelector('.grid-container-3');
|
||||
|
||||
const initialTransform1 = gridContainer1 ? getComputedStyle(gridContainer1).transform : null;
|
||||
const initialTransform2 = gridContainer2 ? getComputedStyle(gridContainer2).transform : null;
|
||||
const initialTransform3 = gridContainer3 ? getComputedStyle(gridContainer3).transform : null;
|
||||
|
||||
function updateScrollAnimation() {
|
||||
const scrollPosition = window.scrollY;
|
||||
const screenHeight = window.innerHeight;
|
||||
const galleryBlockTop = galleryWrapper.getBoundingClientRect().top + window.scrollY;
|
||||
const distanceFromTop = galleryBlockTop - screenHeight;
|
||||
|
||||
if (scrollPosition >= distanceFromTop) {
|
||||
const matrix1 = initialTransform1 ? new DOMMatrix(initialTransform1) : null;
|
||||
const matrix2 = initialTransform2 ? new DOMMatrix(initialTransform2) : null;
|
||||
const matrix3 = initialTransform3 ? new DOMMatrix(initialTransform3) : null;
|
||||
|
||||
if (matrix1) {
|
||||
const gridItems1 = gridContainer1.querySelectorAll('.grid-item');
|
||||
const numItems1 = gridItems1.length;
|
||||
|
||||
if (numItems1 >= 8 && !gridContainer1.classList.contains('moving-left')) {
|
||||
matrix1.m41 = -2000;
|
||||
}
|
||||
|
||||
function cloneGalleryItems() {
|
||||
for (let i = 0; i < numItems1; i++) {
|
||||
const clonedItem = gridItems1[i].cloneNode(true);
|
||||
gridContainer1.appendChild(clonedItem);
|
||||
}
|
||||
}
|
||||
|
||||
switch (true) {
|
||||
case (numItems1 < 8):
|
||||
cloneGalleryItems();
|
||||
case (gridContainer1.classList.contains('moving-right')):
|
||||
translateX1 = matrix1.m41 + (scrollPosition - distanceFromTop) * 1;
|
||||
break;
|
||||
case (gridContainer1.classList.contains('moving-left')):
|
||||
translateX1 = matrix1.m41 - (scrollPosition - distanceFromTop) * 1;
|
||||
break;
|
||||
default:
|
||||
translateX1 = matrix1.m41 + (scrollPosition - distanceFromTop) * 1;
|
||||
break;
|
||||
}
|
||||
|
||||
gridContainer1.style.transform = `translate3d(${translateX1}px, 0, 0)`;
|
||||
}
|
||||
|
||||
if (matrix2) {
|
||||
const gridItems2 = gridContainer2.querySelectorAll('.grid-item');
|
||||
const numItems2 = gridItems2.length;
|
||||
|
||||
if (numItems2 >= 8 && gridContainer2.classList.contains('moving-left')) {
|
||||
matrix2.m41 = -2000;
|
||||
}
|
||||
|
||||
function cloneGalleryItems() {
|
||||
for (let i = 0; i < numItems2; i++) {
|
||||
const clonedItem = gridItems2[i].cloneNode(true);
|
||||
gridContainer2.appendChild(clonedItem);
|
||||
}
|
||||
}
|
||||
|
||||
switch (true) {
|
||||
case (numItems2 < 8):
|
||||
cloneGalleryItems();
|
||||
case (gridContainer2.classList.contains('moving-right')):
|
||||
translateX2 = matrix2.m41 + (scrollPosition - distanceFromTop) * 1;
|
||||
break;
|
||||
case (gridContainer2.classList.contains('moving-left')):
|
||||
translateX2 = matrix2.m41 - (scrollPosition - distanceFromTop) * 1;
|
||||
break;
|
||||
default:
|
||||
translateX2 = matrix2.m41 - (scrollPosition - distanceFromTop) * 1;
|
||||
break;
|
||||
}
|
||||
|
||||
gridContainer2.style.transform = `translate3d(${translateX2}px, 0, 0)`;
|
||||
}
|
||||
|
||||
if (matrix3) {
|
||||
const gridItems3 = gridContainer3.querySelectorAll('.grid-item');
|
||||
const numItems3 = gridItems3.length;
|
||||
|
||||
if (numItems3 >= 8 && !gridContainer3.classList.contains('moving-left')) {
|
||||
matrix3.m41 = -2000
|
||||
}
|
||||
|
||||
let translateX3 = matrix3.m41 + (scrollPosition - distanceFromTop) * 1;
|
||||
|
||||
function cloneGalleryItems() {
|
||||
for (let i = 0; i < numItems3; i++) {
|
||||
const clonedItem = gridItems3[i].cloneNode(true);
|
||||
gridContainer3.appendChild(clonedItem);
|
||||
}
|
||||
}
|
||||
|
||||
if (numItems3 < 8) {
|
||||
cloneGalleryItems()
|
||||
translateX3 = matrix3.m41 + (scrollPosition - distanceFromTop) * 1;
|
||||
}
|
||||
|
||||
if (gridContainer3.classList.contains('moving-right')) {
|
||||
translateX3 = matrix3.m41 + (scrollPosition - distanceFromTop) * 1;
|
||||
} else if (gridContainer3.classList.contains('moving-left')) {
|
||||
if (numItems3 < 8) {
|
||||
cloneGalleryItems()
|
||||
}
|
||||
translateX3 = matrix3.m41 - (scrollPosition - distanceFromTop) * 1;
|
||||
}
|
||||
|
||||
gridContainer3.style.transform = `translate3d(${translateX3}px, 0, 0)`;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll', () => {
|
||||
requestAnimationFrame(updateScrollAnimation);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
applyScrollAnimation();
|
||||
})();
|
||||
790
src/assets/smoothscroll/smooth-scroll.js
Executable file
@@ -0,0 +1,790 @@
|
||||
//
|
||||
// SmoothScroll for websites v1.4.10 (Balazs Galambosi)
|
||||
// http://www.smoothscroll.net/
|
||||
//
|
||||
// Licensed under the terms of the MIT license.
|
||||
//
|
||||
// You may use it in your theme if you credit me.
|
||||
// It is also free to use on any individual website.
|
||||
//
|
||||
// Exception:
|
||||
// The only restriction is to not publish any
|
||||
// extension for browsers or native application
|
||||
// without getting a written permission first.
|
||||
//
|
||||
|
||||
(function () {
|
||||
|
||||
// Scroll Variables (tweakable)
|
||||
var defaultOptions = {
|
||||
|
||||
// Scrolling Core
|
||||
frameRate : 150, // [Hz]
|
||||
animationTime : 400, // [ms]
|
||||
stepSize : 100, // [px]
|
||||
|
||||
// Pulse (less tweakable)
|
||||
// ratio of "tail" to "acceleration"
|
||||
pulseAlgorithm : true,
|
||||
pulseScale : 4,
|
||||
pulseNormalize : 1,
|
||||
|
||||
// Acceleration
|
||||
accelerationDelta : 50, // 50
|
||||
accelerationMax : 3, // 3
|
||||
|
||||
// Keyboard Settings
|
||||
keyboardSupport : true, // option
|
||||
arrowScroll : 50, // [px]
|
||||
|
||||
// Other
|
||||
fixedBackground : true,
|
||||
excluded : ''
|
||||
};
|
||||
|
||||
var options = defaultOptions;
|
||||
|
||||
|
||||
// Other Variables
|
||||
var isExcluded = false;
|
||||
var isFrame = false;
|
||||
var direction = { x: 0, y: 0 };
|
||||
var initDone = false;
|
||||
var root = document.documentElement;
|
||||
var activeElement;
|
||||
var observer;
|
||||
var refreshSize;
|
||||
var deltaBuffer = [];
|
||||
var deltaBufferTimer;
|
||||
var isMac = /^Mac/.test(navigator.platform);
|
||||
|
||||
var key = { left: 37, up: 38, right: 39, down: 40, spacebar: 32,
|
||||
pageup: 33, pagedown: 34, end: 35, home: 36 };
|
||||
var arrowKeys = { 37: 1, 38: 1, 39: 1, 40: 1 };
|
||||
|
||||
/***********************************************
|
||||
* INITIALIZE
|
||||
***********************************************/
|
||||
|
||||
/**
|
||||
* Tests if smooth scrolling is allowed. Shuts down everything if not.
|
||||
*/
|
||||
function initTest() {
|
||||
if (options.keyboardSupport) {
|
||||
addEvent('keydown', keydown);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets up scrolls array, determines if frames are involved.
|
||||
*/
|
||||
function init() {
|
||||
|
||||
if (initDone || !document.body) return;
|
||||
|
||||
initDone = true;
|
||||
|
||||
var body = document.body;
|
||||
var html = document.documentElement;
|
||||
var windowHeight = window.innerHeight;
|
||||
var scrollHeight = body.scrollHeight;
|
||||
|
||||
// check compat mode for root element
|
||||
root = (document.compatMode.indexOf('CSS') >= 0) ? html : body;
|
||||
activeElement = body;
|
||||
|
||||
initTest();
|
||||
|
||||
// Checks if this script is running in a frame
|
||||
if (top != self) {
|
||||
isFrame = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Safari 10 fixed it, Chrome fixed it in v45:
|
||||
* This fixes a bug where the areas left and right to
|
||||
* the content does not trigger the onmousewheel event
|
||||
* on some pages. e.g.: html, body { height: 100% }
|
||||
*/
|
||||
else if (isOldSafari &&
|
||||
scrollHeight > windowHeight &&
|
||||
(body.offsetHeight <= windowHeight ||
|
||||
html.offsetHeight <= windowHeight)) {
|
||||
|
||||
var fullPageElem = document.createElement('div');
|
||||
fullPageElem.style.cssText = 'position:absolute; z-index:-10000; ' +
|
||||
'top:0; left:0; right:0; height:' +
|
||||
root.scrollHeight + 'px';
|
||||
document.body.appendChild(fullPageElem);
|
||||
|
||||
// DOM changed (throttled) to fix height
|
||||
var pendingRefresh;
|
||||
refreshSize = function () {
|
||||
if (pendingRefresh) return; // could also be: clearTimeout(pendingRefresh);
|
||||
pendingRefresh = setTimeout(function () {
|
||||
if (isExcluded) return; // could be running after cleanup
|
||||
fullPageElem.style.height = '0';
|
||||
fullPageElem.style.height = root.scrollHeight + 'px';
|
||||
pendingRefresh = null;
|
||||
}, 500); // act rarely to stay fast
|
||||
};
|
||||
|
||||
setTimeout(refreshSize, 10);
|
||||
|
||||
addEvent('resize', refreshSize);
|
||||
|
||||
// TODO: attributeFilter?
|
||||
var config = {
|
||||
attributes: true,
|
||||
childList: true,
|
||||
characterData: false
|
||||
// subtree: true
|
||||
};
|
||||
|
||||
observer = new MutationObserver(refreshSize);
|
||||
observer.observe(body, config);
|
||||
|
||||
if (root.offsetHeight <= windowHeight) {
|
||||
var clearfix = document.createElement('div');
|
||||
clearfix.style.clear = 'both';
|
||||
body.appendChild(clearfix);
|
||||
}
|
||||
}
|
||||
|
||||
// disable fixed background
|
||||
if (!options.fixedBackground && !isExcluded) {
|
||||
body.style.backgroundAttachment = 'scroll';
|
||||
html.style.backgroundAttachment = 'scroll';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes event listeners and other traces left on the page.
|
||||
*/
|
||||
function cleanup() {
|
||||
observer && observer.disconnect();
|
||||
removeEvent(wheelEvent, wheel);
|
||||
removeEvent('mousedown', mousedown);
|
||||
removeEvent('keydown', keydown);
|
||||
removeEvent('resize', refreshSize);
|
||||
removeEvent('load', init);
|
||||
}
|
||||
|
||||
|
||||
/************************************************
|
||||
* SCROLLING
|
||||
************************************************/
|
||||
|
||||
var que = [];
|
||||
var pending = false;
|
||||
var lastScroll = Date.now();
|
||||
|
||||
/**
|
||||
* Pushes scroll actions to the scrolling queue.
|
||||
*/
|
||||
function scrollArray(elem, left, top) {
|
||||
|
||||
directionCheck(left, top);
|
||||
|
||||
if (options.accelerationMax != 1) {
|
||||
var now = Date.now();
|
||||
var elapsed = now - lastScroll;
|
||||
if (elapsed < options.accelerationDelta) {
|
||||
var factor = (1 + (50 / elapsed)) / 2;
|
||||
if (factor > 1) {
|
||||
factor = Math.min(factor, options.accelerationMax);
|
||||
left *= factor;
|
||||
top *= factor;
|
||||
}
|
||||
}
|
||||
lastScroll = Date.now();
|
||||
}
|
||||
|
||||
// push a scroll command
|
||||
que.push({
|
||||
x: left,
|
||||
y: top,
|
||||
lastX: (left < 0) ? 0.99 : -0.99,
|
||||
lastY: (top < 0) ? 0.99 : -0.99,
|
||||
start: Date.now()
|
||||
});
|
||||
|
||||
// don't act if there's a pending queue
|
||||
if (pending) {
|
||||
return;
|
||||
}
|
||||
|
||||
var scrollRoot = getScrollRoot();
|
||||
var isWindowScroll = (elem === scrollRoot || elem === document.body);
|
||||
|
||||
// if we haven't already fixed the behavior,
|
||||
// and it needs fixing for this sesh
|
||||
if (elem.$scrollBehavior == null && isScrollBehaviorSmooth(elem)) {
|
||||
elem.$scrollBehavior = elem.style.scrollBehavior;
|
||||
elem.style.scrollBehavior = 'auto';
|
||||
}
|
||||
|
||||
var step = function (time) {
|
||||
|
||||
var now = Date.now();
|
||||
var scrollX = 0;
|
||||
var scrollY = 0;
|
||||
|
||||
for (var i = 0; i < que.length; i++) {
|
||||
|
||||
var item = que[i];
|
||||
var elapsed = now - item.start;
|
||||
var finished = (elapsed >= options.animationTime);
|
||||
|
||||
// scroll position: [0, 1]
|
||||
var position = (finished) ? 1 : elapsed / options.animationTime;
|
||||
|
||||
// easing [optional]
|
||||
if (options.pulseAlgorithm) {
|
||||
position = pulse(position);
|
||||
}
|
||||
|
||||
// only need the difference
|
||||
var x = (item.x * position - item.lastX) >> 0;
|
||||
var y = (item.y * position - item.lastY) >> 0;
|
||||
|
||||
// add this to the total scrolling
|
||||
scrollX += x;
|
||||
scrollY += y;
|
||||
|
||||
// update last values
|
||||
item.lastX += x;
|
||||
item.lastY += y;
|
||||
|
||||
// delete and step back if it's over
|
||||
if (finished) {
|
||||
que.splice(i, 1); i--;
|
||||
}
|
||||
}
|
||||
|
||||
// scroll left and top
|
||||
if (isWindowScroll) {
|
||||
window.scrollBy(scrollX, scrollY);
|
||||
}
|
||||
else {
|
||||
if (scrollX) elem.scrollLeft += scrollX;
|
||||
if (scrollY) elem.scrollTop += scrollY;
|
||||
}
|
||||
|
||||
// clean up if there's nothing left to do
|
||||
if (!left && !top) {
|
||||
que = [];
|
||||
}
|
||||
|
||||
if (que.length) {
|
||||
requestFrame(step, elem, (1000 / options.frameRate + 1));
|
||||
} else {
|
||||
pending = false;
|
||||
// restore default behavior at the end of scrolling sesh
|
||||
if (elem.$scrollBehavior != null) {
|
||||
elem.style.scrollBehavior = elem.$scrollBehavior;
|
||||
elem.$scrollBehavior = null;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// start a new queue of actions
|
||||
requestFrame(step, elem, 0);
|
||||
pending = true;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************
|
||||
* EVENTS
|
||||
***********************************************/
|
||||
|
||||
/**
|
||||
* Mouse wheel handler.
|
||||
* @param {Object} event
|
||||
*/
|
||||
function wheel(event) {
|
||||
|
||||
if (!initDone) {
|
||||
init();
|
||||
}
|
||||
|
||||
var target = event.target;
|
||||
|
||||
// leave early if default action is prevented
|
||||
// or it's a zooming event with CTRL
|
||||
if (event.defaultPrevented || event.ctrlKey) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// leave embedded content alone (flash & pdf)
|
||||
if (isNodeName(activeElement, 'embed') ||
|
||||
(isNodeName(target, 'embed') && /\.pdf/i.test(target.src)) ||
|
||||
isNodeName(activeElement, 'object') ||
|
||||
target.shadowRoot) {
|
||||
return true;
|
||||
}
|
||||
|
||||
var deltaX = -event.wheelDeltaX || event.deltaX || 0;
|
||||
var deltaY = -event.wheelDeltaY || event.deltaY || 0;
|
||||
|
||||
if (isMac) {
|
||||
if (event.wheelDeltaX && isDivisible(event.wheelDeltaX, 120)) {
|
||||
deltaX = -120 * (event.wheelDeltaX / Math.abs(event.wheelDeltaX));
|
||||
}
|
||||
if (event.wheelDeltaY && isDivisible(event.wheelDeltaY, 120)) {
|
||||
deltaY = -120 * (event.wheelDeltaY / Math.abs(event.wheelDeltaY));
|
||||
}
|
||||
}
|
||||
|
||||
// use wheelDelta if deltaX/Y is not available
|
||||
if (!deltaX && !deltaY) {
|
||||
deltaY = -event.wheelDelta || 0;
|
||||
}
|
||||
|
||||
// line based scrolling (Firefox mostly)
|
||||
if (event.deltaMode === 1) {
|
||||
deltaX *= 40;
|
||||
deltaY *= 40;
|
||||
}
|
||||
|
||||
var overflowing = overflowingAncestor(target);
|
||||
|
||||
// nothing to do if there's no element that's scrollable
|
||||
if (!overflowing) {
|
||||
// except Chrome iframes seem to eat wheel events, which we need to
|
||||
// propagate up, if the iframe has nothing overflowing to scroll
|
||||
if (isFrame && isChrome) {
|
||||
// change target to iframe element itself for the parent frame
|
||||
Object.defineProperty(event, "target", {value: window.frameElement});
|
||||
return parent.wheel(event);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// check if it's a touchpad scroll that should be ignored
|
||||
if (isTouchpad(deltaY)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// scale by step size
|
||||
// delta is 120 most of the time
|
||||
// synaptics seems to send 1 sometimes
|
||||
if (Math.abs(deltaX) > 1.2) {
|
||||
deltaX *= options.stepSize / 120;
|
||||
}
|
||||
if (Math.abs(deltaY) > 1.2) {
|
||||
deltaY *= options.stepSize / 120;
|
||||
}
|
||||
|
||||
scrollArray(overflowing, deltaX, deltaY);
|
||||
event.preventDefault();
|
||||
scheduleClearCache();
|
||||
}
|
||||
|
||||
/**
|
||||
* Keydown event handler.
|
||||
* @param {Object} event
|
||||
*/
|
||||
function keydown(event) {
|
||||
|
||||
var target = event.target;
|
||||
var modifier = event.ctrlKey || event.altKey || event.metaKey ||
|
||||
(event.shiftKey && event.keyCode !== key.spacebar);
|
||||
|
||||
// our own tracked active element could've been removed from the DOM
|
||||
if (!document.body.contains(activeElement)) {
|
||||
activeElement = document.activeElement;
|
||||
}
|
||||
|
||||
// do nothing if user is editing text
|
||||
// or using a modifier key (except shift)
|
||||
// or in a dropdown
|
||||
// or inside interactive elements
|
||||
var inputNodeNames = /^(textarea|select|embed|object)$/i;
|
||||
var buttonTypes = /^(button|submit|radio|checkbox|file|color|image)$/i;
|
||||
if ( event.defaultPrevented ||
|
||||
inputNodeNames.test(target.nodeName) ||
|
||||
isNodeName(target, 'input') && !buttonTypes.test(target.type) ||
|
||||
isNodeName(activeElement, 'video') ||
|
||||
isInsideYoutubeVideo(event) ||
|
||||
target.isContentEditable ||
|
||||
modifier ) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// [spacebar] should trigger button press, leave it alone
|
||||
if ((isNodeName(target, 'button') ||
|
||||
isNodeName(target, 'input') && buttonTypes.test(target.type)) &&
|
||||
event.keyCode === key.spacebar) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// [arrwow keys] on radio buttons should be left alone
|
||||
if (isNodeName(target, 'input') && target.type == 'radio' &&
|
||||
arrowKeys[event.keyCode]) {
|
||||
return true;
|
||||
}
|
||||
|
||||
var shift, x = 0, y = 0;
|
||||
var overflowing = overflowingAncestor(activeElement);
|
||||
|
||||
if (!overflowing) {
|
||||
// Chrome iframes seem to eat key events, which we need to
|
||||
// propagate up, if the iframe has nothing overflowing to scroll
|
||||
return (isFrame && isChrome) ? parent.keydown(event) : true;
|
||||
}
|
||||
|
||||
var clientHeight = overflowing.clientHeight;
|
||||
|
||||
if (overflowing == document.body) {
|
||||
clientHeight = window.innerHeight;
|
||||
}
|
||||
|
||||
switch (event.keyCode) {
|
||||
case key.up:
|
||||
y = -options.arrowScroll;
|
||||
break;
|
||||
case key.down:
|
||||
y = options.arrowScroll;
|
||||
break;
|
||||
case key.spacebar: // (+ shift)
|
||||
shift = event.shiftKey ? 1 : -1;
|
||||
y = -shift * clientHeight * 0.9;
|
||||
break;
|
||||
case key.pageup:
|
||||
y = -clientHeight * 0.9;
|
||||
break;
|
||||
case key.pagedown:
|
||||
y = clientHeight * 0.9;
|
||||
break;
|
||||
case key.home:
|
||||
if (overflowing == document.body && document.scrollingElement)
|
||||
overflowing = document.scrollingElement;
|
||||
y = -overflowing.scrollTop;
|
||||
break;
|
||||
case key.end:
|
||||
var scroll = overflowing.scrollHeight - overflowing.scrollTop;
|
||||
var scrollRemaining = scroll - clientHeight;
|
||||
y = (scrollRemaining > 0) ? scrollRemaining + 10 : 0;
|
||||
break;
|
||||
case key.left:
|
||||
x = -options.arrowScroll;
|
||||
break;
|
||||
case key.right:
|
||||
x = options.arrowScroll;
|
||||
break;
|
||||
default:
|
||||
return true; // a key we don't care about
|
||||
}
|
||||
|
||||
scrollArray(overflowing, x, y);
|
||||
event.preventDefault();
|
||||
scheduleClearCache();
|
||||
}
|
||||
|
||||
/**
|
||||
* Mousedown event only for updating activeElement
|
||||
*/
|
||||
function mousedown(event) {
|
||||
activeElement = event.target;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************
|
||||
* OVERFLOW
|
||||
***********************************************/
|
||||
|
||||
var uniqueID = (function () {
|
||||
var i = 0;
|
||||
return function (el) {
|
||||
return el.uniqueID || (el.uniqueID = i++);
|
||||
};
|
||||
})();
|
||||
|
||||
var cacheX = {}; // cleared out after a scrolling session
|
||||
var cacheY = {}; // cleared out after a scrolling session
|
||||
var clearCacheTimer;
|
||||
var smoothBehaviorForElement = {};
|
||||
|
||||
//setInterval(function () { cache = {}; }, 10 * 1000);
|
||||
|
||||
function scheduleClearCache() {
|
||||
clearTimeout(clearCacheTimer);
|
||||
clearCacheTimer = setInterval(function () {
|
||||
cacheX = cacheY = smoothBehaviorForElement = {};
|
||||
}, 1*1000);
|
||||
}
|
||||
|
||||
function setCache(elems, overflowing, x) {
|
||||
var cache = x ? cacheX : cacheY;
|
||||
for (var i = elems.length; i--;)
|
||||
cache[uniqueID(elems[i])] = overflowing;
|
||||
return overflowing;
|
||||
}
|
||||
|
||||
function getCache(el, x) {
|
||||
return (x ? cacheX : cacheY)[uniqueID(el)];
|
||||
}
|
||||
|
||||
// (body) (root)
|
||||
// | hidden | visible | scroll | auto |
|
||||
// hidden | no | no | YES | YES |
|
||||
// visible | no | YES | YES | YES |
|
||||
// scroll | no | YES | YES | YES |
|
||||
// auto | no | YES | YES | YES |
|
||||
|
||||
function overflowingAncestor(el) {
|
||||
var elems = [];
|
||||
var body = document.body;
|
||||
var rootScrollHeight = root.scrollHeight;
|
||||
do {
|
||||
var cached = getCache(el, false);
|
||||
if (cached) {
|
||||
return setCache(elems, cached);
|
||||
}
|
||||
elems.push(el);
|
||||
if (rootScrollHeight === el.scrollHeight) {
|
||||
var topOverflowsNotHidden = overflowNotHidden(root) && overflowNotHidden(body);
|
||||
var isOverflowCSS = topOverflowsNotHidden || overflowAutoOrScroll(root);
|
||||
if (isFrame && isContentOverflowing(root) ||
|
||||
!isFrame && isOverflowCSS) {
|
||||
return setCache(elems, getScrollRoot());
|
||||
}
|
||||
} else if (isContentOverflowing(el) && overflowAutoOrScroll(el)) {
|
||||
return setCache(elems, el);
|
||||
}
|
||||
} while ((el = el.parentElement));
|
||||
}
|
||||
|
||||
function isContentOverflowing(el) {
|
||||
return (el.clientHeight + 10 < el.scrollHeight);
|
||||
}
|
||||
|
||||
// typically for <body> and <html>
|
||||
function overflowNotHidden(el) {
|
||||
var overflow = getComputedStyle(el, '').getPropertyValue('overflow-y');
|
||||
return (overflow !== 'hidden');
|
||||
}
|
||||
|
||||
// for all other elements
|
||||
function overflowAutoOrScroll(el) {
|
||||
var overflow = getComputedStyle(el, '').getPropertyValue('overflow-y');
|
||||
return (overflow === 'scroll' || overflow === 'auto');
|
||||
}
|
||||
|
||||
// for all other elements
|
||||
function isScrollBehaviorSmooth(el) {
|
||||
var id = uniqueID(el);
|
||||
if (smoothBehaviorForElement[id] == null) {
|
||||
var scrollBehavior = getComputedStyle(el, '')['scroll-behavior'];
|
||||
smoothBehaviorForElement[id] = ('smooth' == scrollBehavior);
|
||||
}
|
||||
return smoothBehaviorForElement[id];
|
||||
}
|
||||
|
||||
|
||||
/***********************************************
|
||||
* HELPERS
|
||||
***********************************************/
|
||||
|
||||
function addEvent(type, fn, arg) {
|
||||
window.addEventListener(type, fn, arg || false);
|
||||
}
|
||||
|
||||
function removeEvent(type, fn, arg) {
|
||||
window.removeEventListener(type, fn, arg || false);
|
||||
}
|
||||
|
||||
function isNodeName(el, tag) {
|
||||
return el && (el.nodeName||'').toLowerCase() === tag.toLowerCase();
|
||||
}
|
||||
|
||||
function directionCheck(x, y) {
|
||||
x = (x > 0) ? 1 : -1;
|
||||
y = (y > 0) ? 1 : -1;
|
||||
if (direction.x !== x || direction.y !== y) {
|
||||
direction.x = x;
|
||||
direction.y = y;
|
||||
que = [];
|
||||
lastScroll = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (window.localStorage && localStorage.SS_deltaBuffer) {
|
||||
try { // #46 Safari throws in private browsing for localStorage
|
||||
deltaBuffer = localStorage.SS_deltaBuffer.split(',');
|
||||
} catch (e) { }
|
||||
}
|
||||
|
||||
function isTouchpad(deltaY) {
|
||||
if (!deltaY) return;
|
||||
if (!deltaBuffer.length) {
|
||||
deltaBuffer = [deltaY, deltaY, deltaY];
|
||||
}
|
||||
deltaY = Math.abs(deltaY);
|
||||
deltaBuffer.push(deltaY);
|
||||
deltaBuffer.shift();
|
||||
clearTimeout(deltaBufferTimer);
|
||||
deltaBufferTimer = setTimeout(function () {
|
||||
try { // #46 Safari throws in private browsing for localStorage
|
||||
localStorage.SS_deltaBuffer = deltaBuffer.join(',');
|
||||
} catch (e) { }
|
||||
}, 1000);
|
||||
var dpiScaledWheelDelta = deltaY > 120 && allDeltasDivisableBy(deltaY); // win64
|
||||
var tp = !allDeltasDivisableBy(120) && !allDeltasDivisableBy(100) && !dpiScaledWheelDelta;
|
||||
if (deltaY < 50) return true;
|
||||
return tp;
|
||||
}
|
||||
|
||||
function isDivisible(n, divisor) {
|
||||
return (Math.floor(n / divisor) == n / divisor);
|
||||
}
|
||||
|
||||
function allDeltasDivisableBy(divisor) {
|
||||
return (isDivisible(deltaBuffer[0], divisor) &&
|
||||
isDivisible(deltaBuffer[1], divisor) &&
|
||||
isDivisible(deltaBuffer[2], divisor));
|
||||
}
|
||||
|
||||
function isInsideYoutubeVideo(event) {
|
||||
var elem = event.target;
|
||||
var isControl = false;
|
||||
if (document.URL.indexOf ('www.youtube.com/watch') != -1) {
|
||||
do {
|
||||
isControl = (elem.classList &&
|
||||
elem.classList.contains('html5-video-controls'));
|
||||
if (isControl) break;
|
||||
} while ((elem = elem.parentNode));
|
||||
}
|
||||
return isControl;
|
||||
}
|
||||
|
||||
var requestFrame = (function () {
|
||||
return (window.requestAnimationFrame ||
|
||||
window.webkitRequestAnimationFrame ||
|
||||
window.mozRequestAnimationFrame ||
|
||||
function (callback, element, delay) {
|
||||
window.setTimeout(callback, delay || (1000/60));
|
||||
});
|
||||
})();
|
||||
|
||||
var MutationObserver = (window.MutationObserver ||
|
||||
window.WebKitMutationObserver ||
|
||||
window.MozMutationObserver);
|
||||
|
||||
var getScrollRoot = (function() {
|
||||
var SCROLL_ROOT = document.scrollingElement;
|
||||
return function() {
|
||||
if (!SCROLL_ROOT) {
|
||||
var dummy = document.createElement('div');
|
||||
dummy.style.cssText = 'height:10000px;width:1px;';
|
||||
document.body.appendChild(dummy);
|
||||
var bodyScrollTop = document.body.scrollTop;
|
||||
var docElScrollTop = document.documentElement.scrollTop;
|
||||
window.scrollBy(0, 3);
|
||||
if (document.body.scrollTop != bodyScrollTop)
|
||||
(SCROLL_ROOT = document.body);
|
||||
else
|
||||
(SCROLL_ROOT = document.documentElement);
|
||||
window.scrollBy(0, -3);
|
||||
document.body.removeChild(dummy);
|
||||
}
|
||||
return SCROLL_ROOT;
|
||||
};
|
||||
})();
|
||||
|
||||
|
||||
/***********************************************
|
||||
* PULSE (by Michael Herf)
|
||||
***********************************************/
|
||||
|
||||
/**
|
||||
* Viscous fluid with a pulse for part and decay for the rest.
|
||||
* - Applies a fixed force over an interval (a damped acceleration), and
|
||||
* - Lets the exponential bleed away the velocity over a longer interval
|
||||
* - Michael Herf, http://stereopsis.com/stopping/
|
||||
*/
|
||||
function pulse_(x) {
|
||||
var val, start, expx;
|
||||
// test
|
||||
x = x * options.pulseScale;
|
||||
if (x < 1) { // acceleartion
|
||||
val = x - (1 - Math.exp(-x));
|
||||
} else { // tail
|
||||
// the previous animation ended here:
|
||||
start = Math.exp(-1);
|
||||
// simple viscous drag
|
||||
x -= 1;
|
||||
expx = 1 - Math.exp(-x);
|
||||
val = start + (expx * (1 - start));
|
||||
}
|
||||
return val * options.pulseNormalize;
|
||||
}
|
||||
|
||||
function pulse(x) {
|
||||
if (x >= 1) return 1;
|
||||
if (x <= 0) return 0;
|
||||
|
||||
if (options.pulseNormalize == 1) {
|
||||
options.pulseNormalize /= pulse_(1);
|
||||
}
|
||||
return pulse_(x);
|
||||
}
|
||||
|
||||
|
||||
/***********************************************
|
||||
* FIRST RUN
|
||||
***********************************************/
|
||||
|
||||
var userAgent = window.navigator.userAgent;
|
||||
var isEdge = /Edge/.test(userAgent); // thank you MS
|
||||
var isChrome = /chrome/i.test(userAgent) && !isEdge;
|
||||
var isSafari = /safari/i.test(userAgent) && !isEdge;
|
||||
var isMobile = /mobile/i.test(userAgent);
|
||||
var isIEWin7 = /Windows NT 6.1/i.test(userAgent) && /rv:11/i.test(userAgent);
|
||||
var isOldSafari = isSafari && (/Version\/8/i.test(userAgent) || /Version\/9/i.test(userAgent));
|
||||
var isEnabledForBrowser = (isChrome || isSafari || isIEWin7) && !isMobile;
|
||||
|
||||
var supportsPassive = false;
|
||||
try {
|
||||
window.addEventListener("test", null, Object.defineProperty({}, 'passive', {
|
||||
get: function () {
|
||||
supportsPassive = true;
|
||||
}
|
||||
}));
|
||||
} catch(e) {}
|
||||
|
||||
var wheelOpt = supportsPassive ? { passive: false } : false;
|
||||
var wheelEvent = 'onwheel' in document.createElement('div') ? 'wheel' : 'mousewheel';
|
||||
|
||||
if (wheelEvent && isEnabledForBrowser) {
|
||||
addEvent(wheelEvent, wheel, wheelOpt);
|
||||
addEvent('mousedown', mousedown);
|
||||
addEvent('load', init);
|
||||
}
|
||||
|
||||
|
||||
/***********************************************
|
||||
* PUBLIC INTERFACE
|
||||
***********************************************/
|
||||
|
||||
function SmoothScroll(optionsToSet) {
|
||||
for (var key in optionsToSet)
|
||||
if (defaultOptions.hasOwnProperty(key))
|
||||
options[key] = optionsToSet[key];
|
||||
}
|
||||
SmoothScroll.destroy = cleanup;
|
||||
|
||||
if (window.SmoothScrollOptions) // async API
|
||||
SmoothScroll(window.SmoothScrollOptions);
|
||||
|
||||
if (typeof define === 'function' && define.amd)
|
||||
define(function() {
|
||||
return SmoothScroll;
|
||||
});
|
||||
else if ('object' == typeof exports)
|
||||
module.exports = SmoothScroll;
|
||||
else
|
||||
window.SmoothScroll = SmoothScroll;
|
||||
|
||||
})();
|
||||
934
src/assets/socicon/css/styles.css
Executable file
@@ -0,0 +1,934 @@
|
||||
@charset "UTF-8";
|
||||
|
||||
@font-face {
|
||||
font-family: 'Socicon';
|
||||
src: url('../fonts/socicon.eot');
|
||||
src: url('../fonts/socicon.eot?#iefix') format('embedded-opentype'),
|
||||
url('../fonts/socicon.woff2') format('woff2'),
|
||||
url('../fonts/socicon.ttf') format('truetype'),
|
||||
url('../fonts/socicon.woff') format('woff'),
|
||||
url('../fonts/socicon.svg#socicon') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
[data-icon]:before {
|
||||
font-family: "socicon" !important;
|
||||
content: attr(data-icon);
|
||||
font-style: normal !important;
|
||||
font-weight: normal !important;
|
||||
font-variant: normal !important;
|
||||
text-transform: none !important;
|
||||
speak: none;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
[class^="socicon-"], [class*=" socicon-"] {
|
||||
/* use !important to prevent issues with browser extensions that change fonts */
|
||||
font-family: 'Socicon' !important;
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
|
||||
/* Better Font Rendering =========== */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.socicon-eitaa:before {
|
||||
content: "\e97c";
|
||||
}
|
||||
.socicon-soroush:before {
|
||||
content: "\e97d";
|
||||
}
|
||||
.socicon-bale:before {
|
||||
content: "\e97e";
|
||||
}
|
||||
.socicon-zazzle:before {
|
||||
content: "\e97b";
|
||||
}
|
||||
.socicon-society6:before {
|
||||
content: "\e97a";
|
||||
}
|
||||
.socicon-redbubble:before {
|
||||
content: "\e979";
|
||||
}
|
||||
.socicon-avvo:before {
|
||||
content: "\e978";
|
||||
}
|
||||
.socicon-stitcher:before {
|
||||
content: "\e977";
|
||||
}
|
||||
.socicon-googlehangouts:before {
|
||||
content: "\e974";
|
||||
}
|
||||
.socicon-dlive:before {
|
||||
content: "\e975";
|
||||
}
|
||||
.socicon-vsco:before {
|
||||
content: "\e976";
|
||||
}
|
||||
.socicon-flipboard:before {
|
||||
content: "\e973";
|
||||
}
|
||||
.socicon-ubuntu:before {
|
||||
content: "\e958";
|
||||
}
|
||||
.socicon-artstation:before {
|
||||
content: "\e959";
|
||||
}
|
||||
.socicon-invision:before {
|
||||
content: "\e95a";
|
||||
}
|
||||
.socicon-torial:before {
|
||||
content: "\e95b";
|
||||
}
|
||||
.socicon-collectorz:before {
|
||||
content: "\e95c";
|
||||
}
|
||||
.socicon-seenthis:before {
|
||||
content: "\e95d";
|
||||
}
|
||||
.socicon-googleplaymusic:before {
|
||||
content: "\e95e";
|
||||
}
|
||||
.socicon-debian:before {
|
||||
content: "\e95f";
|
||||
}
|
||||
.socicon-filmfreeway:before {
|
||||
content: "\e960";
|
||||
}
|
||||
.socicon-gnome:before {
|
||||
content: "\e961";
|
||||
}
|
||||
.socicon-itchio:before {
|
||||
content: "\e962";
|
||||
}
|
||||
.socicon-jamendo:before {
|
||||
content: "\e963";
|
||||
}
|
||||
.socicon-mix:before {
|
||||
content: "\e964";
|
||||
}
|
||||
.socicon-sharepoint:before {
|
||||
content: "\e965";
|
||||
}
|
||||
.socicon-tinder:before {
|
||||
content: "\e966";
|
||||
}
|
||||
.socicon-windguru:before {
|
||||
content: "\e967";
|
||||
}
|
||||
.socicon-cdbaby:before {
|
||||
content: "\e968";
|
||||
}
|
||||
.socicon-elementaryos:before {
|
||||
content: "\e969";
|
||||
}
|
||||
.socicon-stage32:before {
|
||||
content: "\e96a";
|
||||
}
|
||||
.socicon-tiktok:before {
|
||||
content: "\e96b";
|
||||
}
|
||||
.socicon-gitter:before {
|
||||
content: "\e96c";
|
||||
}
|
||||
.socicon-letterboxd:before {
|
||||
content: "\e96d";
|
||||
}
|
||||
.socicon-threema:before {
|
||||
content: "\e96e";
|
||||
}
|
||||
.socicon-splice:before {
|
||||
content: "\e96f";
|
||||
}
|
||||
.socicon-metapop:before {
|
||||
content: "\e970";
|
||||
}
|
||||
.socicon-naver:before {
|
||||
content: "\e971";
|
||||
}
|
||||
.socicon-remote:before {
|
||||
content: "\e972";
|
||||
}
|
||||
.socicon-internet:before {
|
||||
content: "\e957";
|
||||
}
|
||||
.socicon-moddb:before {
|
||||
content: "\e94b";
|
||||
}
|
||||
.socicon-indiedb:before {
|
||||
content: "\e94c";
|
||||
}
|
||||
.socicon-traxsource:before {
|
||||
content: "\e94d";
|
||||
}
|
||||
.socicon-gamefor:before {
|
||||
content: "\e94e";
|
||||
}
|
||||
.socicon-pixiv:before {
|
||||
content: "\e94f";
|
||||
}
|
||||
.socicon-myanimelist:before {
|
||||
content: "\e950";
|
||||
}
|
||||
.socicon-blackberry:before {
|
||||
content: "\e951";
|
||||
}
|
||||
.socicon-wickr:before {
|
||||
content: "\e952";
|
||||
}
|
||||
.socicon-spip:before {
|
||||
content: "\e953";
|
||||
}
|
||||
.socicon-napster:before {
|
||||
content: "\e954";
|
||||
}
|
||||
.socicon-beatport:before {
|
||||
content: "\e955";
|
||||
}
|
||||
.socicon-hackerone:before {
|
||||
content: "\e956";
|
||||
}
|
||||
.socicon-hackernews:before {
|
||||
content: "\e946";
|
||||
}
|
||||
.socicon-smashwords:before {
|
||||
content: "\e947";
|
||||
}
|
||||
.socicon-kobo:before {
|
||||
content: "\e948";
|
||||
}
|
||||
.socicon-bookbub:before {
|
||||
content: "\e949";
|
||||
}
|
||||
.socicon-mailru:before {
|
||||
content: "\e94a";
|
||||
}
|
||||
.socicon-gitlab:before {
|
||||
content: "\e945";
|
||||
}
|
||||
.socicon-instructables:before {
|
||||
content: "\e944";
|
||||
}
|
||||
.socicon-portfolio:before {
|
||||
content: "\e943";
|
||||
}
|
||||
.socicon-codered:before {
|
||||
content: "\e940";
|
||||
}
|
||||
.socicon-origin:before {
|
||||
content: "\e941";
|
||||
}
|
||||
.socicon-nextdoor:before {
|
||||
content: "\e942";
|
||||
}
|
||||
.socicon-udemy:before {
|
||||
content: "\e93f";
|
||||
}
|
||||
.socicon-livemaster:before {
|
||||
content: "\e93e";
|
||||
}
|
||||
.socicon-crunchbase:before {
|
||||
content: "\e93b";
|
||||
}
|
||||
.socicon-homefy:before {
|
||||
content: "\e93c";
|
||||
}
|
||||
.socicon-calendly:before {
|
||||
content: "\e93d";
|
||||
}
|
||||
.socicon-realtor:before {
|
||||
content: "\e90f";
|
||||
}
|
||||
.socicon-tidal:before {
|
||||
content: "\e910";
|
||||
}
|
||||
.socicon-qobuz:before {
|
||||
content: "\e911";
|
||||
}
|
||||
.socicon-natgeo:before {
|
||||
content: "\e912";
|
||||
}
|
||||
.socicon-mastodon:before {
|
||||
content: "\e913";
|
||||
}
|
||||
.socicon-unsplash:before {
|
||||
content: "\e914";
|
||||
}
|
||||
.socicon-homeadvisor:before {
|
||||
content: "\e915";
|
||||
}
|
||||
.socicon-angieslist:before {
|
||||
content: "\e916";
|
||||
}
|
||||
.socicon-codepen:before {
|
||||
content: "\e917";
|
||||
}
|
||||
.socicon-slack:before {
|
||||
content: "\e918";
|
||||
}
|
||||
.socicon-openaigym:before {
|
||||
content: "\e919";
|
||||
}
|
||||
.socicon-logmein:before {
|
||||
content: "\e91a";
|
||||
}
|
||||
.socicon-fiverr:before {
|
||||
content: "\e91b";
|
||||
}
|
||||
.socicon-gotomeeting:before {
|
||||
content: "\e91c";
|
||||
}
|
||||
.socicon-aliexpress:before {
|
||||
content: "\e91d";
|
||||
}
|
||||
.socicon-guru:before {
|
||||
content: "\e91e";
|
||||
}
|
||||
.socicon-appstore:before {
|
||||
content: "\e91f";
|
||||
}
|
||||
.socicon-homes:before {
|
||||
content: "\e920";
|
||||
}
|
||||
.socicon-zoom:before {
|
||||
content: "\e921";
|
||||
}
|
||||
.socicon-alibaba:before {
|
||||
content: "\e922";
|
||||
}
|
||||
.socicon-craigslist:before {
|
||||
content: "\e923";
|
||||
}
|
||||
.socicon-wix:before {
|
||||
content: "\e924";
|
||||
}
|
||||
.socicon-redfin:before {
|
||||
content: "\e925";
|
||||
}
|
||||
.socicon-googlecalendar:before {
|
||||
content: "\e926";
|
||||
}
|
||||
.socicon-shopify:before {
|
||||
content: "\e927";
|
||||
}
|
||||
.socicon-freelancer:before {
|
||||
content: "\e928";
|
||||
}
|
||||
.socicon-seedrs:before {
|
||||
content: "\e929";
|
||||
}
|
||||
.socicon-bing:before {
|
||||
content: "\e92a";
|
||||
}
|
||||
.socicon-doodle:before {
|
||||
content: "\e92b";
|
||||
}
|
||||
.socicon-bonanza:before {
|
||||
content: "\e92c";
|
||||
}
|
||||
.socicon-squarespace:before {
|
||||
content: "\e92d";
|
||||
}
|
||||
.socicon-toptal:before {
|
||||
content: "\e92e";
|
||||
}
|
||||
.socicon-gust:before {
|
||||
content: "\e92f";
|
||||
}
|
||||
.socicon-ask:before {
|
||||
content: "\e930";
|
||||
}
|
||||
.socicon-trulia:before {
|
||||
content: "\e931";
|
||||
}
|
||||
.socicon-loomly:before {
|
||||
content: "\e932";
|
||||
}
|
||||
.socicon-ghost:before {
|
||||
content: "\e933";
|
||||
}
|
||||
.socicon-upwork:before {
|
||||
content: "\e934";
|
||||
}
|
||||
.socicon-fundable:before {
|
||||
content: "\e935";
|
||||
}
|
||||
.socicon-booking:before {
|
||||
content: "\e936";
|
||||
}
|
||||
.socicon-googlemaps:before {
|
||||
content: "\e937";
|
||||
}
|
||||
.socicon-zillow:before {
|
||||
content: "\e938";
|
||||
}
|
||||
.socicon-niconico:before {
|
||||
content: "\e939";
|
||||
}
|
||||
.socicon-toneden:before {
|
||||
content: "\e93a";
|
||||
}
|
||||
.socicon-augment:before {
|
||||
content: "\e908";
|
||||
}
|
||||
.socicon-bitbucket:before {
|
||||
content: "\e909";
|
||||
}
|
||||
.socicon-fyuse:before {
|
||||
content: "\e90a";
|
||||
}
|
||||
.socicon-yt-gaming:before {
|
||||
content: "\e90b";
|
||||
}
|
||||
.socicon-sketchfab:before {
|
||||
content: "\e90c";
|
||||
}
|
||||
.socicon-mobcrush:before {
|
||||
content: "\e90d";
|
||||
}
|
||||
.socicon-microsoft:before {
|
||||
content: "\e90e";
|
||||
}
|
||||
.socicon-pandora:before {
|
||||
content: "\e907";
|
||||
}
|
||||
.socicon-messenger:before {
|
||||
content: "\e906";
|
||||
}
|
||||
.socicon-gamewisp:before {
|
||||
content: "\e905";
|
||||
}
|
||||
.socicon-bloglovin:before {
|
||||
content: "\e904";
|
||||
}
|
||||
.socicon-tunein:before {
|
||||
content: "\e903";
|
||||
}
|
||||
.socicon-gamejolt:before {
|
||||
content: "\e901";
|
||||
}
|
||||
.socicon-trello:before {
|
||||
content: "\e902";
|
||||
}
|
||||
.socicon-spreadshirt:before {
|
||||
content: "\e900";
|
||||
}
|
||||
.socicon-500px:before {
|
||||
content: "\e000";
|
||||
}
|
||||
.socicon-8tracks:before {
|
||||
content: "\e001";
|
||||
}
|
||||
.socicon-airbnb:before {
|
||||
content: "\e002";
|
||||
}
|
||||
.socicon-alliance:before {
|
||||
content: "\e003";
|
||||
}
|
||||
.socicon-amazon:before {
|
||||
content: "\e004";
|
||||
}
|
||||
.socicon-amplement:before {
|
||||
content: "\e005";
|
||||
}
|
||||
.socicon-android:before {
|
||||
content: "\e006";
|
||||
}
|
||||
.socicon-angellist:before {
|
||||
content: "\e007";
|
||||
}
|
||||
.socicon-apple:before {
|
||||
content: "\e008";
|
||||
}
|
||||
.socicon-appnet:before {
|
||||
content: "\e009";
|
||||
}
|
||||
.socicon-baidu:before {
|
||||
content: "\e00a";
|
||||
}
|
||||
.socicon-bandcamp:before {
|
||||
content: "\e00b";
|
||||
}
|
||||
.socicon-battlenet:before {
|
||||
content: "\e00c";
|
||||
}
|
||||
.socicon-mixer:before {
|
||||
content: "\e00d";
|
||||
}
|
||||
.socicon-bebee:before {
|
||||
content: "\e00e";
|
||||
}
|
||||
.socicon-bebo:before {
|
||||
content: "\e00f";
|
||||
}
|
||||
.socicon-behance:before {
|
||||
content: "\e010";
|
||||
}
|
||||
.socicon-blizzard:before {
|
||||
content: "\e011";
|
||||
}
|
||||
.socicon-blogger:before {
|
||||
content: "\e012";
|
||||
}
|
||||
.socicon-buffer:before {
|
||||
content: "\e013";
|
||||
}
|
||||
.socicon-chrome:before {
|
||||
content: "\e014";
|
||||
}
|
||||
.socicon-coderwall:before {
|
||||
content: "\e015";
|
||||
}
|
||||
.socicon-curse:before {
|
||||
content: "\e016";
|
||||
}
|
||||
.socicon-dailymotion:before {
|
||||
content: "\e017";
|
||||
}
|
||||
.socicon-deezer:before {
|
||||
content: "\e018";
|
||||
}
|
||||
.socicon-delicious:before {
|
||||
content: "\e019";
|
||||
}
|
||||
.socicon-deviantart:before {
|
||||
content: "\e01a";
|
||||
}
|
||||
.socicon-diablo:before {
|
||||
content: "\e01b";
|
||||
}
|
||||
.socicon-digg:before {
|
||||
content: "\e01c";
|
||||
}
|
||||
.socicon-discord:before {
|
||||
content: "\e01d";
|
||||
}
|
||||
.socicon-disqus:before {
|
||||
content: "\e01e";
|
||||
}
|
||||
.socicon-douban:before {
|
||||
content: "\e01f";
|
||||
}
|
||||
.socicon-draugiem:before {
|
||||
content: "\e020";
|
||||
}
|
||||
.socicon-dribbble:before {
|
||||
content: "\e021";
|
||||
}
|
||||
.socicon-drupal:before {
|
||||
content: "\e022";
|
||||
}
|
||||
.socicon-ebay:before {
|
||||
content: "\e023";
|
||||
}
|
||||
.socicon-ello:before {
|
||||
content: "\e024";
|
||||
}
|
||||
.socicon-endomodo:before {
|
||||
content: "\e025";
|
||||
}
|
||||
.socicon-envato:before {
|
||||
content: "\e026";
|
||||
}
|
||||
.socicon-etsy:before {
|
||||
content: "\e027";
|
||||
}
|
||||
.socicon-facebook:before {
|
||||
content: "\e028";
|
||||
}
|
||||
.socicon-feedburner:before {
|
||||
content: "\e029";
|
||||
}
|
||||
.socicon-filmweb:before {
|
||||
content: "\e02a";
|
||||
}
|
||||
.socicon-firefox:before {
|
||||
content: "\e02b";
|
||||
}
|
||||
.socicon-flattr:before {
|
||||
content: "\e02c";
|
||||
}
|
||||
.socicon-flickr:before {
|
||||
content: "\e02d";
|
||||
}
|
||||
.socicon-formulr:before {
|
||||
content: "\e02e";
|
||||
}
|
||||
.socicon-forrst:before {
|
||||
content: "\e02f";
|
||||
}
|
||||
.socicon-foursquare:before {
|
||||
content: "\e030";
|
||||
}
|
||||
.socicon-friendfeed:before {
|
||||
content: "\e031";
|
||||
}
|
||||
.socicon-github:before {
|
||||
content: "\e032";
|
||||
}
|
||||
.socicon-goodreads:before {
|
||||
content: "\e033";
|
||||
}
|
||||
.socicon-google:before {
|
||||
content: "\e034";
|
||||
}
|
||||
.socicon-googlescholar:before {
|
||||
content: "\e035";
|
||||
}
|
||||
.socicon-googlegroups:before {
|
||||
content: "\e036";
|
||||
}
|
||||
.socicon-googlephotos:before {
|
||||
content: "\e037";
|
||||
}
|
||||
.socicon-googleplus:before {
|
||||
content: "\e038";
|
||||
}
|
||||
.socicon-grooveshark:before {
|
||||
content: "\e039";
|
||||
}
|
||||
.socicon-hackerrank:before {
|
||||
content: "\e03a";
|
||||
}
|
||||
.socicon-hearthstone:before {
|
||||
content: "\e03b";
|
||||
}
|
||||
.socicon-hellocoton:before {
|
||||
content: "\e03c";
|
||||
}
|
||||
.socicon-heroes:before {
|
||||
content: "\e03d";
|
||||
}
|
||||
.socicon-smashcast:before {
|
||||
content: "\e03e";
|
||||
}
|
||||
.socicon-horde:before {
|
||||
content: "\e03f";
|
||||
}
|
||||
.socicon-houzz:before {
|
||||
content: "\e040";
|
||||
}
|
||||
.socicon-icq:before {
|
||||
content: "\e041";
|
||||
}
|
||||
.socicon-identica:before {
|
||||
content: "\e042";
|
||||
}
|
||||
.socicon-imdb:before {
|
||||
content: "\e043";
|
||||
}
|
||||
.socicon-instagram:before {
|
||||
content: "\e044";
|
||||
}
|
||||
.socicon-issuu:before {
|
||||
content: "\e045";
|
||||
}
|
||||
.socicon-istock:before {
|
||||
content: "\e046";
|
||||
}
|
||||
.socicon-itunes:before {
|
||||
content: "\e047";
|
||||
}
|
||||
.socicon-keybase:before {
|
||||
content: "\e048";
|
||||
}
|
||||
.socicon-lanyrd:before {
|
||||
content: "\e049";
|
||||
}
|
||||
.socicon-lastfm:before {
|
||||
content: "\e04a";
|
||||
}
|
||||
.socicon-line:before {
|
||||
content: "\e04b";
|
||||
}
|
||||
.socicon-linkedin:before {
|
||||
content: "\e04c";
|
||||
}
|
||||
.socicon-livejournal:before {
|
||||
content: "\e04d";
|
||||
}
|
||||
.socicon-lyft:before {
|
||||
content: "\e04e";
|
||||
}
|
||||
.socicon-macos:before {
|
||||
content: "\e04f";
|
||||
}
|
||||
.socicon-mail:before {
|
||||
content: "\e050";
|
||||
}
|
||||
.socicon-medium:before {
|
||||
content: "\e051";
|
||||
}
|
||||
.socicon-meetup:before {
|
||||
content: "\e052";
|
||||
}
|
||||
.socicon-mixcloud:before {
|
||||
content: "\e053";
|
||||
}
|
||||
.socicon-modelmayhem:before {
|
||||
content: "\e054";
|
||||
}
|
||||
.socicon-mumble:before {
|
||||
content: "\e055";
|
||||
}
|
||||
.socicon-myspace:before {
|
||||
content: "\e056";
|
||||
}
|
||||
.socicon-newsvine:before {
|
||||
content: "\e057";
|
||||
}
|
||||
.socicon-nintendo:before {
|
||||
content: "\e058";
|
||||
}
|
||||
.socicon-npm:before {
|
||||
content: "\e059";
|
||||
}
|
||||
.socicon-odnoklassniki:before {
|
||||
content: "\e05a";
|
||||
}
|
||||
.socicon-openid:before {
|
||||
content: "\e05b";
|
||||
}
|
||||
.socicon-opera:before {
|
||||
content: "\e05c";
|
||||
}
|
||||
.socicon-outlook:before {
|
||||
content: "\e05d";
|
||||
}
|
||||
.socicon-overwatch:before {
|
||||
content: "\e05e";
|
||||
}
|
||||
.socicon-patreon:before {
|
||||
content: "\e05f";
|
||||
}
|
||||
.socicon-paypal:before {
|
||||
content: "\e060";
|
||||
}
|
||||
.socicon-periscope:before {
|
||||
content: "\e061";
|
||||
}
|
||||
.socicon-persona:before {
|
||||
content: "\e062";
|
||||
}
|
||||
.socicon-pinterest:before {
|
||||
content: "\e063";
|
||||
}
|
||||
.socicon-play:before {
|
||||
content: "\e064";
|
||||
}
|
||||
.socicon-player:before {
|
||||
content: "\e065";
|
||||
}
|
||||
.socicon-playstation:before {
|
||||
content: "\e066";
|
||||
}
|
||||
.socicon-pocket:before {
|
||||
content: "\e067";
|
||||
}
|
||||
.socicon-qq:before {
|
||||
content: "\e068";
|
||||
}
|
||||
.socicon-quora:before {
|
||||
content: "\e069";
|
||||
}
|
||||
.socicon-raidcall:before {
|
||||
content: "\e06a";
|
||||
}
|
||||
.socicon-ravelry:before {
|
||||
content: "\e06b";
|
||||
}
|
||||
.socicon-reddit:before {
|
||||
content: "\e06c";
|
||||
}
|
||||
.socicon-renren:before {
|
||||
content: "\e06d";
|
||||
}
|
||||
.socicon-researchgate:before {
|
||||
content: "\e06e";
|
||||
}
|
||||
.socicon-residentadvisor:before {
|
||||
content: "\e06f";
|
||||
}
|
||||
.socicon-reverbnation:before {
|
||||
content: "\e070";
|
||||
}
|
||||
.socicon-rss:before {
|
||||
content: "\e071";
|
||||
}
|
||||
.socicon-sharethis:before {
|
||||
content: "\e072";
|
||||
}
|
||||
.socicon-skype:before {
|
||||
content: "\e073";
|
||||
}
|
||||
.socicon-slideshare:before {
|
||||
content: "\e074";
|
||||
}
|
||||
.socicon-smugmug:before {
|
||||
content: "\e075";
|
||||
}
|
||||
.socicon-snapchat:before {
|
||||
content: "\e076";
|
||||
}
|
||||
.socicon-songkick:before {
|
||||
content: "\e077";
|
||||
}
|
||||
.socicon-soundcloud:before {
|
||||
content: "\e078";
|
||||
}
|
||||
.socicon-spotify:before {
|
||||
content: "\e079";
|
||||
}
|
||||
.socicon-stackexchange:before {
|
||||
content: "\e07a";
|
||||
}
|
||||
.socicon-stackoverflow:before {
|
||||
content: "\e07b";
|
||||
}
|
||||
.socicon-starcraft:before {
|
||||
content: "\e07c";
|
||||
}
|
||||
.socicon-stayfriends:before {
|
||||
content: "\e07d";
|
||||
}
|
||||
.socicon-steam:before {
|
||||
content: "\e07e";
|
||||
}
|
||||
.socicon-storehouse:before {
|
||||
content: "\e07f";
|
||||
}
|
||||
.socicon-strava:before {
|
||||
content: "\e080";
|
||||
}
|
||||
.socicon-streamjar:before {
|
||||
content: "\e081";
|
||||
}
|
||||
.socicon-stumbleupon:before {
|
||||
content: "\e082";
|
||||
}
|
||||
.socicon-swarm:before {
|
||||
content: "\e083";
|
||||
}
|
||||
.socicon-teamspeak:before {
|
||||
content: "\e084";
|
||||
}
|
||||
.socicon-teamviewer:before {
|
||||
content: "\e085";
|
||||
}
|
||||
.socicon-technorati:before {
|
||||
content: "\e086";
|
||||
}
|
||||
.socicon-telegram:before {
|
||||
content: "\e087";
|
||||
}
|
||||
.socicon-tripadvisor:before {
|
||||
content: "\e088";
|
||||
}
|
||||
.socicon-tripit:before {
|
||||
content: "\e089";
|
||||
}
|
||||
.socicon-triplej:before {
|
||||
content: "\e08a";
|
||||
}
|
||||
.socicon-tumblr:before {
|
||||
content: "\e08b";
|
||||
}
|
||||
.socicon-twitch:before {
|
||||
content: "\e08c";
|
||||
}
|
||||
.socicon-twitter:before {
|
||||
content: "\e08d";
|
||||
}
|
||||
.socicon-uber:before {
|
||||
content: "\e08e";
|
||||
}
|
||||
.socicon-ventrilo:before {
|
||||
content: "\e08f";
|
||||
}
|
||||
.socicon-viadeo:before {
|
||||
content: "\e090";
|
||||
}
|
||||
.socicon-viber:before {
|
||||
content: "\e091";
|
||||
}
|
||||
.socicon-viewbug:before {
|
||||
content: "\e092";
|
||||
}
|
||||
.socicon-vimeo:before {
|
||||
content: "\e093";
|
||||
}
|
||||
.socicon-vine:before {
|
||||
content: "\e094";
|
||||
}
|
||||
.socicon-vkontakte:before {
|
||||
content: "\e095";
|
||||
}
|
||||
.socicon-warcraft:before {
|
||||
content: "\e096";
|
||||
}
|
||||
.socicon-wechat:before {
|
||||
content: "\e097";
|
||||
}
|
||||
.socicon-weibo:before {
|
||||
content: "\e098";
|
||||
}
|
||||
.socicon-whatsapp:before {
|
||||
content: "\e099";
|
||||
}
|
||||
.socicon-wikipedia:before {
|
||||
content: "\e09a";
|
||||
}
|
||||
.socicon-windows:before {
|
||||
content: "\e09b";
|
||||
}
|
||||
.socicon-wordpress:before {
|
||||
content: "\e09c";
|
||||
}
|
||||
.socicon-wykop:before {
|
||||
content: "\e09d";
|
||||
}
|
||||
.socicon-xbox:before {
|
||||
content: "\e09e";
|
||||
}
|
||||
.socicon-xing:before {
|
||||
content: "\e09f";
|
||||
}
|
||||
.socicon-yahoo:before {
|
||||
content: "\e0a0";
|
||||
}
|
||||
.socicon-yammer:before {
|
||||
content: "\e0a1";
|
||||
}
|
||||
.socicon-yandex:before {
|
||||
content: "\e0a2";
|
||||
}
|
||||
.socicon-yelp:before {
|
||||
content: "\e0a3";
|
||||
}
|
||||
.socicon-younow:before {
|
||||
content: "\e0a4";
|
||||
}
|
||||
.socicon-youtube:before {
|
||||
content: "\e0a5";
|
||||
}
|
||||
.socicon-zapier:before {
|
||||
content: "\e0a6";
|
||||
}
|
||||
.socicon-zerply:before {
|
||||
content: "\e0a7";
|
||||
}
|
||||
.socicon-zomato:before {
|
||||
content: "\e0a8";
|
||||
}
|
||||
.socicon-zynga:before {
|
||||
content: "\e0a9";
|
||||
}
|
||||
BIN
src/assets/socicon/fonts/socicon.eot
Executable file
307
src/assets/socicon/fonts/socicon.svg
Executable file
|
After Width: | Height: | Size: 315 KiB |
BIN
src/assets/socicon/fonts/socicon.ttf
Executable file
BIN
src/assets/socicon/fonts/socicon.woff
Executable file
BIN
src/assets/socicon/fonts/socicon.woff2
Executable file
959
src/assets/theme/css/style.css
Executable file
@@ -0,0 +1,959 @@
|
||||
@charset "UTF-8";
|
||||
section {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
|
||||
body.modal-open {
|
||||
font-style: normal;
|
||||
line-height: 1.5;
|
||||
font-weight: 400;
|
||||
color: #232323;
|
||||
position: relative;
|
||||
overflow: hidden; /* Verhindert Scrollen auf der Website */
|
||||
}
|
||||
|
||||
button {
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
}
|
||||
|
||||
.embla__button,
|
||||
.carousel-control {
|
||||
background-color: #edefea !important;
|
||||
opacity: 0.8 !important;
|
||||
color: #464845 !important;
|
||||
border-color: #edefea !important;
|
||||
}
|
||||
|
||||
.carousel .close,
|
||||
.modalWindow .close {
|
||||
background-color: #edefea !important;
|
||||
color: #464845 !important;
|
||||
border-color: #edefea !important;
|
||||
opacity: 0.8 !important;
|
||||
}
|
||||
|
||||
.carousel .close:hover,
|
||||
.modalWindow .close:hover {
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
.carousel-indicators li {
|
||||
background-color: #edefea !important;
|
||||
border: 2px solid #464845 !important;
|
||||
}
|
||||
|
||||
.carousel-indicators li:hover,
|
||||
.carousel-indicators li:active {
|
||||
opacity: 0.8 !important;
|
||||
}
|
||||
|
||||
.embla__button:hover,
|
||||
.carousel-control:hover {
|
||||
background-color: #edefea !important;
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
.modalWindow-video-container {
|
||||
height: 80%;
|
||||
}
|
||||
|
||||
section,
|
||||
.container,
|
||||
.container-fluid {
|
||||
position: relative;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
a.mbr-iconfont:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.article .lead p,
|
||||
.article .lead ul,
|
||||
.article .lead ol,
|
||||
.article .lead pre,
|
||||
.article .lead blockquote {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
a {
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
cursor: pointer;
|
||||
}
|
||||
a, a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.mbr-section-title {
|
||||
font-style: normal;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
.mbr-section-subtitle {
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
.mbr-text {
|
||||
font-style: normal;
|
||||
line-height: 1.7;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
.display-1,
|
||||
.display-2,
|
||||
.display-4,
|
||||
.display-5,
|
||||
.display-7,
|
||||
span,
|
||||
p,
|
||||
a {
|
||||
line-height: 1;
|
||||
word-break: break-word;
|
||||
word-wrap: break-word;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active {
|
||||
transition-delay: 9999s;
|
||||
-webkit-transition-property: background-color, color;
|
||||
transition-property: background-color, color;
|
||||
}
|
||||
|
||||
textarea[type=hidden] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
section {
|
||||
background-position: 50% 50%;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
}
|
||||
section .mbr-background-video,
|
||||
section .mbr-background-video-preview {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.hidden {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.mbr-z-index20 {
|
||||
z-index: 20;
|
||||
}
|
||||
|
||||
/*! Base colors */
|
||||
.mbr-white {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.mbr-black {
|
||||
color: #111111;
|
||||
}
|
||||
|
||||
.mbr-bg-white {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
|
||||
.mbr-bg-black {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
/*! Text-aligns */
|
||||
.align-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.align-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/*! Font-weight */
|
||||
.mbr-light {
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
.mbr-regular {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.mbr-semibold {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.mbr-bold {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
/*! Media */
|
||||
.media-content {
|
||||
flex-basis: 100%;
|
||||
}
|
||||
|
||||
.media-container-row {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
justify-content: center;
|
||||
align-content: center;
|
||||
align-items: start;
|
||||
}
|
||||
.media-container-row .media-size-item {
|
||||
width: 400px;
|
||||
}
|
||||
|
||||
.media-container-column {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-wrap: wrap;
|
||||
justify-content: center;
|
||||
align-content: center;
|
||||
align-items: stretch;
|
||||
}
|
||||
.media-container-column > * {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.media-container-row {
|
||||
flex-wrap: nowrap;
|
||||
}
|
||||
}
|
||||
figure {
|
||||
margin-bottom: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
figure[mbr-media-size] {
|
||||
transition: width 0.1s;
|
||||
}
|
||||
|
||||
img,
|
||||
iframe {
|
||||
display: block;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.card {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.card-box {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.card-img {
|
||||
text-align: center;
|
||||
flex-shrink: 0;
|
||||
-webkit-flex-shrink: 0;
|
||||
}
|
||||
|
||||
.media {
|
||||
max-width: 100%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.mbr-figure {
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
.media-container > div {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.mbr-figure img,
|
||||
.card-img img {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@media (max-width: 991px) {
|
||||
.media-size-item {
|
||||
width: auto !important;
|
||||
}
|
||||
.media {
|
||||
width: auto;
|
||||
}
|
||||
.mbr-figure {
|
||||
width: 100% !important;
|
||||
}
|
||||
}
|
||||
/*! Buttons */
|
||||
.mbr-section-btn {
|
||||
margin-left: -0.6rem;
|
||||
margin-right: -0.6rem;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
.btn {
|
||||
font-weight: 600;
|
||||
border-width: 1px;
|
||||
font-style: normal;
|
||||
margin: 0.6rem 0.6rem;
|
||||
white-space: normal;
|
||||
transition: all 0.2s ease-in-out;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.btn-sm {
|
||||
font-weight: 600;
|
||||
letter-spacing: 0px;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
.btn-md {
|
||||
font-weight: 600;
|
||||
letter-spacing: 0px;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
.btn-lg {
|
||||
font-weight: 600;
|
||||
letter-spacing: 0px;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
.btn-form {
|
||||
margin: 0;
|
||||
}
|
||||
.btn-form:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
nav .mbr-section-btn {
|
||||
margin-left: 0rem;
|
||||
margin-right: 0rem;
|
||||
}
|
||||
|
||||
/*! Btn icon margin */
|
||||
.btn .mbr-iconfont,
|
||||
.btn.btn-sm .mbr-iconfont {
|
||||
order: 1;
|
||||
cursor: pointer;
|
||||
margin-left: 0.5rem;
|
||||
vertical-align: sub;
|
||||
}
|
||||
|
||||
.btn.btn-md .mbr-iconfont,
|
||||
.btn.btn-md .mbr-iconfont {
|
||||
margin-left: 0.8rem;
|
||||
}
|
||||
|
||||
.mbr-regular {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.mbr-semibold {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.mbr-bold {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
[type=submit] {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/*! Full-screen */
|
||||
.mbr-fullscreen .mbr-overlay {
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.mbr-fullscreen {
|
||||
display: flex;
|
||||
display: -moz-flex;
|
||||
display: -ms-flex;
|
||||
display: -o-flex;
|
||||
align-items: center;
|
||||
min-height: 100vh;
|
||||
padding-top: 3rem;
|
||||
padding-bottom: 3rem;
|
||||
}
|
||||
|
||||
/*! Map */
|
||||
.map {
|
||||
height: 25rem;
|
||||
position: relative;
|
||||
}
|
||||
.map iframe {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
/*! Scroll to top arrow */
|
||||
.mbr-arrow-up {
|
||||
bottom: 25px;
|
||||
right: 90px;
|
||||
position: fixed;
|
||||
text-align: right;
|
||||
z-index: 5000;
|
||||
color: #ffffff;
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
.mbr-arrow-up a {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
border-radius: 50%;
|
||||
color: #fff;
|
||||
display: inline-block;
|
||||
height: 60px;
|
||||
width: 60px;
|
||||
border: 2px solid #fff;
|
||||
outline-style: none !important;
|
||||
position: relative;
|
||||
text-decoration: none;
|
||||
transition: all 0.3s ease-in-out;
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
}
|
||||
.mbr-arrow-up a:hover {
|
||||
background-color: rgba(0, 0, 0, 0.4);
|
||||
}
|
||||
.mbr-arrow-up a i {
|
||||
line-height: 60px;
|
||||
}
|
||||
|
||||
.mbr-arrow-up-icon {
|
||||
display: block;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.mbr-arrow-up-icon::before {
|
||||
content: "›";
|
||||
display: inline-block;
|
||||
font-family: serif;
|
||||
font-size: 22px;
|
||||
line-height: 1;
|
||||
font-style: normal;
|
||||
position: relative;
|
||||
top: 6px;
|
||||
left: -4px;
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
|
||||
/*! Arrow Down */
|
||||
.mbr-arrow {
|
||||
position: absolute;
|
||||
bottom: 45px;
|
||||
left: 50%;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
cursor: pointer;
|
||||
background-color: rgba(80, 80, 80, 0.5);
|
||||
border-radius: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
@media (max-width: 767px) {
|
||||
.mbr-arrow {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.mbr-arrow > a {
|
||||
display: inline-block;
|
||||
text-decoration: none;
|
||||
outline-style: none;
|
||||
animation: arrowdown 1.7s ease-in-out infinite;
|
||||
color: #ffffff;
|
||||
}
|
||||
.mbr-arrow > a > i {
|
||||
position: absolute;
|
||||
top: -2px;
|
||||
left: 15px;
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
#scrollToTop a i::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
display: block;
|
||||
border-bottom: 2.5px solid #fff;
|
||||
border-left: 2.5px solid #fff;
|
||||
width: 27.8%;
|
||||
height: 27.8%;
|
||||
left: 50%;
|
||||
top: 51%;
|
||||
transform: translateY(-30%) translateX(-50%) rotate(135deg);
|
||||
}
|
||||
|
||||
@keyframes arrowdown {
|
||||
0% {
|
||||
transform: translateY(0px);
|
||||
}
|
||||
50% {
|
||||
transform: translateY(-5px);
|
||||
}
|
||||
100% {
|
||||
transform: translateY(0px);
|
||||
}
|
||||
}
|
||||
@media (max-width: 500px) {
|
||||
.mbr-arrow-up {
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
/*Gradients animation*/
|
||||
@keyframes gradient-animation {
|
||||
from {
|
||||
background-position: 0% 100%;
|
||||
animation-timing-function: ease-in-out;
|
||||
}
|
||||
to {
|
||||
background-position: 100% 0%;
|
||||
animation-timing-function: ease-in-out;
|
||||
}
|
||||
}
|
||||
.bg-gradient {
|
||||
background-size: 200% 200%;
|
||||
animation: gradient-animation 5s infinite alternate;
|
||||
-webkit-animation: gradient-animation 5s infinite alternate;
|
||||
}
|
||||
|
||||
.menu .navbar-brand {
|
||||
display: -webkit-flex;
|
||||
}
|
||||
.menu .navbar-brand span {
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
}
|
||||
.menu .navbar-brand .navbar-caption-wrap {
|
||||
display: -webkit-flex;
|
||||
}
|
||||
.menu .navbar-brand .navbar-logo img {
|
||||
display: -webkit-flex;
|
||||
width: auto;
|
||||
}
|
||||
@media (min-width: 768px) and (max-width: 991px) {
|
||||
.menu .navbar-toggleable-sm .navbar-nav {
|
||||
display: -ms-flexbox;
|
||||
}
|
||||
}
|
||||
@media (max-width: 991px) {
|
||||
.menu .navbar-collapse {
|
||||
max-height: 93.5vh;
|
||||
}
|
||||
.menu .navbar-collapse.show {
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
@media (min-width: 992px) {
|
||||
.menu .navbar-nav.nav-dropdown {
|
||||
display: -webkit-flex;
|
||||
}
|
||||
.menu .navbar-toggleable-sm .navbar-collapse {
|
||||
display: -webkit-flex !important;
|
||||
}
|
||||
.menu .collapsed .navbar-collapse {
|
||||
max-height: 93.5vh;
|
||||
}
|
||||
.menu .collapsed .navbar-collapse.show {
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
@media (max-width: 767px) {
|
||||
.menu .navbar-collapse {
|
||||
max-height: 80vh;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-link .mbr-iconfont {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
display: -webkit-flex;
|
||||
-webkit-flex-wrap: wrap;
|
||||
-webkit-align-items: center;
|
||||
-webkit-justify-content: space-between;
|
||||
}
|
||||
|
||||
.navbar-collapse {
|
||||
-webkit-flex-basis: 100%;
|
||||
-webkit-flex-grow: 1;
|
||||
-webkit-align-items: center;
|
||||
}
|
||||
|
||||
.nav-dropdown .link {
|
||||
padding: 0.667em 1.667em !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.nav {
|
||||
display: -webkit-flex;
|
||||
-webkit-flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.row {
|
||||
display: -webkit-flex;
|
||||
-webkit-flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.justify-content-center {
|
||||
-webkit-justify-content: center;
|
||||
}
|
||||
|
||||
.form-inline {
|
||||
display: -webkit-flex;
|
||||
}
|
||||
|
||||
.card-wrapper {
|
||||
-webkit-flex: 1;
|
||||
}
|
||||
|
||||
.carousel-control {
|
||||
z-index: 10;
|
||||
display: -webkit-flex;
|
||||
}
|
||||
|
||||
.carousel-controls {
|
||||
display: -webkit-flex;
|
||||
}
|
||||
|
||||
.media {
|
||||
display: -webkit-flex;
|
||||
}
|
||||
|
||||
.form-group:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.jq-selectbox__select {
|
||||
padding: 7px 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.jq-selectbox__dropdown {
|
||||
overflow: hidden;
|
||||
border-radius: 10px;
|
||||
position: absolute;
|
||||
top: 100%;
|
||||
left: 0 !important;
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.jq-selectbox__trigger-arrow {
|
||||
right: 0;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
.jq-selectbox li {
|
||||
padding: 1.07em 0.5em;
|
||||
}
|
||||
|
||||
input[type=range] {
|
||||
padding-left: 0 !important;
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
|
||||
.modal-dialog,
|
||||
.modal-content {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.modal-dialog .carousel-inner {
|
||||
height: calc(100vh - 1.75rem);
|
||||
}
|
||||
@media (max-width: 575px) {
|
||||
.modal-dialog .carousel-inner {
|
||||
height: calc(100vh - 1rem);
|
||||
}
|
||||
}
|
||||
|
||||
.carousel-item {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.carousel-item img {
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.navbar-toggler {
|
||||
align-self: flex-start;
|
||||
padding: 0.25rem 0.75rem;
|
||||
font-size: 1.25rem;
|
||||
line-height: 1;
|
||||
background: transparent;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 0.25rem;
|
||||
}
|
||||
|
||||
.navbar-toggler:focus,
|
||||
.navbar-toggler:hover {
|
||||
text-decoration: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.navbar-toggler-icon {
|
||||
display: inline-block;
|
||||
width: 1.5em;
|
||||
height: 1.5em;
|
||||
vertical-align: middle;
|
||||
content: "";
|
||||
background: no-repeat center center;
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
|
||||
.navbar-toggler-left {
|
||||
position: absolute;
|
||||
left: 1rem;
|
||||
}
|
||||
|
||||
.navbar-toggler-right {
|
||||
position: absolute;
|
||||
right: 1rem;
|
||||
}
|
||||
|
||||
.card-img {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.menu .navbar.collapsed:not(.beta-menu) {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.carousel-item.active,
|
||||
.carousel-item-next,
|
||||
.carousel-item-prev {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.note-air-layout .dropup .dropdown-menu,
|
||||
.note-air-layout .navbar-fixed-bottom .dropdown .dropdown-menu {
|
||||
bottom: initial !important;
|
||||
}
|
||||
|
||||
html,
|
||||
body {
|
||||
height: auto;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.dropup .dropdown-toggle::after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.form-asterisk {
|
||||
font-family: initial;
|
||||
position: absolute;
|
||||
top: -2px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.form-control-label {
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
margin-bottom: 0.357em;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.alert {
|
||||
color: #ffffff;
|
||||
border-radius: 0;
|
||||
border: 0;
|
||||
font-size: 1.1rem;
|
||||
line-height: 1.5;
|
||||
margin-bottom: 1.875rem;
|
||||
padding: 1.25rem;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
}
|
||||
.alert.alert-form::after {
|
||||
background-color: inherit;
|
||||
bottom: -7px;
|
||||
content: "";
|
||||
display: block;
|
||||
height: 14px;
|
||||
left: 50%;
|
||||
margin-left: -7px;
|
||||
position: absolute;
|
||||
transform: rotate(45deg);
|
||||
width: 14px;
|
||||
}
|
||||
|
||||
.form-control {
|
||||
background-color: #ffffff;
|
||||
background-clip: border-box;
|
||||
color: #232323;
|
||||
line-height: 1rem !important;
|
||||
height: auto;
|
||||
padding: 1.2rem 2rem;
|
||||
transition: border-color 0.25s ease 0s;
|
||||
border: 1px solid transparent !important;
|
||||
border-radius: 4px;
|
||||
box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px 0px, rgba(0, 0, 0, 0.07) 0px 1px 3px 0px, rgba(0, 0, 0, 0.03) 0px 0px 0px 1px;
|
||||
}
|
||||
.form-active .form-control:invalid {
|
||||
border-color: red;
|
||||
}
|
||||
|
||||
.row > * {
|
||||
padding-right: 1rem;
|
||||
padding-left: 1rem;
|
||||
}
|
||||
|
||||
form .row {
|
||||
margin-left: -0.6rem;
|
||||
margin-right: -0.6rem;
|
||||
}
|
||||
form .row [class*=col] {
|
||||
padding-left: 0.6rem;
|
||||
padding-right: 0.6rem;
|
||||
}
|
||||
|
||||
form .mbr-section-btn {
|
||||
padding-left: 0.6rem;
|
||||
padding-right: 0.6rem;
|
||||
}
|
||||
|
||||
form .form-check-input {
|
||||
margin-top: 0.5;
|
||||
}
|
||||
|
||||
textarea.form-control {
|
||||
line-height: 1.5rem !important;
|
||||
}
|
||||
|
||||
.form-group {
|
||||
margin-bottom: 1.2rem;
|
||||
}
|
||||
|
||||
.form-control,
|
||||
form .btn {
|
||||
min-height: 48px;
|
||||
}
|
||||
|
||||
.gdpr-block label span.textGDPR input[name=gdpr] {
|
||||
top: 7px;
|
||||
}
|
||||
|
||||
.form-control:focus {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.mbr-overlay {
|
||||
background-color: #000;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
opacity: 0.5;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
z-index: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-style: italic;
|
||||
padding: 3rem;
|
||||
font-size: 1.09rem;
|
||||
position: relative;
|
||||
border-left: 3px solid;
|
||||
}
|
||||
|
||||
ul,
|
||||
ol,
|
||||
pre,
|
||||
blockquote {
|
||||
margin-bottom: 2.3125rem;
|
||||
}
|
||||
|
||||
.mt-4 {
|
||||
margin-top: 2rem !important;
|
||||
}
|
||||
|
||||
.mb-4 {
|
||||
margin-bottom: 2rem !important;
|
||||
}
|
||||
|
||||
.container,
|
||||
.container-fluid {
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
}
|
||||
|
||||
.row {
|
||||
margin-left: -16px;
|
||||
margin-right: -16px;
|
||||
}
|
||||
.row > [class*=col] {
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
.container-fluid {
|
||||
padding-left: 32px;
|
||||
padding-right: 32px;
|
||||
}
|
||||
}
|
||||
@media (max-width: 991px) {
|
||||
.mbr-container {
|
||||
padding-left: 16px;
|
||||
padding-right: 16px;
|
||||
}
|
||||
}
|
||||
.app-video-wrapper > img {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.app-video-wrapper {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.item {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.dropdown-menu .dropdown-menu {
|
||||
left: 100%;
|
||||
}
|
||||
|
||||
.dropdown-item + .dropdown-menu {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dropdown-item:hover + .dropdown-menu,
|
||||
.dropdown-menu:hover {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@media (min-aspect-ratio: 16/9) {
|
||||
.mbr-video-foreground {
|
||||
height: 300% !important;
|
||||
top: -100% !important;
|
||||
}
|
||||
}
|
||||
@media (max-aspect-ratio: 16/9) {
|
||||
.mbr-video-foreground {
|
||||
width: 300% !important;
|
||||
left: -100% !important;
|
||||
}
|
||||
}
|
||||
1698
src/assets/theme/js/script.js
Executable file
498
src/assets/web/assets/mobirise-icons2/mobirise2.css
Executable file
@@ -0,0 +1,498 @@
|
||||
@font-face {
|
||||
font-family: 'Moririse2';
|
||||
font-display: swap;
|
||||
src: url('mobirise2.eot?f2bix4');
|
||||
src: url('mobirise2.eot?f2bix4#iefix') format('embedded-opentype'),
|
||||
url('mobirise2.ttf?f2bix4') format('truetype'),
|
||||
url('mobirise2.woff?f2bix4') format('woff'),
|
||||
url('mobirise2.svg?f2bix4#mobirise2') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
[class^="mobi-"], [class*=" mobi-"] {
|
||||
/* use !important to prevent issues with browser extensions that change fonts */
|
||||
font-family: 'Moririse2' !important;
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
|
||||
/* Better Font Rendering =========== */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.mobi-mbri-add-submenu:before {
|
||||
content: "\e900";
|
||||
}
|
||||
.mobi-mbri-alert:before {
|
||||
content: "\e901";
|
||||
}
|
||||
.mobi-mbri-align-center:before {
|
||||
content: "\e902";
|
||||
}
|
||||
.mobi-mbri-align-justify:before {
|
||||
content: "\e903";
|
||||
}
|
||||
.mobi-mbri-align-left:before {
|
||||
content: "\e904";
|
||||
}
|
||||
.mobi-mbri-align-right:before {
|
||||
content: "\e905";
|
||||
}
|
||||
.mobi-mbri-android:before {
|
||||
content: "\e906";
|
||||
}
|
||||
.mobi-mbri-apple:before {
|
||||
content: "\e907";
|
||||
}
|
||||
.mobi-mbri-arrow-down:before {
|
||||
content: "\e908";
|
||||
}
|
||||
.mobi-mbri-arrow-next:before {
|
||||
content: "\e909";
|
||||
}
|
||||
.mobi-mbri-arrow-prev:before {
|
||||
content: "\e90a";
|
||||
}
|
||||
.mobi-mbri-arrow-up:before {
|
||||
content: "\e90b";
|
||||
}
|
||||
.mobi-mbri-bold:before {
|
||||
content: "\e90c";
|
||||
}
|
||||
.mobi-mbri-bookmark:before {
|
||||
content: "\e90d";
|
||||
}
|
||||
.mobi-mbri-bootstrap:before {
|
||||
content: "\e90e";
|
||||
}
|
||||
.mobi-mbri-briefcase:before {
|
||||
content: "\e90f";
|
||||
}
|
||||
.mobi-mbri-browse:before {
|
||||
content: "\e910";
|
||||
}
|
||||
.mobi-mbri-bulleted-list:before {
|
||||
content: "\e911";
|
||||
}
|
||||
.mobi-mbri-calendar:before {
|
||||
content: "\e912";
|
||||
}
|
||||
.mobi-mbri-camera:before {
|
||||
content: "\e913";
|
||||
}
|
||||
.mobi-mbri-cart-add:before {
|
||||
content: "\e914";
|
||||
}
|
||||
.mobi-mbri-cart-full:before {
|
||||
content: "\e915";
|
||||
}
|
||||
.mobi-mbri-cash:before {
|
||||
content: "\e916";
|
||||
}
|
||||
.mobi-mbri-change-style:before {
|
||||
content: "\e917";
|
||||
}
|
||||
.mobi-mbri-chat:before {
|
||||
content: "\e918";
|
||||
}
|
||||
.mobi-mbri-clock:before {
|
||||
content: "\e919";
|
||||
}
|
||||
.mobi-mbri-close:before {
|
||||
content: "\e91a";
|
||||
}
|
||||
.mobi-mbri-cloud:before {
|
||||
content: "\e91b";
|
||||
}
|
||||
.mobi-mbri-code:before {
|
||||
content: "\e91c";
|
||||
}
|
||||
.mobi-mbri-contact-form:before {
|
||||
content: "\e91d";
|
||||
}
|
||||
.mobi-mbri-credit-card:before {
|
||||
content: "\e91e";
|
||||
}
|
||||
.mobi-mbri-cursor-click:before {
|
||||
content: "\e91f";
|
||||
}
|
||||
.mobi-mbri-cust-feedback:before {
|
||||
content: "\e920";
|
||||
}
|
||||
.mobi-mbri-database:before {
|
||||
content: "\e921";
|
||||
}
|
||||
.mobi-mbri-delivery:before {
|
||||
content: "\e922";
|
||||
}
|
||||
.mobi-mbri-desktop:before {
|
||||
content: "\e923";
|
||||
}
|
||||
.mobi-mbri-devices:before {
|
||||
content: "\e924";
|
||||
}
|
||||
.mobi-mbri-down:before {
|
||||
content: "\e925";
|
||||
}
|
||||
.mobi-mbri-download-2:before {
|
||||
content: "\e926";
|
||||
}
|
||||
.mobi-mbri-download:before {
|
||||
content: "\e927";
|
||||
}
|
||||
.mobi-mbri-drag-n-drop-2:before {
|
||||
content: "\e928";
|
||||
}
|
||||
.mobi-mbri-drag-n-drop:before {
|
||||
content: "\e929";
|
||||
}
|
||||
.mobi-mbri-edit-2:before {
|
||||
content: "\e92a";
|
||||
}
|
||||
.mobi-mbri-edit:before {
|
||||
content: "\e92b";
|
||||
}
|
||||
.mobi-mbri-error:before {
|
||||
content: "\e92c";
|
||||
}
|
||||
.mobi-mbri-extension:before {
|
||||
content: "\e92d";
|
||||
}
|
||||
.mobi-mbri-features:before {
|
||||
content: "\e92e";
|
||||
}
|
||||
.mobi-mbri-file:before {
|
||||
content: "\e92f";
|
||||
}
|
||||
.mobi-mbri-flag:before {
|
||||
content: "\e930";
|
||||
}
|
||||
.mobi-mbri-folder:before {
|
||||
content: "\e931";
|
||||
}
|
||||
.mobi-mbri-gift:before {
|
||||
content: "\e932";
|
||||
}
|
||||
.mobi-mbri-github:before {
|
||||
content: "\e933";
|
||||
}
|
||||
.mobi-mbri-globe-2:before {
|
||||
content: "\e934";
|
||||
}
|
||||
.mobi-mbri-globe:before {
|
||||
content: "\e935";
|
||||
}
|
||||
.mobi-mbri-growing-chart:before {
|
||||
content: "\e936";
|
||||
}
|
||||
.mobi-mbri-hearth:before {
|
||||
content: "\e937";
|
||||
}
|
||||
.mobi-mbri-help:before {
|
||||
content: "\e938";
|
||||
}
|
||||
.mobi-mbri-home:before {
|
||||
content: "\e939";
|
||||
}
|
||||
.mobi-mbri-hot-cup:before {
|
||||
content: "\e93a";
|
||||
}
|
||||
.mobi-mbri-idea:before {
|
||||
content: "\e93b";
|
||||
}
|
||||
.mobi-mbri-image-gallery:before {
|
||||
content: "\e93c";
|
||||
}
|
||||
.mobi-mbri-image-slider:before {
|
||||
content: "\e93d";
|
||||
}
|
||||
.mobi-mbri-info:before {
|
||||
content: "\e93e";
|
||||
}
|
||||
.mobi-mbri-italic:before {
|
||||
content: "\e93f";
|
||||
}
|
||||
.mobi-mbri-key:before {
|
||||
content: "\e940";
|
||||
}
|
||||
.mobi-mbri-laptop:before {
|
||||
content: "\e941";
|
||||
}
|
||||
.mobi-mbri-layers:before {
|
||||
content: "\e942";
|
||||
}
|
||||
.mobi-mbri-left-right:before {
|
||||
content: "\e943";
|
||||
}
|
||||
.mobi-mbri-left:before {
|
||||
content: "\e944";
|
||||
}
|
||||
.mobi-mbri-letter:before {
|
||||
content: "\e945";
|
||||
}
|
||||
.mobi-mbri-like:before {
|
||||
content: "\e946";
|
||||
}
|
||||
.mobi-mbri-link:before {
|
||||
content: "\e947";
|
||||
}
|
||||
.mobi-mbri-lock:before {
|
||||
content: "\e948";
|
||||
}
|
||||
.mobi-mbri-login:before {
|
||||
content: "\e949";
|
||||
}
|
||||
.mobi-mbri-logout:before {
|
||||
content: "\e94a";
|
||||
}
|
||||
.mobi-mbri-magic-stick:before {
|
||||
content: "\e94b";
|
||||
}
|
||||
.mobi-mbri-map-pin:before {
|
||||
content: "\e94c";
|
||||
}
|
||||
.mobi-mbri-menu:before {
|
||||
content: "\e94d";
|
||||
}
|
||||
.mobi-mbri-mobile-2:before {
|
||||
content: "\e94e";
|
||||
}
|
||||
.mobi-mbri-mobile-horizontal:before {
|
||||
content: "\e94f";
|
||||
}
|
||||
.mobi-mbri-mobile:before {
|
||||
content: "\e950";
|
||||
}
|
||||
.mobi-mbri-mobirise:before {
|
||||
content: "\e951";
|
||||
}
|
||||
.mobi-mbri-more-horizontal:before {
|
||||
content: "\e952";
|
||||
}
|
||||
.mobi-mbri-more-vertical:before {
|
||||
content: "\e953";
|
||||
}
|
||||
.mobi-mbri-music:before {
|
||||
content: "\e954";
|
||||
}
|
||||
.mobi-mbri-new-file:before {
|
||||
content: "\e955";
|
||||
}
|
||||
.mobi-mbri-numbered-list:before {
|
||||
content: "\e956";
|
||||
}
|
||||
.mobi-mbri-opened-folder:before {
|
||||
content: "\e957";
|
||||
}
|
||||
.mobi-mbri-pages:before {
|
||||
content: "\e958";
|
||||
}
|
||||
.mobi-mbri-paper-plane:before {
|
||||
content: "\e959";
|
||||
}
|
||||
.mobi-mbri-paperclip:before {
|
||||
content: "\e95a";
|
||||
}
|
||||
.mobi-mbri-phone:before {
|
||||
content: "\e95b";
|
||||
}
|
||||
.mobi-mbri-photo:before {
|
||||
content: "\e95c";
|
||||
}
|
||||
.mobi-mbri-photos:before {
|
||||
content: "\e95d";
|
||||
}
|
||||
.mobi-mbri-pin:before {
|
||||
content: "\e95e";
|
||||
}
|
||||
.mobi-mbri-play:before {
|
||||
content: "\e95f";
|
||||
}
|
||||
.mobi-mbri-plus:before {
|
||||
content: "\e960";
|
||||
}
|
||||
.mobi-mbri-preview:before {
|
||||
content: "\e961";
|
||||
}
|
||||
.mobi-mbri-print:before {
|
||||
content: "\e962";
|
||||
}
|
||||
.mobi-mbri-protect:before {
|
||||
content: "\e963";
|
||||
}
|
||||
.mobi-mbri-question:before {
|
||||
content: "\e964";
|
||||
}
|
||||
.mobi-mbri-quote-left:before {
|
||||
content: "\e965";
|
||||
}
|
||||
.mobi-mbri-quote-right:before {
|
||||
content: "\e966";
|
||||
}
|
||||
.mobi-mbri-redo:before {
|
||||
content: "\e967";
|
||||
}
|
||||
.mobi-mbri-refresh:before {
|
||||
content: "\e968";
|
||||
}
|
||||
.mobi-mbri-responsive-2:before {
|
||||
content: "\e969";
|
||||
}
|
||||
.mobi-mbri-responsive:before {
|
||||
content: "\e96a";
|
||||
}
|
||||
.mobi-mbri-right:before {
|
||||
content: "\e96b";
|
||||
}
|
||||
.mobi-mbri-rocket:before {
|
||||
content: "\e96c";
|
||||
}
|
||||
.mobi-mbri-sad-face:before {
|
||||
content: "\e96d";
|
||||
}
|
||||
.mobi-mbri-sale:before {
|
||||
content: "\e96e";
|
||||
}
|
||||
.mobi-mbri-save:before {
|
||||
content: "\e96f";
|
||||
}
|
||||
.mobi-mbri-search:before {
|
||||
content: "\e970";
|
||||
}
|
||||
.mobi-mbri-setting-2:before {
|
||||
content: "\e971";
|
||||
}
|
||||
.mobi-mbri-setting-3:before {
|
||||
content: "\e972";
|
||||
}
|
||||
.mobi-mbri-setting:before {
|
||||
content: "\e973";
|
||||
}
|
||||
.mobi-mbri-share:before {
|
||||
content: "\e974";
|
||||
}
|
||||
.mobi-mbri-shopping-bag:before {
|
||||
content: "\e975";
|
||||
}
|
||||
.mobi-mbri-shopping-basket:before {
|
||||
content: "\e976";
|
||||
}
|
||||
.mobi-mbri-shopping-cart:before {
|
||||
content: "\e977";
|
||||
}
|
||||
.mobi-mbri-sites:before {
|
||||
content: "\e978";
|
||||
}
|
||||
.mobi-mbri-smile-face:before {
|
||||
content: "\e979";
|
||||
}
|
||||
.mobi-mbri-speed:before {
|
||||
content: "\e97a";
|
||||
}
|
||||
.mobi-mbri-star:before {
|
||||
content: "\e97b";
|
||||
}
|
||||
.mobi-mbri-success:before {
|
||||
content: "\e97c";
|
||||
}
|
||||
.mobi-mbri-sun:before {
|
||||
content: "\e97d";
|
||||
}
|
||||
.mobi-mbri-sun2:before {
|
||||
content: "\e97e";
|
||||
}
|
||||
.mobi-mbri-tablet-vertical:before {
|
||||
content: "\e97f";
|
||||
}
|
||||
.mobi-mbri-tablet:before {
|
||||
content: "\e980";
|
||||
}
|
||||
.mobi-mbri-target:before {
|
||||
content: "\e981";
|
||||
}
|
||||
.mobi-mbri-timer:before {
|
||||
content: "\e982";
|
||||
}
|
||||
.mobi-mbri-to-ftp:before {
|
||||
content: "\e983";
|
||||
}
|
||||
.mobi-mbri-to-local-drive:before {
|
||||
content: "\e984";
|
||||
}
|
||||
.mobi-mbri-touch-swipe:before {
|
||||
content: "\e985";
|
||||
}
|
||||
.mobi-mbri-touch:before {
|
||||
content: "\e986";
|
||||
}
|
||||
.mobi-mbri-trash:before {
|
||||
content: "\e987";
|
||||
}
|
||||
.mobi-mbri-underline:before {
|
||||
content: "\e988";
|
||||
}
|
||||
.mobi-mbri-undo:before {
|
||||
content: "\e989";
|
||||
}
|
||||
.mobi-mbri-unlink:before {
|
||||
content: "\e98a";
|
||||
}
|
||||
.mobi-mbri-unlock:before {
|
||||
content: "\e98b";
|
||||
}
|
||||
.mobi-mbri-up-down:before {
|
||||
content: "\e98c";
|
||||
}
|
||||
.mobi-mbri-up:before {
|
||||
content: "\e98d";
|
||||
}
|
||||
.mobi-mbri-update:before {
|
||||
content: "\e98e";
|
||||
}
|
||||
.mobi-mbri-upload-2:before {
|
||||
content: "\e98f";
|
||||
}
|
||||
.mobi-mbri-upload:before {
|
||||
content: "\e990";
|
||||
}
|
||||
.mobi-mbri-user-2:before {
|
||||
content: "\e991";
|
||||
}
|
||||
.mobi-mbri-user:before {
|
||||
content: "\e992";
|
||||
}
|
||||
.mobi-mbri-users:before {
|
||||
content: "\e993";
|
||||
}
|
||||
.mobi-mbri-video-play:before {
|
||||
content: "\e994";
|
||||
}
|
||||
.mobi-mbri-video:before {
|
||||
content: "\e995";
|
||||
}
|
||||
.mobi-mbri-watch:before {
|
||||
content: "\e996";
|
||||
}
|
||||
.mobi-mbri-website-theme-2:before {
|
||||
content: "\e997";
|
||||
}
|
||||
.mobi-mbri-website-theme:before {
|
||||
content: "\e998";
|
||||
}
|
||||
.mobi-mbri-wifi:before {
|
||||
content: "\e999";
|
||||
}
|
||||
.mobi-mbri-windows:before {
|
||||
content: "\e99a";
|
||||
}
|
||||
.mobi-mbri-zoom-in:before {
|
||||
content: "\e99b";
|
||||
}
|
||||
.mobi-mbri-zoom-out:before {
|
||||
content: "\e99c";
|
||||
}
|
||||
BIN
src/assets/web/assets/mobirise-icons2/mobirise2.eot
Executable file
167
src/assets/web/assets/mobirise-icons2/mobirise2.svg
Executable file
@@ -0,0 +1,167 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Generated by IcoMoon</metadata>
|
||||
<defs>
|
||||
<font id="mobirise-24px" horiz-adv-x="1024">
|
||||
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
||||
<missing-glyph horiz-adv-x="1024" />
|
||||
<glyph unicode=" " horiz-adv-x="512" d="" />
|
||||
<glyph unicode="" glyph-name="mbri-add-submenu" d="M853.333 917.333h-853.333v-256h853.333v256zM768 746.667h-682.667v85.333h682.667v-85.333zM853.333 576h-853.333v-256h853.333v256zM768 405.333h-682.667v85.333h682.667v-85.333zM512 234.667v-256h512v256h-512zM938.667 64h-341.333v85.333h341.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-alert" d="M810.667 192v341.333c0 166.4-132.267 298.667-298.667 298.667s-298.667-132.267-298.667-298.667v-341.333h-85.333v-85.333h256c0-72.533 55.467-128 128-128s128 55.467 128 128h256v85.333h-85.333zM512 64c-25.6 0-42.667 17.067-42.667 42.667h85.333c0-25.6-17.067-42.667-42.667-42.667zM725.333 192h-426.667v341.333c0 119.467 93.867 213.333 213.333 213.333s213.333-93.867 213.333-213.333v-341.333zM128 533.333h-85.333c0 123.733 46.933 243.2 136.533 332.8l59.733-59.733c-72.533-72.533-110.933-170.667-110.933-273.067zM981.333 533.333h-85.333c0 102.4-38.4 200.533-110.933 273.067l59.733 59.733c89.6-89.6 136.533-209.067 136.533-332.8z" />
|
||||
<glyph unicode="" glyph-name="mbri-align-center" d="M768 704h-512v85.333h512v-85.333zM1024 576h-1024v-85.333h1024v85.333zM768 362.667h-512v-85.333h512v85.333zM1024 149.333h-1024v-85.333h1024v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-align-justify" d="M1024 704h-1024v85.333h1024v-85.333zM1024 576h-1024v-85.333h1024v85.333zM1024 362.667h-1024v-85.333h1024v85.333zM1024 149.333h-1024v-85.333h1024v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-align-left" d="M1024 704h-1024v85.333h1024v-85.333zM597.333 576h-597.333v-85.333h597.333v85.333zM1024 362.667h-1024v-85.333h1024v85.333zM597.333 149.333h-597.333v-85.333h597.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-align-right" d="M1024 721.067h-1024v68.267h1024v-68.267zM1024 584.533h-614.4v-68.267h614.4v68.267zM1024 379.733h-1024v-68.267h1024v68.267zM1024 174.933h-614.4v-68.267h614.4v68.267z" />
|
||||
<glyph unicode="" glyph-name="mbri-android" d="M738.133 789.333l68.267 106.667-72.533 46.933-64-102.4c-51.2 21.333-102.4 34.133-157.867 34.133s-106.667-12.8-153.6-38.4l-68.267 102.4-68.267-42.667 64-106.667c-68.267-64-115.2-153.6-115.2-256v-469.333h128v-128h85.333v128h256v-128h85.333v128h128v469.333c0 102.4-46.933 192-115.2 256zM512 789.333c128 0 230.4-93.867 251.733-213.333h-503.467c21.333 119.467 123.733 213.333 251.733 213.333zM768 149.333h-512v341.333h512v-341.333zM42.667 448h85.333v-256h-85.333v256zM981.333 448v-256h-85.333v256h85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-apple" d="M853.333 405.333c0 51.2 21.333 89.6 64 119.467l25.6 17.067-8.533 29.867c-17.067 51.2-51.2 93.867-98.133 123.733-46.933 34.133-102.4 51.2-153.6 51.2-34.133 0-59.733-12.8-81.067-21.333-25.6-12.8-51.2-21.333-89.6-21.333s-59.733 8.533-76.8 21.333c-21.333 8.533-46.933 21.333-93.867 21.333-72.533 0-136.533-29.867-183.467-85.333-46.933-59.733-72.533-149.333-72.533-256 0-102.4 34.133-217.6 89.6-315.733 25.6-42.667 51.2-81.067 81.067-106.667 29.867-29.867 59.733-46.933 85.333-46.933 46.933 0 72.533 8.533 102.4 21.333 0 0 42.667 21.333 68.267 21.333s42.667-8.533 64-17.067c0 0 59.733-25.6 106.667-25.6 25.6 0 59.733 21.333 72.533 29.867 21.333 17.067 46.933 42.667 72.533 72.533 51.2 59.733 89.6 132.267 106.667 200.533l8.533 29.867-25.6 17.067c-42.667 25.6-64 68.267-64 119.467zM759.467 89.6c-38.4-51.2-64-68.267-81.067-68.267-29.867 0-68.267 17.067-68.267 17.067-25.6 12.8-55.467 25.6-98.133 25.6s-102.4-25.6-102.4-25.6c-21.333-8.533-38.4-17.067-64-17.067-29.867 0-76.8 72.533-98.133 110.933-46.933 81.067-76.8 187.733-76.8 273.067 0 89.6 17.067 157.867 55.467 200.533 29.867 38.4 68.267 55.467 115.2 55.467 25.6 0 34.133-4.267 55.467-12.8 21.333-12.8 55.467-29.867 115.2-29.867 55.467 0 93.867 17.067 123.733 29.867 17.067 8.533 29.867 12.8 46.933 12.8 34.133 0 72.533-12.8 102.4-34.133 21.333-17.067 38.4-34.133 51.2-55.467-46.933-42.667-72.533-102.4-72.533-166.4 0-68.267 25.6-128 72.533-170.667-12.8-51.2-46.933-98.133-76.8-145.067zM541.867 759.467l-59.733 59.733 128 128 59.733-59.733-128-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-arrow-down" d="M59.733 763.733l452.267-452.267 452.267 452.267 59.733-59.733-512-512-512 512z" />
|
||||
<glyph unicode="" glyph-name="mbri-arrow-next" d="M196.267-4.267l452.267 452.267-452.267 452.267 59.733 59.733 512-512-512-512z" />
|
||||
<glyph unicode="" glyph-name="mbri-arrow-prev" d="M827.733 900.267l-452.267-452.267 452.267-452.267-59.733-59.733-512 512 512 512z" />
|
||||
<glyph unicode="" glyph-name="mbri-arrow-up" d="M964.267 174.933l-452.267 452.267-452.267-452.267-59.733 59.733 512 512 512-512z" />
|
||||
<glyph unicode="" glyph-name="mbri-bold" d="M674.133 507.733c59.733 46.933 93.867 119.467 93.867 196.267 0 140.8-115.2 256-256 256h-298.667v-1024h341.333c166.4 0 298.667 132.267 298.667 298.667 0 119.467-72.533 226.133-179.2 273.067zM298.667 874.667h213.333c93.867 0 170.667-76.8 170.667-170.667s-76.8-170.667-170.667-170.667h-213.333v341.333zM554.667 21.333h-256v426.667h256c119.467 0 213.333-93.867 213.333-213.333s-93.867-213.333-213.333-213.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-bookmark" d="M853.333-59.733l-341.333 243.2-341.333-243.2v1019.733h682.667v-1019.733zM512 285.867l256-183.467v772.267h-512v-772.267l256 183.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-bootstrap" d="M0 960v-1024h1024v1024h-1024zM938.667 21.333h-853.333v853.333h853.333v-853.333zM725.333 320c0 64-34.133 115.2-85.333 145.067 25.6 29.867 42.667 68.267 42.667 110.933 0 93.867-76.8 170.667-170.667 170.667h-170.667v-597.333h213.333c93.867 0 170.667 76.8 170.667 170.667zM426.667 661.333h85.333c46.933 0 85.333-38.4 85.333-85.333s-38.4-85.333-85.333-85.333h-85.333v170.667zM426.667 405.333h128c46.933 0 85.333-38.4 85.333-85.333s-38.4-85.333-85.333-85.333h-128v170.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-briefcase" d="M725.333 704v170.667h-426.667v-170.667h-298.667v-682.667h1024v682.667h-298.667zM384 789.333h256v-85.333h-256v85.333zM938.667 106.667h-853.333v298.667h853.333v-298.667zM938.667 490.667h-853.333v128h853.333v-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-browse" d="M0 832v-768h1024v768h-1024zM938.667 149.333h-853.333v426.667h853.333v-426.667zM938.667 661.333h-853.333v85.333h853.333v-85.333zM358.4 192l98.133 98.133c17.067-8.533 34.133-12.8 55.467-12.8 72.533 0 128 55.467 128 128s-55.467 128-128 128-128-55.467-128-128c0-21.333 4.267-38.4 12.8-55.467l-98.133-98.133 59.733-59.733zM512 448c25.6 0 42.667-17.067 42.667-42.667s-17.067-42.667-42.667-42.667-42.667 17.067-42.667 42.667 17.067 42.667 42.667 42.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-bulleted-list" d="M128 661.333c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128zM128 832c-25.6 0-42.667-17.067-42.667-42.667s17.067-42.667 42.667-42.667 42.667 17.067 42.667 42.667-17.067 42.667-42.667 42.667zM128 320c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128zM128 490.667c-25.6 0-42.667-17.067-42.667-42.667s17.067-42.667 42.667-42.667 42.667 17.067 42.667 42.667-17.067 42.667-42.667 42.667zM128-21.333c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128zM128 149.333c-25.6 0-42.667-17.067-42.667-42.667s17.067-42.667 42.667-42.667 42.667 17.067 42.667 42.667-17.067 42.667-42.667 42.667zM1024 832h-682.667v-85.333h682.667v85.333zM1024 490.667h-682.667v-85.333h682.667v85.333zM1024 149.333h-682.667v-85.333h682.667v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-calendar" d="M810.667 832v42.667h-85.333v-42.667h-426.667v42.667h-85.333v-42.667h-213.333v-810.667h1024v810.667h-213.333zM938.667 106.667h-853.333v640h128v-42.667h85.333v42.667h426.667v-42.667h85.333v42.667h128v-640zM213.333 448h85.333v-85.333h-85.333v85.333zM384 448h85.333v-85.333h-85.333v85.333zM554.667 448h85.333v-85.333h-85.333v85.333zM725.333 448h85.333v-85.333h-85.333v85.333zM213.333 618.667h85.333v-85.333h-85.333v85.333zM384 618.667h85.333v-85.333h-85.333v85.333zM554.667 618.667h85.333v-85.333h-85.333v85.333zM725.333 618.667h85.333v-85.333h-85.333v85.333zM213.333 277.333h85.333v-85.333h-85.333v85.333zM384 277.333h85.333v-85.333h-85.333v85.333zM554.667 277.333h85.333v-85.333h-85.333v85.333zM725.333 277.333h85.333v-85.333h-85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-camera" d="M755.2 704l-42.667 128h-401.067l-42.667-128h-268.8v-640h1024v640h-268.8zM938.667 149.333h-853.333v469.333h243.2l42.667 128h281.6l42.667-128h243.2v-469.333zM512 618.667c-119.467 0-213.333-93.867-213.333-213.333s93.867-213.333 213.333-213.333 213.333 93.867 213.333 213.333-93.867 213.333-213.333 213.333zM512 277.333c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-cart-add" d="M981.333 704l-51.2-384h-657.067l17.067-85.333h605.867v-85.333h-674.133l-128 640h-93.867v85.333h162.133l93.867-469.333h597.333l42.667 298.667zM341.333 106.667c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333zM768 106.667c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333zM695.467 750.933l59.733-59.733-200.533-200.533-200.533 200.533 59.733 59.733 98.133-98.133v307.2h85.333v-307.2l98.133 98.133z" />
|
||||
<glyph unicode="" glyph-name="mbri-cart-full" d="M896 149.333h-674.133l-128 640h-93.867v85.333h162.133l34.133-170.667h785.067l-51.2-384h-657.067l17.067-85.333h605.867v-85.333zM256 405.333h597.333l29.867 213.333h-669.867l42.667-213.333zM341.333 106.667c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333zM768 106.667c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333zM810.667 874.667h-469.333v-85.333h469.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-cash" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-234.667 0-426.667 192-426.667 426.667s192 426.667 426.667 426.667 426.667-192 426.667-426.667-192-426.667-426.667-426.667zM725.333 341.333c0-81.067-68.267-149.333-149.333-149.333h-21.333v-85.333h-85.333v85.333h-128v85.333h234.667c34.133 0 64 29.867 64 64s-29.867 64-64 64h-128c-81.067 0-149.333 68.267-149.333 149.333s68.267 149.333 149.333 149.333h21.333v85.333h85.333v-85.333h128v-85.333h-234.667c-34.133 0-64-29.867-64-64s29.867-64 64-64h128c81.067 0 149.333-68.267 149.333-149.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-change-style" d="M512 960c-281.6 0-512-230.4-512-512 0-68.267 12.8-119.467 34.133-153.6 21.333-38.4 55.467-59.733 93.867-59.733 68.267 0 128 59.733 128 128 0 46.933 38.4 85.333 85.333 85.333s85.333-38.4 85.333-85.333-38.4-85.333-85.333-85.333c-68.267 0-128-68.267-128-145.067 0-55.467 25.6-102.4 72.533-136.533 51.2-38.4 128-59.733 226.133-59.733 281.6 0 512 230.4 512 512s-230.4 512-512 512zM512 21.333c-98.133 0-149.333 21.333-174.933 42.667-34.133 21.333-38.4 46.933-38.4 68.267 0 29.867 21.333 59.733 42.667 59.733 93.867 0 170.667 76.8 170.667 170.667s-76.8 170.667-170.667 170.667-170.667-76.8-170.667-170.667c0-21.333-21.333-42.667-42.667-42.667-4.267 0-12.8 0-21.333 17.067s-21.333 46.933-21.333 110.933c0 234.667 192 426.667 426.667 426.667s426.667-192 426.667-426.667-192-426.667-426.667-426.667zM725.333 170.667c0-34.133-29.867-64-64-64s-64 29.867-64 64 29.867 64 64 64 64-29.867 64-64zM512 768c0-34.133-29.867-64-64-64s-64 29.867-64 64 29.867 64 64 64 64-29.867 64-64zM597.333 725.333c0 34.133 29.867 64 64 64s64-29.867 64-64-29.867-64-64-64-64 29.867-64 64zM725.333 554.667c0 34.133 29.867 64 64 64s64-29.867 64-64-29.867-64-64-64-64 29.867-64 64zM853.333 341.333c0-34.133-29.867-64-64-64s-64 29.867-64 64 29.867 64 64 64 64-29.867 64-64z" />
|
||||
<glyph unicode="" glyph-name="mbri-chat" d="M0-38.4v913.067h1024v-640h-750.933l-273.067-273.067zM85.333 789.333v-622.933l153.6 153.6h699.733v469.333h-853.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-clock" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-234.667 0-426.667 192-426.667 426.667s192 426.667 426.667 426.667 426.667-192 426.667-426.667-192-426.667-426.667-426.667zM469.333 789.333h85.333v-384h-256v85.333h170.667v298.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-close" d="M571.733 448l439.467-439.467-59.733-59.733-439.467 439.467-439.467-439.467-59.733 59.733 439.467 439.467-439.467 439.467 59.733 59.733 439.467-439.467 439.467 439.467 59.733-59.733-439.467-439.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-cloud" d="M853.333 106.667h-597.333c-140.8 0-256 115.2-256 256 0 136.533 110.933 251.733 247.467 256 59.733 128 187.733 213.333 328.533 213.333 200.533 0 362.667-162.133 362.667-362.667 0-12.8 0-29.867-4.267-42.667 51.2-29.867 89.6-85.333 89.6-149.333 0-93.867-76.8-170.667-170.667-170.667zM256 533.333c-93.867 0-170.667-76.8-170.667-170.667s76.8-170.667 170.667-170.667h597.333c46.933 0 85.333 38.4 85.333 85.333 0 38.4-25.6 72.533-64 81.067l-38.4 12.8 8.533 38.4c4.267 21.333 8.533 42.667 8.533 59.733 0 153.6-123.733 277.333-277.333 277.333-115.2 0-221.867-72.533-260.267-183.467l-12.8-29.867h-46.933z" />
|
||||
<glyph unicode="" glyph-name="mbri-code" d="M260.267 588.8l-140.8-140.8 140.8-140.8-59.733-59.733-200.533 200.533 200.533 200.533 59.733-59.733zM823.467 648.533l-59.733-59.733 140.8-140.8-140.8-140.8 59.733-59.733 200.533 200.533-200.533 200.533zM345.6 166.4l76.8-34.133 256 597.333-76.8 34.133-256-597.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-contact-form" d="M640 704h-426.667v85.333h426.667v-85.333zM640 618.667h-426.667v-85.333h426.667v85.333zM426.667 448h-213.333v-85.333h213.333v85.333zM810.667 345.6v-409.6h-768v1024h768v-324.267l68.267 68.267 145.067-145.067-213.333-213.333zM878.933 584.533l-366.933-366.933v-25.6h25.6l366.933 366.933-25.6 25.6zM725.333 260.267l-153.6-153.6h-145.067v145.067l298.667 298.667v324.267h-597.333v-853.333h597.333v238.933z" />
|
||||
<glyph unicode="" glyph-name="mbri-credit-card" d="M0 789.333v-640h1024v640h-1024zM938.667 234.667h-853.333v298.667h853.333v-298.667zM938.667 618.667h-853.333v85.333h853.333v-85.333zM512 320h-341.333v85.333h341.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-cursor-click" d="M998.4 234.667l-571.733 571.733v-802.133l200.533 200.533 102.4-238.933 76.8 34.133-102.4 234.667h294.4zM512 601.6l281.6-281.6h-170.667l-110.933-110.933v392.533zM512 874.667h-85.333v85.333h85.333v-85.333zM256 618.667h-85.333v85.333h85.333v-85.333zM682.667 704h85.333v-85.333h-85.333v85.333zM290.133 541.867l59.733-59.733-59.733-59.733-59.733 59.733 59.733 59.733zM648.533 780.8l-59.733 59.733 59.733 59.733 59.733-59.733-59.733-59.733zM290.133 904.533l59.733-59.733-59.733-64-64 59.733 64 64z" />
|
||||
<glyph unicode="" glyph-name="mbri-cust-feedback" d="M0 874.667v-913.067l273.067 273.067h750.933v640h-1024zM938.667 320h-699.733l-153.6-153.6v622.933h853.333v-469.333zM469.333 388.267l-157.867 157.867 59.733 59.733 98.133-98.133 226.133 226.133 59.733-59.733-285.867-285.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-database" d="M512 960c-217.6 0-384-81.067-384-192v-640c0-110.933 166.4-192 384-192s384 81.067 384 192v640c0 110.933-166.4 192-384 192zM512 874.667c183.467 0 298.667-64 298.667-106.667s-115.2-106.667-298.667-106.667-298.667 64-298.667 106.667 115.2 106.667 298.667 106.667zM512 21.333c-183.467 0-298.667 64-298.667 106.667v89.6c68.267-42.667 174.933-68.267 298.667-68.267s230.4 25.6 298.667 68.267v-89.6c0-42.667-115.2-106.667-298.667-106.667zM512 234.667c-183.467 0-298.667 64-298.667 106.667v89.6c68.267-42.667 174.933-68.267 298.667-68.267s230.4 25.6 298.667 68.267v-89.6c0-42.667-115.2-106.667-298.667-106.667zM512 448c-183.467 0-298.667 64-298.667 106.667v89.6c68.267-42.667 174.933-68.267 298.667-68.267s230.4 25.6 298.667 68.267v-89.6c0-42.667-115.2-106.667-298.667-106.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-delivery" d="M640 832l-384-192v-430.933l384-192 384 192v430.933l-384 192zM887.467 614.4l-247.467-123.733-247.467 123.733 247.467 123.733 247.467-123.733zM341.333 546.133l256-128v-285.867l-256 128v285.867zM682.667 132.267v285.867l256 128v-285.867l-256-128zM0 661.333h170.667v-85.333h-170.667v85.333zM0 490.667h170.667v-85.333h-170.667v85.333zM0 320h170.667v-85.333h-170.667v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-desktop" d="M1024 192v682.667h-1024v-682.667h384v-85.333h-85.333v-85.333h426.667v85.333h-85.333v85.333h384zM554.667 106.667h-85.333v85.333h85.333v-85.333zM85.333 277.333v512h853.333v-512h-853.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-devices" d="M810.667 64h-85.333v85.333h85.333v-85.333zM981.333 618.667v-682.667h-938.667v1024h768v-341.333h170.667zM554.667 21.333v597.333h170.667v256h-597.333v-853.333h426.667zM896 533.333h-256v-512h256v512zM384 106.667h85.333v85.333h-85.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-down" d="M797.867 221.867l-285.867-285.867-285.867 285.867 59.733 59.733 183.467-183.467v861.867h85.333v-861.867l183.467 183.467 59.733-59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-download-2" d="M652.8 196.267l59.733-59.733-200.533-200.533-200.533 200.533 59.733 59.733 98.133-98.133v477.867h85.333v-477.867l98.133 98.133zM844.8 661.333c-29.867 145.067-162.133 256-311.467 256-136.533 0-256-89.6-302.933-213.333h-17.067c-119.467 0-213.333-93.867-213.333-213.333s93.867-213.333 213.333-213.333h170.667v85.333h-170.667c-72.533 0-128 55.467-128 128s55.467 128 128 128h85.333l4.267 25.6c21.333 110.933 119.467 187.733 230.4 187.733 123.733 0 226.133-93.867 234.667-217.6v-38.4h64c59.733 0 106.667-46.933 106.667-106.667s-46.933-106.667-106.667-106.667h-192v-85.333h192c106.667 0 192 85.333 192 192 0 102.4-76.8 183.467-179.2 192z" />
|
||||
<glyph unicode="" glyph-name="mbri-download" d="M285.867 452.267l-59.733-59.733 285.867-285.867 285.867 285.867-59.733 59.733-183.467-183.467v691.2h-85.333v-691.2l-183.467 183.467zM853.333 106.667v-85.333h-682.667v85.333h-85.333v-170.667h853.333v170.667h-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-drag-n-drop-2" d="M768 704v85.333h-85.333v-85.333h-426.667v-426.667h-85.333v-85.333h85.333v-256h768v768h-256zM938.667 21.333h-597.333v597.333h597.333v-597.333zM0 960h85.333v-85.333h-85.333v85.333zM256 874.667h-85.333v85.333h85.333v-85.333zM426.667 874.667h-85.333v85.333h85.333v-85.333zM597.333 874.667h-85.333v85.333h85.333v-85.333zM768 874.667h-85.333v85.333h85.333v-85.333zM0 789.333h85.333v-85.333h-85.333v85.333zM0 618.667h85.333v-85.333h-85.333v85.333zM0 448h85.333v-85.333h-85.333v85.333zM0 277.333h85.333v-85.333h-85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-drag-n-drop" d="M1024 448l-200.533-200.533-59.733 59.733 98.133 98.133h-307.2v-307.2l98.133 98.133 59.733-59.733-200.533-200.533-200.533 200.533 59.733 59.733 98.133-98.133v307.2h-307.2l98.133-98.133-59.733-59.733-200.533 200.533 200.533 200.533 59.733-59.733-98.133-98.133h307.2v307.2l-98.133-98.133-59.733 59.733 200.533 200.533 200.533-200.533-59.733-59.733-98.133 98.133v-307.2h307.2l-98.133 98.133 59.733 59.733 200.533-200.533z" />
|
||||
<glyph unicode="" glyph-name="mbri-edit-2" d="M708.267 960l-708.267-708.267v-315.733h315.733l708.267 708.267-315.733 315.733zM904.533 644.267l-102.4-102.4-196.267 196.267 102.4 102.4 196.267-196.267zM281.6 21.333h-196.267v196.267l460.8 460.8 196.267-196.267-460.8-460.8z" />
|
||||
<glyph unicode="" glyph-name="mbri-edit" d="M853.333 448h85.333v-512h-938.667v938.667h512v-85.333h-426.667v-768h768v426.667zM298.667 465.067l494.933 494.933 230.4-230.4-494.933-494.933h-230.4v230.4zM384 320h110.933l409.6 409.6-110.933 110.933-409.6-409.6v-110.933z" />
|
||||
<glyph unicode="" glyph-name="mbri-error" d="M490.667 960c-268.8 0-490.667-221.867-490.667-490.667s221.867-490.667 490.667-490.667 490.667 221.867 490.667 490.667-221.867 490.667-490.667 490.667zM490.667 64c-221.867 0-405.333 183.467-405.333 405.333s183.467 405.333 405.333 405.333 405.333-183.467 405.333-405.333-183.467-405.333-405.333-405.333zM755.2 674.133l-204.8-204.8 204.8-204.8-59.733-59.733-204.8 204.8-204.8-204.8-59.733 59.733 204.8 204.8-204.8 204.8 59.733 59.733 204.8-204.8 204.8 204.8 59.733-59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-extension" d="M853.333-64h-341.333v85.333c0 46.933-38.4 85.333-85.333 85.333s-85.333-38.4-85.333-85.333v-85.333h-341.333v341.333h85.333c46.933 0 85.333 38.4 85.333 85.333s-38.4 85.333-85.333 85.333h-85.333v341.333h256c0 93.867 76.8 170.667 170.667 170.667s170.667-76.8 170.667-170.667h256v-256c93.867 0 170.667-76.8 170.667-170.667s-76.8-170.667-170.667-170.667v-256zM597.333 21.333h170.667v256h85.333c46.933 0 85.333 38.4 85.333 85.333s-38.4 85.333-85.333 85.333h-85.333v256h-256v85.333c0 46.933-38.4 85.333-85.333 85.333s-85.333-38.4-85.333-85.333v-85.333h-256v-170.667c93.867 0 170.667-76.8 170.667-170.667s-76.8-170.667-170.667-170.667v-170.667h170.667c0 93.867 76.8 170.667 170.667 170.667s170.667-76.8 170.667-170.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-features" d="M0-64h426.667v426.667h-426.667v-426.667zM85.333 277.333h256v-256h-256v256zM0 448h426.667v426.667h-426.667v-426.667zM85.333 789.333h256v-256h-256v256zM512-64h426.667v426.667h-426.667v-426.667zM597.333 277.333h256v-256h-256v256zM669.867 627.2l-157.867 119.467h196.267l59.733 170.667 59.733-170.667h196.267l-157.867-119.467 59.733-179.2-157.867 110.933-157.867-110.933 59.733 179.2z" />
|
||||
<glyph unicode="" glyph-name="mbri-file" d="M614.4 960h-486.4v-1024h768v742.4l-281.6 281.6zM640 814.933l110.933-110.933h-110.933v110.933zM810.667 21.333h-597.333v853.333h341.333v-256h256v-597.333zM298.667 277.333h426.667v-85.333h-426.667v85.333zM298.667 448h426.667v-85.333h-426.667v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-flag" d="M938.667 960h-810.667v-1024h85.333v426.667h725.333l-149.333 298.667 149.333 298.667zM802.133 448h-588.8v426.667h588.8l-106.667-213.333 106.667-213.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-folder" d="M486.4 704l-128 128h-358.4v-810.667h1024v682.667h-537.6zM938.667 106.667h-853.333v640h238.933l128-128h486.4v-512z" />
|
||||
<glyph unicode="" glyph-name="mbri-gift" d="M785.067 661.333c17.067 25.6 25.6 55.467 25.6 85.333 0 93.867-76.8 170.667-170.667 170.667-51.2 0-98.133-21.333-128-59.733-29.867 38.4-76.8 59.733-128 59.733-93.867 0-170.667-76.8-170.667-170.667 0-29.867 8.533-59.733 25.6-85.333h-238.933v-256h85.333v-469.333h853.333v469.333h85.333v256h-238.933zM554.667 746.667c0 46.933 38.4 85.333 85.333 85.333s85.333-38.4 85.333-85.333-38.4-85.333-85.333-85.333h-85.333v85.333zM384 832c46.933 0 85.333-38.4 85.333-85.333v-85.333h-85.333c-46.933 0-85.333 38.4-85.333 85.333s38.4 85.333 85.333 85.333zM853.333 21.333h-682.667v384h682.667v-384zM938.667 490.667h-853.333v85.333h853.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-github" d="M938.667 686.933v273.067l-226.133-93.867c-115.2 38.4-247.467 38.4-362.667 0l-221.867 93.867v-281.6c-29.867-46.933-42.667-93.867-42.667-145.067 0-132.267 98.133-251.733 256-307.2v-128c-98.133-25.6-128 17.067-162.133 76.8-29.867 46.933-64 102.4-136.533 102.4v-85.333c25.6 0 38.4-17.067 64-59.733 34.133-51.2 76.8-128 183.467-128 17.067 0 34.133 0 51.2 4.267v-72.533h384v290.133c157.867 55.467 256 174.933 256 307.2 0 55.467-12.8 106.667-42.667 153.6zM669.867 298.667l-29.867-12.8v-264.533h-213.333v264.533l-29.867 8.533c-136.533 42.667-226.133 136.533-226.133 238.933 0 38.4 12.8 72.533 34.133 110.933l8.533 8.533v179.2l136.533-55.467 17.067 4.267c106.667 38.4 230.4 38.4 337.067 0l17.067-4.267 132.267 55.467v-170.667l8.533-12.8c21.333-34.133 34.133-72.533 34.133-115.2 0-102.4-89.6-196.267-226.133-234.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-globe-2" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-51.2 0-110.933 81.067-140.8 204.8 93.867 12.8 192 12.8 285.867 0-34.133-123.733-93.867-204.8-145.067-204.8zM512 874.667c51.2 0 110.933-81.067 140.8-204.8-89.6-8.533-187.733-8.533-281.6 0 29.867 123.733 89.6 204.8 140.8 204.8zM341.333 448c0 51.2 4.267 98.133 8.533 140.8 55.467-8.533 106.667-12.8 162.133-12.8s106.667 4.267 162.133 12.8c8.533-42.667 8.533-89.6 8.533-140.8s-4.267-98.133-8.533-140.8c-106.667 12.8-217.6 12.8-320 0-8.533 42.667-12.8 89.6-12.8 140.8zM755.2 601.6c46.933 8.533 89.6 21.333 136.533 38.4 29.867-59.733 46.933-123.733 46.933-192s-17.067-132.267-46.933-192c-46.933 17.067-89.6 25.6-136.533 38.4 8.533 46.933 12.8 98.133 12.8 153.6s-4.267 106.667-12.8 153.6zM844.8 712.533c-34.133-12.8-68.267-21.333-106.667-25.6-12.8 59.733-34.133 110.933-59.733 153.6 68.267-29.867 123.733-72.533 166.4-128zM345.6 840.533c-25.6-42.667-46.933-93.867-64-153.6-34.133 4.267-68.267 12.8-102.4 25.6 42.667 55.467 98.133 98.133 166.4 128zM132.267 640c46.933-17.067 89.6-25.6 136.533-38.4-8.533-46.933-12.8-98.133-12.8-153.6s4.267-106.667 12.8-153.6c-46.933-8.533-89.6-21.333-136.533-38.4-29.867 59.733-46.933 123.733-46.933 192s17.067 132.267 46.933 192zM179.2 183.467c34.133 12.8 68.267 21.333 106.667 25.6 12.8-59.733 34.133-110.933 59.733-153.6-68.267 29.867-123.733 72.533-166.4 128zM678.4 55.467c25.6 42.667 46.933 93.867 59.733 153.6 34.133-8.533 72.533-17.067 106.667-25.6-42.667-55.467-98.133-98.133-166.4-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-globe" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM209.067 746.667h174.933c25.6 0 42.667-17.067 42.667-42.667s-17.067-42.667-42.667-42.667h-149.333c-59.733 0-106.667-46.933-106.667-106.667s46.933-106.667 106.667-106.667h21.333c25.6 0 42.667-17.067 42.667-42.667s-17.067-42.667-42.667-42.667h-162.133c-4.267 25.6-8.533 55.467-8.533 85.333 0 115.2 46.933 221.867 123.733 298.667zM119.467 277.333h136.533c72.533 0 128 55.467 128 128s-55.467 128-128 128h-21.333c-12.8 0-21.333 8.533-21.333 21.333s8.533 21.333 21.333 21.333h149.333c72.533 0 128 55.467 128 128s-55.467 128-128 128h-55.467c55.467 25.6 115.2 42.667 183.467 42.667 174.933 0 324.267-106.667 392.533-256h-179.2c-72.533 0-128-55.467-128-128s55.467-128 128-128h21.333c12.8 0 21.333-8.533 21.333-21.333s-8.533-21.333-21.333-21.333h-192c-72.533 0-128-55.467-128-128s55.467-128 128-128h140.8c-55.467-25.6-119.467-42.667-183.467-42.667-174.933 0-324.267 106.667-392.533 256zM814.933 149.333h-260.267c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667h192c59.733 0 106.667 46.933 106.667 106.667s-46.933 106.667-106.667 106.667h-21.333c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667h204.8c4.267-25.6 8.533-55.467 8.533-85.333 0-115.2-46.933-221.867-123.733-298.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-growing-chart" d="M1024 832v-298.667h-85.333v153.6l-384-384-128 128-366.933-366.933-59.733 59.733 426.667 426.667 128-128 324.267 324.267h-153.6v85.333h298.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-hearth" d="M512-25.6l-422.4 422.4c-119.467 119.467-119.467 311.467 0 430.933 55.467 59.733 132.267 89.6 213.333 89.6h4.267c76.8 0 149.333-29.867 204.8-81.067 55.467 51.2 128 81.067 204.8 81.067 81.067 0 157.867-29.867 217.6-89.6s89.6-136.533 89.6-217.6c0-81.067-29.867-157.867-89.6-213.333l-422.4-422.4zM307.2 832c-59.733 0-115.2-21.333-157.867-64-85.333-85.333-85.333-226.133 0-311.467l362.667-362.667 362.667 362.667c42.667 42.667 64 98.133 64 153.6 0 59.733-21.333 115.2-64 157.867s-98.133 64-157.867 64-115.2-21.333-157.867-64l-46.933-51.2-51.2 51.2c-42.667 42.667-93.867 64-153.6 64z" />
|
||||
<glyph unicode="" glyph-name="mbri-help" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-234.667 0-426.667 192-426.667 426.667s192 426.667 426.667 426.667 426.667-192 426.667-426.667-192-426.667-426.667-426.667zM725.333 576c0-76.8-46.933-119.467-89.6-157.867s-81.067-68.267-81.067-140.8h-85.333c0 110.933 59.733 162.133 110.933 204.8 38.4 34.133 59.733 55.467 59.733 93.867 0 72.533-55.467 128-128 128s-128-55.467-128-128h-85.333c0 119.467 93.867 213.333 213.333 213.333s213.333-93.867 213.333-213.333zM469.333 192h85.333v-85.333h-85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-home" d="M512 883.2l-494.933-358.4 51.2-68.267 102.4 72.533v-507.733h682.667v507.733l102.4-76.8 51.2 68.267-494.933 362.667zM554.667 106.667h-85.333v213.333h85.333v-213.333zM768 106.667h-128v298.667h-256v-298.667h-128v486.4l256 187.733 256-187.733v-486.4z" />
|
||||
<glyph unicode="" glyph-name="mbri-hot-cup" d="M853.333 533.333h-42.667v128h-768v-469.333c0-140.8 115.2-256 256-256h256c128 0 230.4 93.867 251.733 213.333h46.933c93.867 0 170.667 76.8 170.667 170.667v42.667c0 93.867-76.8 170.667-170.667 170.667zM725.333 192c0-93.867-76.8-170.667-170.667-170.667h-256c-93.867 0-170.667 76.8-170.667 170.667v384h597.333v-384zM938.667 320c0-46.933-38.4-85.333-85.333-85.333h-42.667v213.333h42.667c46.933 0 85.333-38.4 85.333-85.333v-42.667zM384 746.667h-85.333v213.333h85.333v-213.333zM554.667 746.667h-85.333v85.333h85.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-idea" d="M554.667 874.667h-85.333v85.333h85.333v-85.333zM42.667 448h85.333v85.333h-85.333v-85.333zM896 533.333v-85.333h85.333v85.333h-85.333zM268.8 793.6l-59.733 59.733-59.733-59.733 59.733-59.733 59.733 59.733zM755.2 187.733l59.733-59.733 59.733 59.733-59.733 59.733-59.733-59.733zM149.333 187.733l59.733-59.733 59.733 59.733-59.733 59.733-59.733-59.733zM755.2 793.6l59.733-59.733 59.733 59.733-59.733 59.733-59.733-59.733zM810.667 490.667c0-98.133-46.933-187.733-128-243.2v-140.8c0-93.867-76.8-170.667-170.667-170.667s-170.667 76.8-170.667 170.667v140.8c-81.067 55.467-128 149.333-128 243.2 0 166.4 132.267 298.667 298.667 298.667s298.667-132.267 298.667-298.667zM725.333 490.667c0 119.467-93.867 213.333-213.333 213.333s-213.333-93.867-213.333-213.333c0-76.8 42.667-145.067 106.667-183.467l21.333-12.8v-187.733c0-46.933 38.4-85.333 85.333-85.333s85.333 38.4 85.333 85.333v187.733l21.333 12.8c64 38.4 106.667 106.667 106.667 183.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-image-gallery" d="M1024 622.933l-554.667 251.733-72.533-157.867-396.8-179.2 256-558.933 349.867 162.133 162.133-76.8 256 558.933zM298.667 93.867l-183.467 401.067 226.133 102.4-128-277.333 290.133-132.267-204.8-93.867zM328.533 358.4l183.467 401.067 396.8-179.2-183.467-401.067-396.8 179.2z" />
|
||||
<glyph unicode="" glyph-name="mbri-image-slider" d="M0 960v-853.333h1024v853.333h-1024zM162.133 192l264.533 264.533 264.533-264.533h-529.067zM938.667 192h-128l-238.933 238.933 196.267 196.267 170.667-170.667v-264.533zM938.667 576l-170.667 170.667-256-256-85.333 85.333-341.333-341.333v640h853.333v-298.667zM256 576c72.533 0 128 55.467 128 128s-55.467 128-128 128-128-55.467-128-128 55.467-128 128-128zM256 746.667c25.6 0 42.667-17.067 42.667-42.667s-17.067-42.667-42.667-42.667-42.667 17.067-42.667 42.667 17.067 42.667 42.667 42.667zM469.333 21.333h85.333v-85.333h-85.333v85.333zM640 21.333h85.333v-85.333h-85.333v85.333zM298.667 21.333h85.333v-85.333h-85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-info" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-234.667 0-426.667 192-426.667 426.667s192 426.667 426.667 426.667 426.667-192 426.667-426.667-192-426.667-426.667-426.667zM554.667 661.333h-85.333v85.333h85.333v-85.333zM554.667 149.333h-85.333v426.667h85.333v-426.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-italic" d="M507.733-64c-55.467 0-85.333 25.6-98.133 46.933-42.667 64-25.6 192 59.733 396.8 102.4 234.667 81.067 298.667 72.533 311.467-4.267 4.267-8.533 12.8-29.867 12.8-25.6 0-64-46.933-98.133-81.067l-59.733 55.467c46.933 55.467 98.133 110.933 157.867 110.933 55.467 0 85.333-25.6 102.4-51.2 42.667-68.267 25.6-192-64-392.533-98.133-238.933-76.8-298.667-68.267-315.733 0-4.267 8.533-8.533 25.6-8.533 25.6 0 64 46.933 98.133 81.067l64-55.467c-51.2-55.467-102.4-110.933-162.133-110.933zM576 960c-34.133 0-64-29.867-64-64s29.867-64 64-64 64 29.867 64 64-29.867 64-64 64z" />
|
||||
<glyph unicode="" glyph-name="mbri-key" d="M422.4 490.667c-21.333 98.133-106.667 170.667-209.067 170.667-119.467 0-213.333-93.867-213.333-213.333s93.867-213.333 213.333-213.333c102.4 0 187.733 72.533 209.067 170.667h302.933v-170.667h85.333v170.667h128v-170.667h85.333v256h-601.6zM213.333 320c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-laptop" d="M938.667 277.333v512h-853.333v-512h-85.333v-213.333h1024v213.333h-85.333zM938.667 149.333h-853.333v42.667h853.333v-42.667zM170.667 704h682.667v-426.667h-682.667v426.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-layers" d="M1024 661.333l-512 298.667-512-298.667 512-298.667 512 298.667zM512 861.867l345.6-200.533-345.6-200.533-345.6 200.533 345.6 200.533zM960 533.333l46.933-72.533-494.933-311.467-490.667 311.467 42.667 72.533 448-281.6 448 281.6zM960 320l46.933-72.533-494.933-311.467-490.667 311.467 42.667 72.533 448-281.6 448 281.6z" />
|
||||
<glyph unicode="" glyph-name="mbri-left-right" d="M678.4 674.133l59.733 59.733 285.867-285.867-285.867-285.867-59.733 59.733 183.467 183.467h-699.733l183.467-183.467-59.733-59.733-285.867 285.867 285.867 285.867 59.733-59.733-183.467-183.467h699.733l-183.467 183.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-left" d="M0 490.667l285.867-285.867 59.733 59.733-183.467 183.467h861.867v85.333h-861.867l183.467 183.467-59.733 59.733-285.867-285.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-letter" d="M0 789.333v-682.667h1024v682.667h-1024zM844.8 704l-332.8-200.533-332.8 200.533h665.6zM85.333 192v469.333l426.667-256 426.667 256v-469.333h-853.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-like" d="M665.6 533.333l59.733 119.467v264.533h-204.8l-46.933-192-132.267-157.867v51.2h-341.333v-640h341.333v46.933l72.533-46.933h460.8l149.333 554.667h-358.4zM256 64h-170.667v469.333h170.667v-469.333zM806.4 64h-366.933l-98.133 64v302.933l209.067 251.733 38.4 149.333h51.2v-162.133l-110.933-221.867h384l-106.667-384z" />
|
||||
<glyph unicode="" glyph-name="mbri-link" d="M682.667 362.667l341.333 341.333-256 256-341.333-341.333 93.867-93.867-85.333-85.333-93.867 93.867-341.333-341.333 256-256 341.333 341.333-93.867 93.867 85.333 85.333 93.867-93.867zM469.333 277.333l-213.333-213.333-128 128 213.333 213.333 29.867-29.867-72.533-76.8 64-64 72.533 72.533 34.133-29.867zM554.667 618.667l213.333 213.333 128-128-213.333-213.333-29.867 29.867 72.533 76.8-64 64-72.533-72.533-34.133 29.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-lock" d="M768 533.333v170.667c0 140.8-115.2 256-256 256s-256-115.2-256-256v-170.667h-85.333v-597.333h682.667v597.333h-85.333zM341.333 704c0 93.867 76.8 170.667 170.667 170.667s170.667-76.8 170.667-170.667v-170.667h-341.333v170.667zM768 21.333h-512v426.667h512v-426.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-login" d="M648.533 405.333h-605.867v85.333h605.867l-140.8 140.8 59.733 59.733 243.2-243.2-243.2-243.2-59.733 59.733 140.8 140.8zM341.333 960v-341.333h85.333v256h469.333v-853.333h-469.333v256h-85.333v-341.333h640v1024h-640z" />
|
||||
<glyph unicode="" glyph-name="mbri-logout" d="M861.867 405.333h-605.867v85.333h605.867l-140.8 140.8 59.733 59.733 243.2-243.2-243.2-243.2-59.733 59.733 140.8 140.8zM640 960v-341.333h-85.333v256h-469.333v-853.333h469.333v256h85.333v-341.333h-640v1024h640z" />
|
||||
<glyph unicode="" glyph-name="mbri-magic-stick" d="M682.667 789.333c-93.867 0-170.667-76.8-170.667-170.667 0-29.867 8.533-59.733 25.6-85.333l-537.6-537.6 59.733-59.733 537.6 537.6c25.6-17.067 55.467-25.6 85.333-25.6 93.867 0 170.667 76.8 170.667 170.667s-76.8 170.667-170.667 170.667zM682.667 533.333c-46.933 0-85.333 38.4-85.333 85.333s38.4 85.333 85.333 85.333 85.333-38.4 85.333-85.333-38.4-85.333-85.333-85.333zM725.333 874.667h-85.333v85.333h85.333v-85.333zM640 362.667h85.333v-85.333h-85.333v85.333zM426.667 576h-85.333v85.333h85.333v-85.333zM1024 661.333v-85.333h-85.333v85.333h85.333zM891.733 768l-59.733 59.733 59.733 59.733 59.733-59.733-59.733-59.733zM891.733 469.333l59.733-59.733-59.733-59.733-59.733 59.733 59.733 59.733zM473.6 768l-64 59.733 59.733 59.733 59.733-59.733-55.467-59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-map-pin" d="M512 960c-213.333 0-384-170.667-384-384 0-315.733 345.6-610.133 358.4-618.667l25.6-21.333 25.6 21.333c12.8 8.533 358.4 302.933 358.4 618.667 0 213.333-170.667 384-384 384zM512 42.667c-76.8 68.267-298.667 307.2-298.667 533.333 0 166.4 132.267 298.667 298.667 298.667s298.667-132.267 298.667-298.667c0-226.133-221.867-465.067-298.667-533.333zM512 746.667c-93.867 0-170.667-76.8-170.667-170.667s76.8-170.667 170.667-170.667 170.667 76.8 170.667 170.667-76.8 170.667-170.667 170.667zM512 490.667c-46.933 0-85.333 38.4-85.333 85.333s38.4 85.333 85.333 85.333 85.333-38.4 85.333-85.333-38.4-85.333-85.333-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-menu" d="M1024 746.667v-85.333h-1024v85.333h1024zM0 405.333h1024v85.333h-1024v-85.333zM0 149.333h1024v85.333h-1024v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-mobile-2" d="M213.333 960v-1024h597.333v1024h-597.333zM725.333 21.333h-426.667v853.333h426.667v-853.333zM554.667 64h-85.333v85.333h85.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-mobile-horizontal" d="M1024 746.667h-1024v-597.333h1024v597.333zM85.333 234.667v426.667h853.333v-426.667h-853.333zM128 405.333v85.333h85.333v-85.333h-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-mobile" d="M213.333 960v-1024h597.333v1024h-597.333zM725.333 21.333h-426.667v853.333h426.667v-853.333zM597.333 746.667h-170.667v85.333h170.667v-85.333zM426.667 64h-85.333v85.333h85.333v-85.333zM597.333 149.333h85.333v-85.333h-85.333v85.333zM554.667 64h-85.333v85.333h85.333v-85.333zM426.667 192h-85.333v85.333h85.333v-85.333zM597.333 277.333h85.333v-85.333h-85.333v85.333zM554.667 192h-85.333v85.333h85.333v-85.333zM426.667 320h-85.333v85.333h85.333v-85.333zM597.333 405.333h85.333v-85.333h-85.333v85.333zM554.667 320h-85.333v85.333h85.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-mobirise" d="M682.667 789.333h-85.333v85.333h85.333v-85.333zM0 874.667h512v-853.333h-512v853.333zM85.333 106.667h341.333v682.667h-341.333v-682.667zM213.333 149.333h85.333v85.333h-85.333v-85.333zM938.667 490.667v-85.333h85.333v85.333h-85.333zM806.4 721.067l59.733-59.733 59.733 59.733-59.733 59.733-59.733-59.733zM806.4 174.933l59.733-59.733 59.733 59.733-59.733 59.733-59.733-59.733zM597.333 21.333h85.333v85.333h-85.333v-85.333zM597.333 704v-85.333c93.867 0 170.667-76.8 170.667-170.667s-76.8-170.667-170.667-170.667v-85.333c140.8 0 256 115.2 256 256s-115.2 256-256 256z" />
|
||||
<glyph unicode="" glyph-name="mbri-more-horizontal" d="M256 448c0-46.933-38.4-85.333-85.333-85.333s-85.333 38.4-85.333 85.333 38.4 85.333 85.333 85.333 85.333-38.4 85.333-85.333zM512 533.333c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333zM853.333 533.333c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-more-vertical" d="M512 704c-46.933 0-85.333 38.4-85.333 85.333s38.4 85.333 85.333 85.333 85.333-38.4 85.333-85.333-38.4-85.333-85.333-85.333zM597.333 448c0 46.933-38.4 85.333-85.333 85.333s-85.333-38.4-85.333-85.333 38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333zM597.333 106.667c0 46.933-38.4 85.333-85.333 85.333s-85.333-38.4-85.333-85.333 38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-music" d="M298.667 810.667v-627.2c-12.8 4.267-25.6 8.533-42.667 8.533-72.533 0-128-55.467-128-128s55.467-128 128-128 128 55.467 128 128v507.733l426.667 106.667v-366.933c-12.8 4.267-25.6 8.533-42.667 8.533-72.533 0-128-55.467-128-128s55.467-128 128-128 128 55.467 128 128v768l-597.333-149.333zM256 21.333c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667 42.667-17.067 42.667-42.667-17.067-42.667-42.667-42.667zM384 661.333v81.067l426.667 106.667v-81.067l-426.667-106.667zM768 149.333c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667 42.667-17.067 42.667-42.667-17.067-42.667-42.667-42.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-new-file" d="M614.4 960h-486.4v-1024h768v742.4l-281.6 281.6zM640 814.933l110.933-110.933h-110.933v110.933zM213.333 21.333v853.333h341.333v-256h256v-597.333h-597.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-numbered-list" d="M1024 832v-85.333h-597.333v85.333h597.333zM426.667 64h597.333v85.333h-597.333v-85.333zM426.667 405.333h597.333v85.333h-597.333v-85.333zM0 661.333h85.333v256h-85.333v-256zM0 320h85.333v256h-85.333v-256zM128 320h85.333v256h-85.333v-256zM0-21.333h85.333v256h-85.333v-256zM128-21.333h85.333v256h-85.333v-256zM256-21.333h85.333v256h-85.333v-256z" />
|
||||
<glyph unicode="" glyph-name="mbri-opened-folder" d="M896 533.333v170.667h-409.6l-128 128h-358.4v-810.667h896l128 512h-128zM85.333 746.667h238.933l128-128h358.4v-85.333h-695.467l-29.867-123.733v337.067zM827.733 106.667h-729.6l85.333 341.333h733.867l-89.6-341.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-pages" d="M614.4 960h-358.4v-853.333h640v571.733l-281.6 281.6zM640 814.933l110.933-110.933h-110.933v110.933zM810.667 192h-469.333v682.667h213.333v-256h256v-426.667zM170.667 21.333h554.667v-85.333h-640v853.333h85.333v-768z" />
|
||||
<glyph unicode="" glyph-name="mbri-paper-plane" d="M29.867 537.6l362.667-204.8 106.667-366.933 145.067 200.533 200.533-132.267 153.6 908.8-968.533-405.333zM221.867 524.8l529.067 226.133-332.8-332.8-196.267 106.667zM529.067 157.867l-29.867 106.667 72.533-46.933-42.667-59.733zM780.8 179.2l-285.867 192 379.733 379.733-93.867-571.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-paperclip" d="M298.667-64c-76.8 0-153.6 29.867-209.067 85.333-59.733 59.733-89.6 132.267-89.6 213.333s29.867 153.6 89.6 209.067l443.733 452.267c42.667 42.667 93.867 64 149.333 64s110.933-21.333 149.333-64 64-93.867 64-149.333c0-55.467-21.333-110.933-64-149.333l-443.733-452.267c-51.2-51.2-132.267-51.2-179.2 0s-51.2 132.267 0 179.2l362.667 362.667 59.733-59.733-362.667-362.667c-17.067-17.067-17.067-42.667 0-59.733s42.667-17.067 59.733 0l443.733 452.267c25.6 21.333 38.4 55.467 38.4 89.6s-12.8 68.267-38.4 89.6c-46.933 46.933-132.267 46.933-179.2 0l-443.733-452.267c-42.667-42.667-64-93.867-64-149.333s21.333-110.933 64-149.333c81.067-81.067 217.6-81.067 302.933 0l384 384 59.733-59.733-384-384c-59.733-59.733-136.533-89.6-213.333-89.6z" />
|
||||
<glyph unicode="" glyph-name="mbri-phone" d="M806.4-64l-29.867 17.067c-162.133 89.6-307.2 192-439.467 324.267-128 128-234.667 273.067-320 435.2l-17.067 29.867 217.6 217.6 264.533-264.533-85.333-123.733 234.667-234.667 123.733 85.333 264.533-264.533-213.333-221.867zM396.8 332.8c119.467-115.2 247.467-213.333 392.533-294.4l115.2 115.2-153.6 153.6-123.733-85.333-337.067 337.067 85.333 123.733-157.867 157.867-110.933-115.2c81.067-145.067 174.933-273.067 290.133-392.533z" />
|
||||
<glyph unicode="" glyph-name="mbri-photo" d="M1024 960h-853.333v-853.333h853.333v853.333zM938.667 192h-682.667v682.667h682.667v-682.667zM0 746.667v-810.667h810.667v85.333h-725.333v725.333h-85.333zM371.2 230.4l-59.733 59.733 200.533 204.8 85.333-85.333 170.667 170.667 115.2-115.2-59.733-59.733-55.467 51.2-170.667-170.667-85.333 85.333-140.8-140.8zM341.333 725.333c0 34.133 29.867 64 64 64s64-29.867 64-64-29.867-64-64-64-64 29.867-64 64z" />
|
||||
<glyph unicode="" glyph-name="mbri-photos" d="M0 874.667v-853.333h1024v853.333h-1024zM938.667 789.333v-298.667l-170.667 170.667-256-256-85.333 85.333-341.333-341.333v640h853.333zM691.2 106.667h-529.067l264.533 264.533 264.533-264.533zM810.667 106.667l-238.933 238.933 196.267 196.267 170.667-170.667v-264.533h-128zM256 490.667c72.533 0 128 55.467 128 128s-55.467 128-128 128-128-55.467-128-128 55.467-128 128-128zM256 661.333c25.6 0 42.667-17.067 42.667-42.667s-17.067-42.667-42.667-42.667-42.667 17.067-42.667 42.667 17.067 42.667 42.667 42.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-pin" d="M691.2 960l-149.333-149.333 59.733-59.733-93.867-93.867-149.333-25.6-59.733 59.733-179.2-179.2 196.267-196.267-315.733-320 59.733-59.733 315.733 315.733 196.267-196.267 179.2 179.2-55.467 55.467 21.333 149.333 93.867 93.867 59.733-59.733 153.6 153.6-332.8 332.8zM571.733 174.933l-332.8 332.8 59.733 59.733 332.8-332.8-59.733-59.733zM814.933 657.067l-174.933-174.933-17.067-115.2-187.733 187.733 115.2 17.067 174.933 174.933-59.733 59.733 29.867 29.867 213.333-209.067-29.867-29.867-64 59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-play" d="M85.333-64v1024l853.333-512-853.333-512zM170.667 810.667v-721.067l597.333 358.4-597.333 362.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-plus" d="M1024 405.333h-469.333v-469.333h-85.333v469.333h-469.333v85.333h469.333v469.333h85.333v-469.333h469.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-preview" d="M512 192c-187.733 0-366.933 85.333-490.667 230.4l-21.333 25.6 21.333 25.6c123.733 145.067 302.933 230.4 490.667 230.4s366.933-85.333 490.667-230.4l21.333-25.6-21.333-25.6c-123.733-145.067-302.933-230.4-490.667-230.4zM110.933 448c102.4-110.933 247.467-170.667 401.067-170.667s294.4 59.733 401.067 170.667c-102.4 110.933-247.467 170.667-401.067 170.667s-294.4-59.733-401.067-170.667zM512 320c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128zM512 490.667c-25.6 0-42.667-17.067-42.667-42.667s17.067-42.667 42.667-42.667 42.667 17.067 42.667 42.667-17.067 42.667-42.667 42.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-print" d="M0 704v-597.333h170.667v-170.667h682.667v170.667h170.667v597.333h-1024zM768 21.333h-512v256h512v-256zM938.667 192h-85.333v170.667h-682.667v-170.667h-85.333v426.667h853.333v-426.667zM256 789.333h-85.333v170.667h682.667v-170.667h-85.333v85.333h-512v-85.333zM853.333 448h-85.333v85.333h85.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-protect" d="M512-68.267l-17.067 4.267c-221.867 93.867-366.933 277.333-366.933 469.333v409.6l384 145.067 384-145.067v-409.6c0-192-145.067-375.467-366.933-465.067l-17.067-8.533zM213.333 755.2v-349.867c0-153.6 115.2-302.933 298.667-379.733 183.467 76.8 298.667 226.133 298.667 379.733v349.867l-298.667 110.933-298.667-110.933zM755.2 588.8l-59.733 59.733-226.133-226.133-98.133 98.133-59.733-59.733 157.867-157.867 285.867 285.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-question" d="M853.333 618.667c0-119.467-76.8-192-153.6-260.267-72.533-72.533-145.067-136.533-145.067-251.733h-85.333c0 153.6 93.867 238.933 174.933 311.467 64 64 123.733 119.467 123.733 200.533 0 140.8-115.2 256-256 256s-256-115.2-256-256h-85.333c0 187.733 153.6 341.333 341.333 341.333s341.333-153.6 341.333-341.333zM469.333-64h85.333v85.333h-85.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-quote-left" d="M345.6 849.067l-302.933-251.733v-490.667h426.667v426.667h-153.6l170.667 170.667-140.8 145.067zM384 448v-256h-256v362.667l209.067 174.933 29.867-25.6-153.6-153.6v-102.4h170.667zM998.4 704l-145.067 145.067-298.667-251.733v-490.667h426.667v426.667h-153.6l170.667 170.667zM896 448v-256h-256v362.667l209.067 174.933 29.867-25.6-153.6-153.6v-102.4h170.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-quote-right" d="M678.4 89.6l302.933 251.733v490.667h-426.667v-426.667h153.6l-170.667-170.667 140.8-145.067zM640 490.667v256h256v-362.667l-209.067-174.933-29.867 25.6 153.6 153.6v102.4h-170.667zM25.6 234.667l145.067-145.067 302.933 251.733v490.667h-430.933v-426.667h153.6l-170.667-170.667zM128 490.667v256h256v-362.667l-209.067-174.933-29.867 25.6 153.6 153.6v102.4h-170.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-redo" d="M0 290.133l85.333-25.6c21.333 68.267 59.733 136.533 115.2 187.733 170.667 166.4 452.267 166.4 627.2 0 38.4-38.4 68.267-85.333 93.867-132.267h-324.267v-85.333h426.667v426.667h-85.333v-209.067c-17.067 21.333-34.133 42.667-51.2 59.733-204.8 196.267-541.867 196.267-746.667 0-68.267-59.733-115.2-136.533-140.8-221.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-refresh" d="M640 704h217.6l-46.933 46.933c-162.133 166.4-435.2 166.4-601.6 0s-166.4-439.467 0-605.867c81.067-81.067 187.733-123.733 302.933-123.733s221.867 42.667 302.933 123.733l59.733-59.733c-102.4-98.133-230.4-149.333-362.667-149.333s-260.267 51.2-362.667 149.333c-200.533 200.533-200.533 524.8 0 725.333s524.8 200.533 725.333 0l21.333-21.333v170.667h85.333v-341.333h-341.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-responsive-2" d="M768 192h85.333v-85.333h-85.333zM938.667 661.333v256h-938.667v-640h426.667v-85.333h-170.667v-85.333h341.333v-128h426.667v682.667h-85.333zM85.333 362.667v469.333h768v-170.667h-256v-298.667h-512zM512 192v85.333h85.333v-85.333h-85.333zM938.667 64h-256v512h256v-512z" />
|
||||
<glyph unicode="" glyph-name="mbri-responsive" d="M938.667 746.667v170.667h-938.667v-682.667h597.333v-256h426.667v768h-85.333zM85.333 320v512h768v-85.333h-256v-426.667h-512zM938.667 64h-256v597.333h256v-597.333zM853.333 106.667h-85.333v85.333h85.333v-85.333zM128 618.667h85.333v-85.333h-85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-right" d="M1024 490.667l-285.867-285.867-59.733 59.733 183.467 183.467h-861.867v85.333h861.867l-183.467 183.467 59.733 59.733 285.867-285.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-rocket" d="M725.333 294.4v110.933c0 12.8 21.333 324.267-183.467 529.067l-29.867 25.6-29.867-29.867c-204.8-204.8-183.467-516.267-183.467-524.8v-115.2l-170.667-311.467 76.8-42.667 93.867 170.667v-85.333h170.667v-85.333h85.333v85.333h170.667v89.6l93.867-174.933 76.8 46.933-170.667 311.467zM640 405.333v-298.667h-85.333v170.667h-85.333v-170.667h-85.333v302.933c0 4.267-17.067 256 128 426.667 140.8-170.667 128-426.667 128-430.933zM512 618.667c46.933 0 85.333-38.4 85.333-85.333s-38.4-85.333-85.333-85.333-85.333 38.4-85.333 85.333 38.4 85.333 85.333 85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-sad-face" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-234.667 0-426.667 192-426.667 426.667s192 426.667 426.667 426.667 426.667-192 426.667-426.667-192-426.667-426.667-426.667zM320 448c-34.133 0-64 29.867-64 64s29.867 64 64 64 64-29.867 64-64-29.867-64-64-64zM768 512c0-34.133-29.867-64-64-64s-64 29.867-64 64 29.867 64 64 64 64-29.867 64-64zM362.667 170.667l-59.733 59.733c115.2 115.2 307.2 115.2 422.4 0l-59.733-59.733c-85.333 85.333-221.867 85.333-302.933 0z" />
|
||||
<glyph unicode="" glyph-name="mbri-sale" d="M657.067 874.667h-102.4v85.333h-85.333v-85.333h-102.4l-196.267-196.267v-742.4h682.667v742.4l-196.267 196.267zM768 21.333h-512v622.933l145.067 145.067h68.267v-98.133c-25.6-12.8-42.667-42.667-42.667-72.533 0-46.933 38.4-85.333 85.333-85.333s85.333 38.4 85.333 85.333c0 29.867-17.067 59.733-42.667 72.533v98.133h68.267l145.067-145.067v-622.933zM597.333 192h85.333v-85.333h-85.333v85.333zM426.667 362.667h-85.333v85.333h85.333v-85.333zM622.933 448l59.733-59.733-281.6-281.6-59.733 59.733 281.6 281.6z" />
|
||||
<glyph unicode="" glyph-name="mbri-save" d="M827.733 960h-827.733v-1024h1024v827.733l-196.267 196.267zM725.333 874.667v-170.667h-426.667v170.667h426.667zM938.667 21.333h-853.333v853.333h128v-256h597.333v238.933l128-128v-708.267zM512 448c-72.533 0-128-55.467-128-128s55.467-128 128-128 128 55.467 128 128-55.467 128-128 128zM512 277.333c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667 42.667-17.067 42.667-42.667-17.067-42.667-42.667-42.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-search" d="M1011.2 8.533l-401.067 401.067c46.933 59.733 72.533 132.267 72.533 209.067 0 187.733-153.6 341.333-341.333 341.333s-341.333-153.6-341.333-341.333 153.6-341.333 341.333-341.333c76.8 0 149.333 25.6 209.067 72.533l401.067-401.067 59.733 59.733zM341.333 362.667c-140.8 0-256 115.2-256 256s115.2 256 256 256 256-115.2 256-256-115.2-256-256-256z" />
|
||||
<glyph unicode="" glyph-name="mbri-setting-2" d="M810.667 149.333h-42.667v85.333h42.667v725.333h85.333v-725.333h42.667v-85.333h-42.667v-213.333h-85.333v213.333zM469.333-64h85.333v725.333h42.667v85.333h-42.667v213.333h-85.333v-213.333h-42.667v-85.333h42.667v-725.333zM128-64h85.333v213.333h42.667v85.333h-42.667v725.333h-85.333v-725.333h-42.667v-85.333h42.667v-213.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-setting-3" d="M725.333 405.333c-55.467 0-102.4-34.133-119.467-85.333h-605.867v-85.333h605.867c17.067-51.2 64-85.333 119.467-85.333s102.4 34.133 119.467 85.333h179.2v85.333h-179.2c-17.067 51.2-64 85.333-119.467 85.333zM725.333 234.667c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667 42.667-17.067 42.667-42.667-17.067-42.667-42.667-42.667zM418.133 661.333c-17.067 51.2-64 85.333-119.467 85.333s-102.4-34.133-119.467-85.333h-179.2v-85.333h179.2c17.067-51.2 64-85.333 119.467-85.333s102.4 34.133 119.467 85.333h605.867v85.333h-605.867zM298.667 576c-25.6 0-42.667 17.067-42.667 42.667s17.067 42.667 42.667 42.667 42.667-17.067 42.667-42.667-17.067-42.667-42.667-42.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-setting" d="M1024 328.533v238.933l-123.733 29.867-8.533 21.333 68.267 106.667-170.667 170.667-106.667-68.267-25.6 8.533-25.6 123.733h-238.933l-29.867-123.733-21.333-8.533-106.667 68.267-170.667-170.667 68.267-106.667-8.533-21.333-123.733-29.867v-238.933l123.733-29.867 8.533-21.333-68.267-106.667 170.667-170.667 106.667 68.267 25.6-8.533 25.6-123.733h238.933l29.867 123.733 25.6 8.533 106.667-68.267 170.667 170.667-72.533 106.667 8.533 25.6 123.733 25.6zM849.067 183.467l-72.533-72.533-85.333 55.467-106.667-42.667-21.333-102.4h-102.4l-21.333 98.133-106.667 42.667-85.333-55.467-72.533 72.533 55.467 85.333-42.667 106.667-102.4 25.6v102.4l98.133 21.333 42.667 106.667-55.467 85.333 72.533 72.533 85.333-55.467 106.667 42.667 25.6 102.4h102.4l21.333-98.133 106.667-42.667 85.333 55.467 72.533-72.533-55.467-85.333 42.667-106.667 98.133-21.333v-102.4l-98.133-21.333-42.667-106.667 55.467-89.6zM512 661.333c-119.467 0-213.333-93.867-213.333-213.333s93.867-213.333 213.333-213.333 213.333 93.867 213.333 213.333-93.867 213.333-213.333 213.333zM512 320c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-share" d="M0 17.067v132.267c0 281.6 260.267 516.267 597.333 550.4v192l401.067-401.067-401.067-401.067v230.4c-264.533-12.8-426.667-81.067-520.533-192-25.6-38.4-76.8-110.933-76.8-110.933zM682.667 686.933v-68.267h-38.4c-256-12.8-469.333-157.867-533.333-341.333 115.2 81.067 294.4 128 533.333 132.267h42.667v-110.933l196.267 196.267-200.533 192z" />
|
||||
<glyph unicode="" glyph-name="mbri-shopping-bag" d="M891.733 704h-166.4v42.667c0 119.467-93.867 213.333-213.333 213.333s-213.333-93.867-213.333-213.333v-42.667h-166.4l-51.2-768h857.6l-46.933 768zM384 746.667c0 72.533 55.467 128 128 128s128-55.467 128-128v-42.667h-256v42.667zM174.933 21.333l34.133 597.333h89.6v-85.333h85.333v85.333h256v-85.333h85.333v85.333h89.6l38.4-597.333h-678.4z" />
|
||||
<glyph unicode="" glyph-name="mbri-shopping-basket" d="M839.68 550.4l-194.56 389.12-61.44-30.72 180.907-358.4h-505.173l180.907 361.813-61.44 30.72-194.56-392.533h-184.32l116.053-614.4h791.893l116.053 614.4h-184.32zM853.333 4.267h-682.667l-88.747 477.867h860.16l-88.747-477.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-shopping-cart" d="M896 149.333h-674.133l-128 640h-93.867v85.333h162.133l34.133-170.667h785.067l-51.2-384h-657.067l17.067-85.333h605.867v-85.333zM256 405.333h597.333l29.867 213.333h-669.867l42.667-213.333zM341.333 106.667c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333zM768 106.667c-46.933 0-85.333-38.4-85.333-85.333s38.4-85.333 85.333-85.333 85.333 38.4 85.333 85.333-38.4 85.333-85.333 85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-sites" d="M1024 192v682.667h-1024v-682.667h384v-85.333h-85.333v-85.333h426.667v85.333h-85.333v85.333h384zM554.667 106.667h-85.333v85.333h85.333v-85.333zM85.333 277.333v512h853.333v-512h-853.333zM512 661.333h341.333v-85.333h-341.333v85.333zM512 490.667h170.667v-85.333h-170.667v85.333zM170.667 405.333h256v256h-256v-256zM256 576h85.333v-85.333h-85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-smile-face" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM512 21.333c-234.667 0-426.667 192-426.667 426.667s192 426.667 426.667 426.667 426.667-192 426.667-426.667-192-426.667-426.667-426.667zM661.333 298.667l59.733-59.733c-59.733-59.733-136.533-85.333-209.067-85.333-76.8 0-153.6 29.867-209.067 85.333l59.733 59.733c81.067-85.333 217.6-85.333 298.667 0zM320 448c-34.133 0-64 29.867-64 64s29.867 64 64 64 64-29.867 64-64-29.867-64-64-64zM768 512c0-34.133-29.867-64-64-64s-64 29.867-64 64 29.867 64 64 64 64-29.867 64-64z" />
|
||||
<glyph unicode="" glyph-name="mbri-speed" d="M874.667 42.667l-59.733 59.733c166.4 166.4 166.4 435.2 0 601.6-166.4 170.667-439.467 170.667-605.867 4.267s-166.4-439.467 0-605.867l-59.733-59.733c-200.533 200.533-200.533 524.8 0 725.333s524.8 200.533 725.333 0c200.533-200.533 200.533-524.8 0-725.333zM426.667 430.933l281.6-281.6 59.733 59.733-281.6 281.6-59.733-59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-star" d="M827.733-25.6l-315.733 230.4-315.733-230.4 119.467 371.2-315.733 230.4h392.533l119.467 371.2 119.467-371.2h392.533l-315.733-230.4 119.467-371.2zM512 311.467l153.6-110.933-59.733 179.2 153.6 110.933h-187.733l-59.733 179.2-59.733-179.2h-187.733l153.6-110.933-59.733-179.2 153.6 110.933z" />
|
||||
<glyph unicode="" glyph-name="mbri-success" d="M384 64l-384 384 59.733 59.733 324.267-324.267 580.267 580.267 59.733-59.733-640-640z" />
|
||||
<glyph unicode="" glyph-name="mbri-sun" d="M469.333 106.667h85.333v-170.667h-85.333v170.667zM554.667 960h-85.333v-170.667h85.333v170.667zM170.667 490.667h-170.667v-85.333h170.667v85.333zM853.333 490.667v-85.333h170.667v85.333h-170.667zM721.067 174.933l119.467-119.467 59.733 59.733-119.467 119.467-59.733-59.733zM302.933 721.067l-123.733 119.467-59.733-59.733 119.467-119.467 64 59.733zM119.467 115.2l59.733-59.733 119.467 119.467-59.733 59.733-119.467-119.467zM904.533 780.8l-59.733 59.733-119.467-119.467 59.733-59.733 119.467 119.467zM768 448c0-140.8-115.2-256-256-256s-256 115.2-256 256 115.2 256 256 256 256-115.2 256-256zM682.667 448c0 93.867-76.8 170.667-170.667 170.667s-170.667-76.8-170.667-170.667 76.8-170.667 170.667-170.667 170.667 76.8 170.667 170.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-sun2" d="M512 789.333c-187.733 0-341.333-153.6-341.333-341.333s153.6-341.333 341.333-341.333 341.333 153.6 341.333 341.333-153.6 341.333-341.333 341.333zM512 192c-140.8 0-256 115.2-256 256s115.2 256 256 256 256-115.2 256-256-115.2-256-256-256zM554.667 874.667h-85.333v85.333h85.333v-85.333zM469.333 21.333h85.333v-85.333h-85.333v85.333zM0 490.667h85.333v-85.333h-85.333v85.333zM1024 490.667v-85.333h-85.333v85.333h85.333zM179.2 721.067l-59.733 59.733 59.733 59.733 59.733-59.733-59.733-59.733zM844.8 174.933l59.733-59.733-59.733-59.733-59.733 59.733 59.733 59.733zM179.2 174.933l59.733-59.733-59.733-59.733-59.733 59.733 59.733 59.733zM844.8 840.533l59.733-59.733-59.733-59.733-59.733 59.733 59.733 59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-tablet-vertical" d="M896-64h-768v1024h768v-1024zM213.333 21.333h597.333v853.333h-597.333v-853.333zM554.667 192h-85.333v-85.333h85.333v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-tablet" d="M0 64v768h1024v-768h-1024zM85.333 746.667v-597.333h853.333v597.333h-853.333zM256 405.333v85.333h-85.333v-85.333h85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-target" d="M1024 490.667h-89.6c-21.333 200.533-179.2 362.667-379.733 379.733v89.6h-85.333v-89.6c-200.533-17.067-362.667-179.2-379.733-379.733h-89.6v-85.333h89.6c21.333-200.533 179.2-362.667 379.733-379.733v-89.6h85.333v89.6c200.533 21.333 362.667 179.2 379.733 379.733h89.6v85.333zM512 106.667c-187.733 0-341.333 153.6-341.333 341.333s153.6 341.333 341.333 341.333 341.333-153.6 341.333-341.333-153.6-341.333-341.333-341.333zM512 661.333c-119.467 0-213.333-93.867-213.333-213.333s93.867-213.333 213.333-213.333 213.333 93.867 213.333 213.333-93.867 213.333-213.333 213.333zM512 320c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-timer" d="M840.533 631.467l85.333 85.333-59.733 59.733-85.333-85.333c-64 55.467-140.8 85.333-226.133 93.867v89.6h128v85.333h-341.333v-85.333h128v-89.6c-213.333-21.333-384-200.533-384-422.4 0-234.667 192-426.667 426.667-426.667s426.667 192 426.667 426.667c0 102.4-34.133 196.267-98.133 268.8zM512 21.333c-187.733 0-341.333 153.6-341.333 341.333s153.6 341.333 341.333 341.333 341.333-153.6 341.333-341.333-153.6-341.333-341.333-341.333zM469.333 618.667h85.333v-256h-85.333v256z" />
|
||||
<glyph unicode="" glyph-name="mbri-to-ftp" d="M1024 149.333v640h-494.933l-170.667 170.667h-358.4v-810.667h469.333v-128h-469.333v-85.333h1024v85.333h-469.333v128h469.333zM85.333 874.667h238.933l170.667-170.667h443.733v-469.333h-853.333v640z" />
|
||||
<glyph unicode="" glyph-name="mbri-to-local-drive" d="M887.467 789.333h-247.467v-85.333h179.2l115.2-426.667h-844.8l115.2 426.667h179.2v85.333h-247.467l-136.533-512v-341.333h1024v341.333l-136.533 512zM938.667 21.333h-853.333v170.667h853.333v-170.667zM328.533 665.6l140.8-140.8v435.2h85.333v-435.2l140.8 140.8 59.733-59.733-243.2-243.2-243.2 243.2 59.733 59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-touch-swipe" d="M900.267 418.133l-260.267 64v221.867c0 72.533-55.467 128-128 128s-128-55.467-128-128v-324.267c-51.2 42.667-128 42.667-179.2-8.533-25.6-25.6-38.4-59.733-38.4-93.867s12.8-68.267 38.4-93.867l247.467-247.467h529.067v375.467c0 51.2-34.133 93.867-81.067 106.667zM896 21.333h-409.6l-221.867 221.867c-8.533 8.533-12.8 21.333-12.8 34.133s4.267 25.6 12.8 34.133c21.333 17.067 51.2 17.067 68.267 0l136.533-136.533v529.067c0 25.6 17.067 42.667 42.667 42.667s42.667-17.067 42.667-42.667v-290.133l324.267-81.067c8.533-4.267 17.067-12.8 17.067-21.333v-290.133zM861.867 661.333h-136.533v85.333h136.533l-55.467 55.467 59.733 59.733 157.867-157.867-157.867-157.867-59.733 59.733 55.467 55.467zM217.6 605.867l-59.733-59.733-157.867 157.867 157.867 157.867 59.733-59.733-55.467-55.467h136.533v-85.333h-136.533l55.467-55.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-touch" d="M298.667 704h-85.333c0 140.8 115.2 256 256 256s256-115.2 256-256h-85.333c0 93.867-76.8 170.667-170.667 170.667s-170.667-76.8-170.667-170.667zM938.667 311.467v-375.467h-529.067l-247.467 247.467c-25.6 25.6-38.4 59.733-38.4 93.867s12.8 68.267 38.4 93.867c51.2 51.2 128 51.2 179.2 8.533v324.267c0 72.533 55.467 128 128 128s128-55.467 128-128v-221.867l260.267-64c46.933-12.8 81.067-55.467 81.067-106.667zM853.333 311.467c0 8.533-8.533 17.067-17.067 21.333l-324.267 81.067v290.133c0 25.6-17.067 42.667-42.667 42.667s-42.667-17.067-42.667-42.667v-529.067l-136.533 136.533c-17.067 17.067-46.933 17.067-68.267 0-8.533-8.533-12.8-21.333-12.8-34.133s4.267-25.6 12.8-34.133l221.867-221.867h409.6v290.133z" />
|
||||
<glyph unicode="" glyph-name="mbri-trash" d="M682.667 789.333v170.667h-341.333v-170.667h-256v-85.333h85.333l42.667-768h597.333l42.667 768h85.333v85.333h-256zM426.667 874.667h170.667v-85.333h-170.667v85.333zM729.6 21.333h-435.2l-34.133 682.667h507.733l-38.4-682.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-underline" d="M853.333 960v-512c0-187.733-153.6-341.333-341.333-341.333s-341.333 153.6-341.333 341.333v512h85.333v-512c0-140.8 115.2-256 256-256s256 115.2 256 256v512h85.333zM170.667-64h682.667v85.333h-682.667v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-undo" d="M1024 290.133l-85.333-25.6c-21.333 68.267-59.733 136.533-115.2 187.733-170.667 166.4-452.267 166.4-627.2 0-38.4-38.4-68.267-85.333-93.867-132.267h324.267v-85.333h-426.667v426.667h85.333v-209.067c17.067 21.333 34.133 42.667 51.2 59.733 204.8 196.267 541.867 196.267 746.667 0 68.267-59.733 115.2-136.533 140.8-221.867z" />
|
||||
<glyph unicode="" glyph-name="mbri-unlink" d="M256 64l-128 128 234.667 234.667-64 64-298.667-298.667 256-256 298.667 298.667-64 64-234.667-234.667zM1024 704l-256 256-298.667-298.667 64-64 234.667 234.667 128-128-234.667-234.667 64-64 298.667 298.667zM426.667 832h-85.333v-128h85.333v128zM128 533.333h128v85.333h-128v-85.333zM597.333 64h85.333v128h-85.333v-128zM896 362.667h-128v-85.333h128v85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-unlock" d="M768 960c-140.8 0-256-115.2-256-256v-170.667h-512v-597.333h682.667v597.333h-85.333v170.667c0 93.867 76.8 170.667 170.667 170.667s170.667-76.8 170.667-170.667v-85.333h85.333v85.333c0 140.8-115.2 256-256 256zM597.333 21.333h-512v426.667h512v-426.667z" />
|
||||
<glyph unicode="" glyph-name="mbri-up-down" d="M738.133 281.6l59.733-59.733-285.867-285.867-285.867 285.867 59.733 59.733 183.467-183.467v699.733l-183.467-183.467-59.733 59.733 285.867 285.867 285.867-285.867-59.733-59.733-183.467 183.467v-699.733l183.467 183.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-up" d="M226.133 674.133l285.867 285.867 285.867-285.867-59.733-59.733-183.467 183.467v-861.867h-85.333v861.867l-183.467-183.467-59.733 59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-update" d="M725.333 238.933l59.733-59.733c-72.533-72.533-170.667-110.933-273.067-110.933-192 0-354.133 140.8-379.733 328.533l-59.733-59.733-59.733 59.733 157.867 153.6 157.867-157.867-59.733-59.733-46.933 46.933c29.867-132.267 149.333-230.4 290.133-230.4 81.067 0 153.6 29.867 213.333 89.6zM951.467 563.2l-59.733-59.733c-25.6 187.733-187.733 328.533-379.733 328.533-102.4 0-200.533-38.4-273.067-110.933l59.733-59.733c59.733 55.467 132.267 85.333 213.333 85.333 140.8 0 260.267-98.133 290.133-230.4l-46.933 46.933-59.733-59.733 157.867-157.867 157.867 157.867-59.733 59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-upload-2" d="M554.667 21.333h-85.333v477.867l-98.133-98.133-59.733 59.733 200.533 200.533 200.533-200.533-59.733-59.733-98.133 98.133v-477.867zM844.8 661.333c-29.867 145.067-162.133 256-311.467 256-136.533 0-256-89.6-302.933-213.333h-17.067c-119.467 0-213.333-93.867-213.333-213.333s93.867-213.333 213.333-213.333h170.667v85.333h-170.667c-72.533 0-128 55.467-128 128s55.467 128 128 128h85.333l4.267 25.6c21.333 110.933 119.467 187.733 230.4 187.733 123.733 0 226.133-93.867 234.667-217.6v-38.4h64c59.733 0 106.667-46.933 106.667-106.667s-46.933-106.667-106.667-106.667h-192v-85.333h192c106.667 0 192 85.333 192 192 0 102.4-76.8 183.467-179.2 192z" />
|
||||
<glyph unicode="" glyph-name="mbri-upload" d="M285.867 614.4l-59.733 59.733 285.867 285.867 285.867-285.867-59.733-59.733-183.467 183.467v-691.2h-85.333v691.2l-183.467-183.467zM853.333 106.667v-85.333h-682.667v85.333h-85.333v-170.667h853.333v170.667h-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-user-2" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM256 106.667c0 140.8 115.2 256 256 256s256-115.2 256-256c-72.533-55.467-157.867-85.333-256-85.333s-183.467 34.133-256 85.333zM384 576c0 72.533 55.467 128 128 128s128-55.467 128-128-55.467-128-128-128-128 55.467-128 128zM844.8 179.2c-21.333 106.667-93.867 192-192 238.933 42.667 38.4 72.533 93.867 72.533 157.867 0 119.467-93.867 213.333-213.333 213.333s-213.333-93.867-213.333-213.333c0-64 29.867-119.467 72.533-157.867-98.133-46.933-166.4-132.267-192-238.933-59.733 72.533-93.867 166.4-93.867 268.8 0 234.667 192 426.667 426.667 426.667s426.667-192 426.667-426.667c0-102.4-34.133-196.267-93.867-268.8z" />
|
||||
<glyph unicode="" glyph-name="mbri-user" d="M669.867 503.467c59.733 46.933 98.133 119.467 98.133 200.533 0 140.8-115.2 256-256 256s-256-115.2-256-256c0-81.067 38.4-153.6 98.133-200.533-157.867-64-268.8-217.6-268.8-396.8v-170.667h853.333v170.667c0 179.2-110.933 332.8-268.8 396.8zM341.333 704c0 93.867 76.8 170.667 170.667 170.667s170.667-76.8 170.667-170.667-76.8-170.667-170.667-170.667-170.667 76.8-170.667 170.667zM853.333 21.333h-682.667v85.333c0 187.733 153.6 341.333 341.333 341.333s341.333-153.6 341.333-341.333v-85.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-users" d="M840.533 460.8c34.133 34.133 55.467 85.333 55.467 136.533 0 106.667-85.333 192-192 192s-192-85.333-192-192c-17.067 12.8-38.4 25.6-59.733 34.133 34.133 34.133 59.733 85.333 59.733 136.533 0 106.667-85.333 192-192 192s-192-85.333-192-192c0-55.467 21.333-102.4 55.467-136.533-106.667-51.2-183.467-162.133-183.467-290.133v-234.667h384v-170.667h640v234.667c0 128-76.8 238.933-183.467 290.133zM704 704c59.733 0 106.667-46.933 106.667-106.667s-46.933-106.667-106.667-106.667-106.667 46.933-106.667 106.667 46.933 106.667 106.667 106.667zM213.333 768c0 59.733 46.933 106.667 106.667 106.667s106.667-46.933 106.667-106.667-46.933-106.667-106.667-106.667-106.667 46.933-106.667 106.667zM85.333 341.333c0 128 106.667 234.667 234.667 234.667 89.6 0 174.933-55.467 213.333-136.533-85.333-51.2-140.8-145.067-149.333-247.467h-298.667v149.333zM938.667 21.333h-469.333v149.333c0 128 106.667 234.667 234.667 234.667s234.667-106.667 234.667-234.667v-149.333z" />
|
||||
<glyph unicode="" glyph-name="mbri-video-play" d="M0 832v-768h1024v768h-1024zM938.667 149.333h-853.333v597.333h853.333v-597.333zM384 661.333v-426.667l341.333 213.333-341.333 213.333zM469.333 499.2l89.6-51.2-89.6-51.2v102.4z" />
|
||||
<glyph unicode="" glyph-name="mbri-video" d="M981.333 750.933l-256-213.333v209.067h-682.667v-597.333h682.667v209.067l256-213.333v605.867zM640 234.667h-512v426.667h512v-426.667zM896 324.267l-145.067 123.733 145.067 123.733v-247.467z" />
|
||||
<glyph unicode="" glyph-name="mbri-watch" d="M469.333 618.667h85.333v-213.333h-170.667v85.333h85.333v128zM853.333 448c0-106.667-51.2-204.8-128-268.8l-51.2-243.2h-324.267l-51.2 243.2c-76.8 64-128 157.867-128 268.8 0 106.667 51.2 204.8 128 268.8l51.2 243.2h324.267l51.2-243.2c76.8-64 128-162.133 128-268.8zM396.8 768c38.4 12.8 76.8 21.333 115.2 21.333s76.8-8.533 115.2-21.333l-21.333 106.667h-187.733l-21.333-106.667zM627.2 128c-38.4-12.8-76.8-21.333-115.2-21.333s-76.8 8.533-115.2 21.333l21.333-106.667h187.733l21.333 106.667zM768 448c0 140.8-115.2 256-256 256s-256-115.2-256-256 115.2-256 256-256 256 115.2 256 256z" />
|
||||
<glyph unicode="" glyph-name="mbri-website-theme-2" d="M640 576v384h-256v-384l-256-85.333v-554.667h768v554.667l-256 85.333zM810.667 21.333h-341.333v85.333h-85.333v-85.333h-170.667v256h597.333v-256zM810.667 362.667h-597.333v68.267l256 85.333v358.4h85.333v-358.4l256-85.333v-68.267z" />
|
||||
<glyph unicode="" glyph-name="mbri-website-theme" d="M896-64h-768v640h-128v384h379.733l8.533-29.867c17.067-59.733 64-98.133 123.733-98.133s106.667 38.4 123.733 98.133l8.533 29.867h379.733v-384h-128v-640zM213.333 21.333h597.333v640h128v213.333h-230.4c-34.133-76.8-110.933-128-196.267-128s-162.133 51.2-196.267 128h-230.4v-213.333h128v-640z" />
|
||||
<glyph unicode="" glyph-name="mbri-wifi" d="M631.467 226.133l-119.467-119.467-119.467 119.467c64 68.267 174.933 68.267 238.933 0zM149.333 469.333l59.733-59.733c166.4 166.4 439.467 166.4 605.867 0l59.733 59.733c-200.533 200.533-524.8 200.533-725.333 0zM268.8 349.867l59.733-59.733c51.2 46.933 115.2 72.533 183.467 72.533s132.267-25.6 179.2-76.8l59.733 59.733c-64 68.267-149.333 102.4-238.933 102.4s-174.933-34.133-243.2-98.133zM512 789.333c-183.467 0-354.133-72.533-482.133-200.533l59.733-59.733c110.933 110.933 264.533 174.933 422.4 174.933s311.467-64 422.4-174.933l59.733 59.733c-128 128-298.667 200.533-482.133 200.533z" />
|
||||
<glyph unicode="" glyph-name="mbri-windows" d="M0 785.067v-669.867l1024-140.8v947.2l-1024-136.533zM938.667 490.667h-422.4v277.333l422.4 59.733v-337.067zM430.933 755.2v-264.533h-345.6v217.6l345.6 46.933zM85.333 405.333h345.6v-264.533l-345.6 46.933v217.6zM516.267 128v277.333h422.4v-337.067l-422.4 59.733z" />
|
||||
<glyph unicode="" glyph-name="mbri-zoom-in" d="M610.133 409.6c46.933 59.733 72.533 132.267 72.533 209.067 0 187.733-153.6 341.333-341.333 341.333s-341.333-153.6-341.333-341.333 153.6-341.333 341.333-341.333c76.8 0 149.333 25.6 209.067 72.533l401.067-401.067 59.733 59.733-401.067 401.067zM341.333 362.667c-140.8 0-256 115.2-256 256s115.2 256 256 256 256-115.2 256-256-115.2-256-256-256zM384 661.333h128v-85.333h-128v-128h-85.333v128h-128v85.333h128v128h85.333v-128z" />
|
||||
<glyph unicode="" glyph-name="mbri-zoom-out" d="M1011.2 8.533l-401.067 401.067c46.933 59.733 72.533 132.267 72.533 209.067 0 187.733-153.6 341.333-341.333 341.333s-341.333-153.6-341.333-341.333 153.6-341.333 341.333-341.333c76.8 0 149.333 25.6 209.067 72.533l401.067-401.067 59.733 59.733zM341.333 362.667c-140.8 0-256 115.2-256 256s115.2 256 256 256 256-115.2 256-256-115.2-256-256-256zM170.667 661.333h341.333v-85.333h-341.333v85.333z" />
|
||||
</font></defs></svg>
|
||||
|
After Width: | Height: | Size: 71 KiB |
BIN
src/assets/web/assets/mobirise-icons2/mobirise2.ttf
Executable file
BIN
src/assets/web/assets/mobirise-icons2/mobirise2.woff
Executable file
737
src/assets/ytplayer/index.js
Executable file
@@ -0,0 +1,737 @@
|
||||
/*! yt-player. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
||||
var EventEmitter = function () {
|
||||
this.events = {};
|
||||
};
|
||||
|
||||
EventEmitter.prototype.on = function (event, listener) {
|
||||
if (typeof this.events[event] !== 'object') {
|
||||
this.events[event] = [];
|
||||
}
|
||||
|
||||
this.events[event].push(listener);
|
||||
};
|
||||
|
||||
EventEmitter.prototype.removeListener = function (event, listener) {
|
||||
var idx;
|
||||
|
||||
if (typeof this.events[event] === 'object') {
|
||||
idx = this.indexOf(this.events[event], listener);
|
||||
|
||||
if (idx > -1) {
|
||||
this.events[event].splice(idx, 1);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
EventEmitter.prototype.emit = function (event) {
|
||||
var i, listeners, length, args = [].slice.call(arguments, 1);
|
||||
|
||||
if (typeof this.events[event] === 'object') {
|
||||
listeners = this.events[event].slice();
|
||||
length = listeners.length;
|
||||
|
||||
for (i = 0; i < length; i++) {
|
||||
listeners[i].apply(this, args);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
EventEmitter.prototype.once = function (event, listener) {
|
||||
this.on(event, function g () {
|
||||
this.removeListener(event, g);
|
||||
listener.apply(this, arguments);
|
||||
});
|
||||
};
|
||||
|
||||
var loadScript = function (src, attrs, parentNode) {
|
||||
return new Promise((resolve, reject) => {
|
||||
var script = document.createElement('script')
|
||||
script.async = true
|
||||
script.src = src
|
||||
|
||||
for (var [k, v] of Object.entries(attrs || {})) {
|
||||
script.setAttribute(k, v)
|
||||
}
|
||||
|
||||
script.onload = () => {
|
||||
script.onerror = script.onload = null
|
||||
resolve(script)
|
||||
}
|
||||
|
||||
script.onerror = () => {
|
||||
script.onerror = script.onload = null
|
||||
reject(new Error(`Failed to load ${src}`))
|
||||
}
|
||||
|
||||
var node = parentNode || document.head || document.getElementsByTagName('head')[0]
|
||||
node.appendChild(script)
|
||||
})
|
||||
}
|
||||
|
||||
var YOUTUBE_IFRAME_API_SRC = 'https://www.youtube.com/iframe_api'
|
||||
|
||||
var YOUTUBE_STATES = {
|
||||
'-1': 'unstarted',
|
||||
0: 'ended',
|
||||
1: 'playing',
|
||||
2: 'paused',
|
||||
3: 'buffering',
|
||||
5: 'cued'
|
||||
}
|
||||
|
||||
var YOUTUBE_ERROR = {
|
||||
// The request contains an invalid parameter value. For example, this error
|
||||
// occurs if you specify a videoId that does not have 11 characters, or if the
|
||||
// videoId contains invalid characters, such as exclamation points or asterisks.
|
||||
INVALID_PARAM: 2,
|
||||
|
||||
// The requested content cannot be played in an HTML5 player or another error
|
||||
// related to the HTML5 player has occurred.
|
||||
HTML5_ERROR: 5,
|
||||
|
||||
// The video requested was not found. This error occurs when a video has been
|
||||
// removed (for any reason) or has been marked as private.
|
||||
NOT_FOUND: 100,
|
||||
|
||||
// The owner of the requested video does not allow it to be played in embedded
|
||||
// players.
|
||||
UNPLAYABLE_1: 101,
|
||||
|
||||
// This error is the same as 101. It's just a 101 error in disguise!
|
||||
UNPLAYABLE_2: 150
|
||||
}
|
||||
|
||||
var loadIframeAPICallbacks = []
|
||||
|
||||
/**
|
||||
* YouTube Player. Exposes a better API, with nicer events.
|
||||
* @param {HTMLElement|selector} element
|
||||
*/
|
||||
YouTubePlayer = class YouTubePlayer extends EventEmitter {
|
||||
constructor (element, opts) {
|
||||
super()
|
||||
|
||||
var elem = typeof element === 'string'
|
||||
? document.querySelector(element)
|
||||
: element
|
||||
|
||||
if (elem.id) {
|
||||
this._id = elem.id // use existing element id
|
||||
} else {
|
||||
this._id = elem.id = 'ytplayer-' + Math.random().toString(16).slice(2, 8)
|
||||
}
|
||||
|
||||
this._opts = Object.assign({
|
||||
width: 640,
|
||||
height: 360,
|
||||
autoplay: false,
|
||||
captions: undefined,
|
||||
controls: true,
|
||||
keyboard: true,
|
||||
fullscreen: true,
|
||||
annotations: true,
|
||||
modestBranding: false,
|
||||
related: true,
|
||||
timeupdateFrequency: 1000,
|
||||
playsInline: true,
|
||||
start: 0
|
||||
}, opts)
|
||||
|
||||
this.videoId = null
|
||||
this.destroyed = false
|
||||
|
||||
this._api = null
|
||||
this._autoplay = false // autoplay the first video?
|
||||
this._player = null
|
||||
this._ready = false // is player ready?
|
||||
this._queue = []
|
||||
this.replayInterval = []
|
||||
|
||||
this._interval = null
|
||||
|
||||
// Setup listeners for 'timeupdate' events. The YouTube Player does not fire
|
||||
// 'timeupdate' events, so they are simulated using a setInterval().
|
||||
this._startInterval = this._startInterval.bind(this)
|
||||
this._stopInterval = this._stopInterval.bind(this)
|
||||
|
||||
this.on('playing', this._startInterval)
|
||||
this.on('unstarted', this._stopInterval)
|
||||
this.on('ended', this._stopInterval)
|
||||
this.on('paused', this._stopInterval)
|
||||
this.on('buffering', this._stopInterval)
|
||||
|
||||
this._loadIframeAPI((err, api) => {
|
||||
if (err) return this._destroy(new Error('YouTube Iframe API failed to load'))
|
||||
this._api = api
|
||||
|
||||
// If load(videoId, [autoplay, [size]]) was called before Iframe API
|
||||
// loaded, ensure it gets called again now
|
||||
if (this.videoId) this.load(this.videoId, this._autoplay, this._start)
|
||||
})
|
||||
}
|
||||
|
||||
indexOf (haystack, needle) {
|
||||
var i = 0, length = haystack.length, idx = -1, found = false;
|
||||
|
||||
while (i < length && !found) {
|
||||
if (haystack[i] === needle) {
|
||||
idx = i;
|
||||
found = true;
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
|
||||
return idx;
|
||||
}
|
||||
|
||||
load (videoId, autoplay = false, start = 0) {
|
||||
if (this.destroyed) return
|
||||
|
||||
this._startOptimizeDisplayEvent()
|
||||
this._optimizeDisplayHandler('center, center')
|
||||
|
||||
this.videoId = videoId
|
||||
this._autoplay = autoplay
|
||||
this._start = start
|
||||
|
||||
// If the Iframe API is not ready yet, do nothing. Once the Iframe API is
|
||||
// ready, `load(this.videoId)` will be called.
|
||||
if (!this._api) return
|
||||
|
||||
// If there is no player instance, create one.
|
||||
if (!this._player) {
|
||||
this._createPlayer(videoId)
|
||||
return
|
||||
}
|
||||
|
||||
// If the player instance is not ready yet, do nothing. Once the player
|
||||
// instance is ready, `load(this.videoId)` will be called. This ensures that
|
||||
// the last call to `load()` is the one that takes effect.
|
||||
if (!this._ready) return
|
||||
|
||||
// If the player instance is ready, load the given `videoId`.
|
||||
if (autoplay) {
|
||||
this._player.loadVideoById(videoId, start)
|
||||
} else {
|
||||
this._player.cueVideoById(videoId, start)
|
||||
}
|
||||
}
|
||||
|
||||
play () {
|
||||
if (this._ready) this._player.playVideo()
|
||||
else this._queueCommand('play')
|
||||
}
|
||||
|
||||
replayFrom(num) {
|
||||
const find = this.replayInterval.find((obj) => {
|
||||
return obj.iframeParent === this._player.i.parentNode
|
||||
})
|
||||
if (find || !num) return
|
||||
this.replayInterval.push({
|
||||
iframeParent: this._player.i.parentNode,
|
||||
interval: setInterval(() => {
|
||||
if (this._player.getCurrentTime() >= this._player.getDuration() - Number(num)) {
|
||||
this.seek(0);
|
||||
for (const [key, val] of this.replayInterval.entries()) {
|
||||
if (Object.hasOwnProperty.call(this.replayInterval, key)) {
|
||||
clearInterval(this.replayInterval[key].interval)
|
||||
this.replayInterval.splice(key, 1)
|
||||
}
|
||||
}
|
||||
}
|
||||
}, Number(num) * 1000)
|
||||
})
|
||||
}
|
||||
|
||||
pause () {
|
||||
if (this._ready) this._player.pauseVideo()
|
||||
else this._queueCommand('pause')
|
||||
}
|
||||
|
||||
stop () {
|
||||
if (this._ready) this._player.stopVideo()
|
||||
else this._queueCommand('stop')
|
||||
}
|
||||
|
||||
seek (seconds) {
|
||||
if (this._ready) this._player.seekTo(seconds, true)
|
||||
else this._queueCommand('seek', seconds)
|
||||
}
|
||||
|
||||
_optimizeDisplayHandler(anchor) {
|
||||
if (!this._player) return
|
||||
const YTPlayer = this._player.i
|
||||
const YTPAlign = anchor.split(",");
|
||||
if (YTPlayer) {
|
||||
const win = {},
|
||||
el = YTPlayer.parentElement;
|
||||
|
||||
if (el) {
|
||||
const computedStyle = window.getComputedStyle(el),
|
||||
outerHeight = el.clientHeight + parseFloat(computedStyle.marginTop, 10) + parseFloat(computedStyle.marginBottom, 10) + parseFloat(computedStyle.borderTopWidth, 10) + parseFloat(computedStyle.borderBottomWidth, 10),
|
||||
outerWidth = el.clientWidth + parseFloat(computedStyle.marginLeft, 10) + parseFloat(computedStyle.marginRight, 10) + parseFloat(computedStyle.borderLeftWidth, 10) + parseFloat(computedStyle.borderRightWidth, 10),
|
||||
ratio = 1.7,
|
||||
vid = YTPlayer;
|
||||
|
||||
win.width = outerWidth;
|
||||
win.height = outerHeight + 80;
|
||||
|
||||
vid.style.width = win.width + 'px';
|
||||
vid.style.height = Math.ceil(parseFloat(vid.style.width, 10) / ratio) + 'px';
|
||||
vid.style.marginTop = Math.ceil(-((parseFloat(vid.style.height, 10) - win.height) / 2)) + 'px';
|
||||
vid.style.marginLeft = 0;
|
||||
|
||||
const lowest = parseFloat(vid.style.height, 10) < win.height;
|
||||
|
||||
if (lowest) {
|
||||
vid.style.height = win.height + 'px',
|
||||
vid.style.width = Math.ceil(parseFloat(vid.style.height, 10) * ratio) + 'px',
|
||||
vid.style.marginTop = 0,
|
||||
vid.style.marginLeft = Math.ceil(-((parseFloat(vid.style.width, 10) - win.width) / 2)) + 'px'
|
||||
}
|
||||
for (const align in YTPAlign)
|
||||
if (YTPAlign.hasOwnProperty(align)) {
|
||||
const al = YTPAlign[align].replace(/ /g, "");
|
||||
switch (al) {
|
||||
case "top":
|
||||
vid.style.marginTop = lowest ? -((parseFloat(vid.style.height, 10) - win.height) / 2) + 'px' : 0;
|
||||
break;
|
||||
case "bottom":
|
||||
vid.style.marginTop = lowest ? 0 : -(parseFloat(vid.style.height, 10) - win.height) + 'px';
|
||||
break;
|
||||
case "left":
|
||||
vid.style.marginLeft = 0;
|
||||
break;
|
||||
case "right":
|
||||
vid.style.marginLeft = lowest ? -(parseFloat(vid.style.width, 10) - win.width) : 0 + 'px';
|
||||
break;
|
||||
default:
|
||||
parseFloat(vid.style.width, 10) > win.width && (vid.style.marginLeft = -((parseFloat(vid.style.width, 10) - win.width) / 2) + 'px')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stopResize () {
|
||||
window.removeEventListener('resize', this._resizeListener)
|
||||
this._resizeListener = null
|
||||
}
|
||||
|
||||
stopReplay (iframeParent) {
|
||||
for (const [key, val] of this.replayInterval.entries()) {
|
||||
if (Object.hasOwnProperty.call(this.replayInterval, key)) {
|
||||
if (iframeParent === this.replayInterval[key].iframeParent) {
|
||||
clearInterval(this.replayInterval[key].interval);
|
||||
this.replayInterval.splice(key, 1)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
setVolume (volume) {
|
||||
if (this._ready) this._player.setVolume(volume)
|
||||
else this._queueCommand('setVolume', volume)
|
||||
}
|
||||
|
||||
loadPlaylist () {
|
||||
if (this._ready) this._player.loadPlaylist(this.videoId)
|
||||
else this._queueCommand('loadPlaylist', this.videoId)
|
||||
}
|
||||
|
||||
setLoop (bool) {
|
||||
if (this._ready) this._player.setLoop(bool)
|
||||
else this._queueCommand('setLoop', bool)
|
||||
}
|
||||
|
||||
getVolume () {
|
||||
return (this._ready && this._player.getVolume()) || 0
|
||||
}
|
||||
|
||||
mute () {
|
||||
if (this._ready) this._player.mute()
|
||||
else this._queueCommand('mute')
|
||||
}
|
||||
|
||||
unMute () {
|
||||
if (this._ready) this._player.unMute()
|
||||
else this._queueCommand('unMute')
|
||||
}
|
||||
|
||||
isMuted () {
|
||||
return (this._ready && this._player.isMuted()) || false
|
||||
}
|
||||
|
||||
setSize (width, height) {
|
||||
if (this._ready) this._player.setSize(width, height)
|
||||
else this._queueCommand('setSize', width, height)
|
||||
}
|
||||
|
||||
setPlaybackRate (rate) {
|
||||
if (this._ready) this._player.setPlaybackRate(rate)
|
||||
else this._queueCommand('setPlaybackRate', rate)
|
||||
}
|
||||
|
||||
setPlaybackQuality (suggestedQuality) {
|
||||
if (this._ready) this._player.setPlaybackQuality(suggestedQuality)
|
||||
else this._queueCommand('setPlaybackQuality', suggestedQuality)
|
||||
}
|
||||
|
||||
getPlaybackRate () {
|
||||
return (this._ready && this._player.getPlaybackRate()) || 1
|
||||
}
|
||||
|
||||
getAvailablePlaybackRates () {
|
||||
return (this._ready && this._player.getAvailablePlaybackRates()) || [1]
|
||||
}
|
||||
|
||||
getDuration () {
|
||||
return (this._ready && this._player.getDuration()) || 0
|
||||
}
|
||||
|
||||
getProgress () {
|
||||
return (this._ready && this._player.getVideoLoadedFraction()) || 0
|
||||
}
|
||||
|
||||
getState () {
|
||||
return (this._ready && YOUTUBE_STATES[this._player.getPlayerState()]) || 'unstarted'
|
||||
}
|
||||
|
||||
getCurrentTime () {
|
||||
return (this._ready && this._player.getCurrentTime()) || 0
|
||||
}
|
||||
|
||||
destroy () {
|
||||
this._destroy()
|
||||
}
|
||||
|
||||
_destroy (err) {
|
||||
if (this.destroyed) return
|
||||
this.destroyed = true
|
||||
|
||||
if (this._player) {
|
||||
this._player.stopVideo && this._player.stopVideo()
|
||||
this._player.destroy()
|
||||
}
|
||||
|
||||
this.videoId = null
|
||||
|
||||
this._id = null
|
||||
this._opts = null
|
||||
this._api = null
|
||||
this._player = null
|
||||
this._ready = false
|
||||
this._queue = null
|
||||
|
||||
this._stopInterval()
|
||||
|
||||
this.removeListener('playing', this._startInterval)
|
||||
this.removeListener('paused', this._stopInterval)
|
||||
this.removeListener('buffering', this._stopInterval)
|
||||
this.removeListener('unstarted', this._stopInterval)
|
||||
this.removeListener('ended', this._stopInterval)
|
||||
|
||||
if (err) this.emit('error', err)
|
||||
}
|
||||
|
||||
_queueCommand (command, ...args) {
|
||||
if (this.destroyed) return
|
||||
this._queue.push([command, args])
|
||||
}
|
||||
|
||||
_flushQueue () {
|
||||
while (this._queue.length) {
|
||||
var command = this._queue.shift()
|
||||
this[command[0]].apply(this, command[1])
|
||||
}
|
||||
}
|
||||
|
||||
_loadIframeAPI (cb) {
|
||||
// If API is loaded, there is nothing else to do
|
||||
if (window.YT && typeof window.YT.Player === 'function') {
|
||||
return cb(null, window.YT)
|
||||
}
|
||||
|
||||
// Otherwise, queue callback until API is loaded
|
||||
loadIframeAPICallbacks.push(cb)
|
||||
|
||||
var scripts = Array.from(document.getElementsByTagName('script'))
|
||||
var isLoading = scripts.some(script => script.src === YOUTUBE_IFRAME_API_SRC)
|
||||
|
||||
// If API <script> tag is not present in the page, inject it. Ensures that
|
||||
// if user includes a hardcoded <script> tag in HTML for performance, another
|
||||
// one will not be added
|
||||
if (!isLoading) {
|
||||
loadScript(YOUTUBE_IFRAME_API_SRC).catch(err => {
|
||||
while (loadIframeAPICallbacks.length) {
|
||||
var loadCb = loadIframeAPICallbacks.shift()
|
||||
loadCb(err)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
var prevOnYouTubeIframeAPIReady = window.onYouTubeIframeAPIReady
|
||||
window.onYouTubeIframeAPIReady = () => {
|
||||
if (typeof prevOnYouTubeIframeAPIReady === 'function') {
|
||||
prevOnYouTubeIframeAPIReady()
|
||||
}
|
||||
while (loadIframeAPICallbacks.length) {
|
||||
var loadCb = loadIframeAPICallbacks.shift()
|
||||
loadCb(null, window.YT)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
_createPlayer (videoId) {
|
||||
if (this.destroyed) return
|
||||
|
||||
var opts = this._opts
|
||||
|
||||
this._player = new this._api.Player(this._id, {
|
||||
width: opts.width,
|
||||
height: opts.height,
|
||||
videoId: videoId,
|
||||
|
||||
// (Not part of documented API) This parameter controls the hostname that
|
||||
// videos are loaded from. Set to `'https://www.youtube-nocookie.com'`
|
||||
// for enhanced privacy.
|
||||
host: opts.host,
|
||||
|
||||
playerVars: {
|
||||
// This parameter specifies whether the initial video will automatically
|
||||
// start to play when the player loads. Supported values are 0 or 1. The
|
||||
// default value is 0.
|
||||
autoplay: opts.autoplay ? 1 : 0,
|
||||
|
||||
mute: opts.mute ? 1 : 0,
|
||||
|
||||
// Setting the parameter's value to 1 causes closed captions to be shown
|
||||
// by default, even if the user has turned captions off. The default
|
||||
// behavior is based on user preference.
|
||||
// cc_load_policy: opts.captions != null
|
||||
// ? opts.captions !== false ? 1 : 0
|
||||
// : undefined, // default to not setting this option
|
||||
|
||||
// Sets the player's interface language. The parameter value is an ISO
|
||||
// 639-1 two-letter language code or a fully specified locale. For
|
||||
// example, fr and fr-ca are both valid values. Other language input
|
||||
// codes, such as IETF language tags (BCP 47) might also be handled
|
||||
// properly.
|
||||
hl: (opts.captions != null && opts.captions !== false)
|
||||
? opts.captions
|
||||
: undefined, // default to not setting this option
|
||||
|
||||
// This parameter specifies the default language that the player will
|
||||
// use to display captions. Set the parameter's value to an ISO 639-1
|
||||
// two-letter language code.
|
||||
cc_lang_pref: (opts.captions != null && opts.captions !== false)
|
||||
? opts.captions
|
||||
: undefined, // default to not setting this option
|
||||
|
||||
// This parameter indicates whether the video player controls are
|
||||
// displayed. For IFrame embeds that load a Flash player, it also defines
|
||||
// when the controls display in the player as well as when the player
|
||||
// will load. Supported values are:
|
||||
// - controls=0 – Player controls do not display in the player. For
|
||||
// IFrame embeds, the Flash player loads immediately.
|
||||
// - controls=1 – (default) Player controls display in the player. For
|
||||
// IFrame embeds, the controls display immediately and
|
||||
// the Flash player also loads immediately.
|
||||
// - controls=2 – Player controls display in the player. For IFrame
|
||||
// embeds, the controls display and the Flash player
|
||||
// loads after the user initiates the video playback.
|
||||
controls: opts.controls ? 2 : 0,
|
||||
|
||||
// Setting the parameter's value to 1 causes the player to not respond to
|
||||
// keyboard controls. The default value is 0, which means that keyboard
|
||||
// controls are enabled.
|
||||
// disablekb: opts.keyboard ? 0 : 1,
|
||||
|
||||
// Setting the parameter's value to 1 enables the player to be
|
||||
// controlled via IFrame or JavaScript Player API calls. The default
|
||||
// value is 0, which means that the player cannot be controlled using
|
||||
// those APIs.
|
||||
enablejsapi: 1,
|
||||
|
||||
// Setting this parameter to 0 prevents the fullscreen button from
|
||||
// displaying in the player. The default value is 1, which causes the
|
||||
// fullscreen button to display.
|
||||
allowfullscreen: true,
|
||||
|
||||
// Setting the parameter's value to 1 causes video annotations to be
|
||||
// shown by default, whereas setting to 3 causes video annotations to not
|
||||
// be shown by default. The default value is 1.
|
||||
iv_load_policy: opts.annotations ? 1 : 3,
|
||||
|
||||
// This parameter lets you use a YouTube player that does not show a
|
||||
// YouTube logo. Set the parameter value to 1 to prevent the YouTube logo
|
||||
// from displaying in the control bar. Note that a small YouTube text
|
||||
// label will still display in the upper-right corner of a paused video
|
||||
// when the user's mouse pointer hovers over the player.
|
||||
modestbranding: opts.modestBranding ? 1 : 0,
|
||||
|
||||
// This parameter provides an extra security measure for the IFrame API
|
||||
// and is only supported for IFrame embeds. If you are using the IFrame
|
||||
// API, which means you are setting the enablejsapi parameter value to 1,
|
||||
// you should always specify your domain as the origin parameter value.
|
||||
origin: '*',
|
||||
|
||||
// This parameter controls whether videos play inline or fullscreen in an
|
||||
// HTML5 player on iOS. Valid values are:
|
||||
// - 0: This value causes fullscreen playback. This is currently the
|
||||
// default value, though the default is subject to change.
|
||||
// - 1: This value causes inline playback for UIWebViews created with
|
||||
// the allowsInlineMediaPlayback property set to TRUE.
|
||||
// playsinline: opts.playsInline ? 1 : 0,
|
||||
|
||||
// This parameter indicates whether the player should show related
|
||||
// videos from the same channel (0) or from any channel (1) when
|
||||
// playback of the video ends. The default value is 1.
|
||||
rel: opts.related ? 1 : 0,
|
||||
|
||||
// (Not part of documented API) Allow html elements with higher z-index
|
||||
// to be shown on top of the YouTube player.
|
||||
mode: 'transparent',
|
||||
showinfo: 0,
|
||||
html5: 1,
|
||||
version: 3,
|
||||
playerapiid: 'iframe_YTP_1624972482514'
|
||||
// version=3&playerapiid=iframe_YTP_1624972482514
|
||||
// This parameter causes the player to begin playing the video at the given number
|
||||
// of seconds from the start of the video. The parameter value is a positive integer.
|
||||
// Note that similar to the seek function, the player will look for the closest
|
||||
// keyframe to the time you specify. This means that sometimes the play head may seek
|
||||
// to just before the requested time, usually no more than around two seconds.
|
||||
// start: opts.start
|
||||
},
|
||||
events: {
|
||||
onReady: () => this._onReady(videoId),
|
||||
onStateChange: (data) => this._onStateChange(data),
|
||||
onPlaybackQualityChange: (data) => this._onPlaybackQualityChange(data),
|
||||
onPlaybackRateChange: (data) => this._onPlaybackRateChange(data),
|
||||
onError: (data) => this._onError(data)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* This event fires when the player has finished loading and is ready to begin
|
||||
* receiving API calls.
|
||||
*/
|
||||
_onReady (videoId) {
|
||||
if (this.destroyed) return
|
||||
|
||||
this._ready = true
|
||||
|
||||
// Once the player is ready, always call `load(videoId, [autoplay, [size]])`
|
||||
// to handle these possible cases:
|
||||
//
|
||||
// 1. `load(videoId, true)` was called before the player was ready. Ensure that
|
||||
// the selected video starts to play.
|
||||
//
|
||||
// 2. `load(videoId, false)` was called before the player was ready. Now the
|
||||
// player is ready and there's nothing to do.
|
||||
//
|
||||
// 3. `load(videoId, [autoplay])` was called multiple times before the player
|
||||
// was ready. Therefore, the player was initialized with the wrong videoId,
|
||||
// so load the latest videoId and potentially autoplay it.
|
||||
this.load(this.videoId, this._autoplay, this._start)
|
||||
|
||||
this._flushQueue()
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when the player's state changes. We emit friendly events so the user
|
||||
* doesn't need to use YouTube's YT.PlayerState.* event constants.
|
||||
*/
|
||||
_onStateChange (data) {
|
||||
if (this.destroyed) return
|
||||
|
||||
var state = YOUTUBE_STATES[data.data]
|
||||
|
||||
if (state) {
|
||||
// Send a 'timeupdate' anytime the state changes. When the video halts for any
|
||||
// reason ('paused', 'buffering', or 'ended') no further 'timeupdate' events
|
||||
// should fire until the video unhalts.
|
||||
if (['paused', 'buffering', 'ended'].includes(state)) this._onTimeupdate()
|
||||
|
||||
this.emit(state)
|
||||
|
||||
// When the video changes ('unstarted' or 'cued') or starts ('playing') then a
|
||||
// 'timeupdate' should follow afterwards (never before!) to reset the time.
|
||||
if (['unstarted', 'playing', 'cued'].includes(state)) this._onTimeupdate()
|
||||
} else {
|
||||
throw new Error('Unrecognized state change: ' + data)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This event fires whenever the video playback quality changes. Possible
|
||||
* values are: 'small', 'medium', 'large', 'hd720', 'hd1080', 'highres'.
|
||||
*/
|
||||
_onPlaybackQualityChange (data) {
|
||||
if (this.destroyed) return
|
||||
this.emit('playbackQualityChange', data.data)
|
||||
}
|
||||
|
||||
/**
|
||||
* This event fires whenever the video playback rate changes.
|
||||
*/
|
||||
_onPlaybackRateChange (data) {
|
||||
if (this.destroyed) return
|
||||
this.emit('playbackRateChange', data.data)
|
||||
}
|
||||
|
||||
/**
|
||||
* This event fires if an error occurs in the player.
|
||||
*/
|
||||
_onError (data) {
|
||||
if (this.destroyed) return
|
||||
|
||||
var code = data.data
|
||||
|
||||
// The HTML5_ERROR error occurs when the YouTube player needs to switch from
|
||||
// HTML5 to Flash to show an ad. Ignore it.
|
||||
if (code === YOUTUBE_ERROR.HTML5_ERROR) return
|
||||
|
||||
// The remaining error types occur when the YouTube player cannot play the
|
||||
// given video. This is not a fatal error. Report it as unplayable so the user
|
||||
// has an opportunity to play another video.
|
||||
if (code === YOUTUBE_ERROR.UNPLAYABLE_1 ||
|
||||
code === YOUTUBE_ERROR.UNPLAYABLE_2 ||
|
||||
code === YOUTUBE_ERROR.NOT_FOUND ||
|
||||
code === YOUTUBE_ERROR.INVALID_PARAM) {
|
||||
return this.emit('unplayable', this.videoId)
|
||||
}
|
||||
|
||||
// Unexpected error, does not match any known type
|
||||
this._destroy(new Error('YouTube Player Error. Unknown error code: ' + code))
|
||||
}
|
||||
|
||||
_startOptimizeDisplayEvent () {
|
||||
if (this._resizeListener) return;
|
||||
this._resizeListener = () => this._optimizeDisplayHandler('center, center')
|
||||
window.addEventListener('resize', this._resizeListener);
|
||||
}
|
||||
|
||||
/**
|
||||
* This event fires when the time indicated by the `getCurrentTime()` method
|
||||
* has been updated.
|
||||
*/
|
||||
_onTimeupdate () {
|
||||
this.emit('timeupdate', this.getCurrentTime())
|
||||
}
|
||||
|
||||
_startInterval () {
|
||||
this._interval = setInterval(() => this._onTimeupdate(), this._opts.timeupdateFrequency)
|
||||
}
|
||||
|
||||
_stopInterval () {
|
||||
clearInterval(this._interval)
|
||||
this._interval = null
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||