├── README.md ├── api ├── dish │ ├── create.php │ ├── delete.php │ ├── read.php │ └── read_single.php └── restaurants │ ├── allrestaurants.php │ ├── create.php │ ├── delete.php │ └── update.php ├── assets ├── bootstrap │ ├── css │ │ ├── bootstrap-grid.css │ │ ├── bootstrap-grid.css.map │ │ ├── bootstrap-grid.min.css │ │ ├── bootstrap-grid.min.css.map │ │ ├── bootstrap-reboot.css │ │ ├── bootstrap-reboot.css.map │ │ ├── bootstrap-reboot.min.css │ │ ├── bootstrap-reboot.min.css.map │ │ ├── bootstrap.css │ │ ├── bootstrap.css.map │ │ ├── bootstrap.min.css │ │ └── bootstrap.min.css.map │ └── js │ │ ├── bootstrap.bundle.js │ │ ├── bootstrap.bundle.js.map │ │ ├── bootstrap.bundle.min.js │ │ ├── bootstrap.bundle.min.js.map │ │ ├── bootstrap.js │ │ ├── bootstrap.js.map │ │ ├── bootstrap.min.js │ │ └── bootstrap.min.js.map ├── css │ ├── all.min.css │ ├── animate.css │ ├── magnific-popup.css │ ├── main.css │ ├── meanmenu.min.css │ ├── owl.carousel.css │ ├── responsive.css │ └── scss │ │ ├── base │ │ ├── _mixins.scss │ │ ├── _typography.scss │ │ └── _variables.scss │ │ ├── common │ │ ├── _common.scss │ │ ├── _footer.scss │ │ ├── _header.scss │ │ └── _hover.scss │ │ ├── main.scss │ │ ├── pages │ │ ├── _404.css │ │ ├── _404.scss │ │ ├── _about.scss │ │ ├── _contact.scss │ │ └── _shop.scss │ │ ├── prepros-6.config │ │ └── sections │ │ ├── _about.scss │ │ ├── _cart-banner.scss │ │ ├── _hero.scss │ │ ├── _list.scss │ │ ├── _news.scss │ │ ├── _shop-banner.scss │ │ └── _testimonials.scss ├── img │ ├── favicon.png │ └── logo.JPG ├── js │ ├── form-validate.js │ ├── jquery-1.11.3.min.js │ ├── jquery.countdown.js │ ├── jquery.isotope-3.0.6.min.js │ ├── jquery.magnific-popup.min.js │ ├── jquery.meanmenu.min.js │ ├── main.js │ ├── owl.carousel.min.js │ ├── sticker.js │ └── waypoints.js └── webfonts │ ├── fa-brands-400.eot │ ├── fa-brands-400.eot_ │ ├── fa-brands-400.svg │ ├── fa-brands-400.ttf │ ├── fa-brands-400.woff │ ├── fa-brands-400.woff2 │ ├── fa-regular-400.eot │ ├── fa-regular-400.eot_ │ ├── fa-regular-400.svg │ ├── fa-regular-400.ttf │ ├── fa-regular-400.woff │ ├── fa-regular-400.woff2 │ ├── fa-solid-900.eot │ ├── fa-solid-900.eot_ │ ├── fa-solid-900.svg │ ├── fa-solid-900.ttf │ ├── fa-solid-900.woff │ └── fa-solid-900.woff2 ├── composer.json ├── config └── Database.php ├── connect.php ├── dish.php ├── here.gif ├── index.php ├── models ├── Dish.php └── Restaurants.php ├── myblog.sql └── search.php /README.md: -------------------------------------------------------------------------------- 1 | # Bike-Lost 2 | Android Studio Project 3 | -------------------------------------------------------------------------------- /api/dish/create.php: -------------------------------------------------------------------------------- 1 | connect(); 24 | 25 | // Instantiate blog post object 26 | $post = new Post($db); 27 | 28 | // Get raw posted data 29 | $data = json_decode(file_get_contents("php://input")); 30 | 31 | $post->id = $data->id; 32 | $post->restaurant_id = $data->restaurant_id; 33 | $post->dishname = $data->dishname; 34 | $post->cooking_time = $data->cooking_time; 35 | $post->ingredients = $data->ingredients; 36 | $post->dish_price = $data->dish_price; 37 | 38 | 39 | // Create post 40 | if($post->create()) { 41 | echo json_encode( 42 | array('message' => 'Dish Added') 43 | ); 44 | } else { 45 | echo json_encode( 46 | array('message' => 'Dish Not Added') 47 | ); 48 | } 49 | } 50 | else { 51 | header("HTTP/1.0 401 Unauthorized"); 52 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 53 | print "Sorry, You dont Have Proper Credentials"; 54 | } 55 | } 56 | 57 | ?> 58 | 59 | -------------------------------------------------------------------------------- /api/dish/delete.php: -------------------------------------------------------------------------------- 1 | connect(); 24 | 25 | // Instantiate blog post object 26 | $post = new Post($db); 27 | 28 | // Get raw posted data 29 | $data = json_decode(file_get_contents("php://input")); 30 | 31 | // Set ID to update 32 | $post->id = $data->id; 33 | 34 | // Delete post 35 | if($post->delete()) { 36 | echo json_encode( 37 | array('message' => 'Dish Deleted') 38 | ); 39 | } else { 40 | echo json_encode( 41 | array('message' => 'Dish not Deleted') 42 | ); 43 | } 44 | } 45 | 46 | else { 47 | header("HTTP/1.0 401 Unauthorized"); 48 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 49 | print "Sorry, You dont Have Proper Credentials"; 50 | } 51 | } 52 | 53 | ?> 54 | 55 | -------------------------------------------------------------------------------- /api/dish/read.php: -------------------------------------------------------------------------------- 1 | connect(); 23 | 24 | // Instantiate blog post object 25 | $post = new Post($db); 26 | 27 | // Blog post query 28 | $result = $post->read(); 29 | // Get row count 30 | $num = $result->rowCount(); 31 | 32 | // Check if any posts 33 | if($num > 0) { 34 | // Post array 35 | $posts_arr = array(); 36 | $posts_arr['data'] = array(); 37 | 38 | while($row = $result->fetch(PDO::FETCH_ASSOC)) { 39 | extract($row); 40 | 41 | $post_item = array( 42 | 'id' => $id, 43 | 'restaurant_id' => $restaurant_id, 44 | 'dishaname' => $dishname, 45 | 'cooking_time' => $cooking_time, 46 | 'ingredients' => html_entity_decode($ingredients), 47 | 'dish_price' => $dish_price, 48 | 'restaurant_name' => $restaurant_name 49 | 50 | ); 51 | 52 | // Push to "data" 53 | array_push($posts_arr, $post_item); 54 | // array_push($posts_arr['data'], $post_item); 55 | } 56 | 57 | // Turn to JSON & output 58 | echo json_encode($posts_arr); 59 | 60 | } else { 61 | // No Posts 62 | echo json_encode( 63 | array('message' => 'Nta foods ziba muri iyi restaurant') 64 | ); 65 | } 66 | } 67 | else { 68 | header("HTTP/1.0 401 Unauthorized"); 69 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 70 | print "Sorry, You dont Have Proper Credentials"; 71 | } 72 | } 73 | 74 | ?> 75 | 76 | 77 | -------------------------------------------------------------------------------- /api/dish/read_single.php: -------------------------------------------------------------------------------- 1 | connect(); 22 | 23 | // Instantiate blog post object 24 | $post = new Post($db); 25 | 26 | // Get ID 27 | $post->id = isset($_GET['id']) ? $_GET['id'] : die(); 28 | 29 | // Get post 30 | $post->read_single(); 31 | 32 | // Create array 33 | $post_arr = array( 34 | 'id' => $post->id, 35 | 'restaurant_id' => $post->restaurant_id, 36 | 'dishname' => $post->dishname, 37 | 'cooking_time' => $post->cooking_time, 38 | 'ingredients' => $post->ingredients, 39 | 'created_at' => $post->created_at 40 | ); 41 | 42 | // Make JSON 43 | print_r(json_encode($post_arr)); 44 | 45 | 46 | } 47 | else { 48 | header("HTTP/1.0 401 Unauthorized"); 49 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 50 | print "Sorry, You dont Have Proper Credentials"; 51 | } 52 | } 53 | 54 | ?> -------------------------------------------------------------------------------- /api/restaurants/allrestaurants.php: -------------------------------------------------------------------------------- 1 | connect(); 23 | 24 | // Instantiate blog post object 25 | $post = new Post($db); 26 | 27 | // Blog post query 28 | $result = $post->allrestaurants(); 29 | // Get row count 30 | $num = $result->rowCount(); 31 | 32 | // Check if any posts 33 | if($num > 0) { 34 | // Post array 35 | $posts_arr = array(); 36 | $posts_arr['data'] = array(); 37 | 38 | while($row = $result->fetch(PDO::FETCH_ASSOC)) { 39 | extract($row); 40 | 41 | $post_item = array( 42 | 'restaurant_id' => $restaurant_id, 43 | 'restaurant_name' => $restaurant_name, 44 | 'owner' => $owner, 45 | 'rating' => $rating, 46 | 'location' => $location 47 | ); 48 | 49 | // Push to "data" 50 | array_push($posts_arr, $post_item); 51 | // array_push($posts_arr['data'], $post_item); 52 | } 53 | 54 | // Turn to JSON & output 55 | echo json_encode($posts_arr); 56 | 57 | } else { 58 | // No Posts 59 | echo json_encode( 60 | array('message' => 'Nta Regsted Restaurants!!') 61 | ); 62 | } 63 | } 64 | else { 65 | header("HTTP/1.0 401 Unauthorized"); 66 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 67 | print "Sorry, You dont Have Proper Credentials"; 68 | } 69 | } 70 | 71 | ?> 72 | 73 | 74 | -------------------------------------------------------------------------------- /api/restaurants/create.php: -------------------------------------------------------------------------------- 1 | connect(); 24 | 25 | // Instantiate blog post object 26 | $post = new Post($db); 27 | 28 | // Get raw posted data 29 | $data = json_decode(file_get_contents("php://input")); 30 | 31 | $post->restaurant_id = $data->restaurant_id; 32 | $post->restaurant_name = $data->restaurant_name; 33 | $post->owner = $data->owner; 34 | $post->rating = $data->rating; 35 | $post->location = $data->location; 36 | 37 | 38 | // Create post 39 | if($post->create()) { 40 | echo json_encode( 41 | array('message' => 'Restaurant added!') 42 | ); 43 | } else { 44 | echo json_encode( 45 | array('message' => ' Not Added') 46 | ); 47 | } 48 | } 49 | else { 50 | header("HTTP/1.0 401 Unauthorized"); 51 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 52 | print "Sorry, You dont Have Proper Credentials"; 53 | } 54 | } 55 | 56 | ?> 57 | 58 | -------------------------------------------------------------------------------- /api/restaurants/delete.php: -------------------------------------------------------------------------------- 1 | connect(); 24 | 25 | // Instantiate blog post object 26 | $post = new Post($db); 27 | 28 | // Get raw posted data 29 | $data = json_decode(file_get_contents("php://input")); 30 | 31 | // Set ID to update 32 | $post->restaurant_id = $data->restaurant_id; 33 | 34 | // Delete post 35 | if($post->delete()) { 36 | echo json_encode( 37 | array('message' => 'Restaurant was Deleted') 38 | ); 39 | } else { 40 | echo json_encode( 41 | array('message' => 'Restaurant was not Deleted') 42 | ); 43 | } 44 | } 45 | else { 46 | header("HTTP/1.0 401 Unauthorized"); 47 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 48 | print "Sorry, You dont Have Proper Credentials"; 49 | } 50 | } 51 | 52 | ?> 53 | 54 | -------------------------------------------------------------------------------- /api/restaurants/update.php: -------------------------------------------------------------------------------- 1 | 2 | connect(); 25 | 26 | // Instantiate blog post object 27 | $post = new Post($db); 28 | 29 | // Get raw posted data 30 | $data = json_decode(file_get_contents("php://input")); 31 | 32 | // Set ID to update 33 | $post->restaurant_id = $data->restaurant_id; 34 | 35 | $post->restaurant_name = $data->restaurant_name; 36 | $post->owner = $data->owner; 37 | $post->rating = $data->rating; 38 | $post->location = $data->location; 39 | 40 | // Update post 41 | if($post->update()) { 42 | echo json_encode( 43 | array('message' => 'Restaurant Updated') 44 | ); 45 | } else { 46 | echo json_encode( 47 | array('message' => 'Post Not Updated') 48 | ); 49 | } 50 | } 51 | else { 52 | header("HTTP/1.0 401 Unauthorized"); 53 | header("WWW-Authenticate: Basic realm=\"Private Area\""); 54 | print "Sorry, You dont Have Proper Credentials"; 55 | } 56 | } 57 | 58 | ?> 59 | -------------------------------------------------------------------------------- /assets/bootstrap/css/bootstrap-reboot.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v4.4.1 (https://getbootstrap.com/) 3 | * Copyright 2011-2019 The Bootstrap Authors 4 | * Copyright 2011-2019 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) 7 | */ 8 | *, 9 | *::before, 10 | *::after { 11 | box-sizing: border-box; 12 | } 13 | 14 | html { 15 | font-family: sans-serif; 16 | line-height: 1.15; 17 | -webkit-text-size-adjust: 100%; 18 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 19 | } 20 | 21 | article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { 22 | display: block; 23 | } 24 | 25 | body { 26 | margin: 0; 27 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; 28 | font-size: 1rem; 29 | font-weight: 400; 30 | line-height: 1.5; 31 | color: #212529; 32 | text-align: left; 33 | background-color: #fff; 34 | } 35 | 36 | [tabindex="-1"]:focus:not(:focus-visible) { 37 | outline: 0 !important; 38 | } 39 | 40 | hr { 41 | box-sizing: content-box; 42 | height: 0; 43 | overflow: visible; 44 | } 45 | 46 | h1, h2, h3, h4, h5, h6 { 47 | margin-top: 0; 48 | margin-bottom: 0.5rem; 49 | } 50 | 51 | p { 52 | margin-top: 0; 53 | margin-bottom: 1rem; 54 | } 55 | 56 | abbr[title], 57 | abbr[data-original-title] { 58 | text-decoration: underline; 59 | -webkit-text-decoration: underline dotted; 60 | text-decoration: underline dotted; 61 | cursor: help; 62 | border-bottom: 0; 63 | -webkit-text-decoration-skip-ink: none; 64 | text-decoration-skip-ink: none; 65 | } 66 | 67 | address { 68 | margin-bottom: 1rem; 69 | font-style: normal; 70 | line-height: inherit; 71 | } 72 | 73 | ol, 74 | ul, 75 | dl { 76 | margin-top: 0; 77 | margin-bottom: 1rem; 78 | } 79 | 80 | ol ol, 81 | ul ul, 82 | ol ul, 83 | ul ol { 84 | margin-bottom: 0; 85 | } 86 | 87 | dt { 88 | font-weight: 700; 89 | } 90 | 91 | dd { 92 | margin-bottom: .5rem; 93 | margin-left: 0; 94 | } 95 | 96 | blockquote { 97 | margin: 0 0 1rem; 98 | } 99 | 100 | b, 101 | strong { 102 | font-weight: bolder; 103 | } 104 | 105 | small { 106 | font-size: 80%; 107 | } 108 | 109 | sub, 110 | sup { 111 | position: relative; 112 | font-size: 75%; 113 | line-height: 0; 114 | vertical-align: baseline; 115 | } 116 | 117 | sub { 118 | bottom: -.25em; 119 | } 120 | 121 | sup { 122 | top: -.5em; 123 | } 124 | 125 | a { 126 | color: #007bff; 127 | text-decoration: none; 128 | background-color: transparent; 129 | } 130 | 131 | a:hover { 132 | color: #0056b3; 133 | text-decoration: underline; 134 | } 135 | 136 | a:not([href]) { 137 | color: inherit; 138 | text-decoration: none; 139 | } 140 | 141 | a:not([href]):hover { 142 | color: inherit; 143 | text-decoration: none; 144 | } 145 | 146 | pre, 147 | code, 148 | kbd, 149 | samp { 150 | font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; 151 | font-size: 1em; 152 | } 153 | 154 | pre { 155 | margin-top: 0; 156 | margin-bottom: 1rem; 157 | overflow: auto; 158 | } 159 | 160 | figure { 161 | margin: 0 0 1rem; 162 | } 163 | 164 | img { 165 | vertical-align: middle; 166 | border-style: none; 167 | } 168 | 169 | svg { 170 | overflow: hidden; 171 | vertical-align: middle; 172 | } 173 | 174 | table { 175 | border-collapse: collapse; 176 | } 177 | 178 | caption { 179 | padding-top: 0.75rem; 180 | padding-bottom: 0.75rem; 181 | color: #6c757d; 182 | text-align: left; 183 | caption-side: bottom; 184 | } 185 | 186 | th { 187 | text-align: inherit; 188 | } 189 | 190 | label { 191 | display: inline-block; 192 | margin-bottom: 0.5rem; 193 | } 194 | 195 | button { 196 | border-radius: 0; 197 | } 198 | 199 | button:focus { 200 | outline: 1px dotted; 201 | outline: 5px auto -webkit-focus-ring-color; 202 | } 203 | 204 | input, 205 | button, 206 | select, 207 | optgroup, 208 | textarea { 209 | margin: 0; 210 | font-family: inherit; 211 | font-size: inherit; 212 | line-height: inherit; 213 | } 214 | 215 | button, 216 | input { 217 | overflow: visible; 218 | } 219 | 220 | button, 221 | select { 222 | text-transform: none; 223 | } 224 | 225 | select { 226 | word-wrap: normal; 227 | } 228 | 229 | button, 230 | [type="button"], 231 | [type="reset"], 232 | [type="submit"] { 233 | -webkit-appearance: button; 234 | } 235 | 236 | button:not(:disabled), 237 | [type="button"]:not(:disabled), 238 | [type="reset"]:not(:disabled), 239 | [type="submit"]:not(:disabled) { 240 | cursor: pointer; 241 | } 242 | 243 | button::-moz-focus-inner, 244 | [type="button"]::-moz-focus-inner, 245 | [type="reset"]::-moz-focus-inner, 246 | [type="submit"]::-moz-focus-inner { 247 | padding: 0; 248 | border-style: none; 249 | } 250 | 251 | input[type="radio"], 252 | input[type="checkbox"] { 253 | box-sizing: border-box; 254 | padding: 0; 255 | } 256 | 257 | input[type="date"], 258 | input[type="time"], 259 | input[type="datetime-local"], 260 | input[type="month"] { 261 | -webkit-appearance: listbox; 262 | } 263 | 264 | textarea { 265 | overflow: auto; 266 | resize: vertical; 267 | } 268 | 269 | fieldset { 270 | min-width: 0; 271 | padding: 0; 272 | margin: 0; 273 | border: 0; 274 | } 275 | 276 | legend { 277 | display: block; 278 | width: 100%; 279 | max-width: 100%; 280 | padding: 0; 281 | margin-bottom: .5rem; 282 | font-size: 1.5rem; 283 | line-height: inherit; 284 | color: inherit; 285 | white-space: normal; 286 | } 287 | 288 | progress { 289 | vertical-align: baseline; 290 | } 291 | 292 | [type="number"]::-webkit-inner-spin-button, 293 | [type="number"]::-webkit-outer-spin-button { 294 | height: auto; 295 | } 296 | 297 | [type="search"] { 298 | outline-offset: -2px; 299 | -webkit-appearance: none; 300 | } 301 | 302 | [type="search"]::-webkit-search-decoration { 303 | -webkit-appearance: none; 304 | } 305 | 306 | ::-webkit-file-upload-button { 307 | font: inherit; 308 | -webkit-appearance: button; 309 | } 310 | 311 | output { 312 | display: inline-block; 313 | } 314 | 315 | summary { 316 | display: list-item; 317 | cursor: pointer; 318 | } 319 | 320 | template { 321 | display: none; 322 | } 323 | 324 | [hidden] { 325 | display: none !important; 326 | } 327 | /*# sourceMappingURL=bootstrap-reboot.css.map */ -------------------------------------------------------------------------------- /assets/bootstrap/css/bootstrap-reboot.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Reboot v4.4.1 (https://getbootstrap.com/) 3 | * Copyright 2011-2019 The Bootstrap Authors 4 | * Copyright 2011-2019 Twitter, Inc. 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) 7 | */*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]){color:inherit;text-decoration:none}a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important} 8 | /*# sourceMappingURL=bootstrap-reboot.min.css.map */ -------------------------------------------------------------------------------- /assets/css/magnific-popup.css: -------------------------------------------------------------------------------- 1 | /* Magnific Popup CSS */ 2 | .mfp-bg { 3 | top: 0; 4 | left: 0; 5 | width: 100%; 6 | height: 100%; 7 | z-index: 1042; 8 | overflow: hidden; 9 | position: fixed; 10 | background: #0b0b0b; 11 | opacity: 0.8; } 12 | 13 | .mfp-wrap { 14 | top: 0; 15 | left: 0; 16 | width: 100%; 17 | height: 100%; 18 | z-index: 1043; 19 | position: fixed; 20 | outline: none !important; 21 | -webkit-backface-visibility: hidden; } 22 | 23 | .mfp-container { 24 | text-align: center; 25 | position: absolute; 26 | width: 100%; 27 | height: 100%; 28 | left: 0; 29 | top: 0; 30 | padding: 0 8px; 31 | box-sizing: border-box; } 32 | 33 | .mfp-container:before { 34 | content: ''; 35 | display: inline-block; 36 | height: 100%; 37 | vertical-align: middle; } 38 | 39 | .mfp-align-top .mfp-container:before { 40 | display: none; } 41 | 42 | .mfp-content { 43 | position: relative; 44 | display: inline-block; 45 | vertical-align: middle; 46 | margin: 0 auto; 47 | text-align: left; 48 | z-index: 1045; } 49 | 50 | .mfp-inline-holder .mfp-content, 51 | .mfp-ajax-holder .mfp-content { 52 | width: 100%; 53 | cursor: auto; } 54 | 55 | .mfp-ajax-cur { 56 | cursor: progress; } 57 | 58 | .mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { 59 | cursor: -moz-zoom-out; 60 | cursor: -webkit-zoom-out; 61 | cursor: zoom-out; } 62 | 63 | .mfp-zoom { 64 | cursor: pointer; 65 | cursor: -webkit-zoom-in; 66 | cursor: -moz-zoom-in; 67 | cursor: zoom-in; } 68 | 69 | .mfp-auto-cursor .mfp-content { 70 | cursor: auto; } 71 | 72 | .mfp-close, 73 | .mfp-arrow, 74 | .mfp-preloader, 75 | .mfp-counter { 76 | -webkit-user-select: none; 77 | -moz-user-select: none; 78 | user-select: none; } 79 | 80 | .mfp-loading.mfp-figure { 81 | display: none; } 82 | 83 | .mfp-hide { 84 | display: none !important; } 85 | 86 | .mfp-preloader { 87 | color: #CCC; 88 | position: absolute; 89 | top: 50%; 90 | width: auto; 91 | text-align: center; 92 | margin-top: -0.8em; 93 | left: 8px; 94 | right: 8px; 95 | z-index: 1044; } 96 | .mfp-preloader a { 97 | color: #CCC; } 98 | .mfp-preloader a:hover { 99 | color: #FFF; } 100 | 101 | .mfp-s-ready .mfp-preloader { 102 | display: none; } 103 | 104 | .mfp-s-error .mfp-content { 105 | display: none; } 106 | 107 | button.mfp-close, 108 | button.mfp-arrow { 109 | overflow: visible; 110 | cursor: pointer; 111 | background: transparent; 112 | border: 0; 113 | -webkit-appearance: none; 114 | display: block; 115 | outline: none; 116 | padding: 0; 117 | z-index: 1046; 118 | box-shadow: none; 119 | touch-action: manipulation; } 120 | 121 | button::-moz-focus-inner { 122 | padding: 0; 123 | border: 0; } 124 | 125 | .mfp-close { 126 | width: 44px; 127 | height: 44px; 128 | line-height: 44px; 129 | position: absolute; 130 | right: 0; 131 | top: 0; 132 | text-decoration: none; 133 | text-align: center; 134 | opacity: 0.65; 135 | padding: 0 0 18px 10px; 136 | color: #FFF; 137 | font-style: normal; 138 | font-size: 28px; 139 | font-family: Arial, Baskerville, monospace; } 140 | .mfp-close:hover, 141 | .mfp-close:focus { 142 | opacity: 1; } 143 | .mfp-close:active { 144 | top: 1px; } 145 | 146 | .mfp-close-btn-in .mfp-close { 147 | color: #333; } 148 | 149 | .mfp-image-holder .mfp-close, 150 | .mfp-iframe-holder .mfp-close { 151 | color: #FFF; 152 | right: -6px; 153 | text-align: right; 154 | padding-right: 6px; 155 | width: 100%; } 156 | 157 | .mfp-counter { 158 | position: absolute; 159 | top: 0; 160 | right: 0; 161 | color: #CCC; 162 | font-size: 12px; 163 | line-height: 18px; 164 | white-space: nowrap; } 165 | 166 | .mfp-arrow { 167 | position: absolute; 168 | opacity: 0.65; 169 | margin: 0; 170 | top: 50%; 171 | margin-top: -55px; 172 | padding: 0; 173 | width: 90px; 174 | height: 110px; 175 | -webkit-tap-highlight-color: transparent; } 176 | .mfp-arrow:active { 177 | margin-top: -54px; } 178 | .mfp-arrow:hover, 179 | .mfp-arrow:focus { 180 | opacity: 1; } 181 | .mfp-arrow:before, 182 | .mfp-arrow:after { 183 | content: ''; 184 | display: block; 185 | width: 0; 186 | height: 0; 187 | position: absolute; 188 | left: 0; 189 | top: 0; 190 | margin-top: 35px; 191 | margin-left: 35px; 192 | border: medium inset transparent; } 193 | .mfp-arrow:after { 194 | border-top-width: 13px; 195 | border-bottom-width: 13px; 196 | top: 8px; } 197 | .mfp-arrow:before { 198 | border-top-width: 21px; 199 | border-bottom-width: 21px; 200 | opacity: 0.7; } 201 | 202 | .mfp-arrow-left { 203 | left: 0; } 204 | .mfp-arrow-left:after { 205 | border-right: 17px solid #FFF; 206 | margin-left: 31px; } 207 | .mfp-arrow-left:before { 208 | margin-left: 25px; 209 | border-right: 27px solid #3F3F3F; } 210 | 211 | .mfp-arrow-right { 212 | right: 0; } 213 | .mfp-arrow-right:after { 214 | border-left: 17px solid #FFF; 215 | margin-left: 39px; } 216 | .mfp-arrow-right:before { 217 | border-left: 27px solid #3F3F3F; } 218 | 219 | .mfp-iframe-holder { 220 | padding-top: 40px; 221 | padding-bottom: 40px; } 222 | .mfp-iframe-holder .mfp-content { 223 | line-height: 0; 224 | width: 100%; 225 | max-width: 900px; } 226 | .mfp-iframe-holder .mfp-close { 227 | top: -40px; } 228 | 229 | .mfp-iframe-scaler { 230 | width: 100%; 231 | height: 0; 232 | overflow: hidden; 233 | padding-top: 56.25%; } 234 | .mfp-iframe-scaler iframe { 235 | position: absolute; 236 | display: block; 237 | top: 0; 238 | left: 0; 239 | width: 100%; 240 | height: 100%; 241 | box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); 242 | background: #000; } 243 | 244 | /* Main image in popup */ 245 | img.mfp-img { 246 | width: auto; 247 | max-width: 100%; 248 | height: auto; 249 | display: block; 250 | line-height: 0; 251 | box-sizing: border-box; 252 | padding: 40px 0 40px; 253 | margin: 0 auto; } 254 | 255 | /* The shadow behind the image */ 256 | .mfp-figure { 257 | line-height: 0; } 258 | .mfp-figure:after { 259 | content: ''; 260 | position: absolute; 261 | left: 0; 262 | top: 40px; 263 | bottom: 40px; 264 | display: block; 265 | right: 0; 266 | width: auto; 267 | height: auto; 268 | z-index: -1; 269 | box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); 270 | background: #444; } 271 | .mfp-figure small { 272 | color: #BDBDBD; 273 | display: block; 274 | font-size: 12px; 275 | line-height: 14px; } 276 | .mfp-figure figure { 277 | margin: 0; } 278 | 279 | .mfp-bottom-bar { 280 | margin-top: -36px; 281 | position: absolute; 282 | top: 100%; 283 | left: 0; 284 | width: 100%; 285 | cursor: auto; } 286 | 287 | .mfp-title { 288 | text-align: left; 289 | line-height: 18px; 290 | color: #F3F3F3; 291 | word-wrap: break-word; 292 | padding-right: 36px; } 293 | 294 | .mfp-image-holder .mfp-content { 295 | max-width: 100%; } 296 | 297 | .mfp-gallery .mfp-image-holder .mfp-figure { 298 | cursor: pointer; } 299 | 300 | @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) { 301 | /** 302 | * Remove all paddings around the image on small screen 303 | */ 304 | .mfp-img-mobile .mfp-image-holder { 305 | padding-left: 0; 306 | padding-right: 0; } 307 | .mfp-img-mobile img.mfp-img { 308 | padding: 0; } 309 | .mfp-img-mobile .mfp-figure:after { 310 | top: 0; 311 | bottom: 0; } 312 | .mfp-img-mobile .mfp-figure small { 313 | display: inline; 314 | margin-left: 5px; } 315 | .mfp-img-mobile .mfp-bottom-bar { 316 | background: rgba(0, 0, 0, 0.6); 317 | bottom: 0; 318 | margin: 0; 319 | top: auto; 320 | padding: 3px 5px; 321 | position: fixed; 322 | box-sizing: border-box; } 323 | .mfp-img-mobile .mfp-bottom-bar:empty { 324 | padding: 0; } 325 | .mfp-img-mobile .mfp-counter { 326 | right: 5px; 327 | top: 3px; } 328 | .mfp-img-mobile .mfp-close { 329 | top: 0; 330 | right: 0; 331 | width: 35px; 332 | height: 35px; 333 | line-height: 35px; 334 | background: rgba(0, 0, 0, 0.6); 335 | position: fixed; 336 | text-align: center; 337 | padding: 0; } } 338 | 339 | @media all and (max-width: 900px) { 340 | .mfp-arrow { 341 | -webkit-transform: scale(0.75); 342 | transform: scale(0.75); } 343 | .mfp-arrow-left { 344 | -webkit-transform-origin: 0; 345 | transform-origin: 0; } 346 | .mfp-arrow-right { 347 | -webkit-transform-origin: 100%; 348 | transform-origin: 100%; } 349 | .mfp-container { 350 | padding-left: 6px; 351 | padding-right: 6px; } } -------------------------------------------------------------------------------- /assets/css/meanmenu.min.css: -------------------------------------------------------------------------------- 1 | /*! ####################################################################### 2 | 3 | MeanMenu 2.0.7 4 | -------- 5 | 6 | To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/) 7 | 8 | ####################################################################### */a.meanmenu-reveal{display:none}.mean-container .mean-bar{float:left;width:100%;position:relative;background:#0c1923;padding:4px 0;min-height:42px;z-index:999999}.mean-container a.meanmenu-reveal{width:22px;height:22px;padding:13px 13px 11px;position:absolute;top:0;right:0;cursor:pointer;color:#fff;text-decoration:none;font-size:16px;text-indent:-9999em;line-height:22px;font-size:1px;display:block;font-family:Arial,Helvetica,sans-serif;font-weight:700}.mean-container a.meanmenu-reveal span{display:block;background:#fff;height:3px;margin-top:3px}.mean-container .mean-nav{float:left;width:100%;background:#0c1923;margin-top:44px}.mean-container .mean-nav ul{padding:0;margin:0;width:100%;list-style-type:none}.mean-container .mean-nav ul li{position:relative;float:left;width:100%}.mean-container .mean-nav ul li a{display:block;float:left;width:90%;padding:1em 5%;margin:0;text-align:left;color:#fff;border-top:1px solid #383838;border-top:1px solid rgba(255,255,255,.5);text-decoration:none;text-transform:uppercase}.mean-container .mean-nav ul li li a{width:80%;padding:1em 10%;border-top:1px solid #f1f1f1;border-top:1px solid rgba(255,255,255,.25);opacity:.75;filter:alpha(opacity=75);text-shadow:none!important;visibility:visible}.mean-container .mean-nav ul li.mean-last a{border-bottom:0;margin-bottom:0}.mean-container .mean-nav ul li li li a{width:70%;padding:1em 15%}.mean-container .mean-nav ul li li li li a{width:60%;padding:1em 20%}.mean-container .mean-nav ul li li li li li a{width:50%;padding:1em 25%}.mean-container .mean-nav ul li a:hover{background:#252525;background:rgba(255,255,255,.1)}.mean-container .mean-nav ul li a.mean-expand{margin-top:1px;width:26px;height:32px;padding:12px!important;text-align:center;position:absolute;right:0;top:0;z-index:2;font-weight:700;background:rgba(255,255,255,.1);border:0!important;border-left:1px solid rgba(255,255,255,.4)!important;border-bottom:1px solid rgba(255,255,255,.2)!important}.mean-container .mean-nav ul li a.mean-expand:hover{background:rgba(0,0,0,.9)}.mean-container .mean-push{float:left;width:100%;padding:0;margin:0;clear:both}.mean-nav .wrapper{width:100%;padding:0;margin:0}.mean-container .mean-bar,.mean-container .mean-bar *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.mean-remove{display:none!important} -------------------------------------------------------------------------------- /assets/css/owl.carousel.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Owl Carousel - Animate Plugin 3 | */ 4 | .owl-carousel .animated { 5 | -webkit-animation-duration: 1000ms; 6 | animation-duration: 1000ms; 7 | -webkit-animation-fill-mode: both; 8 | animation-fill-mode: both; 9 | } 10 | .owl-carousel .owl-animated-in { 11 | z-index: 0; 12 | } 13 | .owl-carousel .owl-animated-out { 14 | z-index: 1; 15 | } 16 | .owl-carousel .fadeOut { 17 | -webkit-animation-name: fadeOut; 18 | animation-name: fadeOut; 19 | } 20 | 21 | @-webkit-keyframes fadeOut { 22 | 0% { 23 | opacity: 1; 24 | } 25 | 26 | 100% { 27 | opacity: 0; 28 | } 29 | } 30 | @keyframes fadeOut { 31 | 0% { 32 | opacity: 1; 33 | } 34 | 35 | 100% { 36 | opacity: 0; 37 | } 38 | } 39 | 40 | /* 41 | * Owl Carousel - Auto Height Plugin 42 | */ 43 | .owl-height { 44 | -webkit-transition: height 500ms ease-in-out; 45 | -moz-transition: height 500ms ease-in-out; 46 | -ms-transition: height 500ms ease-in-out; 47 | -o-transition: height 500ms ease-in-out; 48 | transition: height 500ms ease-in-out; 49 | } 50 | 51 | /* 52 | * Core Owl Carousel CSS File 53 | */ 54 | .owl-carousel { 55 | display: none; 56 | width: 100%; 57 | -webkit-tap-highlight-color: transparent; 58 | /* position relative and z-index fix webkit rendering fonts issue */ 59 | position: relative; 60 | z-index: 1; 61 | } 62 | .owl-carousel .owl-stage { 63 | position: relative; 64 | -ms-touch-action: pan-Y; 65 | } 66 | .owl-carousel .owl-stage:after { 67 | content: "."; 68 | display: block; 69 | clear: both; 70 | visibility: hidden; 71 | line-height: 0; 72 | height: 0; 73 | } 74 | .owl-carousel .owl-stage-outer { 75 | position: relative; 76 | overflow: hidden; 77 | /* fix for flashing background */ 78 | -webkit-transform: translate3d(0px, 0px, 0px); 79 | } 80 | .owl-carousel .owl-controls .owl-nav .owl-prev, 81 | .owl-carousel .owl-controls .owl-nav .owl-next, 82 | .owl-carousel .owl-controls .owl-dot { 83 | cursor: pointer; 84 | cursor: hand; 85 | -webkit-user-select: none; 86 | -khtml-user-select: none; 87 | -moz-user-select: none; 88 | -ms-user-select: none; 89 | user-select: none; 90 | } 91 | .owl-carousel.owl-loaded { 92 | display: block; 93 | } 94 | .owl-carousel.owl-loading { 95 | opacity: 0; 96 | display: block; 97 | } 98 | .owl-carousel.owl-hidden { 99 | opacity: 0; 100 | } 101 | .owl-carousel .owl-refresh .owl-item { 102 | display: none; 103 | } 104 | .owl-carousel .owl-item { 105 | position: relative; 106 | min-height: 1px; 107 | float: left; 108 | -webkit-backface-visibility: hidden; 109 | -webkit-tap-highlight-color: transparent; 110 | -webkit-touch-callout: none; 111 | -webkit-user-select: none; 112 | -moz-user-select: none; 113 | -ms-user-select: none; 114 | user-select: none; 115 | } 116 | .owl-carousel .owl-item img { 117 | display: block; 118 | width: 100%; 119 | -webkit-transform-style: preserve-3d; 120 | } 121 | .owl-carousel.owl-text-select-on .owl-item { 122 | -webkit-user-select: auto; 123 | -moz-user-select: auto; 124 | -ms-user-select: auto; 125 | user-select: auto; 126 | } 127 | .owl-carousel .owl-grab { 128 | cursor: move; 129 | cursor: -webkit-grab; 130 | cursor: -o-grab; 131 | cursor: -ms-grab; 132 | cursor: grab; 133 | } 134 | .owl-carousel.owl-rtl { 135 | direction: rtl; 136 | } 137 | .owl-carousel.owl-rtl .owl-item { 138 | float: right; 139 | } 140 | 141 | /* No Js */ 142 | .no-js .owl-carousel { 143 | display: block; 144 | } 145 | 146 | /* 147 | * Owl Carousel - Lazy Load Plugin 148 | */ 149 | .owl-carousel .owl-item .owl-lazy { 150 | opacity: 0; 151 | -webkit-transition: opacity 400ms ease; 152 | -moz-transition: opacity 400ms ease; 153 | -ms-transition: opacity 400ms ease; 154 | -o-transition: opacity 400ms ease; 155 | transition: opacity 400ms ease; 156 | } 157 | .owl-carousel .owl-item img { 158 | transform-style: preserve-3d; 159 | } 160 | 161 | /* 162 | * Owl Carousel - Video Plugin 163 | */ 164 | .owl-carousel .owl-video-wrapper { 165 | position: relative; 166 | height: 100%; 167 | background: #000; 168 | } 169 | .owl-carousel .owl-video-play-icon { 170 | position: absolute; 171 | height: 80px; 172 | width: 80px; 173 | left: 50%; 174 | top: 50%; 175 | margin-left: -40px; 176 | margin-top: -40px; 177 | background: url("owl.video.play.png") no-repeat; 178 | cursor: pointer; 179 | z-index: 1; 180 | -webkit-backface-visibility: hidden; 181 | -webkit-transition: scale 100ms ease; 182 | -moz-transition: scale 100ms ease; 183 | -ms-transition: scale 100ms ease; 184 | -o-transition: scale 100ms ease; 185 | transition: scale 100ms ease; 186 | } 187 | .owl-carousel .owl-video-play-icon:hover { 188 | -webkit-transition: scale(1.3, 1.3); 189 | -moz-transition: scale(1.3, 1.3); 190 | -ms-transition: scale(1.3, 1.3); 191 | -o-transition: scale(1.3, 1.3); 192 | transition: scale(1.3, 1.3); 193 | } 194 | .owl-carousel .owl-video-playing .owl-video-tn, 195 | .owl-carousel .owl-video-playing .owl-video-play-icon { 196 | display: none; 197 | } 198 | .owl-carousel .owl-video-tn { 199 | opacity: 0; 200 | height: 100%; 201 | background-position: center center; 202 | background-repeat: no-repeat; 203 | -webkit-background-size: contain; 204 | -moz-background-size: contain; 205 | -o-background-size: contain; 206 | background-size: contain; 207 | -webkit-transition: opacity 400ms ease; 208 | -moz-transition: opacity 400ms ease; 209 | -ms-transition: opacity 400ms ease; 210 | -o-transition: opacity 400ms ease; 211 | transition: opacity 400ms ease; 212 | } 213 | .owl-carousel .owl-video-frame { 214 | position: relative; 215 | z-index: 1; 216 | } 217 | -------------------------------------------------------------------------------- /assets/css/responsive.css: -------------------------------------------------------------------------------- 1 | /* Medium Layout: 1280px. */ 2 | @media only screen and (min-width: 992px) { 3 | } 4 | 5 | @media only screen and (min-width: 992px) and (max-width: 1200px) { 6 | .hero-text h1 { 7 | font-size: 45px; 8 | } 9 | 10 | a.video-play-btn { 11 | right: 51%; 12 | } 13 | .hero-area div.hero-form { 14 | bottom: -20%; 15 | } 16 | 17 | .cart-buttons a:first-child { 18 | margin-right: 0; 19 | margin-bottom: 15px; 20 | } 21 | .contact-form form p input[type=email] { 22 | margin-left: 8px; 23 | } 24 | .contact-form-box h4 i { 25 | left: -20%; 26 | } 27 | .comment-template form p input[type=email] { 28 | margin-left: 8px; 29 | } 30 | ul.main-menu li a { 31 | padding: 15px 13px; 32 | } 33 | span.close-btn { 34 | right: 0; 35 | } 36 | ul.sub-menu li a { 37 | padding: 7px 10px; 38 | } 39 | 40 | } 41 | /* Tablet Layout: 768px. */ 42 | @media only screen and (min-width: 768px) and (max-width: 991px) { 43 | .hero-text h1 { 44 | font-size: 40px; 45 | } 46 | .footer-box { 47 | margin-bottom: 40px; 48 | } 49 | .copyright p { 50 | text-align: center; 51 | } 52 | .copyright .social-icons { 53 | text-align: center; 54 | } 55 | .feature-bg:after { 56 | display: none; 57 | } 58 | .single-team-item { 59 | margin-bottom: 30px; 60 | } 61 | table.cart-table { 62 | margin-bottom: 50px; 63 | } 64 | .order-details-wrap { 65 | margin-top: 50px; 66 | } 67 | .contact-form form p input[type=text], 68 | .contact-form form p input[type=tel], 69 | .contact-form form p input[type=email] { 70 | width: 100%; 71 | } 72 | 73 | .contact-form form p input[type=email] { 74 | margin-left: 0; 75 | margin-top: 15px; 76 | } 77 | .contact-form form p input[type=tel] { 78 | margin-bottom: 15px; 79 | } 80 | 81 | .hero-area div.hero-form { 82 | width: 325px; 83 | top: 30%; 84 | } 85 | 86 | .comment-template form p input[type=text], 87 | .comment-template form p input[type=email] { 88 | width: 100%; 89 | } 90 | 91 | .comment-template form p input[type=email] { 92 | margin-top: 15px; 93 | margin-left: 0; 94 | } 95 | .sidebar-section { 96 | margin-left: 0; 97 | margin-top: 50px; 98 | } 99 | .single-product-img { 100 | margin-bottom: 30px; 101 | } 102 | .single-product-img img { 103 | width: 100%; 104 | } 105 | .single-project-img img { 106 | width: 100%; 107 | } 108 | .site-logo a img { 109 | max-width: 150px; 110 | } 111 | .site-logo { 112 | text-align: center; 113 | position: absolute; 114 | z-index: 999; 115 | } 116 | .mean-container .mean-bar { 117 | z-index: 2; 118 | } 119 | .responsive-menu-wrap { 120 | display: block; 121 | } 122 | .header-icons { 123 | text-align: center; 124 | } 125 | .top-header-area { 126 | padding: 15px 0; 127 | } 128 | 129 | .responsive-menu-wrap { 130 | position: absolute; 131 | top: 0; 132 | } 133 | 134 | .featured-section { 135 | padding: 0; 136 | } 137 | 138 | .responsive-menu-wrap { 139 | left: 50%; 140 | margin-top: 10px; 141 | margin-left: -57.5px; 142 | } 143 | .hero-text-tablecell { 144 | padding: 0px 70px; 145 | } 146 | .hero-form .hero-text h1 { 147 | font-size: 30px; 148 | } 149 | 150 | .hero-form .hero-text p.subtitle { 151 | font-size: 13px; 152 | } 153 | 154 | .hero-form .hero-btns a.bordered-btn { 155 | margin-left: 0; 156 | margin-top: 20px; 157 | } 158 | 159 | .sticky-wrapper.is-sticky .top-header-area { 160 | position: absolute!important; 161 | background-color: transparent; 162 | } 163 | .featured-box { 164 | padding: 30px; 165 | } 166 | 167 | .featured-section { 168 | padding: 100px 0; 169 | } 170 | nav.main-menu { 171 | display: none; 172 | } 173 | table.order-details { 174 | width: 100%; 175 | } 176 | .contact-form-box h4 i { 177 | left: -7%; 178 | } 179 | .single-product-content h3 { 180 | font-size: 20px; 181 | font-weight: 500; 182 | line-height: 1.6; 183 | } 184 | 185 | .single-product-content { 186 | margin-left: 15px; 187 | } 188 | a.mobile-hide.search-bar-icon { 189 | display: none!important; 190 | } 191 | .mobile-show { 192 | display: block!important; 193 | } 194 | a.mobile-show.search-bar-icon { 195 | position: absolute; 196 | right: 60px; 197 | top: 22px; 198 | z-index: 999; 199 | color: #fff; 200 | } 201 | 202 | } 203 | 204 | /* Mobile Layout: 320px. */ 205 | @media only screen and (max-width: 767px) { 206 | 207 | .site-logo img { 208 | max-width: 150px; 209 | } 210 | 211 | .responsive-menu-wrap { 212 | top: -35px; 213 | } 214 | 215 | span.close-btn { 216 | right: 35px; 217 | } 218 | .header-icons { 219 | text-align: center; 220 | } 221 | .hero-text h1 { 222 | font-size: 28px; 223 | } 224 | 225 | .hero-text p.subtitle { 226 | font-size: 13px; 227 | } 228 | .section-title p { 229 | max-width: 400px; 230 | } 231 | 232 | .section-title h3 { 233 | font-size: 25px; 234 | } 235 | 236 | p.testimonial-body { 237 | font-size: 15px; 238 | } 239 | .responsive-menu { 240 | left: auto; 241 | right: 0; 242 | } 243 | 244 | .featured-section { 245 | padding: 0; 246 | } 247 | 248 | a.video-play-btn { 249 | right: auto; 250 | left: 50%; 251 | margin-left: -45px; 252 | } 253 | 254 | .shop-banner h3 { 255 | font-size: 34px; 256 | } 257 | 258 | .footer-box { 259 | margin-bottom: 50px; 260 | } 261 | 262 | .copyright p { 263 | text-align: center; 264 | } 265 | 266 | .social-icons { 267 | text-align: center; 268 | } 269 | 270 | .footer-area { 271 | padding: 80px 0; 272 | } 273 | 274 | .hero-text { 275 | text-align: center; 276 | } 277 | 278 | .responsive-menu-wrap { 279 | position: relative; 280 | } 281 | 282 | .breadcrumb-text h1 { 283 | font-size: 30px; 284 | } 285 | 286 | .feature-bg:after { 287 | display: none; 288 | } 289 | 290 | .text-block { 291 | margin-bottom: 50px; 292 | } 293 | 294 | .single-team-item { 295 | margin-bottom: 50px; 296 | } 297 | 298 | .team-bg { 299 | height: 450px; 300 | } 301 | 302 | .total-section { 303 | margin-top: 30px; 304 | } 305 | 306 | .order-details-wrap { 307 | margin-top: 50px; 308 | } 309 | 310 | .contact-form form p input[type=text], 311 | .contact-form form p input[type=tel], 312 | .contact-form form p input[type=email] { 313 | width: 100%; 314 | } 315 | .contact-form form p input[type=tel] { 316 | margin-bottom: 15px; 317 | } 318 | 319 | .contact-form form p input[type=email] { 320 | margin-left: 0; 321 | margin-top: 15px; 322 | } 323 | 324 | .find-location p { 325 | font-size: 20px; 326 | } 327 | 328 | .comment-template form p input[type=email] { 329 | margin-left: 0; 330 | margin-top: 15px; 331 | } 332 | 333 | .comment-template form p input[type=text], 334 | .comment-template form p input[type=email] { 335 | width: 100%; 336 | } 337 | 338 | .sidebar-section { 339 | margin-left: 0; 340 | margin-top: 50px; 341 | } 342 | 343 | .single-product-content { 344 | margin-left: 0; 345 | margin-top: 15px; 346 | } 347 | 348 | .single-product-content h3 { 349 | font-size: 20px; 350 | line-height: 1.5; 351 | } 352 | 353 | .product-image { 354 | padding: 60px; 355 | padding-bottom: 0; 356 | } 357 | 358 | .header-icons { 359 | text-align: right; 360 | margin-top: 15px; 361 | } 362 | 363 | .feature-bg { 364 | margin: 100px 0; 365 | } 366 | 367 | .margin-top-150p { 368 | margin-top: 650px; 369 | } 370 | 371 | .display-hidden { 372 | display: none; 373 | } 374 | 375 | .hero-area div.hero-form { 376 | right: 0; 377 | } 378 | 379 | .hero-btns a.boxed-btn { 380 | display: block; 381 | margin: 0 auto; 382 | } 383 | 384 | .hero-btns { 385 | text-align: center; 386 | } 387 | 388 | .hero-btns a.bordered-btn { 389 | margin-left: 0; 390 | margin-top: 15px; 391 | display: block; 392 | } 393 | .hero-area div.hero-form { 394 | width: auto; 395 | } 396 | .section-title p { 397 | max-width: 285px; 398 | } 399 | 400 | p.testimonial-body { 401 | max-width: 285px; 402 | } 403 | .hero-area div.hero-form { 404 | top: 0; 405 | } 406 | .single-media-wrap h4 { 407 | font-size: 15px; 408 | } 409 | 410 | .sticky-wrapper.is-sticky .top-header-area { 411 | position: absolute!important; 412 | background-color: transparent; 413 | padding: 25px 0; 414 | } 415 | .featured-box { 416 | padding: 0 45px; 417 | margin-bottom: 10px; 418 | } 419 | 420 | .featured-section { 421 | padding: 100px 0; 422 | } 423 | .search-bar-tablecell input { 424 | font-size: 20px; 425 | } 426 | .header-icons { 427 | margin-top: 0; 428 | } 429 | .site-logo { 430 | position: absolute; 431 | z-index: 99; 432 | } 433 | 434 | .mean-container .mean-bar { 435 | z-index: 2; 436 | } 437 | .section-title { 438 | margin-bottom: 50px; 439 | } 440 | .service-text h3 { 441 | font-size: 18px; 442 | } 443 | .featured-box h2 { 444 | font-size: 23px; 445 | } 446 | 447 | .featured-box h3 { 448 | font-size: 18px; 449 | } 450 | 451 | .cta-text h3 { 452 | line-height: 1.6; 453 | } 454 | 455 | .news-text-box h3 { 456 | font-size: 20px; 457 | line-height: 1.5; 458 | } 459 | 460 | .copyright p { 461 | padding-bottom: 0; 462 | } 463 | .single-service-box { 464 | padding: 30px; 465 | } 466 | 467 | .service-icon-table { 468 | height: 80px; 469 | } 470 | 471 | .service-icon-tablecell i { 472 | font-size: 30px; 473 | } 474 | 475 | .main-menu { 476 | display: none; 477 | } 478 | .error-text h1 { 479 | font-size: 25px; 480 | } 481 | h2.widget-title { 482 | font-size: 20px; 483 | } 484 | .cart-table-wrap { 485 | width: 100%; 486 | overflow-x: scroll; 487 | } 488 | table.cart-table { 489 | width: 690px; 490 | } 491 | .cart-buttons a:first-child { 492 | margin-bottom: 15px; 493 | } 494 | .form-title h2 { 495 | font-size: 20px; 496 | } 497 | 498 | .contact-form-box h4 i { 499 | left: -20%; 500 | } 501 | .featured-text p { 502 | line-height: 1.8; 503 | } 504 | .single-artcile-bg { 505 | height: 300px; 506 | } 507 | 508 | .single-article-text h2 { 509 | font-size: 20px; 510 | } 511 | 512 | .comments-list-wrap h3, .comment-template h4 { 513 | font-size: 20px; 514 | } 515 | 516 | .comment-user-avater img { 517 | max-width: 45px; 518 | } 519 | 520 | .comment-text-body { 521 | padding-left: 60px; 522 | } 523 | 524 | .comment-text-body h4 a { 525 | display: block; 526 | border: none; 527 | margin-left: 0; 528 | margin-top: 10px; 529 | } 530 | 531 | .comment-text-body h4 { 532 | font-size: 18px; 533 | } 534 | 535 | .comment-text-body p { 536 | line-height: 1.8; 537 | } 538 | 539 | .single-comment-body.child { 540 | margin-left: 0; 541 | } 542 | .single-product-content h3 { 543 | font-size: 20px; 544 | line-height: 1.5; 545 | } 546 | a.mobile-hide.search-bar-icon { 547 | display: none!important; 548 | } 549 | .mobile-show { 550 | display: block!important; 551 | } 552 | a.mobile-show.search-bar-icon { 553 | position: absolute; 554 | right: 60px; 555 | top: 22px; 556 | z-index: 999; 557 | color: #fff; 558 | } 559 | } 560 | /* Wide Mobile Layout: 480px. */ 561 | @media only screen and (min-width: 480px) and (max-width: 767px) { 562 | .hero-area div.hero-form { 563 | margin: 0 auto; 564 | right: auto; 565 | width: 380px; 566 | left: 50%; 567 | margin-left: -190px; 568 | } 569 | 570 | .hero-btns { 571 | text-align: center; 572 | } 573 | 574 | .hero-btns a.bordered-btn { 575 | margin-left: 0; 576 | margin-top: 15px; 577 | display: block; 578 | } 579 | } -------------------------------------------------------------------------------- /assets/css/scss/base/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Font family 2 | 3 | @mixin font-fam-sans { 4 | font-family: $opensans-font; 5 | font-weight: 400; 6 | } 7 | @mixin font-fam-sans-l { 8 | font-family: $opensans-font; 9 | font-weight: 300; 10 | } 11 | @mixin font-fam-sans-b { 12 | font-family: $opensans-font; 13 | font-weight: 700; 14 | } 15 | 16 | @mixin font-fam-pop { 17 | font-family: $poppins-font; 18 | font-weight: 400; 19 | } 20 | @mixin font-fam-pop-b { 21 | font-family: $poppins-font; 22 | font-weight: 700; 23 | } 24 | 25 | // Font sizes 26 | 27 | @mixin font-size-base { 28 | font-size: 1rem; 29 | letter-spacing: 0.1px; 30 | line-height: 1.8; 31 | } 32 | 33 | // Anchor 34 | @mixin anchor{ 35 | @include transition(all, 0.2s, ease-in-out); 36 | 37 | &:hover { 38 | color: $primary-color; 39 | text-decoration: none; 40 | } 41 | } 42 | 43 | // Hover State 44 | @mixin boxed-btn-hvr { 45 | background-color: #051922; 46 | color: #F28123; 47 | color: $white-color; 48 | background-color: darken($primary-color, $darken); 49 | } 50 | @mixin bordered-btn-hvr { 51 | color: $white-color; 52 | background-color: darken($primary-color, $darken); 53 | } 54 | 55 | // Rounded corners 56 | 57 | @mixin rounded($radius: 5rem) { 58 | border-radius: $radius; 59 | } 60 | 61 | // Shadows 62 | 63 | @mixin shadow($x: 5px, $y: 10px, $blur: 10px, $color: rgba(0, 0, 0, 0.1)) { 64 | box-shadow: $x $y $blur $color; 65 | } 66 | 67 | @mixin shadow-none { 68 | box-shadow: none; 69 | } 70 | 71 | // transition 72 | 73 | @mixin transition($property: all, $duration: .3s, $ease: ease-in-out) { 74 | transition: $property $duration $ease; 75 | } 76 | 77 | // Media queries {based on bootstrap 4} 78 | 79 | $breakpoints: ( 80 | "mobile" : 575.98px, 81 | "tablet" : 767.98px, 82 | "desktop" : 991.98px, 83 | "desktop-l" : 1199.98px, 84 | ); 85 | 86 | @mixin mq-up($width, $type: min) { 87 | @if map_has_key($breakpoints, $width) { 88 | $width: map_get($breakpoints, $width); 89 | @media only screen and (#{$type}-width: $width) { 90 | @content; 91 | } 92 | } 93 | } 94 | 95 | @mixin mq-down($width, $type: max) { 96 | @if map_has_key($breakpoints, $width) { 97 | $width: map_get($breakpoints, $width); 98 | @if $type == max { 99 | $width: $width - 0.02px; 100 | } 101 | @media only screen and (#{$type}-width: $width) { 102 | @content; 103 | } 104 | } 105 | } 106 | -------------------------------------------------------------------------------- /assets/css/scss/base/_typography.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Base - Genral & Typography 4 | 5 | ----------------------------------------------------------------------------- */ 6 | 7 | html { 8 | font-size: 14px; 9 | font-weight: 400; 10 | line-height: 28px; 11 | height: 100%; 12 | } 13 | 14 | body { 15 | @include font-fam-sans; 16 | @include font-size-base; 17 | color: $text-color; 18 | overflow-x: hidden; 19 | img { 20 | max-width: 100%; 21 | } 22 | } 23 | 24 | a { 25 | cursor: pointer; 26 | text-decoration: none; 27 | @include anchor; 28 | } 29 | 30 | 31 | h1, .h1, 32 | h2, .h2, 33 | h3, .h3, 34 | h4, .h4, 35 | h5, .h5, 36 | h6, .h6 { 37 | @include font-fam-pop-b; 38 | margin: 0 0 $space 0; 39 | color: $text-color; 40 | 41 | &:last-child { 42 | margin: 0; 43 | } 44 | } 45 | 46 | h1, .h1 { 47 | font-size: 4rem; 48 | font-weight: 700; 49 | line-height: 4rem; 50 | 51 | @include mq-down("tablet") { 52 | font-size: 3rem; 53 | line-height: 3.25rem; 54 | } 55 | @include mq-down("mobile") { 56 | font-size: 2.5rem; 57 | line-height: 2.75rem; 58 | } 59 | } 60 | 61 | h2, .h2 { 62 | font-size: 3rem; 63 | font-weight: 700; 64 | line-height: 3.25rem; 65 | 66 | @include mq-down("tablet") { 67 | font-size: 2.5rem; 68 | line-height: 2.75rem; 69 | } 70 | @include mq-down("mobile") { 71 | font-size: 2rem; 72 | line-height: 2.25rem; 73 | } 74 | } 75 | 76 | h3, .h3 { 77 | font-size: 2rem; 78 | font-weight: 700; 79 | line-height: 2.25rem; 80 | 81 | @include mq-down("mobile") { 82 | font-size: 1.75rem; 83 | line-height: 2rem; 84 | } 85 | } 86 | 87 | h4, .h4 { 88 | font-size: 1.5rem; 89 | font-weight: 700; 90 | line-height: 1.75rem; 91 | 92 | @include mq-down("mobile") { 93 | font-size: 1.25rem; 94 | line-height: 1.5rem; 95 | } 96 | } 97 | 98 | h5, .h5 { 99 | font-size: 1.25rem; 100 | font-weight: 700; 101 | line-height: 1.5rem; 102 | } 103 | 104 | h6, .h6 { 105 | font-size: 1rem; 106 | font-weight: 700; 107 | line-height: 1.5rem; 108 | } 109 | 110 | p { 111 | @include font-fam-sans; 112 | @include font-size-base; 113 | color: $text-color; 114 | margin: 0 0 $space 0; 115 | 116 | &:last-child { 117 | margin: 0; 118 | } 119 | } 120 | -------------------------------------------------------------------------------- /assets/css/scss/base/_variables.scss: -------------------------------------------------------------------------------- 1 | // Colors 2 | 3 | $primary-color: #F28123; 4 | $text-color: #051922; 5 | $text-color-light: #999999; 6 | $white-color: #fff; 7 | $black-color: #000; 8 | 9 | // Fonts 10 | 11 | $opensans-font: 'Open Sans', sans-serif; 12 | $poppins-font: 'Poppins', sans-serif; 13 | 14 | // Maximum widths 15 | 16 | $max-width-s: 576px; 17 | $max-width-m: 992px; 18 | $max-width-l: 1200px; 19 | 20 | // Spacing betwenn elements 21 | 22 | $space: 1.25rem; -------------------------------------------------------------------------------- /assets/css/scss/common/_common.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # All Common Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | //Preload 7 | .loader { 8 | bottom: 0; 9 | height: 100%; 10 | left: 0; 11 | position: fixed; 12 | right: 0; 13 | top: 0; 14 | width: 100%; 15 | z-index: 1111; 16 | background: $white-color; 17 | overflow-x: hidden; 18 | } 19 | 20 | .loader-inner { 21 | position: absolute; 22 | left: 50%; 23 | top: 50%; 24 | -webkit-transform: translate(-50%, -50%); 25 | -ms-transform: translate(-50%, -50%); 26 | -o-transform: translate(-50%, -50%); 27 | transform: translate(-50%, -50%); 28 | height: 50px; 29 | width: 50px; 30 | } 31 | 32 | .circle { 33 | width: 8vmax; 34 | height: 8vmax; 35 | border-right: 4px solid #000; 36 | border-radius: 50%; 37 | -webkit-animation: spinRight 800ms linear infinite; 38 | animation: spinRight 800ms linear infinite; 39 | 40 | &:before { 41 | content: ''; 42 | width: 6vmax; 43 | height: 6vmax; 44 | display: block; 45 | position: absolute; 46 | top: calc(50% - 3vmax); 47 | left: calc(50% - 3vmax); 48 | border-left: 3px solid $primary-color; 49 | border-radius: 100%; 50 | -webkit-animation: spinLeft 800ms linear infinite; 51 | animation: spinLeft 800ms linear infinite; 52 | } 53 | 54 | &:after { 55 | content: ''; 56 | width: 6vmax; 57 | height: 6vmax; 58 | display: block; 59 | position: absolute; 60 | top: calc(50% - 3vmax); 61 | left: calc(50% - 3vmax); 62 | border-left: 3px solid $primary-color; 63 | border-radius: 100%; 64 | -webkit-animation: spinLeft 800ms linear infinite; 65 | animation: spinLeft 800ms linear infinite; 66 | width: 4vmax; 67 | height: 4vmax; 68 | top: calc(50% - 2vmax); 69 | left: calc(50% - 2vmax); 70 | border: 0; 71 | border-right: 2px solid #000; 72 | -webkit-animation: none; 73 | animation: none; 74 | } 75 | } 76 | 77 | @-webkit-keyframes spinLeft { 78 | from { 79 | -webkit-transform: rotate(0deg); 80 | transform: rotate(0deg); 81 | } 82 | 83 | to { 84 | -webkit-transform: rotate(720deg); 85 | transform: rotate(720deg); 86 | } 87 | } 88 | 89 | @keyframes spinLeft { 90 | from { 91 | -webkit-transform: rotate(0deg); 92 | transform: rotate(0deg); 93 | } 94 | 95 | to { 96 | -webkit-transform: rotate(720deg); 97 | transform: rotate(720deg); 98 | } 99 | } 100 | 101 | @-webkit-keyframes spinRight { 102 | from { 103 | -webkit-transform: rotate(360deg); 104 | transform: rotate(360deg); 105 | } 106 | 107 | to { 108 | -webkit-transform: rotate(0deg); 109 | transform: rotate(0deg); 110 | } 111 | } 112 | 113 | @keyframes spinRight { 114 | from { 115 | -webkit-transform: rotate(360deg); 116 | transform: rotate(360deg); 117 | } 118 | 119 | to { 120 | -webkit-transform: rotate(0deg); 121 | transform: rotate(0deg); 122 | } 123 | } 124 | 125 | //Extra Spacing 126 | .mt-80 { 127 | margin-top: 80px; 128 | @include mq-down("tablet") { 129 | margin-top: 50px; 130 | } 131 | } 132 | .mb-80 { 133 | margin-bottom: 80px; 134 | @include mq-down("tablet") { 135 | margin-bottom: 50px; 136 | } 137 | } 138 | .mt-100 { 139 | margin-top: 100px; 140 | @include mq-down("tablet") { 141 | margin-top: 80px; 142 | } 143 | } 144 | .mb-100 { 145 | margin-bottom: 100px; 146 | @include mq-down("tablet") { 147 | margin-bottom: 80px; 148 | } 149 | } 150 | .mt-150 { 151 | margin-top: 150px; 152 | @include mq-down("tablet") { 153 | margin-top: 100px; 154 | } 155 | } 156 | .mb-150 { 157 | margin-bottom: 150px; 158 | @include mq-down("tablet") { 159 | margin-bottom: 100px; 160 | } 161 | } 162 | 163 | .pt-80 { 164 | padding-top: 80px; 165 | @include mq-down("tablet") { 166 | padding-top: 50px; 167 | } 168 | } 169 | .pb-80 { 170 | padding-bottom: 80px; 171 | @include mq-down("tablet") { 172 | padding-bottom: 50px; 173 | } 174 | } 175 | .pt-100 { 176 | padding-top: 100px; 177 | @include mq-down("tablet") { 178 | padding-top: 80px; 179 | } 180 | } 181 | .pb-100 { 182 | padding-bottom: 100px; 183 | @include mq-down("tablet") { 184 | padding-bottom: 80px; 185 | } 186 | } 187 | .pt-150 { 188 | padding-top: 150px; 189 | @include mq-down("tablet") { 190 | padding-top: 100px; 191 | } 192 | } 193 | .pb-150 { 194 | padding-bottom: 150px; 195 | @include mq-down("tablet") { 196 | padding-bottom: 100px; 197 | } 198 | } 199 | 200 | //Common Colors 201 | .gray-bg { 202 | background-color: #f5f5f5; 203 | } 204 | .orange-text { 205 | color: $primary-color; 206 | } 207 | .blue-bg { 208 | background-color: #162133; 209 | } 210 | 211 | //Buttons 212 | a.boxed-btn{ 213 | font-family: 'Poppins', sans-serif; 214 | display: inline-block; 215 | background-color: $primary-color; 216 | color: $white-color; 217 | padding: 10px 20px; 218 | } 219 | 220 | a.bordered-btn { 221 | font-family: 'Poppins', sans-serif; 222 | display: inline-block; 223 | color: $white-color; 224 | border: 2px solid $primary-color; 225 | padding: 7px 20px; 226 | } 227 | a.read-more-btn { 228 | display: inline-block; 229 | margin-top: 15px; 230 | color: $text-color; 231 | transition: 0.3s; 232 | font-weight: 700; 233 | } 234 | a.read-more-btn:hover { 235 | color: $primary-color; 236 | } 237 | a.boxed-btn, a.bordered-btn, a.cart-btn{ 238 | border-radius: 50px; 239 | } 240 | 241 | // Section Title 242 | .section-title h3 { 243 | font-size: 40px; 244 | position: relative; 245 | padding-bottom: 15px; 246 | } 247 | .section-title h3:after { 248 | position: absolute; 249 | content: ''; 250 | left: 0px; 251 | right: 0px; 252 | bottom: 0px; 253 | width: 50px; 254 | height: 2px; 255 | background-color: $primary-color; 256 | margin: 0 auto; 257 | } 258 | 259 | .section-title p { 260 | font-size: 15px; 261 | width: 530px; 262 | margin: 0 auto; 263 | color: #555; 264 | margin-top: 10px; 265 | line-height: 1.8; 266 | } 267 | 268 | .section-title { 269 | margin-bottom: 80px; 270 | } 271 | 272 | //Breadcrumb 273 | .breadcrumb-bg { 274 | background-image: url(../img/breadcrumb-bg.jpg); 275 | } 276 | 277 | .breadcrumb-text { 278 | p { 279 | color: $primary-color; 280 | font-weight: 700; 281 | text-transform: uppercase; 282 | letter-spacing: 7px; 283 | } 284 | 285 | h1 { 286 | font-size: 50px; 287 | font-weight: 900; 288 | color: $white-color; 289 | margin: 0; 290 | margin-top: 20px; 291 | } 292 | } 293 | 294 | .breadcrumb-section { 295 | padding: 150px 0; 296 | background-size: cover; 297 | background-position: center center; 298 | position: relative; 299 | z-index: 1; 300 | background-attachment: fixed; 301 | 302 | &:after { 303 | position: absolute; 304 | left: 0; 305 | top: 0; 306 | width: 100%; 307 | height: 100%; 308 | content: ""; 309 | background-color: #07212e; 310 | z-index: -1; 311 | opacity: 0.8; 312 | } 313 | 314 | padding-top: 200px; 315 | } -------------------------------------------------------------------------------- /assets/css/scss/common/_footer.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Footer Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .single-logo-item img { 7 | max-width: 180px; 8 | margin: 0 auto; 9 | } 10 | 11 | .logo-carousel-section { 12 | background-color: #f5f5f5; 13 | padding: 50px 0; 14 | } 15 | 16 | .footer-area { 17 | background-color: $text-color; 18 | color: #fff; 19 | padding: 150px 0; 20 | } 21 | 22 | h2.widget-title { 23 | font-size: 24px; 24 | font-weight: 500; 25 | position: relative; 26 | padding-bottom: 20px; 27 | color: $white-color; 28 | 29 | &:after { 30 | position: absolute; 31 | left: 0; 32 | bottom: 0; 33 | width: 20px; 34 | height: 2px; 35 | background-color: $primary-color; 36 | content: ""; 37 | } 38 | } 39 | 40 | .footer-box { 41 | p { 42 | color: $white-color; 43 | opacity: 0.7; 44 | line-height: 1.8; 45 | } 46 | 47 | ul { 48 | margin: 0; 49 | padding: 0; 50 | list-style: none; 51 | 52 | li { 53 | opacity: 0.7; 54 | margin-bottom: 10px; 55 | line-height: 1.8; 56 | 57 | &:last-child { 58 | margin-bottom: 0; 59 | } 60 | } 61 | } 62 | 63 | &.subscribe form { 64 | input[type=email] { 65 | border: none; 66 | background-color: #012738; 67 | width: 78%; 68 | padding: 15px; 69 | border-top-left-radius: 5px; 70 | border-bottom-left-radius: 5px; 71 | color: #fff; 72 | } 73 | 74 | button { 75 | width: 20%; 76 | border: none; 77 | background-color: #012738; 78 | color: $primary-color; 79 | padding: 14px 0; 80 | border-top-right-radius: 3px; 81 | border-bottom-right-radius: 3px; 82 | cursor: pointer; 83 | 84 | &:focus { 85 | outline: none; 86 | } 87 | } 88 | } 89 | } 90 | 91 | .copyright { 92 | background-color: $text-color; 93 | border-top: 1px solid #232a35; 94 | 95 | p{ 96 | margin: 0; 97 | color: #fff; 98 | opacity: 0.7; 99 | padding: 16px 0; 100 | font-size: 15px; 101 | } 102 | a { 103 | color: $primary-color; 104 | font-weight: 700; 105 | &:hover { 106 | color: lighten($primary-color, 10%); 107 | } 108 | } 109 | } 110 | 111 | .social-icons ul { 112 | margin: 0; 113 | padding: 0; 114 | list-style: none; 115 | 116 | li { 117 | display: inline-block; 118 | 119 | a { 120 | font-size: 16px; 121 | color: #fff; 122 | opacity: 0.7; 123 | padding: 16px 10px; 124 | display: block; 125 | } 126 | } 127 | } 128 | 129 | .footer-box { 130 | ul li a { 131 | color: #fff; 132 | } 133 | 134 | &.pages ul li { 135 | position: relative; 136 | padding-left: 20px; 137 | 138 | &:before { 139 | position: absolute; 140 | left: 0; 141 | top: 0; 142 | content: "\f105"; 143 | font-family: "Font Awesome 5 Free"; 144 | font-weight: 900; 145 | color: $primary-color; 146 | } 147 | } 148 | } -------------------------------------------------------------------------------- /assets/css/scss/common/_header.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Header Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | ul.navbar-nav li.nav-item { 7 | a.nav-link, &.active a.nav-link { 8 | color: $text-color; 9 | } 10 | } 11 | 12 | .top-header-area { 13 | position: absolute; 14 | z-index: 999; 15 | width: 100%; 16 | padding: 25px 0; 17 | 18 | &.white ul.navbar-nav li.nav-item { 19 | a.nav-link, &.active a.nav-link { 20 | color: $white-color; 21 | } 22 | } 23 | } 24 | 25 | ul.navbar-nav li.nav-item { 26 | a.nav-link, &.active a.nav-link { 27 | color: $white-color; 28 | font-weight: 700; 29 | margin-right: 14px; 30 | } 31 | } 32 | 33 | a.navbar-brand img { 34 | max-width: 150px; 35 | } 36 | 37 | nav.main-menu { 38 | ul { 39 | margin: 0; 40 | padding: 0; 41 | list-style: none; 42 | 43 | li { 44 | display: inline-block; 45 | 46 | a { 47 | color: $white-color; 48 | font-weight: 700; 49 | display: block; 50 | padding: 15px; 51 | } 52 | } 53 | 54 | > li { 55 | position: relative; 56 | } 57 | 58 | ul.sub-menu { 59 | position: absolute; 60 | background-color: $white-color; 61 | width: 220px; 62 | padding: 15px 15px; 63 | margin: 0; 64 | left: 0; 65 | top: 50px; 66 | border-radius: 3px; 67 | transition: 0.3s; 68 | opacity: 0; 69 | visibility: hidden; 70 | box-shadow: 0 0 20px #555555; 71 | 72 | li { 73 | a { 74 | color: #555; 75 | font-weight: 600; 76 | padding: 7px 10px; 77 | font-size: 13px; 78 | } 79 | 80 | display: block; 81 | text-align: left; 82 | } 83 | } 84 | 85 | > li:hover ul { 86 | opacity: 1; 87 | visibility: visible; 88 | } 89 | 90 | li:last-child a { 91 | display: inline-block; 92 | } 93 | } 94 | 95 | > ul li:last-child { 96 | float: right; 97 | } 98 | } 99 | 100 | .site-logo { 101 | float: left; 102 | max-width: 150px; 103 | } 104 | 105 | ul.sub-menu li:last-child { 106 | float: none !important; 107 | } 108 | 109 | .mean-container .mean-bar { 110 | background-color: transparent; 111 | position: absolute; 112 | right: 0; 113 | top: 15px; 114 | } 115 | 116 | .mean-bar a.meanmenu-reveal { 117 | background-color: $primary-color; 118 | } 119 | 120 | .main-menu-wrap { 121 | position: relative; 122 | } 123 | 124 | .mean-container { 125 | a.meanmenu-reveal { 126 | span { 127 | background-color: $text-color; 128 | } 129 | 130 | color: $text-color; 131 | } 132 | 133 | .mean-nav ul li { 134 | a { 135 | padding: 0.5em 5%; 136 | } 137 | 138 | li a { 139 | padding: 0.5em 10%; 140 | } 141 | 142 | a.mean-expand { 143 | font-size: 16px; 144 | height: 10px; 145 | line-height: 10px; 146 | width: 15px; 147 | } 148 | } 149 | 150 | a.meanmenu-reveal { 151 | padding: 8px 8px 6px; 152 | } 153 | } 154 | 155 | nav.mean-nav > ul > li:first-child > a { 156 | border-top: none; 157 | } 158 | 159 | .header-icons a { 160 | color: $white-color; 161 | display: inline-block; 162 | padding: 10px; 163 | } 164 | 165 | .site-logo { 166 | padding: 6px 0; 167 | } 168 | 169 | .top-header-area.sepherate-header { 170 | ul li > a, .header-icons a { 171 | color: $text-color; 172 | } 173 | } 174 | 175 | nav.main-menu { 176 | ul { 177 | ul.sub-menu li { 178 | a { 179 | color: #555; 180 | padding: 8px; 181 | font-size: 13px; 182 | font-weight: 600; 183 | } 184 | 185 | display: block; 186 | } 187 | 188 | li.current-list-item > a { 189 | color: $primary-color; 190 | } 191 | } 192 | 193 | li { 194 | &:hover > a { 195 | color: $primary-color; 196 | } 197 | 198 | a { 199 | transition: 0.3s; 200 | } 201 | } 202 | } 203 | 204 | .top-header-area .header-icons a { 205 | &:hover { 206 | color: $primary-color; 207 | } 208 | 209 | transition: 0.3s; 210 | } 211 | 212 | .sticky-wrapper { 213 | position: absolute; 214 | left: 0; 215 | top: 0; 216 | width: 100%; 217 | z-index: 999 !important; 218 | 219 | &.is-sticky .top-header-area { 220 | background-color: $text-color; 221 | padding: 15px 0; 222 | } 223 | } 224 | 225 | .top-header-area { 226 | transition: 0.3s; 227 | } 228 | 229 | ul.navbar-nav { 230 | margin: 0 auto; 231 | } 232 | 233 | //Searchbar 234 | .search-area { 235 | position: fixed; 236 | left: 0; 237 | top: 0; 238 | z-index: 5555; 239 | background-color: #051922; 240 | width: 100%; 241 | height: 100%; 242 | text-align: center; 243 | } 244 | 245 | span.close-btn { 246 | position: absolute; 247 | right: 0%; 248 | color: $white-color; 249 | top: 5%; 250 | cursor: pointer; 251 | } 252 | 253 | .search-area { 254 | height: 100%; 255 | 256 | div { 257 | height: 100%; 258 | } 259 | } 260 | 261 | .search-bar { 262 | height: 100%; 263 | display: table; 264 | width: 100%; 265 | } 266 | 267 | a.mobile-show { 268 | display: none; 269 | } 270 | 271 | .search-area .search-bar div.search-bar-tablecell { 272 | display: table-cell; 273 | vertical-align: middle; 274 | height: auto; 275 | } 276 | 277 | .search-bar-tablecell { 278 | input { 279 | border: none; 280 | padding: 15px; 281 | width: 60%; 282 | background-color: transparent; 283 | border-bottom: 1px solid $primary-color; 284 | display: block; 285 | margin: 0 auto; 286 | text-align: center; 287 | font-size: 50px; 288 | font-weight: 700; 289 | margin-bottom: 40px; 290 | color: $white-color; 291 | } 292 | 293 | button[type=submit] { 294 | border: none; 295 | background-color: $primary-color; 296 | padding: 15px 30px; 297 | cursor: pointer; 298 | display: inline-block; 299 | border-radius: 50px; 300 | font-weight: 700; 301 | } 302 | 303 | input::placeholder { 304 | color: $white-color; 305 | } 306 | 307 | button[type=submit] i { 308 | margin-left: 5px; 309 | } 310 | } 311 | 312 | .search-area { 313 | visibility: hidden; 314 | opacity: 0; 315 | transition: 0.3s; 316 | 317 | &.search-active { 318 | visibility: visible; 319 | opacity: 1; 320 | z-index: 999; 321 | } 322 | } 323 | 324 | .search-bar-tablecell h3 { 325 | color: $white-color; 326 | margin-bottom: 30px; 327 | font-weight: 600; 328 | text-transform: uppercase; 329 | letter-spacing: 7px; 330 | } -------------------------------------------------------------------------------- /assets/css/scss/common/_hover.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Hover Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | a { 7 | &.navbar-brand { 8 | transition: 0.3s; 9 | 10 | &:hover { 11 | opacity: 0.7; 12 | } 13 | } 14 | 15 | &.boxed-btn { 16 | transition: 0.3s; 17 | 18 | &:hover { 19 | background-color: $text-color; 20 | color: $primary-color; 21 | } 22 | } 23 | 24 | &.bordered-btn { 25 | transition: 0.3s; 26 | 27 | &:hover { 28 | background-color: $primary-color; 29 | color: $white-color; 30 | } 31 | } 32 | } 33 | 34 | ul.sub-menu { 35 | a { 36 | transition: 0.3s; 37 | } 38 | 39 | li:hover a { 40 | color: $primary-color; 41 | } 42 | } 43 | 44 | .single-tof-box { 45 | transition: 0.3s; 46 | 47 | &:hover { 48 | box-shadow: 0 0 80px #353535; 49 | } 50 | } 51 | 52 | a.video-play-btn { 53 | transition: 0.3s; 54 | 55 | &:hover { 56 | background-color: #333; 57 | color: $primary-color; 58 | } 59 | } 60 | 61 | .latest-news-bg { 62 | transition: 0.3s; 63 | } 64 | 65 | .single-latest-news:hover .latest-news-bg { 66 | opacity: 0.8; 67 | } 68 | 69 | a.tof-btn { 70 | i { 71 | transition: 0.3s; 72 | } 73 | 74 | &:hover { 75 | i { 76 | margin-left: 10px; 77 | } 78 | 79 | color: $primary-color; 80 | } 81 | 82 | transition: 0.3s; 83 | } 84 | 85 | .single-latest-news { 86 | &:hover { 87 | box-shadow: 0 0 0; 88 | box-shadow: none; 89 | } 90 | 91 | box-shadow: 0 0 20px #dddddd; 92 | transition: 0.3s; 93 | } 94 | 95 | .single-logo-item { 96 | transition: 0.3s; 97 | 98 | &:hover { 99 | opacity: 0.7; 100 | } 101 | } 102 | 103 | .footer-box { 104 | &.pages ul li { 105 | a { 106 | transition: 0.3s; 107 | } 108 | 109 | &:hover a { 110 | color: $primary-color; 111 | } 112 | } 113 | 114 | &.subscribe form button { 115 | transition: 0.3s; 116 | 117 | &:hover { 118 | background-color: $primary-color; 119 | color: $text-color; 120 | } 121 | } 122 | } 123 | 124 | .social-icons ul li { 125 | &:hover a { 126 | color: $primary-color; 127 | } 128 | 129 | a { 130 | transition: 0.3s; 131 | } 132 | } 133 | 134 | ul.social-link-team li a { 135 | transition: 0.3s; 136 | 137 | &:hover { 138 | background-color: $text-color; 139 | color: $primary-color; 140 | } 141 | } 142 | 143 | .counter-box { 144 | transition: 0.3s; 145 | 146 | &:hover { 147 | box-shadow: 0 0 80px #6f6f6f; 148 | } 149 | } 150 | 151 | input[type="submit"] { 152 | transition: 0.3s; 153 | border-radius: 50px !important; 154 | 155 | &:hover { 156 | background-color: $text-color; 157 | color: $primary-color; 158 | } 159 | } 160 | 161 | div.owl-controls, .owl-controls div { 162 | transition: 0.3s; 163 | } 164 | 165 | div.owl-controls div.owl-nav div:hover { 166 | opacity: 0.7; 167 | } 168 | 169 | .pagination-wrap ul li { 170 | a { 171 | transition: 0.3s; 172 | } 173 | 174 | &:hover a { 175 | background-color: $primary-color; 176 | } 177 | } 178 | 179 | .icons a { 180 | i { 181 | transition: 0.3s; 182 | } 183 | 184 | &:hover i { 185 | color: $primary-color; 186 | } 187 | } 188 | 189 | .tof-text a.tof-btn { 190 | margin-top: 15px; 191 | display: inline-block; 192 | } 193 | 194 | .single-pricing-table { 195 | transition: 0.3s; 196 | 197 | &:hover { 198 | box-shadow: 0 0 20px #ddd; 199 | } 200 | } 201 | 202 | .product-image img { 203 | transition: 0.3s; 204 | 205 | &:hover { 206 | box-shadow: none; 207 | } 208 | } 209 | 210 | a.cart-btn { 211 | transition: 0.3s; 212 | 213 | &:hover { 214 | background-color: $text-color; 215 | color: $primary-color; 216 | } 217 | } 218 | 219 | .recent-posts ul li { 220 | transition: 0.3s; 221 | 222 | &:hover { 223 | opacity: 0.7; 224 | } 225 | } 226 | 227 | ul.sub-menu li { 228 | a { 229 | transition: 0.3s; 230 | } 231 | 232 | &:hover a { 233 | color: $primary-color !important; 234 | } 235 | } 236 | 237 | .sidebar-section ul li a { 238 | transition: 0.3s; 239 | 240 | &:hover { 241 | opacity: 0.7; 242 | } 243 | } 244 | 245 | .comment-text-body h4 a { 246 | transition: 0.3s; 247 | 248 | &:hover { 249 | color: $primary-color; 250 | } 251 | } 252 | 253 | ul.product-share li { 254 | a { 255 | transition: 0.3s; 256 | } 257 | 258 | &:hover a { 259 | color: $primary-color; 260 | } 261 | } 262 | 263 | .service-menu ul li a { 264 | &.active { 265 | font-weight: 600; 266 | color: #ffe200; 267 | } 268 | 269 | transition: 0.3s; 270 | 271 | &:hover { 272 | color: #ffe200; 273 | } 274 | } 275 | 276 | .single-product-item { 277 | &:hover { 278 | box-shadow: none; 279 | } 280 | 281 | transition: 0.3s; 282 | } 283 | 284 | .search-bar-tablecell button[type=submit] { 285 | transition: 0.3s; 286 | 287 | &:hover { 288 | background-color: $white-color; 289 | color: #000; 290 | } 291 | } 292 | 293 | span.close-btn { 294 | transition: 0.3s; 295 | 296 | &:hover { 297 | color: $white-color; 298 | } 299 | } 300 | 301 | a.mobile-show.search-bar-icon { 302 | transition: 0.3s; 303 | 304 | &:hover { 305 | color: $primary-color; 306 | } 307 | } -------------------------------------------------------------------------------- /assets/css/scss/main.scss: -------------------------------------------------------------------------------- 1 | /* Template Name: Fruitkha - Responsive Bootstrap4 Shop Template Template URI: Description: Bootstrap template for fruits or any other kind of shop Author: Imran Hossain Author URI: https://imransdesign.com/ Version: 1.0 */ // Base @import "base/variables"; @import "base/mixins"; @import "base/typography"; // Common @import "common/common"; @import "common/header"; @import "common/footer"; @import "common/hover"; // Sections @import "sections/hero"; @import "sections/list"; @import "sections/news"; @import "sections/cart-banner"; @import "sections/testimonials"; @import "sections/about"; @import "sections/shop-banner"; // Pages @import "pages/about"; @import "pages/contact"; @import "pages/shop"; @import "pages/404"; -------------------------------------------------------------------------------- /assets/css/scss/pages/_404.css: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # 404 Page Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .error-text i { 7 | font-size: 90px; 8 | margin-bottom: 30px; } 9 | 10 | .error-text h1 { 11 | font-size: 40px; 12 | font-weight: 500; 13 | margin-bottom: 10px; } 14 | 15 | .error-text p { 16 | font-size: 15px; 17 | margin-bottom: 30px; } 18 | 19 | .full-height-section { 20 | height: 100%; 21 | display: table; 22 | width: 100%; } 23 | 24 | .full-height-tablecell { 25 | display: table-cell; 26 | vertical-align: middle; 27 | width: 100%; } 28 | -------------------------------------------------------------------------------- /assets/css/scss/pages/_404.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # 404 Page Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .error-text { 7 | i { 8 | font-size: 90px; 9 | margin-bottom: 30px; 10 | } 11 | 12 | h1 { 13 | font-size: 40px; 14 | font-weight: 500; 15 | margin-bottom: 10px; 16 | } 17 | 18 | p { 19 | font-size: 15px; 20 | margin-bottom: 30px; 21 | } 22 | } 23 | 24 | .full-height-section { 25 | height: 100%; 26 | display: table; 27 | width: 100%; 28 | } 29 | 30 | .full-height-tablecell { 31 | display: table-cell; 32 | vertical-align: middle; 33 | width: 100%; 34 | } -------------------------------------------------------------------------------- /assets/css/scss/pages/_about.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # About Page Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .feature-bg { 7 | position: relative; 8 | margin: 150px 0; 9 | &:after { 10 | background-image: url(../img/feature-bg.jpg); 11 | position: absolute; 12 | right: 0; 13 | top: 0; 14 | width: 40%; 15 | height: 100%; 16 | content: ""; 17 | background-size: cover; 18 | background-position: center; 19 | border-top-left-radius: 5px; 20 | box-shadow: 0 0 20px #cacaca; 21 | border-bottom-left-radius: 5px; 22 | } 23 | } 24 | 25 | .team-bg-1 { 26 | background-image: url(../img/team/team-1.jpg); 27 | } 28 | 29 | .team-bg-2 { 30 | background-image: url(../img/team/team-2.jpg); 31 | } 32 | 33 | .team-bg-3 { 34 | background-image: url(../img/team/team-3.jpg); 35 | } 36 | 37 | .team-bg-4 { 38 | background-image: url(../img/team/team-4.jpg); 39 | } 40 | 41 | .team-bg { 42 | height: 400px; 43 | background-size: cover; 44 | background-position: center; 45 | border-radius: 5px; 46 | background-color: #ddd; 47 | } 48 | 49 | .single-team-item { 50 | position: relative; 51 | 52 | h4 { 53 | font-size: 20px; 54 | font-weight: 600; 55 | text-align: center; 56 | margin-top: 15px; 57 | margin-bottom: 10px; 58 | 59 | span { 60 | font-size: 70%; 61 | display: block; 62 | margin-top: 10px; 63 | opacity: 0.7; 64 | } 65 | } 66 | } 67 | 68 | ul.social-link-team { 69 | position: absolute; 70 | bottom: 80px; 71 | left: 0; 72 | right: 0; 73 | margin: 0; 74 | padding: 0; 75 | list-style: none; 76 | text-align: center; 77 | 78 | li { 79 | display: inline-block; 80 | 81 | a { 82 | color: $white-color; 83 | background-color: $primary-color; 84 | width: 32px; 85 | height: 32px; 86 | line-height: 32px; 87 | text-align: center; 88 | border-radius: 50%; 89 | display: block; 90 | margin: 5px; 91 | } 92 | } 93 | } -------------------------------------------------------------------------------- /assets/css/scss/pages/_contact.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Contact Page Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .form-title { 7 | margin-bottom: 25px; 8 | 9 | h2 { 10 | font-size: 25px; 11 | } 12 | 13 | p { 14 | font-size: 15px; 15 | line-height: 1.8; 16 | } 17 | } 18 | 19 | .contact-form form p { 20 | input { 21 | &[type=text], &[type=tel], &[type=email] { 22 | width: 49%; 23 | padding: 15px; 24 | border: 1px solid #ddd; 25 | border-radius: 3px; 26 | } 27 | } 28 | 29 | textarea { 30 | border: 1px solid #ddd; 31 | padding: 15px; 32 | height: 200px; 33 | border-radius: 3px; 34 | width: 100%; 35 | resize: none; 36 | } 37 | } 38 | 39 | .contact-form-wrap { 40 | background-color: #FBFBFB; 41 | padding: 45px 30px; 42 | border-radius: 5px; 43 | } 44 | 45 | .contact-form-box { 46 | h4 { 47 | font-size: 20px; 48 | font-weight: 600; 49 | position: relative; 50 | margin-bottom: 10px; 51 | 52 | i { 53 | position: absolute; 54 | left: -13%; 55 | color: $primary-color; 56 | top: 2px; 57 | } 58 | } 59 | 60 | padding-left: 40px; 61 | margin-bottom: 30px; 62 | 63 | p { 64 | line-height: 1.8; 65 | opacity: 0.8; 66 | } 67 | } 68 | 69 | .contact-form-wrap .contact-form-box:last-child { 70 | margin: 0; 71 | } 72 | 73 | .find-location p { 74 | color: $white-color; 75 | font-size: 40px; 76 | margin: 0; 77 | font-weight: 600; 78 | padding: 95px 0; 79 | 80 | i { 81 | margin-right: 10px; 82 | color: $primary-color; 83 | } 84 | } 85 | 86 | //Mail Status 87 | #form_status { 88 | span { 89 | color:$white-color; 90 | font-size: 14px; 91 | font-weight: normal; 92 | background: #E74C3C; 93 | width: 100%; 94 | text-align: center; 95 | display: inline-block; 96 | padding: 10px 0px; 97 | border-radius: 3px; 98 | margin-bottom: 18px; 99 | 100 | &.loading { 101 | color: #333; 102 | background: #eee; 103 | border-radius: 3px; 104 | padding: 18px 0px; 105 | } 106 | 107 | &.notice { 108 | color: yellow; 109 | } 110 | } 111 | 112 | .success { 113 | color: #fff; 114 | text-align: center; 115 | background: #2ecc71; 116 | border-radius: 3px; 117 | padding: 30px 0px; 118 | 119 | i { 120 | color: #fff; 121 | font-size: 45px; 122 | margin-bottom: 14px; 123 | } 124 | 125 | h3 { 126 | color: #fff; 127 | margin-bottom: 10px; 128 | } 129 | } 130 | } -------------------------------------------------------------------------------- /assets/css/scss/pages/_shop.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Shop Page Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .product-filters { 7 | ul { 8 | margin: 0; 9 | padding: 0; 10 | list-style: none; 11 | text-align: center; 12 | 13 | li { 14 | display: inline-block; 15 | font-weight: 700; 16 | font-size: 18px; 17 | margin: 15px; 18 | border: 2px solid $text-color; 19 | color: #323232; 20 | cursor: pointer; 21 | padding: 8px 20px; 22 | border-radius: 25px; 23 | 24 | &.active { 25 | border: 2px solid $primary-color; 26 | background-color: $primary-color; 27 | color: #fff; 28 | } 29 | } 30 | } 31 | 32 | margin-bottom: 80px; 33 | } 34 | 35 | .single-product-item { 36 | margin-bottom: 30px; 37 | } 38 | 39 | .product-image { 40 | img { 41 | width: 90%; 42 | border-radius: 5px; 43 | margin-bottom: 20px; 44 | } 45 | 46 | padding: 30px; 47 | padding-bottom: 0; 48 | } 49 | 50 | .single-product-item h3 { 51 | font-size: 20px; 52 | font-weight: 600; 53 | margin-bottom: 10px; 54 | } 55 | 56 | p.product-price { 57 | span { 58 | display: block; 59 | opacity: 0.8; 60 | font-size: 15px; 61 | font-weight: 400; 62 | } 63 | 64 | font-family: 'Poppins', sans-serif; 65 | font-size: 30px; 66 | font-weight: 700; 67 | margin-bottom: 15px; 68 | } 69 | 70 | a.cart-btn { 71 | font-family: 'Poppins', sans-serif; 72 | display: inline-block; 73 | background-color: $primary-color; 74 | color: #fff; 75 | padding: 10px 20px; 76 | 77 | i { 78 | margin-right: 5px; 79 | } 80 | } 81 | 82 | .single-product-img img { 83 | border-radius: 5px; 84 | box-shadow: 0 0 20px #ddd; 85 | } 86 | 87 | .single-product-content h3 { 88 | font-size: 22px; 89 | font-weight: 600; 90 | } 91 | 92 | p.single-product-pricing span { 93 | font-size: 18px; 94 | display: block; 95 | opacity: 0.8; 96 | margin-bottom: 10px; 97 | font-weight: 400; 98 | } 99 | 100 | .single-product-content p { 101 | &.single-product-pricing { 102 | font-size: 32px; 103 | font-weight: 700; 104 | margin-bottom: 10px; 105 | color: $text-color; 106 | line-height: inherit; 107 | } 108 | 109 | font-size: 15px; 110 | color: #555; 111 | line-height: 1.8; 112 | } 113 | 114 | input[type="number"] { 115 | border: 1px solid #ddd; 116 | border-radius: 5px; 117 | padding: 10px; 118 | width: 100px; 119 | margin-bottom: 15px; 120 | } 121 | 122 | .single-product-form a.cart-btn { 123 | margin-bottom: 15px; 124 | } 125 | 126 | .single-product-content h4 { 127 | font-size: 20px; 128 | font-weight: 600; 129 | margin-top: 35px; 130 | } 131 | 132 | ul.product-share { 133 | margin: 0; 134 | padding: 0; 135 | list-style: none; 136 | 137 | li { 138 | display: inline-block; 139 | 140 | a { 141 | display: block; 142 | color: $text-color; 143 | margin-right: 10px; 144 | } 145 | } 146 | } 147 | 148 | .single-product-content { 149 | margin-left: 30px; 150 | } 151 | 152 | table.cart-table { 153 | border: 1px solid #f9f9f9; 154 | width: 100%; 155 | } 156 | 157 | thead { 158 | border-bottom: 1px solid #eee; 159 | } 160 | 161 | tr.table-head-row th { 162 | border-right: 1px solid #efefef; 163 | padding: 15px; 164 | font-weight: 500; 165 | text-align: center; 166 | 167 | &:last-child { 168 | border-right: none; 169 | } 170 | } 171 | 172 | .cart-table-wrap tbody tr td { 173 | text-align: center; 174 | } 175 | 176 | td.product-image img { 177 | max-width: 50px; 178 | box-shadow: none; 179 | margin-bottom: 0; 180 | } 181 | 182 | .cart-table-wrap tbody tr td { 183 | border: 1px solid #efefef; 184 | padding: 20px 0; 185 | color: $text-color; 186 | } 187 | 188 | thead.cart-table-head tr { 189 | background-color: #efefef; 190 | } 191 | 192 | td.product-quantity input { 193 | margin-bottom: 0; 194 | } 195 | 196 | tr.table-body-row {} 197 | 198 | td.product-remove a { 199 | color: $text-color; 200 | } 201 | 202 | .total-section table.total-table { 203 | border: 1px solid #efefef; 204 | width: 100%; 205 | } 206 | 207 | tr.table-total-row { 208 | background-color: #efefef; 209 | 210 | th { 211 | font-weight: 500; 212 | font-size: 15px; 213 | padding: 15px; 214 | } 215 | } 216 | 217 | table.total-table tbody tr.total-data td { 218 | border: 1px solid #efefef; 219 | padding: 19px 15px; 220 | } 221 | 222 | tr.total-data td strong { 223 | margin-right: 32px; 224 | } 225 | 226 | .cart-buttons { 227 | margin-top: 30px; 228 | 229 | a:first-child { 230 | margin-right: 20px; 231 | } 232 | } 233 | 234 | .coupon-section { 235 | margin-top: 50px; 236 | 237 | h3 { 238 | font-size: 20px; 239 | font-weight: 500; 240 | } 241 | } 242 | 243 | .coupon-form-wrap form p input[type=text] { 244 | border: 1px solid #ddd; 245 | color: $text-color; 246 | padding: 15px; 247 | width: 100%; 248 | border-radius: 5px; 249 | font-size: 15px; 250 | } 251 | 252 | .card.single-accordion { 253 | .card-header { 254 | background-color: #fff; 255 | border: none; 256 | padding: 0; 257 | } 258 | 259 | margin-bottom: 15px; 260 | 261 | &:last-child { 262 | margin-bottom: 0; 263 | } 264 | 265 | border-bottom: 1px solid #EFEFEF !important; 266 | 267 | .card-header h5 button { 268 | color: $text-color; 269 | font-size: 15px; 270 | display: block; 271 | width: 100%; 272 | text-align: left; 273 | padding: 20px; 274 | text-decoration: none; 275 | border: none; 276 | background-color: #EFEFEF; 277 | position: relative; 278 | padding-left: 50px; 279 | font-weight: 600; 280 | } 281 | } 282 | 283 | .card-header h5 {} 284 | 285 | .card.single-accordion { 286 | border: 1px solid #F9F9F9; 287 | } 288 | 289 | .billing-address-form { 290 | form p { 291 | input { 292 | border: 1px solid #ddd; 293 | padding: 15px; 294 | width: 100%; 295 | border-radius: 3px; 296 | } 297 | 298 | textarea { 299 | width: 100%; 300 | border-radius: 3px; 301 | border: 1px solid #ddd; 302 | padding: 15px; 303 | height: 120px; 304 | resize: none; 305 | } 306 | } 307 | 308 | padding: 20px; 309 | } 310 | 311 | .shipping-address-form p, .card-details p { 312 | margin: 0; 313 | } 314 | 315 | .card.single-accordion .card-header h5 button:before { 316 | position: absolute; 317 | left: 20px; 318 | top: 50%; 319 | content: "\f058"; 320 | font-family: "Font Awesome 5 Free"; 321 | font-weight: 900; 322 | line-height: 22px; 323 | margin-top: -11px; 324 | color: $primary-color; 325 | } 326 | 327 | .billing-address-form form p:last-child { 328 | margin-bottom: 0; 329 | } 330 | 331 | table.order-details { 332 | thead tr th { 333 | background-color: #efefef; 334 | padding: 18px; 335 | font-size: 15px; 336 | font-weight: 500; 337 | } 338 | 339 | tbody td { 340 | border: 1px solid #efefef; 341 | padding: 15px; 342 | } 343 | 344 | border: 1px solid #efefef; 345 | } 346 | 347 | .order-details-wrap > a { 348 | margin-top: 30px; 349 | } 350 | 351 | .card.single-accordion { 352 | border: 1px solid #eeeeee; 353 | } 354 | 355 | .single-product-item { 356 | box-shadow: 0 0 20px #e4e4e4; 357 | padding-bottom: 50px; 358 | border-radius: 5px; 359 | } -------------------------------------------------------------------------------- /assets/css/scss/prepros-6.config: -------------------------------------------------------------------------------- 1 | { 2 | "name": "scss", 3 | "firstRun": false, 4 | "exportConfig": true, 5 | "fileConfigs": [ 6 | { 7 | "path": "main.scss", 8 | "configJson": "{\"forceCompile\":false,\"customOutput\":\"../main.css\",\"autoCompile\":true,\"sourceMap\":false,\"compiler-node-sass\":{\"enabled\":true,\"outputStyle\":\"expanded\"},\"compiler-autoprefixer\":{\"enabled\":true},\"compiler-minify-css\":{\"enabled\":false}}" 9 | } 10 | ], 11 | "fileTree": { 12 | "expandedDirs": [], 13 | "hideSystemFiles": true, 14 | "systemFiles": [ 15 | ".*", 16 | "desktop.ini", 17 | "prepros.config", 18 | "$RECYCLE.BIN", 19 | "prepros.cfg", 20 | "prepros-6.config", 21 | "Prepros Export" 22 | ], 23 | "hideUnwatchedFiles": false 24 | }, 25 | "imports": [ 26 | { 27 | "path": "main.scss", 28 | "imports": [ 29 | "base/_variables.scss", 30 | "base/_mixins.scss", 31 | "base/_typography.scss", 32 | "common/_common.scss", 33 | "common/_header.scss", 34 | "common/_footer.scss", 35 | "common/_hover.scss", 36 | "sections/_hero.scss", 37 | "sections/_list.scss", 38 | "sections/_news.scss", 39 | "sections/_cart-banner.scss", 40 | "sections/_testimonials.scss", 41 | "sections/_about.scss", 42 | "sections/_shop-banner.scss", 43 | "pages/_about.scss", 44 | "pages/_contact.scss", 45 | "pages/_shop.scss", 46 | "pages/_404.scss" 47 | ] 48 | } 49 | ], 50 | "projectView": { 51 | "selectedView": "file-tree" 52 | }, 53 | "fileWatcher": { 54 | "enabled": true, 55 | "watchedExtensions": [ 56 | "less", 57 | "sass", 58 | "scss", 59 | "styl", 60 | "md", 61 | "markdown", 62 | "coffee", 63 | "js", 64 | "jade", 65 | "haml", 66 | "slim", 67 | "ls", 68 | "kit", 69 | "png", 70 | "jpg", 71 | "jpeg", 72 | "ts", 73 | "pug", 74 | "css", 75 | "html", 76 | "htm", 77 | "php" 78 | ] 79 | }, 80 | "pathFilters": [ 81 | "node_modules", 82 | ".*", 83 | "bower_components", 84 | "prepros.config", 85 | "Prepros Export", 86 | "prepros-6.config", 87 | "prepros.cfg", 88 | "wp-admin", 89 | "wp-includes" 90 | ], 91 | "server": { 92 | "port": 7879, 93 | "assignNewPortAutomatically": true, 94 | "enable": true, 95 | "proxy": { 96 | "enable": false, 97 | "url": "" 98 | } 99 | }, 100 | "browser-sync": { 101 | "enable": false, 102 | "clicks": true, 103 | "forms": true, 104 | "scroll": true 105 | }, 106 | "live-reload": { 107 | "enable": true, 108 | "animate": true, 109 | "delay": 0 110 | }, 111 | "ftp-deploy": { 112 | "connectionType": "ftp", 113 | "remotePath": "", 114 | "uploadTimeout": 20000, 115 | "uploadOnChange": false, 116 | "ftp": { 117 | "secure": false, 118 | "keepAlive": true, 119 | "host": "", 120 | "port": 21, 121 | "user": "", 122 | "password": "" 123 | }, 124 | "sftp": { 125 | "host": "", 126 | "port": 22, 127 | "usePrivateKey": false, 128 | "username": "", 129 | "password": "", 130 | "privateKey": "", 131 | "passphrase": "" 132 | }, 133 | "pathFilters": [ 134 | "config.rb", 135 | "prepros.config", 136 | "prepros-6.config", 137 | "node_modules", 138 | "Prepros Export", 139 | ".git", 140 | ".idea", 141 | ".sass-cache", 142 | ".hg", 143 | ".svn", 144 | ".cache", 145 | ".DS_Store", 146 | "*.sass", 147 | "*.scss", 148 | "*.less", 149 | "*.pug", 150 | "*.jade", 151 | "*.styl", 152 | "*.haml", 153 | "*.slim", 154 | "*.coffee", 155 | "*.ls", 156 | "*.kit", 157 | "*.ts" 158 | ], 159 | "history": [] 160 | }, 161 | "file-type-sass": "{\"compilers\":[\"node-sass\",\"autoprefixer\",\"minify-css\"]}", 162 | "file-type-less": "{\"compilers\":[\"less\",\"autoprefixer\",\"minify-css\"]}", 163 | "autoprefixer": { 164 | "browsers": "last 5 versions" 165 | }, 166 | "file-type-pug": "{\"compilers\":[\"pug\"]}", 167 | "file-type-css": "{\"compilers\":[\"autoprefixer\",\"cssnext\",\"minify-css\"]}", 168 | "file-type-javascript": "{\"compilers\":[\"concat-js\",\"babel\",\"uglify-js\"]}", 169 | "file-type-stylus": "{\"compilers\":[\"stylus\",\"autoprefixer\",\"minify-css\"]}", 170 | "file-type-markdown": "{\"compilers\":[\"markdown\"]}", 171 | "file-type-haml": "{\"compilers\":[\"haml\"]}", 172 | "file-type-slim": "{\"compilers\":[\"slim\"]}", 173 | "file-type-coffee-script": "{\"compilers\":[\"coffee-script\",\"uglify-js\"]}", 174 | "file-type-livescript": "{\"compilers\":[\"livescript\",\"uglify-js\"]}", 175 | "file-type-kit": "{\"compilers\":[\"kit\"]}", 176 | "uglify-js": { 177 | "ie8": false, 178 | "compress": { 179 | "sequences": true, 180 | "properties": true, 181 | "dead_code": true, 182 | "drop_debugger": true, 183 | "unsafe": false, 184 | "unsafe_comps": false, 185 | "unsafe_math": false, 186 | "unsafe_proto": false, 187 | "unsafe_regexp": false, 188 | "conditionals": true, 189 | "comparisons": true, 190 | "evaluate": true, 191 | "booleans": true, 192 | "loops": true, 193 | "unused": true, 194 | "toplevel": false, 195 | "top_retain": "", 196 | "hoist_funs": true, 197 | "hoist_vars": false, 198 | "if_return": true, 199 | "join_vars": true, 200 | "collapse_vars": true, 201 | "reduce_vars": true, 202 | "warnings": true, 203 | "negate_iife": true, 204 | "pure_getters": false, 205 | "pure_funcs": [], 206 | "drop_console": false, 207 | "expression": false, 208 | "keep_fargs": true, 209 | "keep_fnames": false, 210 | "passes": 1, 211 | "keep_infinity": false, 212 | "side_effects": true, 213 | "global_defs": [] 214 | }, 215 | "output": { 216 | "ascii_only": false, 217 | "beautify": false, 218 | "comments": "", 219 | "indent_level": 4, 220 | "indent_start": 0, 221 | "inline_script": false, 222 | "keep_quoted_props": false, 223 | "max_line_len": false, 224 | "preamble": "", 225 | "preserve_line": false, 226 | "quote_keys": false, 227 | "quote_style": 0, 228 | "semicolons": true, 229 | "shebang": true, 230 | "width": 80 231 | } 232 | }, 233 | "cssnext": { 234 | "customProperties": true, 235 | "applyRule": true, 236 | "calc": false, 237 | "nesting": true, 238 | "customMedia": true, 239 | "mediaQueriesRange": true, 240 | "customSelectors": true, 241 | "attributeCaseInsensitive": true, 242 | "colorRebeccapurple": true, 243 | "colorHwb": true, 244 | "colorGray": true, 245 | "colorHexAlpha": true, 246 | "colorFunction": true, 247 | "fontVariant": true, 248 | "filter": true, 249 | "initial": true, 250 | "rem": true, 251 | "pseudoElements": true, 252 | "pseudoClassMatches": true, 253 | "pseudoClassNot": true, 254 | "pseudoClassAnyLink": true, 255 | "colorRgba": true, 256 | "overflowWrap": true 257 | }, 258 | "file-type-typescript": "{\"compilers\":[\"typescript\",\"uglify-js\"]}", 259 | "babel": { 260 | "useBabelRc": true, 261 | "presets": { 262 | "babel-preset-es2015": true 263 | }, 264 | "plugins": { 265 | "babel-plugin-syntax-jsx": true, 266 | "babel-plugin-transform-react-jsx": true, 267 | "babel-plugin-transform-async-to-generator": true, 268 | "babel-plugin-transform-class-properties": true, 269 | "babel-plugin-transform-object-rest-spread": true 270 | } 271 | }, 272 | "file-type-png": "{\"compilers\":[\"png\"]}", 273 | "file-type-jpg": "{\"compilers\":[\"jpg\"]}" 274 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_about.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # About Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | a.video-play-btn { 7 | position: absolute; 8 | background-color: $primary-color; 9 | color: $text-color; 10 | width: 90px; 11 | height: 90px; 12 | text-align: center; 13 | line-height: 92px; 14 | border-radius: 50%; 15 | font-size: 20px; 16 | padding-left: 5px; 17 | display: block; 18 | z-index: 2; 19 | top: 50%; 20 | margin-top: -45px; 21 | box-shadow: 0 0 20px #adadad; 22 | left: 50%; 23 | margin-left: -45px; 24 | } 25 | 26 | .abt-bg { 27 | background-image: url(../img/abt.jpg); 28 | height: 100%; 29 | width: 100%; 30 | background-size: cover; 31 | background-position: center; 32 | border-top-right-radius: 10px; 33 | border-bottom-left-radius: 10px; 34 | position: relative; 35 | z-index: 1; 36 | overflow: hidden; 37 | 38 | &:after { 39 | position: absolute; 40 | left: 0; 41 | top: 0; 42 | width: 100%; 43 | height: 100%; 44 | content: ""; 45 | background-color: $text-color; 46 | opacity: 0.3; 47 | } 48 | } 49 | 50 | .abt-section .abt-text { 51 | padding: 50px; 52 | padding-left: 30px; 53 | } 54 | 55 | .abt-text p { 56 | &.top-sub { 57 | opacity: 0.8; 58 | margin-bottom: 10px; 59 | } 60 | 61 | font-size: 15px; 62 | line-height: 1.6; 63 | margin-bottom: 10px; 64 | 65 | &:last-child { 66 | margin-bottom: 0; 67 | } 68 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_cart-banner.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Cart Banner Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .cart-banner { 7 | background-color: #f5f5f5; 8 | 9 | .image-column { 10 | position: relative; 11 | margin-top: 40px; 12 | 13 | .price-box { 14 | position: absolute; 15 | left: 15%; 16 | top: -30px; 17 | width: 110px; 18 | height: 110px; 19 | border-radius: 50%; 20 | border: 1px solid $white-color; 21 | background-color: rgba(242, 129, 35, 0.75); 22 | 23 | .inner-price { 24 | position: relative; 25 | width: 94px; 26 | height: 94px; 27 | margin: 0 auto; 28 | margin-top: 8px; 29 | text-align: center; 30 | border-radius: 50%; 31 | background-color: $primary-color; 32 | 33 | .price { 34 | color: $text-color; 35 | padding-top: 27px; 36 | position: relative; 37 | display: inline-block; 38 | line-height: 18px; 39 | font-weight: 400; 40 | 41 | strong { 42 | color: $text-color; 43 | font-size: 24px; 44 | } 45 | } 46 | } 47 | } 48 | } 49 | 50 | .content-column { 51 | position: relative; 52 | padding-top: 40px; 53 | 54 | h3 { 55 | font-size: 40px; 56 | } 57 | 58 | h4 { 59 | position: relative; 60 | font-weight: 300; 61 | text-transform: uppercase; 62 | } 63 | 64 | .text { 65 | position: relative; 66 | font-weight: 400; 67 | line-height: 1.8em; 68 | margin-top: 25px; 69 | margin-bottom: 25px; 70 | } 71 | } 72 | } 73 | 74 | //time counter 75 | .time-counter { 76 | position: relative; 77 | margin-bottom: 25px; 78 | 79 | .time-countdown { 80 | position: relative; 81 | } 82 | } 83 | 84 | .time-countdown .counter-column { 85 | position: relative; 86 | display: inline-block; 87 | margin: 0px 0px 5px; 88 | font-size: 13px; 89 | line-height: 1em; 90 | padding: 8px 20px 14px; 91 | text-transform: capitalize; 92 | text-align: center; 93 | border: 2px solid $primary-color; 94 | 95 | .count { 96 | position: relative; 97 | display: block; 98 | font-size: 30px; 99 | line-height: 1.4em; 100 | padding: 0px 0px; 101 | color: $primary-color; 102 | font-weight: 700; 103 | letter-spacing: 1px; 104 | } 105 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_hero.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Hero Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .hero-bg { 7 | background-image: url(../img/hero-bg.jpg); 8 | background-size: cover; 9 | background-position: center; 10 | background-attachment: fixed; 11 | } 12 | 13 | .hero-text { 14 | display: table; 15 | height: 100%; 16 | } 17 | 18 | .hero-text-tablecell { 19 | display: table-cell; 20 | } 21 | 22 | .hero-area { 23 | height: 100%; 24 | position: relative; 25 | z-index: 1; 26 | } 27 | 28 | html, body { 29 | height: 100%; 30 | } 31 | 32 | .hero-area:after { 33 | position: absolute; 34 | left: 0; 35 | top: 0; 36 | width: 100%; 37 | height: 100%; 38 | content: ""; 39 | background-color: #07212e; 40 | z-index: -1; 41 | opacity: 0.6; 42 | } 43 | 44 | .hero-text { 45 | p.subtitle { 46 | color: $primary-color; 47 | font-weight: 700; 48 | text-transform: uppercase; 49 | letter-spacing: 7px; 50 | font-size: 15px; 51 | } 52 | 53 | h1 { 54 | font-size: 64px; 55 | font-weight: 700; 56 | line-height: 1.3; 57 | color: $white-color; 58 | } 59 | } 60 | 61 | .hero-area div { 62 | height: 100%; 63 | 64 | &.hero-text { 65 | height: 100%; 66 | width: 100%; 67 | } 68 | 69 | &.hero-text-tablecell { 70 | height: auto; 71 | vertical-align: middle; 72 | 73 | div { 74 | height: auto; 75 | vertical-align: middle; 76 | } 77 | } 78 | } 79 | 80 | .hero-btns { 81 | a.bordered-btn { 82 | margin-left: 15px; 83 | } 84 | 85 | margin-top: 35px; 86 | } 87 | 88 | .hero-area div.hero-form { 89 | background-color: $white-color; 90 | text-align: center; 91 | width: 380px; 92 | margin: 0 auto; 93 | margin-right: 0; 94 | border-radius: 5px; 95 | box-shadow: 0 0 15px #2d2d2d; 96 | position: absolute; 97 | right: 30px; 98 | bottom: -15%; 99 | height: 600px; 100 | } 101 | 102 | input[type="submit"] { 103 | background-color: $primary-color; 104 | color: $text-color; 105 | font-weight: 700; 106 | text-transform: uppercase; 107 | font-size: 15px; 108 | border: none !important; 109 | cursor: pointer; 110 | padding: 15px 25px; 111 | border-radius: 3px; 112 | } 113 | 114 | .homepage-bg-1 { 115 | background-image: url(../img/hero-bg.jpg); 116 | } 117 | 118 | .homepage-bg-2 { 119 | background-image: url(../img/hero-bg-2.jpg); 120 | } 121 | 122 | .homepage-bg-3 { 123 | background-image: url(../img/hero-bg-3.jpg); 124 | } 125 | 126 | .homepage-slider { 127 | height: 100%; 128 | 129 | div { 130 | height: 100%; 131 | 132 | &.hero-text { 133 | display: table; 134 | width: 100%; 135 | } 136 | 137 | &.hero-text-tablecell { 138 | height: auto; 139 | 140 | div { 141 | height: auto; 142 | } 143 | 144 | vertical-align: middle; 145 | display: table-cell; 146 | } 147 | } 148 | } 149 | 150 | .single-homepage-slider { 151 | background-size: cover; 152 | background-position: center; 153 | background-color: #020C0E; 154 | position: relative; 155 | z-index: 1; 156 | 157 | &:after { 158 | position: absolute; 159 | left: 0; 160 | top: 0; 161 | width: 100%; 162 | height: 100%; 163 | background-color: $text-color; 164 | content: ""; 165 | z-index: -1; 166 | opacity: 0.7; 167 | } 168 | } 169 | 170 | div.owl-controls, .owl-controls div { 171 | height: auto; 172 | top: 50%; 173 | color: $primary-color; 174 | font-size: 48px; 175 | } 176 | 177 | .homepage-slider { 178 | position: relative; 179 | } 180 | 181 | .owl-prev { 182 | position: absolute; 183 | left: 60px; 184 | margin-top: -30px; 185 | } 186 | 187 | .owl-next { 188 | position: absolute; 189 | right: 60px; 190 | margin-top: -30px; 191 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_list.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # List Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .list-section { 7 | background-color: #f5f5f5; 8 | } 9 | 10 | .list-box { 11 | overflow: hidden; 12 | letter-spacing: 0.5px; 13 | 14 | .content { 15 | h3 { 16 | display: block; 17 | line-height: 22px; 18 | font-size: 18px; 19 | margin-bottom: 4px; 20 | } 21 | 22 | p { 23 | margin-bottom: 0px; 24 | opacity: 0.75; 25 | } 26 | } 27 | 28 | .list-icon i { 29 | display: block; 30 | font-size: 24px; 31 | margin-right: 15px; 32 | color: $primary-color; 33 | width: 65px; 34 | height: 65px; 35 | text-align: center; 36 | line-height: 60px; 37 | border: 2px $primary-color dotted; 38 | border-radius: 999px; 39 | } 40 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_news.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # News Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .news-bg-1 { 7 | background-image: url(../img/latest-news/news-bg-1.jpg); 8 | } 9 | 10 | .news-bg-2 { 11 | background-image: url(../img/latest-news/news-bg-2.jpg); 12 | } 13 | 14 | .news-bg-3 { 15 | background-image: url(../img/latest-news/news-bg-3.jpg); 16 | } 17 | 18 | .news-bg-4 { 19 | background-image: url(../img/latest-news/news-bg-4.jpg); 20 | } 21 | 22 | .news-bg-5 { 23 | background-image: url(../img/latest-news/news-bg-5.jpg); 24 | } 25 | 26 | .news-bg-6 { 27 | background-image: url(../img/latest-news/news-bg-6.jpg); 28 | } 29 | 30 | .latest-news-bg { 31 | height: 200px; 32 | background-size: cover; 33 | background-position: center; 34 | border-radius: 10px; 35 | background-color: #ddd; 36 | border-bottom-right-radius: 0; 37 | border-bottom-left-radius: 0; 38 | } 39 | 40 | .single-latest-news h3 { 41 | font-size: 20px; 42 | line-height: 1.25em; 43 | font-weight: 600; 44 | 45 | a { 46 | color: $text-color; 47 | } 48 | } 49 | 50 | p { 51 | &.blog-meta span { 52 | margin-right: 15px; 53 | opacity: 0.6; 54 | color: $text-color; 55 | font-size: 0.85em; 56 | 57 | &:last-child { 58 | margin-right: 0; 59 | } 60 | 61 | i { 62 | margin-right: 5px; 63 | } 64 | } 65 | 66 | &.excerpt { 67 | line-height: 1.8; 68 | color: #555; 69 | } 70 | } 71 | 72 | .latest-news a.boxed-btn { 73 | margin-top: 80px; 74 | } 75 | 76 | .news-text-box { 77 | padding: 25px; 78 | border-bottom-left-radius: 5px; 79 | border-bottom-right-radius: 5px; 80 | } 81 | 82 | .single-latest-news { 83 | margin-bottom: 30px; 84 | } 85 | 86 | .single-artcile-bg { 87 | background-image: url(../img/latest-news/news-bg-3.jpg); 88 | height: 450px; 89 | } 90 | 91 | .pagination-wrap { 92 | ul { 93 | margin: 0; 94 | padding: 0; 95 | list-style: none; 96 | 97 | li { 98 | display: inline-block; 99 | 100 | a { 101 | color: #6f6f6f; 102 | font-size: 15px; 103 | background-color: #f3f3f3; 104 | display: inline-block; 105 | padding: 8px 14px; 106 | border-radius: 5px; 107 | margin: 3px; 108 | font-weight: 600; 109 | border-radius: 50px; 110 | 111 | &.active { 112 | background-color: $primary-color; 113 | } 114 | } 115 | } 116 | } 117 | 118 | margin-top: 40px; 119 | } 120 | 121 | //Single News 122 | .single-artcile-bg { 123 | background-size: cover; 124 | background-position: center; 125 | background-color: #ddd; 126 | border-radius: 5px; 127 | margin-bottom: 20px; 128 | } 129 | 130 | .single-article-text { 131 | h2 { 132 | font-size: 24px; 133 | font-weight: 600; 134 | line-height: 1.4; 135 | margin-bottom: 10px; 136 | } 137 | 138 | p { 139 | font-size: 15px; 140 | line-height: 1.6; 141 | color: $text-color; 142 | } 143 | } 144 | 145 | .comments-list-wrap { 146 | margin: 100px 0; 147 | 148 | h3 { 149 | font-size: 25px; 150 | font-weight: 600; 151 | margin-bottom: 50px; 152 | } 153 | } 154 | 155 | .comment-template h4 { 156 | font-size: 25px; 157 | font-weight: 600; 158 | margin-bottom: 50px; 159 | } 160 | 161 | .single-comment-body { 162 | position: relative; 163 | } 164 | 165 | .comment-user-avater { 166 | position: absolute; 167 | left: 0; 168 | top: 0; 169 | 170 | img { 171 | width: 60px; 172 | max-width: 60px; 173 | border-radius: 50%; 174 | } 175 | } 176 | 177 | .comment-text-body { 178 | padding-left: 80px; 179 | margin-bottom: 40px; 180 | 181 | h4 { 182 | font-size: 18px; 183 | font-weight: 600; 184 | } 185 | } 186 | 187 | span.comment-date { 188 | opacity: 0.5; 189 | font-size: 80%; 190 | font-weight: 700; 191 | margin-left: 5px; 192 | } 193 | 194 | .comment-text-body h4 a { 195 | color: $text-color; 196 | font-size: 80%; 197 | margin-left: 10px; 198 | border-bottom: 1px solid #aaa; 199 | } 200 | 201 | .single-comment-body.child { 202 | margin-left: 75px; 203 | } 204 | 205 | .comment-text-body p { 206 | color: #888; 207 | line-height: 2; 208 | margin: 0; 209 | } 210 | 211 | .comment-template { 212 | h4 { 213 | margin-bottom: 10px; 214 | } 215 | 216 | > p { 217 | opacity: 0.7; 218 | margin-bottom: 30px; 219 | } 220 | 221 | form p { 222 | input { 223 | &[type=text] { 224 | border: 1px solid #ddd; 225 | width: 49%; 226 | padding: 15px; 227 | border-radius: 5px; 228 | font-size: 15px; 229 | color: $text-color; 230 | } 231 | 232 | &[type=email] { 233 | border: 1px solid #ddd; 234 | width: 49%; 235 | padding: 15px; 236 | border-radius: 5px; 237 | font-size: 15px; 238 | color: $text-color; 239 | margin-left: 10px; 240 | } 241 | } 242 | 243 | textarea { 244 | border: 1px solid #ddd; 245 | padding: 15px; 246 | font-size: 15px; 247 | color: $text-color; 248 | border-radius: 5px; 249 | height: 250px; 250 | resize: none; 251 | width: 100%; 252 | } 253 | } 254 | } 255 | 256 | .sidebar-section { 257 | h4 { 258 | font-size: 20px; 259 | font-weight: 600; 260 | margin-bottom: 15px; 261 | } 262 | 263 | ul { 264 | margin: 0; 265 | padding: 0; 266 | list-style: none; 267 | 268 | li { 269 | a { 270 | color: #555; 271 | font-size: 15px; 272 | } 273 | 274 | line-height: 1.5; 275 | } 276 | } 277 | 278 | > div { 279 | margin-bottom: 60px; 280 | 281 | &:last-child { 282 | margin-bottom: 0; 283 | } 284 | } 285 | 286 | margin-left: 30px; 287 | } 288 | 289 | .recent-posts ul li, .archive-posts ul li { 290 | position: relative; 291 | padding-left: 17px; 292 | margin-bottom: 10px; 293 | } 294 | 295 | .recent-posts ul li:before, .archive-posts ul li:before { 296 | position: absolute; 297 | left: 0; 298 | top: 2px; 299 | content: "\f105"; 300 | font-family: "Font Awesome 5 Free"; 301 | font-weight: 900; 302 | } 303 | 304 | .tag-section ul li { 305 | display: inline-block; 306 | 307 | a { 308 | background-color: #ddd; 309 | padding: 3px 10px; 310 | display: block; 311 | border-radius: 5px; 312 | margin-bottom: 10px; 313 | margin-right: 5px; 314 | } 315 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_shop-banner.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Shop Banner Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .shop-banner { 7 | position: relative; 8 | background-color: #f5f5f5; 9 | background-image: url(../img/1.jpg); 10 | background-size: cover; 11 | padding: 110px 0px 115px; 12 | 13 | h3 { 14 | position: relative; 15 | font-size: 50px; 16 | line-height: 1.2em; 17 | margin-bottom: 0px; 18 | } 19 | 20 | .sale-percent { 21 | position: relative; 22 | font-size: 60px; 23 | font-weight: 700; 24 | color: $primary-color; 25 | 26 | span { 27 | position: relative; 28 | font-size: 24px; 29 | line-height: 1.1em; 30 | color: $text-color; 31 | font-weight: 400; 32 | text-align: center; 33 | margin-right: 10px; 34 | display: inline-block; 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /assets/css/scss/sections/_testimonials.scss: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | 3 | # Testimonial Styles 4 | 5 | ----------------------------------------------------------------------------- */ 6 | .client-avater { 7 | margin-bottom: 20px; 8 | } 9 | 10 | .client-meta h3 { 11 | font-size: 20px; 12 | font-weight: 600; 13 | 14 | span { 15 | display: block; 16 | font-size: 70%; 17 | margin-top: 10px; 18 | color: $text-color; 19 | font-weight: 600; 20 | opacity: 0.5; 21 | } 22 | } 23 | 24 | p.testimonial-body { 25 | font-size: 17px; 26 | font-style: italic; 27 | width: 700px; 28 | margin: 0 auto; 29 | line-height: 1.8; 30 | color: $text-color-light; 31 | margin-top: 20px; 32 | } 33 | 34 | .last-icon { 35 | margin-top: 20px; 36 | font-size: 25px; 37 | opacity: 0.3; 38 | } 39 | 40 | .client-avater img { 41 | max-width: 100px; 42 | border-radius: 50%; 43 | margin: 0 auto; 44 | } -------------------------------------------------------------------------------- /assets/img/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/img/favicon.png -------------------------------------------------------------------------------- /assets/img/logo.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/img/logo.JPG -------------------------------------------------------------------------------- /assets/js/form-validate.js: -------------------------------------------------------------------------------- 1 | function valid_datas( f ){ 2 | 3 | if( f.name.value == '' ){ 4 | jQuery('#form_status').html('Your name must not be empty!'); 5 | notice( f.name ); 6 | }else if( f.email.value == '' ){ 7 | jQuery('#form_status').html('Your email must not be empty and correct format!'); 8 | notice( f.email ); 9 | //}else if( f.phone.value == '' ){ 10 | //jQuery('#form_status').html('Your phone must not be empty and correct format!'); 11 | //notice( f.phone ); 12 | }else if( f.subject.value == '' ){ 13 | jQuery('#form_status').html('Your subject must not be empty!'); 14 | notice( f.subject ); 15 | }else if( f.message.value == '' ){ 16 | jQuery('#form_status').html('Your message must not be empty!'); 17 | notice( f.message ); 18 | }else{ 19 | jQuery.ajax({ 20 | url: 'mail.php', 21 | type: 'post', 22 | data: jQuery('form#fruitkha-contact').serialize(), 23 | complete: function(data) { 24 | jQuery('#form_status').html(data.responseText); 25 | jQuery('#fruitkha-contact').find('input,textarea').attr({value:''}); 26 | jQuery('#fruitkha-contact').css({opacity:1}); 27 | jQuery('#fruitkha-contact').remove(); 28 | } 29 | }); 30 | jQuery('#form_status').html('Sending your message...'); 31 | jQuery('#fruitkha-contact').animate({opacity:0.3}); 32 | jQuery('#fruitkha-contact').find('input,textarea,button').css('border','none').attr({'disabled':''}); 33 | } 34 | 35 | return false; 36 | } 37 | 38 | function notice( f ){ 39 | jQuery('#fruitkha-contact').find('input,textarea').css('border','none'); 40 | f.style.border = '1px solid red'; 41 | f.focus(); 42 | } -------------------------------------------------------------------------------- /assets/js/jquery.countdown.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * The Final Countdown for jQuery v2.0.4 (http://hilios.github.io/jQuery.countdown/) 3 | * Copyright (c) 2014 Edson Hilios 4 | * 5 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | * this software and associated documentation files (the "Software"), to deal in 7 | * the Software without restriction, including without limitation the rights to 8 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | * the Software, and to permit persons to whom the Software is furnished to do so, 10 | * subject to the following conditions: 11 | * 12 | * The above copyright notice and this permission notice shall be included in all 13 | * copies or substantial portions of the Software. 14 | * 15 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | */ 22 | (function(factory) { 23 | "use strict"; 24 | if (typeof define === "function" && define.amd) { 25 | define([ "jquery" ], factory); 26 | } else { 27 | factory(jQuery); 28 | } 29 | })(function($) { 30 | "use strict"; 31 | var PRECISION = 100; 32 | var instances = [], matchers = []; 33 | matchers.push(/^[0-9]*$/.source); 34 | matchers.push(/([0-9]{1,2}\/){2}[0-9]{4}( [0-9]{1,2}(:[0-9]{2}){2})?/.source); 35 | matchers.push(/[0-9]{4}([\/\-][0-9]{1,2}){2}( [0-9]{1,2}(:[0-9]{2}){2})?/.source); 36 | matchers = new RegExp(matchers.join("|")); 37 | function parseDateString(dateString) { 38 | if (dateString instanceof Date) { 39 | return dateString; 40 | } 41 | if (String(dateString).match(matchers)) { 42 | if (String(dateString).match(/^[0-9]*$/)) { 43 | dateString = Number(dateString); 44 | } 45 | if (String(dateString).match(/\-/)) { 46 | dateString = String(dateString).replace(/\-/g, "/"); 47 | } 48 | return new Date(dateString); 49 | } else { 50 | throw new Error("Couldn't cast `" + dateString + "` to a date object."); 51 | } 52 | } 53 | var DIRECTIVE_KEY_MAP = { 54 | Y: "years", 55 | m: "months", 56 | w: "weeks", 57 | d: "days", 58 | D: "totalDays", 59 | H: "hours", 60 | M: "minutes", 61 | S: "seconds" 62 | }; 63 | function strftime(offsetObject) { 64 | return function(format) { 65 | var directives = format.match(/%(-|!)?[A-Z]{1}(:[^;]+;)?/gi); 66 | if (directives) { 67 | for (var i = 0, len = directives.length; i < len; ++i) { 68 | var directive = directives[i].match(/%(-|!)?([a-zA-Z]{1})(:[^;]+;)?/), regexp = new RegExp(directive[0]), modifier = directive[1] || "", plural = directive[3] || "", value = null; 69 | directive = directive[2]; 70 | if (DIRECTIVE_KEY_MAP.hasOwnProperty(directive)) { 71 | value = DIRECTIVE_KEY_MAP[directive]; 72 | value = Number(offsetObject[value]); 73 | } 74 | if (value !== null) { 75 | if (modifier === "!") { 76 | value = pluralize(plural, value); 77 | } 78 | if (modifier === "") { 79 | if (value < 10) { 80 | value = "0" + value.toString(); 81 | } 82 | } 83 | format = format.replace(regexp, value.toString()); 84 | } 85 | } 86 | } 87 | format = format.replace(/%%/, "%"); 88 | return format; 89 | }; 90 | } 91 | function pluralize(format, count) { 92 | var plural = "s", singular = ""; 93 | if (format) { 94 | format = format.replace(/(:|;|\s)/gi, "").split(/\,/); 95 | if (format.length === 1) { 96 | plural = format[0]; 97 | } else { 98 | singular = format[0]; 99 | plural = format[1]; 100 | } 101 | } 102 | if (Math.abs(count) === 1) { 103 | return singular; 104 | } else { 105 | return plural; 106 | } 107 | } 108 | var Countdown = function(el, finalDate, callback) { 109 | this.el = el; 110 | this.$el = $(el); 111 | this.interval = null; 112 | this.offset = {}; 113 | this.instanceNumber = instances.length; 114 | instances.push(this); 115 | this.$el.data("countdown-instance", this.instanceNumber); 116 | if (callback) { 117 | this.$el.on("update.countdown", callback); 118 | this.$el.on("stoped.countdown", callback); 119 | this.$el.on("finish.countdown", callback); 120 | } 121 | this.setFinalDate(finalDate); 122 | this.start(); 123 | }; 124 | $.extend(Countdown.prototype, { 125 | start: function() { 126 | if (this.interval !== null) { 127 | clearInterval(this.interval); 128 | } 129 | var self = this; 130 | this.update(); 131 | this.interval = setInterval(function() { 132 | self.update.call(self); 133 | }, PRECISION); 134 | }, 135 | stop: function() { 136 | clearInterval(this.interval); 137 | this.interval = null; 138 | this.dispatchEvent("stoped"); 139 | }, 140 | pause: function() { 141 | this.stop.call(this); 142 | }, 143 | resume: function() { 144 | this.start.call(this); 145 | }, 146 | remove: function() { 147 | this.stop(); 148 | instances[this.instanceNumber] = null; 149 | delete this.$el.data().countdownInstance; 150 | }, 151 | setFinalDate: function(value) { 152 | this.finalDate = parseDateString(value); 153 | }, 154 | update: function() { 155 | if (this.$el.closest("html").length === 0) { 156 | this.remove(); 157 | return; 158 | } 159 | this.totalSecsLeft = this.finalDate.getTime() - new Date().getTime(); 160 | this.totalSecsLeft = Math.ceil(this.totalSecsLeft / 1e3); 161 | this.totalSecsLeft = this.totalSecsLeft < 0 ? 0 : this.totalSecsLeft; 162 | this.offset = { 163 | seconds: this.totalSecsLeft % 60, 164 | minutes: Math.floor(this.totalSecsLeft / 60) % 60, 165 | hours: Math.floor(this.totalSecsLeft / 60 / 60) % 24, 166 | days: Math.floor(this.totalSecsLeft / 60 / 60 / 24) % 7, 167 | totalDays: Math.floor(this.totalSecsLeft / 60 / 60 / 24), 168 | weeks: Math.floor(this.totalSecsLeft / 60 / 60 / 24 / 7), 169 | months: Math.floor(this.totalSecsLeft / 60 / 60 / 24 / 30), 170 | years: Math.floor(this.totalSecsLeft / 60 / 60 / 24 / 365) 171 | }; 172 | if (this.totalSecsLeft === 0) { 173 | this.stop(); 174 | this.dispatchEvent("finish"); 175 | } else { 176 | this.dispatchEvent("update"); 177 | } 178 | }, 179 | dispatchEvent: function(eventName) { 180 | var event = $.Event(eventName + ".countdown"); 181 | event.finalDate = this.finalDate; 182 | event.offset = $.extend({}, this.offset); 183 | event.strftime = strftime(this.offset); 184 | this.$el.trigger(event); 185 | } 186 | }); 187 | $.fn.countdown = function() { 188 | var argumentsArray = Array.prototype.slice.call(arguments, 0); 189 | return this.each(function() { 190 | var instanceNumber = $(this).data("countdown-instance"); 191 | if (instanceNumber !== undefined) { 192 | var instance = instances[instanceNumber], method = argumentsArray[0]; 193 | if (Countdown.prototype.hasOwnProperty(method)) { 194 | instance[method].apply(instance, argumentsArray.slice(1)); 195 | } else if (String(method).match(/^[$A-Z_][0-9A-Z_$]*$/i) === null) { 196 | instance.setFinalDate.call(instance, method); 197 | instance.start(); 198 | } else { 199 | $.error("Method %s does not exist on jQuery.countdown".replace(/\%s/gi, method)); 200 | } 201 | } else { 202 | new Countdown(this, argumentsArray[0], argumentsArray[1]); 203 | } 204 | }); 205 | }; 206 | }); -------------------------------------------------------------------------------- /assets/js/jquery.magnific-popup.min.js: -------------------------------------------------------------------------------- 1 | /*! Magnific Popup - v1.1.0 - 2016-02-20 2 | * http://dimsemenov.com/plugins/magnific-popup/ 3 | * Copyright (c) 2016 Dmitry Semenov; */ 4 | !function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):window.jQuery||window.Zepto)}(function(a){var b,c,d,e,f,g,h="Close",i="BeforeClose",j="AfterClose",k="BeforeAppend",l="MarkupParse",m="Open",n="Change",o="mfp",p="."+o,q="mfp-ready",r="mfp-removing",s="mfp-prevent-close",t=function(){},u=!!window.jQuery,v=a(window),w=function(a,c){b.ev.on(o+a+p,c)},x=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},y=function(c,d){b.ev.triggerHandler(o+c,d),b.st.callbacks&&(c=c.charAt(0).toLowerCase()+c.slice(1),b.st.callbacks[c]&&b.st.callbacks[c].apply(b,a.isArray(d)?d:[d]))},z=function(c){return c===g&&b.currTemplate.closeBtn||(b.currTemplate.closeBtn=a(b.st.closeMarkup.replace("%title%",b.st.tClose)),g=c),b.currTemplate.closeBtn},A=function(){a.magnificPopup.instance||(b=new t,b.init(),a.magnificPopup.instance=b)},B=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(void 0!==a.transition)return!0;for(;b.length;)if(b.pop()+"Transition"in a)return!0;return!1};t.prototype={constructor:t,init:function(){var c=navigator.appVersion;b.isLowIE=b.isIE8=document.all&&!document.addEventListener,b.isAndroid=/android/gi.test(c),b.isIOS=/iphone|ipad|ipod/gi.test(c),b.supportsTransition=B(),b.probablyMobile=b.isAndroid||b.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),d=a(document),b.popupsCache={}},open:function(c){var e;if(c.isObj===!1){b.items=c.items.toArray(),b.index=0;var g,h=c.items;for(e=0;e(a||v.height())},_setFocus:function(){(b.st.focus?b.content.find(b.st.focus).eq(0):b.wrap).focus()},_onFocusIn:function(c){return c.target===b.wrap[0]||a.contains(b.wrap[0],c.target)?void 0:(b._setFocus(),!1)},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),y(l,[b,c,d]),a.each(c,function(c,d){if(void 0===d||d===!1)return!0;if(e=c.split("_"),e.length>1){var f=b.find(p+"-"+e[0]);if(f.length>0){var g=e[1];"replaceWith"===g?f[0]!==d[0]&&f.replaceWith(d):"img"===g?f.is("img")?f.attr("src",d):f.replaceWith(a("").attr("src",d).attr("class",f.attr("class"))):f.attr(e[1],d)}}else b.find(p+"-"+c).html(d)})},_getScrollbarSize:function(){if(void 0===b.scrollbarSize){var a=document.createElement("div");a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),b.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return b.scrollbarSize}},a.magnificPopup={instance:null,proto:t.prototype,modules:[],open:function(b,c){return A(),b=b?a.extend(!0,{},b):{},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'',tClose:"Close (Esc)",tLoading:"Loading...",autoFocusLast:!0}},a.fn.magnificPopup=function(c){A();var d=a(this);if("string"==typeof c)if("open"===c){var e,f=u?d.data("magnificPopup"):d[0].magnificPopup,g=parseInt(arguments[1],10)||0;f.items?e=f.items[g]:(e=d,f.delegate&&(e=e.find(f.delegate)),e=e.eq(g)),b._openClick({mfpEl:e},d,f)}else b.isOpen&&b[c].apply(b,Array.prototype.slice.call(arguments,1));else c=a.extend(!0,{},c),u?d.data("magnificPopup",c):d[0].magnificPopup=c,b.addGroup(d,c);return d};var C,D,E,F="inline",G=function(){E&&(D.after(E.addClass(C)).detach(),E=null)};a.magnificPopup.registerModule(F,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){b.types.push(F),w(h+"."+F,function(){G()})},getInline:function(c,d){if(G(),c.src){var e=b.st.inline,f=a(c.src);if(f.length){var g=f[0].parentNode;g&&g.tagName&&(D||(C=e.hiddenClass,D=x(C),C="mfp-"+C),E=f.after(D).detach().removeClass(C)),b.updateStatus("ready")}else b.updateStatus("error",e.tNotFound),f=a("
");return c.inlineElement=f,f}return b.updateStatus("ready"),b._parseMarkup(d,{},c),d}}});var H,I="ajax",J=function(){H&&a(document.body).removeClass(H)},K=function(){J(),b.req&&b.req.abort()};a.magnificPopup.registerModule(I,{options:{settings:null,cursor:"mfp-ajax-cur",tError:'The content could not be loaded.'},proto:{initAjax:function(){b.types.push(I),H=b.st.ajax.cursor,w(h+"."+I,K),w("BeforeChange."+I,K)},getAjax:function(c){H&&a(document.body).addClass(H),b.updateStatus("loading");var d=a.extend({url:c.src,success:function(d,e,f){var g={data:d,xhr:f};y("ParseAjax",g),b.appendContent(a(g.data),I),c.finished=!0,J(),b._setFocus(),setTimeout(function(){b.wrap.addClass(q)},16),b.updateStatus("ready"),y("AjaxContentAdded")},error:function(){J(),c.finished=c.loadError=!0,b.updateStatus("error",b.st.ajax.tError.replace("%url%",c.src))}},b.st.ajax.settings);return b.req=a.ajax(d),""}}});var L,M=function(c){if(c.data&&void 0!==c.data.title)return c.data.title;var d=b.st.image.titleSrc;if(d){if(a.isFunction(d))return d.call(b,c);if(c.el)return c.el.attr(d)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'
',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'The image could not be loaded.'},proto:{initImage:function(){var c=b.st.image,d=".image";b.types.push("image"),w(m+d,function(){"image"===b.currItem.type&&c.cursor&&a(document.body).addClass(c.cursor)}),w(h+d,function(){c.cursor&&a(document.body).removeClass(c.cursor),v.off("resize"+p)}),w("Resize"+d,b.resizeImage),b.isLowIE&&w("AfterChange",b.resizeImage)},resizeImage:function(){var a=b.currItem;if(a&&a.img&&b.st.image.verticalFit){var c=0;b.isLowIE&&(c=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",b.wH-c)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,L&&clearInterval(L),a.isCheckingImgSize=!1,y("ImageHasSize",a),a.imgHidden&&(b.content&&b.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var c=0,d=a.img[0],e=function(f){L&&clearInterval(L),L=setInterval(function(){return d.naturalWidth>0?void b._onImageHasSize(a):(c>200&&clearInterval(L),c++,void(3===c?e(10):40===c?e(50):100===c&&e(500)))},f)};e(1)},getImage:function(c,d){var e=0,f=function(){c&&(c.img[0].complete?(c.img.off(".mfploader"),c===b.currItem&&(b._onImageHasSize(c),b.updateStatus("ready")),c.hasSize=!0,c.loaded=!0,y("ImageLoadComplete")):(e++,200>e?setTimeout(f,100):g()))},g=function(){c&&(c.img.off(".mfploader"),c===b.currItem&&(b._onImageHasSize(c),b.updateStatus("error",h.tError.replace("%url%",c.src))),c.hasSize=!0,c.loaded=!0,c.loadError=!0)},h=b.st.image,i=d.find(".mfp-img");if(i.length){var j=document.createElement("img");j.className="mfp-img",c.el&&c.el.find("img").length&&(j.alt=c.el.find("img").attr("alt")),c.img=a(j).on("load.mfploader",f).on("error.mfploader",g),j.src=c.src,i.is("img")&&(c.img=c.img.clone()),j=c.img[0],j.naturalWidth>0?c.hasSize=!0:j.width||(c.hasSize=!1)}return b._parseMarkup(d,{title:M(c),img_replaceWith:c.img},c),b.resizeImage(),c.hasSize?(L&&clearInterval(L),c.loadError?(d.addClass("mfp-loading"),b.updateStatus("error",h.tError.replace("%url%",c.src))):(d.removeClass("mfp-loading"),b.updateStatus("ready")),d):(b.updateStatus("loading"),c.loading=!0,c.hasSize||(c.imgHidden=!0,d.addClass("mfp-loading"),b.findImageSize(c)),d)}}});var N,O=function(){return void 0===N&&(N=void 0!==document.createElement("p").style.MozTransform),N};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a,c=b.st.zoom,d=".zoom";if(c.enabled&&b.supportsTransition){var e,f,g=c.duration,j=function(a){var b=a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+c.duration/1e3+"s "+c.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,b.css(e),b},k=function(){b.content.css("visibility","visible")};w("BuildControls"+d,function(){if(b._allowZoom()){if(clearTimeout(e),b.content.css("visibility","hidden"),a=b._getItemToZoom(),!a)return void k();f=j(a),f.css(b._getOffset()),b.wrap.append(f),e=setTimeout(function(){f.css(b._getOffset(!0)),e=setTimeout(function(){k(),setTimeout(function(){f.remove(),a=f=null,y("ZoomAnimationEnded")},16)},g)},16)}}),w(i+d,function(){if(b._allowZoom()){if(clearTimeout(e),b.st.removalDelay=g,!a){if(a=b._getItemToZoom(),!a)return;f=j(a)}f.css(b._getOffset(!0)),b.wrap.append(f),b.content.css("visibility","hidden"),setTimeout(function(){f.css(b._getOffset())},16)}}),w(h+d,function(){b._allowZoom()&&(k(),f&&f.remove(),a=null)})}},_allowZoom:function(){return"image"===b.currItem.type},_getItemToZoom:function(){return b.currItem.hasSize?b.currItem.img:!1},_getOffset:function(c){var d;d=c?b.currItem.img:b.st.zoom.opener(b.currItem.el||b.currItem);var e=d.offset(),f=parseInt(d.css("padding-top"),10),g=parseInt(d.css("padding-bottom"),10);e.top-=a(window).scrollTop()-f;var h={width:d.width(),height:(u?d.innerHeight():d[0].offsetHeight)-g-f};return O()?h["-moz-transform"]=h.transform="translate("+e.left+"px,"+e.top+"px)":(h.left=e.left,h.top=e.top),h}}});var P="iframe",Q="//about:blank",R=function(a){if(b.currTemplate[P]){var c=b.currTemplate[P].find("iframe");c.length&&(a||(c[0].src=Q),b.isIE8&&c.css("display",a?"block":"none"))}};a.magnificPopup.registerModule(P,{options:{markup:'
',srcAction:"iframe_src",patterns:{youtube:{index:"youtube.com",id:"v=",src:"//www.youtube.com/embed/%id%?autoplay=1"},vimeo:{index:"vimeo.com/",id:"/",src:"//player.vimeo.com/video/%id%?autoplay=1"},gmaps:{index:"//maps.google.",src:"%id%&output=embed"}}},proto:{initIframe:function(){b.types.push(P),w("BeforeChange",function(a,b,c){b!==c&&(b===P?R():c===P&&R(!0))}),w(h+"."+P,function(){R()})},getIframe:function(c,d){var e=c.src,f=b.st.iframe;a.each(f.patterns,function(){return e.indexOf(this.index)>-1?(this.id&&(e="string"==typeof this.id?e.substr(e.lastIndexOf(this.id)+this.id.length,e.length):this.id.call(this,e)),e=this.src.replace("%id%",e),!1):void 0});var g={};return f.srcAction&&(g[f.srcAction]=e),b._parseMarkup(d,g,c),b.updateStatus("ready"),d}}});var S=function(a){var c=b.items.length;return a>c-1?a-c:0>a?c+a:a},T=function(a,b,c){return a.replace(/%curr%/gi,b+1).replace(/%total%/gi,c)};a.magnificPopup.registerModule("gallery",{options:{enabled:!1,arrowMarkup:'',preload:[0,2],navigateByImgClick:!0,arrows:!0,tPrev:"Previous (Left arrow key)",tNext:"Next (Right arrow key)",tCounter:"%curr% of %total%"},proto:{initGallery:function(){var c=b.st.gallery,e=".mfp-gallery";return b.direction=!0,c&&c.enabled?(f+=" mfp-gallery",w(m+e,function(){c.navigateByImgClick&&b.wrap.on("click"+e,".mfp-img",function(){return b.items.length>1?(b.next(),!1):void 0}),d.on("keydown"+e,function(a){37===a.keyCode?b.prev():39===a.keyCode&&b.next()})}),w("UpdateStatus"+e,function(a,c){c.text&&(c.text=T(c.text,b.currItem.index,b.items.length))}),w(l+e,function(a,d,e,f){var g=b.items.length;e.counter=g>1?T(c.tCounter,f.index,g):""}),w("BuildControls"+e,function(){if(b.items.length>1&&c.arrows&&!b.arrowLeft){var d=c.arrowMarkup,e=b.arrowLeft=a(d.replace(/%title%/gi,c.tPrev).replace(/%dir%/gi,"left")).addClass(s),f=b.arrowRight=a(d.replace(/%title%/gi,c.tNext).replace(/%dir%/gi,"right")).addClass(s);e.click(function(){b.prev()}),f.click(function(){b.next()}),b.container.append(e.add(f))}}),w(n+e,function(){b._preloadTimeout&&clearTimeout(b._preloadTimeout),b._preloadTimeout=setTimeout(function(){b.preloadNearbyImages(),b._preloadTimeout=null},16)}),void w(h+e,function(){d.off(e),b.wrap.off("click"+e),b.arrowRight=b.arrowLeft=null})):!1},next:function(){b.direction=!0,b.index=S(b.index+1),b.updateItemHTML()},prev:function(){b.direction=!1,b.index=S(b.index-1),b.updateItemHTML()},goTo:function(a){b.direction=a>=b.index,b.index=a,b.updateItemHTML()},preloadNearbyImages:function(){var a,c=b.st.gallery.preload,d=Math.min(c[0],b.items.length),e=Math.min(c[1],b.items.length);for(a=1;a<=(b.direction?e:d);a++)b._preloadItem(b.index+a);for(a=1;a<=(b.direction?d:e);a++)b._preloadItem(b.index-a)},_preloadItem:function(c){if(c=S(c),!b.items[c].preloaded){var d=b.items[c];d.parsed||(d=b.parseEl(c)),y("LazyLoad",d),"image"===d.type&&(d.img=a('').on("load.mfploader",function(){d.hasSize=!0}).on("error.mfploader",function(){d.hasSize=!0,d.loadError=!0,y("LazyLoadError",d)}).attr("src",d.src)),d.preloaded=!0}}}});var U="retina";a.magnificPopup.registerModule(U,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=b.st.retina,c=a.ratio;c=isNaN(c)?c():c,c>1&&(w("ImageHasSize."+U,function(a,b){b.img.css({"max-width":b.img[0].naturalWidth/c,width:"100%"})}),w("ElementParse."+U,function(b,d){d.src=a.replaceSrc(d,c)}))}}}}),A()}); -------------------------------------------------------------------------------- /assets/js/jquery.meanmenu.min.js: -------------------------------------------------------------------------------- 1 | !function($){"use strict";$.fn.meanmenu=function(e){var n={meanMenuTarget:jQuery(this),meanMenuContainer:"body",meanMenuClose:"X",meanMenuCloseSize:"18px",meanMenuOpen:"",meanRevealPosition:"right",meanRevealPositionDistance:"0",meanRevealColour:"",meanScreenWidth:"480",meanNavPush:"",meanShowChildren:!0,meanExpandableChildren:!0,meanExpand:"+",meanContract:"-",meanRemoveAttrs:!1,onePage:!1,meanDisplay:"block",removeElements:""};e=$.extend(n,e);var a=window.innerWidth||document.documentElement.clientWidth;return this.each(function(){var n=e.meanMenuTarget,t=e.meanMenuContainer,r=e.meanMenuClose,i=e.meanMenuCloseSize,s=e.meanMenuOpen,u=e.meanRevealPosition,m=e.meanRevealPositionDistance,l=e.meanRevealColour,o=e.meanScreenWidth,c=e.meanNavPush,v=".meanmenu-reveal",h=e.meanShowChildren,d=e.meanExpandableChildren,y=e.meanExpand,j=e.meanContract,Q=e.meanRemoveAttrs,f=e.onePage,g=e.meanDisplay,p=e.removeElements,C=!1;(navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/iPad/i)||navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/Blackberry/i)||navigator.userAgent.match(/Windows Phone/i))&&(C=!0),(navigator.userAgent.match(/MSIE 8/i)||navigator.userAgent.match(/MSIE 7/i))&&jQuery("html").css("overflow-y","scroll");var w="",x=function(){if("center"===u){var e=window.innerWidth||document.documentElement.clientWidth,n=e/2-22+"px";w="left:"+n+";right:auto;",C?jQuery(".meanmenu-reveal").animate({left:n}):jQuery(".meanmenu-reveal").css("left",n)}},A=!1,E=!1;"right"===u&&(w="right:"+m+";left:auto;"),"left"===u&&(w="left:"+m+";right:auto;"),x();var M="",P=function(){M.html(jQuery(M).is(".meanmenu-reveal.meanclose")?r:s)},W=function(){jQuery(".mean-bar,.mean-push").remove(),jQuery(t).removeClass("mean-container"),jQuery(n).css("display",g),A=!1,E=!1,jQuery(p).removeClass("mean-remove")},b=function(){var e="background:"+l+";color:"+l+";"+w;if(o>=a){jQuery(p).addClass("mean-remove"),E=!0,jQuery(t).addClass("mean-container"),jQuery(".mean-container").prepend('');var r=jQuery(n).html();jQuery(".mean-nav").html(r),Q&&jQuery("nav.mean-nav ul, nav.mean-nav ul *").each(function(){jQuery(this).is(".mean-remove")?jQuery(this).attr("class","mean-remove"):jQuery(this).removeAttr("class"),jQuery(this).removeAttr("id")}),jQuery(n).before('
'),jQuery(".mean-push").css("margin-top",c),jQuery(n).hide(),jQuery(".meanmenu-reveal").show(),jQuery(v).html(s),M=jQuery(v),jQuery(".mean-nav ul").hide(),h?d?(jQuery(".mean-nav ul ul").each(function(){jQuery(this).children().length&&jQuery(this,"li:first").parent().append(''+y+"")}),jQuery(".mean-expand").on("click",function(e){e.preventDefault(),jQuery(this).hasClass("mean-clicked")?(jQuery(this).text(y),jQuery(this).prev("ul").slideUp(300,function(){})):(jQuery(this).text(j),jQuery(this).prev("ul").slideDown(300,function(){})),jQuery(this).toggleClass("mean-clicked")})):jQuery(".mean-nav ul ul").show():jQuery(".mean-nav ul ul").hide(),jQuery(".mean-nav ul li").last().addClass("mean-last"),M.removeClass("meanclose"),jQuery(M).click(function(e){e.preventDefault(),A===!1?(M.css("text-align","center"),M.css("text-indent","0"),M.css("font-size",i),jQuery(".mean-nav ul:first").slideDown(),A=!0):(jQuery(".mean-nav ul:first").slideUp(),A=!1),M.toggleClass("meanclose"),P(),jQuery(p).addClass("mean-remove")}),f&&jQuery(".mean-nav ul > li > a:first-child").on("click",function(){jQuery(".mean-nav ul:first").slideUp(),A=!1,jQuery(M).toggleClass("meanclose").html(s)})}else W()};C||jQuery(window).resize(function(){a=window.innerWidth||document.documentElement.clientWidth,a>o,W(),o>=a?(b(),x()):W()}),jQuery(window).resize(function(){a=window.innerWidth||document.documentElement.clientWidth,C?(x(),o>=a?E===!1&&b():W()):(W(),o>=a&&(b(),x()))}),b()})}}(jQuery); -------------------------------------------------------------------------------- /assets/js/main.js: -------------------------------------------------------------------------------- 1 | (function ($) { 2 | "use strict"; 3 | 4 | $(document).ready(function($){ 5 | 6 | // testimonial sliders 7 | $(".testimonial-sliders").owlCarousel({ 8 | items: 1, 9 | loop: true, 10 | autoplay: true, 11 | responsive:{ 12 | 0:{ 13 | items:1, 14 | nav:false 15 | }, 16 | 600:{ 17 | items:1, 18 | nav:false 19 | }, 20 | 1000:{ 21 | items:1, 22 | nav:false, 23 | loop:true 24 | } 25 | } 26 | }); 27 | 28 | // homepage slider 29 | $(".homepage-slider").owlCarousel({ 30 | items: 1, 31 | loop: true, 32 | autoplay: true, 33 | nav: true, 34 | dots: false, 35 | navText: ['', ''], 36 | responsive:{ 37 | 0:{ 38 | items:1, 39 | nav:false, 40 | loop:true 41 | }, 42 | 600:{ 43 | items:1, 44 | nav:true, 45 | loop:true 46 | }, 47 | 1000:{ 48 | items:1, 49 | nav:true, 50 | loop:true 51 | } 52 | } 53 | }); 54 | 55 | // logo carousel 56 | $(".logo-carousel-inner").owlCarousel({ 57 | items: 4, 58 | loop: true, 59 | autoplay: true, 60 | margin: 30, 61 | responsive:{ 62 | 0:{ 63 | items:1, 64 | nav:false 65 | }, 66 | 600:{ 67 | items:3, 68 | nav:false 69 | }, 70 | 1000:{ 71 | items:4, 72 | nav:false, 73 | loop:true 74 | } 75 | } 76 | }); 77 | 78 | // count down 79 | if($('.time-countdown').length){ 80 | $('.time-countdown').each(function() { 81 | var $this = $(this), finalDate = $(this).data('countdown'); 82 | $this.countdown(finalDate, function(event) { 83 | var $this = $(this).html(event.strftime('' + '
%DDays
' + '
%HHours
' + '
%MMins
' + '
%SSecs
')); 84 | }); 85 | }); 86 | } 87 | 88 | // projects filters isotop 89 | $(".product-filters li").on('click', function () { 90 | 91 | $(".product-filters li").removeClass("active"); 92 | $(this).addClass("active"); 93 | 94 | var selector = $(this).attr('data-filter'); 95 | 96 | $(".product-lists").isotope({ 97 | filter: selector, 98 | }); 99 | 100 | }); 101 | 102 | // isotop inner 103 | $(".product-lists").isotope(); 104 | 105 | // magnific popup 106 | $('.popup-youtube').magnificPopup({ 107 | disableOn: 700, 108 | type: 'iframe', 109 | mainClass: 'mfp-fade', 110 | removalDelay: 160, 111 | preloader: false, 112 | fixedContentPos: false 113 | }); 114 | 115 | // light box 116 | $('.image-popup-vertical-fit').magnificPopup({ 117 | type: 'image', 118 | closeOnContentClick: true, 119 | mainClass: 'mfp-img-mobile', 120 | image: { 121 | verticalFit: true 122 | } 123 | }); 124 | 125 | // homepage slides animations 126 | $(".homepage-slider").on("translate.owl.carousel", function(){ 127 | $(".hero-text-tablecell .subtitle").removeClass("animated fadeInUp").css({'opacity': '0'}); 128 | $(".hero-text-tablecell h1").removeClass("animated fadeInUp").css({'opacity': '0', 'animation-delay' : '0.3s'}); 129 | $(".hero-btns").removeClass("animated fadeInUp").css({'opacity': '0', 'animation-delay' : '0.5s'}); 130 | }); 131 | 132 | $(".homepage-slider").on("translated.owl.carousel", function(){ 133 | $(".hero-text-tablecell .subtitle").addClass("animated fadeInUp").css({'opacity': '0'}); 134 | $(".hero-text-tablecell h1").addClass("animated fadeInUp").css({'opacity': '0', 'animation-delay' : '0.3s'}); 135 | $(".hero-btns").addClass("animated fadeInUp").css({'opacity': '0', 'animation-delay' : '0.5s'}); 136 | }); 137 | 138 | 139 | 140 | // stikcy js 141 | $("#sticker").sticky({ 142 | topSpacing: 0 143 | }); 144 | 145 | //mean menu 146 | $('.main-menu').meanmenu({ 147 | meanMenuContainer: '.mobile-menu', 148 | meanScreenWidth: "992" 149 | }); 150 | 151 | // search form 152 | $(".search-bar-icon").on("click", function(){ 153 | $(".search-area").addClass("search-active"); 154 | }); 155 | 156 | $(".close-btn").on("click", function() { 157 | $(".search-area").removeClass("search-active"); 158 | }); 159 | 160 | }); 161 | 162 | 163 | jQuery(window).on("load",function(){ 164 | jQuery(".loader").fadeOut(1000); 165 | }); 166 | 167 | 168 | }(jQuery)); -------------------------------------------------------------------------------- /assets/js/sticker.js: -------------------------------------------------------------------------------- 1 | // Sticky Plugin v1.0.4 for jQuery 2 | // ============= 3 | // Author: Anthony Garand 4 | // Improvements by German M. Bravo (Kronuz) and Ruud Kamphuis (ruudk) 5 | // Improvements by Leonardo C. Daronco (daronco) 6 | // Created: 02/14/2011 7 | // Date: 07/20/2015 8 | // Website: http://stickyjs.com/ 9 | // Description: Makes an element on the page stick on the screen as you scroll 10 | // It will only set the 'top' and 'position' of your element, you 11 | // might need to adjust the width in some cases. 12 | 13 | (function (factory) { 14 | if (typeof define === 'function' && define.amd) { 15 | // AMD. Register as an anonymous module. 16 | define(['jquery'], factory); 17 | } else if (typeof module === 'object' && module.exports) { 18 | // Node/CommonJS 19 | module.exports = factory(require('jquery')); 20 | } else { 21 | // Browser globals 22 | factory(jQuery); 23 | } 24 | }(function ($) { 25 | var slice = Array.prototype.slice; // save ref to original slice() 26 | var splice = Array.prototype.splice; // save ref to original slice() 27 | 28 | var defaults = { 29 | topSpacing: 0, 30 | bottomSpacing: 0, 31 | className: 'is-sticky', 32 | wrapperClassName: 'sticky-wrapper', 33 | center: false, 34 | getWidthFrom: '', 35 | widthFromWrapper: true, // works only when .getWidthFrom is empty 36 | responsiveWidth: false, 37 | zIndex: 'inherit' 38 | }, 39 | $window = $(window), 40 | $document = $(document), 41 | sticked = [], 42 | windowHeight = $window.height(), 43 | scroller = function() { 44 | var scrollTop = $window.scrollTop(), 45 | documentHeight = $document.height(), 46 | dwh = documentHeight - windowHeight, 47 | extra = (scrollTop > dwh) ? dwh - scrollTop : 0; 48 | 49 | for (var i = 0, l = sticked.length; i < l; i++) { 50 | var s = sticked[i], 51 | elementTop = s.stickyWrapper.offset().top, 52 | etse = elementTop - s.topSpacing - extra; 53 | 54 | //update height in case of dynamic content 55 | s.stickyWrapper.css('height', s.stickyElement.outerHeight()); 56 | 57 | if (scrollTop <= etse) { 58 | if (s.currentTop !== null) { 59 | s.stickyElement 60 | .css({ 61 | 'width': '', 62 | 'position': '', 63 | 'top': '', 64 | 'z-index': '' 65 | }); 66 | s.stickyElement.parent().removeClass(s.className); 67 | s.stickyElement.trigger('sticky-end', [s]); 68 | s.currentTop = null; 69 | } 70 | } 71 | else { 72 | var newTop = documentHeight - s.stickyElement.outerHeight() 73 | - s.topSpacing - s.bottomSpacing - scrollTop - extra; 74 | if (newTop < 0) { 75 | newTop = newTop + s.topSpacing; 76 | } else { 77 | newTop = s.topSpacing; 78 | } 79 | if (s.currentTop !== newTop) { 80 | var newWidth; 81 | if (s.getWidthFrom) { 82 | padding = s.stickyElement.innerWidth() - s.stickyElement.width(); 83 | newWidth = $(s.getWidthFrom).width() - padding || null; 84 | } else if (s.widthFromWrapper) { 85 | newWidth = s.stickyWrapper.width(); 86 | } 87 | if (newWidth == null) { 88 | newWidth = s.stickyElement.width(); 89 | } 90 | s.stickyElement 91 | .css('width', newWidth) 92 | .css('position', 'fixed') 93 | .css('top', newTop) 94 | .css('z-index', s.zIndex); 95 | 96 | s.stickyElement.parent().addClass(s.className); 97 | 98 | if (s.currentTop === null) { 99 | s.stickyElement.trigger('sticky-start', [s]); 100 | } else { 101 | // sticky is started but it have to be repositioned 102 | s.stickyElement.trigger('sticky-update', [s]); 103 | } 104 | 105 | if (s.currentTop === s.topSpacing && s.currentTop > newTop || s.currentTop === null && newTop < s.topSpacing) { 106 | // just reached bottom || just started to stick but bottom is already reached 107 | s.stickyElement.trigger('sticky-bottom-reached', [s]); 108 | } else if(s.currentTop !== null && newTop === s.topSpacing && s.currentTop < newTop) { 109 | // sticky is started && sticked at topSpacing && overflowing from top just finished 110 | s.stickyElement.trigger('sticky-bottom-unreached', [s]); 111 | } 112 | 113 | s.currentTop = newTop; 114 | } 115 | 116 | // Check if sticky has reached end of container and stop sticking 117 | var stickyWrapperContainer = s.stickyWrapper.parent(); 118 | var unstick = (s.stickyElement.offset().top + s.stickyElement.outerHeight() >= stickyWrapperContainer.offset().top + stickyWrapperContainer.outerHeight()) && (s.stickyElement.offset().top <= s.topSpacing); 119 | 120 | if( unstick ) { 121 | s.stickyElement 122 | .css('position', 'absolute') 123 | .css('top', '') 124 | .css('bottom', 0) 125 | .css('z-index', ''); 126 | } else { 127 | s.stickyElement 128 | .css('position', 'fixed') 129 | .css('top', newTop) 130 | .css('bottom', '') 131 | .css('z-index', s.zIndex); 132 | } 133 | } 134 | } 135 | }, 136 | resizer = function() { 137 | windowHeight = $window.height(); 138 | 139 | for (var i = 0, l = sticked.length; i < l; i++) { 140 | var s = sticked[i]; 141 | var newWidth = null; 142 | if (s.getWidthFrom) { 143 | if (s.responsiveWidth) { 144 | newWidth = $(s.getWidthFrom).width(); 145 | } 146 | } else if(s.widthFromWrapper) { 147 | newWidth = s.stickyWrapper.width(); 148 | } 149 | if (newWidth != null) { 150 | s.stickyElement.css('width', newWidth); 151 | } 152 | } 153 | }, 154 | methods = { 155 | init: function(options) { 156 | return this.each(function() { 157 | var o = $.extend({}, defaults, options); 158 | var stickyElement = $(this); 159 | 160 | var stickyId = stickyElement.attr('id'); 161 | var wrapperId = stickyId ? stickyId + '-' + defaults.wrapperClassName : defaults.wrapperClassName; 162 | var wrapper = $('
') 163 | .attr('id', wrapperId) 164 | .addClass(o.wrapperClassName); 165 | 166 | stickyElement.wrapAll(function() { 167 | if ($(this).parent("#" + wrapperId).length == 0) { 168 | return wrapper; 169 | } 170 | }); 171 | 172 | var stickyWrapper = stickyElement.parent(); 173 | 174 | if (o.center) { 175 | stickyWrapper.css({width:stickyElement.outerWidth(),marginLeft:"auto",marginRight:"auto"}); 176 | } 177 | 178 | if (stickyElement.css("float") === "right") { 179 | stickyElement.css({"float":"none"}).parent().css({"float":"right"}); 180 | } 181 | 182 | o.stickyElement = stickyElement; 183 | o.stickyWrapper = stickyWrapper; 184 | o.currentTop = null; 185 | 186 | sticked.push(o); 187 | 188 | methods.setWrapperHeight(this); 189 | methods.setupChangeListeners(this); 190 | }); 191 | }, 192 | 193 | setWrapperHeight: function(stickyElement) { 194 | var element = $(stickyElement); 195 | var stickyWrapper = element.parent(); 196 | if (stickyWrapper) { 197 | stickyWrapper.css('height', element.outerHeight()); 198 | } 199 | }, 200 | 201 | setupChangeListeners: function(stickyElement) { 202 | if (window.MutationObserver) { 203 | var mutationObserver = new window.MutationObserver(function(mutations) { 204 | if (mutations[0].addedNodes.length || mutations[0].removedNodes.length) { 205 | methods.setWrapperHeight(stickyElement); 206 | } 207 | }); 208 | mutationObserver.observe(stickyElement, {subtree: true, childList: true}); 209 | } else { 210 | if (window.addEventListener) { 211 | stickyElement.addEventListener('DOMNodeInserted', function() { 212 | methods.setWrapperHeight(stickyElement); 213 | }, false); 214 | stickyElement.addEventListener('DOMNodeRemoved', function() { 215 | methods.setWrapperHeight(stickyElement); 216 | }, false); 217 | } else if (window.attachEvent) { 218 | stickyElement.attachEvent('onDOMNodeInserted', function() { 219 | methods.setWrapperHeight(stickyElement); 220 | }); 221 | stickyElement.attachEvent('onDOMNodeRemoved', function() { 222 | methods.setWrapperHeight(stickyElement); 223 | }); 224 | } 225 | } 226 | }, 227 | update: scroller, 228 | unstick: function(options) { 229 | return this.each(function() { 230 | var that = this; 231 | var unstickyElement = $(that); 232 | 233 | var removeIdx = -1; 234 | var i = sticked.length; 235 | while (i-- > 0) { 236 | if (sticked[i].stickyElement.get(0) === that) { 237 | splice.call(sticked,i,1); 238 | removeIdx = i; 239 | } 240 | } 241 | if(removeIdx !== -1) { 242 | unstickyElement.unwrap(); 243 | unstickyElement 244 | .css({ 245 | 'width': '', 246 | 'position': '', 247 | 'top': '', 248 | 'float': '', 249 | 'z-index': '' 250 | }) 251 | ; 252 | } 253 | }); 254 | } 255 | }; 256 | 257 | // should be more efficient than using $window.scroll(scroller) and $window.resize(resizer): 258 | if (window.addEventListener) { 259 | window.addEventListener('scroll', scroller, false); 260 | window.addEventListener('resize', resizer, false); 261 | } else if (window.attachEvent) { 262 | window.attachEvent('onscroll', scroller); 263 | window.attachEvent('onresize', resizer); 264 | } 265 | 266 | $.fn.sticky = function(method) { 267 | if (methods[method]) { 268 | return methods[method].apply(this, slice.call(arguments, 1)); 269 | } else if (typeof method === 'object' || !method ) { 270 | return methods.init.apply( this, arguments ); 271 | } else { 272 | $.error('Method ' + method + ' does not exist on jQuery.sticky'); 273 | } 274 | }; 275 | 276 | $.fn.unstick = function(method) { 277 | if (methods[method]) { 278 | return methods[method].apply(this, slice.call(arguments, 1)); 279 | } else if (typeof method === 'object' || !method ) { 280 | return methods.unstick.apply( this, arguments ); 281 | } else { 282 | $.error('Method ' + method + ' does not exist on jQuery.sticky'); 283 | } 284 | }; 285 | $(function() { 286 | setTimeout(scroller, 0); 287 | }); 288 | })); 289 | -------------------------------------------------------------------------------- /assets/js/waypoints.js: -------------------------------------------------------------------------------- 1 | // Generated by CoffeeScript 1.6.2 2 | /* 3 | jQuery Waypoints - v2.0.3 4 | Copyright (c) 2011-2013 Caleb Troughton 5 | Dual licensed under the MIT license and GPL license. 6 | https://github.com/imakewebthings/jquery-waypoints/blob/master/licenses.txt 7 | */ 8 | (function(){var t=[].indexOf||function(t){for(var e=0,n=this.length;e=0;s={horizontal:{},vertical:{}};f=1;a={};u="waypoints-context-id";p="resize.waypoints";y="scroll.waypoints";v=1;w="waypoints-waypoint-ids";g="waypoint";m="waypoints";o=function(){function t(t){var e=this;this.$element=t;this.element=t[0];this.didResize=false;this.didScroll=false;this.id="context"+f++;this.oldScroll={x:t.scrollLeft(),y:t.scrollTop()};this.waypoints={horizontal:{},vertical:{}};t.data(u,this.id);a[this.id]=this;t.bind(y,function(){var t;if(!(e.didScroll||c)){e.didScroll=true;t=function(){e.doScroll();return e.didScroll=false};return r.setTimeout(t,n[m].settings.scrollThrottle)}});t.bind(p,function(){var t;if(!e.didResize){e.didResize=true;t=function(){n[m]("refresh");return e.didResize=false};return r.setTimeout(t,n[m].settings.resizeThrottle)}})}t.prototype.doScroll=function(){var t,e=this;t={horizontal:{newScroll:this.$element.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.$element.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};if(c&&(!t.vertical.oldScroll||!t.vertical.newScroll)){n[m]("refresh")}n.each(t,function(t,r){var i,o,l;l=[];o=r.newScroll>r.oldScroll;i=o?r.forward:r.backward;n.each(e.waypoints[t],function(t,e){var n,i;if(r.oldScroll<(n=e.offset)&&n<=r.newScroll){return l.push(e)}else if(r.newScroll<(i=e.offset)&&i<=r.oldScroll){return l.push(e)}});l.sort(function(t,e){return t.offset-e.offset});if(!o){l.reverse()}return n.each(l,function(t,e){if(e.options.continuous||t===l.length-1){return e.trigger([i])}})});return this.oldScroll={x:t.horizontal.newScroll,y:t.vertical.newScroll}};t.prototype.refresh=function(){var t,e,r,i=this;r=n.isWindow(this.element);e=this.$element.offset();this.doScroll();t={horizontal:{contextOffset:r?0:e.left,contextScroll:r?0:this.oldScroll.x,contextDimension:this.$element.width(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:r?0:e.top,contextScroll:r?0:this.oldScroll.y,contextDimension:r?n[m]("viewportHeight"):this.$element.height(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};return n.each(t,function(t,e){return n.each(i.waypoints[t],function(t,r){var i,o,l,s,f;i=r.options.offset;l=r.offset;o=n.isWindow(r.element)?0:r.$element.offset()[e.offsetProp];if(n.isFunction(i)){i=i.apply(r.element)}else if(typeof i==="string"){i=parseFloat(i);if(r.options.offset.indexOf("%")>-1){i=Math.ceil(e.contextDimension*i/100)}}r.offset=o-e.contextOffset+e.contextScroll-i;if(r.options.onlyOnScroll&&l!=null||!r.enabled){return}if(l!==null&&l<(s=e.oldScroll)&&s<=r.offset){return r.trigger([e.backward])}else if(l!==null&&l>(f=e.oldScroll)&&f>=r.offset){return r.trigger([e.forward])}else if(l===null&&e.oldScroll>=r.offset){return r.trigger([e.forward])}})})};t.prototype.checkEmpty=function(){if(n.isEmptyObject(this.waypoints.horizontal)&&n.isEmptyObject(this.waypoints.vertical)){this.$element.unbind([p,y].join(" "));return delete a[this.id]}};return t}();l=function(){function t(t,e,r){var i,o;r=n.extend({},n.fn[g].defaults,r);if(r.offset==="bottom-in-view"){r.offset=function(){var t;t=n[m]("viewportHeight");if(!n.isWindow(e.element)){t=e.$element.height()}return t-n(this).outerHeight()}}this.$element=t;this.element=t[0];this.axis=r.horizontal?"horizontal":"vertical";this.callback=r.handler;this.context=e;this.enabled=r.enabled;this.id="waypoints"+v++;this.offset=null;this.options=r;e.waypoints[this.axis][this.id]=this;s[this.axis][this.id]=this;i=(o=t.data(w))!=null?o:[];i.push(this.id);t.data(w,i)}t.prototype.trigger=function(t){if(!this.enabled){return}if(this.callback!=null){this.callback.apply(this.element,t)}if(this.options.triggerOnce){return this.destroy()}};t.prototype.disable=function(){return this.enabled=false};t.prototype.enable=function(){this.context.refresh();return this.enabled=true};t.prototype.destroy=function(){delete s[this.axis][this.id];delete this.context.waypoints[this.axis][this.id];return this.context.checkEmpty()};t.getWaypointsByElement=function(t){var e,r;r=n(t).data(w);if(!r){return[]}e=n.extend({},s.horizontal,s.vertical);return n.map(r,function(t){return e[t]})};return t}();d={init:function(t,e){var r;if(e==null){e={}}if((r=e.handler)==null){e.handler=t}this.each(function(){var t,r,i,s;t=n(this);i=(s=e.context)!=null?s:n.fn[g].defaults.context;if(!n.isWindow(i)){i=t.closest(i)}i=n(i);r=a[i.data(u)];if(!r){r=new o(i)}return new l(t,r,e)});n[m]("refresh");return this},disable:function(){return d._invoke(this,"disable")},enable:function(){return d._invoke(this,"enable")},destroy:function(){return d._invoke(this,"destroy")},prev:function(t,e){return d._traverse.call(this,t,e,function(t,e,n){if(e>0){return t.push(n[e-1])}})},next:function(t,e){return d._traverse.call(this,t,e,function(t,e,n){if(et.oldScroll.y})},left:function(t){if(t==null){t=r}return h._filter(t,"horizontal",function(t,e){return e.offset<=t.oldScroll.x})},right:function(t){if(t==null){t=r}return h._filter(t,"horizontal",function(t,e){return e.offset>t.oldScroll.x})},enable:function(){return h._invoke("enable")},disable:function(){return h._invoke("disable")},destroy:function(){return h._invoke("destroy")},extendFn:function(t,e){return d[t]=e},_invoke:function(t){var e;e=n.extend({},s.vertical,s.horizontal);return n.each(e,function(e,n){n[t]();return true})},_filter:function(t,e,r){var i,o;i=a[n(t).data(u)];if(!i){return[]}o=[];n.each(i.waypoints[e],function(t,e){if(r(i,e)){return o.push(e)}});o.sort(function(t,e){return t.offset-e.offset});return n.map(o,function(t){return t.element})}};n[m]=function(){var t,n;n=arguments[0],t=2<=arguments.length?e.call(arguments,1):[];if(h[n]){return h[n].apply(null,t)}else{return h.aggregate.call(null,n)}};n[m].settings={resizeThrottle:100,scrollThrottle:30};return i.load(function(){return n[m]("refresh")})})}).call(this); -------------------------------------------------------------------------------- /assets/webfonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-brands-400.eot -------------------------------------------------------------------------------- /assets/webfonts/fa-brands-400.eot_: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-brands-400.eot_ -------------------------------------------------------------------------------- /assets/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /assets/webfonts/fa-brands-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-brands-400.woff -------------------------------------------------------------------------------- /assets/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /assets/webfonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-regular-400.eot -------------------------------------------------------------------------------- /assets/webfonts/fa-regular-400.eot_: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-regular-400.eot_ -------------------------------------------------------------------------------- /assets/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /assets/webfonts/fa-regular-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-regular-400.woff -------------------------------------------------------------------------------- /assets/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /assets/webfonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-solid-900.eot -------------------------------------------------------------------------------- /assets/webfonts/fa-solid-900.eot_: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-solid-900.eot_ -------------------------------------------------------------------------------- /assets/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /assets/webfonts/fa-solid-900.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-solid-900.woff -------------------------------------------------------------------------------- /assets/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/assets/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/composer.json -------------------------------------------------------------------------------- /config/Database.php: -------------------------------------------------------------------------------- 1 | conn = null; 13 | 14 | try { 15 | $this->conn = new PDO('mysql:host=' . $this->host . ';dbname=' . $this->db_name, $this->username, $this->password); 16 | $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 17 | } catch(PDOException $e) { 18 | echo 'Connection Error: ' . $e->getMessage(); 19 | } 20 | 21 | return $this->conn; 22 | } 23 | } -------------------------------------------------------------------------------- /connect.php: -------------------------------------------------------------------------------- 1 | connect_error) { 10 | die("Connection failed: " . $conn->connect_error); 11 | } 12 | ?> -------------------------------------------------------------------------------- /dish.php: -------------------------------------------------------------------------------- 1 | connect_error) 9 | { 10 | die("Connection failed: " . $conn->connect_error); 11 | } 12 | ?> 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | RwemaAPI-Resto 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 |
52 |
53 |
54 |
55 |
56 | 57 | 58 | 59 |
60 |
61 |
62 |
63 | 94 |
95 |
96 |
97 |
98 | 99 | 100 | 101 |
102 |
103 |
104 |
105 | 106 | 118 |
119 |
120 |
121 |
122 | 123 |
124 |
125 |
126 |
127 |
128 |
129 |

supervision & rating

130 |

culinary health supervision and rating agency in Rwanda

131 |
132 |
133 |
134 |
135 |
136 |
137 | 138 | 139 | 140 | 141 |
142 |
143 |
144 |
145 |
146 |

The Dishes for this restaurant equals 147 | 148 | query($quer); 156 | $num = $result->num_rows; 157 | echo ''.$num.''; 158 | } 159 | 160 | ?> 161 | 162 | 163 | 164 |

165 | 166 | 167 |
168 |
169 |
170 | 171 | 172 | 173 | 174 | query($query1); 182 | 183 | 184 | if ($result->num_rows > 0){ 185 | while($row = $result->fetch_array()) { 186 | 187 | echo ""; 188 | echo ""; 189 | echo ""; 190 | echo ""; 191 | echo ""; 192 | $pic_one ='".$pic_one.""; 194 | $pic_two='".$pic_two.""; 196 | $pic_three='".$pic_three.""; 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | } 207 | 208 | } 209 | else{ 210 | echo "No dish found Fund for this restaurant"; 211 | } 212 | } 213 | 214 | ?> 215 | 216 | 217 |
Restaurant_IdDish_Name cooking_time ingredients dish_pricepic_onepic_twopic_three
".$row['restaurant_id']."".$row['dishname']."".$row['cooking_time']."".$row['ingredients']."".$row['dish_price']."
218 | 219 | 220 |
221 |
222 | 223 | 224 | 268 | 269 | 270 | 271 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | -------------------------------------------------------------------------------- /here.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rwema3/api/13f0540d5c0f1b0c9c40fd7044423628fa9a2ac4/here.gif -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | connect_error) 10 | { 11 | die("Connection failed: " . $conn->connect_error); 12 | } 13 | 14 | if(isset($_POST['search'])){ 15 | $searchq = $_POST['search']; 16 | $sql = "SELECT * FROM restaurants WHERE location LIKE '%$searchq%' OR rating like '%$searchq%' "; 17 | 18 | $count = $conn->query($sql); 19 | 20 | if ($count->num_rows > 0){ 21 | 22 | while($row = $count->fetch_array()) { 23 | 24 | $restaurant_id = $row['restaurant_id']; 25 | $restaurant_name = $row['restaurant_name']; 26 | $owner = $row['owner']; 27 | $rating = $row['rating']; 28 | $location = $row['location']; 29 | 30 | $output .= '
'.$restaurant_name.' '.$location.'
'; 31 | 32 | } 33 | 34 | 35 | 36 | } 37 | } 38 | ?> 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | RwemaAPI-Resto 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 |
77 |
78 |
79 |
80 |
81 | 82 | 83 | 84 |
85 |
86 |
87 |
88 | 119 |
120 |
121 |
122 |
123 | 124 | 125 | 126 |
127 |
128 |
129 |
130 | 131 | 143 |
144 |
145 |
146 |
147 | 148 | 149 | 150 |
151 |
152 |
153 |
154 |
155 |
156 |

supervision & rating

157 |

culinary health supervision and rating agency in Rwanda

158 |
159 |
160 |
161 |
162 |
163 |
164 | 165 | 166 | 167 | 168 | 169 |
170 |
171 |
172 |
173 |
174 |

The available Restaurants 175 | query($quer); 179 | $num = $result->num_rows; 180 | echo ''.$num.''; 181 | ?> 182 |

183 | 184 |
185 |
186 |
187 | 188 | 189 | 190 | 191 | 192 | query($query1); 197 | 198 | if ($result->num_rows > 0){ 199 | while($row = $result->fetch_assoc()) { 200 | 201 | echo ""; 202 | echo ""; 203 | echo ""; 204 | echo ""; 205 | echo ""; 206 | echo ""; 207 | 208 | } 209 | 210 | } 211 | 212 | ?> 213 | 214 | 215 |
Restaurant_IdRestaurant_Name owner Rating locationView Dishes Here
".$row['restaurant_id']."".$row['restaurant_name']."".$row['owner']."".$row['rating']." Stars".$row['location']."Here
216 | 217 |
218 |
219 | 220 | 221 | 265 | 266 | 267 | 268 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | -------------------------------------------------------------------------------- /models/Dish.php: -------------------------------------------------------------------------------- 1 | conn = $db; 22 | } 23 | 24 | // Get dishes 25 | public function read() { 26 | // Create query 27 | $query = 'SELECT r.restaurant_name as restaurant_name, 28 | d.id, 29 | d.restaurant_id, 30 | d.cooking_time, 31 | d.dishname, 32 | d.ingredients, 33 | d.dish_price, 34 | d.pic_one, 35 | d.pic_two, 36 | d.pic_three, 37 | d.created_at 38 | FROM ' . $this->table . ' d 39 | LEFT JOIN 40 | restaurants r ON d.restaurant_id = r.restaurant_id 41 | ORDER BY 42 | d.created_at DESC'; 43 | 44 | // Prepare statement 45 | $stmt = $this->conn->prepare($query); 46 | 47 | // Execute query 48 | $stmt->execute(); 49 | return $stmt; 50 | } 51 | 52 | // Get Single Dish 53 | public function read_single() { 54 | // Create query 55 | $query = 'SELECT r.restaurant_name as restaurant_name, 56 | d.id, 57 | d.restaurant_id, 58 | d.dishname, 59 | d.cooking_time, 60 | d.ingredients, 61 | d.dish_price, 62 | d.pic_one, 63 | d.pic_two, 64 | d.pic_three, 65 | d.created_at 66 | 67 | FROM ' . $this->table . ' d LEFT JOIN 68 | restaurants r ON d.restaurant_id = r.restaurant_id 69 | WHERE 70 | d.id = ? 71 | LIMIT 0,1'; 72 | 73 | // Prepare statement 74 | $stmt = $this->conn->prepare($query); 75 | 76 | // Bind ID 77 | $stmt->bindParam(1, $this->id); 78 | 79 | // Execute query 80 | $stmt->execute(); 81 | 82 | $row = $stmt->fetch(PDO::FETCH_ASSOC); 83 | 84 | // Set properties 85 | 86 | $this->id = $row['id']; 87 | $this->restaurant_id = $row['restaurant_id']; 88 | $this->dishname = $row['dishname']; 89 | $this->cooking_time = $row['cooking_time']; 90 | $this->ingredients = $row['ingredients']; 91 | $this->dish_price = $row['dish_price']; 92 | $this->pic_one = $row['pic_one']; 93 | $this->pic_two = $row['pic_two']; 94 | $this->pic_three = $row['pic_three']; 95 | $this->created_at = $row['created_at']; 96 | 97 | } 98 | 99 | // Create Dish 100 | public function create() { 101 | // Create query 102 | $query = 'INSERT INTO ' . $this->table . ' SET 103 | id = :id, 104 | restaurant_id = :restaurant_id, 105 | dishname = :dishname, 106 | cooking_time = :cooking_time, 107 | ingredients = :ingredients, 108 | dish_price = :dish_price 109 | ' 110 | ; 111 | 112 | // Prepare statement 113 | $stmt = $this->conn->prepare($query); 114 | 115 | // Clean data 116 | $this->id = htmlspecialchars(strip_tags($this->id)); 117 | $this->restaurant_id = htmlspecialchars(strip_tags($this->restaurant_id)); 118 | $this->dishname = htmlspecialchars(strip_tags($this->dishname)); 119 | $this->cooking_time = htmlspecialchars(strip_tags($this->cooking_time)); 120 | $this->ingredients = htmlspecialchars(strip_tags($this->ingredients)); 121 | $this->dish_price = htmlspecialchars(strip_tags($this->dish_price)); 122 | 123 | // Bind data 124 | $stmt->bindParam(':id', $this->id); 125 | $stmt->bindParam(':restaurant_id', $this->restaurant_id); 126 | $stmt->bindParam(':dishname', $this->dishname); 127 | $stmt->bindParam(':cooking_time', $this->cooking_time); 128 | $stmt->bindParam(':ingredients', $this->ingredients); 129 | $stmt->bindParam(':dish_price', $this->dish_price); 130 | 131 | // Execute query 132 | if($stmt->execute()) { 133 | return true; 134 | } 135 | 136 | // Print error if something goes wrong 137 | printf("Error: %s.\n", $stmt->error); 138 | 139 | return false; 140 | } 141 | 142 | 143 | // UPDATE Dish 144 | public function update() { 145 | // Create query 146 | $query = 'UPDATE ' . 147 | $this->table . ' 148 | SET 149 | restaurant_id = :restaurant_id, 150 | dishname = :dishname, 151 | cooking_time = :cooking_time, 152 | ingredients = :ingredients, 153 | dish_price = :dish_price 154 | WHERE id =:id' ; 155 | 156 | // Prepare statement 157 | $stmt = $this->conn->prepare($query); 158 | 159 | // Clean data 160 | $this->id = htmlspecialchars(strip_tags($this->id)); 161 | $this->restaurant_id = htmlspecialchars(strip_tags($this->restaurant_id)); 162 | $this->dishname = htmlspecialchars(strip_tags($this->dishname)); 163 | $this->cooking_time = htmlspecialchars(strip_tags($this->cooking_time)); 164 | $this->ingredients = htmlspecialchars(strip_tags($this->ingredients)); 165 | $this->dish_price = htmlspecialchars(strip_tags($this->dish_price)); 166 | 167 | // Bind data 168 | $stmt->bindParam(':id', $this->id); 169 | $stmt->bindParam(':restaurant_id', $this->restaurant_id); 170 | $stmt->bindParam(':dishname', $this->dishname); 171 | $stmt->bindParam(':cooking_time', $this->cooking_time); 172 | $stmt->bindParam(':ingredients', $this->ingredients); 173 | $stmt->bindParam(':dish_price', $this->dish_price); 174 | 175 | // Execute query 176 | if($stmt->execute()) { 177 | return true; 178 | } 179 | 180 | // Print error if something goes wrong 181 | printf("Error: %s.\n", $stmt->error); 182 | 183 | return false; 184 | } 185 | 186 | public function delete() { 187 | // Create query 188 | $query = 'DELETE FROM ' . $this->table . ' WHERE id = :id'; 189 | 190 | // Prepare statement 191 | $stmt = $this->conn->prepare($query); 192 | 193 | // Clean data 194 | $this->id = htmlspecialchars(strip_tags($this->id)); 195 | 196 | // Bind data 197 | $stmt->bindParam(':id', $this->id); 198 | 199 | // Execute query 200 | if($stmt->execute()) { 201 | return true; 202 | } 203 | 204 | // Print error if something goes wrong 205 | printf("Error: %s.\n", $stmt->error); 206 | 207 | return false; 208 | } 209 | 210 | 211 | } 212 | -------------------------------------------------------------------------------- /models/Restaurants.php: -------------------------------------------------------------------------------- 1 | conn = $db; 18 | } 19 | 20 | // Get dishes 21 | public function allrestaurants() { 22 | // Create query 23 | $query = 'SELECT r.restaurant_name as restaurant_name, 24 | 25 | d.restaurant_id, 26 | d.restaurant_name, 27 | d.owner, 28 | d.rating, 29 | d.location, 30 | d.created_at 31 | FROM ' . $this->table . ' d 32 | LEFT JOIN 33 | restaurants r ON d.restaurant_id = r.restaurant_id 34 | ORDER BY 35 | d.created_at DESC'; 36 | 37 | // Prepare statement 38 | $stmt = $this->conn->prepare($query); 39 | 40 | // Execute query 41 | $stmt->execute(); 42 | return $stmt; 43 | } 44 | 45 | // Create Dish 46 | public function create() { 47 | // Create query 48 | $query = 'INSERT INTO ' . $this->table . ' SET 49 | 50 | restaurant_id = :restaurant_id, 51 | restaurant_name = :restaurant_name, 52 | owner = :owner, 53 | rating = :rating, 54 | location = :location 55 | ' 56 | ; 57 | 58 | // Prepare statement 59 | $stmt = $this->conn->prepare($query); 60 | 61 | // Clean data 62 | 63 | $this->restaurant_id = htmlspecialchars(strip_tags($this->restaurant_id)); 64 | $this->restaurant_name = htmlspecialchars(strip_tags($this->restaurant_name)); 65 | $this->owner = htmlspecialchars(strip_tags($this->owner)); 66 | $this->rating = htmlspecialchars(strip_tags($this->rating)); 67 | $this->location = htmlspecialchars(strip_tags($this->location)); 68 | 69 | // Bind data 70 | $stmt->bindParam(':restaurant_id', $this->restaurant_id); 71 | $stmt->bindParam(':restaurant_name', $this->restaurant_name); 72 | $stmt->bindParam(':owner', $this->owner); 73 | $stmt->bindParam(':rating', $this->rating); 74 | $stmt->bindParam(':location', $this->location); 75 | 76 | // Execute query 77 | if($stmt->execute()) { 78 | return true; 79 | } 80 | 81 | // Print error if something goes wrong 82 | printf("Error: %s.\n", $stmt->error); 83 | 84 | return false; 85 | } 86 | 87 | 88 | // UPDATE Dish 89 | public function update() { 90 | 91 | $query = 'UPDATE ' . 92 | $this->table . ' 93 | SET 94 | restaurant_name = :restaurant_name, 95 | owner = :owner, 96 | rating = :rating, 97 | location = :location 98 | 99 | WHERE restaurant_id =:restaurant_id' ; 100 | 101 | // Prepare statement 102 | $stmt = $this->conn->prepare($query); 103 | 104 | // Clean data 105 | 106 | $this->restaurant_id = htmlspecialchars(strip_tags($this->restaurant_id)); 107 | $this->restaurant_name = htmlspecialchars(strip_tags($this->restaurant_name)); 108 | $this->owner = htmlspecialchars(strip_tags($this->owner)); 109 | $this->rating = htmlspecialchars(strip_tags($this->rating)); 110 | $this->location = htmlspecialchars(strip_tags($this->location)); 111 | 112 | // Bind data 113 | $stmt->bindParam(':restaurant_id', $this->restaurant_id); 114 | $stmt->bindParam(':restaurant_name', $this->restaurant_name); 115 | $stmt->bindParam(':owner', $this->owner); 116 | $stmt->bindParam(':rating', $this->rating); 117 | $stmt->bindParam(':location', $this->location); 118 | // Execute query 119 | if($stmt->execute()) { 120 | return true; 121 | } 122 | 123 | // Print error if something goes wrong 124 | printf("Error: %s.\n", $stmt->error); 125 | 126 | return false; 127 | } 128 | 129 | public function delete() { 130 | // Create query 131 | $query = 'DELETE FROM ' . $this->table . ' WHERE restaurant_id = :restaurant_id'; 132 | 133 | // Prepare statement 134 | $stmt = $this->conn->prepare($query); 135 | 136 | // Clean data 137 | $this->restaurant_id = htmlspecialchars(strip_tags($this->restaurant_id)); 138 | 139 | // Bind data 140 | $stmt->bindParam(':restaurant_id', $this->restaurant_id); 141 | 142 | // Execute query 143 | if($stmt->execute()) { 144 | return true; 145 | } 146 | 147 | // Print error if something goes wrong 148 | printf("Error: %s.\n", $stmt->error); 149 | 150 | return false; 151 | } 152 | 153 | 154 | } 155 | -------------------------------------------------------------------------------- /search.php: -------------------------------------------------------------------------------- 1 | connect_error) 10 | { 11 | die("Connection failed: " . $conn->connect_error); 12 | } 13 | 14 | ?> 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | RwemaAPI-Resto 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 |
53 |
54 |
55 |
56 |
57 | 58 | 59 | 60 |
61 |
62 |
63 |
64 | 95 |
96 |
97 |
98 |
99 | 100 | 101 | 102 |
103 |
104 |
105 |
106 | 107 | 119 |
120 |
121 |
122 |
123 | 124 | 125 | 126 |
127 |
128 |
129 |
130 |
131 |
132 |

supervision & rating

133 |

culinary health supervision and rating agency in Rwanda

134 |
135 |
136 |
137 |
138 |
139 |
140 | 141 |
142 |
143 |
144 |
145 |
146 |

Those Restaurants are:

147 | 148 | 149 | 150 | 151 | 152 | query($sql); 159 | 160 | if ($count->num_rows == 0){ 161 | 162 | echo"No restaurant matches!!"; 163 | 164 | } 165 | else{ 166 | while($row = $count->fetch_array()) { 167 | 168 | echo ""; 169 | echo ""; 170 | echo ""; 171 | 172 | } 173 | } 174 | 175 | } 176 | 177 | ?> 178 | 179 | 180 |
Restaurant_NameRating location
".$row['restaurant_name']."".$row['rating']." Stars".$row['location']."
181 |
182 |
183 |
184 | 185 | 186 | 187 |
188 |
189 | 190 | 191 | 235 | 236 | 237 | 238 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | --------------------------------------------------------------------------------