/* Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Description: Default GeneratePress child theme
Author: Tom Usborne
Author URI: https://tomusborne.com
Template: generatepress
Version: 0.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gpc
Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, fluid-layout, fixed-layout, responsive-layout, flexible-header, full-width-template, buddypress, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, featured-images, theme-options, light, white, dark, black, blue, brown, gray, green, orange, pink, purple, red, silver, tan, yellow
*/

/*

CONTENTS:
1. Defaults
2. Header and Nav
3. Home Page
4. Content
5. Components
6. Widgets
7. Footer
8. Other

*/

/* ==========================================
=! DEFAULTS
------------------------------------------ */



/* ==========================================
=! HEADER AND NAV
------------------------------------------ */
/* This selector targets the exact path used by the dynamic stylesheet to ensure it wins */
#site-navigation.main-navigation .main-nav > ul > li > a,
#site-navigation.main-navigation .menu-bar-item > a {
    padding-left: 8px !important;
    padding-right: 8px !important;
    line-height: 40px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    font-weight: 400 !important;
    display: block !important;
     color: #1a1a1a; /* Measured, dark grey instead of pure black */
    transition: color 0.2s ease-in-out;
}
.main-navigation a, .main-navigation .menu-toggle, .main-navigation .menu-bar-items {
	font-size: 21.25px;
}

/* Sophisticated Hover State */
#site-navigation.main-navigation .main-nav > ul > li > a:hover {
    color: #dd0404 !important; /* Maintains your brand red */
    text-decoration: underline !important;
    text-decoration-thickness: 2px !important; /* Heavier underline */
    text-underline-offset: 6px !important; /* Modern offset */
}

/* Ensure vertical alignment is clean */
.main-navigation .main-nav ul li a, 
.main-navigation .menu-bar-item > a {
    line-height: 1.5; /* More natural leading */
    margin-bottom: 0; /* Aligning items strictly to center */
}

/* Fix the Flex container inside the nav */
#site-navigation .inside-navigation {
    justify-content: flex-start !important; /* Keeps items grouped to the left */
}
.main-navigation {
    padding-left: 30px !important; 
    line-height: 1.5 !important; /* Changed from .5 to prevent text overlapping */
    border-bottom: 1px solid #abb8c3 !important; /* Changed ridge to solid for a cleaner, flat look */
}
/* ==========================================
=! HOME PAGE
------------------------------------------ */
.home-p p {margin-bottom: 0!important;}
body.home h2.gb-headline-text {font-size: 1.45rem;}
body.home h2.gb-headline-text a,
body.home h3.gb-headline-text a {
    color: #000; /* Default color */
    text-decoration: none; /* Remove underlines by default */
    transition: color 0.3s, text-decoration 0.3s; /* Add smooth transition for color and text-decoration */

}

body.home h2.gb-headline-text a:hover,
body.home h3.gb-headline-text a:hover {
    color: #dd0404!important; /* Color on hover */
    text-decoration: underline; /* Underline on hover */
}

body.home p.gb-headline.gb-headline-text {color: #1a1a1a;}
.home .site-content .content-area {
    padding-left: 0px!important;
}
body.home p.gb-headline-text {
    font-size: 1.15rem;
}
h2.gb-headline-14d85175 {
    font-size: 1.5em!important;
}

/* ==========================================
=! CONTENT
------------------------------------------ */
.image-row {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
}
figure {
	margin-bottom: 1.5em;
}
@media (min-width: 900px) { 
.site-content .content-area {
    padding: 5px 0px 0px 90px!important;
    }
}
@media (min-width: 900px) { 
.home .site-content .content-area {
    padding: 5px 0px 0px 0px!important;
    }
}
p {
  margin-bottom:1.45rem
}
.wp-block-image figcaption {
	font-size: 0.75rem;
	text-align: right;
}	
/* ==========================================
=! COMPONENTS
------------------------------------------ */

/* --- WordPress gallery --- */
.gallery-columns-2 .gallery-item,
.gallery-columns-3 .gallery-item,
.gallery-columns-4 .gallery-item,
.gallery-columns-5 .gallery-item,
.gallery-columns-6 .gallery-item,
.gallery-columns-7 .gallery-item,
.gallery-columns-8 .gallery-item,
.gallery-columns-9 .gallery-item {
    max-width: 50%;
}
@media screen and (min-width: 640px) {
    .gallery-columns-3 .gallery-item,
    .gallery-columns-4 .gallery-item,
    .gallery-columns-5 .gallery-item,
    .gallery-columns-6 .gallery-item,
    .gallery-columns-7 .gallery-item,
    .gallery-columns-8 .gallery-item,
    .gallery-columns-9 .gallery-item {
        max-width: 33.33%;
    }
}
@media screen and (min-width: 992px) {
    .gallery-columns-4 .gallery-item {
        max-width: 25%;
    }
    .gallery-columns-5 .gallery-item {
        max-width: 20%;
    }
    .gallery-columns-6 .gallery-item {
        max-width: 16.66%;
    }
    .gallery-columns-7 .gallery-item {
        max-width: 14.28%;
    }
    .gallery-columns-8 .gallery-item {
        max-width: 12.5%;
    }
    .gallery-columns-9 .gallery-item {
        max-width: 11.11%;
    }
}

/* --- responsive embed --- */
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.embed-container iframe, .embed-container object, .embed-container embed, .embed-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* ==========================================
=! WIDGETS
------------------------------------------ */

/* --- GPC Sub Menu Widget --- */
.widget_gpc_sub_menu_widget .dropdown-menu-toggle { display: none; }
.widget_gpc_sub_menu_widget .menu-item-has-children .sub-menu { margin-left: 1.2em; }
.widget_gpc_sub_menu_widget .menu-item-has-children .sub-menu li { list-style: disc; }
.widget_gpc_sub_menu_widget .current-menu-item > a { font-weight: bold; }

/* ==========================================
=! FOOTER
------------------------------------------ */



/* ==========================================
=! OTHER
------------------------------------------ */
table,
td,
th {
    border: none
}

table {
    width: 100%;
    display: table;
    border-collapse: collapse;
    border-spacing: 0
}

table.striped tr {
    border-bottom: none
}

table.striped>tbody>tr:nth-child(odd) {
    background-color: rgba(242, 242, 242, .5)
}

table.striped>tbody>tr>td {
    border-radius: 0
}

table.highlight>tbody>tr:hover {
    background-color: rgba(242, 242, 242, .5)
}

table.centered tbody tr td,
table.centered thead tr th {
    text-align: center
}

tr {
    border-bottom: 1px solid rgba(0, 0, 0, .12)
}

td,
th {
    padding: 15px 5px;
    display: table-cell;
    text-align: left;
    vertical-align: middle;
    border-radius: 2px
}

@media only screen and (max-width:992px) {
    table.responsive-table {
        width: 100%;
        border-collapse: collapse;
        border-spacing: 0;
        display: block;
        position: relative
    }
    table.responsive-table td:empty:before {
        content: "\00a0"
    }
    table.responsive-table td,
    table.responsive-table th {
        margin: 0;
        vertical-align: top
    }
    table.responsive-table th {
        text-align: left
    }
    table.responsive-table thead {
        display: block;
        float: left
    }
    table.responsive-table thead tr {
        display: block;
        padding: 0 10px 0 0
    }
    table.responsive-table thead tr th::before {
        content: "\00a0"
    }
    table.responsive-table tbody {
        display: block;
        width: auto;
        position: relative;
        overflow-x: auto;
        white-space: nowrap
    }
    table.responsive-table tbody tr {
        display: inline-block;
        vertical-align: top
    }
    table.responsive-table th {
        display: block;
        text-align: right
    }
    table.responsive-table td {
        display: block;
        min-height: 1.25em;
        text-align: left
    }
    table.responsive-table tr {
        border-bottom: none;
        padding: 0 10px
    }
    table.responsive-table thead {
        border: 0;
        border-right: 1px solid rgba(0, 0, 0, .12)
    }
}

.dcf-table,
td,
th {
    border: none
}

.dcf-table {
    width: 100%;
    display: table;
    border-collapse: collapse;
    border-spacing: 0
}

.dcf-table tbody {
    margin: 0;
    padding: 25px;
    color: #000;
    line-height: 20px
}

.dcf-table thead {
    background: #f1f1f1
}

.dcf-table th {
    text-align: left
}

.dcf-table tbody {
    border-bottom: 1px solid #e3e3e2;
    border-top: 1px solid #e3e3e2
}

.dcf-table tr {
    border-bottom: 1px solid rgba(0, 0, 0, .12)
}

.dcf-table td,
.dcf-table th {
    padding: 15px;
    display: table-cell;
    text-align: left;
    vertical-align: middle;
    border-radius: 2px
}

.dcf-table-bordered,
.dcf-table-bordered td,
.dcf-table-bordered th {
    border: 1px solid #f1f1f1
}

.dcf-table-bordered td,
.dcf-table-bordered th,
.dcf-table-striped td,
.dcf-table-striped th {
    padding: 6px 12px
}

.dcf-wrapper-table-scroll {
    left: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1em;
    position: relative;
    right: 50%;
    width: 100vw
}

@media only screen and (max-width:992px) {
    .dcf-table-responsive {
        width: 100%;
        border-collapse: collapse;
        border-spacing: 0;
        display: block;
        position: relative
    }
    .dcf-table-responsive tr {
        display: block;
        padding: 0 10px;
        border-bottom: none
    }
    .dcf-table.responsive-table thead {
        border: 0;
        border-right: 1px solid rgba(0, 0, 0, .12)
    }
    .dcf-table.responsive tbody {
        display: block;
        width: auto;
        position: relative;
        overflow-x: auto;
        white-space: nowrap
    }
    .dcf-table.responsive-table tbody tr {
        display: inline-block;
        vertical-align: top
    }
    .dcf-table.responsive-table th {
        display: block;
        text-align: right
    }
    .dcf-table.responsive-table td {
        display: block;
        min-height: 1.25em;
        text-align: left
    }
    .dcf-table.responsive-table tr {
        border-bottom: none;
        padding: 0 10px
    }
    .dcf-table.responsive tfoot {
        display: block;
        text-align: left;
        float: left
    }
    .dcf-table-responsive.dcf-table-bordered,
    .dcf-table-responsive.dcf-table-bordered thead th {
        border-width: 0
    }
    .dcf-table-responsive.dcf-table-bordered tbody td {
        border-top-width: 0
    }
    .dcf-table-responsive:not(.dcf-table-bordered) tbody tr {
        padding-bottom: .75em
    }
    .dcf-table-responsive:not(.dcf-table-bordered) tbody td {
        padding-bottom: 0
    }
    .dcf-table-responsive:not(.dcf-table-bordered):not(.dcf-table-striped) tbody td {
        padding-right: 0
    }
    .dcf-table-responsive.dcf-table-bordered tbody tr:last-child td:last-child {
        border-bottom-width: 0
    }
    .dcf-table-responsive tbody td:before {
        content: attr(data-label);
        float: left;
        padding-right: 1.78em
    }
}

.archive.entry-title a {
    text-decoration: none !important;
    color: #000 !important
}

footer.entry-meta a {
    font-weight: bolder;
    font-size: .7rem;
    color: #111010;
    text-decoration: none !important;
    display: inline-flex;
    box-shadow: 0 0 0 0 transparent;
    background: #f2f1f3;
    overflow: hidden;
    -webkit-transition: background 1s;
    transition: background 1s;
    text-align: center;
    margin: 0 .8em .8em 0;
    position: relative;
    box-sizing: border-box;
    background-size: auto;
    background-position: 0;
    padding: 1em 1.5em;
    overflow-x: hidden;
    overflow-y: hidden;
    letter-spacing: 1px;
    z-index: 1
}

footer.entry-meta a:hover {
    background: #c70000;
    color: #fff
}

.secondary-navigation {
    padding-left: 30px !important
}

.entry-content a {
    text-decoration: underline;
    color: #c70000
}

.entry-meta {
    font-size: 70%!important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    padding-right: 25px;
    -webkit-box-pack: justify;
    -webkit-box-align: center;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    text-transform: uppercase;
    font-weight: bolder!important;
    font-family: bitter, serif;
    color: #595959!important;
}

@media only screen and (max-width:400px) {
    .entry-meta {
        display: block
    }
}

.block-editor-block-list__block a {
    text-decoration: underline;
    font-weight: bolder;
    text-decoration-color: red
}

body.search-results nav.paging-navigation {
    display: none
}

.taxonomy-description p:last-child {
    margin-bottom: 0;
    display: none
}

.gp-icon.icon-tags {
    display: none
}

.gp-icon.icon-categories {
    display: none
}

#content div.sharedaddy,
#main div.sharedaddy,
div.sharedaddy {
    clear: both;
    margin: .8125em auto auto
}

.post-10140 .byline {
    display: none
}

@media only screen and (max-width:400px) {
    .post-10140 .byline {
        display: inline
    }
}

@media only screen and (max-width:770px) {
    .post-10140 .byline {
        display: inline
    }
}

.breadcrumbs {
    font-size: 24px;
    margin-bottom: 15px;
    font-weight: 400;
    line-height: 1.125;
}

a.breadcrumbs__link {
    text-transform: uppercase;
    text-decoration: none;
    color: #c70000;
}

div.inside-article table a {
    text-decoration: none
}

div.inside-article table caption a {
    color: #000
}

.size-auto,
.size-full,
.size-thumbnail {
    width: 100%
}

img {
    width: 100%;
    height: auto
}

.author.vcard a {
    text-decoration: none
}

img.size-pop-thumb {
    display: block;
    float: left;
    width: 70px;
    height: 70px;
    clear: left;
    margin-right: 10px;
    padding: 3px;
    border: 1px #ccc solid;
    vertical-align: bottom;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .4);
    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, .4);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .4);
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    border-radius: 7px
}

img.size-pop-thumb:after {
    content: ' ';
    width: 100%;
    height: 100%;
    position: absolute;
    top: -1px;
    left: -1px;
    border: solid 1px #222;
    -webkit-box-shadow: inset 0 0 1px rgba(255, 255, 255, .4), inset 0 1px 0 rgba(255, 255, 255, .4), 0 1px 2px rgba(0, 0, 0, .3);
    -moz-box-shadow: inset 0 0 1px rgba(255, 255, 255, .4), inset 0 1px 0 rgba(255, 255, 255, .4), 0 1px 2px rgba(0, 0, 0, .3);
    box-shadow: inset 0 0 1px rgba(255, 255, 255, .4), inset 0 1px 0 rgba(255, 255, 255, .4), 0 1px 2px rgba(0, 0, 0, .3);
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    border-radius: 7px
}

.popularp ul {
    margin: 0;
    padding: 0
}

.popularp ul li {
    clear: both;
    list-style: none;
    margin-bottom: 15px;
    display: block;
    background: 0 0;
    padding: 0
}

.popularp ul li:after,
.popularp ul:after {
    content: '';
    display: table;
    clear: both
}

.popularp {
    font-weight: 700;
    display: block;
    padding-bottom: 5px;
    text-decoration: none;
    line-height: 1.1em
}

.wp-block-pullquote {
    margin: 0 0 0;
    padding: 0 0;
    text-align: center;
    overflow-wrap: break-word
}

.wp-block-pullquote p {
    font-size: 1.0625em;
    line-height: 1.6
}

html > body .gsc-inline-block {
    display: -moz-inline-box;
    display: inline-grid !important;
}
home1 {
	color: #000;
	text-decoration: none;}
#wpadminbar .googlesitekit-wp-adminbar .ab-item {
	display: none!important;
}

.wp-block-table thead {border-bottom-width: 0!important;}
blockquote {
    font-size: 1em;
    font-style: normal;
}
blockquote {border-left: 5px solid rgba(28, 27, 27, 0.87);}