@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Medium.woff2')format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Semibold.woff2')format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Bold.woff')format("woff");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Extralight.woff')format("woff");
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Light.woff')format("woff");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Regular.woff')format("woff");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: Generalsans;
	src: url('fonts/GeneralSans-Italic.ttf')format("truetype");
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

#retail-floorplans, #self-storage-floorplans, #warehouse-floorplans {
	border: none !important;
}

#retail-floorplans tr td, 
#self-storage-floorplans tr td, 
#warehouse-floorplans tr td,
#retail-floorplans thead tr th,
#self-storage-floorplans thead tr th,
#warehouse-floorplans thead tr th {
	text-align: center;
	border: none !important;
	color: #f4f1ea;
	font-family: Generalsans,sans-serif;	
}

#retail-floorplans thead tr th,
#self-storage-floorplans thead tr th,
#warehouse-floorplans thead tr th { 
	background-color: #202932;
	padding: 10px;
	word-break: normal;
	font-weight: 600;
	vertical-align: middle;
	font-size: 14px;
	color: #f4f1ea;
	border-top: 1px solid #f4f1ea !important;
}
	
#retail-floorplans tr td,
#self-storage-floorplans tr td,
#warehouse-floorplans tr td {
	font-size: 16px;
	padding: 8px !important;
	text-align: center !important;
	vertical-align: middle !important;
}

#retail-floorplans tr,
#self-storage-floorplans tr,
#warehouse-floorplans tr {
	border-top: 1px solid #46505b;
}

#retail-floorplans tr:nth-child(even),
#self-storage-floorplans tr:nth-child(even),
#warehouse-floorplans tr:nth-child(even) {
	background-color: #202932;
} 

#retail-floorplans tr:nth-child(odd),
#self-storage-floorplans tr:nth-child(odd),
#warehouse-floorplans tr:nth-child(odd) {
	background-color: #333c48;
} 

#retail-floorplans tr:hover,
#self-storage-floorplans tr:hover,
#warehouse-floorplans tr:hover {
	background-color: #455468;
}

.floorplan-img, .model3d-img {
	width: 23px !important;
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
	margin: 0 auto;
}

.floorplan-img:hover {
	cursor: pointer;
}

#retail-floorplans-tbl {
	height: 70vh;
	display: flex;
	align-items: flex-start;
} 

/*
.floorplan-tab ul li a, .floorplan-tab ul li:last-child a {
	border: 1px solid #344252;
    border-radius: 10px;
	background-color: #344252; 
	margin-right: 10px; 
	padding: 12px 18px;  
	color: #fff; 
}

.floorplan-tab .wpb_tabs_nav li > a:not(.active-tab):hover {
	background-color: rgba(0, 0, 0, .035) !important;
}

.floorplan-tab .tab-item > a {
    display: flex;
    align-items: center;
    gap: 8px;
}

.floorplan-tab .tab-item > a > span {
    display: flex;
    align-items: center;
}

.floorplan-tab .tab-item:nth-child(1) > a > span::before {
    content: "";
    width: 30px;
    height: 30px;
    margin-right: 12px;
    display: inline-block;
    background: url('../../img/warehouse-icon.svg') center/contain no-repeat;
}

 .floorplan-tab .tab-item:nth-child(2) > a > span::before {
    content: "";
    width: 30px;
    height: 30px;
    margin-right: 12px;
    display: inline-block;
    background: url('../../img/retail-icon.svg') center/contain no-repeat;
}

.floorplan-tab .tab-item:nth-child(3) > a > span::before {
    content: "";
    width: 30px;
    height: 30px;
    margin-right: 12px;
    display: inline-block;
    background: url('../../img/storage-icon.svg') center/contain no-repeat;
}
*/


/* =========================================
   FLOORPLAN TABS
   ========================================= */
.floorplan-tab ul {
    display: flex;
    gap: 12px;
}

.floorplan-tab ul li {
    flex: 1;
	max-width: 160px;
}

/* Tab card */
.floorplan-tab ul li a,
.floorplan-tab ul li:last-child a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70px;
    margin-right: 0;
    padding: 8px 30px;
    background: #344252;
    border: 1px solid #344252;
    border-radius: 10px;
    color: #fff;
    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}

/* Icon + label wrapper */
.floorplan-tab .tab-item > a > span {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.2;
    text-align: center;
}


/* =========================================
   ICONS
   ========================================= */
.floorplan-tab .tab-item > a > span::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    margin: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}


/* Warehouse */
.floorplan-tab .tab-item:nth-child(1) > a > span::before {
    background-image: url('../../img/warehouse-icon.svg');
}


/* Retail */
.floorplan-tab .tab-item:nth-child(2) > a > span::before {
    background-image: url('../../img/retail-icon.svg');
}


/* Self Storage */
.floorplan-tab .tab-item:nth-child(3) > a > span::before {
    background-image: url('../../img/storage-icon.svg');
}


/* =========================================
   BOTTOM INDICATOR
   ========================================= */
.floorplan-tab .tab-item > a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 80px;
    height: 4px;
    transform: translateX(-50%);
    background: #647485;
    border-radius: 4px 4px 0 0;
    transition:
        background-color 0.25s ease,
        width 0.25s ease;
}


/* =========================================
   ACTIVE TAB
   ========================================= */
.floorplan-tab .tab-item > a.active-tab,
.floorplan-tab .tab-item.active-tab > a {
    /* background: #9e1b26; */
	background: black;
    border-color: #9e1b26;
}

/* Active red indicator */
.floorplan-tab .tab-item > a.active-tab::after,
.floorplan-tab .tab-item.active-tab > a::after {
    background: #ff2338; 
}

/* =========================================
   HOVER
   ========================================= */
.floorplan-tab .wpb_tabs_nav li > a:not(.active-tab):hover {
    background-color: #3d4c5d !important;
    border-color: #3d4c5d;
    transform: translateY(-2px);
}

@media only screen and (max-width:767px) {
	.tbl-col-lbl {
		font-size: 11px !important;
		line-height: 20px !important; 
	}
		
	.sm-hide {
		display: none !important; 
	}
	
	/*
	.floorplan-tab ul li a, .floorplan-tab ul li:last-child a { 
		padding: 10px 15px; 
	}
	
	.floorplan-tab .wpb_tabs_nav li > a {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
	}

    .floorplan-tab .wpb_tabs_nav li > a > span {
		display: grid;
		justify-items: center;
		align-content: center;
		row-gap: 8px;
		width: 100%;
		text-align: center;
	}

	.floorplan-tab .tab-item > a > span::before {
		content: "";
		width: 30px;
		height: 30px;
		display: block;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		margin: 0 !important;
	}

    .floorplan-tab .tab-item:nth-child(1) > a > span::before {
        background-image: url('../../img/warehouse-icon.svg');
    }

    .floorplan-tab .tab-item:nth-child(2) > a > span::before {
        background-image: url('../../img/retail-icon.svg');
    }

   .floorplan-tab .tab-item:nth-child(3) > a > span::before {
        background-image: url('../../img/storage-icon.svg');
    }
	*/
	
	.floorplan-tab ul {
        gap: 8px;
    }

    .floorplan-tab ul li a,
    .floorplan-tab ul li:last-child a {
        min-height: 90px;
        padding: 12px 8px;
    }

    .floorplan-tab .tab-item > a > span {
        gap: 7px;
        font-size: 13px;
    }

    .floorplan-tab .tab-item > a > span::before {
        width: 30px;
        height: 30px;
    }

    .floorplan-tab .tab-item > a::after {
        width: 50px;
        height: 3px;
    }	
}