├── .gitignore ├── AceZeroProxy.png ├── CNAME ├── README.md ├── _config.yml ├── _data └── zeronet_proxies.csv ├── _includes ├── head.html └── header.html ├── _layouts ├── default.html ├── home.html ├── index.html └── style.css ├── assets ├── css │ ├── bootstrap.min.css │ ├── icons-social.css │ ├── icons.css │ └── style.css ├── favicon.png ├── jquery-2.1.4.min.js ├── jquery.app.js ├── jquery.easing.1.3.min.js ├── jquery.sticky.js └── main.js ├── index.html └── static ├── bg-pattern.png ├── bootstrap.min.css ├── bootstrap.min.js ├── favicon.png ├── icons-social.css ├── icons.css ├── jquery-2.1.4.min.js ├── jquery.app.js ├── jquery.easing.1.3.min.js ├── jquery.sticky.js ├── logo.png ├── main.js └── style.css /.gitignore: -------------------------------------------------------------------------------- 1 | ################# 2 | ## Eclipse 3 | ################# 4 | 5 | *.pydevproject 6 | .project 7 | .metadata 8 | bin/ 9 | tmp/ 10 | *.tmp 11 | *.bak 12 | *.swp 13 | *~.nib 14 | local.properties 15 | .classpath 16 | .settings/ 17 | .loadpath 18 | 19 | # External tool builders 20 | .externalToolBuilders/ 21 | 22 | # Locally stored "Eclipse launch configurations" 23 | *.launch 24 | 25 | # CDT-specific 26 | .cproject 27 | 28 | # PDT-specific 29 | .buildpath 30 | 31 | 32 | ################# 33 | ## Visual Studio 34 | ################# 35 | 36 | ## Ignore Visual Studio temporary files, build results, and 37 | ## files generated by popular Visual Studio add-ons. 38 | 39 | # User-specific files 40 | *.suo 41 | *.user 42 | *.sln.docstates 43 | 44 | # Build results 45 | 46 | [Dd]ebug/ 47 | [Rr]elease/ 48 | x64/ 49 | build/ 50 | [Bb]in/ 51 | [Oo]bj/ 52 | 53 | # MSTest test Results 54 | [Tt]est[Rr]esult*/ 55 | [Bb]uild[Ll]og.* 56 | 57 | *_i.c 58 | *_p.c 59 | *.ilk 60 | *.meta 61 | *.obj 62 | *.pch 63 | *.pdb 64 | *.pgc 65 | *.pgd 66 | *.rsp 67 | *.sbr 68 | *.tlb 69 | *.tli 70 | *.tlh 71 | *.tmp 72 | *.tmp_proj 73 | *.log 74 | *.vspscc 75 | *.vssscc 76 | .builds 77 | *.pidb 78 | *.log 79 | *.scc 80 | 81 | # Visual C++ cache files 82 | ipch/ 83 | *.aps 84 | *.ncb 85 | *.opensdf 86 | *.sdf 87 | *.cachefile 88 | 89 | # Visual Studio profiler 90 | *.psess 91 | *.vsp 92 | *.vspx 93 | 94 | # Guidance Automation Toolkit 95 | *.gpState 96 | 97 | # ReSharper is a .NET coding add-in 98 | _ReSharper*/ 99 | *.[Rr]e[Ss]harper 100 | 101 | # TeamCity is a build add-in 102 | _TeamCity* 103 | 104 | # DotCover is a Code Coverage Tool 105 | *.dotCover 106 | 107 | # NCrunch 108 | *.ncrunch* 109 | .*crunch*.local.xml 110 | 111 | # Installshield output folder 112 | [Ee]xpress/ 113 | 114 | # DocProject is a documentation generator add-in 115 | DocProject/buildhelp/ 116 | DocProject/Help/*.HxT 117 | DocProject/Help/*.HxC 118 | DocProject/Help/*.hhc 119 | DocProject/Help/*.hhk 120 | DocProject/Help/*.hhp 121 | DocProject/Help/Html2 122 | DocProject/Help/html 123 | 124 | # Click-Once directory 125 | publish/ 126 | 127 | # Publish Web Output 128 | *.Publish.xml 129 | *.pubxml 130 | *.publishproj 131 | 132 | # NuGet Packages Directory 133 | ## TODO: If you have NuGet Package Restore enabled, uncomment the next line 134 | #packages/ 135 | 136 | # Windows Azure Build Output 137 | csx 138 | *.build.csdef 139 | 140 | # Windows Store app package directory 141 | AppPackages/ 142 | 143 | # Others 144 | sql/ 145 | *.Cache 146 | ClientBin/ 147 | [Ss]tyle[Cc]op.* 148 | ~$* 149 | *~ 150 | *.dbmdl 151 | *.[Pp]ublish.xml 152 | *.pfx 153 | *.publishsettings 154 | 155 | # RIA/Silverlight projects 156 | Generated_Code/ 157 | 158 | # Backup & report files from converting an old project file to a newer 159 | # Visual Studio version. Backup files are not needed, because we have git ;-) 160 | _UpgradeReport_Files/ 161 | Backup*/ 162 | UpgradeLog*.XML 163 | UpgradeLog*.htm 164 | 165 | # SQL Server files 166 | App_Data/*.mdf 167 | App_Data/*.ldf 168 | 169 | ############# 170 | ## Windows detritus 171 | ############# 172 | 173 | # Windows image file caches 174 | Thumbs.db 175 | ehthumbs.db 176 | 177 | # Folder config file 178 | Desktop.ini 179 | 180 | # Recycle Bin used on file shares 181 | $RECYCLE.BIN/ 182 | 183 | # Mac crap 184 | .DS_Store 185 | 186 | 187 | ############# 188 | ## Python 189 | ############# 190 | 191 | *.py[cod] 192 | 193 | # Packages 194 | *.egg 195 | *.egg-info 196 | dist/ 197 | build/ 198 | eggs/ 199 | parts/ 200 | var/ 201 | sdist/ 202 | develop-eggs/ 203 | .installed.cfg 204 | 205 | # Installer logs 206 | pip-log.txt 207 | 208 | # Unit test / coverage reports 209 | .coverage 210 | .tox 211 | 212 | #Translations 213 | *.mo 214 | 215 | #Mr Developer 216 | .mr.developer.cfg 217 | 218 | # Site 219 | _site/ 220 | .sass-cache/ 221 | .jekyll-metadata 222 | -------------------------------------------------------------------------------- /AceZeroProxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AceLewis/AceZeroProxy/8951c4b54440ac82b1b222c57cf7bc67f4ffd582/AceZeroProxy.png -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | zero.acelewis.com 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AceZeroProxy - ZeroNet's Meta Proxy 2 | 3 | ZeroNet is a way to host websites in a decentralised manner, to view these sites you need to have ZeroNet installed on your PC or use a ZeroNet proxy. Many ZeroNet proxies may only run for a week or a month this is a big problem that AceZeroProxy addresses. 4 | 5 | This ZeroNet meta proxy is simple to use, try it out [https://zero.acelewis.com](https://zero.acelewis.com) and read below how it works. 6 | 7 | ![AceZeroProxy](./AceZeroProxy.png) 8 | 9 | # The Problem 10 | 11 | If you are using ZeroNet and want to share a link with a someone then they must have ZeroNet installed unless you use a ZeroNet Proxy. The problem with ZeroNet proxies is sometimes they go down... actually they quite often go down. This is a big headache if you want to post links to a ZeroNet proxy on a blog post or on social media because you would have to go through and update all the link when the ZeroNet proxy goes down. 12 | 13 | The second problem is that it may be difficult to remember the link to a working proxy, with this meta proxy you only need to remember one somewhat simple address: [https://zero.acelewis.com](https://zero.acelewis.com) 14 | 15 | # How this works 16 | This is done 100% in client side Javascript, this means that I will not know the sites that you have visited whilst using the ZeroNet Meta Proxy (the proxies will) but more importantly it can be hosted for free on Github Pages. 17 | 18 | All this does is takes a ZeroNet link and redirects that link to a random ZeroNet proxy (currently I am only using ZeroNet Proxies that run on port 80/HTTP or 443/HTTPS as they bypass simple port blocking). 19 | 20 | ##### How to convert a ZeroNet link into a ZeroNet Proxy link 21 | 22 | The easiest way is to just use the website however if you want to do it programmatically you can do the following: 23 | 24 | Take the ZeroNet URL for example; 25 | 26 | [http://127.0.0.1:43110/1LennyjL5VUTvwiLtBUjMrZ85gCbVe1dj1/](http://127.0.0.1:43110/1LennyjL5VUTvwiLtBUjMrZ85gCbVe1dj1/) 27 | 28 | and then replace the [http://127.0.0.1:43110/](http://127.0.0.1:43110/) with [https://zero.acelewis.com#](https://zero.acelewis.com#). Which gives; 29 | 30 | [https://zero.acelewis.com#1LennyjL5VUTvwiLtBUjMrZ85gCbVe1dj1/](https://zero.acelewis.com#1LennyjL5VUTvwiLtBUjMrZ85gCbVe1dj1/) 31 | 32 | # Warning 33 | 34 | I do not recommend using a ZeroNet proxy to sign in to ZeroNet as it is technically possible for the proxy to steal your private key. Only use these ZeroNet proxies to browse ZeroNet sites. I will not know the sites you visit but the proxies obviously will. 35 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | ### GENERAL SETTINGS ### 2 | 3 | # Site settings 4 | title: Zeronet Proxy 5 | description: "A meta ZeroNet proxy site" 6 | blog_name: "Alexander Lewis (AceLewis)" 7 | analytics: UA-70463146-1 #Google analytics code in the format XX-nnnnnnnn-n 8 | baseurl: "" #important: start with / 9 | url: "https://zeronet.acelewis.com" 10 | 11 | # Build settings 12 | markdown: kramdown 13 | permalink: /:categories/:title 14 | excerpt_separator: #use this in posts to define how long the excerpt of the post (that is shown on the Blog page) is 15 | 16 | colors: #in hex code if not noted else 17 | primary: "#00b3fe" #"#F70031" 18 | primary_rgb: "0,179,254" #"247,0,49" #rgb of the primary. Needed in some places for the transparency effect. 19 | secondary: "#384452" #"#33004D" 20 | link: "#428bca" 21 | link_hover: "#01b2fe" 22 | footer_heading: "#ffffff" 23 | footer_content: "#bfc9d3" 24 | 25 | newtab: :target="_blank" 26 | ### CONTACT SETTINGS ### 27 | twitter_username: "_AceLewis" 28 | # Social networks usernames. Many more available: google-plus, flickr, linkedin, etc). Shown in footer. 29 | social: 30 | - title: Twitter 31 | fa_icon: 32 | url: https://twitter.com/_AceLewis 33 | - title: Reddit 34 | fa_icon: 35 | url: https://reddit.com/u/_AceLewis 36 | - title: Github 37 | fa_icon: 38 | url: https://github.com/AceLewis 39 | - title: YouTube 40 | fa_icon: 41 | url: https://www.youtube.com/channel/UCRn4xTmE0IIEPsdt6R0gzcw 42 | 43 | contact: 44 | - title: Twitter 45 | url: https://twitter.com/_AceLewis 46 | site_name: _AceLewis 47 | - title: Reddit 48 | url: https://reddit.com/u/_AceLewis 49 | site_name: _AceLewis 50 | 51 | 52 | 53 | # Postal address (add as many lines as necessary). Shown in footer and on Contact page. 54 | address: 55 | - lines: 56 | - Nottingham 57 | - United Kingdom. 58 | email: N/A 59 | tel: N/A 60 | 61 | 62 | ### GENERAL DATA FOR VARIOUS LOCATIONS ### 63 | 64 | # Members information. Shown on About page. 65 | members: 66 | - name: Alexander Lewis 67 | # position: Owner 68 | text: I am a 4th and final year Physicist at the University of Nottingham. 69 | img: AceLewisProfilePic.jpg 70 | social: 71 | - title: envelope #use for email address 72 | url: mailto:Removed due to spam 73 | - title: twitter 74 | url: http://twitter.com/_AceLewis 75 | 76 | # Clients information. Shown on Home and About pages. 77 | clients: 78 | - name: dribbble 79 | img: client01.png 80 | 81 | 82 | # FOOTER ABOUT, Shown in footer on every page 83 | about_footer: "I'm a 4th year Physicist at The University of Nottingham, I am interested in Physics, Maths, Programming and also play a few games in my spare time. I have an interest in data and have made webscrapers to gather information that I can then process, I am currently looking into nice ways to display information easily in infographics using Python. I can code in Matlab, Python and have also made a Steam trading bot in Node.JS." 84 | about_home: "I'm a 4th year Physicist at The University of Nottingham, I am interested in Physics, Maths, Programming and also play a few games in my spare time. I have an interest in data and have made webscrapers to gather information that I can then process, I am currently looking into nice ways to display information easily in infographics using Python. I can code in Matlab, Python and have also made a Steam trading bot in Node.JS." 85 | about_about: " 86 | I am a Physicist at The University of Nottingham currently in my 4th and final year. 87 | I love Physics and also have a big interest in programming, before university I did a bit of 88 | programming in C++ and I enjoyed it however whilst at university I was taught Matlab 89 | a mathematical and statistical language aimed at scientists and engineers, Matlab 90 | further infulenced me into getting into programming as a hobby. 91 | I have done a few projects in Matlab however outside of Physics I do my projects 92 | in other languages such as Python and Node.js as they are free and opensource 93 | so anyone can use what I make in them. 94 |

95 | I also love the hardware side technology from CPUs, CCDs, CMOSs and the semiconductors that 96 | build these up I have learned a lot about how they work on the 97 | nanoscale on my course and in my own time. I also 98 | did a summer internship in The University of Nottingham's Spintronics department the main focus was to 99 | see if and how the Spin Hall effect 100 | could be used to store data for use in computers 101 | in creating long term storage, RAM, and CPU cache. If the Spin Hall effect could be used 102 | in computers the memory would be non-volatile meaning that unlike in traditional RAM 103 | where there would be no need for Memory refresh. Conventional RAM is volatile so 104 | it needs to be \"refreshed\", by using non-volatile memory the power usage would be 105 | reduced. This technology could potentially be used to create faster, cheaper, 106 | more reliable storage that has a much higher storage density however is far from 107 | being used in commercial products. 108 |

109 | I also enjoy skiing, cycling, magic tricks, and I used to love playing football but I have not 110 | got the time to play in a team anymore. 111 |

" 112 | 113 | # Testimonial content. Shown on Home and About page. 114 | testimonial: 115 | message: "I am a 4th year Physicist at The University of Nottingham, I am interested in Physics, Maths, Programming and also play a few games in my spare time. I have an interest in data and have made webscrapers to gather information that I can then process, I am currently looking into nice ways to display information easily in infographics using Python. I can code in Matlab, Python and have also made a Steam trading bot in Node.JS." 116 | author: Alex Lewis (AceLewis) 117 | # position: WEB DESIGNER - BLACKTIE.CO 118 | 119 | # CONTACT PAGE 120 | about_contact: "You can contact me on any of the sites listed, note I no longer make Steam Trade bots for people so please do not contact me about purchasing them however if you want a bit of help with Steam's API I will gladly help you out." 121 | where_to_contact_text: "You can contact me on any of the services provided, note I have not included my email address as I do not want to be spammed." 122 | -------------------------------------------------------------------------------- /_data/zeronet_proxies.csv: -------------------------------------------------------------------------------- 1 | zeronet_proxy, 2 | https://0net-preview.com, 3 | -------------------------------------------------------------------------------- /_includes/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /_includes/header.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AceLewis/AceZeroProxy/8951c4b54440ac82b1b222c57cf7bc67f4ffd582/_includes/header.html -------------------------------------------------------------------------------- /_layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {% include head.html %} 5 | 6 | 7 | {% include nav.html %} 8 | 9 | {{ content }} 10 | 11 | {% include footer.html %} 12 | {% include js.html %} 13 | 14 | 15 | -------------------------------------------------------------------------------- /_layouts/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {% include head.html %} 5 | 6 | 7 | 8 | {{ content }} 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /_layouts/index.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: home 3 | --- 4 | 5 | {{ content }} 6 | 7 | {% comment %} 8 | {% include testimonial.html %} 9 | {% include clients.html %} 10 | {% endcomment %} 11 | -------------------------------------------------------------------------------- /_layouts/style.css: -------------------------------------------------------------------------------- 1 | {% include css/style.css %} -------------------------------------------------------------------------------- /assets/css/icons-social.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'pe-icon-social'; 3 | src:url('../fonts/pe-icon-social.eot?-96eskg'); 4 | src:url('../fonts/pe-icon-social.eot?#iefix-96eskg') format('embedded-opentype'), 5 | url('../fonts/pe-icon-social.woff?-96eskg') format('woff'), 6 | url('../fonts/pe-icon-social.ttf?-96eskg') format('truetype'), 7 | url('../fonts/pe-icon-social.svg?-96eskg#pe-icon-social') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | 12 | [class^="pe-so-"], [class*=" pe-so-"] { 13 | display: inline-block; 14 | font-family: 'pe-icon-social'; 15 | speak: none; 16 | font-style: normal; 17 | font-weight: normal; 18 | font-variant: normal; 19 | text-transform: none; 20 | line-height: 1; 21 | 22 | /* Better Font Rendering =========== */ 23 | -webkit-font-smoothing: antialiased; 24 | -moz-osx-font-smoothing: grayscale; 25 | } 26 | 27 | .pe-so-500px:before { 28 | content: "\e600"; 29 | } 30 | .pe-so-aim:before { 31 | content: "\e601"; 32 | } 33 | .pe-so-amazon:before { 34 | content: "\e602"; 35 | } 36 | .pe-so-android:before { 37 | content: "\e603"; 38 | } 39 | .pe-so-app-store:before { 40 | content: "\e604"; 41 | } 42 | .pe-so-apple:before { 43 | content: "\e605"; 44 | } 45 | .pe-so-behance:before { 46 | content: "\e606"; 47 | } 48 | .pe-so-bitbucket:before { 49 | content: "\e607"; 50 | } 51 | .pe-so-blogger:before { 52 | content: "\e608"; 53 | } 54 | .pe-so-bootstrap:before { 55 | content: "\e609"; 56 | } 57 | .pe-so-chrome:before { 58 | content: "\e60a"; 59 | } 60 | .pe-so-codepen:before { 61 | content: "\e60b"; 62 | } 63 | .pe-so-css3:before { 64 | content: "\e60c"; 65 | } 66 | .pe-so-delicious:before { 67 | content: "\e60d"; 68 | } 69 | .pe-so-deviantart-1:before { 70 | content: "\e60e"; 71 | } 72 | .pe-so-deviantart-2:before { 73 | content: "\e60f"; 74 | } 75 | .pe-so-digg:before { 76 | content: "\e610"; 77 | } 78 | .pe-so-dribbble:before { 79 | content: "\e611"; 80 | } 81 | .pe-so-dropbox:before { 82 | content: "\e612"; 83 | } 84 | .pe-so-drupal:before { 85 | content: "\e613"; 86 | } 87 | .pe-so-ebay:before { 88 | content: "\e614"; 89 | } 90 | .pe-so-etsy:before { 91 | content: "\e615"; 92 | } 93 | .pe-so-evernote:before { 94 | content: "\e616"; 95 | } 96 | .pe-so-facebook:before { 97 | content: "\e617"; 98 | } 99 | .pe-so-firefox:before { 100 | content: "\e618"; 101 | } 102 | .pe-so-flattr:before { 103 | content: "\e619"; 104 | } 105 | .pe-so-flickr:before { 106 | content: "\e61a"; 107 | } 108 | .pe-so-forrst:before { 109 | content: "\e61b"; 110 | } 111 | .pe-so-foursquare:before { 112 | content: "\e61c"; 113 | } 114 | .pe-so-git:before { 115 | content: "\e61d"; 116 | } 117 | .pe-so-github:before { 118 | content: "\e61e"; 119 | } 120 | .pe-so-google-drive:before { 121 | content: "\e61f"; 122 | } 123 | .pe-so-google-plus:before { 124 | content: "\e620"; 125 | } 126 | .pe-so-grooveshark:before { 127 | content: "\e621"; 128 | } 129 | .pe-so-habbo:before { 130 | content: "\e622"; 131 | } 132 | .pe-so-hacker-news:before { 133 | content: "\e623"; 134 | } 135 | .pe-so-html5:before { 136 | content: "\e624"; 137 | } 138 | .pe-so-ie:before { 139 | content: "\e625"; 140 | } 141 | .pe-so-instagram:before { 142 | content: "\e626"; 143 | } 144 | .pe-so-joomla:before { 145 | content: "\e627"; 146 | } 147 | .pe-so-jsfiddle:before { 148 | content: "\e628"; 149 | } 150 | .pe-so-lanyrd:before { 151 | content: "\e629"; 152 | } 153 | .pe-so-lastfm:before { 154 | content: "\e62a"; 155 | } 156 | .pe-so-like:before { 157 | content: "\e62b"; 158 | } 159 | .pe-so-linkedin:before { 160 | content: "\e62c"; 161 | } 162 | .pe-so-linux:before { 163 | content: "\e62d"; 164 | } 165 | .pe-so-love:before { 166 | content: "\e62e"; 167 | } 168 | .pe-so-magento:before { 169 | content: "\e62f"; 170 | } 171 | .pe-so-myspace:before { 172 | content: "\e630"; 173 | } 174 | .pe-so-odnolassniki:before { 175 | content: "\e631"; 176 | } 177 | .pe-so-openid:before { 178 | content: "\e632"; 179 | } 180 | .pe-so-opera:before { 181 | content: "\e633"; 182 | } 183 | .pe-so-paypal-1:before { 184 | content: "\e634"; 185 | } 186 | .pe-so-paypal-2:before { 187 | content: "\e635"; 188 | } 189 | .pe-so-picasa:before { 190 | content: "\e636"; 191 | } 192 | .pe-so-pied-piper:before { 193 | content: "\e637"; 194 | } 195 | .pe-so-pinterest:before { 196 | content: "\e638"; 197 | } 198 | .pe-so-pixeden:before { 199 | content: "\e639"; 200 | } 201 | .pe-so-qq:before { 202 | content: "\e63a"; 203 | } 204 | .pe-so-qzone:before { 205 | content: "\e63b"; 206 | } 207 | .pe-so-rdio:before { 208 | content: "\e63c"; 209 | } 210 | .pe-so-reddit:before { 211 | content: "\e63d"; 212 | } 213 | .pe-so-renren:before { 214 | content: "\e63e"; 215 | } 216 | .pe-so-rss:before { 217 | content: "\e63f"; 218 | } 219 | .pe-so-safari-1:before { 220 | content: "\e640"; 221 | } 222 | .pe-so-safari-2:before { 223 | content: "\e641"; 224 | } 225 | .pe-so-sass:before { 226 | content: "\e642"; 227 | } 228 | .pe-so-share:before { 229 | content: "\e643"; 230 | } 231 | .pe-so-skype:before { 232 | content: "\e644"; 233 | } 234 | .pe-so-slideshare:before { 235 | content: "\e645"; 236 | } 237 | .pe-so-soundcloud:before { 238 | content: "\e646"; 239 | } 240 | .pe-so-spotify:before { 241 | content: "\e647"; 242 | } 243 | .pe-so-stack-exchange:before { 244 | content: "\e648"; 245 | } 246 | .pe-so-stack-overflow:before { 247 | content: "\e649"; 248 | } 249 | .pe-so-steam:before { 250 | content: "\e64a"; 251 | } 252 | .pe-so-stumbleupon:before { 253 | content: "\e64b"; 254 | } 255 | .pe-so-tencent-weibo:before { 256 | content: "\e64c"; 257 | } 258 | .pe-so-trello:before { 259 | content: "\e64d"; 260 | } 261 | .pe-so-tripadvisor:before { 262 | content: "\e64e"; 263 | } 264 | .pe-so-tumblr:before { 265 | content: "\e64f"; 266 | } 267 | .pe-so-twitch:before { 268 | content: "\e650"; 269 | } 270 | .pe-so-twitter:before { 271 | content: "\e651"; 272 | } 273 | .pe-so-ubuntu:before { 274 | content: "\e652"; 275 | } 276 | .pe-so-viadeo:before { 277 | content: "\e653"; 278 | } 279 | .pe-so-vimeo:before { 280 | content: "\e654"; 281 | } 282 | .pe-so-vine:before { 283 | content: "\e655"; 284 | } 285 | .pe-so-vk:before { 286 | content: "\e656"; 287 | } 288 | .pe-so-wechat:before { 289 | content: "\e657"; 290 | } 291 | .pe-so-weibo:before { 292 | content: "\e658"; 293 | } 294 | .pe-so-wikipedia:before { 295 | content: "\e659"; 296 | } 297 | .pe-so-windows:before { 298 | content: "\e65a"; 299 | } 300 | .pe-so-wordpress-1:before { 301 | content: "\e65b"; 302 | } 303 | .pe-so-wordpress-2:before { 304 | content: "\e65c"; 305 | } 306 | .pe-so-xing:before { 307 | content: "\e65d"; 308 | } 309 | .pe-so-yahoo-1:before { 310 | content: "\e65e"; 311 | } 312 | .pe-so-yahoo-2:before { 313 | content: "\e65f"; 314 | } 315 | .pe-so-yelp:before { 316 | content: "\e660"; 317 | } 318 | .pe-so-youtube-1:before { 319 | content: "\e661"; 320 | } 321 | .pe-so-youtube-2:before { 322 | content: "\e662"; 323 | } 324 | .pe-so-zerply:before { 325 | content: "\e663"; 326 | } 327 | -------------------------------------------------------------------------------- /assets/css/icons.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Pe-icon-7-stroke'; 3 | src:url('../fonts/Pe-icon-7-stroke.eot?-2irksn'); 4 | src:url('../fonts/Pe-icon-7-stroke.eot?#iefix-2irksn') format('embedded-opentype'), 5 | url('../fonts/Pe-icon-7-stroke.woff?-2irksn') format('woff'), 6 | url('../fonts/Pe-icon-7-stroke.ttf?-2irksn') format('truetype'), 7 | url('../fonts/Pe-icon-7-stroke.svg?-2irksn#Pe-icon-7-stroke') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | 12 | [class^="pe-7s-"], [class*=" pe-7s-"] { 13 | display: inline-block; 14 | font-family: 'Pe-icon-7-stroke'; 15 | speak: none; 16 | font-style: normal; 17 | font-weight: normal; 18 | font-variant: normal; 19 | text-transform: none; 20 | line-height: 1; 21 | 22 | /* Better Font Rendering =========== */ 23 | -webkit-font-smoothing: antialiased; 24 | -moz-osx-font-smoothing: grayscale; 25 | } 26 | 27 | .pe-7s-cloud-upload:before { 28 | content: "\e68a"; 29 | } 30 | .pe-7s-cash:before { 31 | content: "\e68c"; 32 | } 33 | .pe-7s-close:before { 34 | content: "\e680"; 35 | } 36 | .pe-7s-bluetooth:before { 37 | content: "\e68d"; 38 | } 39 | .pe-7s-cloud-download:before { 40 | content: "\e68b"; 41 | } 42 | .pe-7s-way:before { 43 | content: "\e68e"; 44 | } 45 | .pe-7s-close-circle:before { 46 | content: "\e681"; 47 | } 48 | .pe-7s-id:before { 49 | content: "\e68f"; 50 | } 51 | .pe-7s-angle-up:before { 52 | content: "\e682"; 53 | } 54 | .pe-7s-wristwatch:before { 55 | content: "\e690"; 56 | } 57 | .pe-7s-angle-up-circle:before { 58 | content: "\e683"; 59 | } 60 | .pe-7s-world:before { 61 | content: "\e691"; 62 | } 63 | .pe-7s-angle-right:before { 64 | content: "\e684"; 65 | } 66 | .pe-7s-volume:before { 67 | content: "\e692"; 68 | } 69 | .pe-7s-angle-right-circle:before { 70 | content: "\e685"; 71 | } 72 | .pe-7s-users:before { 73 | content: "\e693"; 74 | } 75 | .pe-7s-angle-left:before { 76 | content: "\e686"; 77 | } 78 | .pe-7s-user-female:before { 79 | content: "\e694"; 80 | } 81 | .pe-7s-angle-left-circle:before { 82 | content: "\e687"; 83 | } 84 | .pe-7s-up-arrow:before { 85 | content: "\e695"; 86 | } 87 | .pe-7s-angle-down:before { 88 | content: "\e688"; 89 | } 90 | .pe-7s-switch:before { 91 | content: "\e696"; 92 | } 93 | .pe-7s-angle-down-circle:before { 94 | content: "\e689"; 95 | } 96 | .pe-7s-scissors:before { 97 | content: "\e697"; 98 | } 99 | .pe-7s-wallet:before { 100 | content: "\e600"; 101 | } 102 | .pe-7s-safe:before { 103 | content: "\e698"; 104 | } 105 | .pe-7s-volume2:before { 106 | content: "\e601"; 107 | } 108 | .pe-7s-volume1:before { 109 | content: "\e602"; 110 | } 111 | .pe-7s-voicemail:before { 112 | content: "\e603"; 113 | } 114 | .pe-7s-video:before { 115 | content: "\e604"; 116 | } 117 | .pe-7s-user:before { 118 | content: "\e605"; 119 | } 120 | .pe-7s-upload:before { 121 | content: "\e606"; 122 | } 123 | .pe-7s-unlock:before { 124 | content: "\e607"; 125 | } 126 | .pe-7s-umbrella:before { 127 | content: "\e608"; 128 | } 129 | .pe-7s-trash:before { 130 | content: "\e609"; 131 | } 132 | .pe-7s-tools:before { 133 | content: "\e60a"; 134 | } 135 | .pe-7s-timer:before { 136 | content: "\e60b"; 137 | } 138 | .pe-7s-ticket:before { 139 | content: "\e60c"; 140 | } 141 | .pe-7s-target:before { 142 | content: "\e60d"; 143 | } 144 | .pe-7s-sun:before { 145 | content: "\e60e"; 146 | } 147 | .pe-7s-study:before { 148 | content: "\e60f"; 149 | } 150 | .pe-7s-stopwatch:before { 151 | content: "\e610"; 152 | } 153 | .pe-7s-star:before { 154 | content: "\e611"; 155 | } 156 | .pe-7s-speaker:before { 157 | content: "\e612"; 158 | } 159 | .pe-7s-signal:before { 160 | content: "\e613"; 161 | } 162 | .pe-7s-shuffle:before { 163 | content: "\e614"; 164 | } 165 | .pe-7s-shopbag:before { 166 | content: "\e615"; 167 | } 168 | .pe-7s-share:before { 169 | content: "\e616"; 170 | } 171 | .pe-7s-server:before { 172 | content: "\e617"; 173 | } 174 | .pe-7s-search:before { 175 | content: "\e618"; 176 | } 177 | .pe-7s-film:before { 178 | content: "\e6a5"; 179 | } 180 | .pe-7s-science:before { 181 | content: "\e619"; 182 | } 183 | .pe-7s-disk:before { 184 | content: "\e6a6"; 185 | } 186 | .pe-7s-ribbon:before { 187 | content: "\e61a"; 188 | } 189 | .pe-7s-repeat:before { 190 | content: "\e61b"; 191 | } 192 | .pe-7s-refresh:before { 193 | content: "\e61c"; 194 | } 195 | .pe-7s-add-user:before { 196 | content: "\e6a9"; 197 | } 198 | .pe-7s-refresh-cloud:before { 199 | content: "\e61d"; 200 | } 201 | .pe-7s-paperclip:before { 202 | content: "\e69c"; 203 | } 204 | .pe-7s-radio:before { 205 | content: "\e61e"; 206 | } 207 | .pe-7s-note2:before { 208 | content: "\e69d"; 209 | } 210 | .pe-7s-print:before { 211 | content: "\e61f"; 212 | } 213 | .pe-7s-network:before { 214 | content: "\e69e"; 215 | } 216 | .pe-7s-prev:before { 217 | content: "\e620"; 218 | } 219 | .pe-7s-mute:before { 220 | content: "\e69f"; 221 | } 222 | .pe-7s-power:before { 223 | content: "\e621"; 224 | } 225 | .pe-7s-medal:before { 226 | content: "\e6a0"; 227 | } 228 | .pe-7s-portfolio:before { 229 | content: "\e622"; 230 | } 231 | .pe-7s-like2:before { 232 | content: "\e6a1"; 233 | } 234 | .pe-7s-plus:before { 235 | content: "\e623"; 236 | } 237 | .pe-7s-left-arrow:before { 238 | content: "\e6a2"; 239 | } 240 | .pe-7s-play:before { 241 | content: "\e624"; 242 | } 243 | .pe-7s-key:before { 244 | content: "\e6a3"; 245 | } 246 | .pe-7s-plane:before { 247 | content: "\e625"; 248 | } 249 | .pe-7s-joy:before { 250 | content: "\e6a4"; 251 | } 252 | .pe-7s-photo-gallery:before { 253 | content: "\e626"; 254 | } 255 | .pe-7s-pin:before { 256 | content: "\e69b"; 257 | } 258 | .pe-7s-phone:before { 259 | content: "\e627"; 260 | } 261 | .pe-7s-plug:before { 262 | content: "\e69a"; 263 | } 264 | .pe-7s-pen:before { 265 | content: "\e628"; 266 | } 267 | .pe-7s-right-arrow:before { 268 | content: "\e699"; 269 | } 270 | .pe-7s-paper-plane:before { 271 | content: "\e629"; 272 | } 273 | .pe-7s-delete-user:before { 274 | content: "\e6a7"; 275 | } 276 | .pe-7s-paint:before { 277 | content: "\e62a"; 278 | } 279 | .pe-7s-bottom-arrow:before { 280 | content: "\e6a8"; 281 | } 282 | .pe-7s-notebook:before { 283 | content: "\e62b"; 284 | } 285 | .pe-7s-note:before { 286 | content: "\e62c"; 287 | } 288 | .pe-7s-next:before { 289 | content: "\e62d"; 290 | } 291 | .pe-7s-news-paper:before { 292 | content: "\e62e"; 293 | } 294 | .pe-7s-musiclist:before { 295 | content: "\e62f"; 296 | } 297 | .pe-7s-music:before { 298 | content: "\e630"; 299 | } 300 | .pe-7s-mouse:before { 301 | content: "\e631"; 302 | } 303 | .pe-7s-more:before { 304 | content: "\e632"; 305 | } 306 | .pe-7s-moon:before { 307 | content: "\e633"; 308 | } 309 | .pe-7s-monitor:before { 310 | content: "\e634"; 311 | } 312 | .pe-7s-micro:before { 313 | content: "\e635"; 314 | } 315 | .pe-7s-menu:before { 316 | content: "\e636"; 317 | } 318 | .pe-7s-map:before { 319 | content: "\e637"; 320 | } 321 | .pe-7s-map-marker:before { 322 | content: "\e638"; 323 | } 324 | .pe-7s-mail:before { 325 | content: "\e639"; 326 | } 327 | .pe-7s-mail-open:before { 328 | content: "\e63a"; 329 | } 330 | .pe-7s-mail-open-file:before { 331 | content: "\e63b"; 332 | } 333 | .pe-7s-magnet:before { 334 | content: "\e63c"; 335 | } 336 | .pe-7s-loop:before { 337 | content: "\e63d"; 338 | } 339 | .pe-7s-look:before { 340 | content: "\e63e"; 341 | } 342 | .pe-7s-lock:before { 343 | content: "\e63f"; 344 | } 345 | .pe-7s-lintern:before { 346 | content: "\e640"; 347 | } 348 | .pe-7s-link:before { 349 | content: "\e641"; 350 | } 351 | .pe-7s-like:before { 352 | content: "\e642"; 353 | } 354 | .pe-7s-light:before { 355 | content: "\e643"; 356 | } 357 | .pe-7s-less:before { 358 | content: "\e644"; 359 | } 360 | .pe-7s-keypad:before { 361 | content: "\e645"; 362 | } 363 | .pe-7s-junk:before { 364 | content: "\e646"; 365 | } 366 | .pe-7s-info:before { 367 | content: "\e647"; 368 | } 369 | .pe-7s-home:before { 370 | content: "\e648"; 371 | } 372 | .pe-7s-help2:before { 373 | content: "\e649"; 374 | } 375 | .pe-7s-help1:before { 376 | content: "\e64a"; 377 | } 378 | .pe-7s-graph3:before { 379 | content: "\e64b"; 380 | } 381 | .pe-7s-graph2:before { 382 | content: "\e64c"; 383 | } 384 | .pe-7s-graph1:before { 385 | content: "\e64d"; 386 | } 387 | .pe-7s-graph:before { 388 | content: "\e64e"; 389 | } 390 | .pe-7s-global:before { 391 | content: "\e64f"; 392 | } 393 | .pe-7s-gleam:before { 394 | content: "\e650"; 395 | } 396 | .pe-7s-glasses:before { 397 | content: "\e651"; 398 | } 399 | .pe-7s-gift:before { 400 | content: "\e652"; 401 | } 402 | .pe-7s-folder:before { 403 | content: "\e653"; 404 | } 405 | .pe-7s-flag:before { 406 | content: "\e654"; 407 | } 408 | .pe-7s-filter:before { 409 | content: "\e655"; 410 | } 411 | .pe-7s-file:before { 412 | content: "\e656"; 413 | } 414 | .pe-7s-expand1:before { 415 | content: "\e657"; 416 | } 417 | .pe-7s-exapnd2:before { 418 | content: "\e658"; 419 | } 420 | .pe-7s-edit:before { 421 | content: "\e659"; 422 | } 423 | .pe-7s-drop:before { 424 | content: "\e65a"; 425 | } 426 | .pe-7s-drawer:before { 427 | content: "\e65b"; 428 | } 429 | .pe-7s-download:before { 430 | content: "\e65c"; 431 | } 432 | .pe-7s-display2:before { 433 | content: "\e65d"; 434 | } 435 | .pe-7s-display1:before { 436 | content: "\e65e"; 437 | } 438 | .pe-7s-diskette:before { 439 | content: "\e65f"; 440 | } 441 | .pe-7s-date:before { 442 | content: "\e660"; 443 | } 444 | .pe-7s-cup:before { 445 | content: "\e661"; 446 | } 447 | .pe-7s-culture:before { 448 | content: "\e662"; 449 | } 450 | .pe-7s-crop:before { 451 | content: "\e663"; 452 | } 453 | .pe-7s-credit:before { 454 | content: "\e664"; 455 | } 456 | .pe-7s-copy-file:before { 457 | content: "\e665"; 458 | } 459 | .pe-7s-config:before { 460 | content: "\e666"; 461 | } 462 | .pe-7s-compass:before { 463 | content: "\e667"; 464 | } 465 | .pe-7s-comment:before { 466 | content: "\e668"; 467 | } 468 | .pe-7s-coffee:before { 469 | content: "\e669"; 470 | } 471 | .pe-7s-cloud:before { 472 | content: "\e66a"; 473 | } 474 | .pe-7s-clock:before { 475 | content: "\e66b"; 476 | } 477 | .pe-7s-check:before { 478 | content: "\e66c"; 479 | } 480 | .pe-7s-chat:before { 481 | content: "\e66d"; 482 | } 483 | .pe-7s-cart:before { 484 | content: "\e66e"; 485 | } 486 | .pe-7s-camera:before { 487 | content: "\e66f"; 488 | } 489 | .pe-7s-call:before { 490 | content: "\e670"; 491 | } 492 | .pe-7s-calculator:before { 493 | content: "\e671"; 494 | } 495 | .pe-7s-browser:before { 496 | content: "\e672"; 497 | } 498 | .pe-7s-box2:before { 499 | content: "\e673"; 500 | } 501 | .pe-7s-box1:before { 502 | content: "\e674"; 503 | } 504 | .pe-7s-bookmarks:before { 505 | content: "\e675"; 506 | } 507 | .pe-7s-bicycle:before { 508 | content: "\e676"; 509 | } 510 | .pe-7s-bell:before { 511 | content: "\e677"; 512 | } 513 | .pe-7s-battery:before { 514 | content: "\e678"; 515 | } 516 | .pe-7s-ball:before { 517 | content: "\e679"; 518 | } 519 | .pe-7s-back:before { 520 | content: "\e67a"; 521 | } 522 | .pe-7s-attention:before { 523 | content: "\e67b"; 524 | } 525 | .pe-7s-anchor:before { 526 | content: "\e67c"; 527 | } 528 | .pe-7s-albums:before { 529 | content: "\e67d"; 530 | } 531 | .pe-7s-alarm:before { 532 | content: "\e67e"; 533 | } 534 | .pe-7s-airplay:before { 535 | content: "\e67f"; 536 | } 537 | -------------------------------------------------------------------------------- /assets/css/style.css: -------------------------------------------------------------------------------- 1 | 2 | .ios-ui-select{ 3 | border-color: #d1d1d1; 4 | float: right; 5 | margin-top: -4px; 6 | margin-left: 6px; 7 | /* width: 44px; */ 8 | height: 28px; 9 | -webkit-border-radius: 100%; 10 | border-radius: 100%; 11 | opacity: 1 12 | -webkit-box-shadow: inset 0 0 0 2px #4E4E4E; 13 | box-shadow: inset 0 0 0 2px #4E4E4E; 14 | width: 26px; 15 | z-index: 2; 16 | text-align: center; 17 | display: inline-block; 18 | cursor: pointer; 19 | height: 26px; 20 | -webkit-border-radius: 18px; 21 | border-radius: 18px; 22 | -webkit-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 23 | -moz-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 24 | -o-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 25 | transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 26 | text-indent: -9999px; 27 | display: inline-block; 28 | } 29 | .ios-ui-select.checked { 30 | -webkit-box-shadow: inset 0 0 0 14px #8D4ADC; 31 | box-shadow: inset 0 0 0 14px #8D4ADC; 32 | opacity: 1 !important; 33 | } 34 | .ios-ui-select.checked .inner{ 35 | -moz-transform: scale(1); 36 | -webkit-transform: scale(1); 37 | -o-transform: scale(1); 38 | -ms-transform: scale(1); 39 | transform: scale(1); 40 | } 41 | .ios-ui-select .inner{ 42 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAQAAADa613fAAAC70lEQVR42u3bPWgUQRgG4N0kxpjCYJFCFBVRCyFg0PgD/oAiKpGgAUEwhVhoI4I2FoIpxDSmCBZqIYopRMEUWiSIiilEBEEwKCgHRgwqKsIhxngQ89qYkMu9iTuzs7N74Z0rb+bbe/Z2Z+b79i5EMDtaRSCIIIIIIogggggiiCCCCCKIIIIIIogggggyWyE15Q+ZF3QF+WAkeB20GI1Dtl616Md4G0Nr9JHZYlSjD5PbIMJyhFSiB1Pb8qijs3OPhMH1oDXGPZyRbyPEFZS2j6got0urE6y1ldvN3k4Z7SYxssA4RRmdZlHSZxzDGGFcjj7xZgPShj+E0W3KSBuyH6OE0YNK81hpMnajQBi9qLaJlh5jG4YJ4zFq7eKlxdiAPGE8w3zbiOkwGvCdMAawwD5mGoxV+EIYb1AfJ6p/xjIMEcY7LI4X1zdjEXKEMYQVcSObda9CE9ahyvpw9XhFGF+xOv4pMuncjE//Ntd7rA5WhxeEkccaF9919K6Nk5avAvZaZONPCeMnNrq5aKN3vVX0AX5hu9GBavCIMEyjOIHkSs7lJoOiwj3CKKDZ3TQSvetLcnU3Riwq3CaMURxwOR9G79phOd+EuEZGjuGw24ndZM6xWwEu0vzvuOsVyqTzUromD864JndQxmn3S61Z95V0l/R22l3SGco4l8SeIcl96wnK6Epm82M+ZP00mUTdlH5HaFHhqnk2ntymcSvN7fqLcruDNBu/aZONJ7n73UWz7b6JbLuFvn8Xc5LbV9sO3DdD/WMHfpP3HtgVFZLPRw5RSjc20wvviW1RwUdidZTezqzg9rxkKsgUJMBJRGkD8bJxP6nu2f8ycljoI4mOH+LCjIwPWOKnGuDiWdOlaRmf4xcVfFZRQtygjG9o8FefcfU89g5Ju5p8FprcPSHvLWIMY4vfipnL3yw8nGCMYKfvCqbLYHNxHu/xA/ex1n9FOdQfKgURRBBBBBFEEEEEEUQQQQQRRBBBBBFEEEHG21/sNjJ4iVKmQwAAAABJRU5ErkJggg==) center center no-repeat; 43 | background-size: 100%; 44 | width: 100%; 45 | height: 100%; 46 | content: ''; 47 | -webkit-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 48 | -moz-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 49 | -o-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 50 | transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 51 | -moz-transform: scale(0); 52 | -webkit-transform: scale(0); 53 | -o-transform: scale(0); 54 | -ms-transform: scale(0); 55 | transform: scale(0); 56 | } 57 | 58 | body { 59 | background-color: #f9f9f9; 60 | color: #505458; 61 | font-family: 'Roboto', sans-serif; 62 | } 63 | 64 | .logo { 65 | max-width: 148px; 66 | } 67 | 68 | a{ 69 | text-decoration: none !important; 70 | -webkit-transition: all 400ms ease-in-out; 71 | -moz-transition: all 400ms ease-in-out; 72 | -o-transition: all 400ms ease-in-out; 73 | transition: all 400ms ease-in-out; 74 | } 75 | 76 | /* BUTTONS */ 77 | 78 | .btn-dark { 79 | background-color: #3b4a69; 80 | color: #fff !important; 81 | padding: 9px 20px !important; 82 | text-transform: uppercase; 83 | font-weight: 500; 84 | letter-spacing: 0.04em; 85 | -webkit-transition: all 400ms ease-in-out; 86 | -moz-transition: all 400ms ease-in-out; 87 | -o-transition: all 400ms ease-in-out; 88 | transition: all 400ms ease-in-out; 89 | } 90 | 91 | .btn-white { 92 | background-color: #fff; 93 | color: #505458 !important; 94 | padding: 9px 20px !important; 95 | text-transform: uppercase; 96 | font-weight: 500; 97 | letter-spacing: 0.04em; 98 | -webkit-transition: all 400ms ease-in-out; 99 | -moz-transition: all 400ms ease-in-out; 100 | -o-transition: all 400ms ease-in-out; 101 | transition: all 400ms ease-in-out; 102 | } 103 | 104 | .btn-custom,.btn-custom:hover,.btn-custom:focus { 105 | background-color: #43cea2; 106 | color: #fff !important; 107 | padding: 9px 20px !important; 108 | text-transform: uppercase; 109 | font-weight: 500; 110 | letter-spacing: 0.04em; 111 | box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12); 112 | -webkit-transition: all 400ms ease-in-out; 113 | -moz-transition: all 400ms ease-in-out; 114 | -o-transition: all 400ms ease-in-out; 115 | transition: all 400ms ease-in-out; 116 | } 117 | 118 | .btn-dark:hover,.btn-white:hover { 119 | background-color: #43cea2; 120 | color: #fff !important; 121 | box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12); 122 | } 123 | 124 | .btn-yellow { 125 | background-color: #f9c851; 126 | color: #ffffff !important; 127 | padding: 9px 20px !important; 128 | text-transform: uppercase; 129 | font-weight: 500; 130 | letter-spacing: 0.04em; 131 | -webkit-transition: all 400ms ease-in-out; 132 | -moz-transition: all 400ms ease-in-out; 133 | -o-transition: all 400ms ease-in-out; 134 | transition: all 400ms ease-in-out; 135 | } 136 | 137 | .video-btn { 138 | color: #ffffff !important; 139 | letter-spacing: 1px; 140 | padding-top: 20px; 141 | outline: none !important; 142 | } 143 | 144 | .video-btn i { 145 | margin-right: 7px; 146 | width: 20px; 147 | height: 20px; 148 | border: 2px solid #fff; 149 | border-radius: 50%; 150 | line-height: 17px; 151 | vertical-align: middle; 152 | text-align: center; 153 | font-size: 12px; 154 | padding-left: 3px; 155 | margin-left: -12px; 156 | } 157 | 158 | .btn-app-download { 159 | padding: 10px 22px 10px 65px; 160 | position: relative; 161 | border: 2px solid #43cea2; 162 | display: inline-block; 163 | color: #43cea2; 164 | margin-right: 10px; 165 | text-align: left; 166 | } 167 | 168 | .btn-app-download:hover,.btn-app-download:focus{ 169 | color: #fff; 170 | outline: none; 171 | background: #43cea2; 172 | } 173 | 174 | .btn-app-download i { 175 | font-size: 30px; 176 | left: 0; 177 | line-height: 1; 178 | margin: 13px 0 0 20px; 179 | position: absolute; 180 | top: 0; 181 | } 182 | 183 | .btn-app-download strong { 184 | display: block; 185 | font-weight: 700; 186 | margin-bottom: 6px; 187 | } 188 | 189 | .btn-app-download span { 190 | display: block; 191 | font-size: 11px; 192 | font-weight: 700; 193 | letter-spacing: 0.5px; 194 | margin-top: -3px; 195 | -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; 196 | filter: alpha(opacity=80); 197 | -moz-opacity: 0.8; 198 | -khtml-opacity: 0.8; 199 | opacity: 0.8; 200 | } 201 | 202 | .btn-purchase { 203 | font-size: 16px; 204 | } 205 | 206 | .btn-purchase i { 207 | font-size: 36px; 208 | } 209 | 210 | .btn-purchase span { 211 | font-size: 14px; 212 | opacity: 1; 213 | } 214 | 215 | 216 | /* HELPER CLASSES */ 217 | .section { 218 | padding-top: 50px; 219 | padding-bottom: 100px; 220 | } 221 | 222 | .section-md { 223 | padding-top: 70px; 224 | padding-bottom: 70px; 225 | } 226 | 227 | .section-lg { 228 | padding-top: 100px; 229 | padding-bottom: 150px; 230 | } 231 | 232 | .padding-b-0 { 233 | padding-bottom: 0px !important; 234 | } 235 | 236 | .bg-white { 237 | background-color: #fff !important; 238 | } 239 | 240 | .bg-dark { 241 | background-color: #28282e !important; 242 | } 243 | 244 | .title { 245 | font-family: 'Josefin Sans', sans-serif; 246 | font-weight: 700; 247 | margin-top: 0px; 248 | } 249 | .title-alt { 250 | color: #767D8E; 251 | line-height: 24px; 252 | margin: 0px auto 50px auto; 253 | font-size: 15px; 254 | } 255 | 256 | .text-muted { 257 | color: #98a6ad; 258 | } 259 | 260 | .vertical-content { 261 | display: -webkit-flex; 262 | display: -moz-flex; 263 | display: -ms-flexbox; 264 | display: flex; 265 | align-items: center; 266 | -webkit-align-items: center; 267 | justify-content: center; 268 | -webkit-justify-content: center; 269 | flex-direction: row; 270 | -webkit-flex-direction: row; 271 | } 272 | 273 | 274 | .bg-overlay { 275 | position: absolute; 276 | width: 100%; 277 | height: 100%; 278 | top: 0; 279 | background-color: rgba(0,0,0,0.7); 280 | } 281 | 282 | .bg-trans { 283 | background-color: transparent !important; 284 | } 285 | 286 | .bg-solid { 287 | background-color: #28282e !important; 288 | background-image: url("../images/bg-pattern.png"); 289 | background-repeat: repeat; 290 | } 291 | 292 | .bg-solid-1 { 293 | background-color: #6B14D3 !important; 294 | background-image: url("/static/bg-pattern.png"); 295 | background-repeat: repeat; 296 | } 297 | 298 | .bg-solid-2 { 299 | background-color: #43CEA2 !important; 300 | background-image: url("../images/bg-pattern.png"); 301 | background-repeat: repeat; 302 | } 303 | 304 | .bg-overlay-gradient { 305 | opacity: 0.7; 306 | background: #fc00ff; /* fallback for old browsers */ 307 | background: -webkit-linear-gradient(to left, #fc00ff , #00dbde); /* Chrome 10-25, Safari 5.1-6 */ 308 | background: linear-gradient(to left, #fc00ff , #00dbde); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 309 | } 310 | 311 | .bg-gradient { 312 | background: #2c3e50; /* fallback for old browsers */ 313 | background: -webkit-linear-gradient(to left, #2c3e50 , #3498db); /* Chrome 10-25, Safari 5.1-6 */ 314 | background: linear-gradient(to left, #2c3e50 , #3498db); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 315 | } 316 | 317 | .text-colored { 318 | color: #43cea2; 319 | } 320 | 321 | iframe { 322 | max-width: 100%; 323 | } 324 | 325 | .frame-border { 326 | border: 9px solid rgba(0, 0, 0, 0.3); 327 | webkit-border-radius: 5px 5px 5px 5px; 328 | -moz-border-radius: 5px 5px 5px 5px; 329 | border-radius: 5px 5px 5px 5px; 330 | } 331 | 332 | 333 | /* Navbar */ 334 | .navbar-default .navbar-nav>li>a { 335 | font-weight: 700; 336 | font-size: 16px; 337 | color: #182433; 338 | letter-spacing: 0.03em; 339 | font-family: 'Josefin Sans', sans-serif; 340 | } 341 | 342 | .navbar-default .navbar-nav>li>a:hover,.navbar-custom-dark.navbar-default .navbar-nav>li>a { 343 | } 344 | 345 | .navbar-custom { 346 | background-color: #fafafa; 347 | border: none; 348 | margin-bottom: 0px; 349 | border-radius: 0px; 350 | z-index: 9999; 351 | -webkit-transition: background-color 1s ease-in-out, border 1s ease-in-out; 352 | -moz-transition: background-color 1s ease-in-out, border 1s ease-in-out; 353 | -o-transition: background-color 1s ease-in-out, border 1s ease-in-out; 354 | transition: background-color 1s ease-in-out, border 1s ease-in-out; 355 | } 356 | 357 | .navbar-custom .navbar-brand { 358 | height: auto; 359 | } 360 | 361 | .navbar-custom-dark.navbar-default .navbar-nav>li>a { 362 | color: #ddd; 363 | } 364 | 365 | .navbar-toggle { 366 | background-color: transparent !important; 367 | margin-top: 14px; 368 | border: none; 369 | } 370 | 371 | .navbar-default .navbar-toggle .icon-bar { 372 | background-color: #3B4A69; 373 | } 374 | 375 | 376 | /* STICKY HEADER */ 377 | .sticky-wrapper { 378 | /*height: 0px !important;*/ 379 | z-index: 9999; 380 | height: auto !important; 381 | 382 | } 383 | 384 | .is-sticky .navbar-custom{ 385 | border-bottom: 5px solid #701ED2; 386 | background-color: #ffffff !important; 387 | z-index: 999; 388 | width: 100%; 389 | -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.1); 390 | -moz-box-shadow: 0 2px 2px rgba(0,0,0,.1); 391 | box-shadow: 0 2px 2px rgba(0,0,0,.1); 392 | } 393 | 394 | .is-sticky .navbar-custom .logo-dark { 395 | display: block !important; 396 | } 397 | 398 | .is-sticky .navbar-custom .logo-white { 399 | display: none !important; 400 | } 401 | 402 | .is-sticky .navbar-custom .navbar-nav li a { 403 | color: #333; 404 | } 405 | 406 | 407 | /* Home Typed */ 408 | .typed-cursor { 409 | opacity: 1; 410 | -webkit-animation: blink .6s infinite; 411 | -moz-animation: blink .6s infinite; 412 | -ms-animation: blink .6s infinite; 413 | -o-animation: blink .6s infinite; 414 | animation: blink .6s infinite; 415 | } 416 | @-webkit-keyframes blink { 417 | 0% { opacity: 1; } 418 | 50% { opacity: 1; } 419 | 50.01% { opacity: 0; } 420 | 100% { opacity: 0; } 421 | } 422 | @-moz-keyframes blink { 423 | 0% { opacity: 1; } 424 | 50% { opacity: 1; } 425 | 50.01% { opacity: 0; } 426 | 100% { opacity: 0; } 427 | } 428 | @-ms-keyframes blink { 429 | 0% { opacity: 1; } 430 | 50% { opacity: 1; } 431 | 50.01% { opacity: 0; } 432 | 100% { opacity: 0; } 433 | } 434 | @-o-keyframes blink { 435 | 0% { opacity: 1; } 436 | 50% { opacity: 1; } 437 | 50.01% { opacity: 0; } 438 | 100% { opacity: 0; } 439 | } 440 | @keyframes blink { 441 | 0% { opacity: 1; } 442 | 50% { opacity: 1; } 443 | 50.01% { opacity: 0; } 444 | 100% { opacity: 0; } 445 | } 446 | 447 | 448 | 449 | /* Home */ 450 | .home { 451 | background-color: #f2f6fa; 452 | padding-bottom: 150px; 453 | } 454 | 455 | .home-wrapper p { 456 | font-size: 15px; 457 | letter-spacing: 2px; 458 | font-family: 'Josefin Sans', sans-serif; 459 | font-weight: 700; 460 | color: #787787; 461 | } 462 | 463 | .text-tran-box { 464 | background: #43cea2; /* fallback for old browsers */ 465 | background: -webkit-linear-gradient(to left, #43cea2 , #185a9d); /* Chrome 10-25, Safari 5.1-6 */ 466 | background: linear-gradient(to left, #43cea2 , #185a9d); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 467 | } 468 | 469 | .text-tran-box-dark { 470 | background: #24C6DC; /* fallback for old browsers */ 471 | background: -webkit-linear-gradient(to left, #24C6DC , #514A9D); /* Chrome 10-25, Safari 5.1-6 */ 472 | background: linear-gradient(to left, #24C6DC , #514A9D); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 473 | } 474 | 475 | .text-transparent { 476 | background: #f2f6fa; 477 | color: #240e35; 478 | mix-blend-mode: lighten; 479 | overflow: hidden; 480 | font-size: 48px; 481 | margin-bottom: 40px; 482 | line-height: 54px; 483 | } 484 | 485 | .text-tran-box-dark .text-transparent { 486 | color: #fff; 487 | background: #28282e; 488 | mix-blend-mode: darken; 489 | } 490 | 491 | .home-alt p { 492 | color: #eee !important; 493 | } 494 | 495 | .home-alt h1 { 496 | color: #ffffff; 497 | font-size: 48px; 498 | margin-bottom: 40px; 499 | line-height: 54px; 500 | } 501 | 502 | 503 | 504 | /* FUN FACTS / Testimonials Box */ 505 | .facts-box { 506 | margin-top: -52px; 507 | background: #fff; 508 | box-shadow: 0 -3px 31px 0 rgba(0, 0, 0, 0.05),0 6px 20px 0 rgba(0, 0, 0, 0.02); 509 | padding: 0px 20px; 510 | border-radius: 15px; 511 | } 512 | 513 | .facts-box h2 { 514 | font-weight: 700; 515 | font-family: 'Josefin Sans', sans-serif; 516 | color: #767D8E; 517 | } 518 | 519 | .facts-box p { 520 | margin-bottom: 20px; 521 | font-weight: 700; 522 | font-family: 'Josefin Sans', sans-serif; 523 | } 524 | 525 | .testimonial-cta { 526 | padding: 20px; 527 | z-index: 9; 528 | position: relative; 529 | } 530 | 531 | .testimonial-cta img{ 532 | height: 54px; 533 | width: 54px; 534 | float: left; 535 | } 536 | 537 | .testimonial-cta p { 538 | padding-left: 65px; 539 | margin-bottom: 0px; 540 | font-size: 16px; 541 | } 542 | 543 | 544 | /* Features */ 545 | 546 | .features-box h3{ 547 | font-size: 20px; 548 | font-family: 'Josefin Sans', sans-serif; 549 | font-weight: 700; 550 | } 551 | 552 | .features-box p{ 553 | line-height: 24px; 554 | width: 90%; 555 | margin: 0px auto; 556 | } 557 | 558 | .feature-icon { 559 | height: 80px; 560 | width: 80px; 561 | border: 2px solid #767D8E; 562 | margin: 0px auto; 563 | border-radius: 50%; 564 | font-size: 42px; 565 | line-height: 80px; 566 | } 567 | 568 | .features-box-fill .feature-icon{ 569 | background-color: #767D8E; 570 | color: #ffffff 571 | } 572 | 573 | .features-alt i{ 574 | font-size: 42px; 575 | } 576 | 577 | .features-alt h4{ 578 | font-style: italic; 579 | margin-bottom: 0px; 580 | font-family: 'Josefin Sans', sans-serif; 581 | font-weight: 600; 582 | } 583 | 584 | .features-alt h3{ 585 | margin-top: 5px; 586 | margin-bottom: 20px; 587 | } 588 | 589 | .features-alt p { 590 | font-size: 15px; 591 | line-height: 24px; 592 | } 593 | 594 | .feat-facts { 595 | display: table; 596 | width: 100%; 597 | margin-top: 20px; 598 | } 599 | 600 | .feat-facts .feat-facts-box { 601 | display: table-cell; 602 | vertical-align: middle; 603 | text-align: center; 604 | } 605 | 606 | .feat-facts .feat-facts-box h2 { 607 | color: #43cea2; 608 | } 609 | 610 | .feat-facts .feat-facts-box h4 { 611 | font-family: 'Josefin Sans', sans-serif; 612 | font-weight: 600; 613 | } 614 | 615 | .feat-facts .feat-facts-box p { 616 | font-style: italic; 617 | } 618 | 619 | 620 | /* Pricing */ 621 | 622 | .pricing-column { 623 | position: relative; 624 | margin-bottom: 40px; 625 | } 626 | .pricing-column .inner-box { 627 | position: relative; 628 | margin: 20px auto 0px auto; 629 | max-width: 320px; 630 | padding: 0px 30px 50px; 631 | border: 2px solid #767D8E; 632 | } 633 | 634 | .inner-box p { 635 | padding: 0px 20px; 636 | text-align: center; 637 | font-size: 15px; 638 | line-height: 26px; 639 | color: #7f7f7f; 640 | margin-bottom: 30px; 641 | } 642 | 643 | .inner-box.active { 644 | -webkit-transform: scale(1.05); 645 | -ms-transform: scale(1.05); 646 | transform: scale(1.05); 647 | } 648 | 649 | .pricing-column .plan-header { 650 | position: relative; 651 | padding: 30px 20px 25px; 652 | } 653 | 654 | .pricing-column .plan-title { 655 | font-size: 16px; 656 | margin-bottom: 10px; 657 | color: #43cea2; 658 | text-transform: uppercase; 659 | letter-spacing: 1px; 660 | font-weight: 400; 661 | } 662 | 663 | .pricing-column .plan-price { 664 | font-size: 38px; 665 | margin-bottom: 10px; 666 | color: #435966; 667 | font-weight: 700; 668 | font-family: 'Josefin Sans', sans-serif; 669 | } 670 | 671 | .pricing-column .plan-duration { 672 | font-size: 13px; 673 | color: #98a6ad; 674 | } 675 | 676 | .pricing-column .plan-stats { 677 | position: relative; 678 | padding: 30px 20px 15px; 679 | } 680 | 681 | .pricing-column .plan-stats li { 682 | margin-bottom: 15px; 683 | line-height: 24px; 684 | } 685 | 686 | .pricing-column .plan-stats li i { 687 | font-size: 18px; 688 | width: 26px; 689 | vertical-align: middle; 690 | } 691 | 692 | 693 | /* Clients */ 694 | 695 | .client-list { 696 | padding-top: 30px; 697 | } 698 | 699 | 700 | /* Subscribe Form */ 701 | 702 | .subscribe-form h3 { 703 | color: #fff; 704 | margin: 0px 0px 30px 0px; 705 | font-family: 'Josefin Sans', sans-serif; 706 | font-weight: 700; 707 | } 708 | 709 | .subscribe-form form{ 710 | width: 100%; 711 | position: relative; 712 | max-width: 600px; 713 | margin: 0px auto; 714 | } 715 | 716 | .subscribe-form input { 717 | padding: 15px 20px; 718 | width: 100%; 719 | font-size: 17px; 720 | color: #fff; 721 | border: none; 722 | outline: none !important; 723 | padding-left: 30px; 724 | background-color: rgba(255, 255, 255, 0.19); 725 | border-radius: 30px; 726 | } 727 | 728 | .subscribe-form button { 729 | position: absolute; 730 | top: 4px; 731 | right: 4px; 732 | outline: none !important; 733 | border-radius: 30px; 734 | border: none; 735 | color: #7220D4; 736 | font-size: 17px; 737 | background: #FFFFFF; 738 | padding: 11px 30px; 739 | font-weight: bold; 740 | } 741 | 742 | .popular-form form{ 743 | width: 100%; 744 | position: relative; 745 | max-width: 600px; 746 | margin: 0px auto; 747 | } 748 | 749 | .popular-form input { 750 | padding: 15px 20px; 751 | width: 100%; 752 | font-size: 17px; 753 | color: #fff; 754 | border: none; 755 | outline: none !important; 756 | padding-left: 30px; 757 | background-color: rgba(255, 255, 255, 0.19); 758 | border-radius: 30px; 759 | } 760 | 761 | .popular-form button { 762 | position: absolute; 763 | top: 4px; 764 | right: 4px; 765 | outline: none !important; 766 | border-radius: 30px; 767 | border: none; 768 | color: #7220D4; 769 | font-size: 17px; 770 | background: #FFFFFF; 771 | padding: 11px 30px; 772 | font-weight: bold; 773 | } 774 | 775 | 776 | 777 | /* Footer */ 778 | .footer { 779 | padding: 20px 0px; 780 | border-top: 1px solid #3B3B40; 781 | } 782 | .copyright { 783 | color: #a0a0a0; 784 | margin: 0px; 785 | } 786 | 787 | 788 | 789 | /* Testimonial */ 790 | .testi-img { 791 | height: 68px; 792 | width: 68px; 793 | margin-bottom: 10px; 794 | margin-top: 25px; 795 | } 796 | .testi-text { 797 | line-height: 30px; 798 | font-family: 'Josefin Sans', sans-serif; 799 | font-weight: 600; 800 | letter-spacing: 0.05em; 801 | } 802 | 803 | 804 | /* PORTFOLIO (WORKS)*/ 805 | .thumb { 806 | background-color: #ffffff; 807 | border: 1px solid #eee; 808 | border-radius: 3px; 809 | box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1); 810 | margin-top: 20px; 811 | margin-bottom: 20px; 812 | padding: 10px; 813 | width: 100%; 814 | } 815 | .thumb-img { 816 | border-radius: 2px; 817 | overflow: hidden; 818 | width: 100%; 819 | } 820 | .gal-detail h4 { 821 | margin: 20px 0px 5px; 822 | font-weight: 600; 823 | font-size: 16px; 824 | } 825 | .gal-detail h4 a{ 826 | color: #43cea2; 827 | } 828 | .gal-detail p { 829 | font-size: 13px; 830 | font-family: 'Josefin Sans', sans-serif; 831 | } 832 | 833 | 834 | 835 | /* TEAM MEMBER */ 836 | .team-box { 837 | margin: 20px 0px; 838 | } 839 | 840 | .team-box img { 841 | max-width: 240px; 842 | } 843 | 844 | .team-box h4 { 845 | margin-bottom: 5px; 846 | } 847 | 848 | .team-box p { 849 | font-family: 'Josefin Sans', sans-serif; 850 | font-weight: 700; 851 | color: #98a6ad; 852 | margin-bottom: 20px; 853 | } 854 | 855 | .team-member-social a{ 856 | background-color: #F9F9F9 !important; 857 | color: #505458; 858 | font-size: 12px !important; 859 | line-height: 34px !important 860 | } 861 | 862 | .team-member-social a:hover { 863 | background-color: #43cea2 !important; 864 | } 865 | 866 | 867 | /* Home Video */ 868 | 869 | .home-video { 870 | position: relative; 871 | } 872 | 873 | .video-bg-slider { 874 | height: 600px; 875 | background: #000; 876 | position: relative; 877 | } 878 | 879 | .video-bg-slider:after{ 880 | background:rgba(0, 0, 0, 0.5); 881 | content: ""; 882 | height: 100%; 883 | left: 0; 884 | position: absolute; 885 | top: 0; 886 | width: 100%; 887 | z-index: 2; 888 | } 889 | .slidero { 890 | padding-top: 10px; 891 | top: 50%; 892 | transform: translateY(-50%); 893 | -moz-transform: translateY(-50%); 894 | -ms-transform: translateY(-50%); 895 | -o-transform: translateY(-50%); 896 | -webkit-transform: translateY(-50%); 897 | position: absolute; 898 | width: 100%; 899 | z-index: 100; 900 | } 901 | 902 | 903 | /* Contact */ 904 | .contact-form .form-control { 905 | height: 42px; 906 | box-shadow: none; 907 | border: 2px solid rgba(40, 40, 46, 0.3); 908 | } 909 | 910 | textarea.form-control { 911 | height: auto !important; 912 | } 913 | 914 | .error { 915 | margin: 8px 0px; 916 | display: none; 917 | color: red; 918 | } 919 | 920 | #ajaxsuccess { 921 | font-size: 16px; 922 | width: 100%; 923 | display: none; 924 | clear: both; 925 | margin: 8px 0px; 926 | } 927 | 928 | 929 | /* HOME REGISTER */ 930 | 931 | .home-register { 932 | padding-top: 70px; 933 | } 934 | 935 | .home-register .home-wrapper h1 { 936 | font-family: 'Josefin Sans', sans-serif; 937 | font-weight: 700; 938 | color: #ffffff; 939 | } 940 | 941 | .home-wrapper h4 { 942 | line-height: 24px; 943 | margin-top: 30px; 944 | color: rgba(249, 249, 249, 0.78); 945 | margin-bottom: 50px; 946 | font-size: 16px; 947 | font-weight: normal; 948 | } 949 | 950 | /* Intro Form */ 951 | .intro-form { 952 | background-color: #FFFFFF; 953 | padding: 30px; 954 | border-radius: 5px; 955 | border: 3px solid #eee; 956 | } 957 | 958 | .intro-form h3{ 959 | color: #949799; 960 | font-size: 20px; 961 | font-weight: 600; 962 | text-transform: uppercase; 963 | margin-bottom: 30px; 964 | margin-top: 0px; 965 | } 966 | 967 | .intro-form input { 968 | border: 1px solid #eee; 969 | height: 38px; 970 | box-shadow: none !important; 971 | } 972 | 973 | 974 | 975 | 976 | /* Footer-alt */ 977 | .footer-one { 978 | color: #9ba1ac; 979 | padding-top: 60px; 980 | padding-bottom: 0px; 981 | } 982 | 983 | .footer-one h5{ 984 | color: #ffffff; 985 | font-size: 15px; 986 | margin-bottom: 20px; 987 | font-weight: 700; 988 | letter-spacing: 1px; 989 | font-family: 'Josefin Sans', sans-serif; 990 | } 991 | 992 | .footer-one .about-text { 993 | padding-right: 10px; 994 | line-height: 22px; 995 | margin-top: 10px; 996 | } 997 | 998 | .footer-one a{ 999 | color: #9ba1ac; 1000 | } 1001 | 1002 | .footer-one a:hover{ 1003 | color: #43cea2; 1004 | } 1005 | 1006 | .footer-one ul li { 1007 | margin: 5px 0px; 1008 | } 1009 | 1010 | .footer-one-alt { 1011 | margin-top: 40px; 1012 | padding: 20px 0px; 1013 | border-top: 1px solid #3B3B40; 1014 | } 1015 | 1016 | .footer-one-alt .copyright { 1017 | line-height: 34px; 1018 | } 1019 | 1020 | .footer-social-one { 1021 | font-size: 16px; 1022 | margin-bottom: 0px; 1023 | } 1024 | 1025 | .footer-social-one li { 1026 | padding: 0; 1027 | margin: 0 2px !important; 1028 | } 1029 | 1030 | .footer-social-one a { 1031 | border-radius: 50%; 1032 | text-align: center; 1033 | background-color: #212125; 1034 | width: 34px; 1035 | display: block; 1036 | height: 34px; 1037 | line-height: 36px; 1038 | font-size: 15px; 1039 | } 1040 | .footer-social-one a:hover { 1041 | color: #ffffff; 1042 | background-color: #43cea2; 1043 | } 1044 | 1045 | 1046 | 1047 | /* FAQ */ 1048 | .question-box { 1049 | padding: 20px; 1050 | } 1051 | 1052 | .question-box h4 { 1053 | font-family: 'Josefin Sans', sans-serif; 1054 | font-weight: 700; 1055 | } 1056 | 1057 | .question-box p { 1058 | color: #98a6ad; 1059 | line-height: 24px; 1060 | } 1061 | 1062 | 1063 | 1064 | 1065 | /* Home Subscribe */ 1066 | .home-subscribe { 1067 | padding-top: 70px; 1068 | } 1069 | 1070 | 1071 | 1072 | 1073 | /* Home App */ 1074 | .item-list-right.item-list-big li { 1075 | padding: 0 70px 30px 0; 1076 | list-style: none; 1077 | } 1078 | 1079 | .item-list-left.item-list-big li { 1080 | padding: 0 0px 30px 70px; 1081 | list-style: none; 1082 | } 1083 | 1084 | .item-list-big .number { 1085 | height: 42px; 1086 | width: 42px; 1087 | line-height: 30px; 1088 | color: #fff; 1089 | background: #43cea2; 1090 | text-align: center; 1091 | border-radius: 50%; 1092 | position: absolute; 1093 | border: 5px solid rgba(255,255,255,0.5); 1094 | cursor: pointer; 1095 | -webkit-transition: all .3s ease; 1096 | -moz-transition: all .3s ease; 1097 | transition: all .3s ease; 1098 | } 1099 | 1100 | .item-list-right li { 1101 | padding: 0 60px 20px 0; 1102 | position: relative; 1103 | text-align: right; 1104 | } 1105 | 1106 | .item-list-right li .number { 1107 | right: 0; 1108 | top: 0; 1109 | } 1110 | 1111 | .item-list-left li .number { 1112 | left: 0; 1113 | } 1114 | 1115 | 1116 | 1117 | 1118 | /* Home Showcase */ 1119 | 1120 | .home-showcase { 1121 | padding-top: 60px; 1122 | padding-bottom: 0px; 1123 | } 1124 | .home-showcase h2 { 1125 | margin-top: 0px; 1126 | margin-bottom: 30px; 1127 | font-family: 'Josefin Sans', sans-serif; 1128 | font-weight: 700; 1129 | } 1130 | 1131 | 1132 | 1133 | 1134 | /* Home Showcase */ 1135 | #macbook { 1136 | background: url("../images/mac.png"); 1137 | width: 967px; 1138 | height: 484px; 1139 | margin: 0px auto; 1140 | margin-top: 50px; 1141 | } 1142 | 1143 | #macbook #tour { 1144 | margin: 0 auto; 1145 | width: 652px; 1146 | height: 432px; 1147 | position: relative; 1148 | top: 22px; 1149 | left: -4px; 1150 | } 1151 | 1152 | #macbook .carousel-indicators li { 1153 | border: 1px solid #333b4d; 1154 | } 1155 | 1156 | #macbook .carousel-indicators .active { 1157 | background: #333b4d; 1158 | } 1159 | 1160 | #macbook .carousel-inner>.item { 1161 | margin-top: -2px; 1162 | } 1163 | 1164 | 1165 | 1166 | 1167 | /* Home Book */ 1168 | .author-content .author-img { 1169 | width: 160px; 1170 | height: 160px; 1171 | } 1172 | 1173 | .author-content h3 { 1174 | font-family: 'Josefin Sans', sans-serif; 1175 | font-weight: 600; 1176 | } 1177 | 1178 | .author-content p { 1179 | font-size: 15px; 1180 | line-height: 24px; 1181 | margin-top: 20px; 1182 | margin-bottom: 30px; 1183 | } 1184 | 1185 | .author-content .author-social a{ 1186 | background-color: #F2F6FA; 1187 | color: #43CEA2; 1188 | } 1189 | 1190 | 1191 | 1192 | 1193 | /* Home Coming soon */ 1194 | #count-down { 1195 | margin-top: 50px; 1196 | } 1197 | 1198 | #count-down .clock-presenter { 1199 | height: 140px; 1200 | line-height: 30px; 1201 | padding: 0px 30px; 1202 | text-align: center; 1203 | } 1204 | 1205 | #count-down .clock-presenter .digit { 1206 | margin-top: 20px; 1207 | font-size: 60px; 1208 | line-height: 60px; 1209 | height: 60px; 1210 | display: inline-block; 1211 | overflow: hidden; 1212 | text-align: center; 1213 | position: relative; 1214 | cursor: default; 1215 | font-family: 'Josefin Sans', sans-serif; 1216 | font-weight: 700; 1217 | color: #ffffff; 1218 | } 1219 | 1220 | #count-down .clock-presenter .note { 1221 | position: relative; 1222 | bottom: 0px; 1223 | padding-top: 5px; 1224 | cursor: default; 1225 | font-size: 16px; 1226 | opacity: 0.7; 1227 | } 1228 | 1229 | 1230 | 1231 | /* Home Construction */ 1232 | .home-construction { 1233 | background: url("../images/bg-construction.jpg") center; 1234 | background-size: cover; 1235 | } 1236 | .feature-icon-const i{ 1237 | font-size: 64px; 1238 | line-height: 1; 1239 | color: #f9c851; 1240 | } 1241 | .home-const-services { 1242 | margin-top: 40px; 1243 | } 1244 | 1245 | 1246 | /* Home Comingsoon 2 */ 1247 | .bg-overlay-cd { 1248 | background: #000; 1249 | opacity: 0.6; 1250 | position: fixed; 1251 | height: 100%; 1252 | width: 100%; 1253 | } 1254 | .subscribe-cs { 1255 | margin-top: 80px; 1256 | } 1257 | .subscribe-cs h4 { 1258 | color: #ffffff; 1259 | line-height: 32px; 1260 | margin-bottom: 30px; 1261 | } 1262 | 1263 | 1264 | /* RESPONSIVE */ 1265 | 1266 | @media (min-width: 768px) { 1267 | .navbar-nav>li>a { 1268 | padding-top: 20px; 1269 | padding-bottom: 20px; 1270 | } 1271 | } 1272 | 1273 | @media screen and (max-width: 1024px) { 1274 | #macbook { 1275 | width: 750px; 1276 | height: 375px; 1277 | background-size: 100%; 1278 | margin-left: auto; 1279 | margin-right: auto; 1280 | margin-bottom: -20px; 1281 | position: static; 1282 | } 1283 | 1284 | #macbook #tour { 1285 | width: 504px; 1286 | height: 358px; 1287 | top: 17px; 1288 | left: -2px; 1289 | right: 10px; 1290 | } 1291 | 1292 | #macbook #tour .carousel-inner img { 1293 | width: 518px; 1294 | height: 321px; 1295 | } 1296 | } 1297 | 1298 | @media (max-width: 992px) { 1299 | #count-down .clock-presenter .digit { 1300 | font-size: 42px; 1301 | } 1302 | } 1303 | 1304 | @media screen and (max-width: 768px) { 1305 | #macbook { 1306 | background-image: none; 1307 | width: 448px; 1308 | height: 265px; 1309 | background-size: 100%; 1310 | margin-left: auto; 1311 | margin-right: auto; 1312 | margin-bottom: -56px; 1313 | position: static; 1314 | } 1315 | 1316 | #macbook #tour { 1317 | width: 344px; 1318 | height: 217px; 1319 | top: 12px; 1320 | left: 1px; 1321 | } 1322 | 1323 | #macbook #tour .carousel-inner img { 1324 | width: 344px; 1325 | height: 217px; 1326 | } 1327 | } 1328 | 1329 | @media screen and (max-width: 480px) { 1330 | #macbook { 1331 | background-image: none; 1332 | text-align: center; 1333 | width: 100%; 1334 | } 1335 | 1336 | #macbook #tour { 1337 | top: 0; 1338 | left: 0; 1339 | width: 100%; 1340 | max-width: 300px; 1341 | height: 189px; 1342 | margin-left: auto; 1343 | margin-right: auto; 1344 | } 1345 | 1346 | #macbook #tour .carousel-inner img { 1347 | max-width: 300px; 1348 | height: 189px; 1349 | overflow: hidden; 1350 | } 1351 | } 1352 | 1353 | @media screen and (max-width: 767px) { 1354 | .features-box { 1355 | padding: 10px 0px; 1356 | } 1357 | 1358 | .bg-trans { 1359 | background-color: #ffffff !important; 1360 | } 1361 | 1362 | .logo-white { 1363 | display: none !important; 1364 | } 1365 | 1366 | .logo-dark { 1367 | display: block !important; 1368 | } 1369 | 1370 | .navbar-custom-dark.navbar-default .navbar-nav>li>a { 1371 | color: #f9f9f9; 1372 | } 1373 | 1374 | .navbar-custom-dark.navbar-default.sticky .navbar-nav>li>a { 1375 | color: #333; 1376 | } 1377 | 1378 | .navbar-default .navbar-toggle .icon-bar { 1379 | background-color: #ffffff; 1380 | } 1381 | 1382 | .navbar-default.sticky .navbar-toggle .icon-bar { 1383 | background-color: #3B4A69; 1384 | } 1385 | 1386 | .vertical-content { 1387 | display: inherit; 1388 | } 1389 | 1390 | .features-alt { 1391 | margin: 30px 0px; 1392 | text-align: center; 1393 | } 1394 | 1395 | .home-wrapper { 1396 | text-align: center; 1397 | margin-bottom: 40px !important; 1398 | } 1399 | 1400 | .footer-one h5 { 1401 | margin-top: 30px; 1402 | } 1403 | 1404 | .footer-one-alt { 1405 | text-align: center !important; 1406 | } 1407 | 1408 | .footer-one-alt .footer-social-one { 1409 | float: none !important; 1410 | margin-top: 20px; 1411 | } 1412 | 1413 | #count-down .clock-presenter { 1414 | width: 50%; 1415 | float: left; 1416 | } 1417 | 1418 | #count-down .clock-presenter .digit { 1419 | font-size: 36px; 1420 | } 1421 | 1422 | #count-down .hours_dash { 1423 | border-right: none; 1424 | } 1425 | } 1426 | .navbar-brand>img { 1427 | opacity: 0.8 !important; 1428 | } 1429 | 1430 | .result { 1431 | 1432 | overflow: hidden; 1433 | background: #fff; 1434 | box-shadow: 0 -3px 31px 0 rgba(0, 0, 0, 0.05),0 6px 20px 0 rgba(0, 0, 0, 0.02); 1435 | padding: 0px 20px; 1436 | border-radius: 15px; 1437 | margin-bottom: 20px; 1438 | } 1439 | em { 1440 | font-weight: bold; 1441 | } 1442 | 1443 | .details { 1444 | border-bottom-left-radius: 15px; 1445 | margin-top: 0px; 1446 | margin-right: -20px; 1447 | float: right; 1448 | display: inline; 1449 | font-size: 11px; 1450 | text-transform: uppercase; 1451 | line-height: 23px; 1452 | opacity: 0.8; 1453 | background-color: #17161F; 1454 | padding: 2px 10px; 1455 | color: #FFFFFF; 1456 | } 1457 | 1458 | .icon-profile { font-size: 6px; top: 0em; -webkit-border-radius: 0.7em 0.7em 0 0; -moz-border-radius: 0.7em 0.7em 0 0; -o-border-radius: 0.7em 0.7em 0 0; -ms-border-radius: 0.7em 0.7em 0 0; border-radius: 0.7em 0.7em 0 0 ; background: #FFFFFF; width: 1.4em; height: 0.5em; position: relative; display: inline-block; margin-right: 4px; margin-left: 5px; } 1459 | .icon-profile::before { position: absolute; content: ""; top: -1em; left: 0.31em; width: 0.8em; height: 0.85em; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; -ms-border-radius: 50%; border-radius: 50% ; background: #FFFFFF; } 1460 | 1461 | .icon-clock { 1462 | display: inline-block; width: 10px; height: 12px; vertical-align: -2px; margin-right: 4px; 1463 | background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAMCAMAAABstdySAAAAOVBMVEUAAAD///////////////////////////////////////////////////////////////////////8KOjVvAAAAEnRSTlMADAIb8DMPt2MI6dTLx76nnREnEhipAAAATElEQVQI1yXLyREAMQgDQYHvvVf5B2sZz4cuKKD+Uhwru6maNDJNOx5Ao4GQP7B6MBF0BI37SMYWO+FZdqt8YZmhvF5PqmtAeek9aU7IwwMHq3GJrQAAAABJRU5ErkJggg==); 1464 | } 1465 | 1466 | @keyframes heartbeat 1467 | { 1468 | 0% 1469 | { 1470 | transform: scale( 1 ); 1471 | } 1472 | 50% 1473 | { 1474 | transform: scale( .75 ); 1475 | } 1476 | 100% 1477 | { 1478 | transform: scale( 1 ); 1479 | } 1480 | } 1481 | .loading { 1482 | animation: heartbeat 2s infinite; 1483 | width: 161px !important; 1484 | } 1485 | 1486 | .form { 1487 | transition: width 0.5s ease; 1488 | } 1489 | 1490 | .pagination { 1491 | position: absolute; 1492 | outline: none !important; 1493 | border-radius: 30px; 1494 | border: none; 1495 | color: #FFFFFF; 1496 | font-size: 17px; 1497 | background: #7220D4; 1498 | padding: 11px 30px; 1499 | font-weight: bold; 1500 | } 1501 | 1502 | .pagination-right { 1503 | top: 4px; 1504 | right: 4px; 1505 | } 1506 | .pagination-left { 1507 | top: 4px; 1508 | left: 4px; 1509 | } 1510 | .result:hover { 1511 | box-shadow: 0 -3px 31px 0 rgba(114, 32, 212, 0.15),0 6px 20px 0 rgba(0, 0, 0, 0.02); 1512 | } 1513 | .navbar-brand { 1514 | margin-top: 4px; 1515 | font-family: 'Text Me One', sans-serif !important; 1516 | font-weight: bold; 1517 | font-size: 30px; 1518 | color: #4E4E4E !important; 1519 | } 1520 | .banner { 1521 | font-family: 'Text Me One', sans-serif !important; 1522 | } 1523 | 1524 | .scrollToTop { 1525 | position: fixed; 1526 | display: none; 1527 | right: 10px; 1528 | bottom: 10px; 1529 | outline: none !important; 1530 | border-radius: 30px; 1531 | border: none; 1532 | color: #FFFFFF; 1533 | font-size: 14px; 1534 | background: #7220D4; 1535 | padding: 6px 23px; 1536 | font-weight: bold; 1537 | } 1538 | 1539 | .site { 1540 | float: right; 1541 | margin-top: 6px; 1542 | margin-right: 9px; 1543 | } 1544 | 1545 | a { 1546 | color: #7220D4; 1547 | } 1548 | -------------------------------------------------------------------------------- /assets/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AceLewis/AceZeroProxy/8951c4b54440ac82b1b222c57cf7bc67f4ffd582/assets/favicon.png -------------------------------------------------------------------------------- /assets/jquery.app.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* 4 | //jQuery for page scrolling feature - requires jQuery Easing plugin 5 | $(function() { 6 | $('.scroll').bind('click', function(event) { 7 | var $anchor = $(this); 8 | $('html, body').stop().animate({ 9 | scrollTop: $($anchor.attr('href')).offset().top - 0 10 | }, 1500, 'easeInOutExpo'); 11 | event.preventDefault(); 12 | }); 13 | }); 14 | */ 15 | 16 | /*global jQuery */ 17 | jQuery(function ($) { 18 | 'use strict'; 19 | 20 | /** 21 | * Contact Form Application 22 | */ 23 | var ContactFormApp = { 24 | $contactForm: $("#ajax-form"), 25 | $contactFormBtn: $("#send"), 26 | $contactFormName: $("#name2"), 27 | $contactFormEmail: $("#email2"), 28 | $contactFormMessage: $("#message2"), 29 | $confirmMessage: $("#ajaxsuccess"), 30 | $errorMessages: $(".error"), 31 | $errorName: $("#err-name"), 32 | $errorEmail: $("#err-emailvld"), 33 | $errorMessage: $("#err-message"), 34 | $errorForm: $("#err-form"), 35 | $errorTimeout: $("#err-timedout"), 36 | $errorState: $("#err-state"), 37 | 38 | //Validate Contact Us Data 39 | validate: function () { 40 | var error = false; // we will set this true if the form isn't valid 41 | 42 | var name = this.$contactFormName.val(); // get the value of the input field 43 | if(name == "" || name == " " || name == "Name") { 44 | this.$errorName.show(500); 45 | this.$errorName.delay(4000); 46 | this.$errorName.animate({ 47 | height: 'toggle' 48 | }, 500, function() { 49 | // Animation complete. 50 | }); 51 | error = true; // change the error state to true 52 | } 53 | 54 | var email_compare = /^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$/; // Syntax to compare against input 55 | var email = this.$contactFormEmail.val().toLowerCase(); // get the value of the input field 56 | 57 | if (email == "" || email == " " || email == "E-mail") { // check if the field is empty 58 | this.$errorEmail.show(500); 59 | this.$errorEmail.delay(4000); 60 | this.$errorEmail.animate({ 61 | height: 'toggle' 62 | }, 500, function() { 63 | // Animation complete. 64 | }); 65 | error = true; 66 | } 67 | else if (!email_compare.test(email)) { // if it's not empty check the format against our email_compare variable 68 | this.$errorEmail.show(500); 69 | this.$errorEmail.delay(4000); 70 | this.$errorEmail.animate({ 71 | height: 'toggle' 72 | }, 500, function() { 73 | // Animation complete. 74 | }); 75 | error = true; 76 | } 77 | 78 | var message = this.$contactFormMessage.val(); // get the value of the input field 79 | 80 | if(message == "" || message == " " || message == "Message") { 81 | this.$errorMessage.show(500); 82 | this.$errorMessage.delay(4000); 83 | this.$errorMessage.animate({ 84 | height: 'toggle' 85 | }, 500, function() { 86 | // Animation complete. 87 | }); 88 | error = true; // change the error state to true 89 | } 90 | 91 | if(error == true) { 92 | this.$errorForm.show(500); 93 | this.$errorForm.delay(4000); 94 | this.$errorForm.animate({ 95 | height: 'toggle' 96 | }, 500, function() { 97 | // Animation complete. 98 | }); 99 | } 100 | 101 | return error; 102 | }, 103 | //contact form submit handler 104 | contactFormSubmit: function (obj) { 105 | this.$errorMessages.fadeOut('slow'); // reset the error messages (hides them) 106 | 107 | if(this.validate() == false) { 108 | 109 | var data_string = $('#ajax-form').serialize(); // Collect data from form 110 | 111 | var $this = this; 112 | $.ajax({ 113 | type: "POST", 114 | url: $this.$contactForm.attr('action'), 115 | data: data_string, 116 | timeout: 6000, 117 | cache: false, 118 | crossDomain: false, 119 | error: function(request,error) { 120 | if (error == "timeout") { 121 | $this.$errorTimeout.slideDown('slow'); 122 | } 123 | else { 124 | $this.$errorState.slideDown('slow'); 125 | $this.$errorState.html('An error occurred: ' + error + ''); 126 | } 127 | }, 128 | success: function() { 129 | $this.$confirmMessage.show(500); 130 | $this.$confirmMessage.delay(4000); 131 | $this.$confirmMessage.animate({ 132 | height: 'toggle' 133 | }, 500, function() { 134 | }); 135 | 136 | $this.$contactFormName.val(''); 137 | $this.$contactFormEmail.val(''); 138 | $this.$contactFormMessage.val(''); 139 | } 140 | }); 141 | } 142 | return false; 143 | }, 144 | bindEvents: function () { 145 | //binding submit event 146 | this.$contactFormBtn.on('click', this.contactFormSubmit.bind(this)); 147 | }, 148 | init: function () { 149 | //initializing the contact form 150 | console.log('Contact form is initialized'); 151 | this.bindEvents(); 152 | return this; 153 | } 154 | }; 155 | 156 | 157 | 158 | //Initializing the app 159 | ContactFormApp.init({}); 160 | 161 | }); -------------------------------------------------------------------------------- /assets/jquery.easing.1.3.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ 3 | * 4 | * Uses the built in easing capabilities added In jQuery 1.1 5 | * to offer multiple easing options 6 | * 7 | * TERMS OF USE - jQuery Easing 8 | * 9 | * Open source under the BSD License. 10 | * 11 | * Copyright © 2008 George McGinley Smith 12 | * All rights reserved. 13 | * 14 | * Redistribution and use in source and binary forms, with or without modification, 15 | * are permitted provided that the following conditions are met: 16 | * 17 | * Redistributions of source code must retain the above copyright notice, this list of 18 | * conditions and the following disclaimer. 19 | * Redistributions in binary form must reproduce the above copyright notice, this list 20 | * of conditions and the following disclaimer in the documentation and/or other materials 21 | * provided with the distribution. 22 | * 23 | * Neither the name of the author nor the names of contributors may be used to endorse 24 | * or promote products derived from this software without specific prior written permission. 25 | * 26 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 27 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 28 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 29 | * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 30 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 31 | * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 32 | * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 33 | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 34 | * OF THE POSSIBILITY OF SUCH DAMAGE. 35 | * 36 | */ 37 | jQuery.easing["jswing"]=jQuery.easing["swing"];jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(a,b,c,d,e){return jQuery.easing[jQuery.easing.def](a,b,c,d,e)},easeInQuad:function(a,b,c,d,e){return d*(b/=e)*b+c},easeOutQuad:function(a,b,c,d,e){return-d*(b/=e)*(b-2)+c},easeInOutQuad:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b+c;return-d/2*(--b*(b-2)-1)+c},easeInCubic:function(a,b,c,d,e){return d*(b/=e)*b*b+c},easeOutCubic:function(a,b,c,d,e){return d*((b=b/e-1)*b*b+1)+c},easeInOutCubic:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b+c;return d/2*((b-=2)*b*b+2)+c},easeInQuart:function(a,b,c,d,e){return d*(b/=e)*b*b*b+c},easeOutQuart:function(a,b,c,d,e){return-d*((b=b/e-1)*b*b*b-1)+c},easeInOutQuart:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b*b+c;return-d/2*((b-=2)*b*b*b-2)+c},easeInQuint:function(a,b,c,d,e){return d*(b/=e)*b*b*b*b+c},easeOutQuint:function(a,b,c,d,e){return d*((b=b/e-1)*b*b*b*b+1)+c},easeInOutQuint:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b*b*b+c;return d/2*((b-=2)*b*b*b*b+2)+c},easeInSine:function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},easeOutSine:function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},easeInOutSine:function(a,b,c,d,e){return-d/2*(Math.cos(Math.PI*b/e)-1)+c},easeInExpo:function(a,b,c,d,e){return b==0?c:d*Math.pow(2,10*(b/e-1))+c},easeOutExpo:function(a,b,c,d,e){return b==e?c+d:d*(-Math.pow(2,-10*b/e)+1)+c},easeInOutExpo:function(a,b,c,d,e){if(b==0)return c;if(b==e)return c+d;if((b/=e/2)<1)return d/2*Math.pow(2,10*(b-1))+c;return d/2*(-Math.pow(2,-10*--b)+2)+c},easeInCirc:function(a,b,c,d,e){return-d*(Math.sqrt(1-(b/=e)*b)-1)+c},easeOutCirc:function(a,b,c,d,e){return d*Math.sqrt(1-(b=b/e-1)*b)+c},easeInOutCirc:function(a,b,c,d,e){if((b/=e/2)<1)return-d/2*(Math.sqrt(1-b*b)-1)+c;return d/2*(Math.sqrt(1-(b-=2)*b)+1)+c},easeInElastic:function(a,b,c,d,e){var f=1.70158;var g=0;var h=d;if(b==0)return c;if((b/=e)==1)return c+d;if(!g)g=e*.3;if(h dwh) ? dwh - scrollTop : 0; 31 | 32 | for (var i = 0; i < sticked.length; i++) { 33 | var s = sticked[i], 34 | elementTop = s.stickyWrapper.offset().top, 35 | etse = elementTop - s.topSpacing - extra; 36 | 37 | if (scrollTop <= etse) { 38 | if (s.currentTop !== null) { 39 | s.stickyElement 40 | .css('position', '') 41 | .css('top', ''); 42 | s.stickyElement.parent().removeClass(s.className); 43 | s.currentTop = null; 44 | } 45 | } 46 | else { 47 | var newTop = documentHeight - s.stickyElement.outerHeight() 48 | - s.topSpacing - s.bottomSpacing - scrollTop - extra; 49 | if (newTop < 0) { 50 | newTop = newTop + s.topSpacing; 51 | } else { 52 | newTop = s.topSpacing; 53 | } 54 | if (s.currentTop != newTop) { 55 | s.stickyElement 56 | .css('position', 'fixed') 57 | .css('top', newTop); 58 | 59 | if (typeof s.getWidthFrom !== 'undefined') { 60 | s.stickyElement.css('width', $(s.getWidthFrom).width()); 61 | } 62 | 63 | s.stickyElement.parent().addClass(s.className); 64 | s.currentTop = newTop; 65 | } 66 | } 67 | } 68 | }, 69 | resizer = function() { 70 | windowHeight = $window.height(); 71 | }, 72 | methods = { 73 | init: function(options) { 74 | var o = $.extend({}, defaults, options); 75 | return this.each(function() { 76 | var stickyElement = $(this); 77 | 78 | var stickyId = stickyElement.attr('id'); 79 | var wrapperId = stickyId ? stickyId + '-' + defaults.wrapperClassName : defaults.wrapperClassName 80 | var wrapper = $('
') 81 | .attr('id', stickyId + '-sticky-wrapper') 82 | .addClass(o.wrapperClassName); 83 | stickyElement.wrapAll(wrapper); 84 | 85 | if (o.center) { 86 | stickyElement.parent().css({width:stickyElement.outerWidth(),marginLeft:"auto",marginRight:"auto"}); 87 | } 88 | 89 | if (stickyElement.css("float") == "right") { 90 | stickyElement.css({"float":"none"}).parent().css({"float":"right"}); 91 | } 92 | 93 | var stickyWrapper = stickyElement.parent(); 94 | stickyWrapper.css('height', stickyElement.outerHeight()); 95 | sticked.push({ 96 | topSpacing: o.topSpacing, 97 | bottomSpacing: o.bottomSpacing, 98 | stickyElement: stickyElement, 99 | currentTop: null, 100 | stickyWrapper: stickyWrapper, 101 | className: o.className, 102 | getWidthFrom: o.getWidthFrom 103 | }); 104 | }); 105 | }, 106 | update: scroller, 107 | unstick: function(options) { 108 | return this.each(function() { 109 | var unstickyElement = $(this); 110 | 111 | var removeIdx = -1; 112 | for (var i = 0; i < sticked.length; i++) 113 | { 114 | if (sticked[i].stickyElement.get(0) == unstickyElement.get(0)) 115 | { 116 | removeIdx = i; 117 | } 118 | } 119 | if(removeIdx != -1) 120 | { 121 | sticked.splice(removeIdx,1); 122 | unstickyElement.unwrap(); 123 | unstickyElement.removeAttr('style'); 124 | } 125 | }); 126 | } 127 | }; 128 | 129 | // should be more efficient than using $window.scroll(scroller) and $window.resize(resizer): 130 | if (window.addEventListener) { 131 | window.addEventListener('scroll', scroller, false); 132 | window.addEventListener('resize', resizer, false); 133 | } else if (window.attachEvent) { 134 | window.attachEvent('onscroll', scroller); 135 | window.attachEvent('onresize', resizer); 136 | } 137 | 138 | $.fn.sticky = function(method) { 139 | if (methods[method]) { 140 | return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); 141 | } else if (typeof method === 'object' || !method ) { 142 | return methods.init.apply( this, arguments ); 143 | } else { 144 | $.error('Method ' + method + ' does not exist on jQuery.sticky'); 145 | } 146 | }; 147 | 148 | $.fn.unstick = function(method) { 149 | if (methods[method]) { 150 | return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); 151 | } else if (typeof method === 'object' || !method ) { 152 | return methods.unstick.apply( this, arguments ); 153 | } else { 154 | $.error('Method ' + method + ' does not exist on jQuery.sticky'); 155 | } 156 | 157 | }; 158 | $(function() { 159 | setTimeout(scroller, 0); 160 | }); 161 | })(jQuery); 162 | -------------------------------------------------------------------------------- /assets/main.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by lander on 06/04/16. 3 | * PS: I know nothing about JS; this is mainly copy-pasted code. 4 | */ 5 | var fuzzy = false; 6 | var proxy = Cookies.get("proxy") == 'true' || Cookies.get("proxy") == null; 7 | var StartedSearch = new Date(); 8 | var MinLoadTime = 1500; 9 | var PROXY_ADDRESS = "http://proxy.zeroexpose.com/"; 10 | 11 | !function (e) { 12 | e.fn.extend({ 13 | iosCheckbox: function () { 14 | "true" !== e(this).attr("data-ios-checkbox") && (e(this).attr("data-ios-checkbox", "true"), e(this).each(function () { 15 | var c = e(this), s = jQuery("
", {"class": "ios-ui-select"}).append(jQuery("
", {"class": "inner"})); 16 | c.is(":checked") && s.addClass("checked"), c.hide().after(s), s.click(function () { 17 | s.toggleClass("checked"), s.hasClass("checked") ? c.prop("checked", !0) : c.prop("checked", !1); 18 | var source = s.prev().attr("id"); 19 | if (source == "proxy-checkbox"){ 20 | proxy = s.hasClass("checked"); 21 | Cookies.set("proxy", proxy); 22 | UpdateProxy(); 23 | }else if (source == "fuzzy-checkbox"){ 24 | fuzzy = s.hasClass("checked"); 25 | UpdateFuzzy(); 26 | } 27 | }) 28 | })) 29 | } 30 | }) 31 | }(jQuery); 32 | 33 | $("#fuzzy-checkbox").iosCheckbox(); 34 | $("#proxy-checkbox").iosCheckbox(); 35 | 36 | var query = ""; 37 | $(document).ready(function() { 38 | 39 | UpdateTimes(); 40 | $("#search-form").on('submit', TriggerSearch); 41 | $("#search-button").on('click', TriggerSearch); 42 | 43 | //Check to see if the window is top if not then display button 44 | $(window).scroll(function(){ 45 | if ($(this).scrollTop() > 100) { 46 | $('.scrollToTop').fadeIn(); 47 | } else { 48 | $('.scrollToTop').fadeOut(); 49 | } 50 | }); 51 | 52 | //Click event to scroll to top 53 | $('.scrollToTop').click(function(){ 54 | $('html, body').animate({scrollTop : 0},500); 55 | return false; 56 | }); 57 | }); 58 | 59 | function StartSearch() { 60 | StartedSearch = new Date(); 61 | $("#search-form").addClass("loading"); 62 | $("#search-button").text("Searching..."); 63 | } 64 | 65 | function EndSearch() { 66 | UpdateProxy(); 67 | var Now = new Date(); 68 | var TimeDiff = Now.getTime()-StartedSearch.getTime(); 69 | console.log(TimeDiff, Now, StartedSearch); 70 | if (TimeDiff > MinLoadTime){ 71 | $("#search-form").removeClass("loading"); 72 | $("#search-button").text("Search"); 73 | } 74 | else 75 | { 76 | setTimeout(EndSearch, MinLoadTime-TimeDiff); 77 | } 78 | /*$("html, body").delay(200).animate({ scrollTop: $('#results').offset().top-26 }, 500);*/ 79 | } 80 | 81 | function TriggerSearch(e) { 82 | StartSearch(); 83 | Search(); 84 | return false; 85 | } 86 | function SetUrl(url) { 87 | ga('send', 'pageview', url); 88 | history.replaceState({}, "", url); 89 | } 90 | function Search() { 91 | query = $("#search-input").val(); 92 | ga('send', 'event', 'Search', query); 93 | if (fuzzy) var url = "/f/"; else var url = "/s/"; 94 | url = url+encodeURIComponent(query).replace('%20', '+'); 95 | Load(url); 96 | 97 | } 98 | function Load(url){ 99 | SetUrl(url); 100 | $.ajax({url: host+url, success: function(result){ 101 | $("#results").html($('
').append(result).find('#results').html()); 102 | EndSearch(); 103 | UpdateTimes(); 104 | }, 105 | error:EndSearch 106 | 107 | }); 108 | } 109 | function UpdateTimes() { 110 | $( ".timestamp" ).each(function( ) { 111 | $(this).text(FormatTime(parseFloat($(this).text()))); 112 | }); 113 | } 114 | 115 | function DateA(timestamp, format) { 116 | var display, parts; 117 | if (format == null) { 118 | format = "short"; 119 | } 120 | if (timestamp > 1000000000000) { 121 | timestamp = timestamp / 1000; 122 | } 123 | parts = (new Date(timestamp * 1000)).toString().split(" "); 124 | if (format === "short") { 125 | display = parts.slice(1, 4); 126 | } else { 127 | display = parts.slice(1, 5); 128 | } 129 | return display.join(" ").replace(/( [0-9]{4})/, ",$1"); 130 | } 131 | 132 | function FormatTime(timestamp) { 133 | var back, now, secs; 134 | now = +(new Date) / 1000; 135 | if (timestamp > 1000000000000) { 136 | timestamp = timestamp / 1000; 137 | } 138 | secs = now - timestamp; 139 | if (secs < 60) { 140 | back = "Just now"; 141 | } else if (secs < 60 * 60) { 142 | back = (Math.round(secs / 60)) + " minutes ago"; 143 | } else if (secs < 60 * 60 * 24) { 144 | back = (Math.round(secs / 60 / 60)) + " hours ago"; 145 | } else if (secs < 60 * 60 * 24 * 3) { 146 | back = (Math.round(secs / 60 / 60 / 24)) + " days ago"; 147 | } else { 148 | back = "on " + DateA(timestamp); 149 | } 150 | back = back.replace(/1 ([a-z]+)s/, "1 $1"); 151 | return back; 152 | } 153 | 154 | function UpdateFuzzy() { 155 | var loc = window.location.pathname; 156 | if (fuzzy) loc = loc.replace("/s/", "/f/"); else loc = loc.replace("/f/", "/s/"); 157 | StartSearch(); 158 | Load(loc); 159 | } 160 | function UpdateProxy() { 161 | $( ".link" ).each(function() { 162 | if (proxy){ 163 | $(this).attr("href", 164 | $(this).attr("href").replace("http://127.0.0.1:43110/", PROXY_ADDRESS) 165 | ); 166 | } else { 167 | $(this).attr("href", 168 | $(this).attr("href").replace(PROXY_ADDRESS, "http://127.0.0.1:43110/") 169 | ); 170 | } 171 | }); 172 | } 173 | UpdateProxy(); 174 | 175 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: index 3 | title: Home 4 | permalink: / 5 | --- 6 | ZeroNet's Meta Proxy 7 | 8 | 9 | 10 | 20 | 21 | 22 |
23 |
24 |
25 |
26 |
27 | 28 | 30 |
31 |

ZeroNet's Meta Proxy

32 |
33 | 34 |

Input a ZeroNet url and get taken to a proxy

35 | 36 |
37 | 38 | 44 | 45 | 47 |
48 |
49 |

Create link meta proxy link to share with others

50 | 51 |
52 | 53 | 59 | 60 | 62 |
63 |
64 |

Popular ZeroNet sites

65 | 66 |
67 | 68 |
69 | 75 |
76 | 82 |
83 | 89 |
90 | 91 | 92 |
93 |

94 |

Why?
95 | Sometimes ZeroNet proxies go down, so if you are linking to a ZeroNet site on social media, for example on your blog, Reddit, Facebook or Twitter that link will stop working when the proxy goes down. By using AceZeroProxy you can make a link that will work 100% of the time so you will not need to update your blog if the ZeroNet proxy you linked to goes down.

96 |
97 |

How?
98 | This site simply links to ZeroNet proxies for the link given, none of the proxies are not run by me so I reccomend that you only browse using them and don't log in as it is technically possible for the proxy to steal your login details (although that has never happened yet). I will not know the ZeroNet sites you visit however the ZeroNet proxy you use will.

99 |
100 |

How you can help
101 | There are not that many ZeroNet proxies currently running, you could help out this site and others by running your own ZeroNet proxy and telling me about it via Twitter or Reddit.

102 | 103 |
104 |
105 |
106 |
107 |
108 | 109 | 110 | 113 | 114 | 115 | 116 | 136 | 137 | 138 | 158 | 159 | 160 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 201 | 202 | 203 | 204 | 205 | -------------------------------------------------------------------------------- /static/bg-pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AceLewis/AceZeroProxy/8951c4b54440ac82b1b222c57cf7bc67f4ffd582/static/bg-pattern.png -------------------------------------------------------------------------------- /static/bootstrap.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v3.3.6 (http://getbootstrap.com) 3 | * Copyright 2011-2015 Twitter, Inc. 4 | * Licensed under the MIT license 5 | */ 6 | if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){return a(b.target).is(this)?b.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.6",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a(f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.6",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target);d.hasClass("btn")||(d=d.closest(".btn")),b.call(d,"toggle"),a(c.target).is('input[type="radio"]')||a(c.target).is('input[type="checkbox"]')||c.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.6",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));return a>this.$items.length-1||0>a?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){return this.sliding?void 0:this.slide("next")},c.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.6",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.6",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),c.isInStateTrue()?void 0:(clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide())},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;(e||!/destroy|hide/.test(b))&&(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.6",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.6",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.6",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return c>e?"top":!1;if("bottom"==this.affixed)return null!=c?e+this.unpin<=f.top?!1:"bottom":a-d>=e+g?!1:"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&c>=e?"top":null!=d&&i+j>=a-d?"bottom":!1},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AceLewis/AceZeroProxy/8951c4b54440ac82b1b222c57cf7bc67f4ffd582/static/favicon.png -------------------------------------------------------------------------------- /static/icons-social.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'pe-icon-social'; 3 | src:url('../fonts/pe-icon-social.eot?-96eskg'); 4 | src:url('../fonts/pe-icon-social.eot?#iefix-96eskg') format('embedded-opentype'), 5 | url('../fonts/pe-icon-social.woff?-96eskg') format('woff'), 6 | url('../fonts/pe-icon-social.ttf?-96eskg') format('truetype'), 7 | url('../fonts/pe-icon-social.svg?-96eskg#pe-icon-social') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | 12 | [class^="pe-so-"], [class*=" pe-so-"] { 13 | display: inline-block; 14 | font-family: 'pe-icon-social'; 15 | speak: none; 16 | font-style: normal; 17 | font-weight: normal; 18 | font-variant: normal; 19 | text-transform: none; 20 | line-height: 1; 21 | 22 | /* Better Font Rendering =========== */ 23 | -webkit-font-smoothing: antialiased; 24 | -moz-osx-font-smoothing: grayscale; 25 | } 26 | 27 | .pe-so-500px:before { 28 | content: "\e600"; 29 | } 30 | .pe-so-aim:before { 31 | content: "\e601"; 32 | } 33 | .pe-so-amazon:before { 34 | content: "\e602"; 35 | } 36 | .pe-so-android:before { 37 | content: "\e603"; 38 | } 39 | .pe-so-app-store:before { 40 | content: "\e604"; 41 | } 42 | .pe-so-apple:before { 43 | content: "\e605"; 44 | } 45 | .pe-so-behance:before { 46 | content: "\e606"; 47 | } 48 | .pe-so-bitbucket:before { 49 | content: "\e607"; 50 | } 51 | .pe-so-blogger:before { 52 | content: "\e608"; 53 | } 54 | .pe-so-bootstrap:before { 55 | content: "\e609"; 56 | } 57 | .pe-so-chrome:before { 58 | content: "\e60a"; 59 | } 60 | .pe-so-codepen:before { 61 | content: "\e60b"; 62 | } 63 | .pe-so-css3:before { 64 | content: "\e60c"; 65 | } 66 | .pe-so-delicious:before { 67 | content: "\e60d"; 68 | } 69 | .pe-so-deviantart-1:before { 70 | content: "\e60e"; 71 | } 72 | .pe-so-deviantart-2:before { 73 | content: "\e60f"; 74 | } 75 | .pe-so-digg:before { 76 | content: "\e610"; 77 | } 78 | .pe-so-dribbble:before { 79 | content: "\e611"; 80 | } 81 | .pe-so-dropbox:before { 82 | content: "\e612"; 83 | } 84 | .pe-so-drupal:before { 85 | content: "\e613"; 86 | } 87 | .pe-so-ebay:before { 88 | content: "\e614"; 89 | } 90 | .pe-so-etsy:before { 91 | content: "\e615"; 92 | } 93 | .pe-so-evernote:before { 94 | content: "\e616"; 95 | } 96 | .pe-so-facebook:before { 97 | content: "\e617"; 98 | } 99 | .pe-so-firefox:before { 100 | content: "\e618"; 101 | } 102 | .pe-so-flattr:before { 103 | content: "\e619"; 104 | } 105 | .pe-so-flickr:before { 106 | content: "\e61a"; 107 | } 108 | .pe-so-forrst:before { 109 | content: "\e61b"; 110 | } 111 | .pe-so-foursquare:before { 112 | content: "\e61c"; 113 | } 114 | .pe-so-git:before { 115 | content: "\e61d"; 116 | } 117 | .pe-so-github:before { 118 | content: "\e61e"; 119 | } 120 | .pe-so-google-drive:before { 121 | content: "\e61f"; 122 | } 123 | .pe-so-google-plus:before { 124 | content: "\e620"; 125 | } 126 | .pe-so-grooveshark:before { 127 | content: "\e621"; 128 | } 129 | .pe-so-habbo:before { 130 | content: "\e622"; 131 | } 132 | .pe-so-hacker-news:before { 133 | content: "\e623"; 134 | } 135 | .pe-so-html5:before { 136 | content: "\e624"; 137 | } 138 | .pe-so-ie:before { 139 | content: "\e625"; 140 | } 141 | .pe-so-instagram:before { 142 | content: "\e626"; 143 | } 144 | .pe-so-joomla:before { 145 | content: "\e627"; 146 | } 147 | .pe-so-jsfiddle:before { 148 | content: "\e628"; 149 | } 150 | .pe-so-lanyrd:before { 151 | content: "\e629"; 152 | } 153 | .pe-so-lastfm:before { 154 | content: "\e62a"; 155 | } 156 | .pe-so-like:before { 157 | content: "\e62b"; 158 | } 159 | .pe-so-linkedin:before { 160 | content: "\e62c"; 161 | } 162 | .pe-so-linux:before { 163 | content: "\e62d"; 164 | } 165 | .pe-so-love:before { 166 | content: "\e62e"; 167 | } 168 | .pe-so-magento:before { 169 | content: "\e62f"; 170 | } 171 | .pe-so-myspace:before { 172 | content: "\e630"; 173 | } 174 | .pe-so-odnolassniki:before { 175 | content: "\e631"; 176 | } 177 | .pe-so-openid:before { 178 | content: "\e632"; 179 | } 180 | .pe-so-opera:before { 181 | content: "\e633"; 182 | } 183 | .pe-so-paypal-1:before { 184 | content: "\e634"; 185 | } 186 | .pe-so-paypal-2:before { 187 | content: "\e635"; 188 | } 189 | .pe-so-picasa:before { 190 | content: "\e636"; 191 | } 192 | .pe-so-pied-piper:before { 193 | content: "\e637"; 194 | } 195 | .pe-so-pinterest:before { 196 | content: "\e638"; 197 | } 198 | .pe-so-pixeden:before { 199 | content: "\e639"; 200 | } 201 | .pe-so-qq:before { 202 | content: "\e63a"; 203 | } 204 | .pe-so-qzone:before { 205 | content: "\e63b"; 206 | } 207 | .pe-so-rdio:before { 208 | content: "\e63c"; 209 | } 210 | .pe-so-reddit:before { 211 | content: "\e63d"; 212 | } 213 | .pe-so-renren:before { 214 | content: "\e63e"; 215 | } 216 | .pe-so-rss:before { 217 | content: "\e63f"; 218 | } 219 | .pe-so-safari-1:before { 220 | content: "\e640"; 221 | } 222 | .pe-so-safari-2:before { 223 | content: "\e641"; 224 | } 225 | .pe-so-sass:before { 226 | content: "\e642"; 227 | } 228 | .pe-so-share:before { 229 | content: "\e643"; 230 | } 231 | .pe-so-skype:before { 232 | content: "\e644"; 233 | } 234 | .pe-so-slideshare:before { 235 | content: "\e645"; 236 | } 237 | .pe-so-soundcloud:before { 238 | content: "\e646"; 239 | } 240 | .pe-so-spotify:before { 241 | content: "\e647"; 242 | } 243 | .pe-so-stack-exchange:before { 244 | content: "\e648"; 245 | } 246 | .pe-so-stack-overflow:before { 247 | content: "\e649"; 248 | } 249 | .pe-so-steam:before { 250 | content: "\e64a"; 251 | } 252 | .pe-so-stumbleupon:before { 253 | content: "\e64b"; 254 | } 255 | .pe-so-tencent-weibo:before { 256 | content: "\e64c"; 257 | } 258 | .pe-so-trello:before { 259 | content: "\e64d"; 260 | } 261 | .pe-so-tripadvisor:before { 262 | content: "\e64e"; 263 | } 264 | .pe-so-tumblr:before { 265 | content: "\e64f"; 266 | } 267 | .pe-so-twitch:before { 268 | content: "\e650"; 269 | } 270 | .pe-so-twitter:before { 271 | content: "\e651"; 272 | } 273 | .pe-so-ubuntu:before { 274 | content: "\e652"; 275 | } 276 | .pe-so-viadeo:before { 277 | content: "\e653"; 278 | } 279 | .pe-so-vimeo:before { 280 | content: "\e654"; 281 | } 282 | .pe-so-vine:before { 283 | content: "\e655"; 284 | } 285 | .pe-so-vk:before { 286 | content: "\e656"; 287 | } 288 | .pe-so-wechat:before { 289 | content: "\e657"; 290 | } 291 | .pe-so-weibo:before { 292 | content: "\e658"; 293 | } 294 | .pe-so-wikipedia:before { 295 | content: "\e659"; 296 | } 297 | .pe-so-windows:before { 298 | content: "\e65a"; 299 | } 300 | .pe-so-wordpress-1:before { 301 | content: "\e65b"; 302 | } 303 | .pe-so-wordpress-2:before { 304 | content: "\e65c"; 305 | } 306 | .pe-so-xing:before { 307 | content: "\e65d"; 308 | } 309 | .pe-so-yahoo-1:before { 310 | content: "\e65e"; 311 | } 312 | .pe-so-yahoo-2:before { 313 | content: "\e65f"; 314 | } 315 | .pe-so-yelp:before { 316 | content: "\e660"; 317 | } 318 | .pe-so-youtube-1:before { 319 | content: "\e661"; 320 | } 321 | .pe-so-youtube-2:before { 322 | content: "\e662"; 323 | } 324 | .pe-so-zerply:before { 325 | content: "\e663"; 326 | } 327 | -------------------------------------------------------------------------------- /static/icons.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Pe-icon-7-stroke'; 3 | src:url('../fonts/Pe-icon-7-stroke.eot?-2irksn'); 4 | src:url('../fonts/Pe-icon-7-stroke.eot?#iefix-2irksn') format('embedded-opentype'), 5 | url('../fonts/Pe-icon-7-stroke.woff?-2irksn') format('woff'), 6 | url('../fonts/Pe-icon-7-stroke.ttf?-2irksn') format('truetype'), 7 | url('../fonts/Pe-icon-7-stroke.svg?-2irksn#Pe-icon-7-stroke') format('svg'); 8 | font-weight: normal; 9 | font-style: normal; 10 | } 11 | 12 | [class^="pe-7s-"], [class*=" pe-7s-"] { 13 | display: inline-block; 14 | font-family: 'Pe-icon-7-stroke'; 15 | speak: none; 16 | font-style: normal; 17 | font-weight: normal; 18 | font-variant: normal; 19 | text-transform: none; 20 | line-height: 1; 21 | 22 | /* Better Font Rendering =========== */ 23 | -webkit-font-smoothing: antialiased; 24 | -moz-osx-font-smoothing: grayscale; 25 | } 26 | 27 | .pe-7s-cloud-upload:before { 28 | content: "\e68a"; 29 | } 30 | .pe-7s-cash:before { 31 | content: "\e68c"; 32 | } 33 | .pe-7s-close:before { 34 | content: "\e680"; 35 | } 36 | .pe-7s-bluetooth:before { 37 | content: "\e68d"; 38 | } 39 | .pe-7s-cloud-download:before { 40 | content: "\e68b"; 41 | } 42 | .pe-7s-way:before { 43 | content: "\e68e"; 44 | } 45 | .pe-7s-close-circle:before { 46 | content: "\e681"; 47 | } 48 | .pe-7s-id:before { 49 | content: "\e68f"; 50 | } 51 | .pe-7s-angle-up:before { 52 | content: "\e682"; 53 | } 54 | .pe-7s-wristwatch:before { 55 | content: "\e690"; 56 | } 57 | .pe-7s-angle-up-circle:before { 58 | content: "\e683"; 59 | } 60 | .pe-7s-world:before { 61 | content: "\e691"; 62 | } 63 | .pe-7s-angle-right:before { 64 | content: "\e684"; 65 | } 66 | .pe-7s-volume:before { 67 | content: "\e692"; 68 | } 69 | .pe-7s-angle-right-circle:before { 70 | content: "\e685"; 71 | } 72 | .pe-7s-users:before { 73 | content: "\e693"; 74 | } 75 | .pe-7s-angle-left:before { 76 | content: "\e686"; 77 | } 78 | .pe-7s-user-female:before { 79 | content: "\e694"; 80 | } 81 | .pe-7s-angle-left-circle:before { 82 | content: "\e687"; 83 | } 84 | .pe-7s-up-arrow:before { 85 | content: "\e695"; 86 | } 87 | .pe-7s-angle-down:before { 88 | content: "\e688"; 89 | } 90 | .pe-7s-switch:before { 91 | content: "\e696"; 92 | } 93 | .pe-7s-angle-down-circle:before { 94 | content: "\e689"; 95 | } 96 | .pe-7s-scissors:before { 97 | content: "\e697"; 98 | } 99 | .pe-7s-wallet:before { 100 | content: "\e600"; 101 | } 102 | .pe-7s-safe:before { 103 | content: "\e698"; 104 | } 105 | .pe-7s-volume2:before { 106 | content: "\e601"; 107 | } 108 | .pe-7s-volume1:before { 109 | content: "\e602"; 110 | } 111 | .pe-7s-voicemail:before { 112 | content: "\e603"; 113 | } 114 | .pe-7s-video:before { 115 | content: "\e604"; 116 | } 117 | .pe-7s-user:before { 118 | content: "\e605"; 119 | } 120 | .pe-7s-upload:before { 121 | content: "\e606"; 122 | } 123 | .pe-7s-unlock:before { 124 | content: "\e607"; 125 | } 126 | .pe-7s-umbrella:before { 127 | content: "\e608"; 128 | } 129 | .pe-7s-trash:before { 130 | content: "\e609"; 131 | } 132 | .pe-7s-tools:before { 133 | content: "\e60a"; 134 | } 135 | .pe-7s-timer:before { 136 | content: "\e60b"; 137 | } 138 | .pe-7s-ticket:before { 139 | content: "\e60c"; 140 | } 141 | .pe-7s-target:before { 142 | content: "\e60d"; 143 | } 144 | .pe-7s-sun:before { 145 | content: "\e60e"; 146 | } 147 | .pe-7s-study:before { 148 | content: "\e60f"; 149 | } 150 | .pe-7s-stopwatch:before { 151 | content: "\e610"; 152 | } 153 | .pe-7s-star:before { 154 | content: "\e611"; 155 | } 156 | .pe-7s-speaker:before { 157 | content: "\e612"; 158 | } 159 | .pe-7s-signal:before { 160 | content: "\e613"; 161 | } 162 | .pe-7s-shuffle:before { 163 | content: "\e614"; 164 | } 165 | .pe-7s-shopbag:before { 166 | content: "\e615"; 167 | } 168 | .pe-7s-share:before { 169 | content: "\e616"; 170 | } 171 | .pe-7s-server:before { 172 | content: "\e617"; 173 | } 174 | .pe-7s-search:before { 175 | content: "\e618"; 176 | } 177 | .pe-7s-film:before { 178 | content: "\e6a5"; 179 | } 180 | .pe-7s-science:before { 181 | content: "\e619"; 182 | } 183 | .pe-7s-disk:before { 184 | content: "\e6a6"; 185 | } 186 | .pe-7s-ribbon:before { 187 | content: "\e61a"; 188 | } 189 | .pe-7s-repeat:before { 190 | content: "\e61b"; 191 | } 192 | .pe-7s-refresh:before { 193 | content: "\e61c"; 194 | } 195 | .pe-7s-add-user:before { 196 | content: "\e6a9"; 197 | } 198 | .pe-7s-refresh-cloud:before { 199 | content: "\e61d"; 200 | } 201 | .pe-7s-paperclip:before { 202 | content: "\e69c"; 203 | } 204 | .pe-7s-radio:before { 205 | content: "\e61e"; 206 | } 207 | .pe-7s-note2:before { 208 | content: "\e69d"; 209 | } 210 | .pe-7s-print:before { 211 | content: "\e61f"; 212 | } 213 | .pe-7s-network:before { 214 | content: "\e69e"; 215 | } 216 | .pe-7s-prev:before { 217 | content: "\e620"; 218 | } 219 | .pe-7s-mute:before { 220 | content: "\e69f"; 221 | } 222 | .pe-7s-power:before { 223 | content: "\e621"; 224 | } 225 | .pe-7s-medal:before { 226 | content: "\e6a0"; 227 | } 228 | .pe-7s-portfolio:before { 229 | content: "\e622"; 230 | } 231 | .pe-7s-like2:before { 232 | content: "\e6a1"; 233 | } 234 | .pe-7s-plus:before { 235 | content: "\e623"; 236 | } 237 | .pe-7s-left-arrow:before { 238 | content: "\e6a2"; 239 | } 240 | .pe-7s-play:before { 241 | content: "\e624"; 242 | } 243 | .pe-7s-key:before { 244 | content: "\e6a3"; 245 | } 246 | .pe-7s-plane:before { 247 | content: "\e625"; 248 | } 249 | .pe-7s-joy:before { 250 | content: "\e6a4"; 251 | } 252 | .pe-7s-photo-gallery:before { 253 | content: "\e626"; 254 | } 255 | .pe-7s-pin:before { 256 | content: "\e69b"; 257 | } 258 | .pe-7s-phone:before { 259 | content: "\e627"; 260 | } 261 | .pe-7s-plug:before { 262 | content: "\e69a"; 263 | } 264 | .pe-7s-pen:before { 265 | content: "\e628"; 266 | } 267 | .pe-7s-right-arrow:before { 268 | content: "\e699"; 269 | } 270 | .pe-7s-paper-plane:before { 271 | content: "\e629"; 272 | } 273 | .pe-7s-delete-user:before { 274 | content: "\e6a7"; 275 | } 276 | .pe-7s-paint:before { 277 | content: "\e62a"; 278 | } 279 | .pe-7s-bottom-arrow:before { 280 | content: "\e6a8"; 281 | } 282 | .pe-7s-notebook:before { 283 | content: "\e62b"; 284 | } 285 | .pe-7s-note:before { 286 | content: "\e62c"; 287 | } 288 | .pe-7s-next:before { 289 | content: "\e62d"; 290 | } 291 | .pe-7s-news-paper:before { 292 | content: "\e62e"; 293 | } 294 | .pe-7s-musiclist:before { 295 | content: "\e62f"; 296 | } 297 | .pe-7s-music:before { 298 | content: "\e630"; 299 | } 300 | .pe-7s-mouse:before { 301 | content: "\e631"; 302 | } 303 | .pe-7s-more:before { 304 | content: "\e632"; 305 | } 306 | .pe-7s-moon:before { 307 | content: "\e633"; 308 | } 309 | .pe-7s-monitor:before { 310 | content: "\e634"; 311 | } 312 | .pe-7s-micro:before { 313 | content: "\e635"; 314 | } 315 | .pe-7s-menu:before { 316 | content: "\e636"; 317 | } 318 | .pe-7s-map:before { 319 | content: "\e637"; 320 | } 321 | .pe-7s-map-marker:before { 322 | content: "\e638"; 323 | } 324 | .pe-7s-mail:before { 325 | content: "\e639"; 326 | } 327 | .pe-7s-mail-open:before { 328 | content: "\e63a"; 329 | } 330 | .pe-7s-mail-open-file:before { 331 | content: "\e63b"; 332 | } 333 | .pe-7s-magnet:before { 334 | content: "\e63c"; 335 | } 336 | .pe-7s-loop:before { 337 | content: "\e63d"; 338 | } 339 | .pe-7s-look:before { 340 | content: "\e63e"; 341 | } 342 | .pe-7s-lock:before { 343 | content: "\e63f"; 344 | } 345 | .pe-7s-lintern:before { 346 | content: "\e640"; 347 | } 348 | .pe-7s-link:before { 349 | content: "\e641"; 350 | } 351 | .pe-7s-like:before { 352 | content: "\e642"; 353 | } 354 | .pe-7s-light:before { 355 | content: "\e643"; 356 | } 357 | .pe-7s-less:before { 358 | content: "\e644"; 359 | } 360 | .pe-7s-keypad:before { 361 | content: "\e645"; 362 | } 363 | .pe-7s-junk:before { 364 | content: "\e646"; 365 | } 366 | .pe-7s-info:before { 367 | content: "\e647"; 368 | } 369 | .pe-7s-home:before { 370 | content: "\e648"; 371 | } 372 | .pe-7s-help2:before { 373 | content: "\e649"; 374 | } 375 | .pe-7s-help1:before { 376 | content: "\e64a"; 377 | } 378 | .pe-7s-graph3:before { 379 | content: "\e64b"; 380 | } 381 | .pe-7s-graph2:before { 382 | content: "\e64c"; 383 | } 384 | .pe-7s-graph1:before { 385 | content: "\e64d"; 386 | } 387 | .pe-7s-graph:before { 388 | content: "\e64e"; 389 | } 390 | .pe-7s-global:before { 391 | content: "\e64f"; 392 | } 393 | .pe-7s-gleam:before { 394 | content: "\e650"; 395 | } 396 | .pe-7s-glasses:before { 397 | content: "\e651"; 398 | } 399 | .pe-7s-gift:before { 400 | content: "\e652"; 401 | } 402 | .pe-7s-folder:before { 403 | content: "\e653"; 404 | } 405 | .pe-7s-flag:before { 406 | content: "\e654"; 407 | } 408 | .pe-7s-filter:before { 409 | content: "\e655"; 410 | } 411 | .pe-7s-file:before { 412 | content: "\e656"; 413 | } 414 | .pe-7s-expand1:before { 415 | content: "\e657"; 416 | } 417 | .pe-7s-exapnd2:before { 418 | content: "\e658"; 419 | } 420 | .pe-7s-edit:before { 421 | content: "\e659"; 422 | } 423 | .pe-7s-drop:before { 424 | content: "\e65a"; 425 | } 426 | .pe-7s-drawer:before { 427 | content: "\e65b"; 428 | } 429 | .pe-7s-download:before { 430 | content: "\e65c"; 431 | } 432 | .pe-7s-display2:before { 433 | content: "\e65d"; 434 | } 435 | .pe-7s-display1:before { 436 | content: "\e65e"; 437 | } 438 | .pe-7s-diskette:before { 439 | content: "\e65f"; 440 | } 441 | .pe-7s-date:before { 442 | content: "\e660"; 443 | } 444 | .pe-7s-cup:before { 445 | content: "\e661"; 446 | } 447 | .pe-7s-culture:before { 448 | content: "\e662"; 449 | } 450 | .pe-7s-crop:before { 451 | content: "\e663"; 452 | } 453 | .pe-7s-credit:before { 454 | content: "\e664"; 455 | } 456 | .pe-7s-copy-file:before { 457 | content: "\e665"; 458 | } 459 | .pe-7s-config:before { 460 | content: "\e666"; 461 | } 462 | .pe-7s-compass:before { 463 | content: "\e667"; 464 | } 465 | .pe-7s-comment:before { 466 | content: "\e668"; 467 | } 468 | .pe-7s-coffee:before { 469 | content: "\e669"; 470 | } 471 | .pe-7s-cloud:before { 472 | content: "\e66a"; 473 | } 474 | .pe-7s-clock:before { 475 | content: "\e66b"; 476 | } 477 | .pe-7s-check:before { 478 | content: "\e66c"; 479 | } 480 | .pe-7s-chat:before { 481 | content: "\e66d"; 482 | } 483 | .pe-7s-cart:before { 484 | content: "\e66e"; 485 | } 486 | .pe-7s-camera:before { 487 | content: "\e66f"; 488 | } 489 | .pe-7s-call:before { 490 | content: "\e670"; 491 | } 492 | .pe-7s-calculator:before { 493 | content: "\e671"; 494 | } 495 | .pe-7s-browser:before { 496 | content: "\e672"; 497 | } 498 | .pe-7s-box2:before { 499 | content: "\e673"; 500 | } 501 | .pe-7s-box1:before { 502 | content: "\e674"; 503 | } 504 | .pe-7s-bookmarks:before { 505 | content: "\e675"; 506 | } 507 | .pe-7s-bicycle:before { 508 | content: "\e676"; 509 | } 510 | .pe-7s-bell:before { 511 | content: "\e677"; 512 | } 513 | .pe-7s-battery:before { 514 | content: "\e678"; 515 | } 516 | .pe-7s-ball:before { 517 | content: "\e679"; 518 | } 519 | .pe-7s-back:before { 520 | content: "\e67a"; 521 | } 522 | .pe-7s-attention:before { 523 | content: "\e67b"; 524 | } 525 | .pe-7s-anchor:before { 526 | content: "\e67c"; 527 | } 528 | .pe-7s-albums:before { 529 | content: "\e67d"; 530 | } 531 | .pe-7s-alarm:before { 532 | content: "\e67e"; 533 | } 534 | .pe-7s-airplay:before { 535 | content: "\e67f"; 536 | } 537 | -------------------------------------------------------------------------------- /static/jquery.app.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* 4 | //jQuery for page scrolling feature - requires jQuery Easing plugin 5 | $(function() { 6 | $('.scroll').bind('click', function(event) { 7 | var $anchor = $(this); 8 | $('html, body').stop().animate({ 9 | scrollTop: $($anchor.attr('href')).offset().top - 0 10 | }, 1500, 'easeInOutExpo'); 11 | event.preventDefault(); 12 | }); 13 | }); 14 | */ 15 | 16 | /*global jQuery */ 17 | jQuery(function ($) { 18 | 'use strict'; 19 | 20 | /** 21 | * Contact Form Application 22 | */ 23 | var ContactFormApp = { 24 | $contactForm: $("#ajax-form"), 25 | $contactFormBtn: $("#send"), 26 | $contactFormName: $("#name2"), 27 | $contactFormEmail: $("#email2"), 28 | $contactFormMessage: $("#message2"), 29 | $confirmMessage: $("#ajaxsuccess"), 30 | $errorMessages: $(".error"), 31 | $errorName: $("#err-name"), 32 | $errorEmail: $("#err-emailvld"), 33 | $errorMessage: $("#err-message"), 34 | $errorForm: $("#err-form"), 35 | $errorTimeout: $("#err-timedout"), 36 | $errorState: $("#err-state"), 37 | 38 | //Validate Contact Us Data 39 | validate: function () { 40 | var error = false; // we will set this true if the form isn't valid 41 | 42 | var name = this.$contactFormName.val(); // get the value of the input field 43 | if(name == "" || name == " " || name == "Name") { 44 | this.$errorName.show(500); 45 | this.$errorName.delay(4000); 46 | this.$errorName.animate({ 47 | height: 'toggle' 48 | }, 500, function() { 49 | // Animation complete. 50 | }); 51 | error = true; // change the error state to true 52 | } 53 | 54 | var email_compare = /^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$/; // Syntax to compare against input 55 | var email = this.$contactFormEmail.val().toLowerCase(); // get the value of the input field 56 | 57 | if (email == "" || email == " " || email == "E-mail") { // check if the field is empty 58 | this.$errorEmail.show(500); 59 | this.$errorEmail.delay(4000); 60 | this.$errorEmail.animate({ 61 | height: 'toggle' 62 | }, 500, function() { 63 | // Animation complete. 64 | }); 65 | error = true; 66 | } 67 | else if (!email_compare.test(email)) { // if it's not empty check the format against our email_compare variable 68 | this.$errorEmail.show(500); 69 | this.$errorEmail.delay(4000); 70 | this.$errorEmail.animate({ 71 | height: 'toggle' 72 | }, 500, function() { 73 | // Animation complete. 74 | }); 75 | error = true; 76 | } 77 | 78 | var message = this.$contactFormMessage.val(); // get the value of the input field 79 | 80 | if(message == "" || message == " " || message == "Message") { 81 | this.$errorMessage.show(500); 82 | this.$errorMessage.delay(4000); 83 | this.$errorMessage.animate({ 84 | height: 'toggle' 85 | }, 500, function() { 86 | // Animation complete. 87 | }); 88 | error = true; // change the error state to true 89 | } 90 | 91 | if(error == true) { 92 | this.$errorForm.show(500); 93 | this.$errorForm.delay(4000); 94 | this.$errorForm.animate({ 95 | height: 'toggle' 96 | }, 500, function() { 97 | // Animation complete. 98 | }); 99 | } 100 | 101 | return error; 102 | }, 103 | //contact form submit handler 104 | contactFormSubmit: function (obj) { 105 | this.$errorMessages.fadeOut('slow'); // reset the error messages (hides them) 106 | 107 | if(this.validate() == false) { 108 | 109 | var data_string = $('#ajax-form').serialize(); // Collect data from form 110 | 111 | var $this = this; 112 | $.ajax({ 113 | type: "POST", 114 | url: $this.$contactForm.attr('action'), 115 | data: data_string, 116 | timeout: 6000, 117 | cache: false, 118 | crossDomain: false, 119 | error: function(request,error) { 120 | if (error == "timeout") { 121 | $this.$errorTimeout.slideDown('slow'); 122 | } 123 | else { 124 | $this.$errorState.slideDown('slow'); 125 | $this.$errorState.html('An error occurred: ' + error + ''); 126 | } 127 | }, 128 | success: function() { 129 | $this.$confirmMessage.show(500); 130 | $this.$confirmMessage.delay(4000); 131 | $this.$confirmMessage.animate({ 132 | height: 'toggle' 133 | }, 500, function() { 134 | }); 135 | 136 | $this.$contactFormName.val(''); 137 | $this.$contactFormEmail.val(''); 138 | $this.$contactFormMessage.val(''); 139 | } 140 | }); 141 | } 142 | return false; 143 | }, 144 | bindEvents: function () { 145 | //binding submit event 146 | this.$contactFormBtn.on('click', this.contactFormSubmit.bind(this)); 147 | }, 148 | init: function () { 149 | //initializing the contact form 150 | console.log('Contact form is initialized'); 151 | this.bindEvents(); 152 | return this; 153 | } 154 | }; 155 | 156 | 157 | 158 | //Initializing the app 159 | ContactFormApp.init({}); 160 | 161 | }); -------------------------------------------------------------------------------- /static/jquery.easing.1.3.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ 3 | * 4 | * Uses the built in easing capabilities added In jQuery 1.1 5 | * to offer multiple easing options 6 | * 7 | * TERMS OF USE - jQuery Easing 8 | * 9 | * Open source under the BSD License. 10 | * 11 | * Copyright © 2008 George McGinley Smith 12 | * All rights reserved. 13 | * 14 | * Redistribution and use in source and binary forms, with or without modification, 15 | * are permitted provided that the following conditions are met: 16 | * 17 | * Redistributions of source code must retain the above copyright notice, this list of 18 | * conditions and the following disclaimer. 19 | * Redistributions in binary form must reproduce the above copyright notice, this list 20 | * of conditions and the following disclaimer in the documentation and/or other materials 21 | * provided with the distribution. 22 | * 23 | * Neither the name of the author nor the names of contributors may be used to endorse 24 | * or promote products derived from this software without specific prior written permission. 25 | * 26 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 27 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 28 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 29 | * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 30 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 31 | * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 32 | * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 33 | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 34 | * OF THE POSSIBILITY OF SUCH DAMAGE. 35 | * 36 | */ 37 | jQuery.easing["jswing"]=jQuery.easing["swing"];jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(a,b,c,d,e){return jQuery.easing[jQuery.easing.def](a,b,c,d,e)},easeInQuad:function(a,b,c,d,e){return d*(b/=e)*b+c},easeOutQuad:function(a,b,c,d,e){return-d*(b/=e)*(b-2)+c},easeInOutQuad:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b+c;return-d/2*(--b*(b-2)-1)+c},easeInCubic:function(a,b,c,d,e){return d*(b/=e)*b*b+c},easeOutCubic:function(a,b,c,d,e){return d*((b=b/e-1)*b*b+1)+c},easeInOutCubic:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b+c;return d/2*((b-=2)*b*b+2)+c},easeInQuart:function(a,b,c,d,e){return d*(b/=e)*b*b*b+c},easeOutQuart:function(a,b,c,d,e){return-d*((b=b/e-1)*b*b*b-1)+c},easeInOutQuart:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b*b+c;return-d/2*((b-=2)*b*b*b-2)+c},easeInQuint:function(a,b,c,d,e){return d*(b/=e)*b*b*b*b+c},easeOutQuint:function(a,b,c,d,e){return d*((b=b/e-1)*b*b*b*b+1)+c},easeInOutQuint:function(a,b,c,d,e){if((b/=e/2)<1)return d/2*b*b*b*b*b+c;return d/2*((b-=2)*b*b*b*b+2)+c},easeInSine:function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},easeOutSine:function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},easeInOutSine:function(a,b,c,d,e){return-d/2*(Math.cos(Math.PI*b/e)-1)+c},easeInExpo:function(a,b,c,d,e){return b==0?c:d*Math.pow(2,10*(b/e-1))+c},easeOutExpo:function(a,b,c,d,e){return b==e?c+d:d*(-Math.pow(2,-10*b/e)+1)+c},easeInOutExpo:function(a,b,c,d,e){if(b==0)return c;if(b==e)return c+d;if((b/=e/2)<1)return d/2*Math.pow(2,10*(b-1))+c;return d/2*(-Math.pow(2,-10*--b)+2)+c},easeInCirc:function(a,b,c,d,e){return-d*(Math.sqrt(1-(b/=e)*b)-1)+c},easeOutCirc:function(a,b,c,d,e){return d*Math.sqrt(1-(b=b/e-1)*b)+c},easeInOutCirc:function(a,b,c,d,e){if((b/=e/2)<1)return-d/2*(Math.sqrt(1-b*b)-1)+c;return d/2*(Math.sqrt(1-(b-=2)*b)+1)+c},easeInElastic:function(a,b,c,d,e){var f=1.70158;var g=0;var h=d;if(b==0)return c;if((b/=e)==1)return c+d;if(!g)g=e*.3;if(h dwh) ? dwh - scrollTop : 0; 31 | 32 | for (var i = 0; i < sticked.length; i++) { 33 | var s = sticked[i], 34 | elementTop = s.stickyWrapper.offset().top, 35 | etse = elementTop - s.topSpacing - extra; 36 | 37 | if (scrollTop <= etse) { 38 | if (s.currentTop !== null) { 39 | s.stickyElement 40 | .css('position', '') 41 | .css('top', ''); 42 | s.stickyElement.parent().removeClass(s.className); 43 | s.currentTop = null; 44 | } 45 | } 46 | else { 47 | var newTop = documentHeight - s.stickyElement.outerHeight() 48 | - s.topSpacing - s.bottomSpacing - scrollTop - extra; 49 | if (newTop < 0) { 50 | newTop = newTop + s.topSpacing; 51 | } else { 52 | newTop = s.topSpacing; 53 | } 54 | if (s.currentTop != newTop) { 55 | s.stickyElement 56 | .css('position', 'fixed') 57 | .css('top', newTop); 58 | 59 | if (typeof s.getWidthFrom !== 'undefined') { 60 | s.stickyElement.css('width', $(s.getWidthFrom).width()); 61 | } 62 | 63 | s.stickyElement.parent().addClass(s.className); 64 | s.currentTop = newTop; 65 | } 66 | } 67 | } 68 | }, 69 | resizer = function() { 70 | windowHeight = $window.height(); 71 | }, 72 | methods = { 73 | init: function(options) { 74 | var o = $.extend({}, defaults, options); 75 | return this.each(function() { 76 | var stickyElement = $(this); 77 | 78 | var stickyId = stickyElement.attr('id'); 79 | var wrapperId = stickyId ? stickyId + '-' + defaults.wrapperClassName : defaults.wrapperClassName 80 | var wrapper = $('
') 81 | .attr('id', stickyId + '-sticky-wrapper') 82 | .addClass(o.wrapperClassName); 83 | stickyElement.wrapAll(wrapper); 84 | 85 | if (o.center) { 86 | stickyElement.parent().css({width:stickyElement.outerWidth(),marginLeft:"auto",marginRight:"auto"}); 87 | } 88 | 89 | if (stickyElement.css("float") == "right") { 90 | stickyElement.css({"float":"none"}).parent().css({"float":"right"}); 91 | } 92 | 93 | var stickyWrapper = stickyElement.parent(); 94 | stickyWrapper.css('height', stickyElement.outerHeight()); 95 | sticked.push({ 96 | topSpacing: o.topSpacing, 97 | bottomSpacing: o.bottomSpacing, 98 | stickyElement: stickyElement, 99 | currentTop: null, 100 | stickyWrapper: stickyWrapper, 101 | className: o.className, 102 | getWidthFrom: o.getWidthFrom 103 | }); 104 | }); 105 | }, 106 | update: scroller, 107 | unstick: function(options) { 108 | return this.each(function() { 109 | var unstickyElement = $(this); 110 | 111 | var removeIdx = -1; 112 | for (var i = 0; i < sticked.length; i++) 113 | { 114 | if (sticked[i].stickyElement.get(0) == unstickyElement.get(0)) 115 | { 116 | removeIdx = i; 117 | } 118 | } 119 | if(removeIdx != -1) 120 | { 121 | sticked.splice(removeIdx,1); 122 | unstickyElement.unwrap(); 123 | unstickyElement.removeAttr('style'); 124 | } 125 | }); 126 | } 127 | }; 128 | 129 | // should be more efficient than using $window.scroll(scroller) and $window.resize(resizer): 130 | if (window.addEventListener) { 131 | window.addEventListener('scroll', scroller, false); 132 | window.addEventListener('resize', resizer, false); 133 | } else if (window.attachEvent) { 134 | window.attachEvent('onscroll', scroller); 135 | window.attachEvent('onresize', resizer); 136 | } 137 | 138 | $.fn.sticky = function(method) { 139 | if (methods[method]) { 140 | return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); 141 | } else if (typeof method === 'object' || !method ) { 142 | return methods.init.apply( this, arguments ); 143 | } else { 144 | $.error('Method ' + method + ' does not exist on jQuery.sticky'); 145 | } 146 | }; 147 | 148 | $.fn.unstick = function(method) { 149 | if (methods[method]) { 150 | return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); 151 | } else if (typeof method === 'object' || !method ) { 152 | return methods.unstick.apply( this, arguments ); 153 | } else { 154 | $.error('Method ' + method + ' does not exist on jQuery.sticky'); 155 | } 156 | 157 | }; 158 | $(function() { 159 | setTimeout(scroller, 0); 160 | }); 161 | })(jQuery); 162 | -------------------------------------------------------------------------------- /static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AceLewis/AceZeroProxy/8951c4b54440ac82b1b222c57cf7bc67f4ffd582/static/logo.png -------------------------------------------------------------------------------- /static/main.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by lander on 06/04/16. 3 | * PS: I know nothing about JS; this is mainly copy-pasted code. 4 | */ 5 | var fuzzy = false; 6 | var proxy = Cookies.get("proxy") == 'true' || Cookies.get("proxy") == null; 7 | var StartedSearch = new Date(); 8 | var MinLoadTime = 1500; 9 | var PROXY_ADDRESS = "http://proxy.zeroexpose.com/"; 10 | 11 | !function (e) { 12 | e.fn.extend({ 13 | iosCheckbox: function () { 14 | "true" !== e(this).attr("data-ios-checkbox") && (e(this).attr("data-ios-checkbox", "true"), e(this).each(function () { 15 | var c = e(this), s = jQuery("
", {"class": "ios-ui-select"}).append(jQuery("
", {"class": "inner"})); 16 | c.is(":checked") && s.addClass("checked"), c.hide().after(s), s.click(function () { 17 | s.toggleClass("checked"), s.hasClass("checked") ? c.prop("checked", !0) : c.prop("checked", !1); 18 | var source = s.prev().attr("id"); 19 | if (source == "proxy-checkbox"){ 20 | proxy = s.hasClass("checked"); 21 | Cookies.set("proxy", proxy); 22 | UpdateProxy(); 23 | }else if (source == "fuzzy-checkbox"){ 24 | fuzzy = s.hasClass("checked"); 25 | UpdateFuzzy(); 26 | } 27 | }) 28 | })) 29 | } 30 | }) 31 | }(jQuery); 32 | 33 | $("#fuzzy-checkbox").iosCheckbox(); 34 | $("#proxy-checkbox").iosCheckbox(); 35 | 36 | var query = ""; 37 | $(document).ready(function() { 38 | 39 | UpdateTimes(); 40 | $("#search-form").on('submit', TriggerSearch); 41 | $("#search-button").on('click', TriggerSearch); 42 | 43 | //Check to see if the window is top if not then display button 44 | $(window).scroll(function(){ 45 | if ($(this).scrollTop() > 100) { 46 | $('.scrollToTop').fadeIn(); 47 | } else { 48 | $('.scrollToTop').fadeOut(); 49 | } 50 | }); 51 | 52 | //Click event to scroll to top 53 | $('.scrollToTop').click(function(){ 54 | $('html, body').animate({scrollTop : 0},500); 55 | return false; 56 | }); 57 | }); 58 | 59 | function StartSearch() { 60 | StartedSearch = new Date(); 61 | $("#search-form").addClass("loading"); 62 | $("#search-button").text("Searching..."); 63 | } 64 | 65 | function EndSearch() { 66 | UpdateProxy(); 67 | var Now = new Date(); 68 | var TimeDiff = Now.getTime()-StartedSearch.getTime(); 69 | console.log(TimeDiff, Now, StartedSearch); 70 | if (TimeDiff > MinLoadTime){ 71 | $("#search-form").removeClass("loading"); 72 | $("#search-button").text("Search"); 73 | } 74 | else 75 | { 76 | setTimeout(EndSearch, MinLoadTime-TimeDiff); 77 | } 78 | /*$("html, body").delay(200).animate({ scrollTop: $('#results').offset().top-26 }, 500);*/ 79 | } 80 | 81 | function TriggerSearch(e) { 82 | StartSearch(); 83 | Search(); 84 | return false; 85 | } 86 | function SetUrl(url) { 87 | ga('send', 'pageview', url); 88 | history.replaceState({}, "", url); 89 | } 90 | function Search() { 91 | query = $("#search-input").val(); 92 | ga('send', 'event', 'Search', query); 93 | if (fuzzy) var url = "/f/"; else var url = "/s/"; 94 | url = url+encodeURIComponent(query).replace('%20', '+'); 95 | Load(url); 96 | 97 | } 98 | function Load(url){ 99 | SetUrl(url); 100 | $.ajax({url: host+url, success: function(result){ 101 | $("#results").html($('
').append(result).find('#results').html()); 102 | EndSearch(); 103 | UpdateTimes(); 104 | }, 105 | error:EndSearch 106 | 107 | }); 108 | } 109 | function UpdateTimes() { 110 | $( ".timestamp" ).each(function( ) { 111 | $(this).text(FormatTime(parseFloat($(this).text()))); 112 | }); 113 | } 114 | 115 | function DateA(timestamp, format) { 116 | var display, parts; 117 | if (format == null) { 118 | format = "short"; 119 | } 120 | if (timestamp > 1000000000000) { 121 | timestamp = timestamp / 1000; 122 | } 123 | parts = (new Date(timestamp * 1000)).toString().split(" "); 124 | if (format === "short") { 125 | display = parts.slice(1, 4); 126 | } else { 127 | display = parts.slice(1, 5); 128 | } 129 | return display.join(" ").replace(/( [0-9]{4})/, ",$1"); 130 | } 131 | 132 | function FormatTime(timestamp) { 133 | var back, now, secs; 134 | now = +(new Date) / 1000; 135 | if (timestamp > 1000000000000) { 136 | timestamp = timestamp / 1000; 137 | } 138 | secs = now - timestamp; 139 | if (secs < 60) { 140 | back = "Just now"; 141 | } else if (secs < 60 * 60) { 142 | back = (Math.round(secs / 60)) + " minutes ago"; 143 | } else if (secs < 60 * 60 * 24) { 144 | back = (Math.round(secs / 60 / 60)) + " hours ago"; 145 | } else if (secs < 60 * 60 * 24 * 3) { 146 | back = (Math.round(secs / 60 / 60 / 24)) + " days ago"; 147 | } else { 148 | back = "on " + DateA(timestamp); 149 | } 150 | back = back.replace(/1 ([a-z]+)s/, "1 $1"); 151 | return back; 152 | } 153 | 154 | function UpdateFuzzy() { 155 | var loc = window.location.pathname; 156 | if (fuzzy) loc = loc.replace("/s/", "/f/"); else loc = loc.replace("/f/", "/s/"); 157 | StartSearch(); 158 | Load(loc); 159 | } 160 | function UpdateProxy() { 161 | $( ".link" ).each(function() { 162 | if (proxy){ 163 | $(this).attr("href", 164 | $(this).attr("href").replace("http://127.0.0.1:43110/", PROXY_ADDRESS) 165 | ); 166 | } else { 167 | $(this).attr("href", 168 | $(this).attr("href").replace(PROXY_ADDRESS, "http://127.0.0.1:43110/") 169 | ); 170 | } 171 | }); 172 | } 173 | UpdateProxy(); 174 | 175 | -------------------------------------------------------------------------------- /static/style.css: -------------------------------------------------------------------------------- 1 | 2 | .ios-ui-select{ 3 | border-color: #d1d1d1; 4 | float: right; 5 | margin-top: -4px; 6 | margin-left: 6px; 7 | /* width: 44px; */ 8 | height: 28px; 9 | -webkit-border-radius: 100%; 10 | border-radius: 100%; 11 | opacity: 1; 12 | -webkit-box-shadow: inset 0 0 0 2px #4E4E4E; 13 | box-shadow: inset 0 0 0 2px #4E4E4E; 14 | width: 26px; 15 | z-index: 2; 16 | text-align: center; 17 | display: inline-block; 18 | cursor: pointer; 19 | height: 26px; 20 | -webkit-border-radius: 18px; 21 | border-radius: 18px; 22 | -webkit-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 23 | -moz-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 24 | -o-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 25 | transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 26 | text-indent: -9999px; 27 | display: inline-block; 28 | } 29 | .ios-ui-select.checked { 30 | -webkit-box-shadow: inset 0 0 0 14px #8D4ADC; 31 | box-shadow: inset 0 0 0 14px #8D4ADC; 32 | opacity: 1 !important; 33 | } 34 | .ios-ui-select.checked .inner{ 35 | -moz-transform: scale(1); 36 | -webkit-transform: scale(1); 37 | -o-transform: scale(1); 38 | -ms-transform: scale(1); 39 | transform: scale(1); 40 | } 41 | .ios-ui-select .inner{ 42 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAQAAADa613fAAAC70lEQVR42u3bPWgUQRgG4N0kxpjCYJFCFBVRCyFg0PgD/oAiKpGgAUEwhVhoI4I2FoIpxDSmCBZqIYopRMEUWiSIiilEBEEwKCgHRgwqKsIhxngQ89qYkMu9iTuzs7N74Z0rb+bbe/Z2Z+b79i5EMDtaRSCIIIIIIogggggiiCCCCCKIIIIIIogggggyWyE15Q+ZF3QF+WAkeB20GI1Dtl616Md4G0Nr9JHZYlSjD5PbIMJyhFSiB1Pb8qijs3OPhMH1oDXGPZyRbyPEFZS2j6got0urE6y1ldvN3k4Z7SYxssA4RRmdZlHSZxzDGGFcjj7xZgPShj+E0W3KSBuyH6OE0YNK81hpMnajQBi9qLaJlh5jG4YJ4zFq7eKlxdiAPGE8w3zbiOkwGvCdMAawwD5mGoxV+EIYb1AfJ6p/xjIMEcY7LI4X1zdjEXKEMYQVcSObda9CE9ahyvpw9XhFGF+xOv4pMuncjE//Ntd7rA5WhxeEkccaF9919K6Nk5avAvZaZONPCeMnNrq5aKN3vVX0AX5hu9GBavCIMEyjOIHkSs7lJoOiwj3CKKDZ3TQSvetLcnU3Riwq3CaMURxwOR9G79phOd+EuEZGjuGw24ndZM6xWwEu0vzvuOsVyqTzUromD864JndQxmn3S61Z95V0l/R22l3SGco4l8SeIcl96wnK6Epm82M+ZP00mUTdlH5HaFHhqnk2ntymcSvN7fqLcruDNBu/aZONJ7n73UWz7b6JbLuFvn8Xc5LbV9sO3DdD/WMHfpP3HtgVFZLPRw5RSjc20wvviW1RwUdidZTezqzg9rxkKsgUJMBJRGkD8bJxP6nu2f8ycljoI4mOH+LCjIwPWOKnGuDiWdOlaRmf4xcVfFZRQtygjG9o8FefcfU89g5Ju5p8FprcPSHvLWIMY4vfipnL3yw8nGCMYKfvCqbLYHNxHu/xA/ex1n9FOdQfKgURRBBBBBFEEEEEEUQQQQQRRBBBBBFEEEHG21/sNjJ4iVKmQwAAAABJRU5ErkJggg==) center center no-repeat; 43 | background-size: 100%; 44 | width: 100%; 45 | height: 100%; 46 | content: ''; 47 | -webkit-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 48 | -moz-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 49 | -o-transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 50 | transition: all 350ms cubic-bezier(0, 0.89, 0.44, 1); 51 | -moz-transform: scale(0); 52 | -webkit-transform: scale(0); 53 | -o-transform: scale(0); 54 | -ms-transform: scale(0); 55 | transform: scale(0); 56 | } 57 | 58 | body { 59 | background-color: #f9f9f9; 60 | color: #505458; 61 | font-family: 'Roboto', sans-serif; 62 | } 63 | 64 | .logo { 65 | max-width: 148px; 66 | } 67 | 68 | a{ 69 | text-decoration: none !important; 70 | -webkit-transition: all 400ms ease-in-out; 71 | -moz-transition: all 400ms ease-in-out; 72 | -o-transition: all 400ms ease-in-out; 73 | transition: all 400ms ease-in-out; 74 | } 75 | 76 | /* BUTTONS */ 77 | 78 | .btn-dark { 79 | background-color: #3b4a69; 80 | color: #fff !important; 81 | padding: 9px 20px !important; 82 | text-transform: uppercase; 83 | font-weight: 500; 84 | letter-spacing: 0.04em; 85 | -webkit-transition: all 400ms ease-in-out; 86 | -moz-transition: all 400ms ease-in-out; 87 | -o-transition: all 400ms ease-in-out; 88 | transition: all 400ms ease-in-out; 89 | } 90 | 91 | .btn-white { 92 | background-color: #fff; 93 | color: #505458 !important; 94 | padding: 9px 20px !important; 95 | text-transform: uppercase; 96 | font-weight: 500; 97 | letter-spacing: 0.04em; 98 | -webkit-transition: all 400ms ease-in-out; 99 | -moz-transition: all 400ms ease-in-out; 100 | -o-transition: all 400ms ease-in-out; 101 | transition: all 400ms ease-in-out; 102 | } 103 | 104 | .btn-custom,.btn-custom:hover,.btn-custom:focus { 105 | background-color: #43cea2; 106 | color: #fff !important; 107 | padding: 9px 20px !important; 108 | text-transform: uppercase; 109 | font-weight: 500; 110 | letter-spacing: 0.04em; 111 | box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12); 112 | -webkit-transition: all 400ms ease-in-out; 113 | -moz-transition: all 400ms ease-in-out; 114 | -o-transition: all 400ms ease-in-out; 115 | transition: all 400ms ease-in-out; 116 | } 117 | 118 | .btn-dark:hover,.btn-white:hover { 119 | background-color: #43cea2; 120 | color: #fff !important; 121 | box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12); 122 | } 123 | 124 | .btn-yellow { 125 | background-color: #f9c851; 126 | color: #ffffff !important; 127 | padding: 9px 20px !important; 128 | text-transform: uppercase; 129 | font-weight: 500; 130 | letter-spacing: 0.04em; 131 | -webkit-transition: all 400ms ease-in-out; 132 | -moz-transition: all 400ms ease-in-out; 133 | -o-transition: all 400ms ease-in-out; 134 | transition: all 400ms ease-in-out; 135 | } 136 | 137 | .video-btn { 138 | color: #ffffff !important; 139 | letter-spacing: 1px; 140 | padding-top: 20px; 141 | outline: none !important; 142 | } 143 | 144 | .video-btn i { 145 | margin-right: 7px; 146 | width: 20px; 147 | height: 20px; 148 | border: 2px solid #fff; 149 | border-radius: 50%; 150 | line-height: 17px; 151 | vertical-align: middle; 152 | text-align: center; 153 | font-size: 12px; 154 | padding-left: 3px; 155 | margin-left: -12px; 156 | } 157 | 158 | .btn-app-download { 159 | padding: 10px 22px 10px 65px; 160 | position: relative; 161 | border: 2px solid #43cea2; 162 | display: inline-block; 163 | color: #43cea2; 164 | margin-right: 10px; 165 | text-align: left; 166 | } 167 | 168 | .btn-app-download:hover,.btn-app-download:focus{ 169 | color: #fff; 170 | outline: none; 171 | background: #43cea2; 172 | } 173 | 174 | .btn-app-download i { 175 | font-size: 30px; 176 | left: 0; 177 | line-height: 1; 178 | margin: 13px 0 0 20px; 179 | position: absolute; 180 | top: 0; 181 | } 182 | 183 | .btn-app-download strong { 184 | display: block; 185 | font-weight: 700; 186 | margin-bottom: 6px; 187 | } 188 | 189 | .btn-app-download span { 190 | display: block; 191 | font-size: 11px; 192 | font-weight: 700; 193 | letter-spacing: 0.5px; 194 | margin-top: -3px; 195 | -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; 196 | filter: alpha(opacity=80); 197 | -moz-opacity: 0.8; 198 | -khtml-opacity: 0.8; 199 | opacity: 0.8; 200 | } 201 | 202 | .btn-purchase { 203 | font-size: 16px; 204 | } 205 | 206 | .btn-purchase i { 207 | font-size: 36px; 208 | } 209 | 210 | .btn-purchase span { 211 | font-size: 14px; 212 | opacity: 1; 213 | } 214 | 215 | 216 | /* HELPER CLASSES */ 217 | .section { 218 | padding-top: 50px; 219 | padding-bottom: 100px; 220 | } 221 | 222 | .section-md { 223 | padding-top: 70px; 224 | padding-bottom: 70px; 225 | } 226 | 227 | .section-lg { 228 | padding-top: 100px; 229 | padding-bottom: 150px; 230 | } 231 | 232 | .padding-b-0 { 233 | padding-bottom: 0px !important; 234 | } 235 | 236 | .bg-white { 237 | background-color: #fff !important; 238 | } 239 | 240 | .bg-dark { 241 | background-color: #28282e !important; 242 | } 243 | 244 | .title { 245 | font-family: 'Josefin Sans', sans-serif; 246 | font-weight: 700; 247 | margin-top: 0px; 248 | } 249 | .title-alt { 250 | color: #767D8E; 251 | line-height: 24px; 252 | margin: 0px auto 50px auto; 253 | font-size: 15px; 254 | } 255 | 256 | .text-muted { 257 | color: #98a6ad; 258 | } 259 | 260 | .vertical-content { 261 | display: -webkit-flex; 262 | display: -moz-flex; 263 | display: -ms-flexbox; 264 | display: flex; 265 | align-items: center; 266 | -webkit-align-items: center; 267 | justify-content: center; 268 | -webkit-justify-content: center; 269 | flex-direction: row; 270 | -webkit-flex-direction: row; 271 | } 272 | 273 | 274 | .bg-overlay { 275 | position: absolute; 276 | width: 100%; 277 | height: 100%; 278 | top: 0; 279 | background-color: rgba(0,0,0,0.7); 280 | } 281 | 282 | .bg-trans { 283 | background-color: transparent !important; 284 | } 285 | 286 | .bg-solid { 287 | background-color: #28282e !important; 288 | background-image: url("../images/bg-pattern.png"); 289 | background-repeat: repeat; 290 | } 291 | 292 | .bg-solid-1 { 293 | background-color: #6B14D3 !important; 294 | background-image: url("/static/bg-pattern.png"); 295 | background-repeat: repeat; 296 | } 297 | 298 | .bg-solid-2 { 299 | background-color: #43CEA2 !important; 300 | background-image: url("../images/bg-pattern.png"); 301 | background-repeat: repeat; 302 | } 303 | 304 | .bg-overlay-gradient { 305 | opacity: 0.7; 306 | background: #fc00ff; /* fallback for old browsers */ 307 | background: -webkit-linear-gradient(to left, #fc00ff , #00dbde); /* Chrome 10-25, Safari 5.1-6 */ 308 | background: linear-gradient(to left, #fc00ff , #00dbde); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 309 | } 310 | 311 | .bg-gradient { 312 | background: #2c3e50; /* fallback for old browsers */ 313 | background: -webkit-linear-gradient(to left, #2c3e50 , #3498db); /* Chrome 10-25, Safari 5.1-6 */ 314 | background: linear-gradient(to left, #2c3e50 , #3498db); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 315 | } 316 | 317 | .text-colored { 318 | color: #43cea2; 319 | } 320 | 321 | iframe { 322 | max-width: 100%; 323 | } 324 | 325 | .frame-border { 326 | border: 9px solid rgba(0, 0, 0, 0.3); 327 | webkit-border-radius: 5px 5px 5px 5px; 328 | -moz-border-radius: 5px 5px 5px 5px; 329 | border-radius: 5px 5px 5px 5px; 330 | } 331 | 332 | 333 | /* Navbar */ 334 | .navbar-default .navbar-nav>li>a { 335 | font-weight: 700; 336 | font-size: 16px; 337 | color: #182433; 338 | letter-spacing: 0.03em; 339 | font-family: 'Josefin Sans', sans-serif; 340 | } 341 | 342 | .navbar-default .navbar-nav>li>a:hover,.navbar-custom-dark.navbar-default .navbar-nav>li>a { 343 | } 344 | 345 | .navbar-custom { 346 | background-color: #fafafa; 347 | border: none; 348 | margin-bottom: 0px; 349 | border-radius: 0px; 350 | z-index: 9999; 351 | -webkit-transition: background-color 1s ease-in-out, border 1s ease-in-out; 352 | -moz-transition: background-color 1s ease-in-out, border 1s ease-in-out; 353 | -o-transition: background-color 1s ease-in-out, border 1s ease-in-out; 354 | transition: background-color 1s ease-in-out, border 1s ease-in-out; 355 | } 356 | 357 | .navbar-custom .navbar-brand { 358 | height: auto; 359 | } 360 | 361 | .navbar-custom-dark.navbar-default .navbar-nav>li>a { 362 | color: #ddd; 363 | } 364 | 365 | .navbar-toggle { 366 | background-color: transparent !important; 367 | margin-top: 14px; 368 | border: none; 369 | } 370 | 371 | .navbar-default .navbar-toggle .icon-bar { 372 | background-color: #3B4A69; 373 | } 374 | 375 | 376 | /* STICKY HEADER */ 377 | .sticky-wrapper { 378 | /*height: 0px !important;*/ 379 | z-index: 9999; 380 | height: auto !important; 381 | 382 | } 383 | 384 | .is-sticky .navbar-custom{ 385 | border-bottom: 5px solid #701ED2; 386 | background-color: #ffffff !important; 387 | z-index: 999; 388 | width: 100%; 389 | -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.1); 390 | -moz-box-shadow: 0 2px 2px rgba(0,0,0,.1); 391 | box-shadow: 0 2px 2px rgba(0,0,0,.1); 392 | } 393 | 394 | .is-sticky .navbar-custom .logo-dark { 395 | display: block !important; 396 | } 397 | 398 | .is-sticky .navbar-custom .logo-white { 399 | display: none !important; 400 | } 401 | 402 | .is-sticky .navbar-custom .navbar-nav li a { 403 | color: #333; 404 | } 405 | 406 | 407 | /* Home Typed */ 408 | .typed-cursor { 409 | opacity: 1; 410 | -webkit-animation: blink .6s infinite; 411 | -moz-animation: blink .6s infinite; 412 | -ms-animation: blink .6s infinite; 413 | -o-animation: blink .6s infinite; 414 | animation: blink .6s infinite; 415 | } 416 | @-webkit-keyframes blink { 417 | 0% { opacity: 1; } 418 | 50% { opacity: 1; } 419 | 50.01% { opacity: 0; } 420 | 100% { opacity: 0; } 421 | } 422 | @-moz-keyframes blink { 423 | 0% { opacity: 1; } 424 | 50% { opacity: 1; } 425 | 50.01% { opacity: 0; } 426 | 100% { opacity: 0; } 427 | } 428 | @-ms-keyframes blink { 429 | 0% { opacity: 1; } 430 | 50% { opacity: 1; } 431 | 50.01% { opacity: 0; } 432 | 100% { opacity: 0; } 433 | } 434 | @-o-keyframes blink { 435 | 0% { opacity: 1; } 436 | 50% { opacity: 1; } 437 | 50.01% { opacity: 0; } 438 | 100% { opacity: 0; } 439 | } 440 | @keyframes blink { 441 | 0% { opacity: 1; } 442 | 50% { opacity: 1; } 443 | 50.01% { opacity: 0; } 444 | 100% { opacity: 0; } 445 | } 446 | 447 | 448 | 449 | /* Home */ 450 | .home { 451 | background-color: #f2f6fa; 452 | padding-bottom: 150px; 453 | } 454 | 455 | .home-wrapper p { 456 | font-size: 15px; 457 | letter-spacing: 2px; 458 | font-family: 'Josefin Sans', sans-serif; 459 | font-weight: 700; 460 | color: #787787; 461 | } 462 | 463 | .text-tran-box { 464 | background: #43cea2; /* fallback for old browsers */ 465 | background: -webkit-linear-gradient(to left, #43cea2 , #185a9d); /* Chrome 10-25, Safari 5.1-6 */ 466 | background: linear-gradient(to left, #43cea2 , #185a9d); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 467 | } 468 | 469 | .text-tran-box-dark { 470 | background: #24C6DC; /* fallback for old browsers */ 471 | background: -webkit-linear-gradient(to left, #24C6DC , #514A9D); /* Chrome 10-25, Safari 5.1-6 */ 472 | background: linear-gradient(to left, #24C6DC , #514A9D); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */ 473 | } 474 | 475 | .text-transparent { 476 | background: #f2f6fa; 477 | color: #240e35; 478 | mix-blend-mode: lighten; 479 | overflow: hidden; 480 | font-size: 48px; 481 | margin-bottom: 40px; 482 | line-height: 54px; 483 | } 484 | 485 | .text-tran-box-dark .text-transparent { 486 | color: #fff; 487 | background: #28282e; 488 | mix-blend-mode: darken; 489 | } 490 | 491 | .home-alt p { 492 | color: #eee !important; 493 | } 494 | 495 | .home-alt h1 { 496 | color: #ffffff; 497 | font-size: 48px; 498 | margin-bottom: 40px; 499 | line-height: 54px; 500 | } 501 | 502 | 503 | 504 | /* FUN FACTS / Testimonials Box */ 505 | .facts-box { 506 | margin-top: -52px; 507 | background: #fff; 508 | box-shadow: 0 -3px 31px 0 rgba(0, 0, 0, 0.05),0 6px 20px 0 rgba(0, 0, 0, 0.02); 509 | padding: 0px 20px; 510 | border-radius: 15px; 511 | } 512 | 513 | .facts-box h2 { 514 | font-weight: 700; 515 | font-family: 'Josefin Sans', sans-serif; 516 | color: #767D8E; 517 | } 518 | 519 | .facts-box p { 520 | margin-bottom: 20px; 521 | font-weight: 700; 522 | font-family: 'Josefin Sans', sans-serif; 523 | } 524 | 525 | .testimonial-cta { 526 | padding: 20px; 527 | z-index: 9; 528 | position: relative; 529 | } 530 | 531 | .testimonial-cta img{ 532 | height: 54px; 533 | width: 54px; 534 | float: left; 535 | } 536 | 537 | .testimonial-cta p { 538 | padding-left: 65px; 539 | margin-bottom: 0px; 540 | font-size: 16px; 541 | } 542 | 543 | 544 | /* Features */ 545 | 546 | .features-box h3{ 547 | font-size: 20px; 548 | font-family: 'Josefin Sans', sans-serif; 549 | font-weight: 700; 550 | } 551 | 552 | .features-box p{ 553 | line-height: 24px; 554 | width: 90%; 555 | margin: 0px auto; 556 | } 557 | 558 | .feature-icon { 559 | height: 80px; 560 | width: 80px; 561 | border: 2px solid #767D8E; 562 | margin: 0px auto; 563 | border-radius: 50%; 564 | font-size: 42px; 565 | line-height: 80px; 566 | } 567 | 568 | .features-box-fill .feature-icon{ 569 | background-color: #767D8E; 570 | color: #ffffff 571 | } 572 | 573 | .features-alt i{ 574 | font-size: 42px; 575 | } 576 | 577 | .features-alt h4{ 578 | font-style: italic; 579 | margin-bottom: 0px; 580 | font-family: 'Josefin Sans', sans-serif; 581 | font-weight: 600; 582 | } 583 | 584 | .features-alt h3{ 585 | margin-top: 5px; 586 | margin-bottom: 20px; 587 | } 588 | 589 | .features-alt p { 590 | font-size: 15px; 591 | line-height: 24px; 592 | } 593 | 594 | .feat-facts { 595 | display: table; 596 | width: 100%; 597 | margin-top: 20px; 598 | } 599 | 600 | .feat-facts .feat-facts-box { 601 | display: table-cell; 602 | vertical-align: middle; 603 | text-align: center; 604 | } 605 | 606 | .feat-facts .feat-facts-box h2 { 607 | color: #43cea2; 608 | } 609 | 610 | .feat-facts .feat-facts-box h4 { 611 | font-family: 'Josefin Sans', sans-serif; 612 | font-weight: 600; 613 | } 614 | 615 | .feat-facts .feat-facts-box p { 616 | font-style: italic; 617 | } 618 | 619 | 620 | /* Pricing */ 621 | 622 | .pricing-column { 623 | position: relative; 624 | margin-bottom: 40px; 625 | } 626 | .pricing-column .inner-box { 627 | position: relative; 628 | margin: 20px auto 0px auto; 629 | max-width: 320px; 630 | padding: 0px 30px 50px; 631 | border: 2px solid #767D8E; 632 | } 633 | 634 | .inner-box p { 635 | padding: 0px 20px; 636 | text-align: center; 637 | font-size: 15px; 638 | line-height: 26px; 639 | color: #7f7f7f; 640 | margin-bottom: 30px; 641 | } 642 | 643 | .inner-box.active { 644 | -webkit-transform: scale(1.05); 645 | -ms-transform: scale(1.05); 646 | transform: scale(1.05); 647 | } 648 | 649 | .pricing-column .plan-header { 650 | position: relative; 651 | padding: 30px 20px 25px; 652 | } 653 | 654 | .pricing-column .plan-title { 655 | font-size: 16px; 656 | margin-bottom: 10px; 657 | color: #43cea2; 658 | text-transform: uppercase; 659 | letter-spacing: 1px; 660 | font-weight: 400; 661 | } 662 | 663 | .pricing-column .plan-price { 664 | font-size: 38px; 665 | margin-bottom: 10px; 666 | color: #435966; 667 | font-weight: 700; 668 | font-family: 'Josefin Sans', sans-serif; 669 | } 670 | 671 | .pricing-column .plan-duration { 672 | font-size: 13px; 673 | color: #98a6ad; 674 | } 675 | 676 | .pricing-column .plan-stats { 677 | position: relative; 678 | padding: 30px 20px 15px; 679 | } 680 | 681 | .pricing-column .plan-stats li { 682 | margin-bottom: 15px; 683 | line-height: 24px; 684 | } 685 | 686 | .pricing-column .plan-stats li i { 687 | font-size: 18px; 688 | width: 26px; 689 | vertical-align: middle; 690 | } 691 | 692 | 693 | /* Clients */ 694 | 695 | .client-list { 696 | padding-top: 30px; 697 | } 698 | 699 | 700 | /* Subscribe Form */ 701 | 702 | .subscribe-form h3 { 703 | color: #fff; 704 | margin: 0px 0px 30px 0px; 705 | font-family: 'Josefin Sans', sans-serif; 706 | font-weight: 700; 707 | } 708 | 709 | .subscribe-form form{ 710 | width: 100%; 711 | position: relative; 712 | max-width: 600px; 713 | margin: 0px auto; 714 | } 715 | 716 | .subscribe-form input { 717 | padding: 15px 20px; 718 | width: 100%; 719 | font-size: 17px; 720 | color: #fff; 721 | border: none; 722 | outline: none !important; 723 | padding-left: 30px; 724 | background-color: rgba(255, 255, 255, 0.19); 725 | border-radius: 30px; 726 | } 727 | 728 | .subscribe-form button { 729 | position: absolute; 730 | top: 4px; 731 | right: 4px; 732 | outline: none !important; 733 | border-radius: 30px; 734 | border: none; 735 | color: #7220D4; 736 | font-size: 17px; 737 | background: #FFFFFF; 738 | padding: 11px 30px; 739 | font-weight: bold; 740 | } 741 | 742 | 743 | 744 | /* Footer */ 745 | .footer { 746 | padding: 20px 0px; 747 | border-top: 1px solid #3B3B40; 748 | } 749 | .copyright { 750 | color: #a0a0a0; 751 | margin: 0px; 752 | } 753 | 754 | 755 | 756 | /* Testimonial */ 757 | .testi-img { 758 | height: 68px; 759 | width: 68px; 760 | margin-bottom: 10px; 761 | margin-top: 25px; 762 | } 763 | .testi-text { 764 | line-height: 30px; 765 | font-family: 'Josefin Sans', sans-serif; 766 | font-weight: 600; 767 | letter-spacing: 0.05em; 768 | } 769 | 770 | 771 | /* PORTFOLIO (WORKS)*/ 772 | .thumb { 773 | background-color: #ffffff; 774 | border: 1px solid #eee; 775 | border-radius: 3px; 776 | box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1); 777 | margin-top: 20px; 778 | margin-bottom: 20px; 779 | padding: 10px; 780 | width: 100%; 781 | } 782 | .thumb-img { 783 | border-radius: 2px; 784 | overflow: hidden; 785 | width: 100%; 786 | } 787 | .gal-detail h4 { 788 | margin: 20px 0px 5px; 789 | font-weight: 600; 790 | font-size: 16px; 791 | } 792 | .gal-detail h4 a{ 793 | color: #43cea2; 794 | } 795 | .gal-detail p { 796 | font-size: 13px; 797 | font-family: 'Josefin Sans', sans-serif; 798 | } 799 | 800 | 801 | 802 | /* TEAM MEMBER */ 803 | .team-box { 804 | margin: 20px 0px; 805 | } 806 | 807 | .team-box img { 808 | max-width: 240px; 809 | } 810 | 811 | .team-box h4 { 812 | margin-bottom: 5px; 813 | } 814 | 815 | .team-box p { 816 | font-family: 'Josefin Sans', sans-serif; 817 | font-weight: 700; 818 | color: #98a6ad; 819 | margin-bottom: 20px; 820 | } 821 | 822 | .team-member-social a{ 823 | background-color: #F9F9F9 !important; 824 | color: #505458; 825 | font-size: 12px !important; 826 | line-height: 34px !important 827 | } 828 | 829 | .team-member-social a:hover { 830 | background-color: #43cea2 !important; 831 | } 832 | 833 | 834 | /* Home Video */ 835 | 836 | .home-video { 837 | position: relative; 838 | } 839 | 840 | .video-bg-slider { 841 | height: 600px; 842 | background: #000; 843 | position: relative; 844 | } 845 | 846 | .video-bg-slider:after{ 847 | background:rgba(0, 0, 0, 0.5); 848 | content: ""; 849 | height: 100%; 850 | left: 0; 851 | position: absolute; 852 | top: 0; 853 | width: 100%; 854 | z-index: 2; 855 | } 856 | .slidero { 857 | padding-top: 10px; 858 | top: 50%; 859 | transform: translateY(-50%); 860 | -moz-transform: translateY(-50%); 861 | -ms-transform: translateY(-50%); 862 | -o-transform: translateY(-50%); 863 | -webkit-transform: translateY(-50%); 864 | position: absolute; 865 | width: 100%; 866 | z-index: 100; 867 | } 868 | 869 | 870 | /* Contact */ 871 | .contact-form .form-control { 872 | height: 42px; 873 | box-shadow: none; 874 | border: 2px solid rgba(40, 40, 46, 0.3); 875 | } 876 | 877 | textarea.form-control { 878 | height: auto !important; 879 | } 880 | 881 | .error { 882 | margin: 8px 0px; 883 | display: none; 884 | color: red; 885 | } 886 | 887 | #ajaxsuccess { 888 | font-size: 16px; 889 | width: 100%; 890 | display: none; 891 | clear: both; 892 | margin: 8px 0px; 893 | } 894 | 895 | 896 | /* HOME REGISTER */ 897 | 898 | .home-register { 899 | padding-top: 70px; 900 | } 901 | 902 | .home-register .home-wrapper h1 { 903 | font-family: 'Josefin Sans', sans-serif; 904 | font-weight: 700; 905 | color: #ffffff; 906 | } 907 | 908 | .home-wrapper h4 { 909 | line-height: 24px; 910 | margin-top: 30px; 911 | color: rgba(249, 249, 249, 0.78); 912 | margin-bottom: 50px; 913 | font-size: 16px; 914 | font-weight: normal; 915 | } 916 | 917 | /* Intro Form */ 918 | .intro-form { 919 | background-color: #FFFFFF; 920 | padding: 30px; 921 | border-radius: 5px; 922 | border: 3px solid #eee; 923 | } 924 | 925 | .intro-form h3{ 926 | color: #949799; 927 | font-size: 20px; 928 | font-weight: 600; 929 | text-transform: uppercase; 930 | margin-bottom: 30px; 931 | margin-top: 0px; 932 | } 933 | 934 | .intro-form input { 935 | border: 1px solid #eee; 936 | height: 38px; 937 | box-shadow: none !important; 938 | } 939 | 940 | 941 | 942 | 943 | /* Footer-alt */ 944 | .footer-one { 945 | color: #9ba1ac; 946 | padding-top: 60px; 947 | padding-bottom: 0px; 948 | } 949 | 950 | .footer-one h5{ 951 | color: #ffffff; 952 | font-size: 15px; 953 | margin-bottom: 20px; 954 | font-weight: 700; 955 | letter-spacing: 1px; 956 | font-family: 'Josefin Sans', sans-serif; 957 | } 958 | 959 | .footer-one .about-text { 960 | padding-right: 10px; 961 | line-height: 22px; 962 | margin-top: 10px; 963 | } 964 | 965 | .footer-one a{ 966 | color: #9ba1ac; 967 | } 968 | 969 | .footer-one a:hover{ 970 | color: #43cea2; 971 | } 972 | 973 | .footer-one ul li { 974 | margin: 5px 0px; 975 | } 976 | 977 | .footer-one-alt { 978 | margin-top: 40px; 979 | padding: 20px 0px; 980 | border-top: 1px solid #3B3B40; 981 | } 982 | 983 | .footer-one-alt .copyright { 984 | line-height: 34px; 985 | } 986 | 987 | .footer-social-one { 988 | font-size: 16px; 989 | margin-bottom: 0px; 990 | } 991 | 992 | .footer-social-one li { 993 | padding: 0; 994 | margin: 0 2px !important; 995 | } 996 | 997 | .footer-social-one a { 998 | border-radius: 50%; 999 | text-align: center; 1000 | background-color: #212125; 1001 | width: 34px; 1002 | display: block; 1003 | height: 34px; 1004 | line-height: 36px; 1005 | font-size: 15px; 1006 | } 1007 | .footer-social-one a:hover { 1008 | color: #ffffff; 1009 | background-color: #43cea2; 1010 | } 1011 | 1012 | 1013 | 1014 | /* FAQ */ 1015 | .question-box { 1016 | padding: 20px; 1017 | } 1018 | 1019 | .question-box h4 { 1020 | font-family: 'Josefin Sans', sans-serif; 1021 | font-weight: 700; 1022 | } 1023 | 1024 | .question-box p { 1025 | color: #98a6ad; 1026 | line-height: 24px; 1027 | } 1028 | 1029 | 1030 | 1031 | 1032 | /* Home Subscribe */ 1033 | .home-subscribe { 1034 | padding-top: 70px; 1035 | } 1036 | 1037 | 1038 | 1039 | 1040 | /* Home App */ 1041 | .item-list-right.item-list-big li { 1042 | padding: 0 70px 30px 0; 1043 | list-style: none; 1044 | } 1045 | 1046 | .item-list-left.item-list-big li { 1047 | padding: 0 0px 30px 70px; 1048 | list-style: none; 1049 | } 1050 | 1051 | .item-list-big .number { 1052 | height: 42px; 1053 | width: 42px; 1054 | line-height: 30px; 1055 | color: #fff; 1056 | background: #43cea2; 1057 | text-align: center; 1058 | border-radius: 50%; 1059 | position: absolute; 1060 | border: 5px solid rgba(255,255,255,0.5); 1061 | cursor: pointer; 1062 | -webkit-transition: all .3s ease; 1063 | -moz-transition: all .3s ease; 1064 | transition: all .3s ease; 1065 | } 1066 | 1067 | .item-list-right li { 1068 | padding: 0 60px 20px 0; 1069 | position: relative; 1070 | text-align: right; 1071 | } 1072 | 1073 | .item-list-right li .number { 1074 | right: 0; 1075 | top: 0; 1076 | } 1077 | 1078 | .item-list-left li .number { 1079 | left: 0; 1080 | } 1081 | 1082 | 1083 | 1084 | 1085 | /* Home Showcase */ 1086 | 1087 | .home-showcase { 1088 | padding-top: 60px; 1089 | padding-bottom: 0px; 1090 | } 1091 | .home-showcase h2 { 1092 | margin-top: 0px; 1093 | margin-bottom: 30px; 1094 | font-family: 'Josefin Sans', sans-serif; 1095 | font-weight: 700; 1096 | } 1097 | 1098 | 1099 | 1100 | 1101 | /* Home Showcase */ 1102 | #macbook { 1103 | background: url("../images/mac.png"); 1104 | width: 967px; 1105 | height: 484px; 1106 | margin: 0px auto; 1107 | margin-top: 50px; 1108 | } 1109 | 1110 | #macbook #tour { 1111 | margin: 0 auto; 1112 | width: 652px; 1113 | height: 432px; 1114 | position: relative; 1115 | top: 22px; 1116 | left: -4px; 1117 | } 1118 | 1119 | #macbook .carousel-indicators li { 1120 | border: 1px solid #333b4d; 1121 | } 1122 | 1123 | #macbook .carousel-indicators .active { 1124 | background: #333b4d; 1125 | } 1126 | 1127 | #macbook .carousel-inner>.item { 1128 | margin-top: -2px; 1129 | } 1130 | 1131 | 1132 | 1133 | 1134 | /* Home Book */ 1135 | .author-content .author-img { 1136 | width: 160px; 1137 | height: 160px; 1138 | } 1139 | 1140 | .author-content h3 { 1141 | font-family: 'Josefin Sans', sans-serif; 1142 | font-weight: 600; 1143 | } 1144 | 1145 | .author-content p { 1146 | font-size: 15px; 1147 | line-height: 24px; 1148 | margin-top: 20px; 1149 | margin-bottom: 30px; 1150 | } 1151 | 1152 | .author-content .author-social a{ 1153 | background-color: #F2F6FA; 1154 | color: #43CEA2; 1155 | } 1156 | 1157 | 1158 | 1159 | 1160 | /* Home Coming soon */ 1161 | #count-down { 1162 | margin-top: 50px; 1163 | } 1164 | 1165 | #count-down .clock-presenter { 1166 | height: 140px; 1167 | line-height: 30px; 1168 | padding: 0px 30px; 1169 | text-align: center; 1170 | } 1171 | 1172 | #count-down .clock-presenter .digit { 1173 | margin-top: 20px; 1174 | font-size: 60px; 1175 | line-height: 60px; 1176 | height: 60px; 1177 | display: inline-block; 1178 | overflow: hidden; 1179 | text-align: center; 1180 | position: relative; 1181 | cursor: default; 1182 | font-family: 'Josefin Sans', sans-serif; 1183 | font-weight: 700; 1184 | color: #ffffff; 1185 | } 1186 | 1187 | #count-down .clock-presenter .note { 1188 | position: relative; 1189 | bottom: 0px; 1190 | padding-top: 5px; 1191 | cursor: default; 1192 | font-size: 16px; 1193 | opacity: 0.7; 1194 | } 1195 | 1196 | 1197 | 1198 | /* Home Construction */ 1199 | .home-construction { 1200 | background: url("../images/bg-construction.jpg") center; 1201 | background-size: cover; 1202 | } 1203 | .feature-icon-const i{ 1204 | font-size: 64px; 1205 | line-height: 1; 1206 | color: #f9c851; 1207 | } 1208 | .home-const-services { 1209 | margin-top: 40px; 1210 | } 1211 | 1212 | 1213 | /* Home Comingsoon 2 */ 1214 | .bg-overlay-cd { 1215 | background: #000; 1216 | opacity: 0.6; 1217 | position: fixed; 1218 | height: 100%; 1219 | width: 100%; 1220 | } 1221 | .subscribe-cs { 1222 | margin-top: 80px; 1223 | } 1224 | .subscribe-cs h4 { 1225 | color: #ffffff; 1226 | line-height: 32px; 1227 | margin-bottom: 30px; 1228 | } 1229 | 1230 | 1231 | /* RESPONSIVE */ 1232 | 1233 | @media (min-width: 768px) { 1234 | .navbar-nav>li>a { 1235 | padding-top: 20px; 1236 | padding-bottom: 20px; 1237 | } 1238 | } 1239 | 1240 | @media screen and (max-width: 1024px) { 1241 | #macbook { 1242 | width: 750px; 1243 | height: 375px; 1244 | background-size: 100%; 1245 | margin-left: auto; 1246 | margin-right: auto; 1247 | margin-bottom: -20px; 1248 | position: static; 1249 | } 1250 | 1251 | #macbook #tour { 1252 | width: 504px; 1253 | height: 358px; 1254 | top: 17px; 1255 | left: -2px; 1256 | right: 10px; 1257 | } 1258 | 1259 | #macbook #tour .carousel-inner img { 1260 | width: 518px; 1261 | height: 321px; 1262 | } 1263 | } 1264 | 1265 | @media (max-width: 992px) { 1266 | #count-down .clock-presenter .digit { 1267 | font-size: 42px; 1268 | } 1269 | } 1270 | 1271 | @media screen and (max-width: 768px) { 1272 | #macbook { 1273 | background-image: none; 1274 | width: 448px; 1275 | height: 265px; 1276 | background-size: 100%; 1277 | margin-left: auto; 1278 | margin-right: auto; 1279 | margin-bottom: -56px; 1280 | position: static; 1281 | } 1282 | 1283 | #macbook #tour { 1284 | width: 344px; 1285 | height: 217px; 1286 | top: 12px; 1287 | left: 1px; 1288 | } 1289 | 1290 | #macbook #tour .carousel-inner img { 1291 | width: 344px; 1292 | height: 217px; 1293 | } 1294 | } 1295 | 1296 | @media screen and (max-width: 480px) { 1297 | #macbook { 1298 | background-image: none; 1299 | text-align: center; 1300 | width: 100%; 1301 | } 1302 | 1303 | #macbook #tour { 1304 | top: 0; 1305 | left: 0; 1306 | width: 100%; 1307 | max-width: 300px; 1308 | height: 189px; 1309 | margin-left: auto; 1310 | margin-right: auto; 1311 | } 1312 | 1313 | #macbook #tour .carousel-inner img { 1314 | max-width: 300px; 1315 | height: 189px; 1316 | overflow: hidden; 1317 | } 1318 | } 1319 | 1320 | @media screen and (max-width: 767px) { 1321 | .features-box { 1322 | padding: 10px 0px; 1323 | } 1324 | 1325 | .bg-trans { 1326 | background-color: #ffffff !important; 1327 | } 1328 | 1329 | .logo-white { 1330 | display: none !important; 1331 | } 1332 | 1333 | .logo-dark { 1334 | display: block !important; 1335 | } 1336 | 1337 | .navbar-custom-dark.navbar-default .navbar-nav>li>a { 1338 | color: #f9f9f9; 1339 | } 1340 | 1341 | .navbar-custom-dark.navbar-default.sticky .navbar-nav>li>a { 1342 | color: #333; 1343 | } 1344 | 1345 | .navbar-default .navbar-toggle .icon-bar { 1346 | background-color: #ffffff; 1347 | } 1348 | 1349 | .navbar-default.sticky .navbar-toggle .icon-bar { 1350 | background-color: #3B4A69; 1351 | } 1352 | 1353 | .vertical-content { 1354 | display: inherit; 1355 | } 1356 | 1357 | .features-alt { 1358 | margin: 30px 0px; 1359 | text-align: center; 1360 | } 1361 | 1362 | .home-wrapper { 1363 | text-align: center; 1364 | margin-bottom: 40px !important; 1365 | } 1366 | 1367 | .footer-one h5 { 1368 | margin-top: 30px; 1369 | } 1370 | 1371 | .footer-one-alt { 1372 | text-align: center !important; 1373 | } 1374 | 1375 | .footer-one-alt .footer-social-one { 1376 | float: none !important; 1377 | margin-top: 20px; 1378 | } 1379 | 1380 | #count-down .clock-presenter { 1381 | width: 50%; 1382 | float: left; 1383 | } 1384 | 1385 | #count-down .clock-presenter .digit { 1386 | font-size: 36px; 1387 | } 1388 | 1389 | #count-down .hours_dash { 1390 | border-right: none; 1391 | } 1392 | } 1393 | .navbar-brand>img { 1394 | opacity: 0.8 !important; 1395 | } 1396 | 1397 | .result { 1398 | 1399 | overflow: hidden; 1400 | background: #fff; 1401 | box-shadow: 0 -3px 31px 0 rgba(0, 0, 0, 0.05),0 6px 20px 0 rgba(0, 0, 0, 0.02); 1402 | padding: 0px 20px; 1403 | border-radius: 15px; 1404 | margin-bottom: 20px; 1405 | } 1406 | em { 1407 | font-weight: bold; 1408 | } 1409 | 1410 | .details { 1411 | border-bottom-left-radius: 15px; 1412 | margin-top: 0px; 1413 | margin-right: -20px; 1414 | float: right; 1415 | display: inline; 1416 | font-size: 11px; 1417 | text-transform: uppercase; 1418 | line-height: 23px; 1419 | opacity: 0.8; 1420 | background-color: #17161F; 1421 | padding: 2px 10px; 1422 | color: #FFFFFF; 1423 | } 1424 | 1425 | .icon-profile { font-size: 6px; top: 0em; -webkit-border-radius: 0.7em 0.7em 0 0; -moz-border-radius: 0.7em 0.7em 0 0; -o-border-radius: 0.7em 0.7em 0 0; -ms-border-radius: 0.7em 0.7em 0 0; border-radius: 0.7em 0.7em 0 0 ; background: #FFFFFF; width: 1.4em; height: 0.5em; position: relative; display: inline-block; margin-right: 4px; margin-left: 5px; } 1426 | .icon-profile::before { position: absolute; content: ""; top: -1em; left: 0.31em; width: 0.8em; height: 0.85em; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; -ms-border-radius: 50%; border-radius: 50% ; background: #FFFFFF; } 1427 | 1428 | .icon-clock { 1429 | display: inline-block; width: 10px; height: 12px; vertical-align: -2px; margin-right: 4px; 1430 | background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAMCAMAAABstdySAAAAOVBMVEUAAAD///////////////////////////////////////////////////////////////////////8KOjVvAAAAEnRSTlMADAIb8DMPt2MI6dTLx76nnREnEhipAAAATElEQVQI1yXLyREAMQgDQYHvvVf5B2sZz4cuKKD+Uhwru6maNDJNOx5Ao4GQP7B6MBF0BI37SMYWO+FZdqt8YZmhvF5PqmtAeek9aU7IwwMHq3GJrQAAAABJRU5ErkJggg==); 1431 | } 1432 | 1433 | @keyframes heartbeat 1434 | { 1435 | 0% 1436 | { 1437 | transform: scale( 1 ); 1438 | } 1439 | 50% 1440 | { 1441 | transform: scale( .75 ); 1442 | } 1443 | 100% 1444 | { 1445 | transform: scale( 1 ); 1446 | } 1447 | } 1448 | .loading { 1449 | animation: heartbeat 2s infinite; 1450 | width: 161px !important; 1451 | } 1452 | 1453 | .form { 1454 | transition: width 0.5s ease; 1455 | } 1456 | 1457 | .pagination { 1458 | position: absolute; 1459 | outline: none !important; 1460 | border-radius: 30px; 1461 | border: none; 1462 | color: #FFFFFF; 1463 | font-size: 17px; 1464 | background: #7220D4; 1465 | padding: 11px 30px; 1466 | font-weight: bold; 1467 | } 1468 | 1469 | .pagination-right { 1470 | top: 4px; 1471 | right: 4px; 1472 | } 1473 | .pagination-left { 1474 | top: 4px; 1475 | left: 4px; 1476 | } 1477 | .result:hover { 1478 | box-shadow: 0 -3px 31px 0 rgba(114, 32, 212, 0.15),0 6px 20px 0 rgba(0, 0, 0, 0.02); 1479 | } 1480 | .navbar-brand { 1481 | margin-top: 4px; 1482 | font-family: 'Text Me One', sans-serif !important; 1483 | font-weight: bold; 1484 | font-size: 30px; 1485 | color: #4E4E4E !important; 1486 | } 1487 | .banner { 1488 | font-family: 'Text Me One', sans-serif !important; 1489 | } 1490 | 1491 | .scrollToTop { 1492 | position: fixed; 1493 | display: none; 1494 | right: 10px; 1495 | bottom: 10px; 1496 | outline: none !important; 1497 | border-radius: 30px; 1498 | border: none; 1499 | color: #FFFFFF; 1500 | font-size: 14px; 1501 | background: #7220D4; 1502 | padding: 6px 23px; 1503 | font-weight: bold; 1504 | } 1505 | 1506 | .site { 1507 | float: right; 1508 | margin-top: 6px; 1509 | margin-right: 9px; 1510 | } 1511 | 1512 | a { 1513 | color: #7220D4; 1514 | } 1515 | --------------------------------------------------------------------------------