SITE CODE INJECTIONS
HEADER
<style>
/* DOCSLAB THEME ONLY */
body {
background-color: #000 !important;
background: url(https://fisher.1namespace.com/content/images/2023/03/back-1.gif) repeat-x;
}
.menu-wrapper {
flex-direction: column;
text-align: center;
margin: 0 auto;
}
@media screen and (max-width: 1080px) and (min-width: 992px) {
.center-menu {
margin: 0;
}
}
@media screen and (max-width: 991px) {
#nav {
position: absolute;
top: 100%;
background-color: #000;
}
}
@media screen and (max-width: 575px) {
.mobile-menu-bar {
margin: 0;
}
}
.post-content, .post-content-footer {
background: #26262c;
padding: 20px;
border-radius: 5px;
}
.header-area,
.hero-section,
.promo-section,
.footer-section,
.copy-right-section,
.bg-promo-section .promo-section {
background:transparent;
}
.logo {
max-width: 250px;
text-align: center;
margin: 0 auto;
}
.post-wrapper {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.single-tag-box {
padding: 0;
height: 100%;
transition: background-color .3s ease-in-out;
}
.hero-section,
.promo-section,
.sidebar-docs,
.promo-icon,
.breadcrumbs-section,
.tag-details,
.footer-section {
display: none !important;
}
@media (min-width: 992px) {
.col-lg-4 {
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
}
</style>
<style>
/* UNIVERSAL TO ALL THEMES */
.post-author-meta,
.post-card-meta,
.post-content-footer {
display: none !important;
}
div.gh-content.gh-canvas p img {
margin: 0 auto;
}
</style>
<style>
/* mega menu */
li.menu-item-has-children {
position: relative;
padding-right: 20px!important;
display: inline-block;
}
.center-menu ul li a,
li.menu-item-has-children a {
font-family: Tahoma !important;
font-size: 14px !important;
font-weight: 400 !important;
letter-spacing: 0.1em;
text-transform: uppercase !important;
line-height: 20px;
}
.menu-item-has-children svg {
position: absolute;
right: -6px;
top: 56%;
transform: translate(-0%, -50%) scale(1);
display: none;
}
ul.ghost-submenu {
background: #fff;
color: #000;
padding: 0;
border-radius: 5px;
width: 180px;
max-width: 180px;
position: absolute;
visibility: hidden;
z-index: 1;
opacity: 0;
top: 24px;
transition: 0.3s;
box-shadow: 0 1px 5px 0 rgb(0 0 0 / 14%);
/* left: 0; */
}
li.menu-item-has-children:hover ul.ghost-submenu {
visibility: visible!important;
opacity: 1!important;
top: 24px!important;
}
ul.ghost-submenu li {
list-style: none;
padding: 0;
}
/*
ul li {
opacity: 0;
}
*/
li.nav-item.menu-item-has-children.menu-item-has-megamenu ul.ghost-submenu {
width: 100vh;
}
</style>
<style>
/*
.center-menu ul li a {
font-size: 14px;
line-height: 20px;
}
*/
a.nav-about-fcg-has_child {
border-bottom:4px solid #337e8b !important;
}
ul.ghost-submenu a.nav-our-clients-subitem,
ul.ghost-submenu a.nav-client-testimonials-subitem,
ul.ghost-submenu a.nav-contact-us-subitem {
background: #337e8b;
color: #fff;
min-width: 180px;
text-align: left;
padding: 0 10px;
font-size: 10px !important;
font-weight: 400 !important;
}
a.nav-our-expertise-has_child {
border-bottom:4px solid #ff9000 !important;
}
ul.ghost-submenu a.nav-assessments-subitem,
ul.ghost-submenu a.nav-services-products-subitem,
ul.ghost-submenu a.nav-how-we-work-subitem,
ul.ghost-submenu a.nav-quotes-subitem {
background: #ff9000;
color: #fff;
min-width: 180px;
text-align: left;
padding: 0 10px;
font-size: 10px !important;
font-weight: 400 !important;
}
a.nav-corporate-culture-has_child {
border-bottom:4px solid #8bc800 !important;
}
ul.ghost-submenu a.nav-like-it-or-not-culture-matters-subitem,
ul.ghost-submenu a.nav-the-denison-culture-model-subitem,
ul.ghost-submenu a.nav-linking-culture-with-performance-subitem,
ul.ghost-submenu a.nav-self-assessments-subitem {
background: #8bc800;
color: #fff;
min-width: 180px;
text-align: left;
padding: 0 10px;
font-size: 10px !important;
font-weight: 400 !important;
}
a.nav-articles-publications-has_child {
border-bottom:4px solid #c6007d !important;
}
ul.ghost-submenu a.nav-conference-presentations-subitem,
ul.ghost-submenu a.nav-conference-organizers-subitem {
background: #c6007d;
color: #fff;
min-width: 180px;
text-align: left;
padding: 0 10px;
font-size: 10px !important;
font-weight: 400 !important;
}
</style>
FOOTER
<script>
(function ($) {
"use strict";
function multiLevel(targetElement = "ul li", mLhasSubmenu = "mL-has-submenu", mLsubmenu = "mL-submenu") {
let mLparentDetecttext = "[-]";
let mLchildDetectText = "[--]";
let mLdomArrayElement = [];
let mLparentIndex = [];
let mLparentLen = 0;
// Find Dropdown parent element
$(`${targetElement} li`).each(function (index, element) {
if ($(this).text().includes(mLparentDetecttext)) {
mLparentIndex.push(index); // Make dropdown parent array index
mLparentLen++;
$(this).push(element);
if (!$(this).hasClass('menu-item-has-children')) {
$(this).addClass(mLhasSubmenu); // Add claas in dropdown element
}
$(this).append(`<ul class="${mLsubmenu}"></ul>`); // Append submenu element
}
});
let elIndex;
// Code last multilevel
let lastMlElementText = $(`.${mLhasSubmenu}`).last().text();
// console.log(lastMlElement);
// Using loop to reach dropdown parent element
for (let i = 0; i < mLparentLen; i++) {
elIndex = 0 // Initial elemet value
// Find subitem element
$(`${targetElement} li`).each(function (index, element) {
let mLsubitem = $(this).text().includes(mLchildDetectText); // Find subitem element
if (mLsubitem) {
if (elIndex + 1 >= mLparentIndex[i + 1] + 1) { // Each loop will be break
return false; //Stoped each loop
}
if (elIndex <= mLparentIndex[i + 1] || elIndex >= mLparentIndex[mLparentIndex.length - 1]) {
if (!mLparentIndex.includes(index)) { //Check if not index already insert
mLdomArrayElement.push(element); // Incert subitem element in dom array
mLparentIndex.push(index); // incert subitem index in indexPush array
}
}
}
elIndex++; // increase element index value
});
$(`.${mLhasSubmenu} ul.${mLsubmenu}:eq(${i})`).append(mLdomArrayElement); // Append related subitem dom element into submenu
mLdomArrayElement = []; // Make dom array element empty.
}
let lastMlElementIndex = 0; // Find subitem element
let lastChildIndex = 0, lastChildElementText;
$(`${targetElement} li`).each(function (index, element) {
let lastMlElement = $(this).text().includes(lastMlElementText); // Find subitem element
if (lastMlElement) {
if (!$(this).hasClass('mLlastPrentElement')) {
$(this).addClass('mLlastPrentElement');
lastChildElementText = $(this).parent().children('li').last().text();
lastMlElementIndex = index;
}
}
if ($(this).text().includes(lastChildElementText)) {
lastChildIndex = index;
}
if (lastMlElementIndex < index && lastMlElementIndex > 0) {
$(this).addClass('mLlastChildElements');
$(".mLlastPrentElement ul").append($(`.mLlastChildElements`));
if (lastChildIndex == index) {
return false;
}
}
});
remove_text(mLhasSubmenu, mLparentDetecttext);
remove_text('subitem', mLchildDetectText);
}
function remove_text(textClass, replacedText) {
const mLhasSubmenuEL = $(`.${textClass}`);
mLhasSubmenuEL.each(function () {
if ($(this).find("> a:first").text().includes(replacedText)) {
let textFull = $(this).find("> a:first").text(); // Find has child inner text
$(this).find("> a:first").text(textFull.replaceAll(replacedText, ""));
}
});
}
function megamenu(hasMegaMenuClasses = "menu-item-has-megamenu", col = 3, item_slice = 4, hasMegaMenuDetectText = "[has_megamenu]", submenuUlClasses = "ghost-submenu") {
let megaMenuEl = $(`.${hasMegaMenuClasses} li`);
$(`.${hasMegaMenuClasses} .${submenuUlClasses}`).addClass('row');
let titleText = [];
let titleIndex = 0;
megaMenuEl.each(function (index, element) {
if ($(this).text().includes("[title]")) {
titleIndex++;
$(this).addClass("megamenu-title");
titleText.push($(this).text())
$(".megamenu-title").empty();
}
});
for (let i = 0; i < megaMenuEl.length; i += item_slice) {
megaMenuEl.slice(i, i + item_slice).wrapAll(`<div class='col-md-${col}'></div>`);
// console.log(titleText[i]);
// console.log(titleText);
}
for (let i = 0; i < titleText.length; i++) {
$(`.${submenuUlClasses} > div:eq(${i})`).prepend(`<h6 class="megamenu-title-text text-danger">${titleText[i]}</h6>`);
$(".megamenu-title-text").text(titleText[i].replaceAll("[title]", ""));
}
remove_text(hasMegaMenuClasses, hasMegaMenuDetectText);
}
function ghost_dropdown(options) {
// Default options
let defultOptions = {
targetElement: "nav.ul li",
hasChildrenClasses: "menu-item-has-children",
hasChildDetectText: "[has_child]",
hasChildrenIcon: "<svg width='19' height='10' viewBox='0 0 19 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M1.74805 1.52002L9.54883 9.00002L17.3496 1.52002' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>",
hasMegaMenuDetectText: "[has_megamenu]",
hasMegaMenuClasses: "menu-item-has-megamenu",
submenuUlClasses: "ghost-submenu",
subitemDetectText: "[subitem]",
subitemLiClasses: "subitem"
}
//Marge defaultOptions
options = {
...defultOptions,
...options
}
// Target Element
let targetElement = options.targetElement;
//Default value
let hasChildrenClasses = options.hasChildrenClasses;
let hasChildDetectText = options.hasChildDetectText;
let hasMegaMenuClasses = options.hasMegaMenuClasses;
let hasMegaMenuDetectText = options.hasMegaMenuDetectText;
let hasChildrenIcon = options.hasChildrenIcon;
let submenuUlClasses = options.submenuUlClasses;
let subitemDetectText = options.subitemDetectText;
let subitemLiClasses = options.subitemLiClasses;
// Declare neccesary variable
let parentEl = $(targetElement);
let childEL = $(targetElement);
let parentLen = 0;
let domArrayElement = [];
let indexPush = [];
let elIndex = 0;
let parentIndex = [];
$(`${targetElement}`).parent().addClass('ghost-dropdown-menu');
let that;
// Find Dropdown parent element
parentEl.each(function (index, element) {
if ($(this).text().indexOf(hasChildDetectText) >= 0) {
parentIndex.push(index); // Make dropdown parent array index
parentLen++;
$(this).push(element);
$(this).addClass(hasChildrenClasses); // Add claas in dropdown element
$(this).append(`<ul class='${submenuUlClasses}'></ul>`); // Append submenu element
$(targetElement).css("opacity", "1");
}
if ($(this).text().includes(hasMegaMenuDetectText)) {
$(this).addClass(hasMegaMenuClasses);
that = $(this);
}
});
$(targetElement).css("opacity", "1");
$(`.${hasChildrenClasses}`).append(hasChildrenIcon);
if(!$(hasChildrenClasses).length){
$(targetElement).css("opacity", "1");
}
// Using loop to reach dropdown parent element
for (let i = 0; i < parentLen; i++) {
elIndex = 0 // Initial elemet value
// Find subitem element
childEL.each(function (index, element) {
let subitem = $(this).text().includes(subitemDetectText); // Find subitem element
if (subitem) {
if (elIndex >= parentIndex[i + 1]) { // Each loop will be break
return false; //Stoped each loop
}
if (elIndex <= parentIndex[i + 1] || elIndex >= parentIndex[parentIndex.length - 1]) {
if (!indexPush.includes(index)) { //Check if not index already insert
$(this).addClass(subitemLiClasses); // Add class in subitem element
let st = $(this).children().text(); // Find subitem inner text
$(this).children().text(st.replaceAll(subitemDetectText, "")); // Replace subitem inner text
domArrayElement.push(element); // Incert subitem element in dom array
indexPush.push(index); // incert subitem index in indexPush array
}
}
}
elIndex++; // increase element index value
});
$(`.${hasChildrenClasses} ul.${submenuUlClasses}:eq(${i})`).append(domArrayElement); // Append related subitem dom element into submenu
domArrayElement = []; // Make dom array element empty.
}
remove_text(hasChildrenClasses, hasChildDetectText);
if (options.multi_level) {
multiLevel();
}
if (options.mega_menu) {
megamenu(hasMegaMenuClasses, 3, 4, hasMegaMenuDetectText, submenuUlClasses);
}
}
$(document).ready(function () {
ghost_dropdown({
targetElement: "ul#nav li",
hasChildrenClasses: "menu-item-has-children",
hasChildrenIcon: "<svg width='19' height='10' viewBox='0 0 19 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M1.74805 1.52002L9.54883 9.00002L17.3496 1.52002' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>",
hasChildDetectText: "[has_child]",
submenuUlClasses: "ghost-submenu",
subitemDetectText: "[subitem]",
subitemLiClasses: "subitem",
multi_level: true,
mega_menu: true
});
});
}(jQuery));
</script>