/*
Theme Name: Xorbeo Interior Design Theme
Theme URI: https://xorbeo.com/
Author: Interior Design Theme
Author URI: https://xorbeo.com/
Description:Create a fully responsive menu and widget system featuring modern category tabs, smooth pagination, and an intuitive user interface. Ensure mobile-first design, fast performance, clean navigation, accessibility, and seamless adaptation across all screen sizes and devices.
Version: 1.0
*/
:root {
	--header-bg-color: #0d47a1;
	--text-color: #000;
	--menu-color:#fff;
	--footer-bg-color: #0d47a1;
	--shadow-color: #ccc;
	--icon-color: #fff;
	--smo-bg-color:#222;
	--smo-bg-hover-color:#111;
	--border-color:#fff;
	--button-color:#222;
	--button-hover-color:#0095c8;
	--a-color:#222;
	--a-hover-color:#000;
	--prevnext-color:#222;
	--dot-color:#222;
	--active-color:#222;
	--title-color:#222;
	--tag-color:#d0b67e;
	--tag-hover-color: #222;
	--pagination-color: #222;
	--pagination-current-color: #222;
	--pagination-hover-color: #222;
}
.page-body {
	margin-top: 100px;
	margin-bottom: 50px;
}
/* =========================
Navbar
========================= */
nav{
	background: var(--cream);
	position: fixed;
	top: 0;
	left: 0px;
	width: 100%;
	z-index: 1000;
	padding: 0px 75px;
	box-shadow:1px 1px 18px -10px var(--cream);
}

.nav-container{
	margin:auto;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.logo a{
	color:var(--a-color);
	text-decoration:none;
	font-size:24px;
	font-weight:700;
}
.logo img {
	width: 50%;
	height:auto;
}
/* =========================
Menu
========================= */
.menu{
	list-style:none;
	display:flex;
	margin:0;
	padding:0;
}

.menu li{
	position:relative;
}

.menu a{
	display:block;
	color:var(--text-color);
	text-decoration:none;
	padding:15px 20px;
	transition:.3s;
	background-color:var(--cream);
}

.menu a:hover{
	background:transparent;
}

/* =========================
Dropdown Arrow
========================= */
.menu-item-has-children > a{
	display:flex;
	align-items:center;
	gap:8px;
}

.menu-item-has-children > a::after{
	content:"";
	width:6px;
	height:6px;
	border-right:2px solid #000;
	border-bottom:2px solid #000;
	transform:rotate(45deg);
	transition:.3s;
	margin-top:0px;
}

.menu-item-has-children:hover > a::after{
	transform:rotate(225deg);
	margin-top:10px;
}

/* =========================
Sub Menu
========================= */
.sub-menu{
	position:absolute;
	top:100%;
	left:0;
	min-width:220px;
	list-style:none;
	margin:0;
	padding:0;
	background:var(--menu-color);
	border-radius:8px;
	overflow:hidden;
	box-shadow:0 10px 25px var(--shadow-color);

	opacity:0;
	visibility:hidden;
	transform:translateY(10px);
	transition:.3s;
	z-index:999;
}

.sub-menu li{
	width:100%;
}

.sub-menu a{
	color:var(--text-color);
	padding:12px 15px;
	white-space:nowrap;
}

.sub-menu a:hover{
	background:transition;
}

.menu li:hover > .sub-menu{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
}

/* =========================
Mobile Controls
========================= */
#menu-toggle{
	display:none;
}

.hamburger{
	display:none;
	color:var(--text-color);
	font-size:30px;
	cursor:pointer;
	z-index:1002;
}
.hamburger {
	font-size: 30px;
	cursor: pointer;
}

/* Default icon */
.hamburger::before {
	content: "☰";
}

/* When checked, show X */
#menu-toggle:checked + .hamburger::before {
	content: "✕";
}
/* =========================
Mobile Controls
========================= */
.fixed-height {
	margin-top: 80px;
}
/* Buttons */
.prev, .next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: var(--prevnext-color);
	color: var(--text-color);
	border: none;
	padding: 6px 15px;
	cursor: pointer;
	border-radius: 50%;
}

.prev { left: 10px; }
.next { right: 10px; }

/* Dots */
.dots {
	margin-top: 10px;
}

.dot {
	height: 10px;
	width: 10px;
	margin: 5px;
	display: inline-block;
	background: var(--dot-color);
	border-radius: 50%;
	cursor: pointer;
}

.active {
	background: var(--active-color);
}

@media (max-width:768px){

	.hamburger{
		display: block;
        position: absolute;
        right: 20px;
	}

	.menu{
		position:fixed;
		top:56px;
		right:-300px;
		width:280px;
		height:100vh;
		background:var(--cream);
		flex-direction:column;
		padding-top:70px;
		transition:right .35s ease;
		z-index:999;
		overflow-y:auto;
	}

	#menu-toggle:checked ~ .overlay{
		opacity:1;
		visibility:visible;
	}

	#menu-toggle:checked ~ .menu{
		right:0;
	}

	.menu a{
		padding:16px 25px;
		display:flex;
		align-items:center;
		border-bottom:1px solid var(--border-color);
	}

	/* Mobile Arrow */

	.menu-item-has-children > a::after{
		margin-left:auto;
		transition:transform .3s ease;
		transform:rotate(313deg);
		margin-top:7px;
	}
	.menu-item-has-children:hover > a::after{
		transform:rotate(313deg);
		margin-top:7px;
	}
	.menu-item-has-children.active > a::after{
		transform:rotate(45deg);
	}

	/* Mobile Sub Menu */
	.sub-menu{
		position:static;
		display:none;
		width:100%;
		background:var(--menu-color);
		box-shadow:none;
		border-radius:0;
		opacity:1;
		visibility:visible;
		transform:none;
	}

	.menu-item-has-children.active > .sub-menu{
		display:block;
	}

	.sub-menu a{
		color:var(--a-color);
		padding-left:40px;
	}

	.sub-menu a:hover{
		background:transparent;
	}
	.stats {
		flex-direction: column;
	}

}

@media (min-width: 320px) and (max-width: 480px) {
	.container{
		width:100%;
	}
	.logo{
		margin-left: 10px;
	}
	.globbg{
		padding: 15px;
	}
	.cardcontainer{
		margin-top: -62px;
	}
	.card img{
		height:auto;
	}
	nav {
		padding: 0px;
	}
	.slide-heading{
		padding: 11px 0px 0px 0px;
		text-align: left;
		font-size: 14px;
		line-height: 24px;
		margin-top: -50px;
	}
	/*Blog Panel*/
	.single-post .left-side{
		padding:10px !important;
	}
	.card.muse_threeblock_card img{
		height:auto;
	}
	.blog-panel .card-body{
		padding:5px;
	}
	.blog-panel .card-title {
		font-size: 14px;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.blog-panel input.search-field, .single-post input.search-field{
		width:75%;
	}
	.search-submit{
		position: relative;
		top: 0px;
		float: inherit;
		right: 0px;
	}
	.related-post h4 {
		color: var(--title-color);
		font-size: 14px;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.search-item a{
		font-size:18px;
	}
	/*Blog Panel*/
}


/* =========================
Footer
=========================*/
footer {
	background: var(--footer-bg-color);
	color: var(--text-color);
}
footer ol, ul{
	padding:0px !important;
}
.footer-container {
	width: 90%;
	max-width: 1300px;
	margin: auto;
	padding: 70px 0 40px;

	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1.5fr;
	gap: 50px;
}

.footer-logo {
	font-size: 32px;
	font-weight: bold;
	color: var(--title-color);
	margin-bottom: 15px;
}

.footer-about p {
	color: var(--text-color);
	line-height: 1.8;
	margin-bottom: 25px;
}

.social-icons {
	display: flex;
	gap: 15px;
}

.social-icons a {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--smo-bg-color);
	color: var(--icon-color);
	text-decoration: none;
	transition: 0.4s;
	font-size: 18px;
}

.social-icons a:hover {
	background: var(--smo-bg-hover-color);
	transform: translateY(-5px);
}

.footer-title {
	font-size: 20px;
	margin-bottom: 25px;
	position: relative;
}

.footer-title::after {
	content: "";
	width: 50px;
	height: 3px;
	background: var(--border-color);
	position: absolute;
	left: 0;
	bottom: -8px;
}

.footer-links ul {
	list-style: none;
}

.footer-links li {
	margin: 15px 0;
}

.footer-links a {
	color: var(--a-color);
	text-decoration: none;
	transition: 0.3s;
}

.footer-links a:hover {
	color: var(--a-hover-color);
	padding-left: 8px;
}

.contact-item {
	display: flex;
	margin-bottom: 18px;
	align-items: flex-start;
}

.contact-item i {
	color: var(--icon-color);
	width: 30px;
	margin-top: 5px;
}

.contact-item span {
	color: var(--text-color);
	line-height: 1.6;
}

.newsletter {
	margin-top: 25px;
}

.newsletter input {
	width: 100%;
	padding: 14px;
	border: none;
	outline: none;
	border-radius: 6px;
	margin-bottom: 12px;
}

.newsletter button {
	width: 100%;
	padding: 14px;
	border: none;
	background: var(--button-color);
	color: var(--text-color);
	font-size: 16px;
	border-radius: 6px;
	cursor: pointer;
	transition: 0.3s;
}

.newsletter button:hover {
	background: var(--button-hover-color);
}

.footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	padding: 20px 8%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 15px;
}

.footer-bottom p {
	color: var(--text-color);
}

.footer-bottom-links a {
	color: var(--a-color);
	text-decoration: none;
	margin-left: 20px;
	transition: 0.3s;
}

.footer-bottom-links a:hover {
	color: var(--a-hover-color);
}

@media (max-width: 1100px) {
	.footer-container {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 700px) {
	.footer-container {
		grid-template-columns: 1fr;
	}

	.footer-bottom {
		flex-direction: column;
		text-align: center;
	}

	.footer-bottom-links a {
		margin: 10px;
		display: inline-block;
	}
}
/* =========================
Footer
=========================*/