/* ----------------------- WordPress Blocks ------------------------ */

/* Buttons */
.wp-block-button__link { 
    min-width: 120px !important;
    position: relative;
}

.wp-block-button__link:active {
    top:2px;
}

.wp-block-button,
.wp-block-button.alignleft{
  text-align:left;
}

.wp-block-button.alignright {
  text-align:right;
}

.wp-block-button.aligncenter {
  text-align:center;
}

/* Group Block Width */

.wp-block-group.wide,
.wp-block-group.standard,
.wp-block-group.max  {
    max-width: 100% !important;
    width: 100%  !important;
}

    .wp-block-group.wide > .wp-block-group__inner-container,
    .wp-block-group.standard > .wp-block-group__inner-container,
    .wp-block-group.max > .wp-block-group__inner-container {
        width:calc( 100% - (2 * var(--gap) ) );
        margin-left:auto; margin-right:auto;
    }

    .wp-block-group.wide > .wp-block-group__inner-container {
        max-width:var(--width-wide);
    }

    .wp-block-group.standard > .wp-block-group__inner-container {
        max-width:var(--width-standard);
    }

    .wp-block-group.max > .wp-block-group__inner-container {
      max-width:var(--width-max);
  }    


/* video */

.wp-block-video.alignwide video,
.wp-block-video.alignfull video {
    width:100%;
    display:block;
}

.wp-block-video {
    margin-bottom:var(--gap);
}

/* Seperator */

.wp-block-separator {
  margin: var(--margin, 3rem auto);
  border-bottom: none !important;
  border-top-width: 1px;
}

.wp-block-separator.is-style-wide {
    width: 100%;
    max-width: 100%;
}

.wp-block-separator.is-style-dots:before {
    content: "\00b7 \00b7 \00b7";
    color: inherit;
    font-size: 3em;
    letter-spacing: 0.5em;
    padding-left: 0.5em;
    font-family: serif;
    font-weight: bold;
    border:none;
}

/* Gallery */

.wp-block-gallery .blocks-gallery-item figcaption {
    color:#fff !important;
}

/* Audio Block */

.wp-block-audio {
    margin-bottom: var(--gap);
}

/* Image */

.wp-block-image { 
    float:none !important;
    display: block !important;
}

.wp-block-image.alignfull img,
.wp-block-image.alignwide img {  width:100%; }

.wp-block-image.alignleft img,
.wp-block-image.alignright img,
.wp-block-video.alignleft video,
.wp-block-video.alignright video,
img.alignleft,
img.alignright  {
    max-width: calc(50% - var(--gap));
}

.wp-block-image.alignleft img,
.wp-block-video.alignleft video,
img.alignleft {
    float: left;
    margin-right: var(--gap);
    margin-bottom: var(--gap);
}

.wp-block-image.alignright img,
.wp-block-video.alignright video,
img.alignright {
    float: right;
    margin-left: var(--gap);
    margin-bottom:var(--gap);
}

@media(max-width:640px){
    .wp-block-image.alignleft img,
    .wp-block-image.alignright img,
    .wp-block-video.alignleft video,
    .wp-block-video.alignright video,
    img.alignleft,
    img.alignright {
        max-width: 100%;
        margin-left:auto;
        margin-right:auto;
        float:none;
    }
}

.wp-block-image.alignleft,
.wp-block-image.alignright {
    figcaption {
        display:none !important;
    }
}

.wp-block-image.aligncenter {
    figcaption {
        display:block !important;
    }
}
.wp-block-image:not(.alignleft, .alignright),
.wp-block-image.aligncenter,
.wp-block-image.alignwide,
.wp-block-image.alignfull {
    margin-bottom: 1rem;
}



/* Captions */

.wp-element-caption {
    font-size: var(--txt-small);
    text-align: center;
    margin-bottom: 0 !important;
}

.wp-gallery-item-title {
    display: block;
}

/* Pullquotes */

.wp-block-pullquote {
    border:none;
    margin-bottom: var(--gap);
    padding:0;
    font-family: var(--serif);
}

.wp-block-pullquote.alignleft, 
.wp-block-pullquote.alignright {
    max-width: var(--width-standard);
}

.wp-block-pullquote.alignfull {
    padding: 0 var(--gap);
}

.wp-block-pullquote.alignfull,
.wp-block-pullquote.alignwide,
.wp-block-pullquote.aligncenter {
	margin:3rem auto;
}

.wp-block-pullquote blockquote {
    border-bottom: solid 3px;
    border-top: solid 3px;
    padding: var(--gap);
    margin: 0;
}

.wp-block-pullquote blockquote > :last-child {
    margin-bottom: 0;
}

.wp-block-pullquote.alignleft blockquote,
.wp-block-pullquote.alignright blockquote {
    max-width: 33%;
    margin-top: 0.5rem;
    margin-bottom: var(--gap);
}

.wp-block-pullquote.alignleft blockquote {
    float:left;
    margin-right:3rem;
}

.wp-block-pullquote.alignright blockquote {
    float:right;
    margin-left:3rem;
}



@media(max-width:640px){
    .wp-block-pullquote.alignleft blockquote,
    .wp-block-pullquote.alignright blockquote {
        max-width:100%;
        width:100%;
        margin-left:auto;
        margin-right:auto;
        float:none;
    }
}

.wp-block-pullquote blockquote { margin-bottom:0 }
.wp-block-pullquote p {
    font-size: 1.3em;
    line-height: 1.6;
}

.wp-block-pullquote cite { 
  opacity:0.7; 
  font-size:0.8em; 
  display:block; 
  margin-top:-0.75em  
}

/* Embeds (Videos) */

.wp-block-embed { margin-bottom:var(--gap); }

/* Block Quote */

.wp-block-quote,
.wp-block-quote.is-large, 
.wp-block-quote.is-style-large {
	position:relative;
    border:none;
    margin-inline: 0;
    padding-left: 1.75em;
    position: relative;
}

.wp-block-quote sup {
	font-size: .7em;
    vertical-align: baseline;
}

.wp-block-quote:before {
    content:'\e90f';
    font-family: 'ncicons';
    position: absolute;
    left:0;
    margin-inline: 0;
}

.wp-block-quote.alt-blockquote {
	padding: 0 var(--gap);
	margin-block:2rem;
	border-left:3px solid #eee;
	position:relative;
	left:6px;
	font-style:italic;
}

.wp-block-quote.alt-blockquote:before { display:none; }

.wp-block-quote p:last-of-type { margin-bottom:calc( var(--gap) / 2); }

.wp-block-quote cite { opacity:0.7; font-size:0.8rem}

cite:before { content:'\2014'; padding-right:0.3em }

.wp-block-quote.is-large, 
.wp-block-quote.is-style-large {
    margin-left:auto;
    margin-right:auto;
}

.wp-block-quote.is-large p, 
.wp-block-quote.is-style-large p {
	font-size:1.5em;
}

/* Cover Block */

.wp-block-cover-container > .wp-block-cover.alignleft,
.wp-block-cover-container > .wp-block-cover.alignright {
    max-width: 50%;
    margin-bottom: var(--gap);
}

.wp-block-cover-container > .wp-block-cover.alignleft { float:left; margin-right:var(--gap); }
.wp-block-cover-container > .wp-block-cover.alignright { float:right; margin-left:var(--gap); }

@media(max-width:640px){
    .wp-block-cover-container > .wp-block-cover.alignleft,
    .wp-block-cover-container > .wp-block-cover.alignright {
        max-width: 100%;
        width:100%;
        float:none;
        margin-left:0;
        margin-right:0;
    }
}

/* Tables */

.wp-block-table { margin-bottom:var(--gap);}
.wp-block-table table { min-width: 600px; margin-bottom:0 }

.wp-block-table table,
.wp-block-table thead,
.wp-block-table td,
.wp-block-table tr,
.wp-block-table tbody { border: var(--border); padding:0.5em; border-collapse:collapse; }

/* Media Text Blocks */

.wp-block-media-text .wp-block-media-text__content { padding:var(--gap); }

.wp-block-media-text { margin-bottom: var(--gap); }


/* Code Blocks */

.wp-block-code {
	padding:var(--gap);
	background-color:#222;
    color:#eee;
    overflow-x:auto;
}

.wp-block-code code {
    white-space: pre;
}

/* Widget Styles */

.widget_rss ul li, 
.widget_recent_entries ul li, 
.widget_recent_comments .recentcomments {
    margin-bottom: 1em;
}

.widget {
    margin-bottom:var(--gap);
}

.widget ul {
    list-style-type: none;
}

.widget ul, .widget_nav.navmenu div > ul {
    padding-left: 0;
}

.widget ul ul {
    margin-bottom: 0;
    padding-left: 1em;
}

.widget_rss .rss-date, 
.widget_recent_entries .post-date, 
.widget_recent_comments .comment-author-link + a {
    font-size: 0.8em;
    display: block;
}

.widget_header {
    margin-bottom: 1rem;
    font-weight: bold;
    text-transform: uppercase;
    font-size:0.8em;
}

.widget_rss .rss-date, 
.widget_recent_entries .post-date,
.nctrpsw_date.post-date {
    opacity: 0.7;
    font-size: 0.7em;
}

.widget_rss li a.rsswidget {
    font-weight: bold;
}

.widget_calendar #calendar_wrap {
    font-size: 0.7em;
}

.widget form input[type="text"], 
.widget form input[type="password"], 
.widget select {
    width: 100%;
}

.widget form label {
    font-size: 0.8em;
    width: auto;
}


/* Site Pagination */

.wp-block-query-pagination {
    --pgbgcolor: var(--dark-blue);
    --pgtextcolor: white;
  
    --pgbgcolor-hover: var(--link-color);
    --pgtextcolor-hover:#fff;
  
    --pgbgcolor-current:var(--navy);
    --pgtextcolor-current:#fff;
  
    --pgradius:var(--radius);
    --pgbordercolor:var(--dark-blue);
    
  }
  
 .wp-block-query-pagination {
    position: relative;
    font-size: var(--txt-small);

    .wp-block-query-pagination-numbers{
        gap: 0.5rem;
        display:flex;
    }
  
    .page-numbers {
      text-decoration: none;
      border-radius: var(--pgradius);
      background-color: var(--pgbgcolor);
      font-weight: bold;
      width: 30px;
      color: var(--pgtextcolor);
      aspect-ratio: 1;
      display:flex;
      align-items:center;
      justify-content:center;
      border:solid 1px var(--pgbordercolor);
      transition: .3s;
    }
    
    .page-numbers.dots {
      cursor: default;
    }
    
    .page-numbers.current {
      background-color: var(--pgbgcolor-current);
      color: var(--pgtextcolor-current);
      border:solid 1px var(--pgbgcolor-current);
      cursor: default;
    }
  
  .page-numbers:hover:not(.dots):not(.current) {
    background-color: var(--pgbgcolor-hover);
    color: var(--pgtextcolor-hover);
    border:solid 1px var(--pgbgcolor-hover);
  }
  
  .pagination a.page-numbers {
    color: var(--pgtextcolor);
    text-decoration: none;
  }
  
  .pagination_prev:before {
    content: '\2039';
  }
  
  .pagination_next:before {
    content: '\203A';
  }

}

/* Post Author Block */

.wp-block-post-author {

    img {
        border-radius: 100%;
        display:block;
        width:clamp(70px, 10vw, 90px);
    }

    .wp-block-post-author__avatar {
        margin-right: 1.5rem;
    }

    .wp-block-post-author__name {
        font-weight:bold;
        margin-bottom: 0.5rem;
        line-height: 1.3;
        font-size: var(--txt-xlarge);
    }

    .wp-block-post-author__bio {
        font-size: var(--txt-base);
        font-weight:normal;
        max-width: 60ch;
    }

    @media(max-width: 500px){
        body.author & {
            flex-direction: column;
            gap: 1rem;
        }
    }

    body.single-post & {

        align-items: center;

        .wp-block-post-author__avatar {
            margin-right: 0.5rem;
        }

        img {
            width: 40px;
        }

        .wp-block-post-author__name {
            font-size: var(--txt-small);
            font-weight: normal;
            margin-bottom:0;
        }
    }

}

/* Navigation (in header) */

#header {

    .wp-block-navigation { 
        display:flex;
        flex-direction: row;
        gap:0;
    }

    .wp-block-navigation,
    .wp-block-navigation__submenu-container { 
        list-style-type: none;
        padding-left: 0;
        margin:0;
    }

    .wp-block-navigation li > .wp-block-navigation-item__content,
	.wp-block-loginout {
        transition:0.5s;
        padding: 0.5rem;
        /*
		border-radius: 5px;
		background: var(--smoke);*/
    }

	.wp-block-navigation li:hover > .wp-block-navigation-item__content,
	.wp-block-loginout:hover {
        color: currentColor;
        text-decoration:underline;
		/* background: var(--sky-blue);*/
	}

    .wp-block-loginout:hover {
       text-underline-offset: 4px;
    }

    .has-child {
        position: relative;
        button { display:none; }
    }

    .has-child > a {
        padding-right:0.7em;
    }

    /* Submenu indicator */

    .has-child > a:after {
        content: '\e902';
        font-family: 'ncicons';
        transition:0.3s;
        transform:rotate(90deg);
        position:absolute;
        right:0;
        top:40%;
        color: currentColor;
        font-size: 0.5em;
        font-weight:bold;
    }

    .has-child:hover > a:after,
    .has-child.focused > a:after {
        transform: rotate(270deg);
    }

    /* Navigation Submenu */

    .wp-block-navigation__submenu-container {
        position: absolute;
        margin:0;
        top:100%;
        width: 200px !important;
        left: 50% !important;
        margin-left: calc(-1 * 200px / 2);
        line-height: normal;
        z-index: 200;
        list-style-type:none;
        padding-left:0;
        transition: 0.5s !important;
        border-radius: 5px;
        transform:scale(1,0);
        transform-origin:center top;
        font-size: var(--txt-small);
        border-radius: 5px;
        background:transparent !important;
        border:none !important;
        overflow: visible;
        opacity: 1;
        height: auto;
    }

    .has-child:hover .wp-block-navigation__submenu-container,
    .has-child.focused .wp-block-navigation__submenu-container {
        z-index:210;
        transform:scale(1,1);
    }


    /* Submenu Pointer */

    .wp-block-navigation__submenu-container:before {
        bottom: 100%;
        left: 50%;
        border: solid transparent;
        content: '';
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-color: transparent;
        border-bottom-color: #222;
        border-width: 10px;
        margin-left: -10px;
    }

    .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before {
        content:none;
    }

    .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { 
        left:100%; top:0;
    }

    .wp-block-navigation__submenu-container li { 
        display:block; 
        position:relative;
    }

    /* Nav Menu Item Description */

    .menu-item-description {
        display:block;
        font-size:0.6em;
        opacity:0.5;
        width:100%;
        line-height: 1.5
    }

    /* Submenu Links */

    .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        padding: var(--dm-link-padding, 1em);
        display: block;
        background: #222;
        color: #fff;
        transition:0.5s;

        &:hover,
        &:focus {
            background: #444;
        }
    }

    .has-child .wp-block-navigation__submenu-container li:first-child .wp-block-navigation-item__content {
        border-radius: 5px 5px 0 0;
    }

    .has-child .wp-block-navigation__submenu-container li:last-child .wp-block-navigation-item__content {
        border-radius: 0 0 5px 5px;
    }

}





/* Comments */

.logged-in-as a {
    text-decoration: underline;
    color: var(--link-color, blue);
}

.wp-block-post-comments-form .comment-reply-title {
    margin-bottom: 0.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap:0.3rem;
    
    #respond & {

        a {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            font-size:var(--txt-xsmall);
            font-weight: normal;
            white-space: nowrap;
            letter-spacing: 1px;

            /* Hides the text */

            gap: 1rem;
            width: 30px;
            height: 30px;
            overflow: hidden;
            text-align: right;
            justify-content: right;
        }

        a:after {
            content:'\e903';
            font-family: 'ncicons';
            font-size:var(--txt-base);
        }
    }
    
}


.wp-block-comment-template ol {
    padding-left: 55px; /* Same as width of column block for avatar */

    @media(max-width:781px){
        & {
            padding-left: 1rem;
            border-left: 1px solid var(--gray-light);
        }
    }
}

.wp-block-comment-date,
.wp-block-comment-edit-link {
    font-size: var(--txt-xsmall);
    display: inline-block;
    margin-block: 0.3rem !important;
}

.wp-block-comment-date {
    text-decoration: underline;

    &:hover {
        text-decoration: none;
    }

    &:before {
        content:'# ';
        /*
        font-family: 'ncicons';
        margin-right: 0.3rem;
        display: inline-block;
        font-size: 0.8em;
        */
    }
}

.wp-block-comment-edit-link {
    margin-left: 0.5rem !important;
    color: var(--link-color);
}

.wp-block-comment-content {
    font-size: 1.1em;
}

.comment-reply-link {
    font-size: 0.6em;
    text-transform: uppercase;
    display: inline-flex;
    line-height:normal;
    align-items:center;
    font-weight:bold;
    letter-spacing:1px;
    padding:1em;
    background: var(--smoke);
    transition:0.3s;

    &:hover,
    &:focus,
    &:active {
        background-color: var(--border);
        color: #fff;
    }

    &:after {
        content: '\e905';
        font-family: 'ncicons';
        padding-right: 0.3em;
        font-weight:normal;
        line-height: 0;
        position: relative;
        font-size: 1.3em;
        transform:scale(-1);
    }

}


/* Banner Post Meta */

.postmeta { position: relative; }
.postmeta_container { display:flex; font-size:var(--txt-small); align-items:center; }
.postmeta_avatar img { border-radius:50%; width:100%; display: block; }
.postmeta_avatar {max-width: 40px; margin-right:1em; }
.postmeta_content { flex-grow:1;}


/* Yoast Bread Crumbs CSS */

.yoast-breadcrumbs {
  font-size: var(--txt-small);
  margin-bottom: 1rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;

  a {
    color: inherit;
    font-weight: inherit;
    text-decoration: none;
  }

  .seper {
    font-size: 1.5ex;
    margin-inline: 0.5em;
    color: var(--gray, inherit);
  }

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

.maintitle {
    --width-max: var(--width-standard);
    padding-block: 4rem;
}

.maintitle_term-description {
    max-width: 60ch;
    font-size:var(--txt-small);
}


.ncurrentpage {
    margin-bottom: 1rem;
}