/*
Theme Name: RRIB
Theme URI: https://github.com/WordPress/gutenberg-theme/
Author: Peter Wooster, Silver Maple Web
Author URI: https://wordpress.org
Description: Gutenberg Theme for Your London Hypnotist
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: RRIB
Tags: translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

rrib is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc
and the gutenberg starter theme by Automattic.
Underscores is distributed under the terms of the GNU GPL v2 or later.


Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
  font-family: futura-pt, sans-serif;color: black;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}



body {
  margin: 0;
}

body.home {
    color: #465295;
}



article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2.44em;
  margin: 0.67em 0 .33em;
}


h2 {
  font-size: 1.95em;
}

h3 {
  font-size: 1.56em;
}

h4 {
  font-size: 1.25em;
}

h5 {
  font-size: 1em;
}

h6 {
  font-size: 0.8em;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 0.875rem;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: black;
  font-family: futura-pt, sans-serif;color: black;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.4;
}


.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
h1, h2, h3, h4, h5, h6 {
  clear: both;
  margin: .67em auto .33em auto;
  line-height: 1.4;
}

.entry-content p{
	margin: 1em auto .5em auto;
	line-height: 1.5;
}

.entry-header .entry-title {
  font-size: 2.44em;
  line-height: 1.4;
  margin: 1em 0 1rem;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  line-height: 1.4;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 0.8em 1em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 0.875rem;
}

@media screen and (min-width: 600px) {
  code, kbd, tt, var {
    font-size: 0.8125rem;
  }
}

p > code {
  padding: 2px;
  border-radius: 2px;
  background: #f3f4f5;
  font-size: inherit;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

.big {
  font-size: 125%;
}

.huge {
	font-size: 64px;
}

@media screen and (min-width: 600px) {
	.huge {
		font-size:100px;
	}
}

@media screen and (min-width: 800px) {
	.huge {
		font-size:130px;
	}
}

.archive .site-header {
	margin-bottom: 3.5em;
}

header#masthead {
    position:relative;
}

.site-title {
	margin: .4375em 0 0;
	font-size: 38px;
	font-weight: bold;
	line-height: 1.2;
	color: #333332;
}

.site-title a {
	text-decoration: none;
	color: inherit;
}


.site-description {
	margin: 0;
	padding-top:0;
	font-size: 17px;
	font-weight: inherit;
	line-height: 1.2;
	word-wrap: break-word;
	color:white;
    text-align: center;
}

.site-description a{
    color:inherit;
    text-decoration: none;
    display:inline-block;
}

.site-description.left-description {
    text-align: left;
    margin-left:10px;
    margin-top: .5em;
    display:inline-block;
}

.phone {
    margin-top:.5em;
    margin-left: 10px;
    display:inline-block;
    padding-right:60px;
}
.phone a {
    color:white;
    text-decoration: none;
}

#masthead .main-navigation .menu {
	margin: .5em 1em;
	background-color: #f2f2f2;
}
#masthead .main-navigation .current-menu-item a {
	color: #465295;
}

#colophon p {
    text-align:center;
    font-size: 1em;
    margin: .5em auto;
}
#colophon br {
    display:none;
}

#colophon .legal {
    font-size: .9em;
}

#colophon a:visited,
#colophon a {
    color:#465295;
    text-decoration:none;
}
	
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */ }

blockquote, q {
  quotes: "" ""; }
  blockquote:before, blockquote:after, q:before, q:after {
    content: ""; }

hr {
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

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 {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

.reversed,
.reversed a,
.reversed a:visited{
	color:white;
}
.reversed a:hover {
	color:yellow;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #0073aa;
}

a:hover, a:focus, a:active {
  color: #00a0d2;
}

a:focus {
  outline: thin dotted;
}

a:hover, a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
    clear: both;
    display: block;
    margin: 0 auto;
    text-align: center;
    position:relative;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
  text-align: left;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  display: block;
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}


/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
        display: block;
        margin: 0 auto;
        padding-bottom:.5em;
}


.menu-toggle-text{
    font-size:16px;
    vertical-align: top;
    display: inline-block;
    margin-top:-1px;
}



.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  border-bottom: 1px solid #e2e4e7;
	margin: 0 auto 60px;
  max-width: 580px;
	overflow: hidden;
  padding-bottom: 60px;
}

.nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	width: 50%;
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}


/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.alignleft,
.alignright {
	max-width: 580px !important;	/* Let's work to make this !important unnecessary */
}

.alignleft img,
.alignright img,
.alignleft figcaption,
.alignright figcaption {
	max-width: 50%;
	width: 50%;
}

.alignleft figcaption {
	clear: left;
}

.alignright figcaption {
	clear: right;
}

.alignleft img,
.alignleft figcaption {
  float: left;
  margin-right: 1.5em;
}

.alignright img,
.alignright figcaption {
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.entry-content .alignwide {
    margin-left  : -80px;
    margin-right : -80px;
}
.entry-content .alignfull {
    margin-left  : calc( -100vw / 2 + 100% / 2 );
    margin-right : calc( -100vw / 2 + 100% / 2 );
    max-width    : 100vw;
}

.entry-content>.wp-block-cover{
    margin-top:0;
}

.alignfull img {
    width: 100vw;
}

.entry-content .boxed {
    padding: 5px;
    border: 1px black solid;
    border-radius: 5px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.entry-content .boxed figure {
    margin-bottom:0;
}

.wp-block-column.has-background,
.padded {
    padding-right:10px;
    padding-left:10px;
}

.tight {
    margin-top: 0;
    margin-bottom:0;
}

.tight-top {
    margin-top:0;
}

.tight-bottom {
    margin-bottom:0;
}

#page .entry-content ol {
    padding-left: .5em;
}

#page .entry-content li {
    margin-left: 1em;
}


/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget-area {
	width: 25%;
}

.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
#page {
  margin: 0 auto;
  max-width: 100%;
}

.site-branding {
  margin: 0;
}
.site-branding.fixed {
    display:none;
}

.branding-box{
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding:.5em 0;
}

.site-footer {
  margin: 1em 0;
  color: #6c7781;
  font-size: 90%;
}


.lower-header .lh-item {
    font-size: 24px;
    width:100%;
    /* background-color: #dadcea; lilac */
    background-color: #fcc39d;
    text-align: center;
    padding:.5em 0;
    font-weight: bold;
    /* border: #465295 solid 1px; */
}

.lower-header .lh-item:nth-child(2) {
    background-color: white;
    border-bottom: none;
    border-top:none;
}


.logo {
    max-width:400px;
    text-align:left;
    margin-left:32px;
}

.logo a{
    text-decoration: none;
    display:block;
}

.logo img,
.logo-name {
    display:inline-block;
}

.logo img {
	width:50px;
	margin-right:5px;
	display:block;
}

.logo-name {
    font-size:16px;
    color: #465295;
    font-style: normal;
    font-weight: 400;
}

.logo-name .abtw {
	font-size: 13.2px;
}

@media screen and (min-width:640px) {
    .logo a{
    	text-decoration: none;
		display:flex;
		align-items:center;
		justify-content:space-between;
    }
    
    .lower-header {
        display:flex;
        justify-content: space-between;
     }
}



.menu-toggle {
  padding: 1em;
  background-color:transparent;
  border:none;
}

.menu-toggle-text {
	display:none;
}


.branding-box{
    background-color: white;
    width:100%;
    height:auto;
}




/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.hentry {
  margin: 0;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 .75em 0;
}

#primary li {
	margin-bottom: .5em;
}

.entry-meta {
  color: #6c7781;
  font-size: 90%;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.entry-header,
.page-header,
.entry-footer,
.site-info,
.posts-navigation,
.post-navigation,
.page-navigation,
.comments-area,
.not-found .page-content,
.search .entry-summary {
  margin: 1.5em auto .75em;
  padding-left: 14px;
  padding-right: 14px;
}

.entry-header .wp-post-image {
  margin-bottom: 1.5em;
}

.entry-footer span{
  margin-right: 1em;
}

.entry-footer{
  color: #6c7781;
  font-size: 90%;
  padding-bottom: 40px;
  border-bottom: 1px solid #e2e4e7;
}

article.page>header.entry-header {
    display:none;
}

@media screen and (min-width: 608px) {
  .entry-header,
  .page-header,
  .site-info,
  .posts-navigation,
  .post-navigation,
  .page-navigation,
  .comments-area,
  .not-found .page-content,
  .search .entry-summary {
    padding-left: 0;
    padding-right: 0;
  }
  
  .entry-header {
      padding: 0 20px;
      margin:0;
  }
  .entry-title {
      margin-left: 0;
  }
	
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-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;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}



@media screen and (min-width:480px) {
    .home-headline-container {
        width: 40%;
    }
}

@media screen and (min-width:640px) {
    body.home header#masthead {
        /* height: 100vh; */
        display:flex;
        flex-direction: column;
        align-content: space-between;
    }

/*    
    .site-branding.fixed {
        display:block;
        position:fixed;
        top:0;
        z-index:100;
        width:100%;
    }
    
    .admin-bar .site-branding.fixed {
        top:46px;
    }

    body.home.admin-bar header#masthead {
        height: calc(100vh - 46px);
    }
*/
}

/*
@media screen and (min-width:783px) {
    .admin-bar .site-branding.fixed {
        top:32px;
    }
    body.home.admin-bar header#masthead {
        height: calc(100vh - 32px);
    }
}
*/



/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

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

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.3333333333%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.6666666667%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.2857142857%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.1111111111%;
}

.gallery-caption {
  display: block;
}

.wpcf7-form-control {
	background-color: #f2f2f2;
}

.grey-box{
	background-color: #f2f2f2;
	border: 3px #d8d8d8 solid;
}

.clear-box {
	background-color: transparent;
	border: 2px #d8d8d8 solid;
}

.clear-box>.wp-block-column,
.grey-box>.wp-block-column {
	margin-left:1em;
	margin-right: 1em;
}

/* 
 * inline-block columns 
 */
.columns {
	text-align:center;
	margin-left: -64px;
        margin-top:48px;
}

.columns .column {
	display:inline-block;
	vertical-align:top;
	padding-left:64px;
        margin-bottom:48px;
	margin-right: -.4em;
	text-align:left;
}

.columns.mid-gutter {
    margin-left: -32px;
    margin-top:32px;
}

.columns.mid-gutter .column {
	padding-left:32px;
        margin-bottom:32px;
}

.columns.small-gutter {
    margin-left: -16px;
    margin-top:16px;
}

.columns.small-gutter .column {
	padding-left:16px;
        margin-bottom:16px;
}

.full-width,
.one-half,
.one-third,
.two-thirds,
.one-fifth,
.two-fifths,
.three-fifths,
.four-fifths,
.one-quarter,
.one-sixth,
.five-sixths,
.three-quarters,
.one-eighth,
.three-eighths,
.five-eighths,
.seven-eights{
	width:100%;
}

.column form{
    margin-right:.4em;
}

@media screen and (min-width:320px) {
    .one-fifth,
    .one-sixth,
    .one-eighth {
        width:50%;
    }
}

@media screen and (min-width:640px) {
    .one-fifth,
    .one-sixth,
    .one-eighth {
        width:25%;
    }
    
    .one-quarter,
    .three-eighths,
    .three-eights,
    .five-eights,
    .seven-eights{
        width:50%;
    }
}

@media screen and (min-width:768px) {
    .one-half {
        width: 50%;
    }
    .one-third {
        width:33.333333%;
    }
    .two-thirds {
        width:66.6666666%;
    }
    .three-quarters {
        width:75%;
    }
    .two-fifths {
        width:40%;
    }
    .three-fifths {
        width:60%;
    }
    .four-fifths {
        width:80%;
    }
    .five-sixths{
        width: 83.333%;
    }
    .three-eighths{
        width: 37.5%;
    }
    .five-eighths{
        width: 62.5%;
    }
    .seven-eights{
        width: 87.5%;
    }
}
@media screen and (min-width:1024px) {
    .one-quarter {
        width:25%;
    }
    .one-fifth {
        width:20%;
    }
    .one-sixth {
        width:16.666%;
    }
    .one-eighth {
        width: 12.5%;
    }
}

/* Blog List 
 <div class="blog-list">
    <div class="blog-posts-wrapper">
       <div class="blog-posts">
          <div class="post-summary-wrapper">
             <div class="post-summary">
                <h2><a>
                <h3><a>
                <p>
                <div class="image-wrapper"><a><img>
*/

.blog-list * {
  box-sizing: border-box;
}

.blog-list {
  margin: 20px 0 0 20px;
}

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

.post-summary {
  width:100%;
  text-align:center;
  padding:20px;
}

.post-summary-wrapper{
  margin:20px auto;
  width:100%;
  max-width: 440px;
  border:1px #099 solid;
  border-bottom: 10px #099 solid;
  box-shadow: 10px 10px 10px #c0c0c0;
}

.blog-posts-wrapper h1 {
  font-size:40px;
  color: #78be20;
  margin-top: 40px;
  margin-left: 20px;
  text-align:left;
}
.post-summary h2 {
  margin-top:0;
  font-size:32px;
}
.post-summary h3 {
  font-size: 28px;
}

.post-summary p {
  font-size:20px;
  color: #63666a;
  margin-bottom:0;
}

@media screen and (min-width:720px) {
  .blog-posts {
    max-width:880px;
    margin: 20px auto 0 auto;
    display:flex;
    flex-flow: row wrap;
    align-items: stretch;
    justify-content: center;
  }
  
  .post-summary-wrapper{
    margin:0 20px 20px 0;
    flex: 0 1 calc(50% - 20px);
  }
}
@media screen and (min-width:1024px) {
  .blog-posts {
    max-width:1280px;
  }
  
  .post-summary-wrapper{
      flex: 0 1 calc(33.333% - 20px);
  }
}

@media screen and (min-width:1280px) {
  .blog-posts {
    max-width:1600px;
  }
  
  .post-summary-wrapper{
      flex: 0 1 calc(25% - 20px);
  }
}

#rrib-popup {
	display:none;
	position:fixed;
	top:0;
	left:10%;	
	right:10%;
	z-index:1000;
        background-color:white;
        color:black;
}

#rrib-popup a:visited,
#rrib-popup a {
	color:purple;
}

#rrib-popup .exit {
    position:absolute;
    top:0;
    right:0;
    margin:5px 10px;
    padding:5px 8px;
    border-radius:50%;
    line-height:1;
    background-color:#f0f0f0;
    color:white;
}

#rrib-popup h2 {
	text-align: center;
	background-color: transparent;
	padding: 5px;
	margin: 10px;
}
    .home-hero{
        overflow: hidden;
        padding: 5px 10px;
        background-image: url(assets/images/hypnosis-home-mobile.jpg);
        background-position: 75% 25%;
        background-size: cover;
        min-height:600px;
        display:flex;
        flex-direction: column;
        justify-content: space-between;
     }

    
     .home-hero h1,
     .home-hero h2
     {
        color: #475396;
        margin:0;
        padding:1px 0;
        font-weight:400;
     }
     
     .home-hero h1 {
         font-size: 28px;
         line-height:1;
     }
     
     .home-hero h2 {
         font-size: 20px;
     }
     
    .home-hero p,
    .home-hero .lower-content h2 {
        color: white;
    }

    .home-hero h1 .medium-h1,
    .home-hero h1 .small-h1{
        font-size: .65em;
        display:block;
        line-height:1.2;
        margin:.5em auto 1em;
    }
    .home-hero h1 .small-h1{
        font-size: .5em;
    }

    
    @media screen and (min-width: 640px) {
        .front-page-header{
            flex-grow:1;
            display:flex;
            flex-direction: column;
        }
        
        .home-hero{
            background-image: url(assets/images/hypnosis-home.jpg);
            background-position: 50% 25%;
            flex-grow:1;
            justify-content: normal;
        }
        
        .home-hero h1 {
            margin-top:60px;
            margin-left:32px;
            font-size: 40px;
            font-weight:bold;
            line-height: 1.2;
            color:#475396;
            max-width:320px;
        }
    }
    
    @media screen and (min-width: 880px) {
        .home-hero h1 {
            max-width:400px;
        }
    }
    @media screen and (min-width: 1280px) {
        .home-hero h1 {
            max-width:670px;
            font-size:39px;
        }
    }

/* remove right sidebar   
    @media screen and (min-width: 1280px) {
        .front-page-header {
            flex-direction: row;
        }
        .lower-header {
            flex-direction: column;
            align-items: stretch;
            border-bottom: none;
        }
        .lower-header .lh-item {
            height:33.333%;
            display:flex;
            align-items: center;
            justify-content: center;
            padding:0 .5em;
        }
        .lower-header .lh-item:nth-child(2) {
            border: #465295 solid 1px;
            border-bottom: none;
            border-top:none;
        }
    }
*/    

    
    @media screen and (min-width: 1600px) {
        .home-hero .upper-content strong {
            text-shadow: 2px 2px black;
        }
    }
    
    .menu-toggle, .main-navigation.toggled ul {
        display: block;
        margin: 0 auto;
        padding: .5em;
        z-index: 100;
        text-align:left;
    }
    
    @media screen and (min-width:1024px) {
        .menu-toggle {
            display:none;
        }
        .main-navigation ul {
            display: block;
            background-color: white;
        }
        
        #masthead .main-navigation .menu {
            background-color: white;
        }
        
        .main-navigation ul li {
            display:inline-block;
            padding: 0 .25em;
        }
        
        .main-navigation ul li a{
            font-size:16px;
            color:#465295;
        }
    }


    
    
    
    .menu-toggle {
        min-width: 30px;
    }
    
    .main-navigation.toggled ul{
        position:absolute;
        z-index: 200;
    }
    
    
    #masthead .main-navigation ul.sub-menu{
        background-color: rgba(255,255,255,.95);
    }
    
    #masthead .main-navigation ul.sub-menu a:visited,
    #masthead .main-navigation ul.sub-menu a{
        color:black;
    }
    
    .main-navigation.toggled li{
        font-size: 20px;
        margin: .25em 0;
    }
    
    @media screen and (min-width: 900px) {
      .phone {
          left:auto;
          right: 10px;
      }
    }

    
    /* Bands */
    .entry-content .band.layer {
        margin-left  : calc( -100vw / 2 + 100% / 2 );
        margin-right : calc( -100vw / 2 + 100% / 2 );
        max-width    : 100vw;
        width:100vw;
    }
    
    .band.layer{
        padding: .5em 0;
        margin-top:0;
        margin-bottom:0;
    }
    
    .band.lilac {
        background-color: #dadcea;
        color:black;
    }
    
    .band.white {
        background-color: white;
        color:black;
    }
    
    .band.peach {
        background-color: #fcc39d;
        color:black;
    }
    
    .band.blue {
        background-color: #465295;
        color:white;
    }
    
    .band h3,
    .band h2 {
        color:inherit;
    }
    
    .band .container {
        margin: 0 32px;
    }
    
    .band-content{
        max-width:1280px;
        margin:.5em auto;
    }
    .band p:empty{
        margin:0;
    }
    
    @media screen and (max-width: 512px) {
        .band .container {
            margin: 0 16px;
        }
    }
    
/* buttons */

.cta,
#masthead .call-to-action {
    display:inline-block;
    /* background-color:#378805; green */
    background-color:#ff893a;
    border-radius: 8px;
    width: auto;
    padding:10px;
    margin-right:10px;
    text-transform: uppercase;
    font-weight:bold;
    max-width:16em;
}

#masthead .home-hero .call-to-action {
    max-width:10.5em;
    margin-left:32px;
}

#masthead .site-branding .call-to-action {
    margin-right:32px;
}


.tcta {
    background-color: #ff893a;
}

.banner a,
.banner a:visited,
.cta a:visited,
.cta a,
#masthead .call-to-action a:visited,
#masthead .call-to-action a {
    color:white;
    text-decoration:none;
}

.tcta a:visited,
.tcta a{
    color:white;
}

.plain-links a:visited,
.plain-links a {
    color:black;
    text-decoration: none;
}

.white-links a:visited,
.white-links a{
    color:white;
    text-decoration: none;
}

.banner {
    display:block;
    width:100%;
    background-color: #ff893a;
    text-align:center;
}

.banner p {
    font-size: 1em;
    padding:.25em 0;
    margin:0;
    line-height: 1.2;       
}

@media screen and (min-width:640px) {
    .banner p {
        font-size: 1.25em;
    }
}

#insurance-programs>div a{
    text-align:center;
    text-decoration: none;
}


#insurance-programs svg{
    color:#73281d;
    max-width:100px;
    margin:0 auto;
}
#insurance-programs svg>*{
    stroke:#73281d !important;
}

svg .st0,
svg path.stroked {
 fill:transparent;
 stroke:#73281d;
 stroke-width:2%;
    
 /*fill:none;stroke:#0000ff;stroke-linecap:round;stroke-linejoin:round;stroke-width:32px*/
}

svg path.filled {
 fill:#73281d;
 stroke-width:0;
}

#home-hero {
    background-image: url('assets/images/HomeHeroMobile.jpg');
    background-size:cover;
}
#auto-hero {
    background-image: url('assets/images/AutoHeroMobile2.jpg');
    background-size:cover;
}

#residential-hero {
    background-image: url('assets/images/ResidentialHeroMobile.jpg');
    background-size:cover;
}

#cottage-hero {
    background-image: url('assets/images/CottageHeroMobile.jpg');
    background-size:cover;
}

#business-hero {
    background-image: url('assets/images/BusinessHeroMobile.jpg');
    background-size:cover;
}

#marine-hero {
    background-image: url('assets/images/MarineHeroMobile.jpg');
    background-size:cover;
}


@media screen and (min-width:640px){
    #home-hero {
        background-image: url('assets/images/HomeHeroDesktop.jpg');
    }
    #auto-hero {
        background-image: url('assets/images/AutoHeroDesktop2.jpg');
        background-position-y: 65%;
    }
    #residential-hero {
        background-image: url('assets/images/ResidentialHeroDesktop.jpg');
        background-position-y: 80%;
    }
    #cottage-hero {
        background-image: url('assets/images/CottageHeroDesktop.jpg');
        background-size:cover;
    }

    #business-hero {
        background-image: url('assets/images/BusinessHeroDesktop.jpg');
        background-size:cover;
    }

    #marine-hero {
        background-image: url('assets/images/MarineHeroDesktop.jpg');
        background-size:cover;
        background-position-y: 25%;
    }
}