/* Theme Name: Gabriele Romanato
 * Author: Gabriele Romanato
 * Version: 1.0
*/

@font-face {
	font-family: 'themify';
	src:url('/prx/000/https/gabrieleromanato.name/content/themes/gabrieleromanato/fonts/themify/themify.eot?-fvbane');
	src:url('/prx/000/https/gabrieleromanato.name/content/themes/gabrieleromanato/fonts/themify/themify.eot?#iefix-fvbane') format('embedded-opentype'),
	url('/prx/000/https/gabrieleromanato.name/content/themes/gabrieleromanato/fonts/themify/themify.woff?-fvbane') format('woff'),
	url('/prx/000/https/gabrieleromanato.name/content/themes/gabrieleromanato/fonts/themify/themify.ttf?-fvbane') format('truetype'),
	url('/prx/000/https/gabrieleromanato.name/content/themes/gabrieleromanato/fonts/themify/themify.svg?-fvbane#themify') format('svg');
	font-weight: normal;
	font-style: normal;
}

[class^="ti-"], [class*=" ti-"] {
	font-family: 'themify', sans-serif;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.ti-wand:before {
	content: "\e600";
}
.ti-volume:before {
	content: "\e601";
}
.ti-user:before {
	content: "\e602";
}
.ti-unlock:before {
	content: "\e603";
}
.ti-unlink:before {
	content: "\e604";
}
.ti-trash:before {
	content: "\e605";
}
.ti-thought:before {
	content: "\e606";
}
.ti-target:before {
	content: "\e607";
}
.ti-tag:before {
	content: "\e608";
}
.ti-tablet:before {
	content: "\e609";
}
.ti-star:before {
	content: "\e60a";
}
.ti-spray:before {
	content: "\e60b";
}
.ti-signal:before {
	content: "\e60c";
}
.ti-shopping-cart:before {
	content: "\e60d";
}
.ti-shopping-cart-full:before {
	content: "\e60e";
}
.ti-settings:before {
	content: "\e60f";
}
.ti-search:before {
	content: "\e610";
}
.ti-zoom-in:before {
	content: "\e611";
}
.ti-zoom-out:before {
	content: "\e612";
}
.ti-cut:before {
	content: "\e613";
}
.ti-ruler:before {
	content: "\e614";
}
.ti-ruler-pencil:before {
	content: "\e615";
}
.ti-ruler-alt:before {
	content: "\e616";
}
.ti-bookmark:before {
	content: "\e617";
}
.ti-bookmark-alt:before {
	content: "\e618";
}
.ti-reload:before {
	content: "\e619";
}
.ti-plus:before {
	content: "\e61a";
}
.ti-pin:before {
	content: "\e61b";
}
.ti-pencil:before {
	content: "\e61c";
}
.ti-pencil-alt:before {
	content: "\e61d";
}
.ti-paint-roller:before {
	content: "\e61e";
}
.ti-paint-bucket:before {
	content: "\e61f";
}
.ti-na:before {
	content: "\e620";
}
.ti-mobile:before {
	content: "\e621";
}
.ti-minus:before {
	content: "\e622";
}
.ti-medall:before {
	content: "\e623";
}
.ti-medall-alt:before {
	content: "\e624";
}
.ti-marker:before {
	content: "\e625";
}
.ti-marker-alt:before {
	content: "\e626";
}
.ti-arrow-up:before {
	content: "\e627";
}
.ti-arrow-right:before {
	content: "\e628";
}
.ti-arrow-left:before {
	content: "\e629";
}
.ti-arrow-down:before {
	content: "\e62a";
}
.ti-lock:before {
	content: "\e62b";
}
.ti-location-arrow:before {
	content: "\e62c";
}
.ti-link:before {
	content: "\e62d";
}
.ti-layout:before {
	content: "\e62e";
}
.ti-layers:before {
	content: "\e62f";
}
.ti-layers-alt:before {
	content: "\e630";
}
.ti-key:before {
	content: "\e631";
}
.ti-import:before {
	content: "\e632";
}
.ti-image:before {
	content: "\e633";
}
.ti-heart:before {
	content: "\e634";
}
.ti-heart-broken:before {
	content: "\e635";
}
.ti-hand-stop:before {
	content: "\e636";
}
.ti-hand-open:before {
	content: "\e637";
}
.ti-hand-drag:before {
	content: "\e638";
}
.ti-folder:before {
	content: "\e639";
}
.ti-flag:before {
	content: "\e63a";
}
.ti-flag-alt:before {
	content: "\e63b";
}
.ti-flag-alt-2:before {
	content: "\e63c";
}
.ti-eye:before {
	content: "\e63d";
}
.ti-export:before {
	content: "\e63e";
}
.ti-exchange-vertical:before {
	content: "\e63f";
}
.ti-desktop:before {
	content: "\e640";
}
.ti-cup:before {
	content: "\e641";
}
.ti-crown:before {
	content: "\e642";
}
.ti-comments:before {
	content: "\e643";
}
.ti-comment:before {
	content: "\e644";
}
.ti-comment-alt:before {
	content: "\e645";
}
.ti-close:before {
	content: "\e646";
}
.ti-clip:before {
	content: "\e647";
}
.ti-angle-up:before {
	content: "\e648";
}
.ti-angle-right:before {
	content: "\e649";
}
.ti-angle-left:before {
	content: "\e64a";
}
.ti-angle-down:before {
	content: "\e64b";
}
.ti-check:before {
	content: "\e64c";
}
.ti-check-box:before {
	content: "\e64d";
}
.ti-camera:before {
	content: "\e64e";
}
.ti-announcement:before {
	content: "\e64f";
}
.ti-brush:before {
	content: "\e650";
}
.ti-briefcase:before {
	content: "\e651";
}
.ti-bolt:before {
	content: "\e652";
}
.ti-bolt-alt:before {
	content: "\e653";
}
.ti-blackboard:before {
	content: "\e654";
}
.ti-bag:before {
	content: "\e655";
}
.ti-move:before {
	content: "\e656";
}
.ti-arrows-vertical:before {
	content: "\e657";
}
.ti-arrows-horizontal:before {
	content: "\e658";
}
.ti-fullscreen:before {
	content: "\e659";
}
.ti-arrow-top-right:before {
	content: "\e65a";
}
.ti-arrow-top-left:before {
	content: "\e65b";
}
.ti-arrow-circle-up:before {
	content: "\e65c";
}
.ti-arrow-circle-right:before {
	content: "\e65d";
}
.ti-arrow-circle-left:before {
	content: "\e65e";
}
.ti-arrow-circle-down:before {
	content: "\e65f";
}
.ti-angle-double-up:before {
	content: "\e660";
}
.ti-angle-double-right:before {
	content: "\e661";
}
.ti-angle-double-left:before {
	content: "\e662";
}
.ti-angle-double-down:before {
	content: "\e663";
}
.ti-zip:before {
	content: "\e664";
}
.ti-world:before {
	content: "\e665";
}
.ti-wheelchair:before {
	content: "\e666";
}
.ti-view-list:before {
	content: "\e667";
}
.ti-view-list-alt:before {
	content: "\e668";
}
.ti-view-grid:before {
	content: "\e669";
}
.ti-uppercase:before {
	content: "\e66a";
}
.ti-upload:before {
	content: "\e66b";
}
.ti-underline:before {
	content: "\e66c";
}
.ti-truck:before {
	content: "\e66d";
}
.ti-timer:before {
	content: "\e66e";
}
.ti-ticket:before {
	content: "\e66f";
}
.ti-thumb-up:before {
	content: "\e670";
}
.ti-thumb-down:before {
	content: "\e671";
}
.ti-text:before {
	content: "\e672";
}
.ti-stats-up:before {
	content: "\e673";
}
.ti-stats-down:before {
	content: "\e674";
}
.ti-split-v:before {
	content: "\e675";
}
.ti-split-h:before {
	content: "\e676";
}
.ti-smallcap:before {
	content: "\e677";
}
.ti-shine:before {
	content: "\e678";
}
.ti-shift-right:before {
	content: "\e679";
}
.ti-shift-left:before {
	content: "\e67a";
}
.ti-shield:before {
	content: "\e67b";
}
.ti-notepad:before {
	content: "\e67c";
}
.ti-server:before {
	content: "\e67d";
}
.ti-quote-right:before {
	content: "\e67e";
}
.ti-quote-left:before {
	content: "\e67f";
}
.ti-pulse:before {
	content: "\e680";
}
.ti-printer:before {
	content: "\e681";
}
.ti-power-off:before {
	content: "\e682";
}
.ti-plug:before {
	content: "\e683";
}
.ti-pie-chart:before {
	content: "\e684";
}
.ti-paragraph:before {
	content: "\e685";
}
.ti-panel:before {
	content: "\e686";
}
.ti-package:before {
	content: "\e687";
}
.ti-music:before {
	content: "\e688";
}
.ti-music-alt:before {
	content: "\e689";
}
.ti-mouse:before {
	content: "\e68a";
}
.ti-mouse-alt:before {
	content: "\e68b";
}
.ti-money:before {
	content: "\e68c";
}
.ti-microphone:before {
	content: "\e68d";
}
.ti-menu:before {
	content: "\e68e";
}
.ti-menu-alt:before {
	content: "\e68f";
}
.ti-map:before {
	content: "\e690";
}
.ti-map-alt:before {
	content: "\e691";
}
.ti-loop:before {
	content: "\e692";
}
.ti-location-pin:before {
	content: "\e693";
}
.ti-list:before {
	content: "\e694";
}
.ti-light-bulb:before {
	content: "\e695";
}
.ti-Italic:before {
	content: "\e696";
}
.ti-info:before {
	content: "\e697";
}
.ti-infinite:before {
	content: "\e698";
}
.ti-id-badge:before {
	content: "\e699";
}
.ti-hummer:before {
	content: "\e69a";
}
.ti-home:before {
	content: "\e69b";
}
.ti-help:before {
	content: "\e69c";
}
.ti-headphone:before {
	content: "\e69d";
}
.ti-harddrives:before {
	content: "\e69e";
}
.ti-harddrive:before {
	content: "\e69f";
}
.ti-gift:before {
	content: "\e6a0";
}
.ti-game:before {
	content: "\e6a1";
}
.ti-filter:before {
	content: "\e6a2";
}
.ti-files:before {
	content: "\e6a3";
}
.ti-file:before {
	content: "\e6a4";
}
.ti-eraser:before {
	content: "\e6a5";
}
.ti-envelope:before {
	content: "\e6a6";
}
.ti-download:before {
	content: "\e6a7";
}
.ti-direction:before {
	content: "\e6a8";
}
.ti-direction-alt:before {
	content: "\e6a9";
}
.ti-dashboard:before {
	content: "\e6aa";
}
.ti-control-stop:before {
	content: "\e6ab";
}
.ti-control-shuffle:before {
	content: "\e6ac";
}
.ti-control-play:before {
	content: "\e6ad";
}
.ti-control-pause:before {
	content: "\e6ae";
}
.ti-control-forward:before {
	content: "\e6af";
}
.ti-control-backward:before {
	content: "\e6b0";
}
.ti-cloud:before {
	content: "\e6b1";
}
.ti-cloud-up:before {
	content: "\e6b2";
}
.ti-cloud-down:before {
	content: "\e6b3";
}
.ti-clipboard:before {
	content: "\e6b4";
}
.ti-car:before {
	content: "\e6b5";
}
.ti-calendar:before {
	content: "\e6b6";
}
.ti-book:before {
	content: "\e6b7";
}
.ti-bell:before {
	content: "\e6b8";
}
.ti-basketball:before {
	content: "\e6b9";
}
.ti-bar-chart:before {
	content: "\e6ba";
}
.ti-bar-chart-alt:before {
	content: "\e6bb";
}
.ti-back-right:before {
	content: "\e6bc";
}
.ti-back-left:before {
	content: "\e6bd";
}
.ti-arrows-corner:before {
	content: "\e6be";
}
.ti-archive:before {
	content: "\e6bf";
}
.ti-anchor:before {
	content: "\e6c0";
}
.ti-align-right:before {
	content: "\e6c1";
}
.ti-align-left:before {
	content: "\e6c2";
}
.ti-align-justify:before {
	content: "\e6c3";
}
.ti-align-center:before {
	content: "\e6c4";
}
.ti-alert:before {
	content: "\e6c5";
}
.ti-alarm-clock:before {
	content: "\e6c6";
}
.ti-agenda:before {
	content: "\e6c7";
}
.ti-write:before {
	content: "\e6c8";
}
.ti-window:before {
	content: "\e6c9";
}
.ti-widgetized:before {
	content: "\e6ca";
}
.ti-widget:before {
	content: "\e6cb";
}
.ti-widget-alt:before {
	content: "\e6cc";
}
.ti-wallet:before {
	content: "\e6cd";
}
.ti-video-clapper:before {
	content: "\e6ce";
}
.ti-video-camera:before {
	content: "\e6cf";
}
.ti-vector:before {
	content: "\e6d0";
}
.ti-themify-logo:before {
	content: "\e6d1";
}
.ti-themify-favicon:before {
	content: "\e6d2";
}
.ti-themify-favicon-alt:before {
	content: "\e6d3";
}
.ti-support:before {
	content: "\e6d4";
}
.ti-stamp:before {
	content: "\e6d5";
}
.ti-split-v-alt:before {
	content: "\e6d6";
}
.ti-slice:before {
	content: "\e6d7";
}
.ti-shortcode:before {
	content: "\e6d8";
}
.ti-shift-right-alt:before {
	content: "\e6d9";
}
.ti-shift-left-alt:before {
	content: "\e6da";
}
.ti-ruler-alt-2:before {
	content: "\e6db";
}
.ti-receipt:before {
	content: "\e6dc";
}
.ti-pin2:before {
	content: "\e6dd";
}
.ti-pin-alt:before {
	content: "\e6de";
}
.ti-pencil-alt2:before {
	content: "\e6df";
}
.ti-palette:before {
	content: "\e6e0";
}
.ti-more:before {
	content: "\e6e1";
}
.ti-more-alt:before {
	content: "\e6e2";
}
.ti-microphone-alt:before {
	content: "\e6e3";
}
.ti-magnet:before {
	content: "\e6e4";
}
.ti-line-double:before {
	content: "\e6e5";
}
.ti-line-dotted:before {
	content: "\e6e6";
}
.ti-line-dashed:before {
	content: "\e6e7";
}
.ti-layout-width-full:before {
	content: "\e6e8";
}
.ti-layout-width-default:before {
	content: "\e6e9";
}
.ti-layout-width-default-alt:before {
	content: "\e6ea";
}
.ti-layout-tab:before {
	content: "\e6eb";
}
.ti-layout-tab-window:before {
	content: "\e6ec";
}
.ti-layout-tab-v:before {
	content: "\e6ed";
}
.ti-layout-tab-min:before {
	content: "\e6ee";
}
.ti-layout-slider:before {
	content: "\e6ef";
}
.ti-layout-slider-alt:before {
	content: "\e6f0";
}
.ti-layout-sidebar-right:before {
	content: "\e6f1";
}
.ti-layout-sidebar-none:before {
	content: "\e6f2";
}
.ti-layout-sidebar-left:before {
	content: "\e6f3";
}
.ti-layout-placeholder:before {
	content: "\e6f4";
}
.ti-layout-menu:before {
	content: "\e6f5";
}
.ti-layout-menu-v:before {
	content: "\e6f6";
}
.ti-layout-menu-separated:before {
	content: "\e6f7";
}
.ti-layout-menu-full:before {
	content: "\e6f8";
}
.ti-layout-media-right-alt:before {
	content: "\e6f9";
}
.ti-layout-media-right:before {
	content: "\e6fa";
}
.ti-layout-media-overlay:before {
	content: "\e6fb";
}
.ti-layout-media-overlay-alt:before {
	content: "\e6fc";
}
.ti-layout-media-overlay-alt-2:before {
	content: "\e6fd";
}
.ti-layout-media-left-alt:before {
	content: "\e6fe";
}
.ti-layout-media-left:before {
	content: "\e6ff";
}
.ti-layout-media-center-alt:before {
	content: "\e700";
}
.ti-layout-media-center:before {
	content: "\e701";
}
.ti-layout-list-thumb:before {
	content: "\e702";
}
.ti-layout-list-thumb-alt:before {
	content: "\e703";
}
.ti-layout-list-post:before {
	content: "\e704";
}
.ti-layout-list-large-image:before {
	content: "\e705";
}
.ti-layout-line-solid:before {
	content: "\e706";
}
.ti-layout-grid4:before {
	content: "\e707";
}
.ti-layout-grid3:before {
	content: "\e708";
}
.ti-layout-grid2:before {
	content: "\e709";
}
.ti-layout-grid2-thumb:before {
	content: "\e70a";
}
.ti-layout-cta-right:before {
	content: "\e70b";
}
.ti-layout-cta-left:before {
	content: "\e70c";
}
.ti-layout-cta-center:before {
	content: "\e70d";
}
.ti-layout-cta-btn-right:before {
	content: "\e70e";
}
.ti-layout-cta-btn-left:before {
	content: "\e70f";
}
.ti-layout-column4:before {
	content: "\e710";
}
.ti-layout-column3:before {
	content: "\e711";
}
.ti-layout-column2:before {
	content: "\e712";
}
.ti-layout-accordion-separated:before {
	content: "\e713";
}
.ti-layout-accordion-merged:before {
	content: "\e714";
}
.ti-layout-accordion-list:before {
	content: "\e715";
}
.ti-ink-pen:before {
	content: "\e716";
}
.ti-info-alt:before {
	content: "\e717";
}
.ti-help-alt:before {
	content: "\e718";
}
.ti-headphone-alt:before {
	content: "\e719";
}
.ti-hand-point-up:before {
	content: "\e71a";
}
.ti-hand-point-right:before {
	content: "\e71b";
}
.ti-hand-point-left:before {
	content: "\e71c";
}
.ti-hand-point-down:before {
	content: "\e71d";
}
.ti-gallery:before {
	content: "\e71e";
}
.ti-face-smile:before {
	content: "\e71f";
}
.ti-face-sad:before {
	content: "\e720";
}
.ti-credit-card:before {
	content: "\e721";
}
.ti-control-skip-forward:before {
	content: "\e722";
}
.ti-control-skip-backward:before {
	content: "\e723";
}
.ti-control-record:before {
	content: "\e724";
}
.ti-control-eject:before {
	content: "\e725";
}
.ti-comments-smiley:before {
	content: "\e726";
}
.ti-brush-alt:before {
	content: "\e727";
}
.ti-youtube:before {
	content: "\e728";
}
.ti-vimeo:before {
	content: "\e729";
}
.ti-twitter:before {
	content: "\e72a";
}
.ti-time:before {
	content: "\e72b";
}
.ti-tumblr:before {
	content: "\e72c";
}
.ti-skype:before {
	content: "\e72d";
}
.ti-share:before {
	content: "\e72e";
}
.ti-share-alt:before {
	content: "\e72f";
}
.ti-rocket:before {
	content: "\e730";
}
.ti-pinterest:before {
	content: "\e731";
}
.ti-new-window:before {
	content: "\e732";
}
.ti-microsoft:before {
	content: "\e733";
}
.ti-list-ol:before {
	content: "\e734";
}
.ti-linkedin:before {
	content: "\e735";
}
.ti-layout-sidebar-2:before {
	content: "\e736";
}
.ti-layout-grid4-alt:before {
	content: "\e737";
}
.ti-layout-grid3-alt:before {
	content: "\e738";
}
.ti-layout-grid2-alt:before {
	content: "\e739";
}
.ti-layout-column4-alt:before {
	content: "\e73a";
}
.ti-layout-column3-alt:before {
	content: "\e73b";
}
.ti-layout-column2-alt:before {
	content: "\e73c";
}
.ti-instagram:before {
	content: "\e73d";
}
.ti-google:before {
	content: "\e73e";
}
.ti-github:before {
	content: "\e73f";
}
.ti-flickr:before {
	content: "\e740";
}
.ti-facebook:before {
	content: "\e741";
}
.ti-dropbox:before {
	content: "\e742";
}
.ti-dribbble:before {
	content: "\e743";
}
.ti-apple:before {
	content: "\e744";
}
.ti-android:before {
	content: "\e745";
}
.ti-save:before {
	content: "\e746";
}
.ti-save-alt:before {
	content: "\e747";
}
.ti-yahoo:before {
	content: "\e748";
}
.ti-wordpress:before {
	content: "\e749";
}
.ti-vimeo-alt:before {
	content: "\e74a";
}
.ti-twitter-alt:before {
	content: "\e74b";
}
.ti-tumblr-alt:before {
	content: "\e74c";
}
.ti-trello:before {
	content: "\e74d";
}
.ti-stack-overflow:before {
	content: "\e74e";
}
.ti-soundcloud:before {
	content: "\e74f";
}
.ti-sharethis:before {
	content: "\e750";
}
.ti-sharethis-alt:before {
	content: "\e751";
}
.ti-reddit:before {
	content: "\e752";
}
.ti-pinterest-alt:before {
	content: "\e753";
}
.ti-microsoft-alt:before {
	content: "\e754";
}
.ti-linux:before {
	content: "\e755";
}
.ti-jsfiddle:before {
	content: "\e756";
}
.ti-joomla:before {
	content: "\e757";
}
.ti-html5:before {
	content: "\e758";
}
.ti-flickr-alt:before {
	content: "\e759";
}
.ti-email:before {
	content: "\e75a";
}
.ti-drupal:before {
	content: "\e75b";
}
.ti-dropbox-alt:before {
	content: "\e75c";
}
.ti-css3:before {
	content: "\e75d";
}
.ti-rss:before {
	content: "\e75e";
}
.ti-rss-alt:before {
	content: "\e75f";
}

/* Tomorrow Night Blue Theme */
/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
/* Original theme - https://github.com/chriskempson/tomorrow-theme */
/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */

/* Tomorrow Comment */
.hljs-comment,
.hljs-quote {
	color: #7285b7;
}

/* Tomorrow Red */
.hljs-variable,
.hljs-template-variable,
.hljs-tag,
.hljs-name,
.hljs-selector-id,
.hljs-selector-class,
.hljs-regexp,
.hljs-deletion {
	color: #ff9da4;
}

/* Tomorrow Orange */
.hljs-number,
.hljs-built_in,
.hljs-literal,
.hljs-type,
.hljs-params,
.hljs-meta,
.hljs-link {
	color: #ffc58f;
}

/* Tomorrow Yellow */
.hljs-attribute {
	color: #ffeead;
}

/* Tomorrow Green */
.hljs-string,
.hljs-symbol,
.hljs-bullet,
.hljs-addition {
	color: #d1f1a9;
}

/* Tomorrow Blue */
.hljs-title,
.hljs-section {
	color: #bbdaff;
}

/* Tomorrow Purple */
.hljs-keyword,
.hljs-selector-tag {
	color: #ebbbff;
}

.hljs {
	background: #002451;
	color: white;
	display: block;
	overflow-x: auto;
	padding: 1em;
}

.hljs-emphasis {
	font-style: italic;
}

.hljs-strong {
	font-weight: bold;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-size: 100%;
	list-style: none;
	font-family: inherit;
}

html {
	font-size: 21px;
}

@media screen and (max-width: 768px) {
	html {
		font-size: 18px;
	}
}

:root {
	--primary-color: #f2849e;
	--secondary-color: #f2849e;
	--tertiary-color: #ff8d5e;
	--quaternary-color: #ff9c5c;
	--quinary-color: #ffab5b;
	--senary-color: #ffba59;
	--septenary-color: #ffc958;
	--octonary-color: #ffd857;
	--nonary-color: #ffe756;
	--denary-color: #fff655;
	--error-color: #d00000;
	--success-color: #00a000;
	--light-gray: #f6f6f6;
	--medium-gray: #e0e0e0;
	--dark-gray: #585858;
	--black: #000;
	--white: #fff;
	--font-family: system, -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", sans-serif;
	--font-family-secondary: Constantia, "Lucida Bright", Lucidabright, "Lucida Serif", Lucida, "DejaVu Serif", "Bitstream Vera Serif", "Liberation Serif", Georgia, serif;
	--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--font-size: 1rem;
	--font-weight: 300;
	--line-height: 1.75;
	--letter-spacing: 0.1rem;
	--border-radius: 0.25rem;
	--transition: all 0.3s linear;
	--max-width: 1170px;
	--fixed-width: 620px;
	--small-spacing: 0.25rem;
	--medium-spacing: 0.5rem;
	--large-spacing: 1rem;
	--extra-large-spacing: 2rem;
}

*:focus,
*:active {
	outline: none;
	box-shadow: none;
	color: inherit;
}



body {
	background: var(--white);
	color: var(--dark-gray);
	font-family: var(--font-family);
	line-height: var(--line-height);
	font-size: var(--font-size);
	font-weight: var(--font-weight);
}

a {
	text-decoration: none;
}

a:not([class]):hover {
	text-decoration: underline;
}

a:not([class]) {
	color: var(--primary-color);
}

h1 {
	font-weight: 900;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

button {
	cursor: pointer;
	border: none;
	outline: none;
	background: transparent;
	padding: 0;
}

figure a,
figure a:hover {
	display: block;
	text-decoration: none;
}

.container {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--max-width);
	padding: 0 1rem;
}

@media (min-width: 768px) {
	.container {
		padding: 0;
	}
}

.button,
.read-more {
	background: var(--dark-gray);
	border: none;
	color: var(--white);
	cursor: pointer;
	display: inline-block;
	font-size: 0.8em;
	font-weight: 900;
	line-height: 3.45em;
	height: 3.5em;
	padding: 0 1.25em 0 1.6em;
	text-align: center;
	text-transform: uppercase;
	transition: var(--transition);
	text-decoration: none;
	border-radius: 4px;
	letter-spacing: 0.35em;
}

.button:hover,
.read-more:hover {
	background: var(--secondary-color);
	text-decoration: none;
}

.section-intro {
	padding: 2.5rem 0;
	text-align: center;
}

.section-title {
	font-size: 2.75em;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 1em 0;
	letter-spacing: -0.035em;

}

.section-header {
	margin-bottom: var(--large-spacing);
}

.section-header h2 {
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: var(--medium-spacing);
}

.section-header p {
	line-height: 1.7;
}

.grid-col {
	margin-bottom: 1.5rem;
	text-align: center;
	box-shadow: rgba(0, 0, 0, 0.1) 0 4px 12px;
	border-radius: 3px;
	background: var(--white);
}

.grid-col.default {
	box-shadow: none;
	border-radius: 0;
}

.grid-col h3 {
	padding: 0 1rem 1rem 1rem;
	color: var(--black);
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.grid-col ul {
	padding: 1rem;
	list-style-type: none;
	margin: 0;
}

.grid-col ul li {
	margin-bottom: 0.5rem;
}

#pagination {
	margin: 3.5rem 0;
}

#pagination ul li {
	display: block;
	margin: 0 1rem;
}

#pagination ul li a,
#pagination ul li span {
	border: solid 1px #c9c9c9;
	border-radius: 4px;
	width: 2.65em;
	height: 2.65em;
	display: inline-block;
	text-align: center;
	line-height: 2.65em;
}

#pagination ul li a:hover {
	color: var(--primary-color);
	text-decoration: none;
	border: 1px solid var(--primary-color);
}

#pagination ul li span {
    opacity: 0.5;
}

.single-post-meta {
	display: flex;
	align-items: center;
	justify-content: center;
}

.single-post-meta li {
	margin-right: 1rem;
	display: flex;
	align-items: center;
}

.single-post-meta li i {
	margin-right: 0.5rem;
}

.single-post-meta li:last-child {
	margin-right: 0;
}

.single-post-meta li a {
	color: var(--dark-gray);
	text-decoration: none;
}

.single-post-meta li a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

.flex {
	display: flex;
	flex-wrap: wrap;
}

.flex-middle {
	align-items: center;
}

.flex-between {
	justify-content: space-between;
}

.flex-center {
	justify-content: center;
}

.col {
	padding: 0 1rem;
}

.col-2 {
	flex: 0 0 50%;
	max-width: 50%;
}

.col-3 {
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
}

.col-4 {
	flex: 0 0 25%;
	max-width: 25%;
}

.grid {
	display: grid;
	gap: 1rem;
}

.grid-2 {
	grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
	grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
	grid-template-columns: repeat(4, 1fr);
}

.grid-col {
	margin-bottom: 1.5rem;
}

.grid-col p {
	line-height: 1.7;
	padding: 1rem;
}

.section-vpadding {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.section-vmargin {
	margin-top: 2.5rem;
	margin-bottom: 2.5rem;
}

@media screen and (max-width: 768px) {
	.grid {
		display: block;
	}

	.col {
		padding: 0;
	}

	.col-2, .col-3, .col-4 {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

.none {
	display: none !important;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.bg-alt {
	background: var(--light-gray);
}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.icon-box {
	display: flex;
	align-items: center;
	margin: 1.25rem auto;
	justify-content: center;
	flex-direction: column;
	width: 3.2rem;
	height: 3.2rem;
	border-radius: 50%;
	border: 1px solid rgba(0, 0, 0, 0.1);
}

.icon-box i {
	font-size: 1.5rem;
	color: var(--black);
}

@media screen and (min-width: 768px) {
	.icon-box {
		background: var(--white);
		position: relative;
		margin: 0 auto;
		top: -1.6rem;
	}

	.mbottom-lg {
		margin-bottom: 3.5rem;
	}
}

.list-icons li {
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
	justify-content: space-between;
	padding-left: 1.6rem;
	position: relative;
	padding-bottom: 0.45rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.list-icons li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.list-icons li i {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
	.list-icons  {
		padding-right: 1.5rem;
	}

	.contacts-list-container .list-icons {
		font-size: 1.3rem;
	}
}

@media screen and (max-width: 768px) {
	.list-icons li {
		padding-left: 0;
		display: block;
		position: static;
	}
	.list-icons li i {
		position: static;
		transform: none;
		margin-bottom: 0.75rem;
	}
	.list-icons li * {
		display: block;
		margin: 0.75rem 0;
	}
}

#top-bar {
	background: var(--light-gray);
	padding: 0.5rem 0;
}

#site-header {
	padding: 1rem 0;
}

#site-logo a {
	display: block;
	width: 54px;
	height: 54px;
	text-decoration: none;
}

#site-logo img {
	width: 100%;
	height: 100%;
	display: block;
}

#site-menu > ul {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

#site-menu > ul > li {
    margin-right: 0.6rem;
}

#site-menu > ul > li > a {
	color: var(--dark-gray);
	text-decoration: none;
	display: block;
}

#site-menu > ul > li > a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

#site-menu > ul > li.has-submenu {
    position: relative;
    display: flex;
    align-items: center;
}

#site-menu > ul > li.has-submenu button {
    margin-left: 0.3rem;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

#site-menu > ul > li.has-submenu button i {
    font-size: 16px;
}

#site-menu > ul > li ul {
     display: none;
     position: absolute;
     top: 100%;
     left: 0;
     z-index: 1000;
     background-color: #000;
     width: 250px;
}

#site-menu > ul > li ul.active {
    display: block;
}

#site-menu > ul > li ul li {
    display: block;
}

#site-menu > ul > li ul li a {
    display: block;
    font-size: 16px;
    padding: 0.65em 1em;
    color: #fff;
    text-decoration: none;
}

#site-menu > ul > li ul li a:hover {
    text-decoration: none;
    background-color: #333;
}


#site-info {
	padding: 2rem 0;
	color: var(--dark-gray);
}

#copyright {
	text-align: center;
	margin-bottom: 1rem;
	font-size: 0.85rem;
}

#copyright a {
	color: var(--dark-gray);
	text-decoration: none;

}

#copyright a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

#social {
	justify-content: center;
}

#social li {
	margin-left: 1rem;
	display: block;
}

#social a {
	color: var(--dark-gray);
	text-decoration: none;
	display: block;
}

#social a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

#oops figcaption {
	margin-top: 2rem;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	color: #999;
}

#oops figcaption:after {
	content: ":-(";
	display: inline-block;
	margin-left: 1rem;
}

.posts {
	margin-top: 2.5rem;
	margin-bottom: 2.5rem;
}

.posts .post {
	margin-bottom: 2.5rem;
}

.posts .post-category {
	font-size: 0.9rem;
	text-transform: uppercase;
	margin-bottom: 0.2rem;
}

.posts .post-category a {
	color: var(--dark-gray);
	text-decoration: none;
}

.posts .post-category a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

.posts .post-title {
	font-size: 1.4rem;
	font-weight: 700;
	margin-bottom: 1rem;
}

.posts .post-title a {
	color: var(--dark-gray);
	text-decoration: none;
}

.posts .post-title a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

.posts .post-meta {
	font-size: 0.85rem;
	font-weight: 400;
	margin-top: 1rem;
}

.posts .post-date {
	display: flex;
	align-items: center;
}

.posts .post-date i {
	margin-right: 0.5rem;
}

.posts .post-excerpt {
	margin: 1rem 0;
}

.post-content code,
.post-content pre,
.post-content kbd {
	font-size: 0.9rem;
	font-family: var(--font-family-monospace);
}

.post-content pre {
	margin-bottom: 1.5rem;
	white-space: pre-wrap;
	word-break: break-word;
	position: relative;
}

.copy-button {
	position: absolute;
	top: 0;
	right: 0;
	background: var(--black);
	color: var(--white);
	border: none;
	padding: 0.5rem;
	border-radius: 0.2rem;
	cursor: pointer;
	transition: var(--transition);
	font-family: var(--font-family);
}

.copy-button:hover {
	background: var(--primary-color);
}

.post-content p {
	margin-bottom: 1.5rem;
	line-height: 1.7;
}

.post-content h2 {
	margin-bottom: 1.5rem;
	font-size: 1.5rem;
}

.post-content h3 {
	margin-bottom: 1.5rem;
	font-size: 1.25rem;
}

.post-content h4 {
	margin-bottom: 1.5rem;
	font-size: 1.1rem;
}

.post-content h5 {
	margin-bottom: 1.5rem;
	font-size: 1rem;
}

.post-content blockquote {
	margin-bottom: 1.5rem;
	padding: 1rem;
	border-left: 3px solid rgba(0, 0, 0, 0.1);
}

.post-content ul,
.post-content ol {
	margin-bottom: 1.5rem;
	padding-left: 2.5rem;
}

.post-content ul li,
.post-content ol li {
	margin-bottom: 0.5rem;
}

.post-content ul ul,
.post-content ul ol,
.post-content ol ul,
.post-content ol ol {
	margin-bottom: 0;
}

.post-content ul li {
	list-style-type: disc;
}

.post-content ol li {
	list-style-type: decimal;
}

.post-content a,
.post-content a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

.post-content img {
	max-width: 100%;
	height: auto;
	display: block;
	margin-bottom: 1.5rem;
}

.post-content table {
	width: 100%;
	margin-bottom: 1.5rem;
	border-collapse: collapse;
}

.post-content table th,
.post-content table td {
	padding: 0.5rem;
	border: 1px solid rgba(0, 0, 0, 0.1);
	word-break: break-word;
	vertical-align: top;
}

.post-content table th {
	background: var(--light-gray);
}

.post-content table tr:nth-child(2n) {
	background: var(--light-gray);
}

.single-post-image {
	margin-bottom: 1rem;
}

.single-post-image-thumbnail {
	display: none;
}

.single-post-image-loader {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: #fff;
	z-index: 9999999;
}

.single-post-image-loader.loaded {
	display: none;
}

.single-post-image-loader .loader {
	border: 4px solid rgba(0, 0, 0, 0.1);
	border-top: 4px solid var(--primary-color);
	border-radius: 50%;
	width: 50px;
	height: 50px;
	animation: spin 2s linear infinite;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@media (max-width: 768px) {
	.single-post-image, .single-post-image-loader {
		display: none;
	}
}

#single-post-share-container {
	margin: 2.5rem 0;
}

#single-post-share {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}

#single-post-share li {
	margin-right: 1rem;
}

#single-post-share li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	color: var(--dark-gray);
	text-decoration: none;
	border: 1px solid #c9c9c9;
}

#single-post-share li a:hover {
	color: var(--primary-color);
	border: 1px solid var(--primary-color);
}

@media (min-width: 768px) {
	.post-content {
		font-size: 1.1rem;
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

#back-to-top-container {
	position: fixed;
	bottom: 2.5rem;
	right: 2rem;
	z-index: 9999;
}

#back-to-top {
	width: 2.5rem;
	height: 2.5rem;
	background: var(--dark-gray);
	color: var(--white);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	flex-direction: column;
	cursor: pointer;
	transition: var(--transition);
	font-size: 1.25rem;
}

#back-to-top:hover {
	background: var(--primary-color);
}


.curriculum-item {
	margin-bottom: 1.5rem;
}

.curriculum-description {
	line-height: 1.5;
	margin-top: 0.5rem;
}

.curriculum-date {
	font-size: 0.85rem;
	color: var(--dark-gray);
	margin-top: 0.2rem;
	display: block;
}

.curriculum-intro {
	margin-bottom: 1.5rem;
}
.curriculum-intro p {
	line-height: 1.5;
	font-size: 1.25rem;
}

h2.curriculum-title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
}

h3.curriculum-title {
	font-size: 1rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
	color: var(--dark-gray)
}

.curriculum-header {
	margin-bottom: 1.5rem;
}

.curriculum-intro h2.curriculum-title {
	font-size: 2rem;
}

.curriculum-toc {
	margin-bottom: 1.5rem;
	margin-top: 1.5rem;
	padding: 1rem;
	background: var(--light-gray);
	border-radius: var(--border-radius);
	box-shadow: rgba(0, 0, 0, 0.1) 0 4px 12px;
}
.curriculum-toc ul {
	padding-left: 1.5rem;
}
.curriculum-toc ul li {
	margin-bottom: 0.5rem;
}
.curriculum-toc ul li a {
	color: var(--dark-gray);
	text-decoration: none;
}
.curriculum-toc ul li a:hover {
	color: var(--primary-color);
	text-decoration: none;
}

.curriculum-download {
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.curriculum-toc-title {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
}

@media screen and (min-width: 768px) {
    body.contacts #site,
    body.search-results-page #site {
        display: flex;
	flex-direction: column;
	min-height: 100vh;
    }
    body.contacts #site #site-info,
    body.search-results-page #site #site-info {
        margin-top: auto;
    }
}

#contact-form {
   margin: 1.5rem 0;
   position: relative;
}

#contact-form .form-loader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.8);
	z-index: 9999;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-bottom: 0 !important;
}

#contact-form .form-loader.active {
	display: flex;
}

#contact-form .form-loader:after {
	content: "";
	display: block;
	animation: spin 2s linear infinite;
	border: 4px solid rgba(0, 0, 0, 0.1);
	border-top: 4px solid var(--primary-color);
	border-radius: 50%;
	width: 50px;
	height: 50px;
	animation: spin 2s linear infinite;
}

#contact-form > div {
    margin-bottom: var(--medium-spacing);
}

#contact-form > div > label {
    display: block;
    margin-bottom: 0.3rem;
}

#contact-form > div > input,
#contact-form > div > textarea {
    width: 100%;
    padding: 0.5rem;
    border: 1px solid var(--medium-gray);
    border-radius: var(--border-radius);
    font-family: var(--font-family);
    font-size: var(--font-size);
    color: var(--dark-gray);
    display: block;
}

#contact-form > div > textarea {
    height: 5rem;
    resize: vertical;
}

#contact-form .form-action {
    margin-top: 1rem;
}

.contact-form-message {
    margin-top: 1rem;
    font-size: 1rem;
    color: var(--dark-gray);
}

.form-error {
    margin-top: 1em;
    color: #d00;
}

.post-image  {
	margin: 1rem 0;
	display: none;
}

@media (min-width: 768px) {
	.post-image {
		max-width: 150px;
		padding: 0.5rem;
		background: var(--light-gray);
		border-radius: 0.2rem;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		opacity: 0.5;
		transition: opacity 0.3s ease;
		min-height: 90px;
	}

	.post-image.loaded {
		opacity: 1;
	}
}

@media (min-width: 1280px) {

    .posts .post {
        position: relative;
        padding-left: 15%;
    }

    .posts .post-image {
        position: absolute;
        top: 0;
        left: 0;
        margin: 0;
    }
}

#search-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255, 255, 255, 0.9);
	z-index: 9999;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#search-wrapper.active {
	display: flex;
}

#search-wrapper-close {
	background: none;
	border: none;
	color: var(--dark-gray);
	cursor: pointer;
	padding: 1em;
	position: absolute;
	top: 1em;
	right: 1em;
	z-index: 999;
}

#search-wrapper-content {
	width: 100%;
	padding: 1rem;
}

@media (min-width: 768px) {
	#search-wrapper-content {
		width: 600px;
		padding: 0;
	}
}

#search-results-loader {
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.8);
	z-index: 9999;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-bottom: 0 !important;
}

#search-results-loader.loaded {
	display: none;
}

#search-results-loader span {
	display: block;
	animation: spin 2s linear infinite;
	border: 4px solid rgba(0, 0, 0, 0.1);
	border-top: 4px solid var(--primary-color);
	border-radius: 50%;
	width: 50px;
	height: 50px;
	animation: spin 2s linear infinite;
}

#search-wrapper form {
	width: 100%;
}

#search-wrapper form input[type="text"] {
	padding: 0.5em;
	border: 1px solid var(--medium-gray);
	border-radius: var(--border-radius);
	font-family: var(--font-family);
	font-size: 18px;
	color: var(--dark-gray);
	display: block;
	flex: 1;
	margin-right: 1rem;
}

#search-wrapper form button {
	border: none;
	background: transparent;
	padding: 0;
	cursor: pointer;
}

#search-query {
    font-weight: bold;
}

.category-image {
	margin: 1rem 0;
	display: none;
}

@media (min-width: 768px) {
	.category-image {
		display: block;
		height: 400px;
		overflow: hidden;
		width: 100%;
		opacity: 0;
		transition: opacity 0.3s ease;
	}

	.category-image.loaded {
		opacity: 1;
	}

	.category-image img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
}

.post-navigation {
	margin-top: 2rem;
	padding: 2.5rem 1rem;
	background: var(--black);
	color: #fff;
}

.post-navigation > .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.post-navigation a {
	color: #fff;
	text-decoration: none;
	width: 45%;
}

.post-navigation a span {
	display: block;
	margin: 0.5rem 0;
}

.post-navigation a figure {
	margin: 0;
}

.post-navigation a.previous-post {
	display: flex;
	flex-direction: column;
	text-align: left;
	align-items: flex-start;
}

.post-navigation a.next-post {
	display: flex;
	flex-direction: column;
	text-align: right;
	align-items: flex-end;
}

.post-navigation figure img {
    padding: 0.2rem;
    border-radius: 4px;
    background: var(--light-gray);
}

@media (max-width: 768px) {
    .post-navigation a span,
    .post-navigation figure {
        display: none;
    }
}

.print-btn {
	cursor: pointer;
}

.print-btn-default {
	color: var(--dark-gray);
	border: none;
	background: transparent;
	font-size: inherit;
	font-family: inherit;
	font-weight: 300;
	padding: 0;
}
