/* Theme Name: NSI
Theme URI: https://nsi.ie
Author: crimmins
Description: This theme was created with Pinegrow Web Editor */
:root {
    --nsi-type-color: #494c4f;
    --nsi-heading-color: #828584;
    --nsi-link-color: #bb7766;
    --nsi-hover-color: #327662;
    --nsi-active-color: #327662;
    --RAL-steel-blue: #232C3F;
    --RAL-pearl-gold: #927549;
    --RAL-silver-grey: #8F999F;
    --nsi-bronze: #b08d57;
    --RAL-copper-brown: #8F4E35;
    --nsi-nickel: #b5b6b5;
    --nsi-nickel-T: #e9ecefdd;
    --RAL-signal-white: #f4f4f4;
    --RAL-patina-green: #327662;
    --bs-primary-bg-subtle: #c9cccf !important;
}

html * {
    font-family: "EB Garamond", serif;
    color: var(--nsi-type-color);
    font-size: 18px;
    cursor: default;
}

a {
    color: var(--nsi-link-color);
}

a:hover {
    color: var(--nsi-hover-color);
}

a.active {
    color: var(--nsi-active-color);
}

p,
p a {
    font-weight: 400;
    padding: 0 0 0.3rem 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    color: var(--nsi-heading-color) !important;
    padding: 1px 4px;
}

h1,
h1 a {
    padding: 0.3rem 0;
    font-size: 2rem;
}

h2,
h2 a {
    padding: 0 0 1rem 0;
    font-size: 2rem;
}

h3,
h3 a {
    padding: 1rem 0;
    font-size: 1.5rem;
    font-weight: 400;
}

h4,
h4 a {
    padding: 10px 0 0;
    font-size: 1rem;
}

h5,
h5 a {
    padding: 0.3rem 0;
    font-size: .75rem;
}

h6 {
    padding: 0.3rem 0;
    font-size: .5rem;
}

b,
strong {
    font-weight: 600;
}

/* =========== NAVIGATION MENUS =========== */
#cc_nav-primary {
    background-color: var(--nsi-nickel-T);
    padding: 20px;
    margin-bottom: -120px;
    z-index: 999 !important;
}

#cc_nav-primary h1 {
    font-size: 1.5rem;
    color: var(--nsi-type-color) !important;
    margin-bottom: 0;
    padding-bottom: 0;
    line-height: 1.5rem;
}

#cc_nav-primary h1 span {
    font-size: 1rem;
    color: var(--nsi-type-color);
}

.cc_navbar-brand img {
    display: inline;
    height: 5rem;
    margin-right: .5rem;
}

#cc_scrollspy-nav {
    top: 120px;
}

.nav-item a {
    margin-bottom: 5px;
    color: var(--nsi-link-color);
    font-weight: 500 !important;
    font-size: 1rem !important;
    padding: 0.5rem !important;
    border: none;
    background-color: var(--RAL-signal-white);
}

#cc_nav-primary .nav-item a {
    margin-left: 5px;
}

.nav-item a:hover,
#cc_scrollspy-nav li a:hover {
    background-color: var(--nsi-hover-color);
    color: var(--RAL-signal-white) !important;
}

.nav-item a.active,
#cc_scrollspy-nav li a.active {
    color: var(--RAL-signal-white) !important;
    background-color: var(--nsi-link-color);
}

ul.dropdown-menu {
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    background-color: #00000000 !important;
}

.dropdown-item {
    z-index: 999;
}

/* remove dropdown arrows */
.dropdown-toggle::after {
    display: none !important;
}

/* SCROLLSPY CONTENT */
.cc_ss-section {
    padding-top: 120px;
    margin-top: -120px;
    margin-bottom: 40px;
}

.cc_ss-section article div.row {
    border-top: 1px solid var(--nsi-heading-color);
    padding-top: 1.5rem;
}

.cc_ss-section:last-child {
    padding-bottom: 4rem;
    border-bottom: 2rem solid var(--RAL-silver-grey);
}

/* =========== FOOTER =========== */
#cc_footer {
    margin-top: 5rem;
    padding: 1rem 0;
    background-color: var( --RAL-steel-blue);
}

#cc_footer * {
    color: var(--RAL-signal-white);
}

#cc_footer dd {
    display: block;
    padding: 0 0 0 2rem;
    margin-bottom: 0.5rem;
}

#cc_footer dd#cc_footer-email {
    background-image: url("img/nsi_e_nickel-c9cccf.svg");
    background-repeat: no-repeat;
}

#cc_footer dd#cc_footer-telephone {
    background-image: url("img/nsi_t_nickel-c9cccf.svg");
    background-repeat: no-repeat;
}

#cc_footer-quality-logos {
    padding: 1rem;
    text-align: center;
}

#cc_footer-quality-logos img {
    display: inline-block;
    height: 3rem;
}

/*  */
/* =========== MODAL =========== */
#cc_modal-button * {
    font-family: "Nunito Sans", sans-serif;
}

#cc_modal-button-wrap {
    z-index: 999 !important;
    position: fixed;
    bottom: 1rem;
    right: 5rem;
}

#cc_modal-button-wrap-inner {
    position: relative;
    height: 100%;
    width: 100%;
}

#cc_modal-button {
    background-image: url(img/contact-us_fff.svg);
    background-origin: content-box;
    background-position: left;
    background-color: var(--nsi-link-color);
    border-radius: 4rem;
    border-width: 0;
    position: absolute;
    width: 4rem;
    height: 4rem;
    margin-right: -4rem;
    bottom: 0;
    padding: 0;
}

#cc_modal-button:hover {
    background-color: var(--nsi-active-color);
}

.modal-content {
    text-align: center;
    font-family: "Nunito Sans", sans-serif;
    border-radius: 0;
    background-color: var(--nsi-nickel-T);
}

.modal-header,
.modal-body,
.modal-footer {
    border-radius: 0 !important;
}

.modal-header p {
    color: var(--RAL-silver-grey);
    letter-spacing: 1px;
    font-weight: 600;
}

.modal-body {
    border-radius: 0 !important;
}

.modal-footer {
    border-radius: 0 !important;
}

/* HOMEPAGE */
.home #cc_page-content {
    padding-top: 1rem;
}

.cc_featured {
    margin-bottom: 1rem;
    padding: 0.5rem;
    padding-bottom: 12px;
    position: relative;
}

.cc_featured_text {
    position: relative;
    padding: 0.5rem;
    background-color: var(--nsi-nickel-01);
    height: 100%;
}

.cc_featured h4 {
    padding-top: 0;
}

#cc_home-slide {
    z-index: 100;
    position: relative;
    margin-top: -20rem;
    margin-bottom: 20rem;
}

/* CASE PAGE */
#cc_case-container,
#cc_post-container {
    margin-top: 9rem;
}

#cc_case-item {
    background-color: var(--RAL-signal-white);
    padding: 0.5rem;
    margin-bottom: 1rem;
}

.cc_case-menu ul li {
    display: block;
    background-color: var(--RAL-signal-white);
    margin-bottom: 1rem;
    clear: both;
}

.cc_case-menu ul li a {
    text-decoration: none;
}

ul#menu-case-categories,
ul#menu-case-categories li ul {
    list-style: none;
    padding-left: 0;
}

ul#menu-case-categories li ul li {
    display: inline-block;
}

ul#menu-case-categories li a {
    text-decoration: none;
    display: inline-block;
    background-color: var(--nsi-green-01);
}

.cc_featured-image-top {
    padding: 30% 0 0 0;
    margin: 0 0 4rem;
    height: 0;
    background-repeat: no-repeat;
    background-position-x: center !important;
    background-position-y: center !important;
    background-size: cover;
    background-color: var(--RAL-copper-brown);
    bottom: -1px;
}

#cc_featured-image-home {
    padding: 0 0 60% 0;
    margin: 0 0 4rem;
}

/* BOOTSTRAP EDITS */
.btn {
    font-weight: 600;
    border-radius: 0 !important;
    background-color: var(--nsi-link-color);
}

.btn:hover {
    background-color: var(--nsi-hover-color);
}

.navbar-toggler {
}

/* WORDPRESS EDITS */
.wp-block-group {
    padding: 1rem;
    border: 1px solid var(--RAL-silver-grey) !important;
    margin-bottom: 1rem;
    background-color: var(--RAL-signal-white);
}

.wp-block-button__link {
    border-radius: 0;
    border: 0;
    padding: .5rem;
    background-color: var(--RAL-signal-white);
    color: var(--nsi-link-color);
}

.wp-block-button__link a {
    background-color: var(--nsi-hover-color);
    color: var(--RAL-signal-white);
}

/* =========== CALENDAR =========== */
.cc_calendar {
}

.cc_calendar ul {
    list-style: none;
    padding-left: 0rem;
}

.cc_calendar ul li time,
.cc_calendar ul li p {
    display: block;
}

.cc_calendar ul li time * {
    font-family: "Nunito", sans-serif;
    font-weight: 600;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}

.cc_calendar-D {
    color: #fff;
    background-color: var(--RAL-pearl-gold);
}

.cc_calendar-j {
    color: var(--RAL-pearl-gold);
    background-color: var(--RAL-signal-white);
    font-size: 1.5rem;
    padding-bottom: 0.25rem;
    margin-bottom: .5rem;
}

.cc_calendar-M {
    color: #fff;
    background-color: var(--RAL-pearl-gold);
}

.cc_calendar-Y {
    color: var(--RAL-pearl-gold);
    background-color: var(--RAL-signal-white);
    font-weight: 300;
}

.cc_calendar-T {
    margin-left: 1rem;
    margin-right: 1rem;
    color: var(--RAL-steel-blue);
    border: 1px solid var(--RAL-steel-blue) ;
}

.cc_calendar ul li p {
    margin-top: 0.25rem;
    border-bottom: 1px dashed var(--RAL-copper-brown);
    margin-bottom: 1rem;
}

.cc_featured {
    padding: 0;
    background-color: var(--RAL-signal-white);
    margin-bottom: 1rem;
}

.cc_featured h5 {
    padding: 0.5rem;
    background-color: var(--RAL-steel-blue);
    font-family: "Nunito", sans-serif;
    font-weight: 700;
    color: var(--RAL-signal-white) !important;
}

.cc_featured-content{
}

.cc_featured-content a{
    top: 0;
    right: 0.8rem;
    display: inline-block;
    background-color: var(--nsi-link-color);
    color: var(--RAL-signal-white);
    text-decoration: none;
    text-align: center;
    line-height: 2rem;
    padding: 0   1rem;
    border-radius: 2rem;
    margin: 0.5rem;
    min-width: none;
}

.cc_featured ul {
    list-style-type: none;
    padding: 0.5rem;
    font-weight: 700;
    color: var(--RAL-steel-blue) !important;
}

.cc_featured ul li {
    margin: 0 0 .5rem 2.5rem;
    padding: 0.5rem;
    border-left: var(--nsi-bronze) 1px solid;
}
.cc_featured ul li strong{
    color: var(--nsi-bronze);
    font-weight: 600;
    display: inline-block;
    width: 2.5rem;
    text-decoration: none;
    text-align: right;
    line-height: 2rem;
    margin-left: -2.5rem;
    margin-right: 1px;
    padding: 0 1rem 0 0;
}

.cc_featured ul li em{
    color: var(--RAL-pearl-gold);
}


a.cc_more {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    display: block;
    width: 2rem;
    background-color: var(--nsi-link-color);
    color: var(--RAL-signal-white);
    text-decoration: none;
    text-align: center;
    line-height: 2rem;
    border-radius: 1rem;
}

a.cc_more:hover {
    background-color: var(--nsi-hover-color);
}

a.cc_news-btn {
    display: block;
    width: 2rem;
    background-color: var(--nsi-link-color);
    color: var(--RAL-signal-white);
    text-decoration: none;
    text-align: center;
    line-height: 2rem;
    border-radius: 1rem;
}