

├── .htaccess ├── README.md ├── controllers ├── ControllerAccueil.php ├── ControllerPost.php └── Router.php ├── index.php ├── models ├── Article.php ├── ArticleManager.php └── Model.php ├── public ├── blank-static │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── blog-sidebar │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── category-sidebar │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── category │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── common-css │ ├── bootstrap.css │ ├── ionicons.css │ └── swiper.css ├── common-js │ ├── bootstrap.js │ ├── jquery-3.1.1.min.js │ ├── scripts.js │ ├── swiper.js │ └── tether.min.js ├── contact_form │ ├── css │ │ ├── main.css │ │ └── util.css │ ├── fonts │ │ ├── font-awesome-4.7.0 │ │ │ ├── HELP-US-OUT.txt │ │ │ ├── css │ │ │ │ ├── font-awesome.css │ │ │ │ └── font-awesome.min.css │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ ├── less │ │ │ │ ├── animated.less │ │ │ │ ├── bordered-pulled.less │ │ │ │ ├── core.less │ │ │ │ ├── fixed-width.less │ │ │ │ ├── font-awesome.less │ │ │ │ ├── icons.less │ │ │ │ ├── larger.less │ │ │ │ ├── list.less │ │ │ │ ├── mixins.less │ │ │ │ ├── path.less │ │ │ │ ├── rotated-flipped.less │ │ │ │ ├── screen-reader.less │ │ │ │ ├── stacked.less │ │ │ │ └── variables.less │ │ │ └── scss │ │ │ │ ├── _animated.scss │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ ├── _core.scss │ │ │ │ ├── _fixed-width.scss │ │ │ │ ├── _icons.scss │ │ │ │ ├── _larger.scss │ │ │ │ ├── _list.scss │ │ │ │ ├── _mixins.scss │ │ │ │ ├── _path.scss │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ ├── _screen-reader.scss │ │ │ │ ├── _stacked.scss │ │ │ │ ├── _variables.scss │ │ │ │ └── font-awesome.scss │ │ └── montserrat │ │ │ ├── Montserrat-Black.ttf │ │ │ ├── Montserrat-BlackItalic.ttf │ │ │ ├── Montserrat-Bold.ttf │ │ │ ├── Montserrat-BoldItalic.ttf │ │ │ ├── Montserrat-ExtraBold.ttf │ │ │ ├── Montserrat-ExtraBoldItalic.ttf │ │ │ ├── Montserrat-ExtraLight.ttf │ │ │ ├── Montserrat-ExtraLightItalic.ttf │ │ │ ├── Montserrat-Italic.ttf │ │ │ ├── Montserrat-Light.ttf │ │ │ ├── Montserrat-LightItalic.ttf │ │ │ ├── Montserrat-Medium.ttf │ │ │ ├── Montserrat-MediumItalic.ttf │ │ │ ├── Montserrat-Regular.ttf │ │ │ ├── Montserrat-SemiBold.ttf │ │ │ ├── Montserrat-SemiBoldItalic.ttf │ │ │ ├── Montserrat-Thin.ttf │ │ │ ├── Montserrat-ThinItalic.ttf │ │ │ └── OFL.txt │ ├── images │ │ ├── icons │ │ │ └── favicon.ico │ │ ├── img-01.png │ │ └── laptop.png │ ├── index.html │ ├── js │ │ └── main.js │ └── vendor │ │ ├── animate │ │ └── animate.css │ │ ├── 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.js │ │ │ ├── bootstrap.min.js │ │ │ ├── popper.js │ │ │ ├── popper.min.js │ │ │ └── tooltip.js │ │ ├── css-hamburgers │ │ ├── hamburgers.css │ │ └── hamburgers.min.css │ │ ├── jquery │ │ └── jquery-3.2.1.min.js │ │ ├── select2 │ │ ├── select2.css │ │ ├── select2.js │ │ ├── select2.min.css │ │ └── select2.min.js │ │ └── tilt │ │ └── tilt.jquery.min.js ├── css │ └── ionicons.min.css ├── font │ ├── fontello.eot │ ├── fontello.svg │ ├── fontello.ttf │ ├── fontello.woff │ └── fontello.woff2 ├── fonts │ ├── Aileron │ │ ├── Aileron-Black.otf │ │ ├── Aileron-Bold.otf │ │ ├── Aileron-Heavy.otf │ │ ├── Aileron-Italic.otf │ │ ├── Aileron-Light.otf │ │ ├── Aileron-Regular.otf │ │ ├── Aileron-SemiBold.otf │ │ ├── Aileron-Thin.otf │ │ ├── Aileron-UltraLight.otf │ │ └── Gidole-Regular.ttf │ ├── Colaborate │ │ ├── ColabBol.otf │ │ ├── ColabLig.otf │ │ ├── ColabMed.otf │ │ ├── ColabReg.otf │ │ └── ColabThi.otf │ ├── Material-Design-Iconic-Font.eot │ ├── Material-Design-Iconic-Font.svg │ ├── Material-Design-Iconic-Font.ttf │ ├── Material-Design-Iconic-Font.woff │ ├── Material-Design-Iconic-Font.woff2 │ ├── Spirequal-Light │ │ └── Spirequal-Light.TTF │ ├── ionicons.eot │ ├── ionicons.svg │ ├── ionicons.ttf │ ├── ionicons.woff │ ├── linea-basic-10.eot │ ├── linea-basic-10.svg │ ├── linea-basic-10.ttf │ └── linea-basic-10.woff ├── front-page-category │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── images │ ├── alex-lambley-205711.jpg │ ├── audrey-jackson-260657.jpg │ ├── avatar-1-120x120.jpg │ ├── averie-woodard-319832.jpg │ ├── ben-o-sullivan-382817.jpg │ ├── blog-1-1000x600.jpg │ ├── brooke-lark-194251.jpg │ ├── caroline-veronez-165944.jpg │ ├── category-1-400x250.jpg │ ├── category-1.jpg │ ├── category-2-400x250.jpg │ ├── category-3-400x250.jpg │ ├── category-4-400x250.jpg │ ├── category-5-400x250.jpg │ ├── category-6-400x250.jpg │ ├── christopher-campbell-28567.jpg │ ├── dmitri-popov-326976.jpg │ ├── icons8-team-355979.jpg │ ├── icons8-team-355990.jpg │ ├── logo.png │ ├── marion-michele-330691.jpg │ ├── noah-buscher-400915.jpg │ ├── pexels-photo-370474.jpeg │ ├── sarah-diniz-outeiro-407602.jpg │ ├── screenshot.png │ ├── screenshot_blog.png │ ├── slider-1-1600x900.jpg │ └── slider-1.jpg ├── layout-1 │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── single-post-1 │ └── css │ │ ├── responsive.css │ │ └── styles.css ├── single-post-2 │ └── css │ │ ├── responsive.css │ │ └── styles.css └── single-post-3 │ └── css │ ├── responsive.css │ └── styles.css └── views ├── View.php ├── blank-static.html ├── blog-sidebar.html ├── category-sidebar.html ├── category.html ├── front-page-category.html ├── index.html ├── single-post-1.html ├── single-post-2.html ├── single-post-3.html ├── template.php ├── templateForm.php ├── templateSingle.php ├── viewAccueil.php ├── viewCreatePost.php └── viewSinglePost.php /.htaccess: -------------------------------------------------------------------------------- 1 | RewriteEngine On 2 | 3 | RewriteCond %{REQUEST_FILENAME} !-f 4 | RewriteCond %{REQUEST_FILENAME} !-d 5 | 6 | RewriteRule ^(.*)$ index.php?url=$1 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PHP Blog with MVC architecture 2 | 3 | ##This repo shows how to create a blog with MVC architecture 4 | 5 |  6 | 7 | ## Built With 8 | 9 | - PHP 7 10 | - Bootstrap 4 11 | 12 | ## How to use this repository 13 | 14 | - create a local database named "blog_mvc" 15 | - clone the repository in your www folder if you have wamp. If you don't have wamp, clone the repository to the projects folder of your local server environment. 16 | - rendez-vous in the Model.php file located in the models folder and modify the login credentials to the database 17 | - finally, open your browser and go to localhost/blog_mvc 18 | 19 | ## Authors 20 | 21 | 👤 **David YAO** 22 | 23 | - GitHub: [@daviidy](https://github.com/daviidy) 24 | - Twitter: [@davidyao3](https://twitter.com/DavidYao3) 25 | - LinkedIn: [@daviidy](https://www.linkedin.com/in/david-yao-6bb95299/) 26 | - Personal Website: [@daviidy](http://david-yao.com) 27 | 28 | 29 | ## 🤝 Contributing 30 | 31 | Contributions, issues, and feature requests are welcome! 32 | 33 | Feel free to check the [issues page](issues/). 34 | 35 | ## Show your support 36 | 37 | Give a ⭐️ if you like this project! 38 | -------------------------------------------------------------------------------- /controllers/ControllerAccueil.php: -------------------------------------------------------------------------------- 1 | 1) { 14 | throw new \Exception("Page introuvable", 1); 15 | 16 | } 17 | else { 18 | $this->articles(); 19 | } 20 | } 21 | 22 | private function articles(){ 23 | $this->_articleManager = new ArticleManager(); 24 | $articles = $this->_articleManager->getArticles(); 25 | $this->_view = new View('Accueil'); 26 | $this->_view->generate(array('articles' => $articles)); 27 | } 28 | } 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | ?> 44 | -------------------------------------------------------------------------------- /controllers/ControllerPost.php: -------------------------------------------------------------------------------- 1 | create(); 17 | } 18 | elseif (isset($_GET['status']) && isset($_GET['status']) == "new") { 19 | $this->store(); 20 | } 21 | else { 22 | $this->article(); 23 | } 24 | } 25 | 26 | //fonction pour afficher un article 27 | private function article() 28 | { 29 | if (isset($_GET['id'], $_GET['id'])) { 30 | $this->_articleManager = new ArticleManager; 31 | $article = $this->_articleManager->getArticle($_GET['id']); 32 | $this->_view = new View('SinglePost'); 33 | $this->_view->generatePost(array('article' => $article)); 34 | } 35 | 36 | } 37 | 38 | //fonction pour afficher le 39 | //formulaire de création d'un article 40 | private function create() 41 | { 42 | if (isset($_GET['create'])) { 43 | $this->_view = new View('CreatePost'); 44 | $this->_view->generateForm(); 45 | } 46 | 47 | } 48 | 49 | 50 | //fonction pour insérer un aticle 51 | //en bdd 52 | private function store() 53 | { 54 | $this->_articleManager = new ArticleManager; 55 | $article = $this->_articleManager->createArticle(); 56 | $articles = $this->_articleManager->getArticles(); 57 | $this->_view = new View('Accueil'); 58 | $this->_view->generate(array('articles' => $articles)); 59 | } 60 | 61 | 62 | 63 | 64 | } 65 | 66 | ?> 67 | -------------------------------------------------------------------------------- /controllers/Router.php: -------------------------------------------------------------------------------- 1 | ctrl = new $controllerClass($url); 46 | } 47 | else { 48 | throw new \Exception("Page introuvable", 1); 49 | 50 | } 51 | } 52 | 53 | else { 54 | require_once('controllers/ControllerAccueil.php'); 55 | $this->ctrl = new ControllerAccueil($url); 56 | } 57 | 58 | } catch (\Exception $e) { 59 | $errorMsg = $e->getMessage(); 60 | $this->_view = new View('Error'); 61 | $this->_view->generate(array('errorMsg' => $errorMsg)); 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 | 89 | ?> 90 | -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | routeReq(); 8 | 9 | 10 | 11 | 12 | ?> 13 | -------------------------------------------------------------------------------- /models/Article.php: -------------------------------------------------------------------------------- 1 | hydrate($data); 16 | } 17 | 18 | //hdratation 19 | public function hydrate(array $data){ 20 | foreach ($data as $key => $value) { 21 | $method = 'set'.ucfirst($key); 22 | if (method_exists($this, $method)) { 23 | $this->$method($value); 24 | } 25 | } 26 | } 27 | 28 | //setters 29 | 30 | public function setId($id) 31 | { 32 | $id = (int) $id; 33 | if ($id > 0) { 34 | $this->_id = $id; 35 | } 36 | } 37 | 38 | public function setTitle($title) 39 | { 40 | if (is_string($title)) { 41 | $this->_title = $title; 42 | } 43 | } 44 | 45 | public function setContent($content) 46 | { 47 | if (is_string($content)) { 48 | $this->_content = $content; 49 | } 50 | } 51 | 52 | public function setDate($date) 53 | { 54 | $this->_date = $date; 55 | 56 | } 57 | 58 | //getters 59 | public function id() 60 | { 61 | return $this->_id; 62 | } 63 | 64 | public function title() 65 | { 66 | return $this->_title; 67 | } 68 | 69 | public function content() 70 | { 71 | return $this->_content; 72 | } 73 | 74 | public function date() 75 | { 76 | return $this->_date; 77 | } 78 | 79 | 80 | 81 | } 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | ?> 95 | -------------------------------------------------------------------------------- /models/ArticleManager.php: -------------------------------------------------------------------------------- 1 | getAll('articles', 'Article'); 13 | } 14 | 15 | public function getArticle($id){ 16 | return $this->getOne('articles', 'Article', $id); 17 | } 18 | 19 | public function createArticle(){ 20 | return $this->createOne('articles', 'Article'); 21 | } 22 | 23 | } 24 | 25 | 26 | 27 | 28 | 29 | ?> 30 | -------------------------------------------------------------------------------- /models/Model.php: -------------------------------------------------------------------------------- 1 | setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING); 15 | } 16 | 17 | //fonction de connexion par defaut a la bdd 18 | protected function getBdd(){ 19 | if (self::$_bdd == null) { 20 | self::setBdd(); 21 | return self::$_bdd; 22 | } 23 | } 24 | 25 | //creation d ela methode 26 | //de récupération de liste d'elements 27 | //dans la bdd 28 | 29 | protected function getAll($table, $obj){ 30 | $this->getBdd(); 31 | $var = []; 32 | $req = self::$_bdd->prepare('SELECT * FROM '.$table.' ORDER BY id desc'); 33 | $req->execute(); 34 | 35 | //on crée la variable data qui 36 | //va cobntenir les données 37 | while ($data = $req->fetch(PDO::FETCH_ASSOC)) { 38 | // var contiendra les données sous forme d'objets 39 | $var[] = new $obj($data); 40 | } 41 | 42 | return $var; 43 | $req->closeCursor(); 44 | 45 | 46 | } 47 | 48 | protected function getOne($table, $obj, $id) 49 | { 50 | $this->getBdd(); 51 | $var = []; 52 | $req = self::$_bdd->prepare("SELECT id, title, content, DATE_FORMAT(date, '%d/%m/%Y à %Hh%imin%ss') AS date FROM " .$table. " WHERE id = ?"); 53 | $req->execute(array($id)); 54 | while ($data = $req->fetch(PDO::FETCH_ASSOC)) { 55 | $var[] = new $obj($data); 56 | } 57 | 58 | return $var; 59 | $req->closeCursor(); 60 | } 61 | 62 | protected function createOne($table, $obj) 63 | { 64 | $this->getBdd(); 65 | $req = self::$_bdd->prepare("INSERT INTO ".$table." (title, content, date) VALUES (?, ?, ?)"); 66 | $req->execute(array($_POST['title'], $_POST['content'], date("d.m.Y"))); 67 | 68 | $req->closeCursor(); 69 | } 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | } 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | ?> 94 | -------------------------------------------------------------------------------- /public/blank-static/css/responsive.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* Screens Resolution : 992px 4 | -------------------------------------------------------------------------- */ 5 | @media only screen and (max-width: 1200px) { 6 | 7 | 8 | } 9 | 10 | /* Screens Resolution : 992px 11 | -------------------------------------------------------------------------- */ 12 | @media only screen and (max-width: 992px) { 13 | 14 | /* --------------------------------- 15 | 1. PRIMARY STYLES 16 | --------------------------------- */ 17 | 18 | h1{ font-size: 4em; } 19 | h2{ font-size: 3em; } 20 | h3{ font-size: 2em; } 21 | 22 | 23 | /* COMMoNS */ 24 | 25 | .no-left-padding{ padding-left: 15px; } 26 | 27 | .no-right-padding{ padding-right: 15px; } 28 | 29 | 30 | /* MENU */ 31 | 32 | /* SEARCH AREA */ 33 | 34 | header .src-area{ width: 30%; } 35 | 36 | 37 | /* --------------------------------- 38 | 6. MAIN POST ( LEF AREA ) 39 | --------------------------------- */ 40 | 41 | .main-post{ border-right: 0px ; } 42 | 43 | .main-post .blog-post-inner, 44 | .main-post .post-icons-area{ padding-right: 0px; } 45 | 46 | 47 | /* --------------------------------- 48 | 7. SIDEBAR AREA 49 | --------------------------------- */ 50 | 51 | .info-area{ padding: 30px 0; } 52 | 53 | .info-area .sidebar-area, 54 | .info-area .tag-area{ padding-left: 0px; } 55 | 56 | 57 | } 58 | 59 | 60 | /* Screens Resolution : 767px 61 | -------------------------------------------------------------------------- */ 62 | @media only screen and (max-width: 767px) { 63 | 64 | /* --------------------------------- 65 | 1. PRIMARY STYLES 66 | --------------------------------- */ 67 | 68 | p{ line-height: 1.4; } 69 | 70 | h1{ font-size: 3em; } 71 | h2{ font-size: 2.5em; } 72 | h3{ font-size: 1.8em; } 73 | h4{ font-size: 1.5em; } 74 | h5{ font-size: 1.2em; } 75 | 76 | /* --------------------------------- 77 | 2. COMMONS FOR PAGE DESIGN 78 | --------------------------------- */ 79 | 80 | .section{ padding: 40px 0 10px; } 81 | 82 | 83 | 84 | /* --------------------------------- 85 | 3. MENU 86 | --------------------------------- */ 87 | 88 | 89 | header .main-menu{ display: none; float: none; clear: both; border-top: 1px solid #ccc; } 90 | 91 | header .main-menu > li{ display: block; float: none; border-bottom: 1px solid #ddd; } 92 | 93 | header .main-menu > li:last-child{ border-bottom: 0; } 94 | 95 | header .main-menu li > a, 96 | header .main-menu ul.drop-down li > a{ display: block; line-height: 1; height: auto; padding: 15px; background: none; } 97 | 98 | 99 | 100 | /* SEARCH AREA */ 101 | 102 | header .src-area{ width: 100%; } 103 | 104 | 105 | /* NAV ICON */ 106 | 107 | .menu-nav-icon{ display: inline-block; } 108 | 109 | 110 | /* --------------------------------- 111 | 10. FOOTER 112 | --------------------------------- */ 113 | 114 | footer{ padding: 40px 0 0px; margin-top: 0px; } 115 | 116 | 117 | } 118 | 119 | /* Screens Resolution : 479px 120 | -------------------------------------------------------------------------- */ 121 | @media only screen and (max-width: 479px) { 122 | 123 | /* --------------------------------- 124 | 1. PRIMARY STYLES 125 | --------------------------------- */ 126 | 127 | body{ font-size: 14px; } 128 | 129 | /* --------------------------------- 130 | 6. MAIN POST ( LEF AREA ) 131 | --------------------------------- */ 132 | 133 | /* ICONS */ 134 | 135 | .main-post ul.post-icons, 136 | .main-post ul.icons{ float: none; margin-top: 10px; } 137 | 138 | .main-post ul.post-icons > li > a > i, 139 | .main-post ul.icons > li > a > i{ padding: 0; padding-right: 10px; } 140 | 141 | 142 | 143 | } 144 | 145 | /* Screens Resolution : 359px 146 | -------------------------------------------------------------------------- */ 147 | @media only screen and (max-width: 359px) { 148 | 149 | 150 | } 151 | 152 | /* Screens Resolution : 290px 153 | -------------------------------------------------------------------------- */ 154 | @media only screen and (max-width: 290px) { 155 | 156 | 157 | } -------------------------------------------------------------------------------- /public/blank-static/css/styles.css: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | ==================================================== 4 | 5 | * [Master Stylesheet] 6 | 7 | Theme Name : 8 | Version : 9 | Author : 10 | Author URI : 11 | 12 | ==================================================== 13 | 14 | 15 | /* --------------------------------- 16 | 1. PRIMARY STYLES 17 | --------------------------------- */ 18 | 19 | html{ font-size: 100%; height: 100%; overflow-x: hidden; touch-action: manipulation; } 20 | 21 | body{ font-size: 15px; font-family: 'Roboto', sans-serif; width: 100%; height: 100%; margin: 0; font-weight: 300; 22 | -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; word-wrap: break-word; 23 | background: #EDF3F3; color: #000; } 24 | 25 | h1, h2, h3, h4, h5, h6, p, a, ul, span, li, img{ margin: 0; padding: 0; font-weight: 300; } 26 | 27 | h1,h2,h3,h4,h5,h6{ line-height: 1.5; } 28 | 29 | p{ line-height: 1.6; font-family: 'Maven Pro', sans-serif; font-weight: 400; color: #444; } 30 | 31 | h1{ font-size: 4em; line-height: 1; } 32 | h2{ font-size: 2.8em; line-height: 1.1; } 33 | h3{ font-size: 2em; } 34 | h4{ font-size: 1.2em; } 35 | h5{ font-size: 1.1em; } 36 | h6{ font-size: .9em; letter-spacing: 1px; } 37 | 38 | a, button{ display: inline-block; text-decoration: none; color: inherit; transition: all .3s; } 39 | 40 | a:focus, a:active, a:hover, 41 | button:focus, button:active, button:hover{ text-decoration: none; color: #498BF9; } 42 | 43 | b{ font-weight: 500; } 44 | 45 | img{ width: 100%; } 46 | 47 | li{ list-style: none; display: inline-block; } 48 | 49 | span{ display: inline-block; } 50 | 51 | header{ font-weight: 400; } 52 | 53 | 54 | 55 | /* --------------------------------- 56 | 2. COMMONS FOR PAGE DESIGN 57 | --------------------------------- */ 58 | 59 | .section{ padding: 70px 0 40px; } 60 | 61 | .section .heading{ padding-bottom: 70px; } 62 | 63 | .center-text{ text-align: center; } 64 | 65 | .color-white{ color: #fff; } 66 | 67 | .display-table{ display: table; height: 100%; width: 100%; } 68 | 69 | .display-table-cell{ display: table-cell; vertical-align: middle; } 70 | 71 | .card{ background: transparent; border: 0; } 72 | 73 | .no-side-padding{ padding-right: 0px; padding-left: 0px; } 74 | 75 | .no-left-padding{ padding-left: 0px; } 76 | 77 | .no-right-padding{ padding-right: 0px; } 78 | 79 | .icon{ font-size: 2em; } 80 | 81 | 82 | ::-webkit-input-placeholder { font-size: .9em; letter-spacing: 1px; } 83 | 84 | ::-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 85 | 86 | :-ms-input-placeholder { font-size: .9em; letter-spacing: 1px; } 87 | 88 | :-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 89 | 90 | 91 | 92 | /* --------------------------------- 93 | 3. MENU 94 | --------------------------------- */ 95 | 96 | header{ overflow: hidden; background: #fff; box-shadow: 0px 2px 10px rgba(0,0,0, .3); } 97 | 98 | header .logo{ float: left; height: 20px; margin: 20px 30px; } 99 | 100 | header .logo img{ height: 100%; width: auto; } 101 | 102 | 103 | header .main-menu{ display: inline-block; float: left; } 104 | 105 | header .main-menu > li{ float: left; } 106 | 107 | header .main-menu > li > a{ height: 60px; line-height: 60px; padding: 0 25px; border-right: 1px solid #eee; } 108 | 109 | header .main-menu > li > a:hover{ background: #eee; } 110 | 111 | header .main-menu > li:first-child > a{ border-left: 1px solid #eee; } 112 | 113 | 114 | header .visible.main-menu{ display: block; } 115 | 116 | 117 | 118 | /* SEARCH AREA */ 119 | 120 | header .src-area{ position: relative; height: 60px; width: 50%; float: right; display: inline-block; background: #F5F7F6; } 121 | 122 | header .src-area .src-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 123 | padding: 0 20px 0 70px; background: transparent; border: 0; outline: 0; } 124 | 125 | header .src-area .src-input:focus{ box-shadow: 0px 0px 1px #aaa; } 126 | 127 | header .src-area .src-btn{ position: absolute; top: 0; bottom: 0; left: 0; width: 40px; background: none; border: 0; 128 | font-size: 1.2em; outline: 0; margin-left: 20px; opacity: .6; cursor: pointer; z-index: 10; } 129 | 130 | 131 | /* NAV ICON */ 132 | 133 | .menu-nav-icon{ display: none; height: 60px; width: 50px; text-align: center; line-height: 60px; cursor: pointer; 134 | position: absolute; right: 0; font-size: 1.8em; } 135 | 136 | 137 | /* --------------------------------- 138 | 4. SLIDER 139 | --------------------------------- */ 140 | 141 | .slider{ height: 300px; width: 100%; background-image: url(../../images/slider-1.jpg); background-size: cover; } 142 | 143 | .slider .title{ color: #fff; text-shadow: 2px 2px 10px rgba(0,0,0,.3); } 144 | 145 | 146 | /* --------------------------------- 147 | 5. SINGLE POST 148 | --------------------------------- */ 149 | 150 | .blog-area{ background: #EDF3F3; } 151 | 152 | .post-wrapper{ padding: 50px 50px 20px; margin-bottom: 30px; box-shadow: 0px 0px 5px rgba(0,0,0,.1); 153 | border: 1px solid #ddd; background: #fff; } 154 | 155 | .blog-area .title{ margin-bottom: 25px; } 156 | 157 | .blog-area .para{ margin-bottom: 25px; } 158 | 159 | 160 | 161 | /* --------------------------------- 162 | 6. FOOTER 163 | --------------------------------- */ 164 | 165 | footer{ padding: 70px 0 30px; background: #fff; } 166 | 167 | footer .footer-section{ margin-bottom: 40px; } 168 | 169 | footer .footer-section .title{ margin-bottom: 20px; } 170 | 171 | footer .footer-section ul > li{ margin-right: 10px; margin-top: 10px; } 172 | 173 | 174 | footer .copyright{ margin: 10px 0; } 175 | 176 | 177 | footer .icons > li > a{ height: 40px; width: 40px; border-radius: 40px; line-height: 40px; text-align: center; 178 | transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,1); background: #498BF9; color: #fff; } 179 | 180 | footer .icons > li > a:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 181 | 182 | 183 | footer .input-area{ position: relative; height: 50px; width: 100%; box-shadow: 0px 0px 1px #bbb; background: #F5F7F6; } 184 | 185 | footer .input-area .email-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 186 | padding: 0 70px 0 20px; background: transparent; border: 0; outline: 0; } 187 | 188 | footer .input-area .email-input:focus{ box-shadow: 0px 0px 1px #aaa; } 189 | 190 | footer .input-area .submit-btn{ position: absolute; top: 0; bottom: 0; right: 0; width: 50px; background: none; 191 | border: 0; outline: 0; padding: 7px; margin-right: 10px; opacity: .8; cursor: pointer; } 192 | 193 | footer .input-area .submit-btn img{ width: 100%; height: 100%; } 194 | 195 | 196 | -------------------------------------------------------------------------------- /public/blog-sidebar/css/responsive.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* Screens Resolution : 992px 4 | -------------------------------------------------------------------------- */ 5 | @media only screen and (max-width: 1200px) { 6 | 7 | 8 | } 9 | 10 | /* Screens Resolution : 992px 11 | -------------------------------------------------------------------------- */ 12 | @media only screen and (max-width: 992px) { 13 | 14 | /* --------------------------------- 15 | 1. PRIMARY STYLES 16 | --------------------------------- */ 17 | 18 | h1{ font-size: 4em; } 19 | h2{ font-size: 3em; } 20 | h3{ font-size: 2em; } 21 | 22 | 23 | /* COMMoNS */ 24 | 25 | .no-left-padding{ padding-left: 15px; } 26 | 27 | .no-right-padding{ padding-right: 15px; } 28 | 29 | 30 | /* MENU */ 31 | 32 | /* SEARCH AREA */ 33 | 34 | header .src-area{ width: 30%; } 35 | 36 | 37 | /* --------------------------------- 38 | 6. MAIN POST ( LEF AREA ) 39 | --------------------------------- */ 40 | 41 | .main-post{ border-right: 0px ; } 42 | 43 | .main-post .blog-post-inner, 44 | .main-post .post-icons-area{ padding-right: 0px; } 45 | 46 | 47 | 48 | 49 | 50 | } 51 | 52 | 53 | /* Screens Resolution : 767px 54 | -------------------------------------------------------------------------- */ 55 | @media only screen and (max-width: 767px) { 56 | 57 | /* --------------------------------- 58 | 1. PRIMARY STYLES 59 | --------------------------------- */ 60 | 61 | p{ line-height: 1.4; } 62 | 63 | h1{ font-size: 3em; } 64 | h2{ font-size: 2.5em; } 65 | h3{ font-size: 1.8em; } 66 | h4{ font-size: 1.5em; } 67 | h5{ font-size: 1.2em; } 68 | 69 | /* --------------------------------- 70 | 2. COMMONS FOR PAGE DESIGN 71 | --------------------------------- */ 72 | 73 | .section{ padding: 40px 0 10px; } 74 | 75 | 76 | 77 | /* --------------------------------- 78 | 3. MENU 79 | --------------------------------- */ 80 | 81 | 82 | header .main-menu{ display: none; float: none; clear: both; border-top: 1px solid #ccc; } 83 | 84 | header .main-menu > li{ display: block; float: none; border-bottom: 1px solid #ddd; } 85 | 86 | header .main-menu > li:last-child{ border-bottom: 0; } 87 | 88 | header .main-menu li > a, 89 | header .main-menu ul.drop-down li > a{ display: block; line-height: 1; height: auto; padding: 15px; background: none; } 90 | 91 | 92 | 93 | /* SEARCH AREA */ 94 | 95 | header .src-area{ width: 100%; } 96 | 97 | 98 | /* NAV ICON */ 99 | 100 | .menu-nav-icon{ display: inline-block; } 101 | 102 | 103 | /* --------------------------------- 104 | 6. EXTRA BIG BLOG 105 | --------------------------------- */ 106 | 107 | .post-style-2 .blog-image{ width: 100%; height: auto; float: none; } 108 | 109 | .post-style-2 .blog-info{ height: auto; width: 100%; } 110 | 111 | 112 | /* --------------------------------- 113 | 10. FOOTER 114 | --------------------------------- */ 115 | 116 | footer{ padding: 40px 0 0px; margin-top: 0px; } 117 | 118 | 119 | } 120 | 121 | /* Screens Resolution : 479px 122 | -------------------------------------------------------------------------- */ 123 | @media only screen and (max-width: 479px) { 124 | 125 | /* --------------------------------- 126 | 1. PRIMARY STYLES 127 | --------------------------------- */ 128 | 129 | body{ font-size: 14px; } 130 | 131 | /* --------------------------------- 132 | 6. MAIN POST ( LEF AREA ) 133 | --------------------------------- */ 134 | 135 | /* ICONS */ 136 | 137 | .main-post ul.post-icons, 138 | .main-post ul.icons{ float: none; margin-top: 10px; } 139 | 140 | .main-post ul.post-icons > li > a > i, 141 | .main-post ul.icons > li > a > i{ padding: 0; padding-right: 10px; } 142 | 143 | 144 | 145 | } 146 | 147 | /* Screens Resolution : 359px 148 | -------------------------------------------------------------------------- */ 149 | @media only screen and (max-width: 359px) { 150 | 151 | 152 | } 153 | 154 | /* Screens Resolution : 290px 155 | -------------------------------------------------------------------------- */ 156 | @media only screen and (max-width: 290px) { 157 | 158 | 159 | } -------------------------------------------------------------------------------- /public/blog-sidebar/css/styles.css: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | ==================================================== 4 | 5 | * [Master Stylesheet] 6 | 7 | Theme Name : 8 | Version : 9 | Author : 10 | Author URI : 11 | 12 | ==================================================== 13 | 14 | 15 | /* --------------------------------- 16 | 1. PRIMARY STYLES 17 | --------------------------------- */ 18 | 19 | html{ font-size: 100%; height: 100%; overflow-x: hidden; touch-action: manipulation; } 20 | 21 | body{ font-size: 15px; font-family: 'Roboto', sans-serif; width: 100%; height: 100%; margin: 0; font-weight: 300; 22 | -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; word-wrap: break-word; 23 | background: #EDF3F3; color: #000; } 24 | 25 | h1, h2, h3, h4, h5, h6, p, a, ul, span, li, img{ margin: 0; padding: 0; font-weight: 300; } 26 | 27 | h1,h2,h3,h4,h5,h6{ line-height: 1.5; } 28 | 29 | p{ line-height: 1.6; font-family: 'Maven Pro', sans-serif; font-weight: 400; color: #444; } 30 | 31 | h1{ font-size: 4em; line-height: 1; } 32 | h2{ font-size: 2.8em; line-height: 1.1; } 33 | h3{ font-size: 2em; } 34 | h4{ font-size: 1.2em; } 35 | h5{ font-size: 1.1em; } 36 | h6{ font-size: .9em; letter-spacing: 1px; } 37 | 38 | a, button{ display: inline-block; text-decoration: none; color: inherit; transition: all .3s; } 39 | 40 | a:focus, a:active, a:hover, 41 | button:focus, button:active, button:hover{ text-decoration: none; color: #498BF9; } 42 | 43 | b{ font-weight: 500; } 44 | 45 | img{ width: 100%; } 46 | 47 | li{ list-style: none; display: inline-block; } 48 | 49 | span{ display: inline-block; } 50 | 51 | header{ font-weight: 400; } 52 | 53 | 54 | 55 | /* --------------------------------- 56 | 2. COMMONS FOR PAGE DESIGN 57 | --------------------------------- */ 58 | 59 | .section{ padding: 70px 0 40px; } 60 | 61 | .section .heading{ padding-bottom: 70px; } 62 | 63 | .center-text{ text-align: center; } 64 | 65 | .color-white{ color: #fff; } 66 | 67 | .display-table{ display: table; height: 100%; width: 100%; } 68 | 69 | .display-table-cell{ display: table-cell; vertical-align: middle; } 70 | 71 | .card{ background: transparent; border: 0; } 72 | 73 | .no-side-padding{ padding-right: 0px; padding-left: 0px; } 74 | 75 | .no-left-padding{ padding-left: 0px; } 76 | 77 | .no-right-padding{ padding-right: 0px; } 78 | 79 | .icon{ font-size: 2em; } 80 | 81 | 82 | ::-webkit-input-placeholder { font-size: .9em; letter-spacing: 1px; } 83 | 84 | ::-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 85 | 86 | :-ms-input-placeholder { font-size: .9em; letter-spacing: 1px; } 87 | 88 | :-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 89 | 90 | 91 | 92 | /* --------------------------------- 93 | 3. MENU 94 | --------------------------------- */ 95 | 96 | header{ overflow: hidden; background: #fff; box-shadow: 0px 2px 10px rgba(0,0,0, .3); } 97 | 98 | header .logo{ float: left; height: 20px; margin: 20px 30px; } 99 | 100 | header .logo img{ height: 100%; width: auto; } 101 | 102 | 103 | header .main-menu{ display: inline-block; float: left; } 104 | 105 | header .main-menu > li{ float: left; } 106 | 107 | header .main-menu > li > a{ height: 60px; line-height: 60px; padding: 0 25px; border-right: 1px solid #eee; } 108 | 109 | header .main-menu > li > a:hover{ background: #eee; } 110 | 111 | header .main-menu > li:first-child > a{ border-left: 1px solid #eee; } 112 | 113 | 114 | header .visible.main-menu{ display: block; } 115 | 116 | 117 | 118 | /* SEARCH AREA */ 119 | 120 | header .src-area{ position: relative; height: 60px; width: 50%; float: right; display: inline-block; background: #F5F7F6; } 121 | 122 | header .src-area .src-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 123 | padding: 0 20px 0 70px; background: transparent; border: 0; outline: 0; } 124 | 125 | header .src-area .src-input:focus{ box-shadow: 0px 0px 1px #aaa; } 126 | 127 | header .src-area .src-btn{ position: absolute; top: 0; bottom: 0; left: 0; width: 40px; background: none; border: 0; 128 | font-size: 1.2em; outline: 0; margin-left: 20px; opacity: .6; cursor: pointer; z-index: 10; } 129 | 130 | 131 | /* NAV ICON */ 132 | 133 | .menu-nav-icon{ display: none; height: 60px; width: 50px; text-align: center; line-height: 60px; cursor: pointer; 134 | position: absolute; right: 0; font-size: 1.8em; } 135 | 136 | 137 | 138 | 139 | /* --------------------------------- 140 | 4. SLIDER 141 | --------------------------------- */ 142 | 143 | .slider{ height: 300px; width: 100%; background-image: url(../../images/slider-1.jpg); background-size: cover; } 144 | 145 | .slider .title{ color: #fff; text-shadow: 2px 2px 10px rgba(0,0,0,.3); } 146 | 147 | 148 | /* --------------------------------- 149 | 5. SINGLE POST 150 | --------------------------------- */ 151 | 152 | .blog-area .row div[class^="col"] { margin-bottom: 30px; } 153 | 154 | .blog-area{ text-align: center; background: #EDF3F3; } 155 | 156 | .blog-area .single-post{ height: 100%; position: relative; padding-bottom: 45px; 157 | overflow: hidden; box-shadow: 0px 0px 5px rgba(0,0,0,.1); border: 1px solid #ddd; background: #fff; } 158 | 159 | .blog-area .single-post .title{ padding: 20px 30px 30px; } 160 | 161 | .single-post .avatar{ margin: 0 auto; margin-top: -40px; width: 70px; height: 70px; overflow: hidden; z-index: 10; 162 | border-radius: 100px; position: relative; border: 7px solid #fff; box-shadow: 0px 0px 10px rgba(0,0,0,.2); } 163 | 164 | .single-post .post-footer{ position: absolute; bottom: 0; left: 0; right: 0; text-align: center; } 165 | 166 | .single-post .post-footer > li{ width: 33.33%; display: inline-block; border-right: 1px solid #fff; background: #EDF3F3; } 167 | 168 | .single-post .post-footer > li:first-child{ float: left; } 169 | 170 | .single-post .post-footer > li:last-child{ border: 0px; float: right; } 171 | 172 | .single-post .post-footer > li > a{ line-height: 45px; width: 100%; } 173 | 174 | .single-post .post-footer i{ display: inline-block; margin-right: 10px; opacity: .6; font-size: 1.1em; } 175 | 176 | 177 | /* --------------------------------- 178 | 6. NORMAL BLOG 179 | --------------------------------- */ 180 | 181 | .post-style-1 .blog-image{ max-height: 200px; overflow: hidden; } 182 | 183 | 184 | 185 | /* --------------------------------- 186 | 7. EXTRA BIG BLOG 187 | --------------------------------- */ 188 | 189 | .blog-area .post-style-2{ padding-bottom: 0; text-align: left; } 190 | 191 | .blog-area .post-style-2 .title{ padding: 15px 0px 20px; } 192 | 193 | .post-style-2 .avatar-area{ padding: 25px 0 15px; position: relative; } 194 | 195 | .post-style-2 .avatar{ margin: 0px; } 196 | 197 | .post-style-2 .avatar-area .right-area{ margin-left: 90px; position: absolute; top: 50%; transform: translateY(-50%); } 198 | 199 | .post-style-2 .blog-image{ width: 50%; float: left; height: 100%; } 200 | 201 | .post-style-2 .blog-image img{ height: 100%; width: 100%; } 202 | 203 | .post-style-2 .blog-info{ width: 50%; float: left; height: 100%; position: relative; padding: 30px; padding-bottom: 45px; } 204 | 205 | 206 | 207 | /* --------------------------------- 208 | 8. EXTRA MEDIUM BLOG 209 | --------------------------------- */ 210 | 211 | .post-style-2.post-style-3 .blog-info{ width: 100%; float: none; } 212 | 213 | 214 | 215 | /* --------------------------------- 216 | 9. EXTRA SMALL BLOG 217 | --------------------------------- */ 218 | 219 | .blog-area .post-style-4{ margin-bottom: 30px; } 220 | 221 | .display-table .display-table-cell.title{ padding: 30px; } 222 | 223 | .load-more-btn{ padding: 15px 40px; margin: 30px 0 0; transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,.4); 224 | background: #C3D8F5; } 225 | 226 | .load-more-btn:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 227 | 228 | 229 | 230 | /* --------------------------------- 231 | 10. INFO AREA 232 | --------------------------------- */ 233 | 234 | .blog-area .info-area{ height: auto; text-align: left; padding: 40px 0px; } 235 | 236 | .blog-area .info-area .title{ padding: 0; margin-bottom: 20px; } 237 | 238 | 239 | 240 | /* ABOUT AREA */ 241 | 242 | .blog-area .info-area .about-area{ padding: 0 30px 30px; margin: 0 0 30px; border-bottom: 1px solid #eee; } 243 | 244 | 245 | 246 | /* SUBSCRIBE AREA */ 247 | 248 | .info-area .subscribe-area{ padding: 0 30px 30px; margin: 0 0 30px; border-bottom: 1px solid #eee; } 249 | 250 | .info-area .input-area{ position: relative; height: 50px; width: 100%; box-shadow: 0px 0px 1px #bbb; background: #F5F7F6; } 251 | 252 | .info-area .input-area .email-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 253 | padding: 0 70px 0 20px; background: transparent; border: 0; outline: 0; } 254 | 255 | .info-area .input-area .email-input:focus{ box-shadow: 0px 0px 1px #aaa; } 256 | 257 | .info-area .input-area .submit-btn{ position: absolute; top: 0; bottom: 0; right: 0; width: 50px; background: none; 258 | border: 0; outline: 0; font-size: 1.7em; margin-right: 10px; opacity: .8; cursor: pointer; } 259 | 260 | 261 | 262 | /* TAG AREA */ 263 | 264 | .info-area .tag-area{ padding: 0 30px; } 265 | 266 | .tag-area > ul > li > a{ padding: 7px 12px; float: left; margin: 0 5px 5px 0; border: 1px solid #eee; background: #F5F6F8; } 267 | 268 | .tag-area > ul > li > a:hover{ background: none; } 269 | 270 | 271 | 272 | /* --------------------------------- 273 | 11. FOOTER 274 | --------------------------------- */ 275 | 276 | footer{ padding: 70px 0 30px; text-align: center; background: #fff; } 277 | 278 | footer .footer-section{ margin-bottom: 40px; } 279 | 280 | footer .footer-section .title{ margin-bottom: 20px; } 281 | 282 | footer .footer-section ul > li{ margin: 0 5px; } 283 | 284 | footer .copyright{ margin: 10px 0 20px; } 285 | 286 | footer .icons > li > a{ height: 40px; width: 40px; border-radius: 40px; line-height: 40px; text-align: center; 287 | transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,1); background: #498BF9; color: #fff; } 288 | 289 | footer .icons > li > a:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 290 | 291 | 292 | 293 | 294 | -------------------------------------------------------------------------------- /public/category-sidebar/css/responsive.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* Screens Resolution : 992px 4 | -------------------------------------------------------------------------- */ 5 | @media only screen and (max-width: 1200px) { 6 | 7 | 8 | } 9 | 10 | /* Screens Resolution : 992px 11 | -------------------------------------------------------------------------- */ 12 | @media only screen and (max-width: 992px) { 13 | 14 | /* --------------------------------- 15 | 1. PRIMARY STYLES 16 | --------------------------------- */ 17 | 18 | h1{ font-size: 4em; } 19 | h2{ font-size: 3em; } 20 | h3{ font-size: 2em; } 21 | 22 | 23 | /* COMMoNS */ 24 | 25 | .no-left-padding{ padding-left: 15px; } 26 | 27 | .no-right-padding{ padding-right: 15px; } 28 | 29 | 30 | /* MENU */ 31 | 32 | /* SEARCH AREA */ 33 | 34 | header .src-area{ width: 30%; } 35 | 36 | 37 | /* --------------------------------- 38 | 6. MAIN POST ( LEF AREA ) 39 | --------------------------------- */ 40 | 41 | .main-post{ border-right: 0px ; } 42 | 43 | .main-post .blog-post-inner, 44 | .main-post .post-icons-area{ padding-right: 0px; } 45 | 46 | 47 | 48 | 49 | 50 | } 51 | 52 | 53 | /* Screens Resolution : 767px 54 | -------------------------------------------------------------------------- */ 55 | @media only screen and (max-width: 767px) { 56 | 57 | /* --------------------------------- 58 | 1. PRIMARY STYLES 59 | --------------------------------- */ 60 | 61 | p{ line-height: 1.4; } 62 | 63 | h1{ font-size: 3em; } 64 | h2{ font-size: 2.5em; } 65 | h3{ font-size: 1.8em; } 66 | h4{ font-size: 1.5em; } 67 | h5{ font-size: 1.2em; } 68 | 69 | /* --------------------------------- 70 | 2. COMMONS FOR PAGE DESIGN 71 | --------------------------------- */ 72 | 73 | .section{ padding: 40px 0 10px; } 74 | 75 | 76 | 77 | /* --------------------------------- 78 | 3. MENU 79 | --------------------------------- */ 80 | 81 | 82 | header .main-menu{ display: none; float: none; clear: both; border-top: 1px solid #ccc; } 83 | 84 | header .main-menu > li{ display: block; float: none; border-bottom: 1px solid #ddd; } 85 | 86 | header .main-menu > li:last-child{ border-bottom: 0; } 87 | 88 | header .main-menu li > a, 89 | header .main-menu ul.drop-down li > a{ display: block; line-height: 1; height: auto; padding: 15px; background: none; } 90 | 91 | 92 | 93 | /* SEARCH AREA */ 94 | 95 | header .src-area{ width: 100%; } 96 | 97 | 98 | /* NAV ICON */ 99 | 100 | .menu-nav-icon{ display: inline-block; } 101 | 102 | 103 | /* --------------------------------- 104 | 6. EXTRA BIG BLOG 105 | --------------------------------- */ 106 | 107 | .post-style-2 .blog-image{ width: 100%; height: auto; float: none; } 108 | 109 | .post-style-2 .blog-info{ height: auto; width: 100%; } 110 | 111 | 112 | /* --------------------------------- 113 | 10. FOOTER 114 | --------------------------------- */ 115 | 116 | footer{ padding: 40px 0 0px; margin-top: 0px; } 117 | 118 | 119 | } 120 | 121 | /* Screens Resolution : 479px 122 | -------------------------------------------------------------------------- */ 123 | @media only screen and (max-width: 479px) { 124 | 125 | /* --------------------------------- 126 | 1. PRIMARY STYLES 127 | --------------------------------- */ 128 | 129 | body{ font-size: 14px; } 130 | 131 | /* --------------------------------- 132 | 6. MAIN POST ( LEF AREA ) 133 | --------------------------------- */ 134 | 135 | /* ICONS */ 136 | 137 | .main-post ul.post-icons, 138 | .main-post ul.icons{ float: none; margin-top: 10px; } 139 | 140 | .main-post ul.post-icons > li > a > i, 141 | .main-post ul.icons > li > a > i{ padding: 0; padding-right: 10px; } 142 | 143 | 144 | 145 | } 146 | 147 | /* Screens Resolution : 359px 148 | -------------------------------------------------------------------------- */ 149 | @media only screen and (max-width: 359px) { 150 | 151 | 152 | } 153 | 154 | /* Screens Resolution : 290px 155 | -------------------------------------------------------------------------- */ 156 | @media only screen and (max-width: 290px) { 157 | 158 | 159 | } -------------------------------------------------------------------------------- /public/category-sidebar/css/styles.css: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | ==================================================== 4 | 5 | * [Master Stylesheet] 6 | 7 | Theme Name : 8 | Version : 9 | Author : 10 | Author URI : 11 | 12 | ==================================================== 13 | 14 | 15 | /* --------------------------------- 16 | 1. PRIMARY STYLES 17 | --------------------------------- */ 18 | 19 | html{ font-size: 100%; height: 100%; overflow-x: hidden; touch-action: manipulation; } 20 | 21 | body{ font-size: 15px; font-family: 'Roboto', sans-serif; width: 100%; height: 100%; margin: 0; font-weight: 300; 22 | -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; word-wrap: break-word; 23 | background: #EDF3F3; color: #000; } 24 | 25 | h1, h2, h3, h4, h5, h6, p, a, ul, span, li, img{ margin: 0; padding: 0; font-weight: 300; } 26 | 27 | h1,h2,h3,h4,h5,h6{ line-height: 1.5; } 28 | 29 | p{ line-height: 1.6; font-family: 'Maven Pro', sans-serif; font-weight: 400; color: #444; } 30 | 31 | h1{ font-size: 4em; line-height: 1; } 32 | h2{ font-size: 2.8em; line-height: 1.1; } 33 | h3{ font-size: 2em; } 34 | h4{ font-size: 1.2em; } 35 | h5{ font-size: 1.1em; } 36 | h6{ font-size: .9em; letter-spacing: 1px; } 37 | 38 | a, button{ display: inline-block; text-decoration: none; color: inherit; transition: all .3s; } 39 | 40 | a:focus, a:active, a:hover, 41 | button:focus, button:active, button:hover{ text-decoration: none; color: #498BF9; } 42 | 43 | b{ font-weight: 500; } 44 | 45 | img{ width: 100%; } 46 | 47 | li{ list-style: none; display: inline-block; } 48 | 49 | span{ display: inline-block; } 50 | 51 | header{ font-weight: 400; } 52 | 53 | 54 | 55 | /* --------------------------------- 56 | 2. COMMONS FOR PAGE DESIGN 57 | --------------------------------- */ 58 | 59 | .section{ padding: 70px 0 40px; } 60 | 61 | .section .heading{ padding-bottom: 70px; } 62 | 63 | .center-text{ text-align: center; } 64 | 65 | .color-white{ color: #fff; } 66 | 67 | .display-table{ display: table; height: 100%; width: 100%; } 68 | 69 | .display-table-cell{ display: table-cell; vertical-align: middle; } 70 | 71 | .card{ background: transparent; border: 0; } 72 | 73 | .no-side-padding{ padding-right: 0px; padding-left: 0px; } 74 | 75 | .no-left-padding{ padding-left: 0px; } 76 | 77 | .no-right-padding{ padding-right: 0px; } 78 | 79 | .icon{ font-size: 2em; } 80 | 81 | 82 | ::-webkit-input-placeholder { font-size: .9em; letter-spacing: 1px; } 83 | 84 | ::-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 85 | 86 | :-ms-input-placeholder { font-size: .9em; letter-spacing: 1px; } 87 | 88 | :-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 89 | 90 | 91 | 92 | /* --------------------------------- 93 | 3. MENU 94 | --------------------------------- */ 95 | 96 | header{ overflow: hidden; background: #fff; box-shadow: 0px 2px 10px rgba(0,0,0, .3); } 97 | 98 | header .logo{ float: left; height: 20px; margin: 20px 30px; } 99 | 100 | header .logo img{ height: 100%; width: auto; } 101 | 102 | 103 | header .main-menu{ display: inline-block; float: left; } 104 | 105 | header .main-menu > li{ float: left; } 106 | 107 | header .main-menu > li > a{ height: 60px; line-height: 60px; padding: 0 25px; border-right: 1px solid #eee; } 108 | 109 | header .main-menu > li > a:hover{ background: #eee; } 110 | 111 | header .main-menu > li:first-child > a{ border-left: 1px solid #eee; } 112 | 113 | 114 | header .visible.main-menu{ display: block; } 115 | 116 | 117 | 118 | /* SEARCH AREA */ 119 | 120 | header .src-area{ position: relative; height: 60px; width: 50%; float: right; display: inline-block; background: #F5F7F6; } 121 | 122 | header .src-area .src-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 123 | padding: 0 20px 0 70px; background: transparent; border: 0; outline: 0; } 124 | 125 | header .src-area .src-input:focus{ box-shadow: 0px 0px 1px #aaa; } 126 | 127 | header .src-area .src-btn{ position: absolute; top: 0; bottom: 0; left: 0; width: 40px; background: none; border: 0; 128 | font-size: 1.2em; outline: 0; margin-left: 20px; opacity: .6; cursor: pointer; z-index: 10; } 129 | 130 | 131 | /* NAV ICON */ 132 | 133 | .menu-nav-icon{ display: none; height: 60px; width: 50px; text-align: center; line-height: 60px; cursor: pointer; 134 | position: absolute; right: 0; font-size: 1.8em; } 135 | 136 | 137 | 138 | /* --------------------------------- 139 | 4. SLIDER 140 | --------------------------------- */ 141 | 142 | .slider{ height: 400px; width: 100%; background-image: url(../../images/category-1.jpg); background-size: cover; } 143 | 144 | .slider .title{ color: #fff; text-shadow: 2px 2px 10px rgba(0,0,0,.3); } 145 | 146 | 147 | 148 | /* --------------------------------- 149 | 5. SINGLE POST 150 | --------------------------------- */ 151 | 152 | .blog-area .row div[class^="col"] { margin-bottom: 30px; } 153 | 154 | .blog-area{ text-align: center; background: #EDF3F3; } 155 | 156 | .blog-area .single-post{ height: 100%; position: relative; padding-bottom: 45px; 157 | overflow: hidden; box-shadow: 0px 0px 5px rgba(0,0,0,.1); border: 1px solid #ddd; background: #fff; } 158 | 159 | .blog-area .single-post .title{ padding: 20px 30px 30px; } 160 | 161 | .single-post .avatar{ margin: 0 auto; margin-top: -40px; width: 70px; height: 70px; overflow: hidden; z-index: 10; 162 | border-radius: 100px; position: relative; border: 7px solid #fff; box-shadow: 0px 0px 10px rgba(0,0,0,.2); } 163 | 164 | .single-post .post-footer{ position: absolute; bottom: 0; left: 0; right: 0; text-align: center; } 165 | 166 | .single-post .post-footer > li{ width: 33.33%; display: inline-block; border-right: 1px solid #fff; background: #EDF3F3; } 167 | 168 | .single-post .post-footer > li:first-child{ float: left; } 169 | 170 | .single-post .post-footer > li:last-child{ border: 0px; float: right; } 171 | 172 | .single-post .post-footer > li > a{ line-height: 45px; width: 100%; } 173 | 174 | .single-post .post-footer i{ display: inline-block; margin-right: 10px; opacity: .6; font-size: 1.1em; } 175 | 176 | 177 | /* --------------------------------- 178 | 6. NORMAL BLOG 179 | --------------------------------- */ 180 | 181 | .post-style-1 .blog-image{ max-height: 200px; overflow: hidden; } 182 | 183 | .load-more-btn{ padding: 15px 40px; margin: 10px 0 30px; transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,.4); 184 | background: #C3D8F5; } 185 | 186 | .load-more-btn:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 187 | 188 | 189 | 190 | /* --------------------------------- 191 | 7. INFO AREA 192 | --------------------------------- */ 193 | 194 | .blog-area .info-area{ height: auto; text-align: left; padding: 40px 0px; } 195 | 196 | .blog-area .info-area .title{ padding: 0; margin-bottom: 20px; } 197 | 198 | 199 | 200 | /* ABOUT AREA */ 201 | 202 | .blog-area .info-area .about-area{ padding: 0 30px 30px; margin: 0 0 30px; border-bottom: 1px solid #eee; } 203 | 204 | 205 | 206 | /* SUBSCRIBE AREA */ 207 | 208 | .info-area .subscribe-area{ padding: 0 30px 30px; margin: 0 0 30px; border-bottom: 1px solid #eee; } 209 | 210 | .info-area .input-area{ position: relative; height: 50px; width: 100%; box-shadow: 0px 0px 1px #bbb; background: #F5F7F6; } 211 | 212 | .info-area .input-area .email-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 213 | padding: 0 70px 0 20px; background: transparent; border: 0; outline: 0; } 214 | 215 | .info-area .input-area .email-input:focus{ box-shadow: 0px 0px 1px #aaa; } 216 | 217 | .info-area .input-area .submit-btn{ position: absolute; top: 0; bottom: 0; right: 0; width: 50px; background: none; 218 | border: 0; outline: 0; font-size: 1.7em; margin-right: 10px; opacity: .8; cursor: pointer; } 219 | 220 | 221 | 222 | /* TAG AREA */ 223 | 224 | .info-area .tag-area{ padding: 0 30px; } 225 | 226 | .tag-area > ul > li > a{ padding: 7px 12px; float: left; margin: 0 5px 5px 0; border: 1px solid #eee; background: #F5F6F8; } 227 | 228 | .tag-area > ul > li > a:hover{ background: none; } 229 | 230 | 231 | /* --------------------------------- 232 | 8. FOOTER 233 | --------------------------------- */ 234 | 235 | footer{ padding: 70px 0 30px; text-align: center; background: #fff; } 236 | 237 | footer .footer-section{ margin-bottom: 40px; } 238 | 239 | footer .footer-section .title{ margin-bottom: 20px; } 240 | 241 | footer .footer-section ul > li{ margin: 0 5px; } 242 | 243 | footer .copyright{ margin: 10px 0 20px; } 244 | 245 | footer .icons > li > a{ height: 40px; width: 40px; border-radius: 40px; line-height: 40px; text-align: center; 246 | transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,1); background: #498BF9; color: #fff; } 247 | 248 | footer .icons > li > a:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 249 | 250 | -------------------------------------------------------------------------------- /public/category/css/responsive.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* Screens Resolution : 992px 4 | -------------------------------------------------------------------------- */ 5 | @media only screen and (max-width: 1200px) { 6 | 7 | 8 | } 9 | 10 | /* Screens Resolution : 992px 11 | -------------------------------------------------------------------------- */ 12 | @media only screen and (max-width: 992px) { 13 | 14 | /* --------------------------------- 15 | 1. PRIMARY STYLES 16 | --------------------------------- */ 17 | 18 | h1{ font-size: 4em; } 19 | h2{ font-size: 3em; } 20 | h3{ font-size: 2em; } 21 | 22 | 23 | /* COMMoNS */ 24 | 25 | .no-left-padding{ padding-left: 15px; } 26 | 27 | .no-right-padding{ padding-right: 15px; } 28 | 29 | 30 | /* MENU */ 31 | 32 | /* SEARCH AREA */ 33 | 34 | header .src-area{ width: 30%; } 35 | 36 | 37 | /* --------------------------------- 38 | 6. MAIN POST ( LEF AREA ) 39 | --------------------------------- */ 40 | 41 | .main-post{ border-right: 0px ; } 42 | 43 | .main-post .blog-post-inner, 44 | .main-post .post-icons-area{ padding-right: 0px; } 45 | 46 | 47 | /* --------------------------------- 48 | 7. SIDEBAR AREA 49 | --------------------------------- */ 50 | 51 | .info-area{ padding: 30px 0; } 52 | 53 | .info-area .sidebar-area, 54 | .info-area .tag-area{ padding-left: 0px; } 55 | 56 | 57 | } 58 | 59 | 60 | /* Screens Resolution : 767px 61 | -------------------------------------------------------------------------- */ 62 | @media only screen and (max-width: 767px) { 63 | 64 | /* --------------------------------- 65 | 1. PRIMARY STYLES 66 | --------------------------------- */ 67 | 68 | p{ line-height: 1.4; } 69 | 70 | h1{ font-size: 3em; } 71 | h2{ font-size: 2.5em; } 72 | h3{ font-size: 1.8em; } 73 | h4{ font-size: 1.5em; } 74 | h5{ font-size: 1.2em; } 75 | 76 | /* --------------------------------- 77 | 2. COMMONS FOR PAGE DESIGN 78 | --------------------------------- */ 79 | 80 | .section{ padding: 40px 0 10px; } 81 | 82 | 83 | 84 | /* --------------------------------- 85 | 3. MENU 86 | --------------------------------- */ 87 | 88 | 89 | header .main-menu{ display: none; float: none; clear: both; border-top: 1px solid #ccc; } 90 | 91 | header .main-menu > li{ display: block; float: none; border-bottom: 1px solid #ddd; } 92 | 93 | header .main-menu > li:last-child{ border-bottom: 0; } 94 | 95 | header .main-menu li > a, 96 | header .main-menu ul.drop-down li > a{ display: block; line-height: 1; height: auto; padding: 15px; background: none; } 97 | 98 | 99 | 100 | /* SEARCH AREA */ 101 | 102 | header .src-area{ width: 100%; } 103 | 104 | 105 | /* NAV ICON */ 106 | 107 | .menu-nav-icon{ display: inline-block; } 108 | 109 | 110 | /* --------------------------------- 111 | 10. FOOTER 112 | --------------------------------- */ 113 | 114 | footer{ padding: 40px 0 0px; margin-top: 0px; } 115 | 116 | 117 | } 118 | 119 | /* Screens Resolution : 479px 120 | -------------------------------------------------------------------------- */ 121 | @media only screen and (max-width: 479px) { 122 | 123 | /* --------------------------------- 124 | 1. PRIMARY STYLES 125 | --------------------------------- */ 126 | 127 | body{ font-size: 14px; } 128 | 129 | /* --------------------------------- 130 | 6. MAIN POST ( LEF AREA ) 131 | --------------------------------- */ 132 | 133 | /* ICONS */ 134 | 135 | .main-post ul.post-icons, 136 | .main-post ul.icons{ float: none; margin-top: 10px; } 137 | 138 | .main-post ul.post-icons > li > a > i, 139 | .main-post ul.icons > li > a > i{ padding: 0; padding-right: 10px; } 140 | 141 | 142 | 143 | } 144 | 145 | /* Screens Resolution : 359px 146 | -------------------------------------------------------------------------- */ 147 | @media only screen and (max-width: 359px) { 148 | 149 | 150 | } 151 | 152 | /* Screens Resolution : 290px 153 | -------------------------------------------------------------------------- */ 154 | @media only screen and (max-width: 290px) { 155 | 156 | 157 | } -------------------------------------------------------------------------------- /public/category/css/styles.css: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | ==================================================== 4 | 5 | * [Master Stylesheet] 6 | 7 | Theme Name : 8 | Version : 9 | Author : 10 | Author URI : 11 | 12 | ==================================================== 13 | 14 | 15 | /* --------------------------------- 16 | 1. PRIMARY STYLES 17 | --------------------------------- */ 18 | 19 | html{ font-size: 100%; height: 100%; overflow-x: hidden; touch-action: manipulation; } 20 | 21 | body{ font-size: 15px; font-family: 'Roboto', sans-serif; width: 100%; height: 100%; margin: 0; font-weight: 300; 22 | -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; word-wrap: break-word; 23 | background: #EDF3F3; color: #000; } 24 | 25 | h1, h2, h3, h4, h5, h6, p, a, ul, span, li, img{ margin: 0; padding: 0; font-weight: 300; } 26 | 27 | h1,h2,h3,h4,h5,h6{ line-height: 1.5; } 28 | 29 | p{ line-height: 1.6; font-family: 'Maven Pro', sans-serif; font-weight: 400; color: #444; } 30 | 31 | h1{ font-size: 4em; line-height: 1; } 32 | h2{ font-size: 2.8em; line-height: 1.1; } 33 | h3{ font-size: 2em; } 34 | h4{ font-size: 1.2em; } 35 | h5{ font-size: 1.1em; } 36 | h6{ font-size: .9em; letter-spacing: 1px; } 37 | 38 | a, button{ display: inline-block; text-decoration: none; color: inherit; transition: all .3s; } 39 | 40 | a:focus, a:active, a:hover, 41 | button:focus, button:active, button:hover{ text-decoration: none; color: #498BF9; } 42 | 43 | b{ font-weight: 500; } 44 | 45 | img{ width: 100%; } 46 | 47 | li{ list-style: none; display: inline-block; } 48 | 49 | span{ display: inline-block; } 50 | 51 | header{ font-weight: 400; } 52 | 53 | 54 | 55 | /* --------------------------------- 56 | 2. COMMONS FOR PAGE DESIGN 57 | --------------------------------- */ 58 | 59 | .section{ padding: 70px 0 40px; } 60 | 61 | .section .heading{ padding-bottom: 70px; } 62 | 63 | .center-text{ text-align: center; } 64 | 65 | .color-white{ color: #fff; } 66 | 67 | .display-table{ display: table; height: 100%; width: 100%; } 68 | 69 | .display-table-cell{ display: table-cell; vertical-align: middle; } 70 | 71 | .card{ background: transparent; border: 0; } 72 | 73 | .no-side-padding{ padding-right: 0px; padding-left: 0px; } 74 | 75 | .no-left-padding{ padding-left: 0px; } 76 | 77 | .no-right-padding{ padding-right: 0px; } 78 | 79 | .icon{ font-size: 2em; } 80 | 81 | 82 | ::-webkit-input-placeholder { font-size: .9em; letter-spacing: 1px; } 83 | 84 | ::-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 85 | 86 | :-ms-input-placeholder { font-size: .9em; letter-spacing: 1px; } 87 | 88 | :-moz-placeholder { font-size: .9em; letter-spacing: 1px; } 89 | 90 | 91 | 92 | /* --------------------------------- 93 | 3. MENU 94 | --------------------------------- */ 95 | 96 | header{ overflow: hidden; background: #fff; box-shadow: 0px 2px 10px rgba(0,0,0, .3); } 97 | 98 | header .logo{ float: left; height: 20px; margin: 20px 30px; } 99 | 100 | header .logo img{ height: 100%; width: auto; } 101 | 102 | 103 | header .main-menu{ display: inline-block; float: left; } 104 | 105 | header .main-menu > li{ float: left; } 106 | 107 | header .main-menu > li > a{ height: 60px; line-height: 60px; padding: 0 25px; border-right: 1px solid #eee; } 108 | 109 | header .main-menu > li > a:hover{ background: #eee; } 110 | 111 | header .main-menu > li:first-child > a{ border-left: 1px solid #eee; } 112 | 113 | 114 | header .visible.main-menu{ display: block; } 115 | 116 | 117 | 118 | /* SEARCH AREA */ 119 | 120 | header .src-area{ position: relative; height: 60px; width: 50%; float: right; display: inline-block; background: #F5F7F6; } 121 | 122 | header .src-area .src-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 123 | padding: 0 20px 0 70px; background: transparent; border: 0; outline: 0; } 124 | 125 | header .src-area .src-input:focus{ box-shadow: 0px 0px 1px #aaa; } 126 | 127 | header .src-area .src-btn{ position: absolute; top: 0; bottom: 0; left: 0; width: 40px; background: none; border: 0; 128 | font-size: 1.2em; outline: 0; margin-left: 20px; opacity: .6; cursor: pointer; z-index: 10; } 129 | 130 | 131 | /* NAV ICON */ 132 | 133 | .menu-nav-icon{ display: none; height: 60px; width: 50px; text-align: center; line-height: 60px; cursor: pointer; 134 | position: absolute; right: 0; font-size: 1.8em; } 135 | 136 | 137 | /* --------------------------------- 138 | 4. SLIDER 139 | --------------------------------- */ 140 | 141 | .slider{ height: 400px; width: 100%; background-image: url(../../images/category-1.jpg); background-size: cover; } 142 | 143 | .slider .title{ color: #fff; text-shadow: 2px 2px 10px rgba(0,0,0,.3); } 144 | 145 | 146 | 147 | /* --------------------------------- 148 | 5. SINGLE POST 149 | --------------------------------- */ 150 | 151 | .blog-area .row div[class^="col"] { margin-bottom: 30px; } 152 | 153 | .blog-area{ text-align: center; background: #EDF3F3; } 154 | 155 | .blog-area .single-post{ height: 100%; position: relative; padding-bottom: 45px; 156 | overflow: hidden; box-shadow: 0px 0px 5px rgba(0,0,0,.1); border: 1px solid #ddd; background: #fff; } 157 | 158 | .blog-area .single-post .title{ padding: 20px 30px 30px; } 159 | 160 | .single-post .avatar{ margin: 0 auto; margin-top: -40px; width: 70px; height: 70px; overflow: hidden; z-index: 10; 161 | border-radius: 100px; position: relative; border: 7px solid #fff; box-shadow: 0px 0px 10px rgba(0,0,0,.2); } 162 | 163 | .single-post .post-footer{ position: absolute; bottom: 0; left: 0; right: 0; text-align: center; } 164 | 165 | .single-post .post-footer > li{ width: 33.33%; display: inline-block; border-right: 1px solid #fff; background: #EDF3F3; } 166 | 167 | .single-post .post-footer > li:first-child{ float: left; } 168 | 169 | .single-post .post-footer > li:last-child{ border: 0px; float: right; } 170 | 171 | .single-post .post-footer > li > a{ line-height: 45px; width: 100%; } 172 | 173 | .single-post .post-footer i{ display: inline-block; margin-right: 10px; opacity: .6; font-size: 1.1em; } 174 | 175 | 176 | 177 | /* --------------------------------- 178 | 6. NORMAL BLOG 179 | --------------------------------- */ 180 | 181 | .post-style-1 .blog-image{ max-height: 200px; overflow: hidden; } 182 | 183 | 184 | .load-more-btn{ padding: 15px 40px; margin: 10px 0 30px; transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,.4); 185 | background: #C3D8F5; } 186 | 187 | .load-more-btn:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 188 | 189 | 190 | 191 | /* --------------------------------- 192 | 7. FOOTER 193 | --------------------------------- */ 194 | 195 | footer{ padding: 70px 0 30px; background: #fff; } 196 | 197 | footer .footer-section{ margin-bottom: 40px; } 198 | 199 | footer .footer-section .title{ margin-bottom: 20px; } 200 | 201 | footer .footer-section ul > li{ margin-right: 10px; margin-top: 10px; } 202 | 203 | footer .copyright{ margin: 10px 0 20px; } 204 | 205 | footer .icons > li > a{ height: 40px; width: 40px; border-radius: 40px; line-height: 40px; text-align: center; 206 | transition: all .3s; box-shadow: 0px 0px 2px rgba(0,0,0,1); background: #498BF9; color: #fff; } 207 | 208 | footer .icons > li > a:hover{ transform: translateY(-2px); box-shadow: 5px 10px 20px rgba(0,0,0,.3); } 209 | 210 | footer .input-area{ position: relative; height: 50px; width: 100%; box-shadow: 0px 0px 1px #bbb; background: #F5F7F6; } 211 | 212 | footer .input-area .email-input{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; 213 | padding: 0 70px 0 20px; background: transparent; border: 0; outline: 0; } 214 | 215 | footer .input-area .email-input:focus{ box-shadow: 0px 0px 1px #aaa; } 216 | 217 | footer .input-area .submit-btn{ position: absolute; top: 0; bottom: 0; right: 0; width: 50px; background: none; 218 | border: 0; outline: 0; margin-right: 10px; opacity: .8; cursor: pointer; transition: all .2s; } 219 | 220 | 221 | 222 | -------------------------------------------------------------------------------- /public/common-js/scripts.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | (function ($) { 4 | 5 | "use strict"; 6 | 7 | enableSwiper(); 8 | 9 | $('[data-nav-menu]').on('click', function(event){ 10 | 11 | var $this = $(this), 12 | visibleHeadArea = $this.data('nav-menu'); 13 | 14 | $(visibleHeadArea).toggleClass('visible'); 15 | 16 | }); 17 | 18 | 19 | })(jQuery); 20 | 21 | 22 | function enableSwiper(){ 23 | 24 | if ( isExists('.swiper-container') ) { 25 | 26 | $('.swiper-container').each(function (index) { 27 | 28 | var swiperDirection = $(this).data('swiper-direction'), 29 | swiperSlidePerView = $(this).data('swiper-slides-per-view'), 30 | swiperBreakpoints = $(this).data('swiper-breakpoints'), 31 | swiperSpeed = $(this).data('swiper-speed'), 32 | swiperCrossFade = $(this).data('swiper-crossfade'), 33 | swiperLoop = $(this).data('swiper-loop'), 34 | swiperAutoplay = $(this).data('swiper-autoplay'), 35 | swiperMousewheelControl = $(this).data('swiper-wheel-control'), 36 | swipeSlidesPerview = $(this).data('slides-perview'), 37 | swiperMargin = parseInt($(this).data('swiper-margin')), 38 | swiperSlideEffect = $(this).data('slide-effect'), 39 | swiperAutoHeight = $(this).data('autoheight'), 40 | swiperScrollbar = ($(this).data('scrollbar') ? $(this).find('.swiper-scrollbar') : null); 41 | swiperScrollbar = (isExists(swiperScrollbar) ? swiperScrollbar : null); 42 | 43 | 44 | var swiper = new Swiper($(this)[0], { 45 | pagination : $(this).find('.swiper-pagination'), 46 | 47 | 48 | slidesPerView : ( swiperSlidePerView ? swiperSlidePerView : 1 ), 49 | direction : ( swiperDirection ? swiperDirection : 'horizontal'), 50 | loop : ( swiperLoop ? swiperLoop : false), 51 | nextButton : '.swiper-button-next', 52 | prevButton : '.swiper-button-prev', 53 | autoplay : ( swiperAutoplay ? swiperAutoplay : false), 54 | paginationClickable : true, 55 | spaceBetween : ( swiperMargin ? swiperMargin : 0), 56 | mousewheelControl : ( (swiperMousewheelControl) ? swiperMousewheelControl : false), 57 | scrollbar : ( swiperScrollbar ? swiperScrollbar : null ), 58 | scrollbarHide : false, 59 | speed : ( swiperSpeed ? swiperSpeed : 1000 ), 60 | autoHeight : ( (swiperAutoHeight == false) ? swiperAutoHeight : true ), 61 | effect : ( swiperSlideEffect ? swiperSlideEffect : 'coverflow' ), 62 | fade : { crossFade: swiperCrossFade ? swiperCrossFade : false }, 63 | breakpoints : { 64 | 1200: { slidesPerView: swiperBreakpoints ? 3 : 1, }, 65 | 992: { slidesPerView: swiperBreakpoints ? 2 : 1, }, 66 | 580: { slidesPerView: 1, } 67 | 68 | }, 69 | }); 70 | 71 | }); 72 | 73 | } 74 | } 75 | 76 | function isExists(elem){ 77 | if ($(elem).length > 0) { 78 | return true; 79 | } 80 | return false; 81 | } -------------------------------------------------------------------------------- /public/contact_form/css/main.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | /*////////////////////////////////////////////////////////////////// 6 | [ FONT ]*/ 7 | 8 | @font-face { 9 | font-family: Montserrat-Regular; 10 | src: url('../fonts/montserrat/Montserrat-Regular.ttf'); 11 | } 12 | 13 | @font-face { 14 | font-family: Montserrat-Bold; 15 | src: url('../fonts/montserrat/Montserrat-Bold.ttf'); 16 | } 17 | 18 | @font-face { 19 | font-family: Montserrat-ExtraBold; 20 | src: url('../fonts/montserrat/Montserrat-ExtraBold.ttf'); 21 | } 22 | 23 | @font-face { 24 | font-family: Montserrat-Medium; 25 | src: url('../fonts/montserrat/Montserrat-Medium.ttf'); 26 | } 27 | 28 | 29 | 30 | /*////////////////////////////////////////////////////////////////// 31 | [ RESTYLE TAG ]*/ 32 | 33 | * { 34 | margin: 0px; 35 | padding: 0px; 36 | box-sizing: border-box; 37 | } 38 | 39 | body, html { 40 | height: 100%; 41 | font-family: Montserrat-Regular, sans-serif; 42 | } 43 | 44 | /*---------------------------------------------*/ 45 | a { 46 | font-family: Montserrat-Regular; 47 | font-size: 14px; 48 | line-height: 1.7; 49 | color: #666666; 50 | margin: 0px; 51 | transition: all 0.4s; 52 | -webkit-transition: all 0.4s; 53 | -o-transition: all 0.4s; 54 | -moz-transition: all 0.4s; 55 | } 56 | 57 | a:focus { 58 | outline: none !important; 59 | } 60 | 61 | a:hover { 62 | text-decoration: none; 63 | color: #57b846; 64 | } 65 | 66 | /*---------------------------------------------*/ 67 | h1,h2,h3,h4,h5,h6 { 68 | margin: 0px; 69 | } 70 | 71 | p { 72 | font-family: Montserrat-Regular; 73 | font-size: 14px; 74 | line-height: 1.7; 75 | color: #666666; 76 | margin: 0px; 77 | } 78 | 79 | ul, li { 80 | margin: 0px; 81 | list-style-type: none; 82 | } 83 | 84 | 85 | /*---------------------------------------------*/ 86 | input { 87 | outline: none; 88 | border: none; 89 | } 90 | 91 | textarea { 92 | outline: none; 93 | border: none; 94 | } 95 | 96 | textarea:focus, input:focus { 97 | border-color: transparent !important; 98 | } 99 | 100 | input::-webkit-input-placeholder { color: #999999; } 101 | input:-moz-placeholder { color: #999999; } 102 | input::-moz-placeholder { color: #999999; } 103 | input:-ms-input-placeholder { color: #999999; } 104 | 105 | textarea::-webkit-input-placeholder { color: #999999; } 106 | textarea:-moz-placeholder { color: #999999; } 107 | textarea::-moz-placeholder { color: #999999; } 108 | textarea:-ms-input-placeholder { color: #999999; } 109 | 110 | /*---------------------------------------------*/ 111 | button { 112 | outline: none !important; 113 | border: none; 114 | background: transparent; 115 | } 116 | 117 | button:hover { 118 | cursor: pointer; 119 | } 120 | 121 | iframe { 122 | border: none !important; 123 | } 124 | 125 | 126 | 127 | 128 | /*////////////////////////////////////////////////////////////////// 129 | [ Contact 1 ]*/ 130 | 131 | .contact1 { 132 | width: 100%; 133 | min-height: 100%; 134 | padding: 15px; 135 | 136 | background: #009bff; 137 | background: -webkit-linear-gradient(left, #0072ff, #00c6ff); 138 | background: -o-linear-gradient(left, #0072ff, #00c6ff); 139 | background: -moz-linear-gradient(left, #0072ff, #00c6ff); 140 | background: linear-gradient(left, #0072ff, #00c6ff); 141 | 142 | display: -webkit-box; 143 | display: -webkit-flex; 144 | display: -moz-box; 145 | display: -ms-flexbox; 146 | display: flex; 147 | flex-wrap: wrap; 148 | justify-content: center; 149 | align-items: center; 150 | } 151 | 152 | .container-contact1 { 153 | width: 1163px; 154 | background: #fff; 155 | border-radius: 10px; 156 | overflow: hidden; 157 | 158 | display: -webkit-box; 159 | display: -webkit-flex; 160 | display: -moz-box; 161 | display: -ms-flexbox; 162 | display: flex; 163 | flex-wrap: wrap; 164 | justify-content: space-between; 165 | align-items: center; 166 | 167 | padding: 90px 130px 88px 148px; 168 | } 169 | 170 | /*------------------------------------------------------------------ 171 | [ ]*/ 172 | .contact1-pic { 173 | width: 296px; 174 | } 175 | 176 | .contact1-pic img { 177 | max-width: 100%; 178 | } 179 | 180 | 181 | /*------------------------------------------------------------------ 182 | [ ]*/ 183 | .contact1-form { 184 | width: 390px; 185 | } 186 | 187 | .contact1-form-title { 188 | display: block; 189 | font-family: Montserrat-ExtraBold; 190 | font-size: 24px; 191 | color: #333333; 192 | line-height: 1.2; 193 | text-align: center; 194 | padding-bottom: 44px; 195 | } 196 | 197 | input.input1 { 198 | height: 50px; 199 | border-radius: 25px; 200 | padding: 0 30px; 201 | } 202 | input.input1 + .shadow-input1 { 203 | border-radius: 25px; 204 | } 205 | 206 | textarea.input1 { 207 | min-height: 150px; 208 | border-radius: 25px; 209 | padding: 12px 30px; 210 | } 211 | textarea.input1 + .shadow-input1 { 212 | border-radius: 25px; 213 | } 214 | 215 | /*---------------------------------------------*/ 216 | .wrap-input1 { 217 | position: relative; 218 | width: 100%; 219 | z-index: 1; 220 | margin-bottom: 20px; 221 | } 222 | 223 | .input1 { 224 | display: block; 225 | width: 100%; 226 | background: #e6e6e6; 227 | font-family: Montserrat-Bold; 228 | font-size: 15px; 229 | line-height: 1.5; 230 | color: #666666; 231 | } 232 | 233 | .shadow-input1 { 234 | content: ''; 235 | display: block; 236 | position: absolute; 237 | bottom: 0; 238 | left: 0; 239 | z-index: -1; 240 | width: 100%; 241 | height: 100%; 242 | box-shadow: 0px 0px 0px 0px; 243 | color: rgba(87,184,70, 0.5); 244 | } 245 | 246 | .input1:focus + .shadow-input1 { 247 | -webkit-animation: anim-shadow 0.5s ease-in-out forwards; 248 | animation: anim-shadow 0.5s ease-in-out forwards; 249 | } 250 | 251 | @-webkit-keyframes anim-shadow { 252 | to { 253 | box-shadow: 0px 0px 80px 30px; 254 | opacity: 0; 255 | } 256 | } 257 | 258 | @keyframes anim-shadow { 259 | to { 260 | box-shadow: 0px 0px 80px 30px; 261 | opacity: 0; 262 | } 263 | } 264 | 265 | /*---------------------------------------------*/ 266 | .container-contact1-form-btn { 267 | display: -webkit-box; 268 | display: -webkit-flex; 269 | display: -moz-box; 270 | display: -ms-flexbox; 271 | display: flex; 272 | flex-wrap: wrap; 273 | justify-content: center; 274 | } 275 | 276 | .contact1-form-btn { 277 | min-width: 193px; 278 | height: 50px; 279 | border-radius: 25px; 280 | background: #57b846; 281 | font-family: Montserrat-Bold; 282 | font-size: 15px; 283 | line-height: 1.5; 284 | color: #fff; 285 | display: -webkit-box; 286 | display: -webkit-flex; 287 | display: -moz-box; 288 | display: -ms-flexbox; 289 | display: flex; 290 | justify-content: center; 291 | align-items: center; 292 | padding: 0 25px; 293 | 294 | -webkit-transition: all 0.4s; 295 | -o-transition: all 0.4s; 296 | -moz-transition: all 0.4s; 297 | transition: all 0.4s; 298 | } 299 | 300 | .contact1-form-btn i { 301 | margin-left: 7px; 302 | 303 | -webkit-transition: all 0.4s; 304 | -o-transition: all 0.4s; 305 | -moz-transition: all 0.4s; 306 | transition: all 0.4s; 307 | } 308 | 309 | .contact1-form-btn:hover { 310 | background: #333333; 311 | } 312 | 313 | .contact1-form-btn:hover i { 314 | -webkit-transform: translateX(10px); 315 | -moz-transform: translateX(10px); 316 | -ms-transform: translateX(10px); 317 | -o-transform: translateX(10px); 318 | transform: translateX(10px); 319 | } 320 | 321 | 322 | 323 | 324 | /*------------------------------------------------------------------ 325 | [ Responsive ]*/ 326 | 327 | @media (max-width: 1200px) { 328 | .contact1-pic { 329 | width: 33.5%; 330 | } 331 | 332 | .contact1-form { 333 | width: 44%; 334 | } 335 | } 336 | 337 | @media (max-width: 992px) { 338 | .container-contact1 { 339 | padding: 90px 80px 88px 90px; 340 | } 341 | 342 | .contact1-pic { 343 | width: 35%; 344 | } 345 | 346 | .contact1-form { 347 | width: 55%; 348 | } 349 | } 350 | 351 | @media (max-width: 768px) { 352 | .container-contact1 { 353 | padding: 90px 80px 88px 80px; 354 | } 355 | 356 | .contact1-pic { 357 | display: none; 358 | } 359 | 360 | .contact1-form { 361 | width: 100%; 362 | } 363 | } 364 | 365 | @media (max-width: 576px) { 366 | .container-contact1 { 367 | padding: 90px 15px 88px 15px; 368 | } 369 | } 370 | 371 | 372 | /*------------------------------------------------------------------ 373 | [ Alert validate ]*/ 374 | 375 | .validate-input { 376 | position: relative; 377 | } 378 | 379 | .alert-validate::before { 380 | content: attr(data-validate); 381 | position: absolute; 382 | max-width: 70%; 383 | background-color: white; 384 | border: 1px solid #c80000; 385 | border-radius: 13px; 386 | padding: 4px 25px 4px 10px; 387 | top: 50%; 388 | -webkit-transform: translateY(-50%); 389 | -moz-transform: translateY(-50%); 390 | -ms-transform: translateY(-50%); 391 | -o-transform: translateY(-50%); 392 | transform: translateY(-50%); 393 | right: 8px; 394 | pointer-events: none; 395 | 396 | font-family: Montserrat-Medium; 397 | color: #c80000; 398 | font-size: 13px; 399 | line-height: 1.4; 400 | text-align: left; 401 | 402 | visibility: hidden; 403 | opacity: 0; 404 | 405 | -webkit-transition: opacity 0.4s; 406 | -o-transition: opacity 0.4s; 407 | -moz-transition: opacity 0.4s; 408 | transition: opacity 0.4s; 409 | } 410 | 411 | .alert-validate::after { 412 | content: "\f06a"; 413 | font-family: FontAwesome; 414 | display: block; 415 | position: absolute; 416 | color: #c80000; 417 | font-size: 15px; 418 | top: 50%; 419 | -webkit-transform: translateY(-50%); 420 | -moz-transform: translateY(-50%); 421 | -ms-transform: translateY(-50%); 422 | -o-transform: translateY(-50%); 423 | transform: translateY(-50%); 424 | right: 13px; 425 | } 426 | 427 | .alert-validate:hover:before { 428 | visibility: visible; 429 | opacity: 1; 430 | } 431 | 432 | @media (max-width: 992px) { 433 | .alert-validate::before { 434 | visibility: visible; 435 | opacity: 1; 436 | } 437 | } -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/font-awesome-4.7.0/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/font-awesome-4.7.0/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | @import "screen-reader.less"; 19 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | .fa-icon-rotate(@degrees, @rotation) { 15 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation})"; 16 | -webkit-transform: rotate(@degrees); 17 | -ms-transform: rotate(@degrees); 18 | transform: rotate(@degrees); 19 | } 20 | 21 | .fa-icon-flip(@horiz, @vert, @rotation) { 22 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation}, mirror=1)"; 23 | -webkit-transform: scale(@horiz, @vert); 24 | -ms-transform: scale(@horiz, @vert); 25 | transform: scale(@horiz, @vert); 26 | } 27 | 28 | 29 | // Only display content to screen readers. A la Bootstrap 4. 30 | // 31 | // See: http://a11yproject.com/posts/how-to-hide-content/ 32 | 33 | .sr-only() { 34 | position: absolute; 35 | width: 1px; 36 | height: 1px; 37 | padding: 0; 38 | margin: -1px; 39 | overflow: hidden; 40 | clip: rect(0,0,0,0); 41 | border: 0; 42 | } 43 | 44 | // Use in conjunction with .sr-only to only display content when it's focused. 45 | // 46 | // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 47 | // 48 | // Credit: HTML5 Boilerplate 49 | 50 | .sr-only-focusable() { 51 | &:active, 52 | &:focus { 53 | position: static; 54 | width: auto; 55 | height: auto; 56 | margin: 0; 57 | overflow: visible; 58 | clip: auto; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/screen-reader.less: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { .sr-only(); } 5 | .sr-only-focusable { .sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | @mixin fa-icon-rotate($degrees, $rotation) { 15 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; 16 | -webkit-transform: rotate($degrees); 17 | -ms-transform: rotate($degrees); 18 | transform: rotate($degrees); 19 | } 20 | 21 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 22 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)"; 23 | -webkit-transform: scale($horiz, $vert); 24 | -ms-transform: scale($horiz, $vert); 25 | transform: scale($horiz, $vert); 26 | } 27 | 28 | 29 | // Only display content to screen readers. A la Bootstrap 4. 30 | // 31 | // See: http://a11yproject.com/posts/how-to-hide-content/ 32 | 33 | @mixin sr-only { 34 | position: absolute; 35 | width: 1px; 36 | height: 1px; 37 | padding: 0; 38 | margin: -1px; 39 | overflow: hidden; 40 | clip: rect(0,0,0,0); 41 | border: 0; 42 | } 43 | 44 | // Use in conjunction with .sr-only to only display content when it's focused. 45 | // 46 | // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 47 | // 48 | // Credit: HTML5 Boilerplate 49 | 50 | @mixin sr-only-focusable { 51 | &:active, 52 | &:focus { 53 | position: static; 54 | width: auto; 55 | height: auto; 56 | margin: 0; 57 | overflow: visible; 58 | clip: auto; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_screen-reader.scss: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { @include sr-only(); } 5 | .sr-only-focusable { @include sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /public/contact_form/fonts/font-awesome-4.7.0/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | @import "screen-reader"; 19 | -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Black.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-BlackItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-BlackItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Bold.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-BoldItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-ExtraBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-ExtraBold.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-ExtraBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-ExtraBoldItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-ExtraLight.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Italic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Light.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-LightItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Medium.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-MediumItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Regular.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-SemiBold.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-Thin.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/Montserrat-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/fonts/montserrat/Montserrat-ThinItalic.ttf -------------------------------------------------------------------------------- /public/contact_form/fonts/montserrat/OFL.txt: -------------------------------------------------------------------------------- 1 | Copyright 2011 The Montserrat Project Authors (https://github.com/JulietaUla/Montserrat) 2 | 3 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 4 | This license is copied below, and is also available with a FAQ at: 5 | http://scripts.sil.org/OFL 6 | 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide 14 | development of collaborative font projects, to support the font creation 15 | efforts of academic and linguistic communities, and to provide a free and 16 | open framework in which fonts may be shared and improved in partnership 17 | with others. 18 | 19 | The OFL allows the licensed fonts to be used, studied, modified and 20 | redistributed freely as long as they are not sold by themselves. The 21 | fonts, including any derivative works, can be bundled, embedded, 22 | redistributed and/or sold with any software provided that any reserved 23 | names are not used by derivative works. The fonts and derivatives, 24 | however, cannot be released under any other type of license. The 25 | requirement for fonts to remain under this license does not apply 26 | to any document created using the fonts or their derivatives. 27 | 28 | DEFINITIONS 29 | "Font Software" refers to the set of files released by the Copyright 30 | Holder(s) under this license and clearly marked as such. This may 31 | include source files, build scripts and documentation. 32 | 33 | "Reserved Font Name" refers to any names specified as such after the 34 | copyright statement(s). 35 | 36 | "Original Version" refers to the collection of Font Software components as 37 | distributed by the Copyright Holder(s). 38 | 39 | "Modified Version" refers to any derivative made by adding to, deleting, 40 | or substituting -- in part or in whole -- any of the components of the 41 | Original Version, by changing formats or by porting the Font Software to a 42 | new environment. 43 | 44 | "Author" refers to any designer, engineer, programmer, technical 45 | writer or other person who contributed to the Font Software. 46 | 47 | PERMISSION & CONDITIONS 48 | Permission is hereby granted, free of charge, to any person obtaining 49 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 50 | redistribute, and sell modified and unmodified copies of the Font 51 | Software, subject to the following conditions: 52 | 53 | 1) Neither the Font Software nor any of its individual components, 54 | in Original or Modified Versions, may be sold by itself. 55 | 56 | 2) Original or Modified Versions of the Font Software may be bundled, 57 | redistributed and/or sold with any software, provided that each copy 58 | contains the above copyright notice and this license. These can be 59 | included either as stand-alone text files, human-readable headers or 60 | in the appropriate machine-readable metadata fields within text or 61 | binary files as long as those fields can be easily viewed by the user. 62 | 63 | 3) No Modified Version of the Font Software may use the Reserved Font 64 | Name(s) unless explicit written permission is granted by the corresponding 65 | Copyright Holder. This restriction only applies to the primary font name as 66 | presented to the users. 67 | 68 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 69 | Software shall not be used to promote, endorse or advertise any 70 | Modified Version, except to acknowledge the contribution(s) of the 71 | Copyright Holder(s) and the Author(s) or with their explicit written 72 | permission. 73 | 74 | 5) The Font Software, modified or unmodified, in part or in whole, 75 | must be distributed entirely under this license, and must not be 76 | distributed under any other license. The requirement for fonts to 77 | remain under this license does not apply to any document created 78 | using the Font Software. 79 | 80 | TERMINATION 81 | This license becomes null and void if any of the above conditions are 82 | not met. 83 | 84 | DISCLAIMER 85 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 86 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 87 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 88 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 89 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 90 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 91 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 92 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 93 | OTHER DEALINGS IN THE FONT SOFTWARE. 94 | -------------------------------------------------------------------------------- /public/contact_form/images/icons/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/images/icons/favicon.ico -------------------------------------------------------------------------------- /public/contact_form/images/img-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/images/img-01.png -------------------------------------------------------------------------------- /public/contact_form/images/laptop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daviidy/blog-mvc/d8647848b266428b1fe988d63b60677f2b5a5729/public/contact_form/images/laptop.png -------------------------------------------------------------------------------- /public/contact_form/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor 67 | incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, 68 | quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat 69 | Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. 70 | Excepteur sint occaecat cupidatat non proident, 71 | sunt in culpa qui officia deserunt mollit anim id est laborum 72 | Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque 73 | laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi 74 | architecto beatae vitae dicta sunt explicabo. 75 | Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, 76 | sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.
77 | 78 |Labore et dolore magna aliqua. Ut enim ad minim veniam, 79 | quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat 80 | Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. 81 | Excepteur sint occaecat cupidatat non proident, 82 | sunt in culpa qui officia deserunt mollit anim id est laborum 83 | Sed ut perspiciatis unde omnis iste natus.
84 | 85 |Occaecat cupidatat non proident, 86 | sunt in culpa qui officia deserunt mollit anim id est laborum 87 | Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque 88 | laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi 89 | architecto beatae vitae dicta sunt explicabo. 90 | Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, 91 | sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.
92 | 93 | 94 |