Full Code of lacymorrow/casper for AI

master fa1338a5a6f5 cached
49 files
396.4 KB
113.1k tokens
29 symbols
1 requests
Download .txt
Showing preview only (413K chars total). Download the full file or copy to clipboard to get everything.
Repository: lacymorrow/casper
Branch: master
Commit: fa1338a5a6f5
Files: 49
Total size: 396.4 KB

Directory structure:
gitextract_99bygv5h/

├── .bithoundrc
├── .gitignore
├── .jscsrc
├── .travis.yml
├── 404.php
├── Gruntfile.js
├── archive.php
├── changelog.txt
├── comments.php
├── content-none.php
├── content-page.php
├── content-single.php
├── content.php
├── css/
│   ├── admin.css
│   ├── custom-editor-style.css
│   ├── rtl.css
│   └── style.css
├── footer.php
├── functions.php
├── header.php
├── inc/
│   ├── custom-header.php
│   ├── customizer.php
│   ├── extras.php
│   ├── jetpack.php
│   └── template-tags.php
├── index.php
├── js/
│   ├── customizer.js
│   └── main.js
├── languages/
│   ├── casper.pot
│   └── readme.txt
├── license.txt
├── package.json
├── page.php
├── readme.md
├── readme.txt
├── rtl.css
├── search.php
├── sidebar.php
├── single.php
├── src/
│   ├── js/
│   │   ├── casper.js
│   │   ├── jquery.fitvids.js
│   │   ├── navigation.js
│   │   └── skip-link-focus-fix.js
│   └── less/
│       ├── admin.less
│       ├── fa.css
│       ├── normalize.css
│       ├── rtl.less
│       └── style.less
└── style.css

================================================
FILE CONTENTS
================================================

================================================
FILE: .bithoundrc
================================================
{
	"ignore": [
		"**/*grunt*",
	    "**/src/**"
	  ]
}

================================================
FILE: .gitignore
================================================
.git
.fuse*
node_modules/*
.DS_Store

================================================
FILE: .jscsrc
================================================
{
    "preset": "wordpress",
    "fileExtensions": [ ".js" ],
    "excludeFiles": [
    	"js/main.js",
    	"src/"
    ]
}

================================================
FILE: .travis.yml
================================================
# Travis CI configuration file.
# @link https://travis-ci.org/

# Based on the methods seen in the Twenty Sixteen WordPress theme
# @link https://github.com/WordPress/twentysixteen/

# Declare project language and PHP versions to test against.
# @link http://about.travis-ci.org/docs/user/languages/php/
language: php

# Declare versions of PHP to use. Use one decimal max.
php:
    - "7.0"
    - "5.6"
    - "5.5"
    - "5.4"
    # Current $required_php_version for WordPress: 5.2.4

# Ditch sudo and use containers.
# @link http://docs.travis-ci.com/user/migrating-from-legacy/#Why-migrate-to-container-based-infrastructure%3F
# @link http://docs.travis-ci.com/user/workers/container-based-infrastructure/#Routing-your-build-to-container-based-infrastructure
sudo: false

# Declare which versions of WordPress to test against.
# Also declare whether or not to test in Multisite.
env:
    # Trunk (current version in development is 4.4)
    # @link https://github.com/WordPress/WordPress
    - WP_VERSION=master WP_MULTISITE=0

# Use this to prepare your build for testing.
# e.g. copy database configurations, environment variables, etc.
# Failures in this section will result in build status 'errored'.
before_script:
    # Set up WordPress installation.
    - export WP_DEVELOP_DIR=/tmp/wordpress/
    - mkdir -p $WP_DEVELOP_DIR
    # Use the Git mirror of WordPress.
    - git clone --depth=1 --branch="$WP_VERSION" git://develop.git.wordpress.org/ $WP_DEVELOP_DIR
    # Set up Twenty Sixteen theme information.
    - theme_slug=$(basename $(pwd))
    - theme_dir=$WP_DEVELOP_DIR/src/wp-content/themes/$theme_slug
    - cd ..
    - mv $theme_slug $theme_dir
    # Set up WordPress configuration.
    - cd $WP_DEVELOP_DIR
    - echo $WP_DEVELOP_DIR
    - cp wp-tests-config-sample.php wp-tests-config.php
    #- sed -i "s/youremptytestdbnamehere/wordpress_test/" wp-tests-config.php
    #- sed -i "s/yourusernamehere/root/" wp-tests-config.php
    #- sed -i "s/yourpasswordhere//" wp-tests-config.php
    # Create WordPress database.
    - mysql -e 'CREATE DATABASE wordpress_test;' -uroot
    # Install CodeSniffer for WordPress Coding Standards checks.
    #- mkdir php-codesniffer && curl -L https://github.com/squizlabs/PHP_CodeSniffer/archive/master.tar.gz | tar xz --strip-components=1 -C php-codesniffer
    # Install WordPress Coding Standards.
    #- mkdir wordpress-coding-standards && curl -L https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/archive/master.tar.gz | tar xz --strip-components=1 -C wordpress-coding-standards
    # Hop into CodeSniffer directory.
    #- cd php-codesniffer
    # Set install path for WordPress Coding Standards
    # @link https://github.com/squizlabs/PHP_CodeSniffer/blob/4237c2fc98cc838730b76ee9cee316f99286a2a7/CodeSniffer.php#L1941
    #- scripts/phpcs --config-set installed_paths ../wordpress-coding-standards
    # Hop into themes directory.
    - cd $theme_dir
    # After CodeSniffer install you should refresh your path.
    #- phpenv rehash
    # Install JSCS: JavaScript Code Style checker
    # @link http://jscs.info/
    - npm install -g jscs
    # Install JSHint, a JavaScript Code Quality Tool
    # @link http://jshint.com/docs/
    - npm install -g jshint
    - wget https://develop.svn.wordpress.org/trunk/.jshintrc

# Run test script commands.
# Default is specific to project language.
# All commands must exit with code 0 on success. Anything else is considered failure.
script:
    # Search theme for PHP syntax errors.
    - find . \( -name '*.php' \) -exec php -lf {} \;
    # Run the theme through JSHint
    - jshint .
    # Run the theme through JavaScript Code Style checker
    - jscs .
    # WordPress Coding Standards
    # @link https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards
    # @link http://pear.php.net/package/PHP_CodeSniffer/
    # -p flag: Show progress of the run.
    # -s flag: Show sniff codes in all reports.
    # -v flag: Print verbose output.
    # -n flag: Do not print warnings (shortcut for --warning-severity=0)
    # --standard: Use WordPress as the standard.
    # --extensions: Only sniff PHP files.
    #- $WP_DEVELOP_DIR/php-codesniffer/scripts/phpcs -p -s -v -n . --standard=./codesniffer.ruleset.xml --extensions=php

================================================
FILE: 404.php
================================================
<?php
/**
 * The template for displaying 404 pages (Not Found).
 *
 * @package Casper
 */

get_header(); 
?>
	<div id="primary" class="content-area">
		<main id="main" class="site-main" role="main">

			<section class="error-404 not-found hentry">
				<header class="page-header">
					<h1 class="entry-title"><?php _e( 'Oops! That page can&rsquo;t be found.', 'casper' ); ?></h1>
				</header><!-- .page-header -->

				<div class="page-content">
					<img class="alignright" src="<?php echo get_template_directory_uri(); ?>/img/404-ghost@2x.png" width="96" height="150">
					<p><?php _e( 'We tried searching for what you were looking for, but didn&apos;t find anything. Please use the search form below.', 'casper'); ?></p>
					
					<p><?php get_search_form(); ?></p>

				</div><!-- .page-content -->
			</section><!-- .error-404 -->

		</main><!-- #main -->
	</div><!-- #primary -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>


================================================
FILE: Gruntfile.js
================================================
    module.exports = function( grunt ) {
    require( 'load-grunt-tasks' )( grunt, { scope: 'devDependencies' });
    require( 'time-grunt' )( grunt );
    grunt.initConfig({
        pkg: grunt.file.readJSON( 'package.json' ),
        banner: '/*\n' +
                '  Theme Name:       <%= pkg.name%>\n' +
                '  Theme URI:        <%= pkg.homepage %>\n' +
                '  Author:           Lacy Morrow\n' +
                '  Author URI:       http://lacymorrow.com\n' +
                '  Description:      <%= pkg.description %>\n' +
                '  Version:          <%= pkg.version%>\n' +
                '  License:          GNU General Public License v2.0\n' +
                '  License URI:      http://www.gnu.org/licenses/gpl-2.0.html\n' +
                '  Text Domain:      casper\n' +
                '  Domain Path:      /languages/\n' +
                '  Tags:             responsive-layout, black, white, one-column, fluid-layout, custom-header, custom-menu, editor-style\n' +
                '  GitHub Theme URI: <%= pkg.repository.url %>\n' +
                '  GitHub Branch:    master\n' +
                '  Casper is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.\n' +
                '*/',
        autoprefixer: {
            options: {
                browsers: ['> 1%', 'last 2 versions', 'Firefox ESR', 'Opera 12.1', 'ie 9']
            },
            casper: {
                expand: true,
                flatten: true,
                src: '<%= concat.casper.dest %>'
            }
        },
        concat: {
            options: {
                banner: '<%= banner %>\n',
                stripBanners: true
            },
            casper: {
                src: ['css/style.css', 'src/css/**/*.css'],
                dest: 'css/style.css'
            }
        },
        csscomb: {
            casper: {
                src: '<%= concat.casper.dest %>',
                dest: '<%= concat.casper.dest %>'
            }
        },
        csslint: {
            src: [
                '<%= concat.casper.dest %>'
            ]
        },
        cssmin: {
            casper: {
                options: {
                    noAdvanced: true,
                    compatibility: 'ie8',
                    keepSpecialComments: 0
                },
                casper: {
                    src: 'css/style.css',
                    dest: 'style.css'
                }
            }
        },
        jshint: {
            casper: ['Gruntfile.js', 'src/js/**/*.js', 'js/**/*.js'],
            options: {
                globals: {
                    jQuery: true,
                    console: true,
                    module: true,
                    document: true
                }
            }
        },
        less: {
            casper: {
                files: {
                    'css/style.css': ['src/less/style.less'],
                    'css/rtl.css': ['src/less/rtl.less'],
                    'css/admin.css': ['src/less/admin.less']
                }
            }
        },
        checktextdomain: {
           options:{
              text_domain: 'casper',
              correct_domain: true, //Will correct missing/variable domains
              keywords: [ //WordPress localisation functions
                    '__:1,2d',
                    '_e:1,2d',
                    '_x:1,2c,3d',
                    'esc_html__:1,2d',
                    'esc_html_e:1,2d',
                    'esc_html_x:1,2c,3d',
                    'esc_attr__:1,2d',
                    'esc_attr_e:1,2d',
                    'esc_attr_x:1,2c,3d',
                    '_ex:1,2c,3d',
                    '_n:1,2,4d',
                    '_nx:1,2,4c,5d',
                    '_n_noop:1,2,3d',
                    '_nx_noop:1,2,3c,4d'
              ]
           },
           files: {
               src:  [ '*.php', 'inc/*.php' ], //All php files
               expand: true
           }
        },
        pot: {
            options: {
                text_domain: 'casper',
                dest: 'languages/',
                keywords: [ //WordPress localisation functions
                  '__:1',
                  '_e:1',
                  '_x:1,2c',
                  'esc_html__:1',
                  'esc_html_e:1',
                  'esc_html_x:1,2c',
                  'esc_attr__:1',
                  'esc_attr_e:1',
                  'esc_attr_x:1,2c',
                  '_ex:1,2c',
                  '_n:1,2',
                  '_nx:1,2,4c',
                  '_n_noop:1,2',
                  '_nx_noop:1,2,3c'
                 ]
            },
            files:{
                src:  [ '*.php', 'inc/*.php' ], //Parse all php files
                expand: true
            }
        },
        uglify: {
            options: {
                banner: '/* jshint ignore: start */\n/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
            },
            casper: {
                src: 'src/js/**/*.js',
                dest: 'js/main.js'
            }
        },
        watch: {
            options: {
                livereload: true
            },
            casper: {
                files: ['Gruntfile.js', 'src/**/*'],
                tasks: ['default'],
                options: {
                    nospawn: true
                }
            }
        }
    });
    grunt.registerTask( 'i18n', ['checktextdomain', 'pot']);
    grunt.registerTask( 'js', [ /* 'jshint', */ 'uglify']);
    grunt.registerTask( 'css', ['less', 'concat', 'csscomb', /* 'csslint', */ 'autoprefixer', 'cssmin']);
    grunt.registerTask( 'default', ['css', 'js']);

};


================================================
FILE: archive.php
================================================
<?php
/**
 * The template for displaying Archive pages.
 *
 * Learn more: http://codex.wordpress.org/Template_Hierarchy
 *
 * @package Casper
 */

get_header(); ?>

	<section id="primary" class="content-area">
		<main id="main" class="site-main" role="main">

		<?php if ( have_posts() ) : ?>

			<header class="page-header">
				<h1 class="page-title">
					<?php
						if ( is_category() ) :
							single_cat_title();

						elseif ( is_tag() ) :
							single_tag_title();

						elseif ( is_author() ) :
							printf( __( 'Author: %s', 'casper' ), '<span class="vcard">' . get_the_author() . '</span>' );

						elseif ( is_day() ) :
							printf( __( 'Day: %s', 'casper' ), '<span>' . get_the_date() . '</span>' );

						elseif ( is_month() ) :
							printf( __( 'Month: %s', 'casper' ), '<span>' . get_the_date( _x( 'F Y', 'monthly archives date format', 'casper' ) ) . '</span>' );

						elseif ( is_year() ) :
							printf( __( 'Year: %s', 'casper' ), '<span>' . get_the_date( _x( 'Y', 'yearly archives date format', 'casper' ) ) . '</span>' );

						elseif ( is_tax( 'post_format', 'post-format-aside' ) ) :
							_e( 'Asides', 'casper' );

						elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) :
							_e( 'Galleries', 'casper');

						elseif ( is_tax( 'post_format', 'post-format-image' ) ) :
							_e( 'Images', 'casper');

						elseif ( is_tax( 'post_format', 'post-format-video' ) ) :
							_e( 'Videos', 'casper' );

						elseif ( is_tax( 'post_format', 'post-format-quote' ) ) :
							_e( 'Quotes', 'casper' );

						elseif ( is_tax( 'post_format', 'post-format-link' ) ) :
							_e( 'Links', 'casper' );

						elseif ( is_tax( 'post_format', 'post-format-status' ) ) :
							_e( 'Statuses', 'casper' );

						elseif ( is_tax( 'post_format', 'post-format-audio' ) ) :
							_e( 'Audios', 'casper' );

						elseif ( is_tax( 'post_format', 'post-format-chat' ) ) :
							_e( 'Chats', 'casper' );

						else :
							_e( 'Archives', 'casper' );

						endif;
					?>
				</h1>
				<?php
					// Show an optional term description.
					$term_description = term_description();
					if ( ! empty( $term_description ) ) :
						printf( '<div class="taxonomy-description">%s</div>', $term_description );
					endif;
				?>
			</header><!-- .page-header -->

			<?php /* Start the Loop */ ?>
			<?php while ( have_posts() ) : the_post(); ?>

				<?php
					/* Include the Post-Format-specific template for the content.
					 * If you want to override this in a child theme, then include a file
					 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
					 */
					get_template_part( 'content', get_post_format() );
				?>

			<?php endwhile; ?>

			<?php casper_paging_nav(); ?>

		<?php else : ?>

			<?php get_template_part( 'content', 'none' ); ?>

		<?php endif; ?>

		</main><!-- #main -->
	</section><!-- #primary -->

<?php get_sidebar(); ?>
<?php get_footer(); ?>


================================================
FILE: changelog.txt
================================================
= 1.1.1 =

* Add auto-excerpt option - https://github.com/lacymorrow/casper/issues/17

* Increase header size to <h1> - https://github.com/lacymorrow/casper/issues/31

* Fix widget layout issues; Made responsive - https://github.com/lacymorrow/casper/issues/37

* Add Excerpts - https://github.com/lacymorrow/casper/issues/43

* Fix menu on mobile - https://github.com/lacymorrow/casper/issues/47

* Fix inline emoticons breaking paragraph - https://github.com/lacymorrow/casper/issues/49

* Fix spacing in tag listings - https://github.com/lacymorrow/casper/issues/50

* Add Flickr/stack-overflow/behance/codepen/deviantart/lastfm/spotify/soundclod icons - https://github.com/lacymorrow/casper/issues/51

* Clear DOM after posts -  https://github.com/lacymorrow/casper/issues/52

* Make tags, categories, dates optional - https://github.com/lacymorrow/casper/issues/55

* Fix captioned images extra padding - https://github.com/lacymorrow/casper/issues/57

* Add author image - https://github.com/lacymorrow/casper/issues/58

* Create child theme - copy casper-child to themes directory and activate - https://github.com/lacymorrow/casper/issues/59

* Add custom 'Read More' link option - https://github.com/lacymorrow/casper/issues/61

* Rename casper-wp to casper

* Add `grunt i18n` for theme internationalization

* Add edit link to content.php


= 1.1.0 =

* Icon fixes

* New icon font - Font Awesome

* Clean up outdated info.

= 1.0.17 =

* Sub-menu support

* New icons

* Minimal mobile enhancements

* Translation improvements for fix-size elements

* Change Wordpress to WordPress in screenshot

================================================
FILE: comments.php
================================================
<?php
/**
 * The template for displaying Comments.
 *
 * The area of the page that contains both current comments
 * and the comment form.
 *
 * @package Casper
 */

/*
 * If the current post is protected by a password and
 * the visitor has not yet entered the password we will
 * return early without loading the comments.
 */
if ( post_password_required() ) {
	return;
}
?>

<div id="comments" class="comments-area">

	<?php // You can start editing here -- including this comment! ?>

	<?php if ( have_comments() ) : ?>
		<h2 class="comments-title">
			<?php
				printf( _nx( 'One thought on &ldquo;%2$s&rdquo;', '%1$s thoughts on &ldquo;%2$s&rdquo;', get_comments_number(), 'comments title', 'casper' ),
					number_format_i18n( get_comments_number() ), '<span>' . get_the_title() . '</span>' );
			?>
		</h2>

		<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
		<nav id="comment-nav-above" class="comment-navigation" role="navigation">
			<h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'casper' ); ?></h1>
			<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'casper' ) ); ?></div>
			<div class="nav-next"><?php next_comments_link( __( 'Newer Comments &rarr;', 'casper' ) ); ?></div>
		</nav><!-- #comment-nav-above -->
		<?php endif; // check for comment navigation ?>

		<ol class="comment-list">
			<?php
				wp_list_comments( array(
					'style'      => 'ol',
					'short_ping' => true,
				) );
			?>
		</ol><!-- .comment-list -->

		<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
		<nav id="comment-nav-below" class="comment-navigation" role="navigation">
			<h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'casper' ); ?></h1>
			<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'casper' ) ); ?></div>
			<div class="nav-next"><?php next_comments_link( __( 'Newer Comments &rarr;', 'casper' ) ); ?></div>
		</nav><!-- #comment-nav-below -->
		<?php endif; // check for comment navigation ?>

	<?php endif; // have_comments() ?>

	<?php
		// If comments are closed and there are comments, let's leave a little note, shall we?
		if ( ! comments_open() && '0' != get_comments_number() && post_type_supports( get_post_type(), 'comments' ) ) :
	?>
		<p class="no-comments"><?php _e( 'Comments are closed.', 'casper' ); ?></p>
	<?php endif; ?>

	<?php comment_form(); ?>

</div><!-- #comments -->


================================================
FILE: content-none.php
================================================
<?php
/**
 * The template part for displaying a message that posts cannot be found.
 *
 * Learn more: http://codex.wordpress.org/Template_Hierarchy
 *
 * @package Casper
 */
?>

<section class="no-results not-found hentry">
	<header class="page-header">
		<h1 class="page-title"><?php _e( 'Nothing Found', 'casper' ); ?></h1>
	</header><!-- .page-header -->

	<div class="page-content">
		<?php if ( is_home() && current_user_can( 'publish_posts' ) ) : ?>

			<p><?php printf( __( 'Ready to publish your first post? <a href="%1$s">Get started here</a>.', 'casper' ), esc_url( admin_url( 'post-new.php' ) ) ); ?></p>

		<?php elseif ( is_search() ) : ?>

			<p><?php _e( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'casper' ); ?></p>
			<?php get_search_form(); ?>

		<?php else : ?>

			<p><?php _e( 'It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help.', 'casper' ); ?></p>
			<?php get_search_form(); ?>

		<?php endif; ?>
	</div><!-- .page-content -->
</section><!-- .no-results -->


================================================
FILE: content-page.php
================================================
<?php
/**
 * The template used for displaying page content in page.php
 *
 * @package Casper
 */
?>
<?php
    /* translators: used between list items, there is a space after the comma */
    $category_list = get_the_category_list( __( ', ', 'casper' ) );

    /* translators: used between list items, there is a space after the comma */
    $tag_list = get_the_tag_list( '', __( ', ', 'casper' ) );

    if ( ! casper_categorized_blog() ) {
        // This blog only has 1 category so we just need to worry about tags in the meta text
        if ( '' != $tag_list ) {
            $meta_text = __( 'This entry was tagged %2$s. Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
        } else {
            $meta_text = __( 'Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
        }

    } else {
        // But this blog has loads of categories so we should probably display them here
        if ( '' != $tag_list ) {
            $meta_text = __( 'This entry was posted in %1$s and tagged %2$s. Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
        } else {
            $meta_text = __( 'This entry was posted in %1$s. Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
        }

    } // end check for categories on this blog
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
    <header class="post-header">
        <?php if ( 'post' == get_post_type() ) : ?>
            <span class="post-meta">
                <?php 
                    if(  false == get_theme_mod( 'casper_hide_dates') ) {
                        casper_posted_on(); 
                    }
                    if(  false == get_theme_mod( 'casper_hide_categories') ) {
                        printf( __( ' | ', 'casper' ).'%1$s', $category_list );
                    }
                    if(  false == get_theme_mod( 'casper_hide_tags') ) {
                        if ( '' != $tag_list ) { _e(' in ', 'casper'); } printf($tag_list); 
                    }
                    edit_post_link( __( 'Edit&rarr;', 'casper' ), '<span class="edit-link">&nbsp;&bull;&nbsp;', '</span>' ); 
                ?>
            </span>
        <?php endif; ?>
        <h1 class="post-title"><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h1>
        <?php if ( has_post_thumbnail() ) { // check if the post has a Post Thumbnail assigned to it.
            $image_id = get_post_thumbnail_id();
            $thumb_url = wp_get_attachment_image_src($image_id,'thumbnail', true);
            $medium_url = wp_get_attachment_image_src($image_id,'medium', true);
            $large_url = wp_get_attachment_image_src($image_id,'large', true);
        ?>

            <img data-src='<480:<?php echo $thumb_url[0]; ?>, <768:<?php echo $medium_url[0]; ?>, >768:<?php echo $large_url[0]; ?>' />
            <noscript><?php the_post_thumbnail('thumbnail'); ?></noscript>
        <?php } ?>
    </header><!-- .entry-header -->
	<div class="post-content">
		<?php the_content(); ?>
        <div class="clear">&nbsp;</div>
	</div><!-- .entry-content -->
	<?php edit_post_link( __( 'Edit', 'casper' ), '<footer class="entry-footer"><span class="edit-link">', '</span></footer>' ); ?>
</article><!-- #post-## -->

================================================
FILE: content-single.php
================================================
<?php
/**
 * @package Casper
 */
?>
<?php
	/* translators: used between list items, there is a space after the comma */
	$category_list = get_the_category_list( __( ', ', 'casper' ) );

	/* translators: used between list items, there is a space after the comma */
	$tag_list = get_the_tag_list( '', __( ', ', 'casper' ) );

	if ( ! casper_categorized_blog() ) {
		// This blog only has 1 category so we just need to worry about tags in the meta text
		if ( '' != $tag_list ) {
			$meta_text = __( 'This entry was tagged %2$s. Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
		} else {
			$meta_text = __( 'Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
		}

	} else {
		// But this blog has loads of categories so we should probably display them here
		if ( '' != $tag_list ) {
			$meta_text = __( 'This entry was posted in %1$s and tagged %2$s. Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
		} else {
			$meta_text = __( 'This entry was posted in %1$s. Bookmark the <a href="%3$s" rel="bookmark">permalink</a>.', 'casper' );
		}

	} // end check for categories on this blog
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
    <header class="post-header">
        <?php if ( 'post' == get_post_type() ) : ?>
        	<span class="post-meta">
        	    <?php 
        	        if(  false == get_theme_mod( 'casper_hide_dates') ) {
        	            casper_posted_on(); 
        	        }
        	        if(  false == get_theme_mod( 'casper_hide_categories') ) {
        	            printf( __( ' | ', 'casper' ).'%1$s', $category_list );
        	        }
        	        if(  false == get_theme_mod( 'casper_hide_tags') ) {
        	            if ( '' != $tag_list ) { _e(' in ', 'casper'); } printf($tag_list); 
        	        }
        	    	edit_post_link( __( 'Edit&rarr;', 'casper' ), '<span class="edit-link">&nbsp;&bull;&nbsp;', '</span>' ); 
        	    ?>
        	</span>
		<?php endif; ?>
        <h1 class="post-title"><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h1>
        <?php if ( has_post_thumbnail() ) { // check if the post has a Post Thumbnail assigned to it.
        	$image_id = get_post_thumbnail_id();
        	$thumb_url = wp_get_attachment_image_src($image_id,'thumbnail', true);
			$medium_url = wp_get_attachment_image_src($image_id,'medium', true);
			$large_url = wp_get_attachment_image_src($image_id,'large', true);
		?>

        	<img data-src='<480:<?php echo $thumb_url[0]; ?>, <768:<?php echo $medium_url[0]; ?>, >768:<?php echo $large_url[0]; ?>' />
			<noscript><?php the_post_thumbnail('thumbnail'); ?></noscript>
	    <?php } ?>

    </header>
    <?php if ( is_search() ) : // Only display Excerpts for Search ?>
		<section class="post-excerpt">
	        <p><?php the_excerpt(); ?></p>
	    </section><!-- .entry-summary -->
	<?php else : ?>
		<section class="post-content">
		    <?php the_content( __( '&hellip;&nbsp<span class="meta-nav">&rarr;</span>', 'casper' ) ); ?>
		    <?php
				wp_link_pages( array(
					'before' => '<div class="page-links">' . __( 'Pages:', 'casper' ),
					'after'  => '</div>',
				) );
			?>
			<div class="clear">&nbsp;</div>
		</section>
	<?php endif; ?>

	<footer class="post-footer">

	    <section class="author">
	    	<?php echo get_avatar( get_the_author_meta( 'ID' ) , 100 ); ?>
	        <h4><?php the_author_link(); ?></h4>
	        <p><?php the_author_meta('description'); ?></p>
			<div class="clear">&nbsp;</div>
	    </section>
	</footer>
</article><!-- #post-## -->


================================================
FILE: content.php
================================================
<?php
/**
 * @package Casper
 */
?>

<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
		<?php
			/* translators: used between list items, there is a space after the comma */
			$category_list = get_the_category_list( __( ', ', 'casper' ) );
		?>
    <header class="post-header">
        <?php if ( 'post' == get_post_type() ) : ?>
			<span class="post-meta">
				<?php 
					if(  false == get_theme_mod( 'casper_hide_dates') ) {
						casper_posted_on(); 
					}
					if(  false == get_theme_mod( 'casper_hide_categories') ) {
						printf( __( ' on ', 'casper' ).'%1$s', $category_list );
					}
        	    	edit_post_link( __( 'Edit&rarr;', 'casper' ), '<span class="edit-link">&nbsp;&bull;&nbsp;', '</span>' ); 
				?>
			</span>
		<?php endif; ?>
        <h1 class="post-title"><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h1>
        <?php if ( has_post_thumbnail() ) { // check if the post has a Post Thumbnail assigned to it. 
        	$image_id = get_post_thumbnail_id();
        	$thumb_url = wp_get_attachment_image_src($image_id,'thumbnail', true);
			$medium_url = wp_get_attachment_image_src($image_id,'medium', true);
			$large_url = wp_get_attachment_image_src($image_id,'large', true);
		?>

        	<div class="post-image">
        		<img data-src='<480:<?php echo $thumb_url[0]; ?>, <768:<?php echo $medium_url[0]; ?>, >768:<?php echo $large_url[0]; ?>' />
			</div>
			<noscript><?php the_post_thumbnail('thumbnail'); ?></noscript>
	    <?php } ?> 
    </header>
	<section class="post-content">

		<?php 
		if ( false != get_theme_mod( 'casper_read_more_link')) {
			$read_more = get_theme_mod( 'casper_read_more_link');
		} else {
			$read_more = __( '&hellip;&nbsp;<span class="meta-nav">&rarr;</span>', 'casper' );
		}
		if ( has_excerpt() || false != get_theme_mod( 'casper_auto_excerpt') ) {
			the_excerpt();
		} else {
			the_content( $read_more );
		}
		?>
	    <?php
			wp_link_pages( array(
				'before' => '<div class="page-links">' . __( 'Pages:', 'casper' ),
				'after'  => '</div>',
			) );
		?>
		<div class="clear">&nbsp;</div>
	</section>
</article><!-- #post-## -->

================================================
FILE: css/admin.css
================================================
/* Big cover image on the home page */
#headimg {
  position: relative;
  width: 100%;
  height: 60%;
  min-height: 250px;
  text-align: center;
  color: #fff;
  background: #303538;
  background-size: cover;
  border-bottom: #EBF2F6 1px solid;
  /* Yo-logo. Yolo-go. Upload one in ghost/settings/ */
  /* The details of your blog. Defined in ghost/settings/ */
}
#headimg img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
#headimg .blog-logo {
  text-decoration: none;
  color: white;
}
#headimg .blog-logo img {
  display: block;
  max-height: 120px;
  width: auto;
  margin: 0 auto;
  line-height: 0;
}
#headimg h1.displaying-header-text {
  margin: 10px 0 10px 0;
  font-size: 4rem;
  letter-spacing: -1px;
  font-weight: bold;
  font-family: 'Open Sans', sans-serif;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 2;
}
#headimg #desc {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.5em;
  font-weight: 300;
  font-family: 'Noto Serif', serif;
  letter-spacing: 0;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  position: relative;
  z-index: 2;
}


================================================
FILE: css/custom-editor-style.css
================================================


================================================
FILE: css/rtl.css
================================================
/* ==========================================================================
   Table of Contents
   ========================================================================== */
/*

    1.  fonts
    2.  General
    3.  Utilities
    4.  General
    5.  Single Post
    6.  Third Party Elements
    7.  Pagination
    8.  Footer
    9.  Media Queries (Tablet)
    10. Media Queries (Mobile)

*/
/* ==========================================================================
   1. fonts
   ========================================================================== */
@font-face {
  font-family: 'GESSTwoMedium';
  src: url('fonts/ge-ss-med.eot');
  src: url('fonts/ge-ss-med.eot') format('embedded-opentype'), url('fonts/ge-ss-med.woff') format('woff'), url('fonts/ge-ss-med.ttf') format('truetype'), url('fonts/ge-ss-med.svg#GESSTwoMedium') format('svg');
}
/* ==========================================================================
   2. General - Setting up some base styles
   ========================================================================== */
html {
  direction: rtl;
}
body {
  font-family: 'Segoe UI', tahoma, sans-serif;
  font-size: 2rem;
  line-height: 1.6em;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'GESSTwoMedium', sans-serif;
}
h1 {
  letter-spacing: 0px;
  text-indent: 0px;
}
h2 {
  letter-spacing: 0px;
  text-indent: 0px;
}
dl dt {
  float: right;
  clear: right;
  text-align: left;
}
dl dd {
  margin-left: 0;
  margin-right: 200px;
}
blockquote {
  margin: 1.6em -2.2em 1.6em 0;
  padding: 0 1.6em 0 0;
  border-right: #4a4a4a 0.4em solid;
  border-left: 0;
}
blockquote small {
  margin: 0.8em 1.5em 0.8em 0;
}
table th,
table td {
  text-align: right;
}
/* ==========================================================================
   WP styles
   ========================================================================== */
/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
ul,
ol {
  margin: 0 3em 1.5em 0;
}
li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 1.5em;
}
/*--------------------------------------------------------------
4.0 Forms
--------------------------------------------------------------*/
textarea {
  padding-right: 0;
  padding-left: 3px;
  width: 98%;
}
/*--------------------------------------------------------------
5.0 Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
5.2 Menus
--------------------------------------------------------------*/
.main-navigation {
  font-family: 'GESSTwoMedium', tahoma, sans-serif;
}
.main-navigation ul {
  float: left;
}
.main-navigation li {
  float: right;
}
.main-navigation ul ul {
  left: auto;
  right: 0;
}
.main-navigation ul ul ul {
  left: auto;
  right: 100%;
  top: 0;
}
/* Small menu */
.menu-toggle {
  right: auto;
  left: 0;
}
.comment-navigation .nav-previous,
.paging-navigation .nav-previous,
.post-navigation .nav-previous {
  float: right;
  width: 50%;
}
.comment-navigation .nav-next,
.paging-navigation .nav-next,
.post-navigation .nav-next {
  float: left;
  text-align: right;
  width: 50%;
}
/*--------------------------------------------------------------
6.0 Accessibility
--------------------------------------------------------------*/
.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus {
  left: auto;
  right: 5px;
}
/*--------------------------------------------------------------
7.0 Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}
.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}
.aligncenter {
  clear: both;
  display: block;
  margin: 0 auto;
}
/*--------------------------------------------------------------
8.0 Clearings
--------------------------------------------------------------*/
/*--------------------------------------------------------------
9.0 Widgets
--------------------------------------------------------------*/
/*--------------------------------------------------------------
10.0 Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
10.1 Posts and pages
--------------------------------------------------------------*/
/*--------------------------------------------------------------
10.2 Asides
--------------------------------------------------------------*/
/*--------------------------------------------------------------
10.3 Comments
--------------------------------------------------------------*/
/*--------------------------------------------------------------
11.0 Infinite scroll
--------------------------------------------------------------*/
/* ==========================================================================
   4. General - The main styles for the the theme
   ========================================================================== */
/* The details of your blog. Defined in ghost/settings/ */
.blog-title,
.blog-description {
  letter-spacing: 0px;
  font-family: 'GESSTwoMedium', tahoma, sans-serif;
}
.post-meta {
  font-family: 'GESSTwoMedium', tahoma, sans-serif;
  word-break: initial;
}
.user-meta {
  padding: 0.3rem 100px 0 40px;
}
.user-image {
  left: auto;
  right: 0;
}
.publish-meta {
  right: auto;
  left: 0;
  text-align: left;
}
/* ==========================================================================
   5. Single Post - When you click on an individual post
   ========================================================================== */
/* Create some space to the right for the share links */
.post-footer .author {
  margin-right: 0;
  margin-left: 180px;
}
/* Drop the share links in the space to the right.
   Doing it like this means it's easier for the author bio
   to be flexible at smaller screen sizes while the share
   links remain at a fixed width the whole time */
.post-footer .share {
  right: auto;
  left: 0;
}
.post-footer .share a {
  margin: 1.4rem 1.6rem 1.6rem 0;
}
/* ==========================================================================
   6. Third Party Elements - Embeds from other services
   ========================================================================== */
/* Github */
.form-allowed-tags {
  float: left;
  font-family: 'Segoe UI', tahoma, sans-serif;
}
.form-submit #submit {
  float: right;
  font-family: 'GESSTwoMedium', tahoma, sans-serif;
}
/* Main widget wrapper */
.widget-area {
  font-family: 'Segoe UI', tahoma, sans-serif;
}
.widget-area aside {
  float: right;
}
#main > header.page-header {
  font-family: 'Segoe UI', tahoma, sans-serif;
}
/* ==========================================================================
   7. Pagination - Tools to let you flick between pages
   ========================================================================== */
/* The main wrapper for our pagination links */
.pagination {
  font-family: 'Segoe UI', tahoma, sans-serif;
}
.older-posts {
  right: auto;
  left: 0;
}
.newer-posts {
  left: auto;
  right: 0 ;
}
/* ==========================================================================
   8. Footer - The bottom of every page
   ========================================================================== */
.site-footer {
  font-family: 'Segoe UI', tahoma, sans-serif;
}
/* ==========================================================================
   9. Media Queries - Smaller than 900px
   ========================================================================== */
@media only screen and (max-width: 900px) {
  blockquote {
    margin-right: 0;
  }
  .blog-title {
    letter-spacing: 0px;
  }
  h1 {
    text-indent: 0;
  }
}
/* ==========================================================================
   10. Media Queries - Smaller than 500px
   ========================================================================== */
@media only screen and (max-width: 500px) {
  h1,
  h2 {
    letter-spacing: 0px;
  }
}
/* ==========================================================================
   End of file. Media queries should be the last thing here. Do not add stuff
   below this point, or it will probably fuck everything up.
   ========================================================================== */


================================================
FILE: css/style.css
================================================
/*
  Theme Name:       Casper
  Theme URI:        https://github.com/lacymorrow/casper
  Author:           Lacy Morrow
  Author URI:       http://lacymorrow.com
  Description:      A Ghost-like WordPress theme. Casper (for WordPress) is a simple yet beautiful theme for bloggers. Inspired by the Ghost blogging platform, Casper is a WordPress port of the default theme by the same name. The goal of this project is to emulate the gorgeous theme while taking advantage of features exclusive to the WordPress framework. There are plenty of customization options included, accessible through the WordPress Customizer. Already included are hooks to serve responsive images appropriately and media queries to provide a fast and seamless experience from desktop to mobile. For questions, support, development instructions, or to contribute to the project visit [https://github.com/lacymorrow/casper]
  Version:          1.1.5
  License:          GNU General Public License v2.0
  License URI:      http://www.gnu.org/licenses/gpl-2.0.html
  Text Domain:      casper
  Domain Path:      /languages/
  Tags:             responsive-layout, black, white, one-column, fluid-layout, custom-header, custom-menu, editor-style
  GitHub Theme URI: https://github.com/lacymorrow/casper
  GitHub Branch:    master
  Casper is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.
*/
/* ==========================================================================
   Table of Contents
   ========================================================================== */
/*

    0.  Includes
    1.  Icons
    2.  General
    3.  Utilities
    4.  General
    5.  Single Post
    6.  Third Party Elements
    7.  Pagination
    8.  Footer
    9.  Media Queries (Tablet)
    10. Media Queries (Mobile)

*/
/* ==========================================================================
   0. Includes - Ground zero
   ========================================================================== */
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary
{
    display: block;
}
/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video
{
    display: inline-block;
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls])
{
    display: none;

    height: 0;
}
/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template
{
    display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html
{
    font-family: sans-serif;
    /* 1 */

        -ms-text-size-adjust: 100%;
    /* 2 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}
/**
 * Remove default margin.
 */
body
{
    margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a
{
    background: transparent;
}
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus
{
    outline: thin dotted;
}
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover
{
    outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1
{
    font-size: 2em;

    margin: .67em 0;
}
/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title]
{
    border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong
{
    font-weight: bold;
}
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn
{
    font-style: italic;
}
/**
 * Address differences between Firefox and other browsers.
 */
hr
{
    -moz-box-sizing: content-box;
         box-sizing: content-box;
    height: 0;
}
/**
 * Address styling not present in IE 8/9.
 */
mark
{
    color: #000;
    background: #ff0;
}
/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp
{
    font-family: monospace, serif;
    font-size: 1em;
}
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre
{
    white-space: pre-wrap;
}
/**
 * Set consistent quote types.
 */
q
{
    quotes: '\201C' '\201D' '\2018' '\2019';
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
small
{
    font-size: 80%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup
{
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}
sup
{
    top: -.5em;
}
sub
{
    bottom: -.25em;
}
/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img
{
    border: 0;
}
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root)
{
    overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure
{
    margin: 0;
}
/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset
{
    margin: 0 2px;
    padding: .35em .625em .75em;

    border: 1px solid #c0c0c0;
}
/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend
{
    /* 1 */
    padding: 0;

    border: 0;
    /* 2 */
}
/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea
{
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 2 */

    margin: 0;
    /* 3 */
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input
{
    line-height: normal;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select
{
    text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type='button'],
input[type='reset'],
input[type='submit']
{
    /* 2 */
    cursor: pointer;

    -webkit-appearance: button;
    /* 3 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled]
{
    cursor: default;
}
/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type='checkbox'],
input[type='radio']
{
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type='search']
{
    -webkit-box-sizing: content-box;
    /* 1 */
       -moz-box-sizing: content-box;
    /* 2 */
            box-sizing: content-box;

    -webkit-appearance: textfield;
}
/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner
{
    padding: 0;

    border: 0;
}
/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea
{
    overflow: auto;
    /* 1 */

    vertical-align: top;
    /* 2 */
}
/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table
{
    border-spacing: 0;
    border-collapse: collapse;
}
/* ==========================================================================
   1. Icons - Sets up the icon font and respective classes
   ========================================================================== */
/* Import the font file with the icons in it */
/*!
 *  Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face
{
    font-family: 'icons';
    font-weight: normal;
    font-style: normal;

    src: url('fonts/fa.eot?v=4.2.0');
    src: url('fonts/fa.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('fonts/fa.woff?v=4.2.0') format('woff'), url('fonts/fa.ttf?v=4.2.0') format('truetype'), url('fonts/fa.svg?v=4.2.0#fontawesomeregular') format('svg');
}
/* makes the font 33% larger relative to the icon container */
.fa-lg
{
    font-size: 1.33333333em;
    line-height: .75em;

    vertical-align: -15%;
}
.fa-2x
{
    font-size: 2em;
}
.fa-3x
{
    font-size: 3em;
}
.fa-4x
{
    font-size: 4em;
}
.fa-5x
{
    font-size: 5em;
}
.fa-fw
{
    width: 1.28571429em;

    text-align: center;
}
.fa-ul
{
    margin-left: 2.14285714em;
    padding-left: 0;

    list-style-type: none;
}
.fa-ul > li
{
    position: relative;
}
.fa-li
{
    position: absolute;
    top: .14285714em;
    left: -2.14285714em;

    width: 2.14285714em;

    text-align: center;
}
.fa-li.fa-lg
{
    left: -1.85714286em;
}
.fa-border
{
    padding: .2em .25em .15em;

    border: solid .08em #eee;
    border-radius: .1em;
}
.pull-right
{
    float: right;
}
.pull-left
{
    float: left;
}
.fa.pull-left
{
    margin-right: .3em;
}
.fa.pull-right
{
    margin-left: .3em;
}
.fa-spin
{
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear;
}
@-webkit-keyframes fa-spin
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100%
    {
        -webkit-transform: rotate(359deg);
                transform: rotate(359deg);
    }
}
@keyframes fa-spin
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100%
    {
        -webkit-transform: rotate(359deg);
                transform: rotate(359deg);
    }
}
.fa-rotate-90
{
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);

    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
}
.fa-rotate-180
{
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);

    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
}
.fa-rotate-270
{
    -webkit-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
            transform: rotate(270deg);

    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
.fa-flip-horizontal
{
    -webkit-transform: scale(-1, 1);
        -ms-transform: scale(-1, 1);
            transform: scale(-1, 1);

    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
}
.fa-flip-vertical
{
    -webkit-transform: scale(1, -1);
        -ms-transform: scale(1, -1);
            transform: scale(1, -1);

    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical
{
    filter: none;
}
.fa-stack
{
    line-height: 2em;

    position: relative;

    display: inline-block;

    width: 2em;
    height: 2em;

    vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x
{
    position: absolute;
    left: 0;

    width: 100%;

    text-align: center;
}
.fa-stack-1x
{
    line-height: inherit;
}
.fa-stack-2x
{
    font-size: 2em;
}
.fa-inverse
{
    color: #fff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.icon-glass:before
{
    content: '\f000';
}
.icon-music:before
{
    content: '\f001';
}
.icon-search:before
{
    content: '\f002';
}
.icon-envelope-o:before
{
    content: '\f003';
}
.icon-heart:before
{
    content: '\f004';
}
.icon-star:before
{
    content: '\f005';
}
.icon-star-o:before
{
    content: '\f006';
}
.icon-user:before
{
    content: '\f007';
}
.icon-film:before
{
    content: '\f008';
}
.icon-th-large:before
{
    content: '\f009';
}
.icon-th:before
{
    content: '\f00a';
}
.icon-th-list:before
{
    content: '\f00b';
}
.icon-check:before
{
    content: '\f00c';
}
.icon-remove:before,
.icon-close:before,
.icon-times:before
{
    content: '\f00d';
}
.icon-search-plus:before
{
    content: '\f00e';
}
.icon-search-minus:before
{
    content: '\f010';
}
.icon-power-off:before
{
    content: '\f011';
}
.icon-signal:before
{
    content: '\f012';
}
.icon-gear:before,
.icon-cog:before
{
    content: '\f013';
}
.icon-trash-o:before
{
    content: '\f014';
}
.icon-home:before
{
    content: '\f015';
}
.icon-file-o:before
{
    content: '\f016';
}
.icon-clock-o:before
{
    content: '\f017';
}
.icon-road:before
{
    content: '\f018';
}
.icon-download:before
{
    content: '\f019';
}
.icon-arrow-circle-o-down:before
{
    content: '\f01a';
}
.icon-arrow-circle-o-up:before
{
    content: '\f01b';
}
.icon-inbox:before
{
    content: '\f01c';
}
.icon-play-circle-o:before
{
    content: '\f01d';
}
.icon-rotate-right:before,
.icon-repeat:before
{
    content: '\f01e';
}
.icon-refresh:before
{
    content: '\f021';
}
.icon-list-alt:before
{
    content: '\f022';
}
.icon-lock:before
{
    content: '\f023';
}
.icon-flag:before
{
    content: '\f024';
}
.icon-headphones:before
{
    content: '\f025';
}
.icon-volume-off:before
{
    content: '\f026';
}
.icon-volume-down:before
{
    content: '\f027';
}
.icon-volume-up:before
{
    content: '\f028';
}
.icon-qrcode:before
{
    content: '\f029';
}
.icon-barcode:before
{
    content: '\f02a';
}
.icon-tag:before
{
    content: '\f02b';
}
.icon-tags:before
{
    content: '\f02c';
}
.icon-book:before
{
    content: '\f02d';
}
.icon-bookmark:before
{
    content: '\f02e';
}
.icon-print:before
{
    content: '\f02f';
}
.icon-camera:before
{
    content: '\f030';
}
.icon-font:before
{
    content: '\f031';
}
.icon-bold:before
{
    content: '\f032';
}
.icon-italic:before
{
    content: '\f033';
}
.icon-text-height:before
{
    content: '\f034';
}
.icon-text-width:before
{
    content: '\f035';
}
.icon-align-left:before
{
    content: '\f036';
}
.icon-align-center:before
{
    content: '\f037';
}
.icon-align-right:before
{
    content: '\f038';
}
.icon-align-justify:before
{
    content: '\f039';
}
.icon-list:before
{
    content: '\f03a';
}
.icon-dedent:before,
.icon-outdent:before
{
    content: '\f03b';
}
.icon-indent:before
{
    content: '\f03c';
}
.icon-video-camera:before
{
    content: '\f03d';
}
.icon-photo:before,
.icon-image:before,
.icon-picture-o:before
{
    content: '\f03e';
}
.icon-pencil:before
{
    content: '\f040';
}
.icon-map-marker:before
{
    content: '\f041';
}
.icon-adjust:before
{
    content: '\f042';
}
.icon-tint:before
{
    content: '\f043';
}
.icon-edit:before,
.icon-pencil-square-o:before
{
    content: '\f044';
}
.icon-share-square-o:before
{
    content: '\f045';
}
.icon-check-square-o:before
{
    content: '\f046';
}
.icon-arrows:before
{
    content: '\f047';
}
.icon-step-backward:before
{
    content: '\f048';
}
.icon-fast-backward:before
{
    content: '\f049';
}
.icon-backward:before
{
    content: '\f04a';
}
.icon-play:before
{
    content: '\f04b';
}
.icon-pause:before
{
    content: '\f04c';
}
.icon-stop:before
{
    content: '\f04d';
}
.icon-forward:before
{
    content: '\f04e';
}
.icon-fast-forward:before
{
    content: '\f050';
}
.icon-step-forward:before
{
    content: '\f051';
}
.icon-eject:before
{
    content: '\f052';
}
.icon-chevron-left:before
{
    content: '\f053';
}
.icon-chevron-right:before
{
    content: '\f054';
}
.icon-plus-circle:before
{
    content: '\f055';
}
.icon-minus-circle:before
{
    content: '\f056';
}
.icon-times-circle:before
{
    content: '\f057';
}
.icon-check-circle:before
{
    content: '\f058';
}
.icon-question-circle:before
{
    content: '\f059';
}
.icon-info-circle:before
{
    content: '\f05a';
}
.icon-crosshairs:before
{
    content: '\f05b';
}
.icon-times-circle-o:before
{
    content: '\f05c';
}
.icon-check-circle-o:before
{
    content: '\f05d';
}
.icon-ban:before
{
    content: '\f05e';
}
.icon-arrow-left:before
{
    content: '\f060';
}
.icon-arrow-right:before
{
    content: '\f061';
}
.icon-arrow-up:before
{
    content: '\f062';
}
.icon-arrow-down:before
{
    content: '\f063';
}
.icon-mail-forward:before,
.icon-share:before
{
    content: '\f064';
}
.icon-expand:before
{
    content: '\f065';
}
.icon-compress:before
{
    content: '\f066';
}
.icon-plus:before
{
    content: '\f067';
}
.icon-minus:before
{
    content: '\f068';
}
.icon-asterisk:before
{
    content: '\f069';
}
.icon-exclamation-circle:before
{
    content: '\f06a';
}
.icon-gift:before
{
    content: '\f06b';
}
.icon-leaf:before
{
    content: '\f06c';
}
.icon-fire:before
{
    content: '\f06d';
}
.icon-eye:before
{
    content: '\f06e';
}
.icon-eye-slash:before
{
    content: '\f070';
}
.icon-warning:before,
.icon-exclamation-triangle:before
{
    content: '\f071';
}
.icon-plane:before
{
    content: '\f072';
}
.icon-calendar:before
{
    content: '\f073';
}
.icon-random:before
{
    content: '\f074';
}
.icon-comment:before
{
    content: '\f075';
}
.icon-magnet:before
{
    content: '\f076';
}
.icon-chevron-up:before
{
    content: '\f077';
}
.icon-chevron-down:before
{
    content: '\f078';
}
.icon-retweet:before
{
    content: '\f079';
}
.icon-shopping-cart:before
{
    content: '\f07a';
}
.icon-folder:before
{
    content: '\f07b';
}
.icon-folder-open:before
{
    content: '\f07c';
}
.icon-arrows-v:before
{
    content: '\f07d';
}
.icon-arrows-h:before
{
    content: '\f07e';
}
.icon-bar-chart-o:before,
.icon-bar-chart:before
{
    content: '\f080';
}
.icon-twitter-square:before
{
    content: '\f081';
}
.icon-facebook-square:before
{
    content: '\f082';
}
.icon-camera-retro:before
{
    content: '\f083';
}
.icon-key:before
{
    content: '\f084';
}
.icon-gears:before,
.icon-cogs:before
{
    content: '\f085';
}
.icon-comments:before
{
    content: '\f086';
}
.icon-thumbs-o-up:before
{
    content: '\f087';
}
.icon-thumbs-o-down:before
{
    content: '\f088';
}
.icon-star-half:before
{
    content: '\f089';
}
.icon-heart-o:before
{
    content: '\f08a';
}
.icon-sign-out:before
{
    content: '\f08b';
}
.icon-linkedin-square:before
{
    content: '\f08c';
}
.icon-thumb-tack:before
{
    content: '\f08d';
}
.icon-external-link:before
{
    content: '\f08e';
}
.icon-sign-in:before
{
    content: '\f090';
}
.icon-trophy:before
{
    content: '\f091';
}
.icon-github-square:before
{
    content: '\f092';
}
.icon-upload:before
{
    content: '\f093';
}
.icon-lemon-o:before
{
    content: '\f094';
}
.icon-phone:before
{
    content: '\f095';
}
.icon-square-o:before
{
    content: '\f096';
}
.icon-bookmark-o:before
{
    content: '\f097';
}
.icon-phone-square:before
{
    content: '\f098';
}
.icon-twitter:before
{
    content: '\f099';
}
.icon-facebook:before
{
    content: '\f09a';
}
.icon-github:before
{
    content: '\f09b';
}
.icon-unlock:before
{
    content: '\f09c';
}
.icon-credit-card:before
{
    content: '\f09d';
}
.icon-feed:before,
.icon-rss:before
{
    content: '\f09e';
}
.icon-hdd-o:before
{
    content: '\f0a0';
}
.icon-bullhorn:before
{
    content: '\f0a1';
}
.icon-bell:before
{
    content: '\f0f3';
}
.icon-certificate:before
{
    content: '\f0a3';
}
.icon-hand-o-right:before
{
    content: '\f0a4';
}
.icon-hand-o-left:before
{
    content: '\f0a5';
}
.icon-hand-o-up:before
{
    content: '\f0a6';
}
.icon-hand-o-down:before
{
    content: '\f0a7';
}
.icon-arrow-circle-left:before
{
    content: '\f0a8';
}
.icon-arrow-circle-right:before
{
    content: '\f0a9';
}
.icon-arrow-circle-up:before
{
    content: '\f0aa';
}
.icon-arrow-circle-down:before
{
    content: '\f0ab';
}
.icon-globe:before
{
    content: '\f0ac';
}
.icon-wrench:before
{
    content: '\f0ad';
}
.icon-tasks:before
{
    content: '\f0ae';
}
.icon-filter:before
{
    content: '\f0b0';
}
.icon-briefcase:before
{
    content: '\f0b1';
}
.icon-arrows-alt:before
{
    content: '\f0b2';
}
.icon-group:before,
.icon-users:before
{
    content: '\f0c0';
}
.icon-chain:before,
.icon-link:before
{
    content: '\f0c1';
}
.icon-cloud:before
{
    content: '\f0c2';
}
.icon-flask:before
{
    content: '\f0c3';
}
.icon-cut:before,
.icon-scissors:before
{
    content: '\f0c4';
}
.icon-copy:before,
.icon-files-o:before
{
    content: '\f0c5';
}
.icon-paperclip:before
{
    content: '\f0c6';
}
.icon-save:before,
.icon-floppy-o:before
{
    content: '\f0c7';
}
.icon-square:before
{
    content: '\f0c8';
}
.icon-navicon:before,
.icon-reorder:before,
.icon-bars:before
{
    content: '\f0c9';
}
.icon-list-ul:before
{
    content: '\f0ca';
}
.icon-list-ol:before
{
    content: '\f0cb';
}
.icon-strikethrough:before
{
    content: '\f0cc';
}
.icon-underline:before
{
    content: '\f0cd';
}
.icon-table:before
{
    content: '\f0ce';
}
.icon-magic:before
{
    content: '\f0d0';
}
.icon-truck:before
{
    content: '\f0d1';
}
.icon-pinterest:before
{
    content: '\f0d2';
}
.icon-pinterest-square:before
{
    content: '\f0d3';
}
.icon-google-plus-square:before
{
    content: '\f0d4';
}
.icon-google-plus:before
{
    content: '\f0d5';
}
.icon-money:before
{
    content: '\f0d6';
}
.icon-caret-down:before
{
    content: '\f0d7';
}
.icon-caret-up:before
{
    content: '\f0d8';
}
.icon-caret-left:before
{
    content: '\f0d9';
}
.icon-caret-right:before
{
    content: '\f0da';
}
.icon-columns:before
{
    content: '\f0db';
}
.icon-unsorted:before,
.icon-sort:before
{
    content: '\f0dc';
}
.icon-sort-down:before,
.icon-sort-desc:before
{
    content: '\f0dd';
}
.icon-sort-up:before,
.icon-sort-asc:before
{
    content: '\f0de';
}
.icon-envelope:before
{
    content: '\f0e0';
}
.icon-linkedin:before
{
    content: '\f0e1';
}
.icon-rotate-left:before,
.icon-undo:before
{
    content: '\f0e2';
}
.icon-legal:before,
.icon-gavel:before
{
    content: '\f0e3';
}
.icon-dashboard:before,
.icon-tachometer:before
{
    content: '\f0e4';
}
.icon-comment-o:before
{
    content: '\f0e5';
}
.icon-comments-o:before
{
    content: '\f0e6';
}
.icon-flash:before,
.icon-bolt:before
{
    content: '\f0e7';
}
.icon-sitemap:before
{
    content: '\f0e8';
}
.icon-umbrella:before
{
    content: '\f0e9';
}
.icon-paste:before,
.icon-clipboard:before
{
    content: '\f0ea';
}
.icon-lightbulb-o:before
{
    content: '\f0eb';
}
.icon-exchange:before
{
    content: '\f0ec';
}
.icon-cloud-download:before
{
    content: '\f0ed';
}
.icon-cloud-upload:before
{
    content: '\f0ee';
}
.icon-user-md:before
{
    content: '\f0f0';
}
.icon-stethoscope:before
{
    content: '\f0f1';
}
.icon-suitcase:before
{
    content: '\f0f2';
}
.icon-bell-o:before
{
    content: '\f0a2';
}
.icon-coffee:before
{
    content: '\f0f4';
}
.icon-cutlery:before
{
    content: '\f0f5';
}
.icon-file-text-o:before
{
    content: '\f0f6';
}
.icon-building-o:before
{
    content: '\f0f7';
}
.icon-hospital-o:before
{
    content: '\f0f8';
}
.icon-ambulance:before
{
    content: '\f0f9';
}
.icon-medkit:before
{
    content: '\f0fa';
}
.icon-fighter-jet:before
{
    content: '\f0fb';
}
.icon-beer:before
{
    content: '\f0fc';
}
.icon-h-square:before
{
    content: '\f0fd';
}
.icon-plus-square:before
{
    content: '\f0fe';
}
.icon-angle-double-left:before
{
    content: '\f100';
}
.icon-angle-double-right:before
{
    content: '\f101';
}
.icon-angle-double-up:before
{
    content: '\f102';
}
.icon-angle-double-down:before
{
    content: '\f103';
}
.icon-angle-left:before
{
    content: '\f104';
}
.icon-angle-right:before
{
    content: '\f105';
}
.icon-angle-up:before
{
    content: '\f106';
}
.icon-angle-down:before
{
    content: '\f107';
}
.icon-desktop:before
{
    content: '\f108';
}
.icon-laptop:before
{
    content: '\f109';
}
.icon-tablet:before
{
    content: '\f10a';
}
.icon-mobile-phone:before,
.icon-mobile:before
{
    content: '\f10b';
}
.icon-circle-o:before
{
    content: '\f10c';
}
.icon-quote-left:before
{
    content: '\f10d';
}
.icon-quote-right:before
{
    content: '\f10e';
}
.icon-spinner:before
{
    content: '\f110';
}
.icon-circle:before
{
    content: '\f111';
}
.icon-mail-reply:before,
.icon-reply:before
{
    content: '\f112';
}
.icon-github-alt:before
{
    content: '\f113';
}
.icon-folder-o:before
{
    content: '\f114';
}
.icon-folder-open-o:before
{
    content: '\f115';
}
.icon-smile-o:before
{
    content: '\f118';
}
.icon-frown-o:before
{
    content: '\f119';
}
.icon-meh-o:before
{
    content: '\f11a';
}
.icon-gamepad:before
{
    content: '\f11b';
}
.icon-keyboard-o:before
{
    content: '\f11c';
}
.icon-flag-o:before
{
    content: '\f11d';
}
.icon-flag-checkered:before
{
    content: '\f11e';
}
.icon-terminal:before
{
    content: '\f120';
}
.icon-code:before
{
    content: '\f121';
}
.icon-mail-reply-all:before,
.icon-reply-all:before
{
    content: '\f122';
}
.icon-star-half-empty:before,
.icon-star-half-full:before,
.icon-star-half-o:before
{
    content: '\f123';
}
.icon-location-arrow:before
{
    content: '\f124';
}
.icon-crop:before
{
    content: '\f125';
}
.icon-code-fork:before
{
    content: '\f126';
}
.icon-unlink:before,
.icon-chain-broken:before
{
    content: '\f127';
}
.icon-question:before
{
    content: '\f128';
}
.icon-info:before
{
    content: '\f129';
}
.icon-exclamation:before
{
    content: '\f12a';
}
.icon-superscript:before
{
    content: '\f12b';
}
.icon-subscript:before
{
    content: '\f12c';
}
.icon-eraser:before
{
    content: '\f12d';
}
.icon-puzzle-piece:before
{
    content: '\f12e';
}
.icon-microphone:before
{
    content: '\f130';
}
.icon-microphone-slash:before
{
    content: '\f131';
}
.icon-shield:before
{
    content: '\f132';
}
.icon-calendar-o:before
{
    content: '\f133';
}
.icon-fire-extinguisher:before
{
    content: '\f134';
}
.icon-rocket:before
{
    content: '\f135';
}
.icon-maxcdn:before
{
    content: '\f136';
}
.icon-chevron-circle-left:before
{
    content: '\f137';
}
.icon-chevron-circle-right:before
{
    content: '\f138';
}
.icon-chevron-circle-up:before
{
    content: '\f139';
}
.icon-chevron-circle-down:before
{
    content: '\f13a';
}
.icon-html5:before
{
    content: '\f13b';
}
.icon-css3:before
{
    content: '\f13c';
}
.icon-anchor:before
{
    content: '\f13d';
}
.icon-unlock-alt:before
{
    content: '\f13e';
}
.icon-bullseye:before
{
    content: '\f140';
}
.icon-ellipsis-h:before
{
    content: '\f141';
}
.icon-ellipsis-v:before
{
    content: '\f142';
}
.icon-feed-square:before,
.icon-rss-square:before
{
    content: '\f143';
}
.icon-play-circle:before
{
    content: '\f144';
}
.icon-ticket:before
{
    content: '\f145';
}
.icon-minus-square:before
{
    content: '\f146';
}
.icon-minus-square-o:before
{
    content: '\f147';
}
.icon-level-up:before
{
    content: '\f148';
}
.icon-level-down:before
{
    content: '\f149';
}
.icon-check-square:before
{
    content: '\f14a';
}
.icon-pencil-square:before
{
    content: '\f14b';
}
.icon-external-link-square:before
{
    content: '\f14c';
}
.icon-share-square:before
{
    content: '\f14d';
}
.icon-compass:before
{
    content: '\f14e';
}
.icon-toggle-down:before,
.icon-caret-square-o-down:before
{
    content: '\f150';
}
.icon-toggle-up:before,
.icon-caret-square-o-up:before
{
    content: '\f151';
}
.icon-toggle-right:before,
.icon-caret-square-o-right:before
{
    content: '\f152';
}
.icon-euro:before,
.icon-eur:before
{
    content: '\f153';
}
.icon-gbp:before
{
    content: '\f154';
}
.icon-dollar:before,
.icon-usd:before
{
    content: '\f155';
}
.icon-rupee:before,
.icon-inr:before
{
    content: '\f156';
}
.icon-cny:before,
.icon-rmb:before,
.icon-yen:before,
.icon-jpy:before
{
    content: '\f157';
}
.icon-ruble:before,
.icon-rouble:before,
.icon-rub:before
{
    content: '\f158';
}
.icon-won:before,
.icon-krw:before
{
    content: '\f159';
}
.icon-bitcoin:before,
.icon-btc:before
{
    content: '\f15a';
}
.icon-file:before
{
    content: '\f15b';
}
.icon-file-text:before
{
    content: '\f15c';
}
.icon-sort-alpha-asc:before
{
    content: '\f15d';
}
.icon-sort-alpha-desc:before
{
    content: '\f15e';
}
.icon-sort-amount-asc:before
{
    content: '\f160';
}
.icon-sort-amount-desc:before
{
    content: '\f161';
}
.icon-sort-numeric-asc:before
{
    content: '\f162';
}
.icon-sort-numeric-desc:before
{
    content: '\f163';
}
.icon-thumbs-up:before
{
    content: '\f164';
}
.icon-thumbs-down:before
{
    content: '\f165';
}
.icon-youtube-square:before
{
    content: '\f166';
}
.icon-youtube:before
{
    content: '\f167';
}
.icon-xing:before
{
    content: '\f168';
}
.icon-xing-square:before
{
    content: '\f169';
}
.icon-youtube-play:before
{
    content: '\f16a';
}
.icon-dropbox:before
{
    content: '\f16b';
}
.icon-stack-overflow:before
{
    content: '\f16c';
}
.icon-instagram:before
{
    content: '\f16d';
}
.icon-flickr:before
{
    content: '\f16e';
}
.icon-adn:before
{
    content: '\f170';
}
.icon-bitbucket:before
{
    content: '\f171';
}
.icon-bitbucket-square:before
{
    content: '\f172';
}
.icon-tumblr:before
{
    content: '\f173';
}
.icon-tumblr-square:before
{
    content: '\f174';
}
.icon-long-arrow-down:before
{
    content: '\f175';
}
.icon-long-arrow-up:before
{
    content: '\f176';
}
.icon-long-arrow-left:before
{
    content: '\f177';
}
.icon-long-arrow-right:before
{
    content: '\f178';
}
.icon-apple:before
{
    content: '\f179';
}
.icon-windows:before
{
    content: '\f17a';
}
.icon-android:before
{
    content: '\f17b';
}
.icon-linux:before
{
    content: '\f17c';
}
.icon-dribbble:before
{
    content: '\f17d';
}
.icon-skype:before
{
    content: '\f17e';
}
.icon-foursquare:before
{
    content: '\f180';
}
.icon-trello:before
{
    content: '\f181';
}
.icon-female:before
{
    content: '\f182';
}
.icon-male:before
{
    content: '\f183';
}
.icon-gittip:before
{
    content: '\f184';
}
.icon-sun-o:before
{
    content: '\f185';
}
.icon-moon-o:before
{
    content: '\f186';
}
.icon-archive:before
{
    content: '\f187';
}
.icon-bug:before
{
    content: '\f188';
}
.icon-vk:before
{
    content: '\f189';
}
.icon-weibo:before
{
    content: '\f18a';
}
.icon-renren:before
{
    content: '\f18b';
}
.icon-pagelines:before
{
    content: '\f18c';
}
.icon-stack-exchange:before
{
    content: '\f18d';
}
.icon-arrow-circle-o-right:before
{
    content: '\f18e';
}
.icon-arrow-circle-o-left:before
{
    content: '\f190';
}
.icon-toggle-left:before,
.icon-caret-square-o-left:before
{
    content: '\f191';
}
.icon-dot-circle-o:before
{
    content: '\f192';
}
.icon-wheelchair:before
{
    content: '\f193';
}
.icon-vimeo-square:before
{
    content: '\f194';
}
.icon-turkish-lira:before,
.icon-try:before
{
    content: '\f195';
}
.icon-plus-square-o:before
{
    content: '\f196';
}
.icon-space-shuttle:before
{
    content: '\f197';
}
.icon-slack:before
{
    content: '\f198';
}
.icon-envelope-square:before
{
    content: '\f199';
}
.icon-wordpress:before
{
    content: '\f19a';
}
.icon-openid:before
{
    content: '\f19b';
}
.icon-institution:before,
.icon-bank:before,
.icon-university:before
{
    content: '\f19c';
}
.icon-mortar-board:before,
.icon-graduation-cap:before
{
    content: '\f19d';
}
.icon-yahoo:before
{
    content: '\f19e';
}
.icon-google:before
{
    content: '\f1a0';
}
.icon-reddit:before
{
    content: '\f1a1';
}
.icon-reddit-square:before
{
    content: '\f1a2';
}
.icon-stumbleupon-circle:before
{
    content: '\f1a3';
}
.icon-stumbleupon:before
{
    content: '\f1a4';
}
.icon-delicious:before
{
    content: '\f1a5';
}
.icon-digg:before
{
    content: '\f1a6';
}
.icon-pied-piper:before
{
    content: '\f1a7';
}
.icon-pied-piper-alt:before
{
    content: '\f1a8';
}
.icon-drupal:before
{
    content: '\f1a9';
}
.icon-joomla:before
{
    content: '\f1aa';
}
.icon-language:before
{
    content: '\f1ab';
}
.icon-fax:before
{
    content: '\f1ac';
}
.icon-building:before
{
    content: '\f1ad';
}
.icon-child:before
{
    content: '\f1ae';
}
.icon-paw:before
{
    content: '\f1b0';
}
.icon-spoon:before
{
    content: '\f1b1';
}
.icon-cube:before
{
    content: '\f1b2';
}
.icon-cubes:before
{
    content: '\f1b3';
}
.icon-behance:before
{
    content: '\f1b4';
}
.icon-behance-square:before
{
    content: '\f1b5';
}
.icon-steam:before
{
    content: '\f1b6';
}
.icon-steam-square:before
{
    content: '\f1b7';
}
.icon-recycle:before
{
    content: '\f1b8';
}
.icon-automobile:before,
.icon-car:before
{
    content: '\f1b9';
}
.icon-cab:before,
.icon-taxi:before
{
    content: '\f1ba';
}
.icon-tree:before
{
    content: '\f1bb';
}
.icon-spotify:before
{
    content: '\f1bc';
}
.icon-deviantart:before
{
    content: '\f1bd';
}
.icon-soundcloud:before
{
    content: '\f1be';
}
.icon-database:before
{
    content: '\f1c0';
}
.icon-file-pdf-o:before
{
    content: '\f1c1';
}
.icon-file-word-o:before
{
    content: '\f1c2';
}
.icon-file-excel-o:before
{
    content: '\f1c3';
}
.icon-file-powerpoint-o:before
{
    content: '\f1c4';
}
.icon-file-photo-o:before,
.icon-file-picture-o:before,
.icon-file-image-o:before
{
    content: '\f1c5';
}
.icon-file-zip-o:before,
.icon-file-archive-o:before
{
    content: '\f1c6';
}
.icon-file-sound-o:before,
.icon-file-audio-o:before
{
    content: '\f1c7';
}
.icon-file-movie-o:before,
.icon-file-video-o:before
{
    content: '\f1c8';
}
.icon-file-code-o:before
{
    content: '\f1c9';
}
.icon-vine:before
{
    content: '\f1ca';
}
.icon-codepen:before
{
    content: '\f1cb';
}
.icon-jsfiddle:before
{
    content: '\f1cc';
}
.icon-life-bouy:before,
.icon-life-buoy:before,
.icon-life-saver:before,
.icon-support:before,
.icon-life-ring:before
{
    content: '\f1cd';
}
.icon-circle-o-notch:before
{
    content: '\f1ce';
}
.icon-ra:before,
.icon-rebel:before
{
    content: '\f1d0';
}
.icon-ge:before,
.icon-empire:before
{
    content: '\f1d1';
}
.icon-git-square:before
{
    content: '\f1d2';
}
.icon-git:before
{
    content: '\f1d3';
}
.icon-hacker-news:before
{
    content: '\f1d4';
}
.icon-tencent-weibo:before
{
    content: '\f1d5';
}
.icon-qq:before
{
    content: '\f1d6';
}
.icon-wechat:before,
.icon-weixin:before
{
    content: '\f1d7';
}
.icon-send:before,
.icon-paper-plane:before
{
    content: '\f1d8';
}
.icon-send-o:before,
.icon-paper-plane-o:before
{
    content: '\f1d9';
}
.icon-history:before
{
    content: '\f1da';
}
.icon-circle-thin:before
{
    content: '\f1db';
}
.icon-header:before
{
    content: '\f1dc';
}
.icon-paragraph:before
{
    content: '\f1dd';
}
.icon-sliders:before
{
    content: '\f1de';
}
.icon-share-alt:before
{
    content: '\f1e0';
}
.icon-share-alt-square:before
{
    content: '\f1e1';
}
.icon-bomb:before
{
    content: '\f1e2';
}
.icon-soccer-ball-o:before,
.icon-futbol-o:before
{
    content: '\f1e3';
}
.icon-tty:before
{
    content: '\f1e4';
}
.icon-binoculars:before
{
    content: '\f1e5';
}
.icon-plug:before
{
    content: '\f1e6';
}
.icon-slideshare:before
{
    content: '\f1e7';
}
.icon-twitch:before
{
    content: '\f1e8';
}
.icon-yelp:before
{
    content: '\f1e9';
}
.icon-newspaper-o:before
{
    content: '\f1ea';
}
.icon-wifi:before
{
    content: '\f1eb';
}
.icon-calculator:before
{
    content: '\f1ec';
}
.icon-paypal:before
{
    content: '\f1ed';
}
.icon-google-wallet:before
{
    content: '\f1ee';
}
.icon-cc-visa:before
{
    content: '\f1f0';
}
.icon-cc-mastercard:before
{
    content: '\f1f1';
}
.icon-cc-discover:before
{
    content: '\f1f2';
}
.icon-cc-amex:before
{
    content: '\f1f3';
}
.icon-cc-paypal:before
{
    content: '\f1f4';
}
.icon-cc-stripe:before
{
    content: '\f1f5';
}
.icon-bell-slash:before
{
    content: '\f1f6';
}
.icon-bell-slash-o:before
{
    content: '\f1f7';
}
.icon-trash:before
{
    content: '\f1f8';
}
.icon-copyright:before
{
    content: '\f1f9';
}
.icon-at:before
{
    content: '\f1fa';
}
.icon-eyedropper:before
{
    content: '\f1fb';
}
.icon-paint-brush:before
{
    content: '\f1fc';
}
.icon-birthday-cake:before
{
    content: '\f1fd';
}
.icon-area-chart:before
{
    content: '\f1fe';
}
.icon-pie-chart:before
{
    content: '\f200';
}
.icon-line-chart:before
{
    content: '\f201';
}
.icon-lastfm:before
{
    content: '\f202';
}
.icon-lastfm-square:before
{
    content: '\f203';
}
.icon-toggle-off:before
{
    content: '\f204';
}
.icon-toggle-on:before
{
    content: '\f205';
}
.icon-bicycle:before
{
    content: '\f206';
}
.icon-bus:before
{
    content: '\f207';
}
.icon-ioxhost:before
{
    content: '\f208';
}
.icon-angellist:before
{
    content: '\f209';
}
.icon-cc:before
{
    content: '\f20a';
}
.icon-shekel:before,
.icon-sheqel:before,
.icon-ils:before
{
    content: '\f20b';
}
.icon-meanpath:before
{
    content: '\f20c';
}
.icon-glass:before,
.icon-music:before,
.icon-search:before,
.icon-envelope-o:before,
.icon-heart:before,
.icon-star:before,
.icon-star-o:before,
.icon-user:before,
.icon-film:before,
.icon-th-large:before,
.icon-th:before,
.icon-th-list:before,
.icon-check:before,
.icon-remove:before,
.icon-close:before,
.icon-times:before,
.icon-search-plus:before,
.icon-search-minus:before,
.icon-power-off:before,
.icon-signal:before,
.icon-gear:before,
.icon-cog:before,
.icon-trash-o:before,
.icon-home:before,
.icon-file-o:before,
.icon-clock-o:before,
.icon-road:before,
.icon-download:before,
.icon-arrow-circle-o-down:before,
.icon-arrow-circle-o-up:before,
.icon-inbox:before,
.icon-play-circle-o:before,
.icon-rotate-right:before,
.icon-repeat:before,
.icon-refresh:before,
.icon-list-alt:before,
.icon-lock:before,
.icon-flag:before,
.icon-headphones:before,
.icon-volume-off:before,
.icon-volume-down:before,
.icon-volume-up:before,
.icon-qrcode:before,
.icon-barcode:before,
.icon-tag:before,
.icon-tags:before,
.icon-book:before,
.icon-bookmark:before,
.icon-print:before,
.icon-camera:before,
.icon-font:before,
.icon-bold:before,
.icon-italic:before,
.icon-text-height:before,
.icon-text-width:before,
.icon-align-left:before,
.icon-align-center:before,
.icon-align-right:before,
.icon-align-justify:before,
.icon-list:before,
.icon-dedent:before,
.icon-outdent:before,
.icon-indent:before,
.icon-video-camera:before,
.icon-photo:before,
.icon-image:before,
.icon-picture-o:before,
.icon-pencil:before,
.icon-map-marker:before,
.icon-adjust:before,
.icon-tint:before,
.icon-edit:before,
.icon-pencil-square-o:before,
.icon-share-square-o:before,
.icon-check-square-o:before,
.icon-arrows:before,
.icon-step-backward:before,
.icon-fast-backward:before,
.icon-backward:before,
.icon-play:before,
.icon-pause:before,
.icon-stop:before,
.icon-forward:before,
.icon-fast-forward:before,
.icon-step-forward:before,
.icon-eject:before,
.icon-chevron-left:before,
.icon-chevron-right:before,
.icon-plus-circle:before,
.icon-minus-circle:before,
.icon-times-circle:before,
.icon-check-circle:before,
.icon-question-circle:before,
.icon-info-circle:before,
.icon-crosshairs:before,
.icon-times-circle-o:before,
.icon-check-circle-o:before,
.icon-ban:before,
.icon-arrow-left:before,
.icon-arrow-right:before,
.icon-arrow-up:before,
.icon-arrow-down:before,
.icon-mail-forward:before,
.icon-share:before,
.icon-expand:before,
.icon-compress:before,
.icon-plus:before,
.icon-minus:before,
.icon-asterisk:before,
.icon-exclamation-circle:before,
.icon-gift:before,
.icon-leaf:before,
.icon-fire:before,
.icon-eye:before,
.icon-eye-slash:before,
.icon-warning:before,
.icon-exclamation-triangle:before,
.icon-plane:before,
.icon-calendar:before,
.icon-random:before,
.icon-comment:before,
.icon-magnet:before,
.icon-chevron-up:before,
.icon-chevron-down:before,
.icon-retweet:before,
.icon-shopping-cart:before,
.icon-folder:before,
.icon-folder-open:before,
.icon-arrows-v:before,
.icon-arrows-h:before,
.icon-bar-chart-o:before,
.icon-bar-chart:before,
.icon-twitter-square:before,
.icon-facebook-square:before,
.icon-camera-retro:before,
.icon-key:before,
.icon-gears:before,
.icon-cogs:before,
.icon-comments:before,
.icon-thumbs-o-up:before,
.icon-thumbs-o-down:before,
.icon-star-half:before,
.icon-heart-o:before,
.icon-sign-out:before,
.icon-linkedin-square:before,
.icon-thumb-tack:before,
.icon-external-link:before,
.icon-sign-in:before,
.icon-trophy:before,
.icon-github-square:before,
.icon-upload:before,
.icon-lemon-o:before,
.icon-phone:before,
.icon-square-o:before,
.icon-bookmark-o:before,
.icon-phone-square:before,
.icon-twitter:before,
.icon-facebook:before,
.icon-github:before,
.icon-unlock:before,
.icon-credit-card:before,
.icon-feed:before,
.icon-rss:before,
.icon-hdd-o:before,
.icon-bullhorn:before,
.icon-bell:before,
.icon-certificate:before,
.icon-hand-o-right:before,
.icon-hand-o-left:before,
.icon-hand-o-up:before,
.icon-hand-o-down:before,
.icon-arrow-circle-left:before,
.icon-arrow-circle-right:before,
.icon-arrow-circle-up:before,
.icon-arrow-circle-down:before,
.icon-globe:before,
.icon-wrench:before,
.icon-tasks:before,
.icon-filter:before,
.icon-briefcase:before,
.icon-arrows-alt:before,
.icon-group:before,
.icon-users:before,
.icon-chain:before,
.icon-link:before,
.icon-cloud:before,
.icon-flask:before,
.icon-cut:before,
.icon-scissors:before,
.icon-copy:before,
.icon-files-o:before,
.icon-paperclip:before,
.icon-save:before,
.icon-floppy-o:before,
.icon-square:before,
.icon-navicon:before,
.icon-reorder:before,
.icon-bars:before,
.icon-list-ul:before,
.icon-list-ol:before,
.icon-strikethrough:before,
.icon-underline:before,
.icon-table:before,
.icon-magic:before,
.icon-truck:before,
.icon-pinterest:before,
.icon-pinterest-square:before,
.icon-google-plus-square:before,
.icon-google-plus:before,
.icon-money:before,
.icon-caret-down:before,
.icon-caret-up:before,
.icon-caret-left:before,
.icon-caret-right:before,
.icon-columns:before,
.icon-unsorted:before,
.icon-sort:before,
.icon-sort-down:before,
.icon-sort-desc:before,
.icon-sort-up:before,
.icon-sort-asc:before,
.icon-envelope:before,
.icon-linkedin:before,
.icon-rotate-left:before,
.icon-undo:before,
.icon-legal:before,
.icon-gavel:before,
.icon-dashboard:before,
.icon-tachometer:before,
.icon-comment-o:before,
.icon-comments-o:before,
.icon-flash:before,
.icon-bolt:before,
.icon-sitemap:before,
.icon-umbrella:before,
.icon-paste:before,
.icon-clipboard:before,
.icon-lightbulb-o:before,
.icon-exchange:before,
.icon-cloud-download:before,
.icon-cloud-upload:before,
.icon-user-md:before,
.icon-stethoscope:before,
.icon-suitcase:before,
.icon-bell-o:before,
.icon-coffee:before,
.icon-cutlery:before,
.icon-file-text-o:before,
.icon-building-o:before,
.icon-hospital-o:before,
.icon-ambulance:before,
.icon-medkit:before,
.icon-fighter-jet:before,
.icon-beer:before,
.icon-h-square:before,
.icon-plus-square:before,
.icon-angle-double-left:before,
.icon-angle-double-right:before,
.icon-angle-double-up:before,
.icon-angle-double-down:before,
.icon-angle-left:before,
.icon-angle-right:before,
.icon-angle-up:before,
.icon-angle-down:before,
.icon-desktop:before,
.icon-laptop:before,
.icon-tablet:before,
.icon-mobile-phone:before,
.icon-mobile:before,
.icon-circle-o:before,
.icon-quote-left:before,
.icon-quote-right:before,
.icon-spinner:before,
.icon-circle:before,
.icon-mail-reply:before,
.icon-reply:before,
.icon-github-alt:before,
.icon-folder-o:before,
.icon-folder-open-o:before,
.icon-smile-o:before,
.icon-frown-o:before,
.icon-meh-o:before,
.icon-gamepad:before,
.icon-keyboard-o:before,
.icon-flag-o:before,
.icon-flag-checkered:before,
.icon-terminal:before,
.icon-code:before,
.icon-mail-reply-all:before,
.icon-reply-all:before,
.icon-star-half-empty:before,
.icon-star-half-full:before,
.icon-star-half-o:before,
.icon-location-arrow:before,
.icon-crop:before,
.icon-code-fork:before,
.icon-unlink:before,
.icon-chain-broken:before,
.icon-question:before,
.icon-info:before,
.icon-exclamation:before,
.icon-superscript:before,
.icon-subscript:before,
.icon-eraser:before,
.icon-puzzle-piece:before,
.icon-microphone:before,
.icon-microphone-slash:before,
.icon-shield:before,
.icon-calendar-o:before,
.icon-fire-extinguisher:before,
.icon-rocket:before,
.icon-maxcdn:before,
.icon-chevron-circle-left:before,
.icon-chevron-circle-right:before,
.icon-chevron-circle-up:before,
.icon-chevron-circle-down:before,
.icon-html5:before,
.icon-css3:before,
.icon-anchor:before,
.icon-unlock-alt:before,
.icon-bullseye:before,
.icon-ellipsis-h:before,
.icon-ellipsis-v:before,
.icon-feed-square:before,
.icon-rss-square:before,
.icon-play-circle:before,
.icon-ticket:before,
.icon-minus-square:before,
.icon-minus-square-o:before,
.icon-level-up:before,
.icon-level-down:before,
.icon-check-square:before,
.icon-pencil-square:before,
.icon-external-link-square:before,
.icon-share-square:before,
.icon-compass:before,
.icon-toggle-down:before,
.icon-caret-square-o-down:before,
.icon-toggle-up:before,
.icon-caret-square-o-up:before,
.icon-toggle-right:before,
.icon-caret-square-o-right:before,
.icon-euro:before,
.icon-eur:before,
.icon-gbp:before,
.icon-dollar:before,
.icon-usd:before,
.icon-rupee:before,
.icon-inr:before,
.icon-cny:before,
.icon-rmb:before,
.icon-yen:before,
.icon-jpy:before,
.icon-ruble:before,
.icon-rouble:before,
.icon-rub:before,
.icon-won:before,
.icon-krw:before,
.icon-bitcoin:before,
.icon-btc:before,
.icon-file:before,
.icon-file-text:before,
.icon-sort-alpha-asc:before,
.icon-sort-alpha-desc:before,
.icon-sort-amount-asc:before,
.icon-sort-amount-desc:before,
.icon-sort-numeric-asc:before,
.icon-sort-numeric-desc:before,
.icon-thumbs-up:before,
.icon-thumbs-down:before,
.icon-youtube-square:before,
.icon-youtube:before,
.icon-xing:before,
.icon-xing-square:before,
.icon-youtube-play:before,
.icon-dropbox:before,
.icon-stack-overflow:before,
.icon-instagram:before,
.icon-flickr:before,
.icon-adn:before,
.icon-bitbucket:before,
.icon-bitbucket-square:before,
.icon-tumblr:before,
.icon-tumblr-square:before,
.icon-long-arrow-down:before,
.icon-long-arrow-up:before,
.icon-long-arrow-left:before,
.icon-long-arrow-right:before,
.icon-apple:before,
.icon-windows:before,
.icon-android:before,
.icon-linux:before,
.icon-dribbble:before,
.icon-skype:before,
.icon-foursquare:before,
.icon-trello:before,
.icon-female:before,
.icon-male:before,
.icon-gittip:before,
.icon-sun-o:before,
.icon-moon-o:before,
.icon-archive:before,
.icon-bug:before,
.icon-vk:before,
.icon-weibo:before,
.icon-renren:before,
.icon-pagelines:before,
.icon-stack-exchange:before,
.icon-arrow-circle-o-right:before,
.icon-arrow-circle-o-left:before,
.icon-toggle-left:before,
.icon-caret-square-o-left:before,
.icon-dot-circle-o:before,
.icon-wheelchair:before,
.icon-vimeo-square:before,
.icon-turkish-lira:before,
.icon-try:before,
.icon-plus-square-o:before,
.icon-space-shuttle:before,
.icon-slack:before,
.icon-envelope-square:before,
.icon-wordpress:before,
.icon-openid:before,
.icon-institution:before,
.icon-bank:before,
.icon-university:before,
.icon-mortar-board:before,
.icon-graduation-cap:before,
.icon-yahoo:before,
.icon-google:before,
.icon-reddit:before,
.icon-reddit-square:before,
.icon-stumbleupon-circle:before,
.icon-stumbleupon:before,
.icon-delicious:before,
.icon-digg:before,
.icon-pied-piper:before,
.icon-pied-piper-alt:before,
.icon-drupal:before,
.icon-joomla:before,
.icon-language:before,
.icon-fax:before,
.icon-building:before,
.icon-child:before,
.icon-paw:before,
.icon-spoon:before,
.icon-cube:before,
.icon-cubes:before,
.icon-behance:before,
.icon-behance-square:before,
.icon-steam:before,
.icon-steam-square:before,
.icon-recycle:before,
.icon-automobile:before,
.icon-car:before,
.icon-cab:before,
.icon-taxi:before,
.icon-tree:before,
.icon-spotify:before,
.icon-deviantart:before,
.icon-soundcloud:before,
.icon-database:before,
.icon-file-pdf-o:before,
.icon-file-word-o:before,
.icon-file-excel-o:before,
.icon-file-powerpoint-o:before,
.icon-file-photo-o:before,
.icon-file-picture-o:before,
.icon-file-image-o:before,
.icon-file-zip-o:before,
.icon-file-archive-o:before,
.icon-file-sound-o:before,
.icon-file-audio-o:before,
.icon-file-movie-o:before,
.icon-file-video-o:before,
.icon-file-code-o:before,
.icon-vine:before,
.icon-codepen:before,
.icon-jsfiddle:before,
.icon-life-bouy:before,
.icon-life-buoy:before,
.icon-life-saver:before,
.icon-support:before,
.icon-life-ring:before,
.icon-circle-o-notch:before,
.icon-ra:before,
.icon-rebel:before,
.icon-ge:before,
.icon-empire:before,
.icon-git-square:before,
.icon-git:before,
.icon-hacker-news:before,
.icon-tencent-weibo:before,
.icon-qq:before,
.icon-wechat:before,
.icon-weixin:before,
.icon-send:before,
.icon-paper-plane:before,
.icon-send-o:before,
.icon-paper-plane-o:before,
.icon-history:before,
.icon-circle-thin:before,
.icon-header:before,
.icon-paragraph:before,
.icon-sliders:before,
.icon-share-alt:before,
.icon-share-alt-square:before,
.icon-bomb:before,
.icon-soccer-ball-o:before,
.icon-futbol-o:before,
.icon-tty:before,
.icon-binoculars:before,
.icon-plug:before,
.icon-slideshare:before,
.icon-twitch:before,
.icon-yelp:before,
.icon-newspaper-o:before,
.icon-wifi:before,
.icon-calculator:before,
.icon-paypal:before,
.icon-google-wallet:before,
.icon-cc-visa:before,
.icon-cc-mastercard:before,
.icon-cc-discover:before,
.icon-cc-amex:before,
.icon-cc-paypal:before,
.icon-cc-stripe:before,
.icon-bell-slash:before,
.icon-bell-slash-o:before,
.icon-trash:before,
.icon-copyright:before,
.icon-at:before,
.icon-eyedropper:before,
.icon-paint-brush:before,
.icon-birthday-cake:before,
.icon-area-chart:before,
.icon-pie-chart:before,
.icon-line-chart:before,
.icon-lastfm:before,
.icon-lastfm-square:before,
.icon-toggle-off:before,
.icon-toggle-on:before,
.icon-bicycle:before,
.icon-bus:before,
.icon-ioxhost:before,
.icon-angellist:before,
.icon-cc:before,
.icon-shekel:before,
.icon-sheqel:before,
.icon-ils:before,
.icon-meanpath:before
{
    font: normal normal normal 14px/1 icons;
    font-size: inherit;

    display: inline-block;

    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
/* ==========================================================================
   2. General - Setting up some base styles
   ========================================================================== */
html
{
    font-size: 62.5%;

    height: 100%;
    max-height: 100%;
}
body
{
    font-family: 'Noto Serif', serif;
    font-size: 2rem;
    line-height: 1.6em;

    overflow-x: none;

    height: 100%;
    max-height: 100%;

    color: #3a4145;
}
::-moz-selection
{
    color: #222;
    background: #d6edff;
    text-shadow: none;
}
::selection
{
    color: #222;
    background: #d6edff;
    text-shadow: none;
}
h1,
h2,
h3,
h4,
h5,
h6
{
    font-family: 'Open Sans', sans-serif;
    line-height: 1;

    margin-top: 0;

    text-rendering: optimizeLegibility;
}
h1
{
    font-size: 5rem;
    line-height: 1.2em;

    text-indent: -3px;
    letter-spacing: -2px;
}
h2
{
    font-size: 4rem;
    line-height: 1.2em;

    text-indent: -2px;
    letter-spacing: -1px;
}
h3
{
    font-size: 3.5rem;
}
h4
{
    font-size: 3rem;
}
h5
{
    font-size: 2.5rem;
}
h6
{
    font-size: 2rem;
}
a
{
    transition: color ease .3s;

    color: #4a4a4a;
}
a:hover
{
    color: #57a3e8;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a
{
    color: #50585d;
}
p,
ul,
ol,
dl
{
    margin: 1.6em 0;
}
ol ol,
ul ul,
ul ol,
ol ul
{
    margin: .4em 0;
}
dl dt
{
    font-weight: bold;

    float: left;
    clear: left;
    overflow: hidden;

    width: 180px;
    margin-bottom: 1em;

    text-align: right;
    white-space: nowrap;
    text-overflow: ellipsis;
}
dl dd
{
    margin-bottom: 1em;
    margin-left: 200px;
}
hr
{
    display: block;

    height: 1px;
    margin: 3.2em 0;
    padding: 0;

    border: 0;
    border-top: 1px solid #efefef;
}
blockquote
{
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    margin: 1.6em 0 1.6em -2.2em;
    padding: 0 0 0 1.6em;

    border-left: #4a4a4a .4em solid;
}
blockquote p
{
    font-style: italic;

    margin: .8em 0;
}
blockquote small
{
    font-size: .9em;

    display: inline-block;

    margin: .8em 0 .8em 1.5em;

    color: #ccc;
}
blockquote small:before
{
    content: '\2014 \00A0';
}
blockquote cite
{
    font-weight: bold;
}
blockquote cite a
{
    font-weight: normal;
}
mark
{
    background-color: #ffc336;
}
code,
tt
{
    font-family: Inconsolata, monospace, sans-serif;
    font-size: .85em;

    padding: 1px 3px;

    white-space: pre-wrap;

    border: 1px solid #e3edf3;
    border-radius: 2px;
    background: #f7fafb;
}
pre
{
    font-family: Inconsolata, monospace, sans-serif;
    font-size: .9em;

    overflow: auto;

    -moz-box-sizing: border-box;
         box-sizing: border-box;
    width: 100%;
    margin: 1.6em 0;
    padding: 10px;

    white-space: pre;

    border: 1px solid #e3edf3;
    border-radius: 3px;
    background: #f7fafb;
}
pre code,
tt
{
    font-size: inherit;

    padding: 0;

    white-space: -moz-pre-wrap;
    white-space:      pre-wrap;

    border: none;
    background: transparent;
}
kbd
{
    font-size: .9em;
    font-weight: bold;

    display: inline-block;

    margin-bottom: .4em;
    padding: 1px 8px;

    color: #666;
    border: #ccc 1px solid;
    border-radius: 4px;
    background: #f4f4f4;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .2), 0 1px 0 0 #fff inset;
    text-shadow: #fff 0 1px 0;
}
table
{
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin: 1.6em 0;

    background-color: transparent;
}
table th,
table td
{
    line-height: 20px;

    padding: 8px;

    text-align: left;
    vertical-align: top;

    border-top: 1px solid #efefef;
}
table th
{
    color: #000;
}
table caption + thead tr:first-child th,
table caption + thead tr:first-child td,
table colgroup + thead tr:first-child th,
table colgroup + thead tr:first-child td,
table thead:first-child tr:first-child th,
table thead:first-child tr:first-child td
{
    border-top: 0;
}
table tbody + tbody
{
    border-top: 2px solid #efefef;
}
table table table
{
    background-color: #fff;
}
table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd) > th
{
    background-color: #f6f6f6;
}
table.plain tbody > tr:nth-child(odd) > td,
table.plain tbody > tr:nth-child(odd) > th
{
    background: transparent;
}
iframe,
.fluid-width-video-wrapper
{
    display: block;

    margin: 1.6em 0;
}
/* When a video is inside the fitvids wrapper, drop the
margin on the iframe, cause it breaks stuff. */
.fluid-width-video-wrapper iframe
{
    margin: 0;
}
/* ==========================================================================
   3. Utilities - These things get used a lot
   ========================================================================== */
/* Hides shit */
.hidden
{
    display: none;
    visibility: hidden;

    text-indent: -9999px;
}
/* Creates a responsive wrapper that makes our content scale nicely */
.inner
{
    position: relative;

    width: 80%;
    max-width: 700px;
    margin: 0 auto;
    padding-bottom: 1em;
}
/* Centres vertically yo. (IE8+) */
.vertical-row
{
    display: table-row;
}
.vertical
{
    display: table-cell;

    vertical-align: middle;
}
.clear
{
    clear: both;

    height: 0;
    margin: 0;
    padding: 0;
}
.wrapword
{
    white-space: -moz-pre-wrap !important;
    /* Mozilla, since 1999 */
    white-space: -pre-wrap;
    /* Opera 4-6 */
    white-space:   -o-pre-wrap;
    /* Opera 7 */
    white-space:      pre-wrap;
    white-space: normal;
    /* css-3 */
    word-wrap: break-word;
    /* Internet Explorer 5.5+ */
    word-break: break-all;
}
/* ==========================================================================
   WP styles
   ========================================================================== */
/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
hr
{
    height: 1px;
    margin-bottom: 1.5em;

    border: 0;
    background-color: #ccc;
}
ul,
ol
{
    margin: 0 0 1.5em 3em;
}
ul
{
    list-style: disc;
}
ol
{
    list-style: decimal;
}
li > ul,
li > ol
{
    margin-bottom: 0;
    margin-left: 1.5em;
}
dt
{
    font-weight: bold;
}
dd
{
    margin: 0 1.5em 1.5em;
}
img
{
    /* Make sure images are scaled correctly. */
    max-width: 100%;
    height: auto;
    /* Adhere to container width. */
}
figure
{
    margin: 0;
}
table
{
    width: 100%;
    margin: 0 0 1.5em;
}
th
{
    font-weight: bold;
}
/*--------------------------------------------------------------
4.0 Forms
--------------------------------------------------------------*/
button,
input,
select,
textarea
{
    font-size: 100%;
    /* Corrects font size not being inherited in all browsers */

    margin: 0;
    /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */

    vertical-align: baseline;
    /* Improves appearance and consistency in all browsers */

    *vertical-align: middle;
    /* Improves appearance and consistency in IE6/IE7 */
}
button,
input[type='button'],
input[type='reset'],
input[type='submit']
{
    /* Corrects inability to style clickable 'input' types in iOS */
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1;

    padding: .6em 1em .4em;

    cursor: pointer;

    color: rgba(0, 0, 0, .8);
    border: 1px solid #ccc;
    border-color: #ccc #ccc #bbb #ccc;
    border-radius: 3px;
    background: #e6e6e6;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 15px 17px rgba(255, 255, 255, .5), inset 0 -5px 12px rgba(0, 0, 0, .05);
    text-shadow: 0 1px 0 rgba(255, 255, 255, .8);
    /* Improves usability and consistency of cursor style between image-type 'input' and others */

    -webkit-appearance: button;
}
button:hover,
input[type='button']:hover,
input[type='reset']:hover,
input[type='submit']:hover
{
    border-color: #ccc #bbb #aaa #bbb;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), inset 0 15px 17px rgba(255, 255, 255, .8), inset 0 -5px 12px rgba(0, 0, 0, .02);
}
button:focus,
input[type='button']:focus,
input[type='reset']:focus,
input[type='submit']:focus,
button:active,
input[type='button']:active,
input[type='reset']:active,
input[type='submit']:active
{
    border-color: #aaa #bbb #bbb #bbb;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .5), inset 0 2px 5px rgba(0, 0, 0, .15);
}
input[type='checkbox'],
input[type='radio']
{
    padding: 0;
    /* Addresses excess padding in IE8/9 */
}
input[type='search']
{
    /* Addresses appearance set to searchfield in S5, Chrome */
    -webkit-box-sizing: content-box;
    /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */
       -moz-box-sizing: content-box;
            box-sizing: content-box;

    -webkit-appearance: textfield;
}
input[type='search']::-webkit-search-decoration
{
    /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
    -webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner
{
    padding: 0;
    /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */

    border: 0;
}
input[type='text'],
input[type='email'],
input[type='url'],
input[type='password'],
input[type='search'],
textarea
{
    color: #666;
    border: 1px solid #ccc;
    border-radius: 3px;
}
input[type='text']:focus,
input[type='email']:focus,
input[type='url']:focus,
input[type='password']:focus,
input[type='search']:focus,
textarea:focus
{
    color: #111;
}
input[type='text'],
input[type='email'],
input[type='url'],
input[type='password'],
input[type='search']
{
    padding: 3px;
}
textarea
{
    overflow: auto;
    /* Improves readability and alignment in all browsers */

    width: 98%;
    /* Removes default vertical scrollbar in IE6/7/8/9 */
    padding-left: 3px;

    vertical-align: top;
}
/*--------------------------------------------------------------
5.0 Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
5.2 Menus
--------------------------------------------------------------*/
.main-navigation
{
    font-family: 'Open Sans', sans-serif;

    width: 100%;
    padding: 5px 0;

    color: white;
}
.main-navigation > div
{
    width: 80%;
    max-width: 700px;
    margin: 0 auto;
    padding: 0;
}
.main-navigation ul
{
    font-size: 1.2rem;

    float: right;

    margin: 0 4rem;
    padding: 0;

    list-style: none;
}
.main-navigation li
{
    position: relative;

    float: left;
}
.main-navigation a
{
    display: block;

    padding: 12px 20px;

    -webkit-transition: color .3s ease, background .3s ease;
       -moz-transition: color .3s ease, background .3s ease;
            transition: color .3s ease, background .3s ease;
    text-decoration: none;

    color: white;
    background-color: rgba(0, 0, 0, 0);
}
.main-navigation a:hover
{
    color: white;
    background-color: rgba(0, 0, 0, .4);
}
.main-navigation ul ul
{
    position: absolute;
    z-index: 99999;
    top: 100%;
    left: 0;

    display: none;

    width: 100%;
    margin: 0;
}
.main-navigation ul ul ul
{
    top: 0;
    left: 100%;
}
.main-navigation ul li:hover > ul
{
    display: block;
}
/* Small menu */
.menu-toggle
{
    font-size: 0;

    position: absolute;
    top: 0;
    right: 0;

    display: none;
    overflow: hidden;

    width: 48px;
    height: 48px;
    margin: 0;

    cursor: pointer;
    text-align: center;
}
.menu-toggle a
{
    padding: 5px;
}
.menu-toggle a:before
{
    font-size: 3rem;
}
@media screen and (max-width: 600px)
{
    .menu-toggle,
    .main-navigation.toggled .nav-menu
    {
        display: block;
    }
    .main-navigation ul
    {
        font-size: 1.8rem;

        display: none;

        margin: 0;

        background-color: rgba(0, 0, 0, .4);
    }
    .main-navigation li
    {
        float: none;

        width: 100%;
        margin: 0 auto;

        border-bottom: 1px solid #444;
    }
}
.site-main .comment-navigation,
.site-main .paging-navigation,
.site-main .post-navigation
{
    overflow: hidden;

    margin: 0 0 1.5em;
}
.comment-navigation .nav-previous,
.paging-navigation .nav-previous,
.post-navigation .nav-previous
{
    float: left;

    width: 50%;
}
.comment-navigation .nav-next,
.paging-navigation .nav-next,
.post-navigation .nav-next
{
    float: right;

    width: 50%;

    text-align: right;
}
/*--------------------------------------------------------------
6.0 Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers */
.screen-reader-text
{
    position: absolute !important;

    clip: rect(1px, 1px, 1px, 1px);
}
.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus
{
    font-size: 14px;
    font-weight: bold;
    line-height: normal;

    z-index: 100000;
    top: 5px;
    left: 5px;

    display: block;
    clip: auto !important;

    width: auto;
    height: auto;
    padding: 15px 23px 14px;

    text-decoration: none;

    color: #21759b;
    border-radius: 3px;
    background-color: #f1f1f1;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    /* Above WP toolbar */
}
/*--------------------------------------------------------------
7.0 Alignments
--------------------------------------------------------------*/
.alignleft
{
    display: inline;
    float: left;

    margin-right: 1.5em;
}
.alignright
{
    display: inline;
    float: right;

    margin-left: 1.5em;
}
.aligncenter
{
    display: block;
    clear: both;

    margin: 0 auto;
}
/*--------------------------------------------------------------
8.0 Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after
{
    display: table;

    content: '';
}
.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after
{
    clear: both;
}
/*--------------------------------------------------------------
9.0 Widgets
--------------------------------------------------------------*/
.widget
{
    margin: 0 0 1.5em;
}
/* Make sure select elements fit in widgets */
.widget select
{
    max-width: 100%;
}
/* Search widget */
.widget_search .search-submit
{
    display: none;
}
/* Main widget wrapper */
.widget-area
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.3rem;

    width: 80%;
    max-width: 700px;
    margin: 4rem auto;
    padding-bottom: 4rem;

    color: #9eabb3;
}
.widget-area *
{
    box-sizing: border-box;
}
.widget-area h1
{
    font-size: 2.5rem;
}
.widget-area aside
{
    float: left;
    overflow: hidden;

    width: 50%;
    height: 300px;
    padding: 2rem 1rem;
}
.search-submit
{
    display: inline-block;

    padding: 15px;

    transition: border ease .3s;
    text-decoration: none;

    border: #ebf2f6 2px solid;
    border-width: 3px;
    border-radius: 30px;
    background: none;
}
.search-submit:hover,
.form-submit #submit:hover
{
    border-color: #9eabb3;
}
/*--------------------------------------------------------------
10.0 Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
10.1 Posts and pages
--------------------------------------------------------------*/
.sticky
{
    content: '';
}
.hentry
{
    margin: 0 0 1.5em;
}
.byline,
.updated
{
    display: none;
}
.single .byline,
.group-blog .byline
{
    display: inline;
}
.page-content,
.entry-content,
.entry-summary
{
    margin: 1.5em 0 0;
}
.page-links
{
    clear: both;

    margin: 0 0 1.5em;
}
.post-image:after
{
    display: block;
    clear: both;

    content: ' ';
}
/*--------------------------------------------------------------
10.2 Asides
--------------------------------------------------------------*/
.blog .format-aside .entry-title,
.archive .format-aside .entry-title
{
    display: none;
}
/*--------------------------------------------------------------
10.3 Comments
--------------------------------------------------------------*/
.comment-content a
{
    word-wrap: break-word;
}
.bypostauthor
{
    content: '';
}
/*--------------------------------------------------------------
11.0 Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .paging-navigation,
.infinite-scroll.neverending .site-footer
{
    /* Theme Footer (when set to scrolling) */
    display: none;
}
/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before */
.infinity-end.neverending .site-footer
{
    display: block;
}
.wp-caption
{
    max-width: 100%;
    margin-bottom: 1.5em;

    border: 1px solid #ccc;
}
.wp-caption img[class*='wp-image-']
{
    display: block;

    max-width: 98%;
    margin: 1.2% auto 0;
}
.wp-caption-text
{
    text-align: center;
}
.wp-caption .wp-caption-text
{
    margin: .8075em 0;
}
.site-main .gallery
{
    margin-bottom: 1.5em;
}
.gallery-caption
{
    content: '';
}
.site-main .gallery a img
{
    max-width: 90%;
    height: auto;

    border: none;
}
.site-main .gallery dd,
.site-main .gallery figcaption
{
    margin: 0;
}
/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object
{
    max-width: 100%;
}
/* ==========================================================================
   4. General - The main styles for the the theme
   ========================================================================== */
/* Big cover image on the home page */
.site-head
{
    position: relative;

    display: table;

    width: 100%;
    height: 60%;
    margin-bottom: 5rem;

    text-align: center;

    color: #fff;
    border-bottom: #ebf2f6 1px solid;
    background: #303538 no-repeat center center;
    background-size: cover;
}
.site-head:after
{
    position: absolute;
    bottom: -5px;
    left: 50%;

    display: block;

    width: 7px;
    height: 7px;
    margin-left: -5px;

    content: '';

    border: #e7eef2 1px solid;
    -webkit-border-radius: 100%;
       -moz-border-radius: 100%;
            border-radius: 100%;
    background: #fff;
    box-shadow: #fff 0 0 0 5px;
}
body.home .site-head:after
{
    z-index: -3;
}
/* Yo-logo. Yolo-go. Upload one in ghost/settings/ */
.blog-logo
{
    text-decoration: none;

    color: white;
}
.blog-logo img
{
    line-height: 0;

    display: block;

    width: auto;
    max-height: 120px;
    margin: 0 auto;
}
/* The details of your blog. Defined in ghost/settings/ */
.blog-title
{
    font-family: 'Open Sans', sans-serif;
    font-size: 5rem;
    font-weight: bold;

    margin: 10px 0 10px 0;

    letter-spacing: -1px;

    text-shadow: 0 1px 6px rgba(0, 0, 0, .1);
}
.blog-description
{
    font-family: 'Noto Serif', serif;
    font-size: 1.8rem;
    font-weight: 300;
    line-height: 1.5em;

    margin: 0;

    letter-spacing: 0;

    text-shadow: 0 1px 3px rgba(0, 0, 0, .15);
}
/* Every post, on every page, gets this style on its <article> tag */
.post-wrap
{
    position: relative;

    width: 80%;
    max-width: 700px;
    margin: 4rem auto;

    word-break: break-word;
    hyphens: auto;
}
/* Add a little circle in the middle of the border-bottom on our .post
   just for the lolz and stylepoints. */
.circle-in-border
{
    position: absolute;
    bottom: -5px;
    left: 50%;

    display: block;

    width: 7px;
    height: 7px;
    margin-left: -5px;

    content: '';

    border: #e7eef2 1px solid;
    -webkit-border-radius: 100%;
       -moz-border-radius: 100%;
            border-radius: 100%;
    background: #fff;
    box-shadow: #fff 0 0 0 5px;
}
.error-404 article
{
    margin-bottom: 20px;
    padding-top: 20px;

    border-top: #ebf2f6 1px solid;
}
.hentry
{
    position: relative;

    width: 80%;
    max-width: 700px;
    margin: 4rem auto;

    word-break: break-word;
    hyphens: auto;

    border-bottom: #ebf2f6 1px solid;
}
/* Add a little circle in the middle of the border-bottom on our .post
   just for the lolz and stylepoints. */
.hentry:after
{
    position: absolute;
    bottom: -5px;
    left: 50%;

    display: block;

    width: 7px;
    height: 7px;
    margin-left: -5px;

    content: '';

    border: #e7eef2 1px solid;
    -webkit-border-radius: 100%;
       -moz-border-radius: 100%;
            border-radius: 100%;
    background: #fff;
    box-shadow: #fff 0 0 0 5px;
}
.post-title
{
    margin: 0;
}
.post-title a
{
    text-decoration: none;
}
.post-excerpt p
{
    font-size: .9em;
    line-height: 1.6em;

    margin: 1.6rem 0 0 0;
}
.post-meta
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.5rem;

    display: inline-block;

    margin: 0 0 5px 0;

    color: #9eabb3;
}
.post-meta a
{
    text-decoration: none;

    color: #9eabb3;
}
.post-meta a:hover
{
    text-decoration: underline;
}
.user-meta
{
    position: relative;

    min-height: 77px;
    padding: .3rem 40px 0 100px;
}
.user-image
{
    position: absolute;
    top: 0;
    left: 0;
}
.user-name
{
    font-weight: bold;

    display: block;
}
.user-bio
{
    font-size: 1.4rem;
    line-height: 1.5em;

    display: block;

    max-width: 440px;
}
.publish-meta
{
    position: absolute;
    top: 0;
    right: 0;

    padding: 4.3rem 0 4rem 0;

    text-align: right;
}
.publish-heading
{
    font-weight: bold;

    display: block;
}
.publish-date
{
    font-size: 1.4rem;
    line-height: 1.5em;

    display: block;
}
/* ==========================================================================
   5. Single Post - When you click on an individual post
   ========================================================================== */
/* Tweak the .post wrapper style */
.post-template .post
{
    margin-top: 0;
    padding-bottom: 0;

    border-bottom: none;
}
/* Kill that stylish little circle that was on the border, too */
.post-template .post:after
{
    display: none;
}
/* Insert some mad padding up in the header for better spacing */
.post-template .post-header
{
    padding: 60px 0;

    text-align: center;
}
.post-header img
{
    display: block;

    max-width: 100%;
    height: auto;
    margin: 0 auto;
    padding-top: 1rem;

    transition: opacity ease .6s;

    opacity: 0;

    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
        filter: alpha(opacity=0);
}
.post-template .blog-title
{
    display: inline-block;

    padding: 2.5rem 0;
}
/* Keep large images within the bounds of the post-width */
.post-content img
{
    display: block;

    max-width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 1em;
}
.post-content img.wp-smiley
{
    display: inline;

    padding: 0;
}
.post-content .wp-caption img
{
    padding: 0;
}
/* The author credit area after the post */
.post-footer
{
    position: relative;

    margin: 4rem 0 0 0;
    padding: 4rem 0 0 0;

    border-top: #ebf2f6 1px solid;
}
.post-footer h4
{
    font-size: 1.8rem;

    margin: 0;
}
.post-footer p
{
    font-size: 1.4rem;
    line-height: 1.6em;

    margin: 1rem 0;
}
/* Create some space to the right for the share links */
.post-footer .author
{
    margin: 0 1rem 3rem 1rem;
}
.post-footer .author a
{
    text-decoration: none;
}
/* Drop the share links in the space to the right.
   Doing it like this means it's easier for the author bio
   to be flexible at smaller screen sizes while the share
   links remain at a fixed width the whole time */
.post-footer .share
{
    position: absolute;
    top: 4rem;
    right: 0;

    width: 140px;
}
.post-footer .share a
{
    font-size: 1.8rem;

    display: inline;

    margin: 1.4rem 0 1.6rem 1.6rem;

    text-decoration: none;

    color: #bbc7cc;
}
.post-footer .share a:hover
{
    color: #50585d;
}
.avatar
{
    display: block;
    float: left;

    margin-right: 1em;
    padding: 5px;

    border-radius: 50%;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .3);
}
/* ==========================================================================
   5.1 Comments
   ========================================================================== */
.comment-list,
.children
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.comment,
.pingback
{
    margin-bottom: 1.5em;
    padding: 1em 1.5em;

    border: 1px solid #ccc;
}
.children .comment,
.pingback
{
    margin-bottom: .75em;
    padding: .5em .75em;
}
.reply a
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.3rem;
    line-height: 1;

    display: inline-block;

    max-width: 35%;
    padding: 15px;

    cursor: pointer;
    transition: border ease .3s;
    white-space: -moz-pre-wrap !important;
    /* Mozilla, since 1999 */
    white-space: -pre-wrap;
    /* Opera 4-6 */
    white-space:   -o-pre-wrap;
    /* Opera 7 */
    white-space:      pre-wrap;
    white-space: normal;
    text-decoration: none;
    /* css-3 */
    word-wrap: break-word;
    /* Internet Explorer 5.5+ */
    word-break: break-all;

    color: #9eabb3;
    border: #ebf2f6 2px solid;
    border-width: 3px;
    border-radius: 3px;
    background: none;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 15px 17px rgba(255, 255, 255, .5), inset 0 -5px 12px rgba(0, 0, 0, .05);
    text-shadow: 0 1px 0 rgba(255, 255, 255, .8);
    /* Improves usability and consistency of cursor style between image-type 'input' and others */

    -webkit-appearance: button;
    /* Corrects inability to style clickable 'input' types in iOS */
}
.reply a:hover
{
    border-color: #9eabb3;
}
.children,
.comment-respond
{
    margin-top: 1.5em;
}
.comment-form
{
    overflow: hidden;
}
/* ==========================================================================
   6. Third Party Elements - Embeds from other services
   ========================================================================== */
/* Github */
.gist table
{
    font-size: 1.4rem;

    margin: 0;
}
.gist .line-number
{
    font-size: 1.1rem;

    min-width: 25px;
}
/* Social links */
.social-icons
{
    margin-top: 15px;
}
.social-icons a
{
    font-size: 1.3em;

    margin: 0 5px;

    text-decoration: none;

    color: white;
}
.blog-title a:hover,
.social-icons a:hover
{
    color: #57a3e8;
}
/* Comments */
.comments-area
{
    width: 80%;
    max-width: 700px;
    margin: 4rem auto;
    padding-bottom: 4rem;
}
.comment-form-comment label
{
    display: inline-block;

    width: 100%;
}
.form-allowed-tags
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.3rem;

    float: right;

    width: 60%;
    margin: -1rem;

    color: #9eabb3;
}
.comment-subscription-form
{
    clear: both;

    margin-top: 1rem;
}
.form-submit #submit
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.3rem;

    display: inline-block;
    float: left;

    max-width: 35%;
    margin-top: 1em;
    padding: 15px;

    transition: border ease .3s;
    white-space: -moz-pre-wrap !important;
    /* Mozilla, since 1999 */
    white-space: -pre-wrap;
    /* Opera 4-6 */
    white-space:   -o-pre-wrap;
    /* Opera 7 */
    white-space:      pre-wrap;
    white-space: normal;
    text-decoration: none;
    /* css-3 */
    word-wrap: break-word;
    /* Internet Explorer 5.5+ */
    word-break: break-all;

    color: #9eabb3;
    border: #ebf2f6 2px solid;
    border-width: 3px;
    background: none;
}
#main > header.page-header
{
    font-family: 'Open Sans', sans-serif;

    width: 80%;
    max-width: 700px;
    margin: 0 auto;
    padding: 0;

    text-align: center;

    color: #9eabb3;
}
#main > header.page-header > h1
{
    font-size: 1.3rem;
    font-weight: normal;
    line-height: normal;

    margin: 0 4rem;
    padding: 0;

    text-indent: 0;
    letter-spacing: normal;
}
/* ==========================================================================
   7. Pagination - Tools to let you flick between pages
   ========================================================================== */
/* The main wrapper for our pagination links */
.pagination
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.3rem;

    position: relative;

    width: 80%;
    max-width: 700px;
    margin: 4rem auto;

    text-align: center;

    color: #9eabb3;
}
.pagination a
{
    color: #9eabb3;
}
/* Push the previous/next links out to the left/right */
.older-posts,
.newer-posts
{
    position: absolute;

    display: inline-block;

    padding: 0 15px;

    transition: border ease .3s;
    text-decoration: none;

    border: #ebf2f6 2px solid;
    border-radius: 30px;
}
.older-posts:hover,
.newer-posts:hover
{
    border-color: #9eabb3;
}
.older-posts
{
    right: 0;
}
.page-number
{
    display: inline-block;

    padding: 2px 0;
}
.newer-posts
{
    left: 0;
}
/* ==========================================================================
   8. Footer - The bottom of every page
   ========================================================================== */
.site-footer
{
    font-family: 'Open Sans', sans-serif;
    font-size: 1.3rem;
    line-height: 1.7em;

    position: relative;

    margin: 0;
    padding: 4rem 0;

    text-align: center;

    color: #bbc7cc;
    border-top: #ebf2f6 1px solid;
    background: #f7fafb;
}
.site-footer a
{
    text-decoration: underline;

    color: #bbc7cc;
}
.site-footer a:hover
{
    color: #50585d;
}
/* The subscribe icon on the footer */
.subscribe
{
    line-height: 2.4rem;

    position: absolute;
    top: -14px;
    left: 50%;

    width: 28px;
    height: 28px;
    margin-left: -15px;

    transition: box-shadow .5s;
    text-align: center;

    border: #ebf2f6 1px solid;
    border-radius: 50px;
    background: #fff;
}
/* The RSS icon, inserted via icon font */
.subscribe:before
{
    font-size: 10px;
    font-weight: bold;

    position: absolute;
    top: 9px;
    left: 9px;

    transition: color .5s ease;

    color: #d2dee3;
}
/* Add a box shadow to on hover */
.subscribe:hover
{
    transition: box-shadow .25s;

    box-shadow: rgba(0, 0, 0, .05) 0 0 0 3px;
}
.subscribe:hover:before
{
    color: #50585d;
}
/* CSS tooltip saying "Subscribe!" - initially hidden */
.tooltip
{
    font-size: 1.1rem;
    line-height: 1em;

    position: absolute;
    top: -23px;
    left: -21px;

    display: inline-block;

    padding: 4px 8px 5px 8px;

    transition: opacity .3s ease, top .3s ease;
    text-align: center;

    opacity: 0;
    color: rgba(255, 255, 255, .9);
    border-radius: 20px;
    background: #50585d;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
}
/* The little chiclet arrow under the tooltip, pointing down */
.tooltip:after
{
    position: absolute;
    z-index: 220;
    bottom: -4px;
    left: 50%;

    display: block;

    width: 0;
    margin-left: -5px;

    content: '';

    border-width: 5px 5px 0 5px;
    border-style: solid;
    border-color: #50585d transparent;
}
/* On hover, show the tooltip! */
.subscribe:hover .tooltip
{
    top: -33px;

    opacity: 1;
}
/* ==========================================================================
   9. Media Queries - Smaller than 900px
   ========================================================================== */
@media only screen and (max-width: 900px)
{
    blockquote
    {
        margin-left: 0;
    }
    .site-head
    {
        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
                box-sizing: border-box;
        height: auto;
        min-height: 240px;
        padding: 15% 0;
    }
    .blog-title
    {
        font-size: 4rem;

        letter-spacing: -1px;
    }
    .blog-description
    {
        font-size: 1.7rem;
        line-height: 1.5em;
    }
    .post
    {
        font-size: .9em;
        line-height: 1.6em;
    }
    .post-template .post
    {
        padding-bottom: 1rem;
    }
    .post-template .post-header
    {
        padding: 40px 0;
    }
    .widget-area aside
    {
        float: none;
        overflow: hidden;

        width: auto;
        height: auto;
        padding: 1em;
    }
    h1
    {
        font-size: 4.8rem;

        text-indent: -2px;
    }
    h2
    {
        font-size: 3.8rem;
    }
    h3
    {
        font-size: 3.3rem;
    }
    h4
    {
        font-size: 2.8rem;
    }
}
/* ==========================================================================
   10. Media Queries - Smaller than 500px
   ========================================================================== */
@media only screen and (max-width: 500px)
{
    .blog-logo img
    {
        max-height: 80px;
    }
    .inner,
    .pagination
    {
        width: auto;
        margin-right: 16px;
        margin-left: 16px;
    }
    .post
    {
        font-size: .8em;
        line-height: 1.6em;

        width: auto;
        margin-right: 16px;
        margin-left: 16px;
    }
    .site-head
    {
        padding: 10% 0;
    }
    .blog-title
    {
        font-size: 3rem;
    }
    .blog-description
    {
        font-size: 1.5rem;
    }
    .main-navigation ul li.menu-item-has-children:hover ~ li
    {
        opacity: 0;
    }
    .main-navigation ul ul ul
    {
        top: 100%;
        left: 0;
    }
    h1,
    h2
    {
        font-size: 3rem;
        line-height: 1.1em;

        letter-spacing: -1px;
    }
    h3
    {
        font-size: 2.8rem;
    }
    h4
    {
        font-size: 2.3rem;
    }
    .post-template .post
    {
        padding-bottom: 0;
    }
    .post-template .post-header
    {
        padding: 30px 0;
    }
    .post-meta
    {
        font-size: 1.3rem;
    }
    .post-footer
    {
        padding: 4rem 0;

        text-align: center;
    }
    .post-footer .author
    {
        margin: 0 0 2rem 0;
        padding: 0 0 1.6rem 0;

        border-bottom: #ebf2f6 1px dashed;
    }
    .post-footer .share
    {
        position: static;

        width: auto;
    }
    .post-footer .share a
    {
        margin: 1.4rem .8rem 0 .8rem;
    }
    .older-posts,
    .newer-posts
    {
        position: static;

        margin: 10px 0;
    }
    .page-number
    {
        display: block;
    }
    .site-footer
    {
        font-size: 1.1rem;

        margin-top: 6rem;
    }
}
/* ==========================================================================
   End of file. Media queries should be the last thing here. Do not add stuff
   below this point, or it will probably fuck everything up.
   ========================================================================== */


================================================
FILE: footer.php
================================================
<?php
/**
 * The template for displaying the footer.
 *
 * Contains the closing of the #content div and all content after
 *
 * @package Casper
 */
?>
	<footer id="colophon" class="site-footer" role="contentinfo">
	    <a class="subscribe icon-feed" href="<?php bloginfo('rss2_url'); ?>"><span class="tooltip"><?php _e('Subscribe!', 'casper'); ?></span></a>
		<div class="site-info inner">
		    <section class="copyright">
		    	<?php if(  false == get_theme_mod( 'casper_custom_footer') ) { ?>
		    		<?php printf( __( '<a href="%1$s" rel="home">Casper WP</a> by Lacy Morrow', 'casper' ), esc_url( 'https://github.com/lacymorrow/casper' ) ); ?>
		    	<?php } else { echo get_theme_mod( 'casper_custom_footer'); } ?>
		    </section>
		</div><!-- .site-info -->
	</footer><!-- #colophon -->
</main><!-- /#content -->

<?php wp_footer(); ?>
</body>
</html>


================================================
FILE: functions.php
================================================
<?php
/**
 * Casper functions and definitions
 *
 * @package Casper
 */

if ( ! function_exists( 'casper_setup' ) ) :
/**
 * Sets up theme defaults and registers support for various WordPress features.
 *
 * Note that this function is hooked into the after_setup_theme hook, which
 * runs before the init hook. The init hook is too late for some features, such
 * as indicating support for post thumbnails.
 */
function casper_setup() {
	/**
	 * Set the content width based on the theme's design and stylesheet.
	 */
	if ( ! isset( $content_width ) ) {
		$content_width = 640; /* pixels */
	}

	/*
	 * Make theme available for translation.
	 * Translations can be filed in the /languages/ directory.
	 * If you're building a theme based on Casper, use a find and replace
	 * to change 'casper' to the name of your theme in all the template files
	 */
	load_theme_textdomain( 'casper', get_template_directory() . '/languages' );

	// Add default posts and comments RSS feed links to head.
	add_theme_support( 'automatic-feed-links' );

	/*
	 * Enable support for Post Thumbnails on posts and pages.
	 *
	 * @link http://codex.wordpress.org/Function_Reference/add_theme_support#Post_Thumbnails
	 */
	add_theme_support( 'post-thumbnails' );
	
	/*
	 * Let WordPress manage the document title.
	 * By adding theme support, we declare that this theme does not use a
	 * hard-coded <title> tag in the document head, and expect WordPress to
	 * provide it for us.
	 */
	add_theme_support( 'title-tag' );
	

	// This theme uses wp_nav_menu() in one location.
	register_nav_menus( array(
		'primary' => __( 'Primary Menu', 'casper' ),
	) );

	// Enable support for Post Formats.
	add_theme_support( 'post-formats', array( 'aside', 'image', 'video', 'quote', 'link' ) );


	// Setup the WordPress core custom background feature.
	add_theme_support( 'custom-background', apply_filters( 'casper_custom_background_args', array(
		'default-color' => 'ffffff',
		'default-image' => '',
	) ) );

	// Enable support for HTML5 markup.
	add_theme_support( 'html5', array(
		'comment-list',
		'search-form',
		'comment-form',
		'gallery',
	) );

	function new_excerpt_more( $more ) {
		if ( false != get_theme_mod( 'casper_read_more_link')) {
			return ' <a class="read-more" href="'. get_permalink( get_the_ID() ) . '">' . get_theme_mod( 'casper_read_more_link') . '</a>';
		} else {
			return ' <a class="read-more" href="'. get_permalink( get_the_ID() ) . '">' . __( '&hellip;&nbsp;<span class="meta-nav">&rarr;</span>', 'casper' ) . '</a>';
		}
	}
	add_filter( 'excerpt_more', 'new_excerpt_more' );

	// Enable automatic theme updates
	add_filter( 'auto_update_theme', '__return_true' );
}
endif; // casper_setup
add_action( 'after_setup_theme', 'casper_setup' );

if ( ! function_exists( 'casper_widgets_init' ) ) :
/**
 * Register widgetized area and update sidebar with default widgets.
 */
function casper_widgets_init() {
	register_sidebar( array(
		'name'          => __( 'Footer Bar', 'casper' ),
		'id'            => 'sidebar-1',
		'before_widget' => '<aside id="%1$s" class="widget %2$s">',
		'after_widget'  => '</aside>',
		'before_title'  => '<h1 class="widget-title">',
		'after_title'   => '</h1>',
	) );
}
endif; // casper_widgets_init
add_action( 'widgets_init', 'casper_widgets_init' );

if ( ! function_exists( 'casper_scripts' ) ) :
/**
 * Enqueue scripts and styles.
 */
function casper_scripts() {
	wp_enqueue_style('casper-google-fonts', '//fonts.googleapis.com/css?family=Noto+Serif:400,700,400italic|Open+Sans:700,400');
	wp_enqueue_style( 'casper-style', get_stylesheet_uri() );
	wp_enqueue_script( 'casper-index', get_template_directory_uri() . '/js/main.js', array('jquery'), '1.0.0', true );

	if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
		wp_enqueue_script( 'comment-reply' );
	}
}
endif; // casper_scripts
add_action( 'wp_enqueue_scripts', 'casper_scripts' );

/**
 * Implement the Custom Header feature.
 */
require get_template_directory() . '/inc/custom-header.php';

/**
 * Custom template tags for this theme.
 */
require get_template_directory() . '/inc/template-tags.php';

/**
 * Custom functions that act independently of the theme templates.
 */
require get_template_directory() . '/inc/extras.php';

/**
 * Customizer additions.
 */
require get_template_directory() . '/inc/customizer.php';

/**
 * Load Jetpack compatibility file.
 */
require get_template_directory() . '/inc/jetpack.php';

if ( ! function_exists( 'casper_add_editor_styles' ) ) :
/**
 * Custom Editor Styles
 */
function casper_add_editor_styles() {
    add_editor_style( 'css/custom-editor-style.css' );
}
endif; // casper_add_editor_styles
add_action( 'after_setup_theme', 'casper_add_editor_styles' );

if ( ! function_exists( 'casper_customizer_head' ) ) :


/**
 * Admin CSS
 */
function casper_admin_css(){
	wp_enqueue_style ('casper_admin_style', get_template_directory_uri() . '/css/admin.css', array(), false, false);
}
add_action('admin_head', 'casper_admin_css');


/**
 * Customizer hook
 */
function casper_customizer_head() {
   	if (get_theme_mod( 'casper_custom_meta' )!=false) { echo get_theme_mod( 'casper_custom_meta' ); } ?>

   	<style type="text/css">
		<?php if(get_header_textcolor()){ ?>
			.blog-title a, .blog-description, .social-icons a { color: #<?php header_textcolor(); ?>; }
		<?php } ?>

		<?php if('blank' === get_header_textcolor()) { ?>
			.blog-description { display: none; }
		<?php } ?>
		<?php if(false != get_theme_mod( 'casper_header_textcolor' ) && false != get_theme_mod( 'casper_display_header' )){ ?>
        	body:not(.home) .blog-title a, body:not(.home) .blog-description, body:not(.home) .social-icons a {
        		color: <?php echo get_theme_mod( 'casper_header_textcolor' ); ?>;
        	}
        <?php } ?>
		<?php if(get_theme_mod('casper_header_color')){ ?>
		    .site-head { background-color: <?php echo get_theme_mod( 'casper_header_color' ); ?>; }
		<?php } ?>
        <?php if(false != get_theme_mod( 'casper_display_header' )) { ?>
        	body:not(.home) #masthead{ background: none; }
        <?php } ?>
        <?php if(false != get_theme_mod( 'casper_display_header_all' )) { ?>
        	body:not(.home) .site-head:after { display: none; }
        	body:not(.home) #masthead{ height: auto; border: none; }
        	body:not(.home) .blog-title, body:not(.home) .blog-description { display: none; }
        	body:not(.home) .inner { padding-top: 1em; }
        	body:not(.home) .main-navigation { position: relative; }
        <?php } ?>

		<?php if( get_theme_mod( 'casper_link_color' )) { ?>
			section a { color: <?php echo get_theme_mod( 'casper_link_color' ); ?>; }
		<?php } ?>

		<?php if(get_theme_mod( 'casper_hover_color' )) { ?>
			a:hover, body .blog-title a:hover, body .social-icons a:hover { color: <?php echo get_theme_mod( 'casper_hover_color' ); ?>; }
		<?php } ?>
		<?php if(!get_theme_mod( 'casper_display_header' )){ ?>
			.main-navigation a { color: <?php echo get_theme_mod( 'casper_home_menu_color' ); ?>; }
		<?php } ?>
        <?php if(get_theme_mod( 'casper_menu_color' )){ ?>
        	.main-navigation a { color: <?php echo get_theme_mod( 'casper_menu_color' ); ?>; }
        <?php } ?>
        <?php if(get_theme_mod( 'casper_home_menu_color' )){ ?>
        	.home .main-navigation a { color: <?php echo get_theme_mod( 'casper_home_menu_color' ); ?>; }
        <?php } ?>
        <?php if( false != get_theme_mod( 'casper_logo_circle' ) ) { ?>
			.blog-logo img {
				-webkit-border-radius: 50%;
			    -moz-border-radius: 50%;
			    border-radius: 50%;
			}
        <?php } ?>
        <?php if( false != get_theme_mod( 'casper_logo_frame' ) ) { ?>
			.blog-logo img {
			    border: 3px solid white;
			    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,0.3);
			    -moz-box-shadow: 0 1px 1px rgba(0,0,0,0.3);
			    box-shadow: 0 1px 1px rgba(0,0,0,0.3);
			}
        <?php } ?>
        <?php if( false != get_theme_mod( 'casper_hide_page_header_dot' ) ) { ?>
			.site-head:after {
			    display: none;
			}
        <?php } ?>
    </style>
    <?php
}
endif; // casper_customizer_head
add_action( 'wp_head', 'casper_customizer_head' );
?>


================================================
FILE: header.php
================================================
<?php
/**
 * The Header for our theme.
 *
 * Displays all of the <head> section and everything up till <div id="content">
 *
 * @package Casper
 */
?><!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="HandheldFriendly" content="True" />
<meta name="MobileOptimized" content="320" />

<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
<?php wp_head(); ?>
</head>

<body <?php body_class(); ?>>

<header id="masthead" role="banner" class="site-head site-header" <?php if(get_header_image() ) : ?>style="background-image: url(<?php esc_url(header_image()); ?>);"<?php endif ?>>
    <nav id="site-navigation" class="main-navigation" role="navigation">
        <div>
            <h1 class="menu-toggle">
                <a class="icon-bars" href="#">
                    <span class="hidden"><?php _e( 'Menu', 'casper' ); ?></span>
                </a>
            </h1>
            <a class="skip-link screen-reader-text" href="#content"><?php _e( 'Skip to content', 'casper' ); ?></a>
            <?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?>
        </div>
    </nav><!-- #site-navigation -->

    <div class="vertical-row">
        <div class="vertical">
            <div class="site-head-content inner">
                <?php if ( get_theme_mod( 'casper_logo' ) ) : ?>
                    <a class="blog-logo" href='<?php echo esc_url( home_url( '/' ) ); ?>' rel='home'><img src='<?php echo esc_url( get_theme_mod( 'casper_logo' ) ); ?>' alt='<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>'></a>
                <?php endif; ?>

                <div class="social-icons">
                    <?php if ( false != get_theme_mod( 'casper_social_youtube')) { ?>
                        <a class="icon-youtube" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_youtube') ); ?>">
                            <span class="hidden"><?php _e( 'Youtube', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_tumblr')) { ?>
                        <a class="icon-tumblr" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_tumblr') ); ?>">
                            <span class="hidden"><?php _e( 'Tumblr', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_instagram')) { ?>
                        <a class="icon-instagram" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_instagram') ); ?>">
                            <span class="hidden"><?php _e( 'Instagram', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_google')) { ?>
                        <a class="icon-google-plus" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_google') ); ?>">
                            <span class="hidden"><?php _e( 'Google+', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_facebook')) { ?>
                        <a class="icon-facebook" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_facebook') ); ?>">
                            <span class="hidden"><?php _e( 'Facebook', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_twitter')) { ?>
                        <a class="icon-twitter" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_twitter' ) ); ?>">
                            <span class="hidden"><?php _e( 'Twitter', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_website')) { ?>
                        <a class="icon-home" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_website') ); ?>">
                            <span class="hidden"><?php _e( 'Home', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_mail')) { ?>
                        <a class="icon-envelope" target="_blank" href="<?php echo esc_url( 'mailto:' . get_theme_mod( 'casper_social_mail') ); ?>">
                            <span class="hidden"><?php _e( 'Email', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_linkedin')) { ?>
                        <a class="icon-linkedin" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_linkedin') ); ?>">
                            <span class="hidden"><?php _e( 'LinkedIn', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_github')) { ?>
                        <a class="icon-github-alt" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_github') ); ?>">
                            <span class="hidden"><?php _e( 'GitHub', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_bitbucket')) { ?>
                        <a class="icon-bitbucket" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_bitbucket') ); ?>">
                            <span class="hidden"><?php _e( 'Bitbucket', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_stack_overflow')) { ?>
                        <a class="icon-stack-overflow" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_stack_overflow') ); ?>">
                            <span class="hidden"><?php _e( 'Stack Overflow', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_dribbble')) { ?>
                        <a class="icon-dribbble" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_dribbble') ); ?>">
                            <span class="hidden"><?php _e( 'Dribbble', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_behance')) { ?>
                        <a class="icon-behance" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_behance') ); ?>">
                            <span class="hidden"><?php _e( 'Behance', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_rss')) { ?>
                        <a class="icon-feed" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_rss') ); ?>">
                            <span class="hidden"><?php _e( 'RSS', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_codepen')) { ?>
                        <a class="icon-codepen" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_codepen') ); ?>">
                            <span class="hidden"><?php _e( 'CodePen', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_deviantart')) { ?>
                        <a class="icon-deviantart" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_deviantart') ); ?>">
                            <span class="hidden"><?php _e( 'Deviant Art', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_flickr')) { ?>
                        <a class="icon-flickr" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_flickr') ); ?>">
                            <span class="hidden"><?php _e( 'Flickr', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_lastfm')) { ?>
                        <a class="icon-lastfm" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_lastfm') ); ?>">
                            <span class="hidden"><?php _e( 'LastFM', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_soundcloud')) { ?>
                        <a class="icon-soundcloud" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_soundcloud') ); ?>">
                            <span class="hidden"><?php _e( 'SoundCloud', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                    <?php if ( false != get_theme_mod( 'casper_social_spotify')) { ?>
                        <a class="icon-spotify" target="_blank" href="<?php echo esc_url( get_theme_mod( 'casper_social_spotify') ); ?>">
                            <span class="hidden"><?php _e( 'Spotify', 'casper' ); ?></span>
                        </a>
                    <?php } ?>
                </div>
                <h1 class="blog-title"><a class="blog-logo" href='<?php echo esc_url( home_url( '/' ) ); ?>' rel='home'><?php bloginfo( 'name' ); ?></a></h1>
                <h2 class="blog-description"><?php bloginfo( 'description' ); ?></h2>
            </div>
        </div>
    </div>
</header><!-- #masthead -->

<main id="content" class="content" role="main">


================================================
FILE: inc/custom-header.php
================================================
<?php
/**
 * Sample implementation of the Custom Header feature
 * http://codex.wordpress.org/Custom_Headers
 *
 * You can add an optional custom header image to header.php like so ...
 *
 * @package Casper
 */

/**
 * Setup the WordPress core custom header feature.
 *
 * @uses casper_header_style()
 * @uses casper_admin_header_style()
 * @uses casper_admin_header_image()
 */
function casper_custom_header_setup() {
	add_theme_support( 'custom-header', apply_filters( 'casper_custom_header_args', array(
		'default-image'          => '',
		'default-text-color'     => 'ffffff',
		'width'                  => 1000,
		'height'                 => 250,
		'flex-height'            => true,
		'flex-width'            => true,
		'wp-head-callback'       => 'casper_header_style',
		'admin-head-callback'    => 'casper_admin_header_style',
		'admin-preview-callback' => 'casper_admin_header_image',
	) ) );
}
add_action( 'after_setup_theme', 'casper_custom_header_setup' );

if ( ! function_exists( 'casper_header_style' ) ) :
/**
 * Styles the header image and text displayed on the blog
 *
 * @see casper_custom_header_setup().
 */
function casper_header_style() {
	$header_text_color = get_header_textcolor();

	// If no custom options for text are set, let's bail
	// get_header_textcolor() options: HEADER_TEXTCOLOR is default, hide text (returns 'blank') or any hex value
	if ( HEADER_TEXTCOLOR == $header_text_color ) {
		return;
	}

	// If we get this far, we have custom styles. Let's do this.
	?>
	<style type="text/css">
	<?php
		// Has the text been hidden?
		if ( 'blank' == $header_text_color ) :
	?>
		.site-title,
		.site-description {
			position: absolute;
			clip: rect(1px, 1px, 1px, 1px);
		}
	<?php
		// If the user has set a custom color for the text use that
		else :
	?>
		.site-title a,
		.site-description {
			color: #<?php echo $header_text_color; ?>;
		}
	<?php endif; ?>
	</style>
	<?php
}
endif; // casper_header_style

if ( ! function_exists( 'casper_admin_header_style' ) ) :
/**
 * Styles the header image displayed on the Appearance > Header admin panel.
 *
 * @see casper_custom_header_setup().
 */
function casper_admin_header_style() {
?>
	<style type="text/css">
		.appearance_page_custom-header #headimg {
			border: none;
		}
		#headimg h1,
		#desc {
		}
		#headimg h1 {
		}
		#headimg h1 a {
		}
		#desc {
		}
		#headimg img {
		}
	</style>
<?php
}
endif; // casper_admin_header_style

if ( ! function_exists( 'casper_admin_header_image' ) ) :
/**
 * Custom header image markup displayed on the Appearance > Header admin panel.
 *
 * @see casper_custom_header_setup().
 */
function casper_admin_header_image() {
	$style = sprintf( ' style="color:#%s;"', get_header_textcolor() );
?>
	<div id="headimg">
		<h1 class="displaying-header-text"><a id="name"<?php echo $style; ?> onclick="return false;" href="<?php echo esc_url( home_url( '/' ) ); ?>"><?php bloginfo( 'name' ); ?></a></h1>
		<div class="displaying-header-text" id="desc"<?php echo $style; ?>><?php bloginfo( 'description' ); ?></div>
		<?php if ( get_header_image() ) : ?>
		<img src="<?php header_image(); ?>" alt="">
		<?php endif; ?>
	</div>
<?php
}
endif; // casper_admin_header_image


================================================
FILE: inc/customizer.php
================================================
<?php
/**
 * Casper Theme Customizer
 *
 * @package Casper
 */

/**
 * Add postMessage support for site title and description for the Theme Customizer.
 *
 * @param WP_Customize_Manager $wp_customize Theme Customizer object.
 */
function casper_customize_register( $wp_customize ) {
	/**
	 * Adds textarea support to the theme customizer
	 */
	class Casper_textarea_control extends WP_Customize_Control {
	    public $type = 'textarea';

	    public function render_content() {
	        ?>
	            <label>
	                <span class="customize-control-title"><?php echo esc_html( $this->label ); ?></span>
	                <textarea rows="5" style="width:100%;" <?php $this->link(); ?>><?php echo esc_textarea( $this->value() ); ?></textarea>
	            </label>
	        <?php
	    }
	}
	$wp_customize->get_setting( 'blogname' )->transport         = 'postMessage';
	$wp_customize->get_setting( 'blogdescription' )->transport  = 'postMessage';
	$wp_customize->get_setting( 'background_color' )->transport = 'postMessage';
	$wp_customize->get_setting( 'header_textcolor' )->transport = 'refresh';
	// Logo Controls
	$wp_customize->add_section( 'casper_logo_section' , array(
	    'title'       => __( 'Logo', 'casper' ),
	    'priority'    => 30,
	    'description' => 'Upload a logo to display above the site title on each page',
	) );
	$wp_customize->add_setting( 'casper_logo'  , array(
	    'transport'   => 'refresh',
	    'sanitize_callback' => 'casper_sanitize_uri'
	) );
	$wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'casper_logo', array(
	    'label'    => __( 'Logo', 'casper' ),
	    'section'  => 'casper_logo_section',
	    'settings' => 'casper_logo',
	) ) );
	// Custom Controls
	$wp_customize->add_section(
	    'casper_custom',
	    array(
	        'title'     => 'Casper Options',
	        'priority'  => 200
	    )
	);
	// Theme header bg color
	$wp_customize->add_setting( 'casper_header_color' , array(
	    'default'     => '#303538',
	    'transport'   => 'postMessage',
	    'sanitize_callback' => 'casper_sanitize_color'
	) );
	$wp_customize->add_control(
	    new WP_Customize_Color_Control(
	        $wp_customize,
	        'header_color',
	        array(
	            'label'      => __( 'Header Color', 'casper' ),
	            'section'    => 'colors',
	            'settings'   => 'casper_header_color'
	        )
	    )
	);
	// Home head text color
	$wp_customize->add_setting( 'casper_header_textcolor' , array(
	    'default'     => '#50585D',
	    'transport'   => 'postMessage',
	    'sanitize_callback' => 'casper_sanitize_color'
	) );
	$wp_customize->add_control(
	    new WP_Customize_Color_Control(
	        $wp_customize,
	        'casper_header_textcolor',
	        array(
	            'label'      => __( 'Page Header Text Color', 'casper' ),
	            'section'    => 'colors',
	            'settings'   => 'casper_header_textcolor',
	        )
	    )
	);
	// Theme link color
	$wp_customize->add_setting( 'casper_link_color' , array(
	    'default'     => '#4a4a4a',
	    'transport'   => 'postMessage',
	    'sanitize_callback' => 'casper_sanitize_color'
	) );
	$wp_customize->add_control(
	    new WP_Customize_Color_Control(
	        $wp_customize,
	        'link_color',
	        array(
	            'label'      => __( 'Link Color', 'casper' ),
	            'section'    => 'colors',
	            'settings'   => 'casper_link_color'
	        )
	    )
	);
	// Theme hover color
	$wp_customize->add_setting( 'casper_hover_color' , array(
	    'default'     => '#57A3E8',
	    'transport'   => 'refresh',
	    'sanitize_callback' => 'casper_sanitize_color'
	) );
	$wp_customize->add_control(
	    new WP_Customize_Color_Control(
	        $wp_customize,
	        'hover_color',
	        array(
	            'label'      => __( 'Hover Color', 'casper' ),
	            'section'    => 'colors',
	            'settings'   => 'casper_hover_color'
	        )
	    )
	);
	// Home Menu color
	$wp_customize->add_setting( 'casper_home_menu_color' , array(
	    'default'     => '#ffffff',
	    'transport'   => 'refresh',
	    'sanitize_callback' => 'casper_sanitize_color'
	) );
	$wp_customize->add_control(
	    new WP_Customize_Color_Control(
	        $wp_customize,
	        'home_menu_color',
	        array(
	            'label'      => __( 'Home Menu Color', 'casper' ),
	            'section'    => 'colors',
	            'settings'   => 'casper_home_menu_color'
	        )
	    )
	);
	// Menu color
	$wp_customize->add_setting( 'casper_menu_color' , array(
	    'default'     => '#50585D',
	    'transport'   => 'refresh',
	    'sanitize_callback' => 'casper_sanitize_color'
	) );
	$wp_customize->add_control(
	    new WP_Customize_Color_Control(
	        $wp_customize,
	        'menu_color',
	        array(
	            'label'      => __( 'Menu Color', 'casper' ),
	            'section'    => 'colors',
	            'settings'   => 'casper_menu_color'
	        )
	    )
	);

	// Display header bg on all pages (vs home only)
	$wp_customize->add_setting(
	    'casper_display_header',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_display_header',
	    array(
	    	'priority'	=> 1,
	        'section'   => 'casper_custom',
	        'label'     => 'Only display header background on home page',
	        'type'      => 'checkbox'
	    )
	);
	// Display header on all pages (vs home only)
	$wp_customize->add_setting(
	    'casper_display_header_all',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_display_header_all',
	    array(
	    	'priority'	=> 2,
	        'section'   => 'casper_custom',
	        'label'     => 'Only display header on home page',
	        'type'      => 'checkbox'
	    )
	);
	// Circle logo
	$wp_customize->add_setting(
	    'casper_logo_circle',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'postMessage',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_logo_circle',
	    array(
	    	'priority'	=> 3,
	        'section'   => 'casper_custom',
	        'label'     => 'Make logo circular',
	        'type'      => 'checkbox'
	    )
	);
	// Frame logo
	$wp_customize->add_setting(
	    'casper_logo_frame',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'postMessage',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_logo_frame',
	    array(
	    	'priority'	=> 4,
	        'section'   => 'casper_custom',
	        'label'     => 'Frame logo image',
	        'type'      => 'checkbox'
	    )
	);
	// Casper hide page header dot
	$wp_customize->add_setting(
	    'casper_hide_page_header_dot',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_hide_page_header_dot',
	    array(
	    	'priority'	=> 5,
	        'section'   => 'casper_custom',
	        'label'     => 'Hide header \'dot\' on pages',
	        'type'      => 'checkbox'
	    )
	);
	// Automatically limit post summary
	$wp_customize->add_setting(
	    'casper_auto_excerpt',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_auto_excerpt',
	    array(
	    	'priority'	=> 6,
	        'section'   => 'casper_custom',
	        'label'     => 'Auto-limit summary length',
	        'type'      => 'checkbox'
	    )
	);
	// Don't display Categories
	$wp_customize->add_setting(
	    'casper_hide_categories',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_hide_categories',
	    array(
	    	'priority'	=> 7,
	        'section'   => 'casper_custom',
	        'label'     => 'Don\'t display categories',
	        'type'      => 'checkbox'
	    )
	);
	// Don't display Tags
	$wp_customize->add_setting(
	    'casper_hide_tags',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_hide_tags',
	    array(
	    	'priority'	=> 8,
	        'section'   => 'casper_custom',
	        'label'     => 'Don\'t display tags',
	        'type'      => 'checkbox'
	    )
	);
	// Don't display Dates
	$wp_customize->add_setting(
	    'casper_hide_dates',
	    array(
	        'default'    =>  false,
	        'transport'  =>  'refresh',
	        'sanitize_callback' => 'casper_sanitize_checkbox'
	    )
	);
	$wp_customize->add_control(
	    'casper_hide_dates',
	    array(
	    	'priority'	=> 9,
	        'section'   => 'casper_custom',
	        'label'     => 'Don\'t display dates',
	        'type'      => 'checkbox'
	    )
	);
	// Custom meta
	$wp_customize->add_setting( 'casper_custom_meta' , array( 'sanitize_callback' => 'casper_sanitize_meta' ));

	$wp_customize->add_control(
	    new Casper_textarea_control(
	        $wp_customize,
	        'casper_custom_meta',
	        array(
	            'label' => 'Custom meta tags',
	            'section' => 'casper_custom',
	            'settings' => 'casper_custom_meta'
	        )
	    )
	);

	// Custom read more link
	$wp_customize->add_setting( 'casper_read_more_link' , array( 'sanitize_callback' => 'casper_sanitize_text' ));

	$wp_customize->add_control(
	    new Casper_textarea_control(
	        $wp_customize,
	        'casper_read_more_link',
	        array(
	            'label' => '\'Read More\' link',
	            'section' => 'casper_custom',
	            'settings' => 'casper_read_more_link'
	        )
	    )
	);

	// Custom footer
	$wp_customize->add_setting( 'casper_custom_footer' , array( 'sanitize_callback' => 'casper_sanitize_footer' ));

	$wp_customize->add_control(
	    new Casper_textarea_control(
	        $wp_customize,
	        'casper_custom_footer',
	        array(
	            'label' => 'Custom footer',
	            'section' => 'casper_custom',
	            'settings' => 'casper_custom_footer'
	        )
	    )
	);

	/* ==========================================================================
    Social Icons
    ========================================================================== */

	$wp_customize->add_section(
	    'casper_social',
	    array(
	        'title'     => 'Social URLs',
	        'priority'  => 199
	    )
	);
	$wp_customize->add_setting('casper_social_behance', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_behance', array('section' => 'casper_social', 'label' => 'Behance', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_bitbucket', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_bitbucket', array('section' => 'casper_social', 'label' => 'Bitbucket', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_codepen', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_codepen', array('section' => 'casper_social', 'label' => 'CodePen', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_deviantart', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_deviantart', array('section' => 'casper_social', 'label' => 'Deviant Art', 'type' => 'text'));	$wp_customize->add_setting('casper_social_dribbble', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_dribbble', array('section' => 'casper_social', 'label' => 'Dribbble', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_facebook', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_facebook', array('section' => 'casper_social', 'label' => 'Facebook', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_flickr', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_flickr', array('section' => 'casper_social', 'label' => 'Flickr', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_github', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_github', array('section' => 'casper_social', 'label' => 'GitHub', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_google', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_google', array('section' => 'casper_social', 'label' => 'Google+', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_instagram', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_instagram', array('section' => 'casper_social', 'label' => 'Instagram', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_lastfm', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_lastfm', array('section' => 'casper_social', 'label' => 'LastFM', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_linkedin', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_linkedin', array('section' => 'casper_social', 'label' => 'LinkedIn', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_mail', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_email'));
	$wp_customize->add_control('casper_social_mail', array('section' => 'casper_social', 'label' => 'Email', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_rss', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_rss', array('section' => 'casper_social', 'label' => 'RSS', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_soundcloud', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_soundcloud', array('section' => 'casper_social', 'label' => 'SoundCloud', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_stack_overflow', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_stack_overflow', array('section' => 'casper_social', 'label' => 'Stack Overflow', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_spotify', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_spotify', array('section' => 'casper_social', 'label' => 'Spotify', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_tumblr', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_tumblr', array('section' => 'casper_social', 'label' => 'Tumblr', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_twitter', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_twitter', array('section' => 'casper_social', 'label' => 'Twitter', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_website', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_website', array('section' => 'casper_social', 'label' => 'Website', 'type' => 'text'));
	$wp_customize->add_setting('casper_social_youtube', array('transport' => 'refresh', 'sanitize_callback' => 'casper_sanitize_uri'));
	$wp_customize->add_control('casper_social_youtube', array('section' => 'casper_social', 'label' => 'Youtube', 'type' => 'text'));
}
add_action( 'customize_register', 'casper_customize_register' );

/**
 * Binds JS handlers to make Theme Customizer preview reload changes asynchronously.
 */
function casper_customize_preview_js() {
	wp_enqueue_script( 'casper_customizer', get_template_directory_uri() . '/js/customizer.js', array( 'jquery', 'customize-preview' ), '20130508', true );
}
add_action( 'customize_preview_init', 'casper_customize_preview_js' );

/**
 * Sanitize color
 */
function casper_sanitize_color($content){
	$content = str_replace('#', '', $content);
	if (ctype_xdigit($content)) {
	    return '#' . $content;
	}
	return '';
}

/**
 * Sanitize checkbox
 */
function casper_sanitize_checkbox($content){
	if('selected' === $content || 'checked' === $content || 'true' === $content || true === $content){
		return $content;
	}
	return '';
}

/**
 * Sanitize URIs
 */
function casper_sanitize_uri($uri){
	if('' === $uri){
		return '';
	}
	return esc_url_raw($uri);
}

/**
 * Sanitize Text
 */
function casper_sanitize_text($str){
	if('' === $str){
		return '';
	}
	return sanitize_text_field( $str);
}

/**
 * Sanitize email/uri
 */
function casper_sanitize_email($uri){
	if('' === $uri){
		return '';
	}
	if (substr( $uri, 0, 4 ) != 'http' && strpos($uri, '@') === false) {
		$uri = 'mailto:' . $uri;
	}
	return sanitize_email($uri);
}

/**
 * Sanitize meta
 */
function casper_sanitize_meta($content){
	$allowed = array('meta' => array());
	if('' === $content){
		return '';
	}
	return wp_kses($content, $allowed);
}

/**
 * Sanitize footer
 */
function casper_sanitize_footer($content){
	if('' === $content){
		return '';
	}
	if ( current_user_can('unfiltered_html') )
		return wp_kses($content, wp_kses_allowed_html('post'));
	else
		return stripslashes( wp_filter_post_kses( addslashes($content) ) );
}


================================================
FILE: inc/extras.php
================================================
<?php
/**
 * Custom functions that act independently of the theme templates
 *
 * Eventually, some of the functionality here could be replaced by core features
 *
 * @package Casper
 */

/**
 * Get our wp_nav_menu() fallback, wp_page_menu(), to show a home link.
 *
 * @param array $args Configuration arguments.
 * @return array
 */
function casper_page_menu_args( $args ) {
	$args['show_home'] = true;
	return $args;
}
add_filter( 'wp_page_menu_args', 'casper_page_menu_args' );

/**
 * Adds custom classes to the array of body classes.
 *
 * @param array $classes Classes for the body element.
 * @return array
 */
function casper_body_classes( $classes ) {
	// Adds a class of group-blog to blogs with more than 1 published author.
	if ( is_multi_author() ) {
		$classes[] = 'group-blog';
	}

	return $classes;
}
add_filter( 'body_class', 'casper_body_classes' );

/**
 * Filters wp_title to print a neat <title> tag based on what is being viewed.
 *
 * @param string $title Default title text for current view.
 * @param string $sep Optional separator.
 * @return string The filtered title.
 */
function casper_wp_title( $title, $sep ) {
	if ( is_feed() ) {
		return $title;
	}
	
	global $page, $paged;

	// Add the blog name
	$title .= get_bloginfo( 'name', 'display' );

	// Add the blog description for the home/front page.
	$site_description = get_bloginfo( 'description', 'display' );
	if ( $site_description && ( is_home() || is_front_page() ) ) {
		$title .= " $sep $site_description";
	}

	// Add a page number if necessary:
	if ( $paged >= 2 || $page >= 2 ) {
		$title .= " $sep " . sprintf( __( 'Page %s', 'casper' ), max( $paged, $page ) );
	}

	return $title;
}
add_filter( 'wp_title', 'casper_wp_title', 10, 2 );

/**
 * Sets the authordata global when viewing an author archive.
 *
 * This provides backwards compatibility with
 * http://core.trac.wordpress.org/changeset/25574
 *
 * It removes the need to call the_post() and rewind_posts() in an author
 * template to print information about the author.
 *
 * @global WP_Query $wp_query WordPress Query object.
 * @return void
 */
function casper_setup_author() {
	global $wp_query;

	if ( $wp_query->is_author() && isset( $wp_query->post ) ) {
		$GLOBALS['authordata'] = get_userdata( $wp_query->post->post_author );
	}
}
add_action( 'wp', 'casper_setup_author' );



================================================
FILE: inc/jetpack.php
================================================
<?php
/**
 * Jetpack Compatibility File
 * See: http://jetpack.me/
 *
 * @package Casper
 */

/**
 * Add theme support for Infinite Scroll.
 * See: http://jetpack.me/support/infinite-scroll/
 */
function casper_jetpack_setup() {
	add_theme_support( 'infinite-scroll', array(
		'container' => 'main',
		'footer'    => 'page',
	) );
}
add_action( 'after_setup_theme', 'casper_jetpack_setup' );


================================================
FILE: inc/template-tags.php
================================================
<?php
/**
 * Custom template tags for this theme.
 *
 * Eventually, some of the functionality here could be replaced by core features.
 *
 * @package Casper
 */

if ( ! function_exists( 'casper_paging_nav' ) ) :
/**
 * Display navigation to next/previous set of posts when applicable.
 *
 * @return void
 */
function casper_paging_nav() {
	// Don't print empty markup if there's only one page.
	if ( $GLOBALS['wp_query']->max_num_pages < 2 ) {
		return;
	}
	global $wp_query;
	$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
	?>
	<nav class="pagination navigation paging-navigation" role="navigation">
		<div class="nav-links">
			<?php if ( get_next_posts_link() ) : ?>
			<div class="older-posts"><?php next_posts_link( __( 'Older Posts <span class="meta-nav">&rarr;</span>', 'casper' ) ); ?></div>
			<?php endif; ?>
				<div class="page-number"><?php printf( __( 'Page', 'casper' ).' %1$s '.__( 'of', 'casper' ).' %2$s', $paged, $wp_query->max_num_pages ); ?></div>
			<?php if ( get_previous_posts_link() ) : ?>
			<div class="newer-posts"><?php previous_posts_link( __( '<span class="meta-nav">&larr;</span> Newer Posts', 'casper' ) ); ?></div>
			<?php endif; ?>

		</div><!-- .nav-links -->
	</nav><!-- .navigation -->
	<?php
}
endif;

if ( ! function_exists( 'casper_post_nav' ) ) :
/**
 * Display navigation to next/previous post when applicable.
 *
 * @return void
 */
function casper_post_nav() {
	// Don't print empty markup if there's nowhere to navigate.
	$previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true );
	$next     = get_adjacent_post( false, '', false );

	if ( ! $next && ! $previous ) {
		return;
	}
	global $wp_query;
	$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
	?>
	<nav class="pagination navigation post-navigation" role="navigation">
		<div class="nav-links">
			<?php
				previous_post_link( '<div class="older-posts">%link</div>', _x( '%title <span class="meta-nav">&rarr;</span>', 'Previous post link', 'casper' ) ); ?>
				<div class="page-number">&bull;</div>
				<?php next_post_link(     '<div class="newer-posts">%link</div>',     _x( '<span class="meta-nav">&larr;</span> %title', 'Next post link',     'casper' ) );
			?>
		</div><!-- .nav-links -->
	</nav><!-- .navigation -->
	<?php
}
endif;

if ( ! function_exists( 'casper_posted_on' ) ) :
/**
 * Prints HTML with meta information for the current post-date/time and author.
 */
function casper_posted_on() {
	$time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time>';
	if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) {
		//$time_string .= '<time class="updated" datetime="%3$s">%4$s</time>';
	}

	$time_string = sprintf( $time_string,
		esc_attr( get_the_date( 'c' ) ),
		esc_html( get_the_date() ),
		esc_attr( get_the_modified_date( 'c' ) ),
		esc_html( get_the_modified_date() )
	);

	printf( __( '<span class="posted-on">%1$s</span><span class="byline"> by %2$s</span>', 'casper' ),
		sprintf( '<a href="%1$s" rel="bookmark">%2$s</a>',
			esc_url( get_permalink() ),
			$time_string
		),
		sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s">%2$s</a></span>',
			esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
			esc_html( get_the_author() )
		)
	);
}
endif;

/**
 * Returns true if a blog has more than 1 category.
 */
function casper_categorized_blog() {
	if ( false === ( $all_the_cool_cats = get_transient( 'all_the_cool_cats' ) ) ) {
		// Create an array of all the categories that are attached to posts.
		$all_the_cool_cats = get_categories( array(
			'hide_empty' => 1,
		) );

		// Count the number of categories that are attached to the posts.
		$all_the_cool_cats = count( $all_the_cool_cats );

		set_transient( 'all_the_cool_cats', $all_the_cool_cats );
	}

	if ( '1' != $all_the_cool_cats ) {
		// This blog has more than 1 category so casper_categorized_blog should return true.
		return true;
	} else {
		// This blog has only 1 category so casper_categorized_blog should return false.
		return false;
	}
}

/**
 * Flush out the transients used in casper_categorized_blog.
 */
function casper_category_transient_flusher() {
	// Like, beat it. Dig?
	delete_transient( 'all_the_cool_cats' );
}
add_action( 'edit_category', 'casper_category_transient_flusher' );
add_action( 'save_post',     'casper_category_transient_flusher' );


================================================
FILE: index.php
================================================
<?php
/**
 * The main template file.
 *
 * This is the most generic template file in a WordPress theme
 * and one of the two required files for a theme (the other being style.css).
 * It is used to display a page when nothing more specific matches a query.
 * E.g., it puts together the home page when no home.php file exists.
 * Learn more: http://codex.wordpress.org/Template_Hierarchy
 *
 * @package Casper
 */

get_header(); ?>


		<?php if ( have_posts() ) : ?>

			<?php /* Start the Loop */ ?>
			<?php while ( have_posts() ) : the_post(); ?>

				<?php
					/* Include the Post-Format-specific template for the content.
					 * If you want to override this in a child theme, then include a file
					 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
					 */
					get_template_part( 'content', get_post_format() );
				?>

			<?php endwhile; ?>

			<?php casper_paging_nav(); ?>


		<?php else : ?>

			<?php get_template_part( 'content', 'none' ); ?>

		<?php endif; ?>


<?php get_sidebar(); ?>
<?php get_footer(); ?>


================================================
FILE: js/customizer.js
================================================
/**
 * Theme Customizer enhancements for a better user experience.
 *
 * Contains handlers to make Theme Customizer preview reload changes asynchronously.
 */

( function( $ ) {

    // Blog title and description.
    wp.customize( 'blogname', function( value ) {
        value.bind( function( to ) {
            $( '.blog-title a' ).text( to );
        } );
    } );
    wp.customize( 'blogdescription', function( value ) {
        value.bind( function( to ) {
            $( '.blog-description' ).text( to );
        } );
    } );
    /*

    // Header text color
    wp.customize( 'header_textcolor', function( value ) {
        value.bind( function( to ) {
            if ( 'blank' === to || '' === to || false === to) {
                $( 'header .blog-title a, header .blog-description, .social-icons a' ).css( {
                    'color' : 'inherit'
                } );
            } else {
                $( 'header .blog-title a, header .blog-description, .social-icons a' ).css( {
                    'color': to
                } );
            }
        } );
    } );
    // Hover color
    wp.customize( 'casper_hover_color', function( value ) {
        value.bind( function( to ) {
            $( 'a:hover, header .blog-title a:hover, header .social-icons a:hover' ).css( 'color', to );
        } );
    });
    // Home Menu color
    wp.customize( 'casper_home_menu_color', function( value ) {
        value.bind( function( to ) {
            $( '.main-navigation a' ).css( 'color', to );
        } );
    });
    // Menu color
    wp.customize( 'casper_menu_color', function( value ) {
        value.bind( function( to ) {
            $( '.main-navigation a' ).css( 'color', to );
        } );
    });
    */

    // Other Page Header text color
    wp.customize( 'casper_header_textcolor', function( value ) {
        value.bind( function( to ) {
            if ( 'blank' === to || '' === to || false === to ) {
                $( ' header .blog-title a,  header .blog-description,  .social-icons a' ).css( {
                    'color': 'inherit'
                } );
            } else {
                $( ' header .blog-title a,  header .blog-description,  .social-icons a' ).css( {
                    'color': to
                } );
            }
        } );
    } );

    // Header Color
    wp.customize( 'casper_header_color', function( value ) {
        value.bind( function( to ) {
            $( '.site-head' ).css( 'background-color', to );
        } );
    });

    // Link color
    wp.customize( 'casper_link_color', function( value ) {
        value.bind( function( to ) {
            $( 'section a' ).css( 'color', to );
        } );
    });

    // Circle logo
    wp.customize( 'casper_logo_circle', function( value ) {
        value.bind( function( to ) {
            if ( '' === to ) {
                $( '.blog-logo img' ).css( { '-webkit-border-radius': '0',
                                            '-moz-border-radius': '0',
                                            'border-radius': '0'
                } );
            } else {
                $( '.blog-logo img' ).css( { '-webkit-border-radius': '50%',
                                            '-moz-border-radius': '50%',
                                            'border-radius': '50%'
                } );
            }
        } );
    });

    // Logo frame
    wp.customize( 'casper_logo_frame', function( value ) {
        value.bind( function( to ) {
            if ( '' === to ) {
                $( '.blog-logo img' ).css( { 'border': 'none',
                                            '-webkit-box-shadow': 'none',
                                            '-moz-box-shadow': 'none',
                                            'box-shadow': 'none'
                } );
            } else {
                $( '.blog-logo img' ).css( { 'border': '3px solid white',
                                            '-webkit-box-shadow': '0 1px 1px rgba(0,0,0,0.3)',
                                            '-moz-box-shadow': '0 1px 1px rgba(0,0,0,0.3)',
                                            'box-shadow': '0 1px 1px rgba(0,0,0,0.3);} )'
                } );
            }
        });
    });

    // Footer info
    wp.customize( 'casper_custom_footer', function( value ) {
        value.bind( function( to ) {
            if ( '' === to ) {
                $( '.copyright' ).html( '<a href="https://github.com/lacymorrow/casper/" rel="home">Casper</a> by Lacy Morrow' );
            } else {
                $( '.copyright' ).html( to );
            }
        } );
    });
} )( jQuery );


================================================
FILE: js/main.js
================================================
/* jshint ignore: start */
/*! Casper 19-03-2019 */

!function(w,t){"use strict";var e=function(){t(".post-content").fitVids(),t(w).load(function(){!function(){var t,e,i,a,n,o,r,s,d,c,l,u,m,h,f,g=w.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,p=document.getElementsByTagName("body")[0].getElementsByTagName("img"),v=w.devicePixelRatio&&1.2<=w.devicePixelRatio?1:0;if(0!==p.length)for(r=p[0].hasAttribute?function(t,e){return t.hasAttribute(e)}:function(t,e){return null!==t.getAttribute(e)},n=0;n<p.length;n++)if(c=p[n],s=v&&r(c,"data-src2x")?"data-src2x":"data-src",l=v&&r(c,"data-src-base2x")?"data-src-base2x":"data-src-base",c.onload=function(){this.style.opacity="1"},r(c,s))for(t=r(c,l)?c.getAttribute(l):"",o=c.getAttribute(s).split(","),e=0;e<o.length;e++)if(d=(a=o[e].replace(":","||").split("||"))[0],i=a[1],-1!==d.indexOf("<")?(u=d.split("<"),o[e-1]?(h=o[e-1].split(/:(.+)/)[0].split("<"),g<=u[1]&&g>h[1]):g<=u[1]):(u=d.split(">"),o[e+1]?(m=o[e+1].split(/:(.+)/)[0].split(">"),g>=u[1]&&g<m[1]):g>=u[1])){f=1==(-1!==i.indexOf("//")?1:0)?i:t+i,c.src!==f&&c.setAttribute("src",f);break}}()})};t(document).ready(function(){e()})}(window,jQuery),function(n){"use strict";var o,r,s,d;n.fn.fitVids=function(t){var i={customSelector:null};if(!document.getElementById("fit-vids-style")){var e=document.createElement("div"),a=document.getElementsByTagName("base")[0]||document.getElementsByTagName("script")[0];e.className="fit-vids-style",e.id="fit-vids-style",e.style.display="none",e.innerHTML="&shy;<style>.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}</style>",a.parentNode.insertBefore(e,a)}return t&&n.extend(i,t),this.each(function(){var t=['iframe[src*="player.vimeo.com"]','iframe[src*="youtube.com"]','iframe[src*="youtube-nocookie.com"]','iframe[src*="kickstarter.com"][src*="video.html"]',"object","embed"];i.customSelector&&t.push(i.customSelector);var e=n(this).find(t.join(","));(e=e.not("object object")).each(function(){var t=n(this);"embed"===this.tagName.toLowerCase()&&t.parent("object").length||t.parent(".fluid-width-video-wrapper").length||(o="object"===this.tagName.toLowerCase()||t.attr("height")&&!isNaN(parseInt(t.attr("height"),10))?parseInt(t.attr("height"),10):t.height(),r=isNaN(parseInt(t.attr("width"),10))?t.width():parseInt(t.attr("width"),10),s=o/r,t.attr("id")||(d="fitvid"+Math.floor(999999*Math.random()),t.attr("id",d)),t.wrap('<div class="fluid-width-video-wrapper"></div>').parent(".fluid-width-video-wrapper").css("padding-top",100*s+"%"),t.removeAttr("height").removeAttr("width"))})})}}(window.jQuery||window.Zepto),function(){var t,e,i;(t=document.getElementById("site-navigation"))&&void 0!==(e=t.getElementsByTagName("h1")[0])&&(void 0!==(i=t.getElementsByTagName("ul")[0])?(-1===i.className.indexOf("nav-menu")&&(i.className+=" nav-menu"),e.onclick=function(){-1!==t.className.indexOf("toggled")?t.className=t.className.replace(" toggled",""):t.className+=" toggled"}):e.style.display="none")}(),function(){var t=-1<navigator.userAgent.toLowerCase().indexOf("webkit"),e=-1<navigator.userAgent.toLowerCase().indexOf("opera"),i=-1<navigator.userAgent.toLowerCase().indexOf("msie");if((t||e||i)&&void 0!==document.getElementById){var a=window.addEventListener?"addEventListener":"attachEvent";window[a]("hashchange",function(){var t=document.getElementById(location.hash.substring(1));t&&(/^(?:a|select|input|button|textarea)$/i.test(t.tagName)||(t.tabIndex=-1),t.focus())},!1)}}();

================================================
FILE: languages/casper.pot
================================================
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Casper 1.1.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-10-15 23:17-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"

#: 404.php:15
msgid "Oops! That page can&rsquo;t be found."
msgstr ""

#: 404.php:20
msgid ""
"We tried searching for what you were looking for, but didn&apos;t find "
"anything. Please use the search form below."
msgstr ""

#: archive.php:27
#, php-format
msgid "Author: %s"
msgstr ""

#: archive.php:30
#, php-format
msgid "Day: %s"
msgstr ""

#: archive.php:33
#, php-format
msgid "Month: %s"
msgstr ""

#: archive.php:33
msgctxt "monthly archives date format"
msgid "F Y"
msgstr ""

#: archive.php:36
#, php-format
msgid "Year: %s"
msgstr ""

#: archive.php:36
msgctxt "yearly archives date format"
msgid "Y"
msgstr ""

#: archive.php:39
msgid "Asides"
msgstr ""

#: archive.php:42
msgid "Galleries"
msgstr ""

#: archive.php:45
msgid "Images"
msgstr ""

#: archive.php:48
msgid "Videos"
msgstr ""

#: archive.php:51
msgid "Quotes"
msgstr ""

#: archive.php:54
msgid "Links"
msgstr ""

#: archive.php:57
msgid "Statuses"
msgstr ""

#: archive.php:60
msgid "Audios"
msgstr ""

#: archive.php:63
msgid "Chats"
msgstr ""

#: archive.php:66
msgid "Archives"
msgstr ""

#: comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] ""
msgstr[1] ""

#: comments.php:35 comments.php:52
msgid "Comment navigation"
msgstr ""

#: comments.php:36 comments.php:53
msgid "&larr; Older Comments"
msgstr ""

#: comments.php:37 comments.php:54
msgid "Newer Comments &rarr;"
msgstr ""

#: comments.php:64
msgid "Comments are closed."
msgstr ""

#. //codex.wordpress.org/Template_Hierarchy
#. *
#. * @package Casper
#.
#: content-none.php:13
msgid "Nothing Found"
msgstr ""

#: content-none.php:19
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""

#: content-none.php:23
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""

#: content-none.php:28
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr ""

#: content-page.php:10 content-page.php:13 content-single.php:8
#: content-single.php:11 content.php:10
msgid ", "
msgstr ""

#: content-page.php:18 content-single.php:16
#, php-format
msgid ""
"This entry was tagged %2$s. Bookmark the <a href=\"%3$s\" rel=\"bookmark"
"\">permalink</a>."
msgstr ""

#: content-page.php:20 content-single.php:18
#, php-format
msgid "Bookmark the <a href=\"%3$s\" rel=\"bookmark\">permalink</a>."
msgstr ""

#: content-page.php:26 content-single.php:24
#, php-format
msgid ""
"This entry was posted in %1$s and tagged %2$s. Bookmark the <a href=\"%3$s\" "
"rel=\"bookmark\">permalink</a>."
msgstr ""

#: content-page.php:28 content-single.php:26
#, php-format
msgid ""
"This entry was posted in %1$s. Bookmark the <a href=\"%3$s\" rel=\"bookmark"
"\">permalink</a>."
msgstr ""

#: content-page.php:42 content-single.php:40
msgid " | "
msgstr ""

#: content-page.php:45 content-single.php:43
msgid " in "
msgstr ""

#: content-page.php:47 content-single.php:45 content.php:22
msgid "Edit&rarr;"
msgstr ""

#: content-page.php:67
msgid "Edit"
msgstr ""

#: content-single.php:68
msgid "&hellip;&nbsp<span class=\"meta-nav\">&rarr;</span>"
msgstr ""

#: content-single.php:71 content.php:56
msgid "Pages:"
msgstr ""

#: content.php:20
msgid " on "
msgstr ""

#: content.php:46 functions.php:69
msgid "&hellip;&nbsp;<span class=\"meta-nav\">&rarr;</span>"
msgstr ""

#: footer.php:11
msgid "Subscribe!"
msgstr ""

#: footer.php:15
#, php-format
msgid "<a href=\"%1$s\" rel=\"home\">Casper WP</a> by Lacy Morrow"
msgstr ""

#: functions.php:44
msgid "Primary Menu"
msgstr ""

#: functions.php:86
msgid "Footer Bar"
msgstr ""

#: header.php:32
msgid "Menu"
msgstr ""

#: header.php:35
msgid "Skip to content"
msgstr ""

#: header.php:50
msgid "Youtube"
msgstr ""

#: header.php:55
msgid "Tumblr"
msgstr ""

#: header.php:60
msgid "Instagram"
msgstr ""

#: header.php:65
msgid "Google+"
msgstr ""

#: header.php:70
msgid "Facebook"
msgstr ""

#: header.php:75
msgid "Twitter"
msgstr ""

#: header.php:80
msgid "Home"
msgstr ""

#: header.php:85
msgid "Email"
msgstr ""

#: header.php:90
msgid "LinkedIn"
msgstr ""

#: header.php:95
msgid "GitHub"
msgstr ""

#: header.php:100
msgid "Bitbucket"
msgstr ""

#: header.php:105
msgid "Stack Overflow"
msgstr ""

#: header.php:110
msgid "Dribbble"
msgstr ""

#: header.php:115
msgid "Behance"
msgstr ""

#: header.php:120
msgid "RSS"
msgstr ""

#: header.php:125
msgid "CodePen"
msgstr ""

#: header.php:130
msgid "Deviant Art"
msgstr ""

#: header.php:135
msgid "Flickr"
msgstr ""

#: header.php:140
msgid "LastFM"
msgstr ""

#: header.php:145
msgid "SoundCloud"
msgstr ""

#: header.php:150
msgid "Spotify"
msgstr ""

#: search.php:16
#, php-format
msgid "Search Results for: %s"
msgstr ""

#: inc/customizer.php:35 inc/customizer.php:43
msgid "Logo"
msgstr ""

#: inc/customizer.php:65
msgid "Header Color"
msgstr ""

#: inc/customizer.php:81
msgid "Page Header Text Color"
msgstr ""

#: inc/customizer.php:97
msgid "Link Color"
msgstr ""

#: inc/customizer.php:113
msgid "Hover Color"
msgstr ""

#: inc/customizer.php:129
msgid "Home Menu Color"
msgstr ""

#: inc/customizer.php:145
msgid "Menu Color"
msgstr ""

#: inc/extras.php:63
#, php-format
msgid "Page %s"
msgstr ""

#: inc/template-tags.php:27
msgid "Older Posts <span class=\"meta-nav\">&rarr;</span>"
msgstr ""

#: inc/template-tags.php:29
msgid "Page"
msgstr ""

#: inc/template-tags.php:29
msgid "of"
msgstr ""

#: inc/template-tags.php:31
msgid "<span class=\"meta-nav\">&larr;</span> Newer Posts"
msgstr ""

#: inc/template-tags.php:60
msgctxt "Previous post link"
msgid "%title <span class=\"meta-nav\">&rarr;</span>"
msgstr ""

#: inc/template-tags.php:62
msgctxt "Next post link"
msgid "<span class=\"meta-nav\">&larr;</span> %title"
msgstr ""

#: inc/template-tags.php:87
#, php-format
msgid ""
"<span class=\"posted-on\">%1$s</span><span class=\"byline\"> by %2$s</span>"
msgstr ""


================================================
FILE: languages/readme.txt
================================================
Place your theme language files in this directory.

Please visit the following links to learn more about translating WordPress themes:

http://codex.wordpress.org/Translating_WordPress
http://codex.wordpress.org/Function_Reference/load_theme_textdomain


================================================
FILE: license.txt
================================================
                    GNU GENERAL PUBLIC LICENSE
                       Version 2, June 1991

 Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

                            Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users.  This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it.  (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.)  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights.

  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

  Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software.  If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

  Finally, any free program is threatened constantly by software
patents.  We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary.  To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

  The precise terms and conditions for copying, distribution and
modification follow.

                    GNU GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License.  The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language.  (Hereinafter, translation is included without limitation in
the term "modification".)  Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

  1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

  2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) You must cause the modified files to carry prominent notices
    stating that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

    c) If the modified program normally reads commands interactively
    when run, you must cause it, when started running for such
    interactive use in the most ordinary way, to print or display an
    announcement including an appropriate copyright notice and a
    notice that there is no warranty (or else, saying that you provide
    a warranty) and that users may redistribute the program under
    these conditions, and telling the user how to view a copy of this
    License.  (Exception: if the Program itself is interactive but
    does not normally print such an announcement, your work based on
    the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of Sections
    1 and 2 above on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer
    to distribute corresponding source code.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object
Download .txt
gitextract_99bygv5h/

├── .bithoundrc
├── .gitignore
├── .jscsrc
├── .travis.yml
├── 404.php
├── Gruntfile.js
├── archive.php
├── changelog.txt
├── comments.php
├── content-none.php
├── content-page.php
├── content-single.php
├── content.php
├── css/
│   ├── admin.css
│   ├── custom-editor-style.css
│   ├── rtl.css
│   └── style.css
├── footer.php
├── functions.php
├── header.php
├── inc/
│   ├── custom-header.php
│   ├── customizer.php
│   ├── extras.php
│   ├── jetpack.php
│   └── template-tags.php
├── index.php
├── js/
│   ├── customizer.js
│   └── main.js
├── languages/
│   ├── casper.pot
│   └── readme.txt
├── license.txt
├── package.json
├── page.php
├── readme.md
├── readme.txt
├── rtl.css
├── search.php
├── sidebar.php
├── single.php
├── src/
│   ├── js/
│   │   ├── casper.js
│   │   ├── jquery.fitvids.js
│   │   ├── navigation.js
│   │   └── skip-link-focus-fix.js
│   └── less/
│       ├── admin.less
│       ├── fa.css
│       ├── normalize.css
│       ├── rtl.less
│       └── style.less
└── style.css
Download .txt
SYMBOL INDEX (29 symbols across 6 files)

FILE: functions.php
  function casper_setup (line 16) | function casper_setup() {
  function casper_widgets_init (line 93) | function casper_widgets_init() {
  function casper_scripts (line 110) | function casper_scripts() {
  function casper_add_editor_styles (line 151) | function casper_add_editor_styles() {
  function casper_admin_css (line 163) | function casper_admin_css(){
  function casper_customizer_head (line 172) | function casper_customizer_head() {

FILE: inc/custom-header.php
  function casper_custom_header_setup (line 18) | function casper_custom_header_setup() {
  function casper_header_style (line 39) | function casper_header_style() {
  function casper_admin_header_style (line 80) | function casper_admin_header_style() {
  function casper_admin_header_image (line 108) | function casper_admin_header_image() {

FILE: inc/customizer.php
  function casper_customize_register (line 13) | function casper_customize_register( $wp_customize ) {
  function casper_customize_preview_js (line 424) | function casper_customize_preview_js() {
  function casper_sanitize_color (line 432) | function casper_sanitize_color($content){
  function casper_sanitize_checkbox (line 443) | function casper_sanitize_checkbox($content){
  function casper_sanitize_uri (line 453) | function casper_sanitize_uri($uri){
  function casper_sanitize_text (line 463) | function casper_sanitize_text($str){
  function casper_sanitize_email (line 473) | function casper_sanitize_email($uri){
  function casper_sanitize_meta (line 486) | function casper_sanitize_meta($content){
  function casper_sanitize_footer (line 497) | function casper_sanitize_footer($content){

FILE: inc/extras.php
  function casper_page_menu_args (line 16) | function casper_page_menu_args( $args ) {
  function casper_body_classes (line 28) | function casper_body_classes( $classes ) {
  function casper_wp_title (line 45) | function casper_wp_title( $title, $sep ) {
  function casper_setup_author (line 82) | function casper_setup_author() {

FILE: inc/jetpack.php
  function casper_jetpack_setup (line 13) | function casper_jetpack_setup() {

FILE: inc/template-tags.php
  function casper_paging_nav (line 16) | function casper_paging_nav() {
  function casper_post_nav (line 46) | function casper_post_nav() {
  function casper_posted_on (line 74) | function casper_posted_on() {
  function casper_categorized_blog (line 103) | function casper_categorized_blog() {
  function casper_category_transient_flusher (line 128) | function casper_category_transient_flusher() {
Condensed preview — 49 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (433K chars).
[
  {
    "path": ".bithoundrc",
    "chars": 54,
    "preview": "{\n\t\"ignore\": [\n\t\t\"**/*grunt*\",\n\t    \"**/src/**\"\n\t  ]\n}"
  },
  {
    "path": ".gitignore",
    "chars": 36,
    "preview": ".git\n.fuse*\nnode_modules/*\n.DS_Store"
  },
  {
    "path": ".jscsrc",
    "chars": 122,
    "preview": "{\n    \"preset\": \"wordpress\",\n    \"fileExtensions\": [ \".js\" ],\n    \"excludeFiles\": [\n    \t\"js/main.js\",\n    \t\"src/\"\n    ]"
  },
  {
    "path": ".travis.yml",
    "chars": 4273,
    "preview": "# Travis CI configuration file.\n# @link https://travis-ci.org/\n\n# Based on the methods seen in the Twenty Sixteen WordPr"
  },
  {
    "path": "404.php",
    "chars": 937,
    "preview": "<?php\n/**\n * The template for displaying 404 pages (Not Found).\n *\n * @package Casper\n */\n\nget_header(); \n?>\n\t<div id=\"p"
  },
  {
    "path": "Gruntfile.js",
    "chars": 5692,
    "preview": "    module.exports = function( grunt ) {\n    require( 'load-grunt-tasks' )( grunt, { scope: 'devDependencies' });\n    re"
  },
  {
    "path": "archive.php",
    "chars": 2956,
    "preview": "<?php\n/**\n * The template for displaying Archive pages.\n *\n * Learn more: http://codex.wordpress.org/Template_Hierarchy\n"
  },
  {
    "path": "changelog.txt",
    "chars": 1607,
    "preview": "= 1.1.1 =\n\n* Add auto-excerpt option - https://github.com/lacymorrow/casper/issues/17\n\n* Increase header size to <h1> - "
  },
  {
    "path": "comments.php",
    "chars": 2557,
    "preview": "<?php\n/**\n * The template for displaying Comments.\n *\n * The area of the page that contains both current comments\n * and"
  },
  {
    "path": "content-none.php",
    "chars": 1073,
    "preview": "<?php\n/**\n * The template part for displaying a message that posts cannot be found.\n *\n * Learn more: http://codex.wordp"
  },
  {
    "path": "content-page.php",
    "chars": 3295,
    "preview": "<?php\n/**\n * The template used for displaying page content in page.php\n *\n * @package Casper\n */\n?>\n<?php\n    /* transla"
  },
  {
    "path": "content-single.php",
    "chars": 3600,
    "preview": "<?php\n/**\n * @package Casper\n */\n?>\n<?php\n\t/* translators: used between list items, there is a space after the comma */\n"
  },
  {
    "path": "content.php",
    "chars": 2152,
    "preview": "<?php\n/**\n * @package Casper\n */\n?>\n\n<article id=\"post-<?php the_ID(); ?>\" <?php post_class(); ?>>\n\t\t<?php\n\t\t\t/* transla"
  },
  {
    "path": "css/admin.css",
    "chars": 1104,
    "preview": "/* Big cover image on the home page */\n#headimg {\n  position: relative;\n  width: 100%;\n  height: 60%;\n  min-height: 250p"
  },
  {
    "path": "css/custom-editor-style.css",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "css/rtl.css",
    "chars": 8392,
    "preview": "/* ==========================================================================\n   Table of Contents\n   =================="
  },
  {
    "path": "css/style.css",
    "chars": 86382,
    "preview": "/*\n  Theme Name:       Casper\n  Theme URI:        https://github.com/lacymorrow/casper\n  Author:           Lacy Morrow\n "
  },
  {
    "path": "footer.php",
    "chars": 860,
    "preview": "<?php\n/**\n * The template for displaying the footer.\n *\n * Contains the closing of the #content div and all content afte"
  },
  {
    "path": "functions.php",
    "chars": 8160,
    "preview": "<?php\n/**\n * Casper functions and definitions\n *\n * @package Casper\n */\n\nif ( ! function_exists( 'casper_setup' ) ) :\n/*"
  },
  {
    "path": "header.php",
    "chars": 10209,
    "preview": "<?php\n/**\n * The Header for our theme.\n *\n * Displays all of the <head> section and everything up till <div id=\"content\""
  },
  {
    "path": "inc/custom-header.php",
    "chars": 3189,
    "preview": "<?php\n/**\n * Sample implementation of the Custom Header feature\n * http://codex.wordpress.org/Custom_Headers\n *\n * You c"
  },
  {
    "path": "inc/customizer.php",
    "chars": 18209,
    "preview": "<?php\n/**\n * Casper Theme Customizer\n *\n * @package Casper\n */\n\n/**\n * Add postMessage support for site title and descri"
  },
  {
    "path": "inc/extras.php",
    "chars": 2338,
    "preview": "<?php\n/**\n * Custom functions that act independently of the theme templates\n *\n * Eventually, some of the functionality "
  },
  {
    "path": "inc/jetpack.php",
    "chars": 392,
    "preview": "<?php\n/**\n * Jetpack Compatibility File\n * See: http://jetpack.me/\n *\n * @package Casper\n */\n\n/**\n * Add theme support f"
  },
  {
    "path": "inc/template-tags.php",
    "chars": 4401,
    "preview": "<?php\n/**\n * Custom template tags for this theme.\n *\n * Eventually, some of the functionality here could be replaced by "
  },
  {
    "path": "index.php",
    "chars": 1071,
    "preview": "<?php\n/**\n * The main template file.\n *\n * This is the most generic template file in a WordPress theme\n * and one of the"
  },
  {
    "path": "js/customizer.js",
    "chars": 4621,
    "preview": "/**\n * Theme Customizer enhancements for a better user experience.\n *\n * Contains handlers to make Theme Customizer prev"
  },
  {
    "path": "js/main.js",
    "chars": 3639,
    "preview": "/* jshint ignore: start */\n/*! Casper 19-03-2019 */\n\n!function(w,t){\"use strict\";var e=function(){t(\".post-content\").fit"
  },
  {
    "path": "languages/casper.pot",
    "chars": 6629,
    "preview": "# SOME DESCRIPTIVE TITLE.\n# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER\n# This file is distributed under the same "
  },
  {
    "path": "languages/readme.txt",
    "chars": 253,
    "preview": "Place your theme language files in this directory.\n\nPlease visit the following links to learn more about translating Wor"
  },
  {
    "path": "license.txt",
    "chars": 18091,
    "preview": "                    GNU GENERAL PUBLIC LICENSE\n                       Version 2, June 1991\n\n Copyright (C) 1989, 1991 Fr"
  },
  {
    "path": "package.json",
    "chars": 1729,
    "preview": "{\n  \"name\": \"Casper\",\n  \"version\": \"1.1.5\",\n  \"author\": \"Lacy Morrow <me@lacymorrow.com>\",\n  \"contributors\": [\n    {\n   "
  },
  {
    "path": "page.php",
    "chars": 710,
    "preview": "<?php\n/**\n * The template for displaying all pages.\n *\n * This is the template that displays all pages by default.\n * Pl"
  },
  {
    "path": "readme.md",
    "chars": 4140,
    "preview": "\n[![Casper](https://raw.githubusercontent.com/lacymorrow/casper/master/img/casper.png \"Casper\")](http://lacymorrow.com/p"
  },
  {
    "path": "readme.txt",
    "chars": 2000,
    "preview": "** Casper **\nA Ghost-like WordPress theme\n\nCasper (for WordPress) is a simple yet beautiful theme for bloggers.\n\nInspire"
  },
  {
    "path": "rtl.css",
    "chars": 2718,
    "preview": "@font-face{font-family:GESSTwoMedium;src:url(fonts/ge-ss-med.eot);src:url(fonts/ge-ss-med.eot) format('embedded-opentype"
  },
  {
    "path": "search.php",
    "chars": 828,
    "preview": "<?php\n/**\n * The template for displaying Search Results pages.\n *\n * @package Casper\n */\n\nget_header(); ?>\n\n\t<section id"
  },
  {
    "path": "sidebar.php",
    "chars": 333,
    "preview": "<?php\n/**\n * The Sidebar containing the main widget areas.\n *\n * @package Casper\n */\n?>\n\t<div id=\"secondary\" class=\"widg"
  },
  {
    "path": "single.php",
    "chars": 534,
    "preview": "<?php\n/**\n * The Template for displaying all single posts.\n *\n * @package Casper\n */\n\nget_header(); ?>\n\n\n\t\t<?php while ("
  },
  {
    "path": "src/js/casper.js",
    "chars": 2855,
    "preview": "/**\n * Main JS file for Casper behaviours\n */\n\n/*globals jQuery, document */\n(function( window, $ ) {\n    'use strict';\n"
  },
  {
    "path": "src/js/jquery.fitvids.js",
    "chars": 2843,
    "preview": "/*!\n* FitVids 1.0.3\n*\n* Copyright 2013, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com\n* Cre"
  },
  {
    "path": "src/js/navigation.js",
    "chars": 853,
    "preview": "/**\n * navigation.js\n *\n * Handles toggling the navigation menu for small screens.\n */\n( function() {\n\tvar container, bu"
  },
  {
    "path": "src/js/skip-link-focus-fix.js",
    "chars": 741,
    "preview": "( function() {\n\tvar is_webkit = navigator.userAgent.toLowerCase().indexOf( 'webkit' ) > -1,\n\t    is_opera  = navigator.u"
  },
  {
    "path": "src/less/admin.less",
    "chars": 1287,
    "preview": "\n/* Big cover image on the home page */\n#headimg {\n    position: relative;\n    width: 100%;\n    height: 60%;\n    min-hei"
  },
  {
    "path": "src/less/fa.css",
    "chars": 40697,
    "preview": "/*!\n *  Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome\n *  License - http://fontawesome.io/lice"
  },
  {
    "path": "src/less/normalize.css",
    "chars": 7545,
    "preview": "/*! normalize.css v2.1.3 | MIT License | git.io/normalize */\n\n/* ======================================================="
  },
  {
    "path": "src/less/rtl.less",
    "chars": 8692,
    "preview": "/* ==========================================================================\n   Table of Contents\n   =================="
  },
  {
    "path": "src/less/style.less",
    "chars": 35906,
    "preview": "/*\n  Theme Name:       Casper\n  Theme URI:        https://github.com/lacymorrow/casper\n  Author:           Lacy Morrow\n "
  },
  {
    "path": "style.css",
    "chars": 85173,
    "preview": "/*\n  Theme Name:       Casper\n  Theme URI:        https://github.com/lacymorrow/casper\n  Author:           Lacy Morrow\n "
  }
]

About this extraction

This page contains the full source code of the lacymorrow/casper GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 49 files (396.4 KB), approximately 113.1k tokens, and a symbol index with 29 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!