/*
Theme Name: Adamos-Modded-FPAC
Theme URI: http://www.templateexpress.com/adamos-theme/xxx
Author: Ossie Heffell (Reskinned)
Description: Adamos reskinned to match FPAC React Design.
Version: 1.3
License: GNU General Public License v2.0
*/

/* =FPAC Design Variables
-------------------------------------------------------------- */
:root {
  /* --col-primary: #1C5940; /* Dark Green */ */
  --col-accent: #C5D933;  /* Lime Green */
  --col-bg: #ffffff;      /* Beige Background */
  --col-white: #ffffff;
  --col-text-dark: #374151;
  --font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* =Reset
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    border: 0;
    font-family: inherit;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
}
html {
    font-size: 62.5%; 
    overflow-y: scroll; 
    -webkit-text-size-adjust: 100%; 
    -ms-text-size-adjust: 100%; 
    position: relative;
    min-height: 100%;
    width : auto;
    overflow-x: hidden;
}
body {
    background-color : var(--col-bg) !important;
    
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
    display: block;
}
ul {
    list-style: none;
}
table { 
    border-collapse: separate;
    border-spacing: 0;
}
caption, th, td {
    font-weight: normal;
    text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: "";
}
blockquote, q {
    quotes: "" "";
}
a:focus {
    outline: thin dotted;
}
a:hover,
a:active { 
    outline: 0;
}
a img {
    border: 0;
}


/* =Global
----------------------------------------------- */

body,
button,
input,
select,
textarea {
    color: var(--col-text-dark);
    font-family: var(--font-stack);
    font-weight : normal;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6; 
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
    clear: both;
    margin: 0 0 1.2em 0;
    font-family: var(--font-stack);
    font-weight : bold;
    color: var(--col-primary);
}
h1 {
    font-size: 26px;
    font-size: 2.6rem;
}
h2 {
    font-size: 24px;
    font-size: 2.4rem;
}
h3 {
    color : var(--col-primary);
    font-size: 16px;
    font-size: 1.6rem;
}
h4 {
    font-size: 14px;
    font-size: 1.4rem;
}
h5 {
    font-size: 12px;
    font-size: 1.2rem;
}
h6 {
    font-size: 10px;
    font-size: 1rem;
}
hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin-bottom: 1.5em;
}

/* Text elements */
p {
    margin-bottom: 1.5em;
}
ul, ol {
    margin: 0 0 1.5em 0.5em;
}
ul {
    list-style: none;
}
ol {
    list-style: decimal;
    padding-left : 20px;
}
ul ul, ol ol, ul ol, ol ul {
    margin-bottom: 0;
    margin-left: 1.5em;
}
dt {
    font-weight: bold;
}
dd {
    margin: 0 1.5em 1.5em;
}
b, strong {
    font-weight: bold;
}
dfn, cite, em, i {
    font-style:normal;
}
blockquote {
    font-style: italic;
    margin: 0 1.5em;
    color: var(--col-primary);
}
address {
    margin: 0 0 1.5em;
}
pre {
    background: #e8e9ea;
    font-family: "Courier 10 Pitch", Courier, monospace;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 1.6em;
    padding: 1.6em;
    overflow: auto;
    max-width: 100%;
}
code, kbd, tt, var {
    font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr, acronym {
    border-bottom: 1px dotted #666;
    cursor: help;
}
mark, ins {
    background: var(--col-accent);
    text-decoration: none;
    color: var(--col-primary);
}
sup,
sub {
    font-size: 75%;
    height: 0;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    bottom: 1ex;
}
sub {
    top: .5ex;
}
small {
    font-size: 75%;
}
big {
    font-size: 125%;
}
figure {
    margin: 0;
}
table {
    margin: 0 0 1.5em;
    width: 100%;
}
th {
    font-weight: bold;
    color: var(--col-primary);
}
button,
input,
select,
textarea {
    font-size: 100%; 
    margin: 0; 
    vertical-align: baseline; 
    *vertical-align: middle; 
}
button,
input {
    line-height: normal; 
    *overflow: visible;  
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    border: 1px solid transparent;
    border-radius: 3px;
    background: var(--col-accent);
    color: var(--col-primary);
    cursor: pointer; 
    -webkit-appearance: button; 
    font-size: 12px;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1;
    padding: 0.8em 1.5em;
    text-shadow: none;
    box-shadow: none;
}
button:hover,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
    background-color: #d1e231; /* Slightly lighter accent */
    border-color: transparent;
    box-shadow: none;
}
button:focus,
html input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
html input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
    background-color: var(--col-primary);
    color: var(--col-accent);
    border-color: transparent;
    box-shadow: none;
}
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; 
    padding: 0; 
}
input[type="search"] {
    -webkit-appearance: textfield; 
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; 
    box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration { 
    -webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner { 
    border: 0;
    padding: 0;
}
input[type=text],
input[type=email],
textarea {
    background: #ffffff;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 6px;
    color: var(--col-text-dark);
}
input[type=text]:focus,
input[type=email]:focus,
textarea:focus {
    background: #fff;
    border-color: var(--col-primary);
    outline: none;
}
textarea {
    overflow: auto; 
    padding-left: 3px;
    vertical-align: top; 
    width: 98%;
}

/* Links */
a,
a:visited ,
a:focus,
a:active {
    color: var(--col-primary);
    text-decoration: none;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
}
a:hover{
    color: var(--col-accent);
    text-decoration: underline;
}

/* Alignment */
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
    margin-bottom: 1em;
}
.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
    margin-bottom: 1em;
}
.aligncenter {
    clear: both;
    display: block;
    margin: 1.5em auto;
}

/* Text meant only for screen readers */
.assistive-text {
    clip: rect(1px 1px 1px 1px); 
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
}

/* =Structure
----------------------------------------------- */

#wrap {
    margin: 0 auto;
    padding: 0;
    position: relative;
}
.header_container {
    background: var(--col-primary);
    margin: 0 auto;
    max-width: 960px;
    min-height: 70px;
}
.main-navigation,
.site-title,
.site-description {
    margin: 0 auto;
    max-width: 960px;
}
#second ,
#main {
    clear: both;
    overflow: hidden;
}
#primary {
    float: right;
    margin: 0 0 0 0;
    width: 75%;
}
#second_content,
#content {
    margin: 0 5% 0 0;
}

#second_home ,
#primary_home {
    float: left;
    margin: 0;
    width: 100%;
}

#second_content.fullwidth ,
#content.fullwidth {
    margin-right: 0;
}
#secondary,
#tertiary {
    background: #ffffff; /* Clean white card look */
    float: left;
    margin: 0.4em 0.2em 0.4em;
    padding: 1em 1em 0;
    position: relative;
    width: 83%;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
#tertiary {
    clear: right;
    padding-top: 0;
}
/* =FPAC Footer Redesign 
----------------------------------------------- */
.site-footer {
    background-color: #F5F2E8 !important;
    padding: 60px 30px 40px !important;
    color: #333;
    position: relative;
    font-family: "Open Sans", sans-serif;
    border-top: none !important;
    height: auto !important; /* Override fixed height from old theme */
}

.footer_container {
    max-width: 1200px;
    margin: 0 auto;
    background: transparent !important;
}

/* --- Top Columns Layout --- */
.fpac-footer-columns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 60px;
}

/* Brand Column */
.fpac-col-brand {
    flex: 1;
    min-width: 200px;
}

.footer-brand-link {
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 10px;
}

.brand-text {
    border-left: 4px solid #8BC34A; /* Lime accent */
    padding-left: 12px;
    color: #555;
    font-weight: bold;
    line-height: 1.2;
    font-size: 16px;
}

/* Links Column */
.fpac-col-links {
    flex: 2;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 30px;
    min-width: 300px;
}

.links-group {
    min-width: 150px;
}

.links-title {
    border-bottom: 2px solid #469fde;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-weight: 900;
    color: #000000;
    display: inline-block;
}

.footer-link {
    display: block;
    margin-bottom: 15px;
    text-decoration: none !important;
    color: #313131 !important;
    font-size: 1.7rem;
    transition: color 0.2s;
}

.footer-link:hover {
    color: #1C5940 !important;
    text-decoration: underline !important;
}

/* Form Column */
.fpac-col-form {
    flex: 1.5;
    min-width: 320px;
}

.form-block {
    background-image: linear-gradient(135deg, #1C5940 0%, #2E7D32 100%);
    padding: 50px;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    color: white;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.form-block h2 {
    font-size: 28px !important;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 25px;
    line-height: 1.2;
    color: #fff !important;
    text-transform: none;
    border: none;
}

.form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.form-group {
    flex: 1;
    margin-bottom: 15px;
}

.form-group label {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    display: block;
    margin-bottom: 6px;
    color: #e0f2f1;
    letter-spacing: 0.5px;
}

.form-block input[type="text"],
.form-block input[type="email"] {
    width: 100%;
    padding: 12px;
    border: none;
    border-radius: 4px;
    box-sizing: border-box;
    background: #fff;
}

.form-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 25px;
}

.form-check input {
    margin-top: 4px;
    transform: scale(1.2);
}

.form-check label {
    font-size: 13px;
    line-height: 1.4;
    color: #fff;
    font-weight: 400;
    padding: 0;
}

.form-block button {
    background-color: #C5D933;
    color: #1C5940;
    border: none;
    padding: 12px 35px;
    font-weight: 800;
    font-size: 16px;
    border-radius: 20px;
    cursor: pointer;
    transition: background 0.3s;
    text-transform: none;
    text-shadow: none;
    box-shadow: none;
}

.form-block button:hover {
    background-color: #dceb60;
}

/* --- Bottom Footer Bar --- */
.fpac-footer-bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #ddd;
    padding-top: 20px;
    font-size: 13px;
    color: #666;
}

.fpac-bottom-links {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.more-label {
    color: #2E7D32;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 14px;
}

.fpac-bottom-links a {
    text-decoration: none !important;
    color: #333 !important;
    font-weight: 700;
}

.fpac-bottom-links a:hover {
    color: #1C5940 !important;
}

.fpac-copyright {
    text-align: right;
    margin-top: 10px;
}

/* --- Floating Language Toggle --- */
.fpac-lang-toggle {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background-color: #fff;
    padding: 10px 18px;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    font-weight: 700;
    font-size: 14px;
    color: #333;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    z-index: 9999;
}

.fpac-lang-toggle span {
    font-size: 10px;
    transform: rotate(90deg);
    display: inline-block;
}

/* Responsive Fixes */
@media screen and (max-width: 768px) {
    .fpac-footer-columns {
        flex-direction: column;
    }
    .fpac-col-links {
        justify-content: flex-start;
    }
    .fpac-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
}
/* =Site Header
----------------------------------------------- */

#masthead-wrap {
    margin: 0 auto;
    padding-bottom: 0;
    padding-top: 0;
    background-color: #1C5940;
    position : fixed ;
    left : 0px;
    top : 20px;
    width : 100%;
    z-index : 9999;
    height : 0px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
.admin-bar #masthead-wrap {
    top : 57px;
}
/* =FPAC Header Styles (Fixed Sizes & Spacing)
----------------------------------------------- */

/* Wrapper Reset */
.fpac-header-wrapper {
    width: 100%;
    z-index: 9099;
    position: relative;
    background: transparent;
    box-shadow: none;
    height: auto !important; /* Force auto height */
}

.header_container {
    max-width:-webkit-fill-available;
    margin: -6px;
    padding: 0 0px;
    width: 100%;
    
}

/* 1. Top Bar (Dark Green) - Slimmer */
.fpac-top-bar {
    background-color: #1C5940; /* Dark Green */
    color: #fff;
    padding: 0;
    font-size: 13px;
    font-family: "Open Sans", sans-serif;
    height: 20px; /* Reduced height to match screenshot */
    display: flex;
    align-items: center;
}

.top-bar-inner {
    background-color: #1C5940;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 101%;
    height: 100%;
}

/* Social Icons - Compact */
.top-social {
    display: flex;
    align-items: center;
    padding: 10px 20px 20px
}

.top-social a {
    color: #1C5940;
    margin-right: 8px; /* Tighter spacing */
    display: flex;
    align-items: center;
    justify-content: center;
    width: 21px; /* Smaller circle */
    height: 21px;
    background: #fff;
    border-radius: 50%;
    font-size: 15px;
    transition: opacity 0.2s;
    text-decoration: none;
}
.top-social a:hover { opacity: 0.8; }

/* Utility Links - Compact */
.top-utility {
    display: flex;
    align-items: center;
    gap: 15px; /* Reduced gap */
    padding: 10px 30px 20px
}

.top-utility a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 1.5px;
}

.lang-switch {
    display: flex;
    gap: 8px;
    font-weight: 700;
    color: #fff;
    margin-left: 10px;
    font-size: 0px;
}

/* 2. Main Header (Gradient) - Fixed Height */
.fpac-main-header {
    background: linear-gradient(90deg, #1C5940 0%, #26874e 100%);
    padding: 0 !important;
    border-bottom: none !important;
    height: 70px !important; /* Force Height */
    display: flex;
    align-items: center;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
}

/* Logo Layout - Constraint */
.site-logo {
    display: flex;
    align-items: center;
    height: 100%;
    margin: 0 !important;
    padding: 10px 20px 20px !important;
    float: none !important; /* Reset old theme float */
    max-width: none !important; /* Reset old theme width limit */
    
}

.logo-link {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: #fff;
    height: 100%;
}

.logo-img {
    height: 50px !important; /* Force logo size */
    width: auto !important;
    display: block;
    margin: 0px ;
    padding: 0px;
    border: none;
}

/* Navigation Menu - Right Aligned */
.main-navigation {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    height: 100%;
}

.fpac-nav-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 30px; /* Space between menu items */
    align-items: center;
}

.fpac-nav-menu > li {
    display: inline-block;
    position: relative;
    margin: 0 !important; /* Remove old margins */
}

.fpac-nav-menu > li > a {
    color: #fff !important;
    font-weight: 700;
    font-size: 16px;
    text-decoration: none;
    padding: 1px !important;
    display: block;
    line-height: 1;
}

.fpac-nav-menu > li > a:hover {
    opacity: 0.7;
}

/* Dropdown Arrow */
.fpac-nav-menu .menu-item-has-children > a::after {
    content: "\f107";
    font-family: FontAwesome;
    margin-left: 6px;
    font-weight: normal;
    font-size: 14px;
}

/* --- OVERRIDE OLD THEME JUNK --- */
/* If these exist in your style.css, this will kill them */
.site-introduction, 
.menu-toggle,
#menu-trigger {
    display: none !important;
}

/* Mobile Responsive */
@media screen and (max-width: 900px) {
    .fpac-main-header { height: auto !important; padding: 10px 0 !important; }
    .header-inner { flex-direction: column; gap: 15px; }
    .fpac-nav-menu { display: none; } /* Hide menu on mobile for now */
    .top-bar-inner { flex-direction: column; gap: 10px; padding: 5px 0; }
    .fpac-top-bar { height: auto !important; }
}
/* =Content Layouts
----------------------------------------------- */
#page {
    padding-top : 125px;
    background-color : var(--col-bg);
}
.home #page {
    background-color : var(--col-bg);
}
#second-content ,
.site-main {
    margin: 0 auto;
    max-width: 960px;
}
#second.site-main {
    width : 100%;
    border-top : 1px solid #ccc;
    margin-top : 19px;
    padding-top : 40px;
    max-width : 100%;
}

.sticky h1{
    border-bottom: 6px solid var(--col-primary);
    font-size: 20px;
    font-size: 2.0rem;
}
.sticky h1 a{
    color: var(--col-primary);
}
.sticky h2{
    font-family: var(--font-stack);
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 0;
    border-bottom: 7px solid var(--col-primary);
}
.sticky h2 a{
    background-color: var(--col-primary);
    color: var(--col-white);
    padding: 8px;
    border-radius:0.2em  0.2em 0 0;
    text-transform: uppercase;
}
.recent {
    padding: 4px;
    margin-bottom: 20px;
}
.recent h2{
    font-family: var(--font-stack);
    font-weight : bold;
    font-size: 14px;
    font-size: 1.4rem;
    color: var(--col-primary);
    text-transform: uppercase;
    padding: 0 8px;
}
.recent p{
    font-size: 12px;
    font-size: 1.2rem;
    padding: 0 8px;
}
.hentry {
    margin: 0 0 1.5em;
    padding-bottom: 1.5em;
    background: #fff;
    padding: 2rem;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
.content-top h1,
.entry-title,
.page-title {
    font-family: var(--font-stack);
    font-weight : bold;
    font-size: 26px;
    font-size: 1.625em;
    margin: 0.4em 0 0.2em;
    padding-top: 10px;
    color: var(--col-primary);
}
.entry-sub-title {
    font-weight : 300;
    color : #666;
    font-size : 24px;
}
.entry-title a {
    text-decoration: none;
    color: var(--col-primary);
}
body.search .page-title,
body.archive .page-title {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 1em;
}
.entry-meta {
    clear: both;
    font-size: 12px;
    font-size: 1.2rem;
    color: #666;
}
.byline {
    display: none;
}
.single .byline,
.group-blog .byline {
    display: inline;
}
.entry-content,
.entry-summary {
    margin: 1.5em 0 0;
}
.entry-content table,
.comment-content table {
    border:none;
    margin: 0 -0.083em 2.083em 0;
    text-align: left;
    width: 100%;
}
.entry-content tr th,
.entry-content thead th,
.comment-content tr th,
.comment-content thead th {
    border:none;
    font-weight: bold;
    padding: 0.5em  1.25em;
    background-color: var(--col-primary);
    color: #fff;
}
.entry-content tr td,
.comment-content tr td {
    border:none;
    padding: 0.5em  1.25em;
}
.entry-content tr.odd td,
.comment-content tr.odd td {
    background: var(--col-bg);
}
.entry-content ul li {
    list-style-type:none;
    list-style-position: outside;
    margin-left: 1em;
    padding-left : 15px;
    background-image : none; 
}
.entry-content ul li:before {
    content: "•";
    color: var(--col-accent);
    font-weight: bold;
    display: inline-block; 
    width: 1em;
    margin-left: -1em;
}

.entry-content ol {
    list-style: decimal;
    margin: 0 0 1.5em 1.5em;
}
.entry-content a, .entry-content a:visited, .entry-summary a, .entry-summary a:visited{
    color: var(--col-primary);
    text-decoration: underline;
}
.entry-content a:hover, .entry-summary a:hover{
    color: var(--col-accent);
}
.entry-content a.more-link, .entry-content a.more-link:visited{
    color: var(--col-primary);
    text-decoration: none;
}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
    clear: none;
    color: var(--col-primary);
}
.entry-content dfn, cite, em, i {
    font-style:italic;
}
.page-links {
    clear: both;
    margin: 0 0 1.5em;
}


/* =Aside Post Format
----------------------------------------------- */

.format-aside .entry-content {
    border-left: 4px solid var(--col-accent);
    padding-left: 1em;
}


/* =Media
---------------------------------------------- */


.site-header img,
.entry-content img,
.comment-content img,
.widget img {
    max-width: 100%; 
}
.site-header img,
.entry-content img,
.widget-img,
img[class*="align"],
img[class*="wp-image-"],

.wp-caption img {
    height: auto; 
}
.site-header img,
.entry-content img,
.widget img,
img.size-full {
    max-width: 100%;
    width: auto; 
    border-radius: 0.5rem;
}
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}
.wp-caption {
    border: 1px solid #ccc;
    max-width: 100%;
    border-radius: 0.5rem;
}
.wp-caption.aligncenter,
.wp-caption.alignleft,
.wp-caption.alignright,
.wp-caption.alignnone {
    margin-bottom: 1.5em;
}
.wp-caption img {
    display: block;
    margin: 1.2% auto 0;
    max-width: 98%;
}
.wp-caption-text {
    text-align: center;
}
.wp-caption .wp-caption-text {
    margin: 0.8075em 0;
}
#content .gallery {
    margin-bottom: 1.5em;
}
.wp-caption-text,

.gallery-caption {
    font-size: 12px;
    font-size: 1.2rem;
    color: #666;
}
#content .gallery a img {
    border: none;
    height: auto;
    max-width: 90%;
}
#content .gallery dd {
    margin: 0;
}

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

/* =Navigation
----------------------------------------------- */

.site-content .site-navigation {
    font-size: 13px;
    font-size: 1.3rem;
    margin: 0 0 1.5em;
    overflow: hidden;
}
.site-content .nav-previous {
    float: left;
    width: 50%;
}
.site-content .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}
.nav-previous a, .nav-next a {
    padding: 4px 6px;
    color: var(--col-primary);
    font-family: var(--font-stack);
    font-weight : bold;
    font-size: 12px;
    font-size: 1.2rem;
    text-transform: uppercase;
}
.nav-previous a:hover, .nav-next a:hover {
    color: var(--col-accent);

}


/* =Comments
----------------------------------------------- */

#comments {
    clear: both;
}
.bypostauthor {
}
.comments-title,
#reply-title {
    font-size: 16px;
    font-size: 1.6rem;
    font-family: var(--font-stack);
    font-weight : bold;
    color: var(--col-primary);
}
.commentlist li {
    list-style: none;
}

.commentlist,
.children {
    list-style: none;
    margin: 0;
}
.children {
    margin: 0 0 0 6%;
}
.commentlist li.comment,
.commentlist li.pingback {
    border-bottom: 1px solid rgba( 0, 0, 0, 0.2 );
    padding-left: 2.5em;
    margin-top: 2px;
}
.commentlist .children li,
.commentlist li:last-of-type {
    border: none;
}

article.comment,

li.pingback {
    overflow: hidden;
    padding: 2.5em 0 0.7em;
    position: relative;
}
.children article.comment,
.children li.pingback {
    padding-top: 1.0em;
}
.comment .avatar {
    float: left;
    margin-right: 1.25em;
    border-radius: 50%;
}
.comment-author {
    font-size: 14px;
    font-size: 1.4rem;
    color: var(--col-text-dark);
    font-weight: bold;
}
.comment-meta {
    font-size: 12px;
    font-size: 1.2rem;
}
.comment-content{
    font-size: 13px;
    font-size: 1.3rem;
    margin: 1em 0 0 4.5em;
}
.reply { 
    float:right;
    margin:0 10px 10px 0;
    text-align:center;
    background-color: var(--col-primary);
    border-radius:0.2em;
    padding:3px;
    width:50px;
}
.reply a {
    color: #fff !important;
}

.comment article {
    padding-bottom:2.79rem;
}

a.comment-reply-link,
a.comment-edit-link {
    color: #FFFFFF;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.8;
    text-decoration:none;
}

a.comment-reply-link:hover,
a.comment-edit-link:hover {
    color: var(--col-accent);
}
li.pingback {
    font-weight: bold;
}
li.pingback a {
    font-weight: normal;
}

/* Comment Form */
.comment-notes,
#commentform .form-allowed-tags,
p.nocomments,
p.logged-in-as,
#commentform label {
    font-size: 13px;
    font-size: 1.3rem;
}
.required {
    color: #ef4444; /* Standard Red */
}
#commentform label {
    font-weight: bold;
    padding: 1em 0;
    color: var(--col-primary);
}
#commentform input[type="text"] {
    margin-left: 0.5em;
}
#commentform #comment {
    margin-top: 0.6em;
}
#commentform .form-allowed-tags,
#commentform .form-allowed-tags code {
    font-size: 11px;
    font-size: 1.1rem;
}
p.nocomments {
    margin: 2.5em;
}

/* =Widgets
----------------------------------------------- */

.widget {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.8;
    margin: 0 0 0.5em;
}

.widget-title {
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    background-color: var(--col-primary);
    padding: 14px;
    border-radius: 0.2em;
    
    font-family: var(--font-stack);
    font-weight : normal;
    margin-left: -14px;
    margin-right: -14px;
    margin-top: -5px;
}
/* Search widget */

#searchsubmit {
    display: none;
}

#helpfullinks li{
    padding-bottom: 5px;
    padding-top: 5px;
    border-bottom: 1px solid #EFEFEF;
    color: #999;
}

#helpfullinks li a{
    color: #999;
}
#helpfullinks li a:hover{
    color: #333;
}

/* =Site Footer
----------------------------------------------- */

.site-info {
    font-size: 12px;
    font-size: 1.2rem;
    height : 75px;
    color: #fff;
    background-color: var(--col-primary);
    font-family: var(--font-stack);
    font-weight : 300;
    box-shadow: inset 1px 1px 8px 0px rgba(0, 0, 0, 0.3);
}
.site-info-container {
    width : 100%;
    max-width: 960px;
    margin : 0 auto;
}
.site-info-container .table-layout {
    display : table;
    table-layout : fixed;
    width : 100%;
}
.site-info-container .table-layout .table-row {
    display : table-row;
}
.site-info-container .table-layout .table-cell {
    display : table-cell;
    vertical-align : middle;
    height : 75px;
}
.site-info-container .table-layout .table-cell.x1 {
    padding-left : 8px;
    text-align : left;
}
.site-info-container .table-layout .table-cell.x2 {
    padding-right : 8px;
    text-align : right;
    width : 450px;
}
html[lang="fr-FR"] .site-info-container .table-layout .table-cell.x2 {
    width : 510px;
}
.site-info-container .section.group {
    margin : 0px;
    padding-top : 0px;
    padding-bottom : 0px;
}

/* Custom Home featured areas
------------------------------------------------------ */
.featuretext_top {
}
div.featuretext_top {
    padding:  36px 2px 22px 2px;
    margin : 0;
    border-bottom : 1px solid #e5e7eb;
    background-color : #ffffff;
}
hr.featuretext_top {
    height: 3px;
    padding : 0;
    margin: 0 0 10px 0;
    background-color : var(--col-primary);
    display : inline-block;
    width : 72px;
    text-align : left;
}
.featuretext_top h3{
    color: var(--col-primary);
    padding: 6px;
    margin: 0;
    text-align:center;
    font-size:2.4rem;
    font-size:24px;
    font-family: var(--font-stack);
    font-weight : normal;
}

.featuretext_top p{
    color: #666;
    padding: 0;
    margin: 0;
    font-size:1.8rem;
    font-size:18px;
}

.featuretext {
    border-radius: 0.5rem;
    margin-bottom:20px;
    padding: 20px;
    background: #fff;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
.featuretext h1{
    color: var(--col-primary);
    padding: 10px 0;
    margin: 0;
    font-size : 18px;
    font-size : 24px;
    font-family: var(--font-stack);
    font-weight : bold;
}

.featuretext h3{
    font-size:1.4rem;
    font-size:14px;
    color: var(--col-primary);
    font-weight: bold;
    margin: 0;
    border-bottom: 1px solid #EFEFEF;
    margin-bottom: 10px;
    padding-bottom: 4px;
}

.featuretext p{
    color: var(--col-text-dark);
    font-size: 14px;
    line-height : 1.25;
    font-weight : normal;
}


/* CUSTOM HOMEPAGE WIDGET LAYOUTS */
/* SECTIONS  ============================================================================= */

.section {
    clear: both;
    padding: 6px;
    margin: 0px;

}

.section_thumbnails {
    clear: both;
    border-bottom: 1px solid #eee;
    margin-bottom: 50px;
}
.section_thumbnails .col{
    margin: 0px;
}
#colophon .section {
    padding : 0.8em;
}

.section_thumbnails h3{
    font-family: var(--font-stack);
    font-weight : normal;
    color: var(--col-primary);
    font-size:2rem;
    font-size: 20px;
    padding: 2px;
    border-bottom: 1px solid #eee;
}
.thumbs-more-link{
    font-family: var(--font-stack);
    font-weight : bold;
    font-size: 12px;
    font-size: 1.2rem;
    text-transform: uppercase;
    float: right;
    margin-top: 2px;
    padding-right: 10px;
    color: var(--col-accent);
}

/* GROUPING  ============================================================================= */


.group:before,
.group:after {
    content:"";
    display:table;
}
.group:after {
    clear:both;
}
.group {
    zoom:1; /* For IE 6/7 (trigger hasLayout) */
}

/* GRID COLUMN SETUP   ==================================================================== */

.col {
    display: block;
    float:left;
    margin: 1% 0 1% 1.6%;
}

.col:first-child { margin-left: 0; } /* all browsers except IE6 and lower */

.post-thumbnail {
    position: relative;
    margin-top: 4px;
    margin-right: 4px;
}

.blog-lists-title {
    position: relative;
    width: 70%;
    display: inline;
    float: left;
    margin-left: 8px;
    font-size: 12px;
    color: #999;
}

.blog-lists-title a{
    color: var(--col-primary);
}



/* =IE Styles
----------------------------------------------- */

#ie8 .site-header img,
#ie8 .entry-content img,
#ie8 img.size-full,
#ie8 .entry-thumbnail img,
#ie8 .widget img,
#ie8 .wp-caption img {
    width: auto; /* Prevent stretching of full-size images with height and width attributes in IE8 */
}

/* GRID OF EIGHT   ============================================================================= */
    
.span_8_of_8 {
    width: 100%;
}
.span_7_of_8 {
    width: 87.3%; 
}
.span_6_of_8 {
    width: 74.6%; 
}
.span_5_of_8 {
    width: 61.9%; 
}
.span_4_of_8 {
    width: 49.2%; 
}
.span_3_of_8 {
    width: 36.5%;
}
.span_2_of_8 {
    width: 23.8%; 
}
.span_1_of_8 {
    width: 11.1%; 
}
.header-image{
    background-image:url('https://certificationcanada.org/wp-content/uploads/2014/12/home-slide-1.jpg');
    background-position: center top;
    background-color:#fff;
    height:103px;
}
.home .header-image {
    display : none;
}
.header-image img {
width: 100%;
height: auto;

}
.page-header-content-wrapper {
    max-width : 960px;
    position : relative;
    height : 100%;
    margin : 0 auto;
}
.page-header-content {
    color : #ffffff;
    font-weight : bold;
    font-size: 26px;
    line-height : 1;
    background-color : rgba(28, 89, 64, 0.9); /* Primary color with opacity */
    display : inline-block;
    vertical-align : middle;
    padding : 20px 15px;;
    
    position : absolute;
    left : 9px;
    top : 20px;
}

/************************************************************************************
MEDIA QUERIES
*************************************************************************************/
/* for 1000px or less */
@media screen and (max-width: 979px) {
    html body .header_container {
        max-width : 100%;
    }
    .site-logo {
        padding-left : 30px;
    }
    div.menu-trigger-container {
        padding-right : 30px;
        display : inline-block;
    }
    .mobile-utility-nav {
        display : table;
        table-layout : fixed;
        width : 100%;
        border-collapse : separate;
        border-bottom : 1px solid #ffffff;
        margin-bottom : 10px;
    }
    .mobile-utility-nav .tr {
        display : table-row;
    }
    .mobile-utility-nav .tr .td {
        display : table-cell;
        vertical-align : middle;
        width : 33%;
        text-align : center;
        padding : 15px 0;
    }
    .mobile-utility-nav .tr .td:first-child {
        padding-left : 25px;
        text-align : left;
    }
    .mobile-utility-nav .tr .td:last-child {
        padding-right : 25px;
        text-align : right;
    }
    html body .site-navigation h1 ,
    html body #utility-nav {
        display : none;
    }
    .header_container {
        height: 100%;
        width: 100%;
    }
    .site-header .site-introduction {
        text-align: center;
        width: 100%;
        padding: 10px 0;
    }
    #masthead-wrap {
        position : relative;
        -webkit-box-shadow: none;
        -moz-box-shadow:    none;
        box-shadow:         none;
    }
    #page {
        padding-top : 0px;
    }
    #wrap {
        padding:0;
        width: 100%;    
    }
    .header_container {
        height: 100%;
        width: 100%;
    }
    #masthead .site-introduction {
        float: none;
        width: 100%;
    }
}
@media only screen and (max-width: 960px) {
    #primary_home .entry-content {
        padding : 0.8em;
    }
}
/* for 800px or less */
@media only screen and (max-width: 860px) {
    .header_container {
        height: 100%;
        width: 100%;
    }
}

/* for 800px or less */
@media only screen and (max-width: 800px) {
    #second ,
    #main {
        overflow: visible;
    }
    #second_content,
    #content,
    #primary,
    #secondary,
    #tertiary {
        background: none;
        float: none;
        margin: 0;
        padding: 0;
    }
    #primary,
    #secondary,
    #tertiary {
        width: 100%;
    }
    #sidebar {
        display : none;
    }
    .site-header .site-introduction,
    #second ,
    #main {
        padding: 0.8em;
    }
    .header_container {
        height: 100%;
        width: 100%;
    }
    
}


/* for 768px or less */
@media screen and (max-width: 768px) {
    .site-info-container .table-layout ,
    .site-info-container .table-layout .table-row ,
    .site-info-container .table-layout .table-cell {
        display : block;
        height : auto;
    }
    .site-info-container .table-layout .table-cell {
        width : 100% !important;
        padding : 30px 8px 8px 8px;
        text-align : center !important;
    }
    html body .site-info-container .table-layout .table-cell.x2 {
        display : none !important;
    }
}   

/* for 600px or less */
@media screen and (max-width: 600px) {
/*
    .site-logo {
        height : 60px;
    }
*/
    #branding img {
        display: none;
    }
    .header-image {
        width:100%;
        margin-top: 0px;
        margin-left: auto;
        margin-right: auto;
        
    }

    .header_container {
        height : 83px;
        width: 100%;
    }

    .site-main {
    border: 0;
}
}

/* for 390 or less */
@media screen and (max-width: 390px) {
    .site-logo {
        padding-left : 15px;
    }
    div.menu-trigger-container {
        padding-right : 15px;
        padding-top : 28px;
    }
    a#menu-trigger {
        cursor : pointer;
        display : inline-block;
        width : 25px;
        height : 23px;
        background-image : url( 'images/menu-trigger-small.png' );
        z-index : 9999;
    }
    a#menu-trigger.close {
        background-image : url( 'images/close-menu-small.png' );
    }
}
/* for 390 or less */
@media screen and (max-width: 340px) {
    div.menu-trigger-container {
        padding : 0;
        width : 25px;
        height : 23px;
        position : absolute;
        right : 10px;
        top : 30px;
        z-index : 999999;
    }
}
/* --- Smartphones (portrait and landscape) --- */

@media screen and (max-width : 480px) {

    #masthead .site-introduction {
        float: none;
        padding: 0;
        padding-left: 4px;
        width: 100%;
    }
    
}

/* --- IPhone5 (portrait and landscape) --- */

@media screen and (max-width : 568px) {

    #masthead .site-introduction {
        float: none;
        padding: 0;
        width: 100%;
    }
}


/* REMOVE MARGINS AS ALL GO FULL WIDTH AT 480 PIXELS */

@media only screen and (max-width: 480px) {
    .col { 
        margin: 1% 0 1% 0%;
    }
}

/* GRID OF TWO   ============================================================================= */


.span_2_of_2 {
    width: 100%;
}

.span_1_of_2 {
    width: 49.8%;
}

/* GO FULL WIDTH AT LESS THAN 480 PIXELS */

@media only screen and (max-width: 480px) {
    .span_2_of_2 {
        width: 100%; 
    }
    .span_1_of_2 {
        width: 100%; 
    }
}

/* GRID OF THREE   ============================================================================= */
    
.span_3_of_3 {
    width: 100%; 
}
.span_2_of_3 {
    width: 66.1%; 
}
.span_1_of_3 {
    width: 32.2%; 
}
/* GO FULL WIDTH AT LESS THAN 480 PIXELS */

@media only screen and (max-width: 480px) {
    .span_3_of_3 {
        width: 100%; 
    }
    .span_2_of_3 {
        width: 100%; 
    }
    .span_1_of_3 {
        width: 100%;
    }
}

/* GO FULL WIDTH AT LESS THAN 480 PIXELS */

@media only screen and (max-width: 480px) {
    .span_8_of_8 {
        width: 100%; 
    }
    .span_7_of_8 {
        width: 100%; 
    }
    .span_6_of_8 {
        width: 100%; 
    }
    .span_5_of_8 {
        width: 100%; 
    }
    .span_4_of_8 {
        width: 100%; 
    }
    .span_3_of_8 {
        width: 100%; 
    }
    .span_2_of_8 {
        width: 100%; 
    }
    .span_1_of_8 {
        width: 100%; 
    }
    .featuretext_top h3{
    font-size:1.2rem;
    font-size:12px;
    padding: 6px;
    }
    .featuretext_top p{
    font-size:1.2rem;
    font-size:12px;
    padding: 6px;
    }
}
.homepage-badge{
    width: 298px;
    height: 50px;
    border:1px solid #000;
    margin:10px;
    padding: 10px;
    float: left;
}
#utility-navigation {
    float:right;
    height: 30px;
    
}
ul.sub-menu{
    margin-bottom: 0px;
    margin-left: 0px;
}
#secondary .sub-menu li{
    padding-left: 7px;
    padding-right: 7px;
    border-bottom: 1px solid #d7d7d7;
    
}
#secondary li.current_page_item {
    background-color : #ebebeb;
}
#secondary li.current_page_item li {
    background-color : #F7F7F7;
}
#secondary .sub-menu li a, #secondary .menu li a{
    font-size: 14px;
    font-size: 1.4rem;
    display : block;
    padding-bottom : 5px;
}
#secondary .menu a:hover{
    color: var(--col-accent) !important;
    text-decoration: none;
}
#secondary .menu li.menu-item-has-children a{
    
    color: var(--col-primary);
    font-weight: bold;
}

#secondary .sub-menu li a, #secondary .menu li.menu-item-has-children li a{
    color:var(--col-text-dark);
    font-weight: normal;
}

html body #secondary a:hover ,
html body #secondary a {
    color:var(--col-primary) !important;
}
#secondary .menu li.menu-item-has-children{
    border-bottom:none;
    margin-bottom:10px;
}
#secondary .sub-menu li.current-menu-item a, #secondary .menu li.current-menu-item a, #secondary .menu li.menu-item-has-children li.current-menu-item a{
    font-weight: bold;
}
#secondary .sub-menu li.current-menu-item li a, #secondary .menu li.current-menu-item li a {
    font-weight: normal;
}
#sidebar{
    width: 24%;
    float: left;
    clear:right;
    
}
#utility-nav{
    clear: right;
    float: right;
    margin-bottom: 0px;
    padding: 4px 0px;
    margin-top: 5px;
    border-bottom: 1px solid #fff;
    margin-right: 33px;
}
#utility-nav > div{
    display:inline-block;
    vertical-align : top;
}
#ulility-nav .widget ul, #utility-nav .widget{
    margin:0;
    line-height: normal;
}
.widget_polylang ul{
    margin:0;
}
.widget_polylang li{
    border-bottom:none;
    padding:0;
}
a.utility-nav{
    margin: 0px 10px 0px 10px;
}
a.utility-nav:first-child{
    margin-left: 0;
}
.widget_polylang li a{
    margin-left:10px;
    text-decoration: none;
    font-size: 16px;
    line-height:1;
    color: #fff;
}

.execphpwidget {
    overflow : hidden;
}

/********
New home page slider

**************/

.home-slider {
    width : 100%;
    height : 393px;
    position : relative;
    overflow : hidden;
}
.home-slides {
    width : 100%;
    height : 100%;
    position : relative;
}
.home-slide {
    position : absolute;
    z-index : 10;
    left : 0px;
    top : 0px;
    width : 100%;
    height : 100%;

    background-position : center top;
        
    display : none;
}
.home-slide.linked {
    cursor : pointer;
}
.home-slide:first-child {
    display : block;
}

.home-slider-navigation {
    position : absolute;
    left : 0px;
    bottom : 34px;
    width : 100%;
    height : 18px;
    text-align : center;
    z-index : 11;
}

.home-slider-navigation span {
    display : inline-block;
    margin : 0 5px;
    width : 18px;
    height : 18px;
    background-image : url( 'images/home-slider/radio-off.png' );
    cursor : pointer;
}
.home-slider-navigation span.current {
    background-image : url( 'images/home-slider/radio-on.png' );
}

.home-slide .home-slide-content {
    position : absolute;
    bottom : 94px;
    max-height : 280px;
    overflow : hidden;
    height : auto;
    
    font-size : 14px;
    line-height : 1.5;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    
    width : auto;
    max-width : 500px;

    padding : 20px 20px;
        
}
.home-slide:nth-child(odd) .home-slide-content {
    left : 50%;
    margin-left : -420px;
    background-color : rgba( 28 , 89 , 64 , 0.9 ); /* Primary Color */
}
.home-slide:nth-child(even) .home-slide-content {
    right : 50%;
    margin-right : -420px;
    background-color : rgba( 197 , 217 , 51 , 0.9 ); /* Accent Color */
}
.home-slide .home-slide-content a,
.home-slide .home-slide-content a:visited ,
.home-slide .home-slide-content a:focus,
.home-slide .home-slide-content a:active ,
.home-slide .home-slide-content a:hover ,
.home-slide .home-slide-content h1,
.home-slide .home-slide-content h2,
.home-slide .home-slide-content {
    color : #ffffff; /* Contrast text */
    font-weight : normal;
    text-decoration : none;
}

.home-slide .home-slide-content h1 {
    font-size : 28px;
    line-height : 1.1;
    margin-bottom : 5px;
    margin-top : 0px;
}

.home-slide .home-slide-content h2 {
    font-size : 20.01px;
    line-height : 1.1;
    margin-bottom : 0px;
    margin-top : 0px;
}
.home-slide .home-slide-content p {
    text-align : justify;
}
.home-slide .home-slide-content > p:last-child {
    margin-bottom : 0px;
}

@media screen and (max-width: 960px) {
    .home-slide#home_slide_1099 {
        background-position : top left -1290px ;
    }
}
@media screen and (max-width: 420px) {
    .home-slide#home_slide_1099 {
        background-position : top left -1390px ;
    }
}

@media screen and (max-width: 840px) {
    .home-slide#home_slide_1331 {
        padding-right : 804px;
        margin-right : -804px;
        background-position : right top;
    }
}


@media screen and (max-width: 920px) {
    .home-slide:nth-child(odd) .home-slide-content {
        left : 20px;
        margin-left : 0px;
    }
    .home-slide:nth-child(even) .home-slide-content {
        right : 20px;
        margin-right : 0px;
    }
}
@media screen and (max-width: 500px) {
    .home-slide:nth-child(odd) .home-slide-content ,
    .home-slide:nth-child(even) .home-slide-content {
        position : relative;
        margin : 0 auto;
        width : 95%;
        left : 0px;
        right : 0px;
        top : 94px;
    }
}
@media screen and (max-width: 400px) {
    .home-slide:nth-child(odd) .home-slide-content ,
    .home-slide:nth-child(even) .home-slide-content {
        position : relative;
        margin : 0 auto;
        width : 95%;
        left : 0px;
        right : 0px;
        top : 50px;
        padding : 10px;
    }
}
.content-top-wrapper {
    padding:  36px 2px 22px 2px;
    margin : 0;
    border-bottom : 1px solid #e5e7eb;
    background-color : #ffffff;
}
.content-top {
    color: var(--col-primary);
    font-weight : normal;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align : center;
}

.home-feature {
    width : 240px;
    height : auto;
    margin : 0 auto;
    padding-bottom : 40px;
}
.home-feature .home-feature-column {
    margin : 0 auto;
}
.home-feature .home-feature-thumb {
    width : 240px;
    height : 160px;
    overflow : hidden;
    border-radius: 0.25rem;
}
.home-feature .home-feature-thumb img {
    max-width : 100%;
    height : auto;
}
.home-feature h1 {
    color: var(--col-primary);
    padding: 10px 0;
    margin: 0;
    font-size : 18px;
    font-weight : bold;
}
.home-feature h1 a {
    color : var(--col-primary) !important;
    text-decoration : none !important;
}
.home-feature h1 a:hover {
    text-decoration : underline !important;
    color: var(--col-accent) !important;
}
.home-feature hr {
    height: 3px;
    padding : 0;
    margin: 0 0 10px 0;
    background-color : var(--col-primary);
    display : inline-block;
    width : 72px;
    text-align : left;
}
.home-feature p {
    color: var(--col-text-dark);
    font-size: 14px;
    line-height : 1.25;
    font-weight : normal;
}
.home-feature p:last-child {
    margin-bottom : 0px;
}
/* trigger hasLayout in IE */
.block-list, .block-list li {zoom: 1;}

.block-list {
    font-size: 0 !important; /* remove physical spaces between items */
    text-align: justify;
    text-justify: distribute-all-lines; /* distribute items in IE */
    list-style-type: none;
    margin: 0;
    padding: 0;
}

/* fully justify all items in browsers other than IE */
.block-list:after {
    content: "";
    display: inline-block;
    width: 100%;
}

.block-list li {
    text-align: left; /* customize to suit */
    vertical-align: top; /* can customize to suit */
    display: inline-block;
    width: 31.3%; /* optional, only need for text content to wrap */
    margin-bottom: 1em; /* optional, customize to suit */
}

/* IE hacks to make li's line up */
*+html .block-list li {display: inline;}
* html .block-list li {display: inline;}


a.button {
    font-family: var(--font-stack);
    font-weight : bold;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1;
    color : var(--col-primary) !important;
    text-decoration : none;
    background-color : var(--col-accent);
    text-transform : uppercase;
    min-width : 90px;
    padding : 10px;
    text-align : center;
    vertical-align : middle;
    display : inline-block;
    text-decoration : none;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
a.button:hover {
    background-color : #d1e231;
}

@media screen and (max-width: 849px) {
    .block-list, .block-list li {
        display : block;
        width : 100%;
    }   
    .home-feature {
        width : 90%;
        text-align : center;
    }
    .home-feature-thumb {
        margin : 0 auto;
    }
}

#secondary .menu li a {
    line-height : 18px;
}
#colophon .widget {
    line-height : 1.3;
}



/******
popup preview
****************/
#popup-preview {
    position : absolute;
    z-index : 10000;
    top : 180px;
    display : none;
    -webkit-box-sizing:         border-box !important;
    -moz-box-sizing:            border-box !important;
    box-sizing:                 border-box !important;
    padding : 30px 110px;
    border : 1px solid #d7d7d7;
    background-color : #ffffff;
}
div.pp-image-wrapper {
    height : auto;
    text-align : center;
    position : relative;
}
img#pp-image {
    max-width : 100%;
    height : auto !important;
}
@media only screen and (min-width:686px) {
    #popup-preview {
        max-width : 100%;
        width : 684px;
        left : 50%;
        margin-left : -343px;
    }
}
@media only screen and (max-width:685px) {
    #popup-preview {
        width : 99.999%;
        left : 0px;
    }
}

#popup-overlay {
    position : fixed;
    z-index : 9999;
    left : 0px;
    top : 0px;
    width : 100%;
    height : 100%;
    background-color : rgba( 255,255,255,0.70 );
    display : none;
    cursor : pointer;
}
.pp-close {
    position : absolute;
    right : 20px;
    top : 18px;
    width : 26px;   
    height : 24px;
    background-image : url( 'images/big-x.png' );
    cursor : pointer;
}
.pp-close:hover {
    background-image : url( 'images/big-x-hover.png' );
}
.pp-buttons {
    text-align : center;
    padding-top : 40px;
}

@media screen and (max-width: 600px) {
    #popup-preview {
        padding : 15px 55px;
    }
}
@media screen and (max-width: 400px) {
    #popup-preview {
        padding : 10px 50px;
    }
}
.map-view {
    font-family: var(--font-stack);
    font-weight : normal;
}
.map-view ,
.map-view a {
    color : var(--col-text-dark) !important;
}
.map-view p:first-child {
    margin-bottom : 10px;
}

table.map-list-table {
    border-collapse : collapse;
}
table.map-list-table thead th {
    background-color : #20510a;
    border : 1px solid #bfbfbf;
    color : #ffffff;
    font-family: "Proxima Nova","Open Sans","Gill Sans MT","Gill Sans",Corbel,Arial,sans-serif;
    font-weight : bold;
    font-size : 12px;
    text-align : center;
    vertical-align : top;
    padding : 10px;
    
}
table.map-list-table {
    border : none !important;
    border-collapse : separate;
}
table.map-list-table thead th:first-child {
    -webkit-border-top-left-radius: 4px;
    -moz-border-radius-topleft: 4px;
    border-top-left-radius: 4px;
}
table.map-list-table thead th:last-child {
    -webkit-border-top-right-radius: 4px;
    -moz-border-radius-topright: 4px;
    border-top-right-radius: 4px;
}
table.map-list-table tbody td {
    color : #484744;
    vertical-align : top;
    padding : 15px 10px;
    font-weight : 300;
    text-align : center;
    border-left : 1px solid #d3d3d3;
    border-bottom : 1px solid #d3d3d3;
}
table.map-list-table tbody td:last-child {
    border-right : 1px solid #d3d3d3;
}
table.map-list-table tbody tr:last-child td:first-child {
    -webkit-border-bottom-left-radius: 4px;
    -moz-border-radius-bottomleft: 4px;
    border-bottom-left-radius: 4px;
}
table.map-list-table tbody tr:last-child td:last-child {
    -webkit-border-bottom-right-radius: 4px;
    -moz-border-radius-bottomright: 4px;
    border-bottom-right-radius: 4px;
}

span.info-tip-icon {
    display : inline-block;
    width : 11px;
    height : 11px;
    background-repeat : no-repeat;
    background-image : url( 'images/info.png' );
    background-position : center center;
    position : relative;
    cursor : pointer;
    padding : 3px;
    margin-top : -3px;
    vertical-align : top;
}
span.info-tip-icon.expanded ,
span.info-tip-icon:hover {
    background-image : url( 'images/info-hover.png' );
}
span.info-tip-icon > span {
    display : none;
}
span.info-tip-icon.expanded > span {
    display : block;
    position : absolute;
    top : 100%;
    width : 210px;
    padding-top : 7px;
    height : 50px;
    height : auto !important;
}
span.info-tip-icon:not(.right) > span {
    left : -12px;
}
span.info-tip-icon.right > span {
    right : -12px;
}
span.info-tip-icon.expanded > span span {
    background-color : #ffffff;
    color : #8e8d8d;
    font-style : italic;
    font-size : 12px;
    border : 1px solid #dedede;
    display : block;
    border-radius : 4px;
    padding : 10px;
    height : 50px;
    height : auto !important;
    text-align : left;
    font-weight : normal;
}
span.info-tip-icon img {
    top : 0px;
    z-index : 99999;
    position : absolute;
    left : 1
}
span.info-tip-icon:not(.right) img {
    left : 13px;
}
span.info-tip-icon.right img {
    right : 13px;
}

.entry-content h2:first-child {
    font-size : 20px;
}

/* =FPAC Custom Layout Styles
----------------------------------------------- */

/* 1. The White Content Box */
.fpac-content-box {
    background: #ffffff !important;
    padding: 40px !important;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    margin: 40px auto;
    max-width: 100%;
    border: 1px solid #e5e7eb;
}

/* 2. Map Image Styling */
.map-image {
    display: block;
    margin: 0 auto 30px auto;
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* 3. Legend Grid System */
.fpac-legend-container {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 30px;
    margin-bottom: 40px;
    width: 100%;
    box-sizing: border-box;
    justify-content: space-between;
}

/* 4. Legend Items (The Colored Cards) */
.fpac-legend-item {
    background-color: #F9F8F6 !important; /* Beige Background */
    border: 1px solid #E5E7EB !important;
    border-radius: 8px;
    padding: 15px 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-sizing: border-box;
    flex: 1 1 200px;
}

.fpac-legend-item:hover {
    border-color: #d1d5db !important;
    transform: translateY(-2px);
    transition: transform 0.2s ease;
}

.fpac-legend-item > div {
    display: flex;
    flex-direction: column;
}

.fpac-legend-item strong {
    display: block;
    color: var(--col-primary, #1C5940);
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 1.2;
    margin: 0 !important;
}

.fpac-legend-item span {
    font-size: 12px !important;
    color: #6b7280;
    margin: 2px 0 0 0 !important;
    display: block;
}

/* Dots */
.fpac-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
    display: block;
}

/* Dot Colors */
.fpac-dot.yellow { background-color: #facc15; }
.fpac-dot.orange { background-color: #f97316; }
.fpac-dot.red    { background-color: #ef4444; }
.fpac-dot.blue   { background-color: #3b82f6; }

/* 5. Typography Fixes inside the card */
.fpac-content-box h3 {
    margin-top: 0 !important;
    padding-top: 20px;
    color: var(--col-primary, #1C5940);
    font-size: 18px;
    border: none;
}
.fpac-content-box h3:first-child {
    padding-top: 0;
}

.fpac-content-box p, 
.fpac-content-box li {
    color: #374151;
    font-size: 14px;
    line-height: 1.6;
}

.fpac-content-box li {
    list-style: none;
    position: relative;
    padding-left: 15px;
    margin-bottom: 5px;
}

.fpac-content-box li::before {
    content: "•";
    color: var(--col-accent, #C5D933);
    font-weight: bold;
    position: absolute;
    left: 0;
}
/* =FPAC Header & Title Redesign (User Request)
----------------------------------------------- */
:root {
    /* User Provided Variables */
    --yellow-green: #96ca3c;
    --sea-green: #008a54;
    --steel-blue: #267894;
    --dark-green: #174030;
    --dark-slate-grey: #2b473c;
    --dark-slate-grey-3: #213d32;
    --dark-slate-grey-2: #212e29;
    --ivory: #f5f3e3;
    --floral-white: #faf9f3;
    --cadet-blue: #3f97b5;
    --beige: #dce4ce;
    --pale-goldenrod: #c0d897;
    --ar22-1: #19543e;
    --ar22-2: #066745;
    --ar22-4: #8dc246;
    --ar22-text: #bed1bc;
    --ar22-3: #5fa052;
    --sea-green-2: #008a54;
    --tan: #d8bf97;
}

/* Container for Title + Separator + Description */
.fpac-intro-section {
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    box-sizing: border-box;
    padding: 20px 20px 0px 20px; /* Added padding for spacing */
    font-family: "Usual", sans-serif; /* User requested font */
}

/* 1. The Big Title */
h1.fpac-page-title {
    color: #333333 !important; /* Overriding default dark green */
    font-family: "Usual", sans-serif;
    font-weight: 800; /* Bold/Heavy */
    font-size: 5rem;  /* Large size to match screenshot */
    line-height: 1.1;
    margin-bottom: 25px;
    text-transform: none; /* Fixes previous uppercase styling */
    border: none !important; /* Removes default theme underlines */
    padding: 0;
}

/* 2. The Green Separator Line */
.fpac-title-separator {
    width: 560px; /* Approximate width from screenshot */
    height: 6px;
    background-color: var(--yellow-green); /* #96ca3c */
    margin: 0 auto 35px auto; /* Centered with spacing below */
    display: block;
}

/* 3. The Description Text */
.fpac-page-description {
    color: #333;
    font-size: 1.6rem; /* Slightly larger for readability */
    line-height: 1.4em;
    font-weight: 400;
    max-width: 940px;
    margin: 0 auto;
}

/* Responsive adjustment for title */
@media screen and (max-width: 768px) {
    h1.fpac-page-title {
        font-size: 3rem;
    }
}

/* ==========================================================================
   CLEAN MOBILE OVERRIDES (Fixed to prevent blowout)
   ========================================================================== */

@media screen and (max-width: 768px) {
    /* Fix global container boundaries */
    html, body {
        overflow-x: hidden;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    
    #page, #wrap, .site-main, #primary, #content {
        width: 100% !important;
        box-sizing: border-box;
        overflow-x: hidden;
    }

    /* Force all embedded elements to behave */
    img, iframe, object, embed, table {
        max-width: 100% !important;
        height: auto;
    }

    /* Target specific hardcoded widths causing the blowout */
    .fpac-title-separator {
        width: 80% !important; /* Overrides the broken 560px width */
        max-width: 250px;
        margin-left: auto;
        margin-right: auto;
    }

    /* HEADER FIXES */
    .header_container {
        width: 100% !important;
        margin: 0;
        padding: 0;
    }
    .fpac-top-bar {
        height:40px !important;
    }
    .top-bar-inner {
        flex-direction: row !important;
        justify-content: flex-end !important;
        padding: 0px 8px !important;
    }
    .top-social {
        display: none !important; /* Hide social icons */
    }
    .top-utility {
        padding: 2px 20px!important;
        justify-content: flex-end !important;
        gap: 15px !important;
    }
    .fpac-main-header {
        height: auto !important;
        padding: 10px 15px !important;
    }
    .header-inner {
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
    }
    .site-logo {
        padding: 0 !important;
        margin: 0 !important;
    }
    .logo-img {
        height: 40px !important;
        width: auto !important;
    }
    /* Hamburger Menu Resurrect */
    .fpac-nav-menu {
        display: none !important; 
    }
    .menu-toggle, #menu-trigger {
        display: block !important;
        background: transparent;
        border: none;
        color: #fff;
        font-size: 28px;
        padding: 5px;
        margin: 0;
    }

    /* CONTENT FIXES */
    h1.fpac-page-title {
        font-size: 3rem !important;
        padding: 0 15px;
        word-wrap: break-word;
    }
    .fpac-content-box {
        width: 100% !important;
        box-sizing: border-box;
        padding: 20px !important;
        margin: 20px 0 !important;
    }

    /* TABLE SCROLL FIX */
    table.map-list-table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch; /* Smooth iOS scrolling */
    }
    table.map-list-table th, 
    table.map-list-table td {
        white-space: nowrap; /* Prevents columns from squishing into unreadable narrow towers */
    }

    /* FOOTER FIXES */
    .site-footer {
        padding: 40px 20px !important;
        overflow: hidden;
    }
    .fpac-footer-columns {
        flex-direction: column !important;
        gap: 40px !important;
        width: 100%;
    }
    /* Fix min-width blowouts on footer columns */
    .fpac-col-brand, .fpac-col-links, .fpac-col-form, .links-group {
        width: 100% !important;
        min-width: 100% !important; /* Overrides 300px/320px */
        flex: none !important;
        display: block;
        box-sizing: border-box;
    }
    .fpac-col-links {
        display: flex !important;
        flex-direction: column !important;
        gap: 30px !important;
    }
    .links-title {
        border-bottom: 2px solid #3f97b5 !important;
    }
    .form-block {
        width: 100% !important;
        box-sizing: border-box;
        background: #19543e !important;
        border-radius: 16px !important; 
        padding: 30px 20px !important;
    }
    .form-row {
        flex-direction: column !important;
        gap: 15px !important;
    }
    .form-block input[type="text"],
    .form-block input[type="email"] {
        width: 100% !important;
        box-sizing: border-box;
    }
    .form-block button {
        width: auto !important;
        display: inline-block;
    }
    .fpac-footer-bottom {
        flex-direction: column !important;
        text-align: center !important;
        gap: 20px !important;
    }
    .fpac-bottom-links {
        justify-content: center !important;
        flex-direction:  !important;
        gap: 10px !important;
    }
    .fpac-copyright {
        text-align: center !important;
    }
}