
/* -------------------------------------
// X-Small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) { ... }

// X-Large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }

// XX-Large devices (larger desktops, 1400px and up)
@media (min-width: 1400px) { ... }

// ------------------------------------

// X-Small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }

// Small devices (landscape phones, less than 768px)
@media (max-width: 767.98px) { ... }

// Medium devices (tablets, less than 992px)
@media (max-width: 991.98px) { ... }

// Large devices (desktops, less than 1200px)
@media (max-width: 1199.98px) { ... }

// X-Large devices (large desktops, less than 1400px)
@media (max-width: 1399.98px) { ... }

// XX-Large devices (larger desktops)
// No media query since the xxl breakpoint has no upper bound on its width

GRID
$grid-columns:      12;
$grid-gutter-width: 1.5rem;

$grid-breakpoints: (
  xs: 0,
  sm: 576px,
  md: 768px,
  lg: 992px,
  xl: 1200px,
  xxl: 1400px
);

$container-max-widths: (
  sm: 540px,
  md: 720px,
  lg: 960px,
  xl: 1140px,
  xxl: 1320px
);

/* BREAKPOINTS:
Extra small			None	<576px
Small				sm		≥576px
Medium				md		≥768px
Large				lg		≥992px
Extra large			xl		≥1200px
Extra extra large	xxl		≥1400px
------------------------------------- */


/* NICF CSS Additions */

/* Body main font */
/*font-family: 'Montserrat', sans-serif;*/
/*
NICF
1. Montserrat Bold/Semi Bold (Headers)
2. Proxima Nova (used generally for sub headings and contact details) - it is used in the updated NICF
stationery (Nov 2023).
3. Roboto (Body Text)
4. Roboto Condensed - a condensed (skinny) font that is used very sparingly where space requires the
use of condensed font or a highly contrasting font.

https://fonts.google.com/specimen/Montserrat
https://fonts.google.com/specimen/Roboto
*/




/* Global styles for NICF */
body { font-family: "Roboto",  sans-serif; } /* Overrides bootstrap reboot. */

h1 {
  color: var(--heading-color);
  margin: 10px 0 0 0;
  font-size: 32px;
  font-weight: 500;
  font-family: var(--heading-font);
}

h1 .description-title {
  font-weight: 600;
  color: var(--nicf-blue-color);
}

h2 { font-size: 1.6rem; font-weight: 500; }
h3 { font-size: 1.5rem; font-weight: 500; }
h4 { font-size: 1.3rem; font-weight: 500; }
h5 { font-size: 1.2rem; font-weight: 500; }
h6 { font-size: 1.0rem; font-weight: 500; }


/* Header */
.nicf-header-spacer { display: block; width: 100%; background-color: var(--nicf-blue-color); height: 30px; }

.nicf-topbar-bg { background-color: var(--nicf-blue-color); }
.nicf-topbar { height: 34px; }

.nicf-topbar .nicf-social-links a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 4px;
  border: 1px solid var(--contrast-color);
  font-size: 16px;
  color: var(--contrast-color);
  margin-left: 10px;
  transition: 0.3s;
}
.nicf-topbar .nicf-social-links a:hover { color: var(--contrast-color); }

.nicf-header-btns {  }
.nicf-header-btns a { display: block; width: /*80px*/124px; text-align: center; text-transform: uppercase;background: #fff; border: 1px solid #000; padding: 4px 0px; font-size: 0.85rem; }
.nicf-header-btns a:first-of-type { margin-bottom: 10px!important; }
@media only screen and (max-width:768px) {
	.nicf-header-btns a { width: 110px; padding: 3px 0px; font-size: 0.75rem; }
}

/* Footer */
.nicf-footer-name { font-size: 15px; font-weight: 500; }
.nicf-sub-footer { background-color: #5B6770; color: #fff; font-size: 0.9rem; }
.nicf-sub-footer span { font-size: 0.8rem; }
.nicf-sub-footer ul { list-style: none; float: right; }
@media only screen and (max-width:768px) {
	.nicf-sub-footer ul { float: none; }
}
.nicf-sub-footer ul li {
  float: left;
  margin: 0 4px 0 -4px;
  padding: 0 9px;
}

.footer-contact a { color: var(--contrast-color); }
.footer-contact a:hover { color: var(--nicf-blue-color); }

.nicf-footer-logos { float: left; width: 122px; height: 58px; margin-right: 14px; }

.nicf-sub-footer a { color: #fff; }
.nicf-sub-footer a:hover { color: #fff; border-bottom: 2px solid var(--nicf-blue-color); }
.nicf-credits { font-size: 0.8rem; text-align: right; padding: 0 40 10 0px; }
.nicf-credits a { colour: #444!important; }
.nicf-credits a:hover { colour: var(--nicf-blue-color); }



/* General */
.nicf-para-block-white { background: var(--surface-color); border: 1px solid #ccc; border-radius: 4px; padding: 16px; margin: 1rem 0; }



/*---------------------------------------------------------*/
/* NICF Custom Settings - Pre-2025
/* General. */
.imgLHS { float: left; display: inline; margin-right: 20px; }
.imgRHS { float: right; display: inline; margin-left: 20px; }
.left{ float: left; display: inline; margin-right: 20px; }
.right { float: right; display: inline; margin-left: 20px; }
/*---------------------------------------------------------*/



/* Tabs - Members Info & MA */
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--nicf-blue-color);
}
.nav-link {
  color: var(--nicf-blue-color);
}

/* Forms */
.form-body .section { padding: 0px; background-color: var(--surface-color); } /* Added to override main.css for forms. */

/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.nicf-contact-form-lbl-left { display: inline-block; width: 14px; color: #F00; font-size: 1em; font-weight: 800; }



/*--------------------------------------------------------------
# Home Page
--------------------------------------------------------------*/
.nicf-home-banner-lhs, .nicf-home-banner-rhs { font-size: 1.1rem; color: #fff; line-height: 1; }
.nicf-home-banner-rhs a, .nicf-home-banner-rhs a:hover { color: var(--contrast-color); }
.nicf-home-banner-lhs span { font-size: 1.5rem; font-weight: 500; }
.nicf-home-banner-rhs span span { color: #fff; font-size: 1.8rem; font-weight: 500; display: inline; padding-right: 10px; }
.nicf-home-banner-rhs span { color: #fba73b; }
/* Media query req for home banner. Reduce font sizes and create spacing between top & bottom */
@media only screen and (max-width:992px) {
	.nicf-home-banner-lhs, .nicf-home-banner-rhs { font-size: 0.9rem; }
	.nicf-home-banner-lhs span { font-size: 1.2rem; }
	.nicf-home-banner-rhs span span { ont-size: 1.5rem; padding-right: 6px; }
}
@media only screen and (max-width:768px) {
	.nicf-home-banner-lhs { padding-bottom: 20px; }
	.nicf-home-banner-lhs, .nicf-home-banner-rhs { font-size: 0.8rem; }
	.nicf-home-banner-lhs span { font-size: 1.1rem; }
	.nicf-home-banner-rhs span span { ont-size: 1.4rem; padding-right: 6px; }
}


.nicf-home-container { padding: 10px; }
.nicf-home-box { height: 400px; border: 1px solid #666; background: #fff; position: relative; overflow: hidden; }


.nicf-home-box-content-benefits, 
.nicf-home-box-content-find,
.nicf-home-box-content-join, 
.nicf-home-box-content-guide, 
.nicf-home-box-content-openday, 
.nicf-home-box-content-patrons,
.nicf-home-box-content-links { position: absolute; top: 50px; left: 50px; height: 320px; width: 450px; z-index: 1000; color: #000; }
.nicf-home-box-content-foty { position: absolute; top: 80px; left: 30px; height: 290px; width: 490px; z-index: 1000; }

.nicf-home-box h3 { font-size: 1.9em; font-weight: 600; text-transform: uppercase; margin-bottom: 0rem; }
@media only screen and (max-width:992px) and (min-width:767px){ /* 236 */
	.nicf-home-box h3 { font-size: 1.6em; }
}
.nicf-home-box h4 { font-size: 1.6em; font-weight: 600; text-transform: uppercase; margin-top: 0.5rem; }
.nicf-home-blue { color: var(--nicf-blue-color); }
.nicf-home-black { color: #000; }
.nicf-home-box h4 { font-size: 1.1em; }
.nicf-home-box-btn { text-align: center; position: absolute; bottom: 10px; left: 0px; width: 100%; z-index: 100; }
.nicf-home-box-btn h5 { display: inline-block; background: var(--nicf-blue-color); font-size: 1em; font-weight: 400; color: #fff; padding: 4px 20px; }

.download-pointer, a:link, a:visited { text-decoration: none; cursor: pointer; }

/* --------------------------------------------------------- */
ul.nicf-home-benefits {
  list-style: none;
  padding: 0;
  font-size: 1rem;
  margin-top: 1.0rem;
}

ul.nicf-home-benefits li {
  padding: 5px 0;
  display: flex;
  align-items: center;
  
  font-weight: 600; text-transform: uppercase; line-height: 1.0rem;
}

ul.nicf-home-benefits i {
  margin-right: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 0px;
  font-size: 20px;
  color: var(--contrast-color);
  margin-left: 10px;
}
ul.nicf-home-benefits li.nicf-home-blue i { background: var(--nicf-blue-color); }
ul.nicf-home-benefits li.nicf-home-black i { background: #000; }

.nicf-home-benefits-img1 { position: absolute; top: 0px; left: 0px; width: 60px; height: auto; z-index: 1; }
.nicf-home-benefits-img2 { position: absolute; bottom: 0px; right: 0px; width: 300px; height: auto; z-index: 2; }

/* --------------------------------------------------------- */
.nicf-home-find-txt { font-weight: 500; font-size: 1.1rem; line-height: 2.0rem; }
.nicf-home-find-img { position: absolute; top: 80px; right: 0px; width: 120px; height: auto; }

/* --------------------------------------------------------- */
.nicf-home-join-container { border: 3px solid var(--nicf-blue-color); padding: 3px; margin-top: 10px;  }
.nicf-home-join-txt { background: #efb210; color: #000; font-weight: 500; padding: 12px; margin: 0px; }

/* --------------------------------------------------------- */
.nicf-home-foty-upper { position: absolute; top: 0px; left: 0px; z-index: 4; }
.nicf-home-foty-lower { position: absolute; bottom: 0px; left: 0px; z-index: 3; }
.nicf-home-foty-photo { position: absolute; top: 150px; left: 0px; z-index: 2; }
.nicf-home-foty-round { position: absolute; bottom: 120px; right: 20px; z-index: 5; width: 100px; height: auto; }
.nicf-home-foty-doyou { position: absolute; top: 0px; left: 0px; z-index: 4; }
.nicf-home-foty-skills { position: absolute; top: 6px; left: 140px; z-index: 4; font-size: 0.7em; font-weight: 500; line-height: 0.8rem; color: #000; letter-spacing: 0.1rem;}
.nicf-home-foty-foty { position: absolute; top: 32px; left: 0px; z-index: 4; }
.nicf-home-foty-foty h4 { font-size: 1.3rem; margin: 0px; }

/* --------------------------------------------------------- */
.nicf-home-guide-img { display: block; width: 80%; margin: 0px auto; }

/* --------------------------------------------------------- */
.nicf-home-openday-img { position: absolute; bottom: -90px; left: 0px; width: 100%; height: auto; z-index: 1; }

/* --------------------------------------------------------- */

.nicf-home-patrons-txt { font-weight: 500; font-size: 1.0rem; line-height: 1.5rem; }

/* --------------------------------------------------------- */

.nicf-home-links-container { text-align: center; }
.nicf-home-link-logo { margin: 10px auto 10px; height: 170px; width: 240px; }
.nicf-home-link-logo img { max-width: 100%; max-height: 100%; margin: 0px auto; }
.nicf-home-link-title { font-size: 1rem; font-weight: 400; color: #999; }

/* --------------------------------------------------------- */

@media (min-width: 1400px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-patrons, .nicf-home-box-content-links { left: 90px; }
	.nicf-home-box-content-foty { left: 80px; }
	.nicf-home-box-content-openday { left: 70px; width: 520px; }
	.nicf-home-foty-photo { top: 150px; }
	.nicf-home-openday-img { bottom: -110px; }
}
@media (max-width: 1199.98px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-openday, .nicf-home-box-content-patrons, .nicf-home-box-content-links { width: 360px; }
	.nicf-home-box-content-foty { width: 400px; }
	.nicf-home-find-img { width: 110px; top: 110px; right: -20px; }
	.nicf-home-foty-photo { top: 140px; }
	.nicf-home-foty-round { bottom: 126px; }
	.nicf-home-foty-doyou { top: -10px; }
	.nicf-home-foty-skills { top: -4px; }
	.nicf-home-foty-foty { top: 22px; }
	.nicf-home-openday-img { bottom: -30px; }
}
@media (max-width: 991.98px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-openday, .nicf-home-box-content-patrons, .nicf-home-box-content-links { left: 20px; width: 300px; }
	.nicf-home-box-content-foty { left: 20px; top: 60px; width: 300px; height: 310px; }
	.nicf-home-benefits-img1 { width: 40px; }
	.nicf-home-benefits-img2 { width: 200px; }
	.nicf-home-find-img { /*width: 90px; top: 170px; right: 0px;*/ display: none; }
	.nicf-home-join-txt { font-size: 0.95em; padding: 8px; }
	.nicf-home-foty-photo { top: 140px; height: 280px!important; }
	.nicf-home-openday-img { bottom: 0px; }
}
@media (max-width: 767.98px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-openday, .nicf-home-box-content-patrons, .nicf-home-box-content-links { left: 50px; width: 420px; }
	.nicf-home-box-content-foty { left: 50px; top: 80px; width: 420px; height: 290px; }
	.nicf-home-benefits-img1 { width: 60px; }
	.nicf-home-benefits-img2 { width: 300px; }
	.nicf-home-find-img { width: 120px; top: 80px; right: 0px; display: inline; }
	.nicf-home-join-txt { font-size: 1.0em; padding: 12px; }
	.nicf-home-foty-photo { top: 150px; width: 520px; height: auto; }
	.nicf-home-foty-doyou { top: 0px; }
	.nicf-home-foty-skills { top: 6px; }
	.nicf-home-foty-foty { top: 32px; }
	.nicf-home-openday-img { bottom: -66px; }
}
@media (max-width: 575.98px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-openday, .nicf-home-box-content-patrons, .nicf-home-box-content-links { left: 30px; width: 440px; }
	.nicf-home-box-content-foty { left: 50px; top: 80px; width: 420px; }
	.nicf-home-find-img { right: 30px; }
	.nicf-home-foty-photo { top: 150px; width: 100%; }
	.nicf-home-openday-img { bottom: -66px; }
}
@media (max-width: 479.98px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-openday, .nicf-home-box-content-patrons, .nicf-home-box-content-links { width: 380px; }
	.nicf-home-box-content-foty { left: 50px; top: 80px; width: 360px; }
	.nicf-home-benefits-img1 { width: 40px; }
	.nicf-home-benefits-img2 { width: 260px; }
	.nicf-home-find-img { width: 100px; top: 110px; right: 0px; }
	.nicf-home-find-txt { font-size: 1.0rem; }
	.nicf-home-join-txt { font-size: 0.9em; padding: 8px; }
	.nicf-home-foty-photo { top: 150px; width: 480px; }
	.nicf-home-openday-img { bottom: -30px; }
	
}
@media (max-width: 419.98px) {
	.nicf-home-box-content-benefits, .nicf-home-box-content-find, .nicf-home-box-content-join, .nicf-home-box-content-guide, .nicf-home-box-content-openday, .nicf-home-box-content-patrons, .nicf-home-box-content-links { left: 14px; width: 320px; }
	.nicf-home-box-content-foty { left: 30px; top: 60px; width: 300px; }
	.nicf-home-benefits-img1 { width: 30px; }
	.nicf-home-benefits-img2 { width: 200px; }
	.nicf-home-find-img { width: 80px; top: 100px; right: 0px; }
	.nicf-home-find-txt { font-size: 0.95rem; }
	.nicf-home-foty-photo { top: 150px; width: 420px; }
	.nicf-home-openday-img { bottom: 0px; }
	
}



/*--------------------------------------------------------------
# About Section
--------------------------------------------------------------*/
.about .about-content h3 {
  font-weight: 600;
  font-size: 26px;
}

.about .about-content ul {
  list-style: none;
  padding: 0;
}

.about .about-content ul li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 35px;
}

.about .about-content ul li:first-child {
  margin-top: 35px;
}

.about .about-content ul i {
  background: var(--surface-color);
  box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  font-size: 24px;
  margin-right: 15px;
  color: var(--accent-color);
  border-radius: 50px;
}

.about .about-content ul h4 {
  font-size: 18px;
  font-weight: 600;
}

.about .about-content ul p {
  font-size: 15px;
}

.about .about-content p:last-child {
  margin-bottom: 0;
}



/*--------------------------------------------------------------
# team-members Section
--------------------------------------------------------------*/
.team-members .team-member {
  background-color: var(--surface-color);
  border: 1px solid #ccc;
  position: relative;
  border-radius: 4px;
  transition: 0.5s;
  padding: 30px;
  height: 100%;
}

@media (max-width: 576px) {
  .team-members .team-member {
    flex-direction: column;
    justify-content: center !important;
    align-items: center !important;
  }
}

.team-members .team-member .pic {
  overflow: hidden;
  /*max-width: 150px;
  max-height: 150px;*/
  border-radius: 50%;
  flex-shrink: 0;
}

.team-members .team-member .pic img {
  transition: ease-in-out 0.3s;
}

.team-members .team-member:hover {
  transform: translateY(-10px);
}

.team-members .team-member .member-info {
  padding-left: 30px;
}

@media (max-width: 576px) {
  .team-members .team-member .member-info {
    padding: 30px 0 0 0;
    text-align: center;
  }
}

.team-members .team-member h4 {
  font-weight: 700;
  margin-bottom: 5px;
  font-size: 20px;
}

.team-members .team-member span {
  display: block;
  font-size: 15px;
  padding-bottom: 10px;
  position: relative;
  font-weight: 500;
}

.team-members .team-member span::after {
  content: "";
  position: absolute;
  display: block;
  width: 50px;
  height: 1px;
  background: color-mix(in srgb, var(--default-color), transparent 85%);
  bottom: 0;
  left: 0;
}

@media (max-width: 576px) {
  .team-members .team-member span::after {
    left: calc(50% - 25px);
  }
}

.team-members .team-member p {
  margin: 10px 0 0 0;
  font-size: 14px;
}

.team-members .team-member a {
  color: var(--nicf-blue-color);
}

.team-members .team-member a:hover {
  transition: ease-in-out 0.3s;
  color: var(--blk-background-color);
}

.team-members .team-member i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 4px;
  border: 1px solid var(--nicf-blue-color);
  font-size: 16px;
  color: var(--blk-background-color);
  margin-right: 8px;
  transition: 0.3s;
}
.team-members .team-member a:last-of-type { margin-left: 10px; }



/*--------------------------------------------------------------
 News
--------------------------------------------------------------*/
.nicf-news-date { color: #999; font-size: 0.85rem; font-style: italic; }

/* News Archive. */
.logrow { float: left; display: block; width: 100%; padding: 10px; background: #e6e6e6; border-bottom: 2px solid #fff; color: #000; } /* Alternating coloured divs. */
.logrow-alt { float: left; display: block; width: 100%; padding: 10px; background: #f1f1f1; border-bottom: 2px solid #fff; color: #000; }
.logrow:hover { background: #666; color: #fff!important; }
.logrow-alt:hover { background: #666; color: #fff!important; }

.archiveTitle { float: left; display: inline-block; margin-right: 10px; }
.archiveDate { float: left; display: inline-block; font-size: 0.80em; color: #999!important; }
@media only screen and (max-width:400px) {
	.archiveDate { display: block; clear: both;  }
}
.archiveClear { display: block; clear: both; width: 100%; height: 1px; overflow: hidden; }



/*--------------------------------------------------------------
Lists: Reps-Contact, News, Benefits
--------------------------------------------------------------*/
ul.nicf-about-reps, ul.nicf-about-news, ul.nicf-join-benefits {
  list-style: none;
  padding: 0;
  font-size: 15px;
}

ul.nicf-about-reps, ul.nicf-about-news li {
  padding: 5px 0;
 /* display: flex;*/
  align-items: center;
}

ul.nicf-join-benefits li {
  padding: 5px 0;
  display: flex;
  align-items: center;
}

ul.nicf-about-reps i, ul.nicf-about-news i, ul.nicf-join-benefits i {
  font-size: 20px;
  margin-right: 8px;
  color: var(--accent-color);
}

ul.nicf-about-reps  li span, ul.nicf-about-news li span {
	font-size: 0.85rem; color: #999; display: block; margin-left: 32px;
}



/*--------------------------------------------------------------
# Joining
--------------------------------------------------------------*/

/* Joining - Criteria. */
.nicf-join-criteria-img { margin-bottom: 4px; }
.nicf-join-criteria-img span { display: block; font-size: 0.85rem; color: #999; }
.nicf-join-criteria-hr { display: block; width: 75%; margin: 24px auto; border-top: 1px solid var(--nicf-blue-color); }
.nicf-join-criteria-abuse { background-color: var(--surface-color); border: 2px solid var(--nicf-blue-color); padding: 10px; }

/* Joining - Fees. */
.nicf-fees .nicf-fees-content h3 {
  font-weight: 600;
  font-size: 26px;
}

.nicf-fees .nicf-fees-content ul {
  list-style: none;
  padding: 0;
}

.nicf-fees .nicf-fees-content ul li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 35px;
}

.nicf-fees .nicf-fees-content ul li:first-child {
  margin-top: 35px;
}

.nicf-fees .nicf-fees-content ul i {
  background: var(--surface-color);
  box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  font-size: 24px;
  margin-right: 15px;
  color: var(--accent-color);
  border-radius: 50px;
}

.nicf-fees .nicf-fees-content ul h4 {
  font-size: 18px;
  font-weight: 600;
}

.nicf-fees .nicf-fees-content ul p {
  font-size: 15px;
}

.nicf-fees .nicf-fees-content p:last-child {
  margin-bottom: 0;
}

section .nicf-fees { padding-top: 0px; }
.nicf-fees-wrapper { border: 1px solid #ccc; border-radius: 4px; background-color: var(--surface-color); }
.nicf-fees-wrapper-top { /*min-height: 80px;*/ padding: 6px;  border-bottom: 1px solid #e3e3e3; background-color: #fcfcfc; font-size: 0.9rem; }
.nicf-fees-wrapper-top h6 { font-size: 1.0erm; font-weight: 600; margin-bottom: .2rem; }
.nicf-fees-container { font-size: 0.95em; }

.nicf-fees-inner { margin: 8px; }
.nicf-fees-inner-item { display: block; }

.nicf-fees-inner-lhs { float: left; width: 40%; }
.nicf-fees-inner-rhs1 { float: left; width: 30%; text-align: center; }
.nicf-fees-inner-rhs2 { float: left; width: 20%; text-align: right; }
/*.nicf-fees-inner-rhs3 { float: left; width: 10%; text-align: right; }*/ /* Unused from 2017. */
.nicf-fees-inner-item-clear { clear: both; height: 8px; width: 90%; margin: 8px auto; border-bottom: 1px solid #e3e3e3; }
.nicf-fees-inner-item-clear-end { clear: both; height: 1px; width: 90%; margin: 4px auto; }



/*--------------------------------------------------------------
# Directory > Results > Member Info Testimonials Section
--------------------------------------------------------------*/

/* Directory page. */
/* 
https://www.freecodecamp.org/news/how-to-create-a-mansory-layout-using-html-and-css/ 
https://css-tricks.com/almanac/properties/g/grid-auto-rows/
*/
.nicf-dir-types-grid { /* Associates/Retail/Patron. */
        display: grid;
        /*grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));*/
		grid-template-columns: 33% 33% 33%;
        /*grid-auto-rows: 10px;*/
		grid-auto-rows: minmax(10px, auto) auto max-content fit-content(200px);
}
@media only screen and (max-width:762px) {
	.nicf-dir-types-grid {
		grid-template-columns: 100%;
	}
}
.nicf-dir-types-item {
		position: relative;
        box-sizing: border-box;
        /*display: flex;*/
}
.nicf-dir-types-item-top { display: block; width: 100%; padding: 10px; }
.nicf-dir-types-item-bottom { display: block; width: 100%; padding: 0px 0px 10px 10px; }

.nicf-dir-county { display: inline-block; width: 200px; margin-bottom: 4px; font-size: 0.85rem; }


/* Results pages. */
.nicf-dir-grid {
        display: grid;
        /*grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));*/
		grid-template-columns: 50% 50%;
        /*grid-auto-rows: 10px;*/
		grid-auto-rows: minmax(10px, auto) auto max-content fit-content(200px);
        gap: 20px;
		margin-bottom: 30px;
}
@media only screen and (max-width:762px) {
	.nicf-dir-grid {
		grid-template-columns: 100%;
	}
}
.nicf-dir-item {
		position: relative;
		
		background-color: #ffffff;
        padding: 0px!important;
        box-sizing: border-box;
        border: 1px solid  #ccc;
		border-radius: 4px;
        /*display: flex;*/
        color: #000;
}
.nicf-enhanced { border: 1px solid var(--nicf-blue-color); }

.nicf-dir-item-top { display: block; width: 100%; padding: 20px; }
.nicf-dir-item-bottom { display: block; clear: both; width: 100%; border-top: 1px solid #ccc; padding: 2px 4px 6px 6px; }

.nicf-dir-company { color: #009bc3; font-weight: bold; }
.nicf-dir-logo { float: right; width: 80px; margin: 4px 2px 2px 4px; }
.nicf-dir-distance { color: #999; font-size: 0.9em; padding-bottom: 0px; display: block; padding-top: 8px; }

.nicf-dir-spacer { display: block; clear: both; height: 30px; border:1px dashed orange; }
.nicf-dir-icons { position: absolute; left: 0px; bottom: 0px; width: 100%; border-top: 1px solid #ccc; padding: 2px 4px 6px 6px; }

.nicf-dir-item-note { color:#999; font-size: 0.9em; } /* Inspections. */

/* Boxes for flooring types. */
.nicf-dir-goldBox, .nicf-dir-silverBox, .nicf-dir-bronzeBox { display: inline-block; font-size: 0.85em; font-weight: 500; color: #444; padding: 2px 3px; margin-right: 8px; margin-top: 4px; border-radius: 4px; border: 0px solid #000; }
.nicf-dir-goldBox { background: #ffd959; }
.nicf-dir-silverBox { background: #d8d8d8; }
.nicf-dir-bronzeBox { background: #f90; }

#nicf-dir-map { width: 100%; height: 340px; margin-bottom: 30px; }

/* Used in function_initialize. */
#nicf-dir-map-info { width: 300px; }
#nicf-dir-map-info a:link, #nicf-dir-map-info a:visited { color: var(--nicf-blue-color); text-decoration: none; font-weight: 500; }
#nicf-dir-map-info a:hover, #nicf-dir-map-info a:visited:hover { color: #000; text-decoration: underline; font-weight: 500; }
#nicf-dir-map-info img { float: right; margin-right: 10px; }


/* Individual Member Info page. */
.nicf-dir-memkeylink { font-size: 0.85rem; }
#nicf-dir-meminfo-map { width: 100%; height: 300px; }
.nicf-dir-memno { background: var(--nicf-blue-color); color: var(--contrast-color); margin-top: 20px; padding: 20px; border: 0px; border-radius: 4px; }
.nicf-dir-memno h6 {color: var(--contrast-color); font-weight: 600; }
.nicf-fita-trained { max-width: 220px; height: auto; margin: 10px 0px; }


/* Feedback for Member Info page. */
.testimonials {
  padding: 80px 0;
  position: relative;
}

.testimonials:before {
  content: "";
  background: color-mix(in srgb, var(--background-color), transparent 30%);
  position: absolute;
  inset: 0;
  z-index: 2;
}

.testimonials .testimonials-bg {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}

.testimonials .container {
  position: relative;
  z-index: 3;
}

.testimonials .testimonials-carousel,
.testimonials .testimonials-slider {
  overflow: hidden;
}

.testimonials .testimonial-item {
  text-align: center;
}

.testimonials .testimonial-item .testimonial-img {
  width: 100px;
  border-radius: 50%;
  border: 6px solid color-mix(in srgb, var(--default-color), transparent 85%);
  margin: 0 auto;
}

.testimonials .testimonial-item h3 {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0 5px 0;
}

.testimonials .testimonial-item h4 {
  font-size: 14px;
  margin: 0 0 15px 0;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.testimonials .testimonial-item .stars {
  margin-bottom: 15px;
}

.testimonials .testimonial-item .stars i {
  color: #ffc107;
  margin: 0 1px;
}

.testimonials .testimonial-item .quote-icon-left,
.testimonials .testimonial-item .quote-icon-right {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  font-size: 26px;
  line-height: 0;
}

.testimonials .testimonial-item .quote-icon-left {
  display: inline-block;
  left: -5px;
  position: relative;
}

.testimonials .testimonial-item .quote-icon-right {
  display: inline-block;
  right: -5px;
  position: relative;
  top: 10px;
  transform: scale(-1, -1);
}

.testimonials .testimonial-item p {
  font-style: italic;
  margin: 0 auto 15px auto;
}

.testimonials .swiper-wrapper {
  height: auto;
}

.testimonials .swiper-pagination {
  margin-top: 20px;
  position: relative;
}

.testimonials .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background-color: color-mix(in srgb, var(--default-color), transparent 50%);
  opacity: 0.5;
}

.testimonials .swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--default-color);
  opacity: 1;
}

@media (min-width: 992px) {
  .testimonials .testimonial-item p {
    width: 80%;
  }
}




/* Feedback. */
/* 
https://www.freecodecamp.org/news/how-to-create-a-mansory-layout-using-html-and-css/ 
https://css-tricks.com/almanac/properties/g/grid-auto-rows/
*/
.nicf-feedback-grid {
        display: grid;
        /*grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));*/
		grid-template-columns: 50% 50%;
        /*grid-auto-rows: 10px;*/
		grid-auto-rows: minmax(10px, auto) auto max-content fit-content(200px);
        gap: 20px;
		margin-bottom: 30px;
}
@media only screen and (max-width:762px) {
	.nicf-feedback-grid {
		grid-template-columns: 100%;
	}
}
.nicf-feedback-item {
		background-color: #ffffff;
        padding: 20px;
        box-sizing: border-box;
        /*box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);*/
        border: 1px solid  #ccc;
		border-radius: 4px;
        display: flex;
        /*align-items: center;*/
        /*justify-content: center;*/
        /*font-size: 1.2em;*/
        color: #000;
}
.nicf-feedback-item p {  display: block; margin-bottom: 10px; }

/*.item1 { grid-row: span 15; }
.item2 { grid-row: span 20; }
.item3 { grid-row: span 10; }
.item4 { grid-row: span 25; }
.item5 { grid-row: span 30; }
.item6 { grid-row: span 15; }
.item7 { grid-row: span 20; }
.item8 { grid-row: span 10; }
.item9 { grid-row: span 25; }
.item10 { grid-row: span 30; }*/

.nicf-feedback-item h3 { color: var(--nicf-blue-color); }
.nicf-feedback-item h3 span { color: #444; }

.nicf-feedback-state { color: #444; font-size: 0.8rem; font-weight: 400; margin-left: 10px; }
.nicf-feedback-name { display: block; font-size: 0.9rem; color: #999; font-style: italic; text-align: right; padding-top: 10px; }
/*
.nicf-feedback-item h3 { color: var(--nicf-blue-color); font-size: 1.0rem; }
.nicf-feedback-state { color: #444; font-size: 0.8em; font-weight: 400; text-transform: capitalize; }
.nicf-feedback-info { font-size: 0.9rem; color: #999; font-style: italic; text-align: right; padding-top: 10px; }
*/



/* Links. */
.partnerContainer { background: #fff; border: 1px solid #ccc; border-radius: 4px; padding: 8px; margin-bottom: 20px; }
.partnerTextContainer { float: right; width: 100%; margin-left: -240px; }
.partnerText { margin-left: 260px; padding: 0px 10px 10px 10px; }
.partnerLogo { float: left; width: 240px; padding-top:10px; }
.partnerLogo img { max-width: 220px; height: auto; }
.partnerText a { display: block; font-size:1.1em; margin-top: 8px; margin-bottom: 12px; text-decoration: none; }
.partnerClear { height: 0; clear: both; }
@media only screen and (max-width:680px) {
	.partnerTextContainer { float: none; display: block!important; clear: left!important; width: 100%; margin-left: 0px; }
	.partnerText { margin-left: 0px; padding: 0px 10px 10px 10px; }
	.partnerLogo img { margin-bottom: 20px; }
}



/* Member Information. */
.nicf-memberinfo-workwear-img { margin-bottom: 20px; }

.nicf-memberinfo-discounts {
	width: 100%; background: #fff; border: 1px solid #ccc; padding-bottom: 20px; margin: 15px 0;
	-webkit-border-radius: 5px;
       -moz-border-radius: 5px;
            border-radius: 5px;
}
.nicf-memberinfo-discount { padding: 25px 25px 0px 25px; }
.nicf-memberinfo-discount-clear { display: block; clear: both; width: 100%; height: 1px; overflow: hidden; }



/* MA Pages. */
.nicf-mem-login { background-color: var(--background-color)!important; }

.nicf-member-nav a { color: var(--nicf-blue-color); }
.nicf-member-nav a:hover { color: var(--contrast-color)!important; }
.nicf-member-nav i { color: var(--contrast-color); }
.nicf-icon { color: #fff!important; }
.nicf-member-user { font-size: 0.9rem; color: var(--contrast-color); margin-top: 30px; padding: 30px 0px; border-top: 1px solid #666; }

.nicf-ma-content { background-color: var(--background-color); }
.nicf-ma-doc-container { display: block; height: 160px; margin: 14px 0px; position: relative; }
.nicf-ma-doc-container-news { display: block; /*height: 160px;*/ padding: 10px 20px; margin: 14px 0px; position: relative; }
.nicf-ma-doc-img { position: absolute; top: 0; left: 0; padding: 20px; height: 160px; width: 140px; text-align: center; background: #F0ECE8; }
.nicf-ma-doc-img img { /*max-height: 120px; width: auto;*/width: 100%; height: 100%; object-fit: contain; }
.nicf-ma-doc-text { position: absolute; top: 0; left: 140px; font-size: 0.9rem;  padding: 20px; }
.nicf-ma-doc-type { font-size: 0.9rem; color: #666; }

.nicf-ma-doc-bg-cont { background-color: rgba(112, 185, 192, 0.25); }
.nicf-ma-doc-bg-trai { background-color: rgba(125, 148, 174, 0.3); }

a .nicf-ma-doc-container, a .nicf-ma-doc-container:hover, a .nicf-ma-doc-container-news, a .nicf-ma-doc-container-news:hover { color:#000!important; }

.nicf-ma-logout a { color: var(--nicf-blue-color); font-size: 14px; }
.nicf-ma-logout a i { color: var(--contrast-color); font-size: 18px!important; margin-right: 4px; }

/* MA newletters iframe. */
.nicf-member-newsletter { border: 1px solid #ccc; width: 100%; height: 800px; }

/* MA videos. */
.nicf-ma-video-container { display: block; margin-bottom: 40px; }
.nicf-ma-video-container h5 { margin-bottom: 0rem; }
.nicf-ma-video-date { display: block; font-size: 0.75em; color: #666; margin-top: 10px; padding-bottom: 10px; }
.nicf-ma-video {  }



/* FOTY. */
.nicf-content {  }
.nicf-foty-container { background-color:var(--background-color); }
.nicf-foty-content { padding: 0px 20px; background: #fff; margin-top:-10px; }

.nicf-foty-poster { max-width: 450px; width: 100%; }
 
/* CSS For FOTY pages and Albums. Also used for NICF Open Day. */
.nicf-foty-tools { margin-bottom: 0px!important; }
.nicf-foty-tools .breadcrumb a { text-decoration: none; font-size: 1.0em; color: #fff; background-color: var(--nicf-blue-color); border: 1px solid var(--nicf-blue-color); border-radius: 4px; padding: 4px 6px; margin: 5px; }
.nicf-foty-tools .breadcrumb .current_crumb { font-size: 1.0em; color: #000; background-color: #ccc; border: 1px solid #ccc; border-radius: 4px;padding: 4px 6px; margin: 5px; }
.nicf-foty-tools .breadcrumb a:after { content:" "; }
/*.nicf-foty-tools .breadcrumb .current_crumb, .breadcrumb span:last-child { font-size: 1.0em; }*/

/* General class to apply to columns to style images. */
.nicf-foty-img {  }

/* Format & Judges. */
.nicf-foty-photoLHS { float: left; display: inline; margin-right: 20px; }
.nicf-foty-clear-judges { display: block; clear: both; height: 20px; width: 100%; }

/* Apply & Pre-register. */
/*.smart-forms .gui-textarea { height: 60px!important; }*/ /* Line 307 */
.question-number { float: left; margin-bottom: 15px; margin-right: 14px; font-size: 1.2em; font-weight: bold; color: #00acee; }

/* Finals pages. */
.nicf-foty-LHS { float: right; margin: 10px 20px 0px 12px; padding: 4px; background: #fcfcfc; border: 1px solid #ccc; }
.left { float: left; margin: 10px 12px 0px 20px; padding: 4px; background: #fcfcfc; border: 1px solid #ccc; }
.right { float: right; margin: 10px 20px 0px 12px; padding: 4px; background: #fcfcfc; border: 1px solid #ccc; }
.semi-finalist { margin: 10px auto; padding: 4px; background: #fcfcfc; border: 1px solid #ccc; }
.nicf-foty-clear { width: 100%; display: block; clear: both; height: 20px; }

/* Sponsors. */
.nicf-foty-sponsorlogo { margin-bottom: 10px; }

/* Previous Competitions. */
.nicf-foty-prev-container { background: #fcfcfc; text-align: center; }
.nicf-foty-prev-container img { display: block; padding: 4px; border: 1px solid #999; margin-bottom: 4px; }
.nicf-foty-prev-container a { text-decoration: none; }

.nicf-foty-semipeople-pics { text-align: center; }
.nicf-foty-semipeople-pics img { display: block; margin: 20px auto 4px; max-width: 150px; height: auto; }
.nicf-foty-semipeople-pics h4 { font-size: 1.0rem; }


/* FOTY Album. Also used for NICF Open Day. */
ul#nicf-foty-album-nav { float: left; clear: both; display: block; margin: 2px 0 8px 6px; padding: 0; font-size: .9em; list-style: none; }
ul#nicf-foty-album-nav li { padding: 0; float: left; display: block; list-style: none; }
ul#nicf-foty-album-nav li a, ul#nicf-foty-album-nav li a:visited { text-decoration: none; color:#888; padding-bottom:1px; }
ul#nicf-foty-album-nav li a:hover, ul#nicf-foty-album-nav li a:active { color: #333; text-decoration: none; }
ul#nicf-foty-album-nav .index { width:90px; margin-left: 5px; }
ul#nicf-foty-album-nav .pageNumber { padding:0 2px 0 7px; }
ul#nicf-foty-album-nav .pagnation { padding: 0 2px 0 7px; }

ul#nicf-foty-album-data { margin: 0; padding: 0 10px 0 0px; text-align: left; font-size: .8em; list-style: none; color: #666; }
ul#nicf-foty-album-data li { /*display: inline;*/ list-style: none; }
.detail ul#nicf-foty-album-data { margin: 0 0 0 15px; }
.detail ul#nicf-foty-album-data li { display: block; clear: right; text-align: left; }
ul#nicf-foty-album-nav li.nicf-foty-fullsize { padding-left: 20px!important; }

.nicf-foty-thumb { float: left; margin: 6px; padding: 4px 4px 4px 4px; border: 1px solid #d3d3d3; height: 107px!important; width: auto; overflow: hidden; } /* 2024 AMENDMENT */
.nicf-foty-thumb img { display: block; max-height: 100%; width:auto; } /* 2024 AMENDMENT */
.nicf-foty-photo { padding: 5px; background-color: #fafafa; border: 1px solid #d3d3d3; max-width: 100%; height: auto; margin-top: 20px; margin-bottom: 30px; }



/* NICF Open Day. Uses some FOTY classes. */
.nicf-openday-thumb { float: left; margin: 14px; padding: 4px 4px 4px 4px; border: 1px solid #d3d3d3; height: 160px!important; width: auto; overflow: hidden; } /* 2024 AMENDMENT */
.nicf-openday-thumb img { display: block; max-height: 100%; width:auto; }


