/*
 * ---:[ Thesis CSS reset ]:---
 */
* {
  margin: 0;
  padding: 0;
  word-wrap: break-word; }

html {
  -webkit-text-size-adjust: 100%; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

img,
fieldset {
  border: 0; }

abbr,
acronym {
  text-decoration: none; }

code {
  line-height: 1em; }

pre {
  overflow: auto;
  clear: both;
  word-wrap: normal;
  -moz-tab-size: 4;
  tab-size: 4; }

sub,
sup {
  line-height: 0.5em; }

img,
.wp-caption {
  max-width: 100%;
  height: auto; }

iframe,
video,
embed,
object {
  display: block;
  max-width: 100%; }

img {
  display: block; }

.left,
.alignleft,
img[align="left"] {
  display: block;
  float: left; }

.right,
.alignright,
img[align="right"] {
  display: block;
  float: right; }

.center,
.aligncenter,
img[align="middle"] {
  display: block;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  float: none;
  clear: both; }

.block,
.alignnone {
  display: block;
  clear: both; }

input[type="submit"],
button {
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none; }

.wp-smiley {
  display: inline; }

/*
 * ---:[ layout structure ]:---
 */
body {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 26px;
  color: #111111;
  background-color: white;
  padding-top: 26px; }

.container {
  width: 897px;
  margin: 0 auto; }

.columns,
.columns > .content,
.columns > .sidebar {
  box-sizing: border-box; }

.columns > .content {
  width: 617px;
  float: left;
  border-width: 0 1px 0 0;
  border-style: solid;
  border-color: #dddddd; }

.columns > .sidebar {
  width: 280px;
  float: right;
  padding: 26px 26px 0 26px; }

/*
 * ---:[ links ]:---
 */
a {
  color: #dd0000;
  text-decoration: none; }

p a {
  text-decoration: underline; }

p a:hover {
  text-decoration: none; }

/*
 * ---:[ nav menu ]:---
 */
.menu {
  position: relative;
  z-index: 50;
  list-style: none;
  border-width: 0 0 1px 1px;
  border-style: solid; }

.menu li {
  position: relative;
  float: left;
  margin-bottom: -1px; }

.menu .sub-menu {
  position: absolute;
  left: -1px;
  display: none;
  list-style: none;
  z-index: 110;
  margin-top: -1px; }

.menu .sub-menu .sub-menu {
  top: 0;
  left: 182px;
  margin: 0 0 0 -1px; }

.menu li:hover > .sub-menu {
  display: block; }

.menu .sub-menu li {
  width: 182px;
  clear: both; }

.menu a,
.menu_control {
  display: block;
  font-size: 13px;
  line-height: 19px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #111111;
  border-width: 1px 1px 1px 0;
  border-style: solid;
  background-color: #eeeeee;
  padding: 0.5em 1em; }

.menu a:hover {
  background-color: #dddddd; }

.menu_control {
  display: none;
  background-color: white; }

.menu .sub-menu a {
  border-left-width: 1px; }

.menu,
.menu a,
.menu .sub-menu {
  border-color: #dddddd; }

.menu .current-menu-item > a {
  border-bottom-color: white;
  background-color: white;
  cursor: text; }

.menu .sub-menu .current-menu-item > a {
  border-bottom-color: #dddddd; }

/*
 * ---:[ header ]:---
 */
.header {
  border-bottom: 3px double #dddddd;
  padding: 26px; }

#site_title {
  font-size: 42px;
  line-height: 1.32em;
  font-weight: bold;
  color: #111111; }

#site_title a {
  color: #111111; }

#site_title a:hover {
  color: #dd0000; }

#site_tagline {
  font-size: 16px;
  color: #888888;
  line-height: 1.32em; }

/*
 * ---:[ golden ratio typography with spaced paragraphs ]:---
 */
.grt,
.grt h3 {
  font-size: 16px;
  line-height: 26px; }

.grt h1,
.grt .headline {
  font-size: 26px;
  line-height: 39px; }

.grt .headline {
  margin: 0; }

.headline,
.headline a {
  color: #111111; }

.headline a:hover {
  color: #dd0000; }

.grt h2 {
  font-size: 20px;
  line-height: 31px;
  margin-top: 39px;
  margin-bottom: 13px; }

.grt h2,
.grt h3 {
  color: #111111; }

.grt h3 {
  font-weight: bold; }

.grt .small,
.grt .caption {
  font-size: 13px;
  line-height: 22px; }

.grt .drop_cap {
  font-size: 52px;
  line-height: 1em;
  margin-right: 0.15em;
  float: left; }

.grt h1,
.grt p,
.grt ul,
.grt ol,
.grt blockquote,
.grt pre,
.grt dl,
.grt dd,
.grt .center,
.grt .block,
.grt .aligncenter,
.grt .alignnone,
.grt .post_image,
.grt .post_image_box,
.grt .wp-post-image,
.grt .caption,
.grt .wp-caption,
.grt .alert,
.grt .note,
.grt .box,
.grt .footnotes,
.headline_area {
  margin-bottom: 26px; }

.grt ul,
.grt ol,
.grt .stack {
  margin-left: 26px; }

.grt ul ul,
.grt ul ol,
.grt ol ul,
.grt ol ol,
.wp-caption p,
.grt .alert p:last-child,
.grt .note p:last-child,
.grt .box p:last-child,
.grt blockquote.right p,
.grt blockquote.left p,
.grt .footnotes p:last-child {
  margin-bottom: 0; }

.grt .left,
.grt .alignleft,
.grt .ad_left {
  margin-bottom: 26px;
  margin-right: 26px; }

.grt .right,
.grt .alignright,
.grt .ad {
  margin-bottom: 26px;
  margin-left: 26px; }

.grt .caption {
  margin-top: -13px;
  color: #888888; }

.grt .footnotes p {
  margin-bottom: 13px; }

/*
 * ---:[ custom text styles ]:---
 */
.grt ul {
  list-style-type: square; }

.grt li a {
  text-decoration: underline; }

.grt li a:hover {
  text-decoration: none; }

.grt blockquote {
  color: #888888;
  margin-left: 13px;
  padding-left: 13px;
  border-left: 1px solid #dddddd; }

.grt code {
  font-family: Consolas, Menlo, Monaco, Courier, Verdana, sans-serif; }

.grt pre {
  font-family: Consolas, Menlo, Monaco, Courier, Verdana, sans-serif;
  background-color: #eeeeee;
  padding: 13px;
  -webkit-tab-size: 4;
  -moz-tab-size: 4;
  tab-size: 4; }

.grt .frame,
.grt .post_image_box,
.grt .wp-caption {
  border: 1px solid #dddddd;
  background-color: #eeeeee;
  padding: 13px; }

.grt .wp-caption img,
.grt .post_image_box .post_image,
.grt .thumb {
  margin-bottom: 13px; }

.wp-caption.aligncenter img {
  margin-right: auto;
  margin-left: auto; }

.wp-caption .wp-caption-text .wp-smiley {
  display: inline;
  margin-bottom: 0; }

.grt .wp-caption p {
  font-size: 13px;
  line-height: 22px; }

.grt .alert,
.grt .note,
.grt .box {
  padding: 13px; }

.grt .alert {
  background-color: #ffff99;
  border: 1px solid #e6e68a; }

.grt .note {
  background-color: #eeeeee;
  border: 1px solid #dddddd; }

.grt .box {
  background-color: #ffe2e2;
  border: 1px solid #ffb2b2; }

.grt .footnotes {
  font-size: 13px;
  line-height: 22px;
  border-top: 1px dotted #dddddd;
  padding-top: 26px; }

.grt .avatar {
  width: 61px;
  height: 61px;
  float: right;
  clear: both;
  margin-left: 13px; }

.grt .footnotes,
.grt sub,
.grt sup,
.grt .post_cats,
.grt .post_tags,
.byline,
.byline a {
  color: #888888; }

.byline a {
  border-bottom: 1px solid #dddddd; }

.byline a,
.post_author,
.post_date {
  text-transform: uppercase;
  letter-spacing: 1px; }

.byline a:hover,
.num_comments {
  color: #111111; }

.byline .post_edit {
  margin-left: 13px; }

.byline .post_edit:first-child {
  margin-left: 0; }

.post_author_intro,
.post_date_intro,
.byline .post_cats_intro {
  font-style: italic; }

.grt .author_description {
  border-top: 1px dotted #dddddd;
  padding-top: 26px; }

.grt .author_description_intro {
  font-weight: bold; }

.grt .author_description .avatar {
  width: 78px;
  height: 78px;
  float: left;
  margin-right: 13px;
  margin-left: 0; }

/*
 * ---:[ golden ratio pullquotes ]:---
 */
.grt blockquote.right,
.grt blockquote.left {
  font-size: 26px;
  line-height: 36px;
  width: 45%;
  margin-bottom: 13px; }

.grt blockquote.right,
.grt blockquote.left {
  padding-left: 0;
  border: 0; }

/*
 * ---:[ post box structural styles ]:---
 */
.post_box {
  padding: 26px 26px 0 26px;
  border-top: 1px dotted #dddddd; }

.top {
  border-top: 0; }

/*
 * ---:[ other post box styles ]:---
 */
.num_comments_link {
  display: inline-block;
  color: #888888;
  text-decoration: none;
  margin-bottom: 26px; }

.num_comments_link:hover {
  background-color: #eeeeee; }

.bracket,
.num_comments {
  font-size: 26px; }

.bracket {
  color: #dddddd; }

/*
 * ---:[ misc. content elements ]:---
 */
.archive_intro {
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #dddddd; }

.archive_intro .headline {
  margin-bottom: 26px; }

.prev_next {
  clear: both;
  color: #888888;
  border-top: 1px solid #dddddd;
  padding: 13px 26px; }

.prev_next .next_posts {
  float: right; }

.previous_posts,
.next_posts {
  display: block;
  font-size: 13px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 2px; }

.previous_posts a:hover,
.next_posts a:hover {
  text-decoration: underline; }

/*
 * ---:[ comments ]:---
 */
#comments {
  margin-top: 52px; }

.comments_intro {
  color: #888888;
  margin-bottom: 13px;
  padding: 0 26px; }

.comments_intro a:hover {
  text-decoration: underline; }

.comments_closed {
  font-size: 13px;
  line-height: 22px;
  color: #888888;
  margin: 0 26px 26px 26px; }

.comment_list {
  list-style-type: none;
  margin-bottom: 52px;
  border-top: 1px dotted #dddddd; }

.comment {
  border-bottom: 1px dotted #dddddd;
  padding: 26px; }

.children .comment {
  list-style-type: none;
  margin-top: 26px;
  border-left: 1px solid #dddddd;
  border-bottom: 0;
  padding: 0 0 0 26px; }

.children .bypostauthor {
  background-color: transparent;
  border-color: #dd0000; }

.comment .comment_head {
  margin-bottom: 13px; }

.children .comment_head {
  margin-bottom: 0; }

.comment .comment_author {
  font-weight: bold; }

.comment_date {
  font-size: 13px;
  margin-left: 13px;
  color: #888888; }

.comment_date a {
  color: #888888; }

.comment_footer a {
  font-size: 13px;
  line-height: 22px;
  color: #888888;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-left: 13px; }

.comment_head a:hover,
.comment_footer a:hover,
.comment_nav a:hover {
  text-decoration: underline; }

.comment_footer a:first-child {
  margin-left: 0; }

.comment .avatar {
  width: 52px;
  height: 52px;
  float: right;
  margin-left: 13px; }

.comment_nav {
  font-size: 13px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-style: dotted;
  border-color: #dddddd;
  padding: 13px 26px; }

.comment_nav_top {
  border-width: 1px 0 0 0; }

.comment_nav_bottom {
  margin: -52px 0 52px 0;
  border-width: 0 0 1px 0; }

.next_comments {
  float: right; }

/*
 * ---:[ inputs ]:---
 */
input[type="text"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="password"],
select,
textarea,
.input_text {
  font-family: inherit;
  font-size: inherit;
  line-height: 1em;
  font-weight: inherit;
  color: #111111;
  border: 1px solid #dddddd;
  background-color: #eeeeee;
  padding: 0.35em;
  box-sizing: border-box; }

input[type="text"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus,
.input_text:focus {
  border-color: #eeeeee;
  background-color: white; }

textarea,
textarea.input_text {
  line-height: inherit; }

/*
 * ---:[ buttons ]:---
 */
button,
input[type="submit"],
.input_submit {
  font-family: inherit;
  line-height: 1em;
  font-weight: bold;
  border: 3px double #dddddd;
  background-color: white;
  padding: 0.5em; }

button:hover,
input[type="submit"]:hover,
.input_submit:hover,
button:active,
input[type="submit"]:active,
.input_submit:active {
  background-color: #eeeeee;
  transition: background-color 0.3s; }

/*
 * ---:[ misc. form elements ]:---
 */
fieldset legend {
  font-weight: bold; }

.grt fieldset {
  margin-top: 26px;
  margin-bottom: 26px; }

.grt fieldset legend {
  margin-bottom: 13px; }

/*
 * ---:[ comment form ]:---
 */
#commentform {
  margin: 52px 0;
  padding: 0 26px; }

.comment #commentform {
  margin-top: 0;
  padding-right: 0;
  padding-left: 0; }

.comment_form_title {
  font-size: 20px;
  line-height: 31px;
  color: #111111;
  margin: 0 -26px;
  border-bottom: 1px dotted #dddddd;
  padding: 0 26px 13px 26px; }

#commentform label {
  display: block; }

#commentform p {
  margin-bottom: 13px; }

#commentform p .required {
  color: #dd0000; }

.comment_moderated {
  font-weight: bold; }

#commentform .input_text {
  width: 50%; }

#commentform textarea.input_text {
  width: 100%; }

#commentform .input_submit {
  font-size: 20px; }

#cancel-comment-reply-link {
  float: right;
  font-size: 13px;
  line-height: inherit;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #dd0000; }

#cancel-comment-reply-link:hover {
  text-decoration: underline; }

.login_alert {
  font-weight: bold;
  border: 1px solid #dddddd;
  background-color: #eeeeee; }

/*
 * ---:[ sidebar ]:---
 */
.sidebar {
  font-size: 13px;
  line-height: 19px; }

.sidebar .headline,
.sidebar .sidebar_heading,
.sidebar .widget_title {
  font-size: 21px;
  line-height: 30px; }

.sidebar .sidebar_heading,
.sidebar .widget_title {
  font-variant: small-caps;
  letter-spacing: 1px;
  margin-bottom: 10px; }

.sidebar .input_submit {
  font-size: inherit; }

.sidebar p,
.sidebar ul,
.sidebar ol,
.sidebar blockquote,
.sidebar pre,
.sidebar dl,
.sidebar dd,
.sidebar .left,
.sidebar .alignleft,
.sidebar .ad_left,
.sidebar .right,
.sidebar .alignright,
.sidebar .ad,
.sidebar .center,
.sidebar .aligncenter,
.sidebar .block,
.sidebar .alignnone {
  margin-bottom: 19px; }

.sidebar .left,
.sidebar .alignleft,
.sidebar .ad_left {
  margin-right: 19px; }

.sidebar ul ul,
.sidebar ul ol,
.sidebar ol ul,
.sidebar ol ol,
.sidebar .right,
.sidebar .alignright,
.sidebar .ad,
.sidebar .stack {
  margin-left: 19px; }

.sidebar ul ul,
.sidebar ul ol,
.sidebar ol ul,
.sidebar ol ol,
.wp-caption p,
.sidebar .post_excerpt p {
  margin-bottom: 0; }

.widget,
.sidebar .text_box,
.sidebar .thesis_email_form,
.sidebar .query_box {
  margin-bottom: 38px; }

.sidebar .thesis_email_form .input_text,
.widget li {
  margin-bottom: 10px; }

.sidebar .search-form .input_text,
.sidebar .thesis_email_form .input_text {
  width: 100%; }

.sidebar .query_box .post_author,
.sidebar .query_box .post_date {
  color: #888888; }

.sidebar .post_content,
.widget li ul,
.widget li ol,
.sidebar .search-form input[type="submit"] {
  margin-top: 10px; }

.widget ul {
  list-style-type: none; }

.widget li a:hover {
  text-decoration: underline; }

/*
 * ---:[ footer ]:---
 */
.footer {
  font-size: 13px;
  line-height: 22px;
  text-align: right;
  color: #888888;
  border-top: 3px double #dddddd;
  padding: 13px 26px; }

.footer a {
  color: #888888; }

.footer a:hover {
  color: #111111; }

/*
 * ---:[ custom template styles ]:---
 */
body.landing {
  padding-top: 0; }

.landing .container {
  width: 617px; }

.landing .header,
.landing .headline_area,
.landing .footer {
  text-align: center; }

.full_page .columns > .content {
  width: 897px;
  float: none;
  border-right: 0; }

/*
 * ---:[ woocommerce compatibility ]:---
 */
.woocommerce-shop .content {
  padding: 26px; }

.woocommerce-archive .content {
  padding: 0 26px; }

.woocommerce-archive .post_box {
  margin: 0 -26px 26px -26px; }

.woocommerce-archive .term-description {
  margin-bottom: 26px; }

.woocommerce-result-count {
  font-size: 13px;
  line-height: 22px;
  color: #888888; }

.woocommerce .content > .product {
  margin: 26px 26px 0 26px; }

.woocommerce-shop .page-title,
.woocommerce .product_title {
  font-size: 26px;
  line-height: 39px; }

.woocommerce .page-title {
  padding: 0 26px 26px;
  border-bottom: 1px solid #dddddd;
  margin: 0 -26px 26px -26px; }

.woocommerce .product_title {
  margin-bottom: 13px; }

.woocommerce nav.woocommerce-pagination ul.page-numbers {
  margin: -6.5px 0 13px 0; }

.woocommerce .products a.button,
.woocommerce .cart button.button,
.grt .woocommerce input.button,
.woocommerce .grt input.button,
.woocommerce .grt #respond input#submit {
  font-family: inherit;
  line-height: 1em;
  padding: 0.5em 0.75em; }

.woocommerce #comments {
  margin-top: 26px; }

.woocommerce #reviews h2 {
  margin-top: 0; }

.woocommerce #commentform {
  padding: 0;
  margin-top: 26px; }

/*
 * ---:[ clearfix ]:---
 */
.columns:after,
.menu:after,
.post_box:after,
.post_content:after,
.author_description:after,
.sidebar:after,
.query_box:after,
.prev_next:after,
.comment_text:after,
.comment_nav:after {
  display: table;
  clear: both;
  content: ''; }

/*
 * ---:[ media queries ]:---
 */
@media all and (max-width: 897px) {
  body {
    padding-top: 0; }

  .container,
  .landing .container {
    width: auto;
    max-width: 617px; }

  .header {
    border-top: 1px solid #dddddd; }

  .landing .header {
    border-top: 0; }

  .columns > .content {
    float: none;
    width: 100%;
    border: 0; }

  .full_page .columns > .content {
    width: 100%; }

  .columns > .sidebar {
    float: none;
    width: 100%;
    border-top: 3px double #dddddd; }

  .menu_control {
    display: block;
    width: 100%;
    border-width: 0;
    background-color: white;
    padding: 1em 26px;
    cursor: pointer;
    box-sizing: border-box; }

  .menu {
    display: none;
    width: 100%;
    border-width: 1px 0 0 0;
    clear: both; }

  .show_menu {
    display: block; }

  .menu .sub-menu {
    position: static;
    display: block;
    margin: 0;
    border-top: 1px solid #dddddd;
    padding-left: 26px; }

  .menu li {
    width: 100%;
    float: none;
    margin-bottom: 0; }

  .menu .sub-menu li {
    width: 100%; }

  .menu a {
    border-width: 1px 1px 0 0;
    background-color: white;
    padding: 1em 26px; }

  .menu .current-menu-item > a {
    background-color: #eeeeee; }

  .menu > li > a {
    border-left-width: 1px; }

  .menu li:first-child > a:first-child {
    border-top-width: 0; }

  .sidebar .search-form .input_text,
  .sidebar .thesis_email_form .input_text {
    width: 50%; } }

@media all and (max-width: 617px) {
  .menu a {
    border-right-width: 0; }

  .menu > li > a {
    border-left-width: 0; }

  .grt .frame,
  .grt .post_image_box,
  .grt .wp-caption {
    box-sizing: border-box; } }

@media all and (max-width: 450px) {
  .menu a,
  .menu_control {
    padding: 1em 13px; }

  .header,
  .columns > .sidebar,
  .post_box,
  .prev_next,
  .comments_intro,
  .comment,
  .comment_nav,
  #commentform,
  .comment_form_title,
  .footer {
    padding-right: 13px;
    padding-left: 13px; }

  .menu .sub-menu,
  .children .comment {
    padding-left: 13px; }

  .comments_closed,
  .login_alert {
    margin-right: 13px;
    margin-left: 13px; }

  .comment_form_title {
    margin-left: -13px;
    margin-right: -13px; }

  .right,
  .alignright,
  img[align="right"],
  .left,
  .alignleft,
  img[align="left"] {
    float: none; }

  .grt .right,
  .grt .left,
  .grt .alignright,
  .grt .alignleft,
  .grt blockquote.right,
  .grt blockquote.left {
    margin-right: 0;
    margin-left: 0; }

  .post_author:after {
    content: '\a';
    height: 0;
    white-space: pre;
    display: block; }

  .grt blockquote.right,
  .grt blockquote.left,
  #commentform .input_text,
  .sidebar .search-form .input_text,
  .sidebar .thesis_email_form .input_text {
    width: 100%; }

  .grt blockquote {
    margin-left: 0; }

  .comment_date {
    display: none; } }