/*
Theme Name: stephen Hanrahan 2021
Theme URI:
Author: Stephen Hanrahan
Author URI:
Description: theme for stephenhanrahan.com
Version: 1.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
:root{
  --bg-color:#f0bf34;
  --accent-color:#02c28f;
  --color:black;
  --maxwidth:1024px;
  --article-background-color:white;
  --bg-footer-color:black;
  --bg-footer-text-color:#ECECEC;
  --gapwidth:10px;
  --default-margin:20px;
  --heading-font-size:120px;
  --font-size:14px;
  --radius:5px;
}

a{
  position: relative;

  text-decoration: none;
}
 a:not(.ab-item):before , a:not(.ab-item):after {
  content: '';
  border-bottom: solid 4px;
  border-bottom-color: var(--accent-color);
  position: absolute;
  bottom: 0;
  width: 0;
}

a:not(.ab-item):before { left: 0; }
a:not(.ab-item):after { right: 0; }

a:not(.ab-item):hover:before,a:not(.ab-item):hover:after {
  width: 50%;
}
a:not(.ab-item):before, a:not(.ab-item):after {
  -webkit-transition: all 0.2s ease;
          transition: all 0.2s ease;
}


a.artlink{
  text-decoration: none;
}
.submit{
  background-color:var(--accent-color);
  border-radius:3px;
  border:0px;
  color: white;
  font-weight: bold;
  font-family: 'Karla', sans-serif;
}
input,textarea{
  border-radius:var(--radius);
}
label{
  display: block;
}
input::focus,textarea:focus{
  border-color: :var(--accent-color);
}
input[type=submit],button,button.wp-block-search__button{
  background-color:var(--accent-color);
  color: var(--article-background-color);
  padding: 15px;
  font-size: var(--font-size)
  font-weight:bold;
  font-family: 'Karla', sans-serif;
  transition: all .5s ease;
}
input[type=submit]:hover ,button:hover,button.wp-block-search__button:hover{
  background-color: white;
  border:double 2px;
  border-color:var(--accent-color);
  color: var(--accent-color);
}
input:focus {
        outline: none !important;
        border-color:var(--accent-color);
        box-shadow: 0 0 10px var(--accent-color);
    }
    textarea:focus {
        outline: none !important;
        border-color: var(--accent-color);
        box-shadow: 0 0 10px var(--accent-color);
    }


html,body{
  background: var(--bg-color);
  color:var(--color);
  margin:0;
  padding:0;
}
h1,h2,h3,h4,h5,h6{
  font-family: 'Karla', sans-serif;


}
p,a,li,input{
  font-family: 'Spectral', serif;
}
.hamburger{
  font-size: 40px;
  position: fixed;
  top: 30px;
  right: 30px;
  cursor: pointer;
  border: 1px solid rgba(0,0,0,0);

  transition: all .3s;

}
.hamburger:hover{
  border-radius: 50%;
  border: 2px solid black;
}
.menu_content h1{
  color: var(--accent-color);
}
.fullscreen_navbar{

  width: 100vw;
  height:0%;
  position: fixed;
  top:0;
  left:0;
  background-color: var(--bg-color);
  border-bottom: 2px var(--color);
  opacity: 0;

  transition: all .5s ease-in;
  overflow: hidden;
}
.fullscreen_navbar .hamburger{
  display: none;
}
.fullscreen_navbar.show{
  opacity: 1;
  height: 100%;
  width: 100vw;
  overflow-y: auto;
  z-index: 9;
}
.fullscreen_navbar .content{
  width: 100%;
}
.fullscreen_navbar.show .hamburger{
  display: block;
}
.fullscreen_navbar.show .menu_content{
  max-width: var(  --maxwidth);
  margin: 0 auto;
}

.fullscreen_navbar.show  nav{

}
.nav-links{
  display: flex;
}
.nav-links a{
  color:black;
  font-weight: bold;
  text-decoration: none;

}
.nav-links .nav-previous{
  width: 50%;
}
.nav-links .nav-next{
  width: 50%;
  text-align: right;
}
.footer{
  background-color: var(--bg-footer-color);
}
.footer a,.footer h1,.footer h2,.footer h3,.footer h4, .footer h5, .footer h6,.footer p{
  color: var(--bg-footer-text-color);
}
.footer .widget a{
  color: var(--bg-footer-text-color);
}
.header{
  /* position: relative;
  padding-bottom: 56.2%; */
  max-width: 100%;
}
.featured_block{
  background-color: white;
  background-repeat: no-repeat;
  background-size: cover;

  object-fit: cover;
  width: 100%;
  height: 100%;
  max-width: 1024px;
  margin: 0 auto;
}
.featured_block h1,.featured_block h2{
  text-align: center;
  margin-top:var(--default-margin);
  text-decoration: none;
  color: var(--accent-color);
}
.featured_block h1{
  margin-top: 0px;
  margin-bottom: 20px;
}
.featured_block .Logo{
  margin:0 auto;
  width: 30%;
  height: auto;
  display: block;
}
  .primary_menu{
    border-bottom: 2px double var(--color);

  }
  .primary_menu ul.menu{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows:auto;
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    list-style-type: none;
    align-items: stretch;

  }
    .primary_menu ul li a{
      color:var(--color);
      font-family:'Karla', sans-serif;
      font-weight: 600;


    }
    .primary_menu a{
      display: none;
    }
    .primary_menu a.showLink{
      display: block;
    }
    .primary_menu .menuImg{
      display: block;
      width: 100%;
      height: auto;
    }
    .primary_menu ul#menu-main-menu:first-child {
      display: none;
    }


  .main_content article{
    background-color: var(--article-background-color);
  }
  .main_content article{
    background-color: var(--article-background-color);
    color: black
  }
  .main_content article a{
    color: black
  }
  .site-main .comment-content{
    margin-left:20px;
    margin-right:20px;
  }
  .loop{
    background-color: var(--article-background-color);
    position: relative;
  }
   article a p{
    text-decoration: none;
  }

  article{
    background-color: var(--article-background-color);
    padding:20px
  }
  article .post-image{
    width: 100%;
  }

  article .meta{
    display: flex;
    font-family: 'Spectral', serif;

  }
    article .meta .date{
      font-size: 15px;
      line-height: 20px;
      width:50%;
    }
    article .meta .category{
      font-size: 15px;
      line-height: 20px;
		width:50%;
		text-align:right;

    }
.widget a{
  color: black;
}
.widget a:hover{
  color:var(--accent-color);
}
/*large*/
@media screen and ( min-width:1024px ){
  h1{
    font-size: var(--heading-font-size);
  }
  .featured_block .h2{
    font-size: 55px;
  }
  .featured_block{
    display: block;

  }
  .main_content{
    margin: 20px auto;
    display: grid;
    grid-template-columns:  1fr 1fr 1fr 1fr;
    grid-row: auto;
    max-width: var(--maxwidth);
    grid-row-gap: var(--gapwidth);
    grid-column-gap: var(--gapwidth);
  }
  .main_content.full-width{
      grid-template-columns:  1fr;
      margin: 20px auto;
      display: grid;

  }
	.Featured_Pages{
    grid-column: span 4;
  }
  .main_content.full-width aside .widget{
      grid-template-columns:  1fr;
  }
  .main_content article{
    padding:var(--gapwidth);
  }

  .footer-content{
    display: grid;
    padding:var(--gapwidth);
    grid-template-columns: 1fr 1fr 1fr;
	grid-row-gap:10px;
	  grid-column-gap:10px;
    max-width: var(--maxwidth);
    margin:0 auto;
  }


  .site-main{
    margin: 0 auto;
    max-width: var(--maxwidth);
    display: grid;
    grid-template-columns: 2fr 4fr;
    grid-row-gap: var(--gapwidth);
    grid-column-gap: var(--gapwidth);
  }
  .site-main.single{
    max-width: var(--maxwidth);

  }
  .site-main.page{
    grid-template-columns: 4fr 2fr;
  }
  .comment-form input,.comment-form textarea{
    margin-left: 20px;
  }
  .nav-links{
    margin-left: var( --default-margin);
    margin-right: var( --default-margin);
  }

}/* end large */

@media  screen and (min-width: 600px) and (max-width: 1024px)  {
  .header h1{
    font-size: 70px;
  }
  .main{
    padding-left: 10px;
    padding-right: 10px;
  }
  .main aside{
    display: flex;

  }
  .main aside .widget-block{
    margin-left: 10px;
  }
  .main_content{
    margin: 20px auto;
    display: grid;
    grid-template-columns:  1fr 1fr 1fr 1fr;
    grid-row: auto;
    margin-left: 20px;
    margin-right: 20px;
    max-width: var(--maxwidth);
    grid-row-gap: var(--gapwidth);
    grid-column-gap: var(--gapwidth);
  }
	.Featured_Pages{
    grid-column: span 4;
  }
	article{
		grid-column :span 2;
	}
  .header{
    height: 300px;
  }
  .comment-form input,.comment-form textarea{
    margin-left: 10px;
  }
  .site-main{
    margin-left: 20px;
    margin-right: 20px;
  }

  .footer-content {
    padding-left:20px;
    padding-right: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media  (max-width: 600px) {
  .header{
    height: 200px;
  }
  .main{
    padding-left: 10px;
    padding-right: 10px;
  }
  .main_content{
    display: grid;
    margin-left: 10px;
    margin-right: 10px;
    grid-template-columns: 1fr;
	grid-template-rows:auto;
    grid-row-gap: 10px;
    }
	.Featured_Pages{
      grid-column: span 1;
		padding:20px;
    }
	article{
		grid-column :1;
	}
  .site-main{
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
  .site-main aside{
    grid-row:2;
  }
  .site-main .loop{
    grid-row:1;
  }
  .comment-form input,.comment-form textarea{
    margin-left: 10px;
  }
  .wp-block-latest-comments__comment article{

  }
  textarea{
    max-width: 100%;
    margin-right: 10px
    max-width: 100%;
margin-right: 10px;
display: block;
width: 80%;
  }
  .fullscreen_navbar.show .menu_content{
    margin-left: 10px;
    margin-right: 10px;
  }
  .primary_menu ul.menu{
    grid-template-columns: 1fr;
    list-style-type: none;
  }
  .primary_menu ul.menu .menuImg{
    display: none;
  }
  .hamburger{
    top: 10px;
    right: 10px;
  }

  .nav-links{
    margin-left: 10px;
    margin-right: 10px;
  }
  .footer-content{
    margin-left: 10px;
    margin-right: 10px;
    padding-top: 10px;

  }
  .nav-links{
    margin-left: var()
  }
  .footer-content{
    border-bottom: 1px solid white;
  }

  article .meta .date{
    margin-right: 50%;
  }
}

    .pagination{
      grid-column: span 4;
      grid-row:span 1;
      text-align: center;
      display: flex;

    }
    .pagination .page-numbers {
      border-radius: 50%;
      color:white;
      font-weight: bold;
      background: var(--accent-color);
      width: 20px;
      height:20px;
      display: inline-block;
      margin-right: 10px;
      padding: 5px;
      line-height: 21px;
    }
    .pagination .page-numbers.current{
      line-height: 23px;
    }
    .pagination .page-numbers:hover,.pagination .page-numbers.current{
      border-radius: 50%;
      color:var(--accent-color);

      background: white;

    }
    .pagination .page-numbers.dots{
      background: none;
    }




/* =WordPress Core
-------------------------------------------------------------- */
.wp-block-image img{
  height: auto;
}
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

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

.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

/*
Animation
*/
@keyframes ripple {
  to {
    transform: scale(4);
    opacity: 1;
  }
}
(4);
    opacity: 1;
  }
}

}
(4);
    opacity: 1;
  }
}
