/*====================================================
Business Page Layout
====================================================*/

.fd-business-page{

    max-width:1400px;

    margin:40px auto;

    padding:0 20px;

}

.fd-business-main{

    display:grid;

    grid-template-columns:minmax(0,1fr) 360px;

    gap:35px;

    align-items:start;

}

.fd-business-left{

    min-width:0;

}

.fd-business-right{

    position:sticky;

    top:25px;

    align-self:start;

}

.fd-sidebar-card{

    background:#fff;

    border:1px solid #e9ecef;

    border-radius:14px;

    padding:25px;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.fd-sidebar-card .fd-btn{

    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

    margin-bottom:12px;

}

.fd-sidebar-hours{

    margin:20px 0;

    padding-top:20px;

    border-top:1px solid #ececec;

}

@media(max-width:992px){

    .fd-business-main{

        grid-template-columns:1fr;

    }

    .fd-business-right{

        position:static;

        margin-top:30px;

    }

}



/*====================================================
Business Header
====================================================*/

.fd-business-header{

    background:#ffffff;
    border:1px solid #e8e8e8;
    border-radius:16px;
    padding:30px;
    margin-bottom:25px;
    box-shadow:0 8px 24px rgba(0,0,0,.06);

}

.fd-business-header h2{

    font-size:34px;
    margin:0 0 15px;
    line-height:1.3;
    font-weight:700;

}

.fd-business-rating{

    font-size:18px;
    margin-bottom:20px;
    color:#f59e0b;
    font-weight:600;

}

.fd-contact-buttons{

    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:20px;

}

.fd-contact-buttons .fd-btn,
.fd-contact-btn{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:12px 20px;

    border-radius:10px;

    text-decoration:none;

    font-weight:600;

    transition:.25s;

}

.fd-contact-buttons .fd-btn:hover,
.fd-contact-btn:hover{

    transform:translateY(-2px);

}

.fd-header-top{
    display:flex;
    gap:20px;
    align-items:center;
    margin-bottom:25px;
}

.fd-business-logo{
    flex:0 0 100px;
}

.fd-logo{
    width:100px;
    height:100px;
    object-fit:cover;
    border-radius:12px;
    display:block;
    border:1px solid #eee;
}

.fd-header-details{
    flex:1;
}

.fd-business-title{
    margin:0 0 10px;
}





/*====================================================
Sidebar Buttons
====================================================*/

.fd-sidebar-card .fd-btn{

    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    min-height:48px;

    padding:12px 18px;

    margin-bottom:12px;

    border-radius:10px;

    color:#fff !important;
    text-decoration:none;

    font-weight:600;
    font-size:15px;

    transition:.25s;

    box-sizing:border-box;

}

.fd-sidebar-card .fd-btn:hover{

    color:#fff !important;

    transform:translateY(-2px);

    text-decoration:none;

}

/* Call */

.fd-sidebar-card .fd-call{

    background:#16a34a;

}

.fd-sidebar-card .fd-call:hover{

    background:#15803d;

}

/* WhatsApp */

.fd-sidebar-card .fd-whatsapp{

    background:#25D366;

}

.fd-sidebar-card .fd-whatsapp:hover{

    background:#1ea952;

}

/* Website */

.fd-sidebar-card .fd-website{

    background:#2563eb;

}

.fd-sidebar-card .fd-website:hover{

    background:#1d4ed8;

}

/* Email */

.fd-sidebar-card a[href^="mailto"]{

    background:#7c3aed;

}

.fd-sidebar-card a[href^="mailto"]:hover{

    background:#6d28d9;

}

/* Claim */

.fd-sidebar-card .fd-claim-btn{

    background:#f59e0b;

}

.fd-sidebar-card .fd-claim-btn:hover{

    background:#d97706;

}

/* Report */

.fd-sidebar-card .fd-report-btn{

    background:#dc2626;

}

.fd-sidebar-card .fd-report-btn:hover{

    background:#b91c1c;

}




/*====================================================
Header Badges
====================================================*/

.fd-header-meta{

	display:flex;
	flex-wrap:wrap;
	gap:10px;

	margin-top:12px;

}

.fd-meta-badge{

	display:inline-flex;
	align-items:center;

	padding:8px 14px;

	border-radius:30px;

	background:#f4f7fb;

	color:#333;

	text-decoration:none;

	font-size:14px;

	font-weight:600;

	border:1px solid #e3e7ee;

	transition:.25s;

}

.fd-meta-badge:hover{

	background:#0d6efd;

	color:#fff;

	border-color:#0d6efd;

	text-decoration:none;

	transform:translateY(-2px);

}





/*====================================================
Business Logo
====================================================*/

.fd-logo-link{

	display:block;

	border-radius:12px;

	overflow:hidden;

}

.fd-logo{

	display:block;

	width:110px;

	height:110px;

	object-fit:cover;

	border-radius:12px;

	border:1px solid #e8e8e8;

	transition:transform .3s ease, box-shadow .3s ease;

}

.fd-logo-link:hover .fd-logo{

	transform:scale(1.05);

	box-shadow:0 10px 25px rgba(0,0,0,.18);

}





/*====================================================
Common Business Cards
====================================================*/

.fd-card{

	background:#fff;

	border:1px solid #e8e8e8;

	border-radius:16px;

	padding:30px;

	margin-bottom:30px;

	box-shadow:0 8px 24px rgba(0,0,0,.06);

}

.fd-card-header{

	margin-bottom:22px;

	padding-bottom:15px;

	border-bottom:1px solid #f0f0f0;

}

.fd-card-header h2{

	margin:0;

	font-size:26px;

	font-weight:700;

	color:#222;

}

.fd-card-body{

	font-size:16px;

	line-height:1.9;

	color:#555;

}

.fd-business-description p{

	margin-bottom:18px;

}

.fd-business-description p:last-child{

	margin-bottom:0;

}
.fd-business-description{

	color:#222;

}



/*====================================================
Read More
====================================================*/

.fd-readmore{

	position:relative;

	max-height:180px;

	overflow:hidden;

	transition:max-height .35s ease;

}

.fd-readmore.fd-open{

	max-height:3000px;

}

.fd-readmore:not(.fd-open)::after{

	content:"";

	position:absolute;

	left:0;

	right:0;

	bottom:0;

	height:90px;

	background:linear-gradient(
		to bottom,
		rgba(255,255,255,0),
		#fff
	);

}

.fd-readmore-btn{

	margin-top:20px;

	background:none;

	border:none;

	color:#0d6efd;

	font-weight:700;

	cursor:pointer;

	font-size:15px;

	padding:0;

}

.fd-readmore-btn:hover{

	text-decoration:underline;

}





/*====================================================
Business Information Card
====================================================*/

.fd-info-list{

	display:flex;

	flex-direction:column;

	gap:18px;

}

.fd-info-row{

	display:flex;

	align-items:flex-start;

	gap:18px;

	padding:18px 0;

	border-bottom:1px solid #f1f1f1;

}

.fd-info-row:last-child{

	border-bottom:none;

	padding-bottom:0;

}

.fd-info-icon{

	width:48px;

	height:48px;

	border-radius:12px;

	background:#f5f7fb;

	display:flex;

	align-items:center;

	justify-content:center;

	font-size:22px;

	flex-shrink:0;

}

.fd-info-content{

	flex:1;

}

.fd-info-label{

	font-weight:700;

	color:#222;

	margin-bottom:6px;

	font-size:15px;

}

.fd-info-value{

	color:#555;

	line-height:1.7;

}

.fd-info-value a{

	color:#0d6efd;

	text-decoration:none;

	font-weight:600;

}

.fd-info-value a:hover{

	text-decoration:underline;

}



.fd-closing-soon{
    color:#d97706;
    font-weight:600;
}


.fd-business-hours{
    margin-top:25px;
}

.fd-business-hours-table{
    width:100%;
    border-collapse:collapse;
}

.fd-business-hours-table th{
    width:150px;
    text-align:left;
    padding:10px;
    border-bottom:1px solid #eee;
}

.fd-business-hours-table td{
    padding:10px;
    border-bottom:1px solid #eee;
}

.fd-business-hours-table td {
    white-space: nowrap;
}

.fd-session{
    margin-bottom:6px;
}

.fd-open-now{
    color:#0a8a1f;
    font-weight:600;
}

.fd-closed-now{
    color:#d63638;
    font-weight:600;
}

.fd-hours-open24{
    color:#0a8a1f;
    font-weight:600;
}

.fd-hours-closed{
    color:#777;
}



.fd-hours-widget {
    margin-top:20px;
}

.fd-hours-toggle {
    width:100%;
    padding:12px 15px;
    margin-top:15px;
    cursor:pointer;
    background:#f7f7f7;
    border:1px solid #ddd;
    text-align:left;
    font-weight:600;
}

.fd-hours-toggle span {
    float:right;
}

.fd-hours-content {
    display:none;
    border:1px solid #ddd;
    border-top:0;
    padding:15px;
}

.fd-hours-content.active {
    display:block;
}



.fd-open-now {
    color:#0a8a1f;
    font-weight:700;
    font-size:16px;
}

.fd-closed-now {
    color:#d63638;
    font-weight:700;
    font-size:16px;
}

.fd-today-hours {
    margin-top:6px;
    font-size:14px;
}

.fd-hours-toggle {

    width:100%;
    margin-top:15px;
    padding:12px;

    background:#f8f8f8;
    border:1px solid #ddd;

    cursor:pointer;
    font-weight:600;
    text-align:left;

}

.fd-hours-toggle span {
    float:right;
}


.fd-hours-content {

    display:none;
    padding-top:15px;

}

.fd-hours-content.active {

    display:block;

}



/*==================================================
MAP
==================================================*/

#fd-business-map{

    height:450px;

    border-radius:14px;

    overflow:hidden;

    margin-top:15px;

    box-shadow:0 4px 18px rgba(0,0,0,.08);

}

.fd-map-address{

    margin:15px 0;

    padding:14px 18px;

    background:#fafafa;

    border-left:4px solid #2e7d32;

    border-radius:8px;

    line-height:1.7;

    font-size:15px;

}

.fd-map-actions{

    margin-top:18px;

}

.fd-direction-btn{

    display:inline-block;

    background:#2e7d32;

    color:#fff;

    padding:12px 24px;

    border-radius:8px;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.fd-direction-btn:hover{

    background:#1b5e20;

    color:#fff;

}




.fd-similar-businesses{

    background:#fff;

    border-radius:16px;

    padding:30px;

    border:1px solid #ececec;

    box-shadow:0 3px 15px rgba(0,0,0,.05);

    margin-top:35px;

}