/*!
Theme Name: abroad
Theme URI: https://excellentabroad.com/
Author: Basudev
Author URI: https://basudevkunwar.com.np/
Description: education themes
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: education
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

abroad is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/* =============================
   WP default widget / block styles
   Matches theme sidebar .widget look
   Paste into assets/css/style.css
   ============================= */

/* Reuse theme variables (fallbacks if not defined) */

/* Widget container general (for both block & classic widgets rendered in #secondary) */
#secondary.widget-area,
.sidebar {
	font-family: "Poppins", system-ui, Arial, sans-serif;
}

/* Generic widget wrapper for block widgets and classic widgets */
#secondary .widget,
.sidebar .widget {
	background: var(--white);
	padding: 18px;
	border-radius: 8px;
	box-shadow: 0 6px 14px rgba(31, 45, 60, 0.04);
	margin-bottom: 22px;
	border: 1px solid rgba(30, 40, 60, 0.03);
}

/* Widget headings (block and classic) */
#secondary .widget h5,
#secondary .widget .wp-block-heading,
#secondary .widget .widget-title,
.widget .block-editor-rich-text__editable h2,
#secondary .widget h2 {
	margin: 0 0 14px;
	font-size: 15px;
	font-weight: 700;
	position: relative;
	padding-bottom: 6px;
}

/* small accent underline for widget headings */
#secondary .widget h5::after,
#secondary .widget h2::after,
#secondary .widget .wp-block-heading::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 36px;
	height: 3px;
	background: var(--bs-pink);
	border-radius: 3px;
}

/* -----------------
   Search widget (block + classic)
   ----------------- */
#secondary .wp-block-search,
#secondary .widget_search,
#secondary .widget-search {
	padding: 0;
	/* inner wrapper handled below */
	background: transparent;
	box-shadow: none;
	border: none;
}

#secondary .wp-block-search__inside-wrapper,
#secondary .widget_search .search-form,
#secondary .widget-search .search-form,
#secondary .widget .input-group {
	display: flex;
	gap: 0;
	align-items: center;
	margin-top: 8px;
}

.wp-block-search__input,
#secondary input[type="search"],
#secondary .search-form .search-field,
#secondary .widget input[type="search"],
#secondary .widget .form-control {
	flex: 1 1 auto;
	border-radius: 4px;
	border: 1px solid #eef2f6;
	height: 44px;
	padding: 8px 10px;
	font-size: 14px;
	color: #222;
	box-sizing: border-box;
}

.wp-block-search__button,
#secondary .widget button[type="submit"],
#secondary .widget .btn {
	background: var(--bs-pink);
	color: #fff;
	border: none;
	width: 44px;
	height: 44px;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ensure visible focus */
.wp-block-search__input:focus,
#secondary .widget input[type="search"]:focus,
#secondary .widget .form-control:focus {
	outline: 3px solid rgba(233, 30, 99, 0.12);
	box-shadow: none;
}

/* -----------------
   Recent posts / Latest posts (block and classic)
   ----------------- */
.wp-block-latest-posts__list,
.widget_recent_entries ul,
#secondary .wp-block-latest-posts ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wp-block-latest-posts__list li,
.widget_recent_entries li,
#secondary .wp-block-latest-posts li {
	padding: 8px 0;
	border-bottom: 1px dashed rgba(0, 0, 0, 0.03);
	display: block;
}

.wp-block-latest-posts__post-title a,
.widget_recent_entries a,
#secondary .wp-block-latest-posts a,
.widget .recentcomments a {
	color: #14303c;
	font-weight: 600;
	font-size: 13px;
	text-decoration: none;
	display: inline-block;
}

.widget_recent_entries .post-date,
.wp-block-latest-posts__post-date,
#secondary .wp-block-latest-posts .post-date {
	display: block;
	font-size: 12px;
	color: var(--bs-gray-500);
	margin-bottom: 6px;
}

/* small trim for long titles */
.wp-block-latest-posts__post-title,
.widget_recent_entries li a {
	line-height: 1.25;
}

/* -----------------
   Recent Comments
   ----------------- */
.widget_recent_comments,
#secondary .widget_recent_comments {
	font-size: 14px;
}

.widget_recent_comments li,
#secondary .widget_recent_comments li {
	padding: 8px 0;
	border-bottom: 1px dashed rgba(0, 0, 0, 0.03);
}

/* -----------------
   Archives / Categories / Archives list (block & classic)
   ----------------- */
.widget_archive ul,
.widget_categories ul,
#secondary .wp-block-archives-list,
#secondary .wp-block-categories-list,
#secondary .wp-block-group .wp-block-archives,
#secondary .wp-block-group .wp-block-categories {
	list-style: disc;
	margin: 8px 0 0 18px;
	padding: 0;
}

.widget_archive li,
.widget_categories li,
#secondary .wp-block-archives-list li,
#secondary .wp-block-categories-list li {
	margin-bottom: 6px;
	color: #22313a;
}

/* make core archive widget look like list items (remove bullets if you prefer) */
.widget_archive ul li,
.widget_categories ul li {
	list-style: none;
	padding: 6px 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

/* -----------------
   Tag cloud (block + classic)
   ----------------- */
.widget_tag_cloud .tagcloud a,
#secondary .wp-block-tag-cloud a,
.widget .tagcloud a,
.tags .badge {
	display: inline-block;
	margin: 4px 6px 0 0;
	padding: 6px 8px;
	border-radius: 6px;
	border: 1px solid #e6e9ec;
	color: #24333a;
	background: transparent;
	font-weight: 600;
	text-decoration: none;
	font-size: 13px;
}

.widget_tag_cloud .tagcloud a:hover,
#secondary .wp-block-tag-cloud a:hover,
.tags .badge:hover {
	background: var(--bs-pink);
	color: #fff;
	border-color: transparent;
}

/* -----------------
   Contact/info (generic)
   ----------------- */
.widget_contact_info,
.widget.widget_text,
#secondary .widget-text,
.widget .contact-list,
.widget_contact {
	margin: 0;
	padding: 0;
}

.widget .contact-list,
.widget_contact_info .contact-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.widget .contact-list li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 10px 0;
	color: #4f5b63;
	font-size: 14px;
}

.widget .contact-list .icon {
	color: var(--bs-pink);
	font-size: 18px;
	min-width: 22px;
}

/* -----------------
   Ensure classic WP widgets match the block widgets visually
   ----------------- */
.widget_recent_entries h2,
.widget_archive h2,
.widget_categories h2,
.widget_tag_cloud h2,
.widget_search h2,
.widget_calendars h2 {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 700;
}

/* Make lists inside widgets inherit nice spacing */
#secondary .widget ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Links inside widgets */
#secondary .widget a {
	color: #14303c;
	text-decoration: none;
}

#secondary .widget a:hover {
	color: var(--bs-pink);
}

/* Pagination inside widgets, if any (tiny) */
#secondary .widget .page-numbers,
#secondary .widget .nav-links {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
	margin-top: 8px;
}

#secondary .widget .page-numbers a {
	padding: 6px 8px;
	border-radius: 4px;
	border: 1px solid rgba(0, 0, 0, 0.04);
	color: var(--bs-pink);
}

/* Accessibility focus */
#secondary .widget a:focus,
#secondary .widget button:focus,
#secondary .widget input:focus {
	outline: 3px solid rgba(233, 30, 99, 0.12);
	outline-offset: 2px;
}

/* Responsive adjustments for small screens */
@media (max-width: 767.98px) {
	#secondary .widget {
		padding: 14px;
	}

	.wp-block-latest-posts__post-title,
	.widget_recent_entries li a {
		font-size: 14px;
	}
}


/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* header-main- area style  */

.header-area .header-main-top {
	background-color: #222056;
	border-radius: 1px;
	margin: 1px;
}

@media only screen and (max-width: 767px) {
	.header-area .header-main-top {
		display: none;
	}
}

.header-area .header-main-top-inner {
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: space-between;
	height: 40px;
}

@media only screen and (max-width: 991px) {
	.header-area .header-main-top-inner {
		justify-content: center;
	}

}

.header-area .header-main-contact-meta {
	display: flex;
	align-items: center;
}

.header-area .header-main-contact-item {
	display: inline-flex;
	gap: 8px;
	align-items: center;
}

.header-area .header-main-contact-item .icon {
	font-weight: 700;
	font-size: 16px;
	color: var(--white);
	display: inline-block;
}

@media only screen and (max-width: 1199px) {
	.header-area .header-main-contact-item .icon {
		font-size: 14px;
	}
}

.header-area .header-main-contact-item .text {
	font-weight: 500;
	font-size: 16px;
	line-height: 19px;
	color: var(--white);
	display: inline-block;
}

@media only screen and (max-width: 1199px) {
	.header-area .header-main-contact-item .text {
		font-size: 14px;
	}
}

.header-area .header-main-contact-item .text a:hover {
	color: var(--white-2);
}

.header-area .header-main-contact-item:not(:first-child) {
	border-left: 1px solid #926FFD;
	padding-left: 30px;
	margin-left: 30px;
}

@media only screen and (max-width: 1199px) {
	.header-area .header-main-contact-item:not(:first-child) {
		padding-left: 20px;
		margin-left: 20px;
	}
}

.header-area .header-main-social {
	display: flex;
	align-items: center;
	gap: 20px;
}

@media only screen and (max-width: 991px) {
	.header-area .header-main-social {
		display: none;
	}
}

.header-area .header-main-social .text {
	font-size: 16px;
	line-height: 19px;
	font-weight: 500;
	color: var(--white);
	display: inline-block;
}

@media only screen and (max-width: 1199px) {
	.header-area .header-main-social .text {
		font-size: 14px;
	}
}

.header-area .header-main-social a {
	font-weight: 400;
	font-size: 14px;
	color: var(--white);
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.header-area .header-main-social a:hover {
	color: var(--white-2);
}

/* ============================================
   ABOUT SECTION
   ============================================ */

.about-section {
	position: relative;
	background-color: var(--white);
	padding: 100px 0;
	overflow: hidden;
	z-index: 1;
}

.about-section .badge-why {
	background: rgba(100, 33, 255, 0.1);
	color: var(--theme);
	padding: 8px 18px;
	font-weight: 600;
	border-radius: 50px;
	font-size: 14px;
	display: inline-block;
	letter-spacing: 0.3px;
}

.about-section h2 {
	font-size: clamp(28px, 3vw, 42px);
	font-weight: 700;
	color: var(--primary);
	line-height: 1.3;
}

.about-section .lead-desc {
	color: var(--secondary);
	font-size: 16px;
	line-height: 1.75;
	margin-bottom: 1rem;
}

/* ---------------------------
   IMAGE STYLES
----------------------------*/
.about-section .about-image {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
}

.about-section .about-image img {
	border-radius: 18px;
	transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.about-section .about-image:hover img {
	transform: scale(1.04) rotate(1deg);
}

/*prt-single-img-1*/

.about-section .stand-single-img {
	position: absolute;
	bottom: -90px;
	right: 5px;
	z-index: 1;
}

.about-section .stand-single-img-wrapper {
	position: relative;
}

.about-section .stand-single-img img {
	-webkit-animation: shake 20s linear infinite;
	-moz-animation: shake 20s linear infinite;
	-o-animation: shake 20s linear infinite;
	animation: shake 20s linear infinite;
}

@keyframes shake {
	0% {
		transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}

	50% {
		transform: translateX(30px);
		transform: translateX(30px);
		opacity: 1;
	}

	100% {
		transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1;
	}

}

@media (max-width: 575.98px) {
	.about-section .stand-single-img img {
		width: 170px;
		height: auto;
	}
}


/* Play Button (centered on image) */
.about-section .play-btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 50%;
	background: var(--theme);
	color: #fff;
	font-size: 22px;
	box-shadow: 0 10px 25px rgba(100, 33, 255, 0.25);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	z-index: 2;
}

.about-section .play-btn:hover {
	transform: translate(-50%, -50%) scale(1.1);
	box-shadow: 0 14px 30px rgba(100, 33, 255, 0.35);
}

/* ---------------------------
   COUNTERS / STATS
----------------------------*/
.about-section .about-stat h3 {
	font-weight: 700;
	color: var(--theme);
	font-size: 30px;
	margin-bottom: 4px;
}

.about-section .about-stat small {
	display: block;
	font-size: 14px;
	color: var(--secondary);
}

/* ---------------------------
   FEATURE ICONS + TEXT
----------------------------*/
.about-section .feature-list,
.about-section .about-content .row .d-flex {
	align-items: center;
}

.about-section .about-content i {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(100, 33, 255, 0.08);
	color: var(--theme);
	border-radius: 50%;
	font-size: 18px;
	transition: background 0.3s ease, transform 0.3s ease;
}

.about-section .about-content i:hover {
	background: var(--theme);
	color: #fff;
	transform: rotate(10deg);
}

/* ---------------------------
   BUTTON
----------------------------*/
.about-section .btn-primary {
	background-color: var(--theme);
	border: none;
	padding: 14px 32px;
	border-radius: 8px;
	font-weight: 600;
	transition: all 0.3s ease;
	box-shadow: 0 6px 20px rgba(100, 33, 255, 0.2);
}

.about-section .btn-primary:hover {
	background-color: #5014cc;
	box-shadow: 0 10px 25px rgba(100, 33, 255, 0.35);
	transform: translateY(-2px);
}



/* ---------------------------
   RESPONSIVE
----------------------------*/
@media (max-width: 991.98px) {
	.about-section {
		padding: 80px 0;
	}

	.about-section h2 {
		font-size: 30px;
	}
}

@media (max-width: 575.98px) {
	.about-section .about-stat h3 {
		font-size: 24px;
	}

	.about-section .play-btn {
		width: 56px;
		height: 56px;
		font-size: 18px;
	}

	.about-section .about-content i {
		width: 36px;
		height: 36px;
		font-size: 16px;
	}
}


/*================================
Featured Area
===================================*/
.featured-area-mt {
	position: relative;
	margin-top: -50px;
	z-index: 2;
}

.featured-card {
	background-color: var(--white);
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.06);
	padding: 40px 30px;
	position: relative;
	z-index: 1;
	margin-bottom: 30px;
}

.featured-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 0;
	height: 100%;
	background-color: var(--theme);
	opacity: 0;
	transition: all 0.3s ease-in;
	transition-duration: 0.6s;
}

.featured-card a {
	display: flex;
	align-items: center;
}

.featured-card a i {
	width: 60px;
	height: 60px;
	line-height: 65px;
	border-radius: 50%;
	text-align: center;
	font-size: 22px;
	color: var(--theme);
	background: rgba(8, 169, 230, 0.1);
	margin-right: 15px;
	transition: 0.9s;
}

.featured-card a h3 {
	margin-bottom: 0;
	transition: 0.9s;
}

.featured-card:hover::before {
	opacity: 1;
	width: 100%;
}

.featured-card:hover a i {
	background-color: var(--white);
	color: var(--theme);
}

.featured-card:hover a h3 {
	color: var(--white);
}

.featured-item {
	background-color: var(--white);
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.06);
	padding: 35px 35px 35px 110px;
	position: relative;
	border-radius: 5px;
	margin-bottom: 30px;
}

.featured-item i {
	position: absolute;
	top: 35px;
	left: 35px;
	width: 55px;
	height: 55px;
	line-height: 60px;
	color: var(--theme);
	background: rgba(8, 169, 230, 0.1);
	font-size: 22px;
	border: 1px dashed var(--theme);
	display: inline-block;
	text-align: center;
	border-radius: 50px;
	transition: 0.7s;
}

.featured-item h3 {
	margin-bottom: 10px;
}

.featured-item p {
	margin-bottom: 0;
}

.featured-item:hover i {
	background-color: var(--theme);
	color: var(--white);
}

.section-title h2 {
	font-size: 35px;
	margin-top: 0;
	line-height: 1.2;
	margin-bottom: 0;
}

.section-title p {
	padding-top: 15px;
	margin-bottom: 0;
	font-size: 15px;
}


/* ================================
  workflow card styles
================================= */
/* --- palette hooks --- */
.bg-secondary-medium {
	background: #4b3132;
}

.text-secondary-light {
	color: #f8e2b2;
}

.text-primary-light {
	color: #d85a6f;
}

.text-primary-dark {
	color: #3b2a2b;
}

.bg-primary-light {
	background: #d85a6f;
}

/* --- decorative corners --- */
.decorative-corner {
	max-width: 140px;
	width: auto;
	height: auto;
	pointer-events: none;
}

/* --- card look --- */
.wf-card {
	position: relative;
	background: #fff;
	border: 0;
	border-radius: 18px;
	min-height: 260px;
	box-shadow: 0 8px 0 0 #d3d3d3 inset, 0 10px 18px rgba(0, 0, 0, .10);
	display: flex;
	flex-direction: column;
	/* equal height */
}

@media (min-width:992px) {
	.wf-card {
		min-height: 220px;
	}
}

/* inner content grows so desc aligns bottom */
.wf-card .p-4 {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.wf-card .p-4 p {
	margin-top: auto;
}

/* --- number badge (your HTML uses .wf-badge) --- */
.wf-badge {
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	min-width: 82px;
	padding: .50rem .9rem;
	text-align: center;
	background: #d85a6f;
	color: #fff;
	font-weight: 600;
	font-size: 20px;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
	box-shadow: 0 .5rem .8rem rgba(0, 0, 0, .15);
}

/* --- swiper container & equal heights --- */
.wf-swiper {
	padding: 6px 22px 48px;
}

/* space for bullets */
.wf-swiper .swiper-wrapper {
	align-items: stretch;
}

.wf-swiper .swiper-slide {
	height: auto !important;
}

/* pagination */
.wf-pagination {
	bottom: 8px !important;
}

.wf-pagination .swiper-pagination-bullet {
	background: #d8d8d8;
	opacity: 1;
}

.wf-pagination .swiper-pagination-bullet-active {
	background: #2aa8ff;
}

/* arrows */
.wf-arrow {
	position: absolute;
	top: 35%;
	z-index: 5;
	width: 40px;
	height: 40px;
	background: #fff;
	border: 0;
	border-radius: 999px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .15);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: transform .15s ease, filter .15s ease;
}

.wf-prev {
	left: -0px;
}

.wf-next {
	right: -0px;
}

.wf-arrow::before {
	content: "";
	width: 10px;
	height: 10px;
	border: 3px solid #2aa8ff;
	border-top: none;
	border-right: none;
	transform: rotate(45deg);
}

.wf-next::before {
	transform: rotate(-135deg);
}

.wf-arrow:hover {
	transform: scale(1.04);
	filter: brightness(.97);
}

/* optional: divider/line sizing if you want */
.wf-divider {
	max-width: 520px;
	opacity: .9;
}

/* proggressbar */
.wf-pagination.swiper-pagination-progressbar {
	position: static !important;
	height: 4px;
	max-width: 260px;
	margin: 12px auto 0;
	background: rgba(255, 255, 255, 0.25);
	border-radius: 2px;
}

.wf-pagination .swiper-pagination-progressbar-fill {
	background: #d85a6f;
	border-radius: 2px;
}

/*=============================
 language services
============================*/

/* ===== Grid Layouts ===== */
.services-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, 1fr);
}

@media (min-width:576px) {
	.services-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (min-width:992px) {
	.services-grid {
		grid-template-columns: repeat(5, 1fr);
	}
}

.tests-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr;
}

@media (min-width:768px) {
	.tests-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ===== Service Cards ===== */
.svc-card {
	position: relative;
	display: grid;
	place-items: center;
	gap: .75rem;
	padding: 1.4rem 1rem;
	border-radius: 12px;
	text-decoration: none;
	box-shadow: 0 14px 24px rgba(0, 0, 0, .08);
	min-height: 120px;
	overflow: hidden;
	transition: .25s ease;
	isolation: isolate;
}

/* Navy Cards */
.svc-card--navy {
	background: var(--bs-blue);
	color: var(--bs-white);
}

/* Yellow Cards */
.svc-card--yellow {
	background: var(--bs-warning);
	color: var(--bs-body-color);
	min-height: 130px;
}

/* Hover Slide BG */
.svc-card::before {
	content: "";
	position: absolute;
	inset: 0;
	transform: translateX(-102%);
	background: linear-gradient(90deg,
			rgba(255, 255, 255, .1) 0%,
			currentColor 0%,
			currentColor 80%,
			rgba(255, 255, 255, .2) 100%);
	transition: .45s ease;
	z-index: 0;
}

/* Apply color to sliding layer */
.svc-card--navy::before {
	color: var(--bs-blue);
}

.svc-card--yellow::before {
	color: var(--bs-warning);
}

.svc-card:hover::before {
	transform: translateX(0);
}

.svc-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 20px 30px rgba(0, 0, 0, .12);
}

/* ===== Text ===== */
.svc-title {
	font-weight: 700;
	font-size: 1.05rem;
	z-index: 2;
}

/* ===== ICONS ===== */
.svc-icon {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	background: var(--bs-warning);
	display: grid;
	place-items: center;
	box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .12);
	z-index: 2;
	transition: transform .6s ease;
}

/* Spin icon on hover */
.svc-card:hover .svc-icon {
	transform: rotate(360deg);
}

/* Dot Icon */
.svc-icon--dot::after {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--bs-blue);
}

/* Book Icon */
.svc-icon--book {
	background: var(--bs-blue);
	width: 48px;
	height: 48px;
	border-radius: 10px;
	position: relative;
}

.svc-icon--book::before,
.svc-icon--book::after {
	content: "";
	position: absolute;
	top: 10px;
	bottom: 10px;
	width: 14px;
	border-radius: 2px;
	background: #fff;
}

.svc-icon--book::before {
	left: 10px;
}

.svc-icon--book::after {
	right: 10px;
}

/* Button */
.btn-navy {
	background: var(--bs-blue);
	color: #fff;
	border-radius: 10px;
	padding: 14px 28px;
	box-shadow: 0 12px 20px rgba(0, 0, 0, .15);
}

.btn-navy:hover {
	filter: brightness(1.07);
	color: #dc3545;
}


/* ===== DESTINATION WRAPPER ===== */


/* Section */
.destination-section {
	background: rgba(242, 242, 242, .9);
	padding: 110px 0 140px;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.theme-section-title .title {
	font-size: clamp(28px, 3.2vw, 44px);
	font-weight: 800;
	color: var(--black);
}

.theme-section-title p {
	color: var(--secondary);
	margin-top: 8px;
}

/* Shapes (keep wow/animate as you already have) */
.destination-section .shape-01 {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 0;
}

.destination-section .shape-02 {
	position: absolute;
	right: 300px;
	bottom: 80px;
	z-index: 0;
}

@media (max-width: 576px) {
	.destination-section .shape-02 {
		right: 180px;
	}
}

.destination-section .plane-wrap.active .shape-02 {
	animation: planefly-02 1.5s linear;
}

@keyframes planefly-02 {
	0% {
		right: -10%;
		transform: scale(0);
		opacity: 0;
	}

	100% {
		transform: scale(1);
		opacity: 1;
	}
}

/* Grid wrapper (Bootstrap row recommended) */
.destination-items-wrap {
	/* when used with row, no need to flex here */
}

.destination-items-wrap.row {
	justify-content: center;
}

/* Card */
.destination-single-item {
	width: 100%;
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: 22px;
	padding: 28px 24px;
	text-align: center;
	box-shadow: 0 4px 16px rgba(0, 0, 0, .04);
	transition:
		transform .35s ease,
		box-shadow .35s ease,
		border-color .35s ease,
		background-color .35s ease;
	position: relative;
	z-index: 2;
}

.destination-single-item:hover {
	background: #f6f0ff;
	/* light theme tint */
	border-color: var(--theme);
	transform: translateY(-6px) scale(1.01);
	box-shadow: 0 14px 35px rgba(0, 0, 0, .10);
}


.destination-single-item .thumbnail {
	width: 80px;
	height: 80px;
	margin: 0 auto;
	border-radius: 50%;
	background: var(--white);
	border: 1px solid var(--border);
	display: grid;
	place-items: center;
	overflow: hidden;
	transition:
		transform .35s ease,
		border-color .35s ease,
		box-shadow .35s ease;
}

.destination-single-item:hover .thumbnail {
	transform: rotate(0deg);
	border-color: var(--theme);
	box-shadow: 0 6px 18px rgba(100, 33, 255, .25);
}

/* Image inside thumbnail */
.destination-single-item .thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .35s ease;
}

/* Opposite rotation so image stays upright */
.destination-single-item:hover .thumbnail img {
	transform: rotate(-90deg);
}


.destination-single-item .name {
	margin: 14px 0 0;
	font-size: 18px;
	font-weight: 600;
	color: var(--black);
	transition: color .35s ease;
}

.destination-single-item:hover .name {
	color: var(--theme);
}

/* CTA button look */
.btn-wrap .btn-common.fill-btn.style-01 {
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 14px 28px;
	color: var(--black);
	box-shadow: 0 6px 20px rgba(0, 0, 0, .06);
	transition: transform .2s ease, box-shadow .2s ease;
}

.btn-wrap .btn-common.fill-btn.style-01:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 26px rgba(0, 0, 0, .10);
}

/* ===== RESPONSIVE COLUMNS ===== */

@media (min-width: 1400px) {
	.destination-single-item .thumbnail {
		width: 90px;
		height: 90px;
	}
}


/* 7 columns on >=1200px */
@media (min-width: 1200px) {
	.col-xl-1-7 {
		flex: 0 0 calc(100% / 7);
		max-width: calc(100% / 7);
	}
}

@media (max-width: 1199.98px) {
	.destination-single-item .thumbnail {
		width: 70px;
		height: 70px;
	}
}

@media (max-width: 991.98px) {
	.destination-single-item .thumbnail {
		width: 60px;
		height: 60px;
	}
}

@media (max-width: 575.98px) {
	.destination-single-item .thumbnail {
		width: 50px;
		height: 50px;
	}

	.destination-single-item .name {
		font-size: 16px;
	}
}

/*=============================
  Why Choose Us styles	
  =============================*/

.choose-left {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	min-height: 560px;
	padding-top: 10px;
	padding-bottom: 10px;
}

.arch-single {
	width: 90%;
	max-width: 520px;
	height: 640px;
	border-radius: 20px;
	overflow: hidden;
	background: var(--white);
	box-shadow: 0 18px 40px rgba(18, 20, 22, 0.08);
	display: block;
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.arch-single img {
	width: 100%;
	height: 100%;
	/* object-fit: cover; */
	display: block;
}

.arch-single:hover {
	transform: translateY(-6px);
	box-shadow: 0 22px 50px rgba(18, 20, 22, 0.12);
}

/* Responsive size adjustments */
@media (min-width: 1200px) {
	.arch-single {
		max-width: 620px;
		height: 640px;
	}
}

@media (max-width: 991.98px) {
	.arch-single {
		width: 100%;
		max-width: 720px;
		height: 420px;
		border-radius: 16px;
	}

	.choose-left {
		min-height: auto;
		padding: 0.5rem 0;
	}
}

@media (max-width: 575.98px) {
	.arch-single {
		height: 320px;
		border-radius: 12px;
	}
}

/* =======================================
   RIGHT COLUMN — Text + Tabs + Button
   ======================================= */

/* Badge above heading */
.badge-why {
	display: inline-block;
	padding: 0.35rem 0.7rem;
	border: 2px solid var(--primary);
	background: var(--bs-gray-500);
	color: var(--primary);
	font-weight: 600;
	border-radius: 4px;
	font-size: 0.95rem;
	margin-bottom: 0.6rem;
}

/* Section Heading */
h2.lead-heading {
	color: var(--primary);
	font-size: 2.2rem;
	line-height: 1.1;
	margin-bottom: 0.6rem;
}

h2.lead-heading .highlight {
	color: var(--bs-pink);
	font-weight: 700;
}

p.lead-desc {
	color: var(--bs-gray-600);
	font-size: 1rem;
	margin-bottom: 1rem;
}

/* Tabs (Bootstrap Nav Pills style) */
.nav-pills .nav-link {
	border: 2px solid var(--bs-pink);
	color: var(--bs-pink);
	margin-right: 0.5rem;
	padding: 0.55rem 0.9rem;
	border-radius: 4px;
	font-weight: 600;
	background: transparent;
	transition: all 0.3s ease;
}

.nav-pills .nav-link:hover {
	background: rgba(192, 75, 98, 0.1);
}

.nav-pills .nav-link.active {
	background: var(--bs-pink);
	color: #fff;
	box-shadow: none;
}

/* Divider line under tabs */
.divider {
	height: 6px;
	background: transparent;
	border-top: 3px solid var(--bs-pink);
	margin: 0.8rem 0 1rem 0;
	width: 100%;
}

/* Paragraph below tabs */
.muted-small {
	color: #8e8e8e;
	font-size: 0.95rem;
}

/* Features List */
.feature-list {
	list-style: none;
	padding-left: 0;
	margin: 0;
}

.feature-list li {
	margin-bottom: 0.6rem;
	color: var(--bs-gray-600);
	font-size: 1rem;
	display: flex;
	align-items: center;
}

.feature-dot {
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: rgba(93, 39, 241, 0.4);
	margin-right: 0.7rem;
}

/* Small rounded image on right of features */
.mini-img {
	width: 140px;
	height: 90px;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
	object-fit: cover;
}

/* CTA Button */
.btn-primary-custom {
	background: var(--bs-pink);
	border: none;
	color: #fff;
	padding: 0.6rem 1.15rem;
	border-radius: 6px;
	font-weight: 600;
	transition: all 0.3s ease;
}

.btn-primary-custom:hover {
	background: #a83e56;
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(192, 75, 98, 0.25);
}

/* Responsive text tweaks */
@media (max-width: 768px) {
	h2.lead-heading {
		font-size: 1.75rem;
	}

	p.lead-desc {
		font-size: 0.95rem;
	}

	.btn-primary-custom {
		padding: 0.5rem 1rem;
		font-size: 0.95rem;
	}
}

/* ================================
   Student Services Section
   ================================ */

.student-services {
	position: relative;
	padding: 80px 0;
	/* background split: left pale / right purple gradient */
	background: linear-gradient(90deg, #f3f4f8 45%, rgba(99, 33, 255, 0.06) 46% 60%, rgba(100, 33, 255, 0.95) 100%);
	overflow: hidden;
	z-index: 1;
}

/* subtle large curved shape on right (like preview) */
.student-services::after {
	content: "";
	position: absolute;
	right: -10%;
	bottom: -10%;
	width: 60%;
	height: 100%;
	background: radial-gradient(circle at 60% 40%, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 40%),
		radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0) 40%);
	transform: rotate(-12deg);
	pointer-events: none;
	z-index: 0;
	filter: blur(0.5px);
}

.student-services .student-bg-shape {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #EBEDF5;
	top: 0;
	left: 0;
	z-index: -1;
}

.student-services .student-bg-shape {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

/* container inner z-index above bg shapes */
.student-services .container {
	position: relative;
	z-index: 2;
}

/* left column — keep text dark and readable on pale background */
.student-services .badge-why {
	background: rgba(100, 33, 255, 0.08);
	color: var(--theme);
	padding: 8px 16px;
	border-radius: 999px;
	font-weight: 600;
	display: inline-block;
	letter-spacing: .6px;
	margin-bottom: 14px;
}

/* heading */
.student-services .lead-heading {
	color: var(--primary);
	font-size: clamp(22px, 2.6vw, 34px);
	font-weight: 700;
	line-height: 1.15;
	margin-top: 6px;
}

/* intro paragraph */
.student-services .lead-desc {
	color: #6b6f76;
	margin-top: 16px;
	font-size: 15px;
	max-width: 520px;
}


.student-services .shape-21 {
	position: relative;
	z-index: -1;
}

.student-services .shape-21 img {
	animation: t-SlideLeftRight 6s infinite ease-in-out;
}

@keyframes t-SlideLeftRight {
	0% {
		transform: translateX(0);
	}

	50% {
		transform: translateX(50px);
	}

	100% {
		transform: translateX(0);
	}
}


@media only screen and (max-width: 991px) {
	.student-services .shape-21 {
		display: none;
	}
}

/* Card grid wrapper adjustments */
.student-services .service-card {
	background: #ffffff;
	border-radius: 14px;
	border: 1px solid rgba(15, 15, 15, 0.04);
	transition: transform .45s cubic-bezier(.2, .9, .28, 1), box-shadow .45s cubic-bezier(.2, .9, .28, 1);
	box-shadow: 0 6px 22px rgba(15, 15, 15, 0.04);
	height: 100%;
	padding: 20px;
	overflow: hidden;
	position: relative;
}

/* card glass accent on right-purple half to show continuity */
.student-services .service-card::before {
	content: "";
	position: absolute;
	right: -40px;
	top: -30px;
	width: 160px;
	height: 160px;
	background: linear-gradient(135deg, rgba(100, 33, 255, 0.06), rgba(100, 33, 255, 0.02));
	border-radius: 50%;
	pointer-events: none;
	opacity: 0;
	transition: opacity .45s ease;
}

/* Icon wrapper */
.student-services .svc-icon-wrapper {
	width: 64px;
	height: 64px;
	border-radius: 12px;
	background: linear-gradient(180deg, rgba(100, 33, 255, 0.08), rgba(100, 33, 255, 0.03));
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--theme);
	font-size: 22px;
	flex-shrink: 0;
	transition: transform .45s cubic-bezier(.2, .9, .28, 1), background .35s ease, box-shadow .35s ease;
	box-shadow: 0 6px 18px rgba(15, 15, 15, 0.03);
}

/* service title + desc */
.student-services .service-card h5 {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 6px;
	color: var(--primary);
}

.student-services .service-card p {
	font-size: 14px;
	color: #6b6f76;
	margin: 0;
}

/* hover: lift + subtle tilt + icon pop + shadow */
.student-services .service-card:hover {
	transform: translateY(-14px) rotate(-0.6deg);
	box-shadow: 0 28px 60px rgba(15, 15, 15, 0.12);
	border-color: rgba(100, 33, 255, 0.12);
}

.student-services .service-card:hover::before {
	opacity: 1;
	transform: translateY(-8px) rotate(-6deg);
}

/* icon pop on hover */
.student-services .service-card:hover .svc-icon-wrapper {
	transform: translateY(-6px) rotate(-8deg) scale(1.06);
	background: linear-gradient(135deg, var(--theme), #7a3cff);
	color: #fff;
	box-shadow: 0 18px 40px rgba(100, 33, 255, 0.16);
}

/* subtle focus state for keyboard users */
.student-services .service-card:focus-within,
.student-services .service-card a:focus {
	outline: 2px solid rgba(100, 33, 255, 0.12);
	outline-offset: 4px;
}

/* read-more / action style (if you add buttons inside cards later) */
.student-services .service-card .read-more {
	display: inline-block;
	margin-top: 12px;
	color: var(--theme);
	font-weight: 600;
	text-decoration: none;
}

/* responsive: smaller icon and padding on small screens */
@media (max-width: 767.98px) {
	.student-services {
		padding: 40px 0;
		background: linear-gradient(180deg, #f3f4f8 0%, rgba(100, 33, 255, 0.06) 50%, rgba(100, 33, 255, 0.95) 100%);
	}

	.student-services .svc-icon-wrapper {
		width: 56px;
		height: 56px;
		font-size: 20px;
	}

	.student-services .service-card {
		padding: 16px;
		border-radius: 12px;
	}

	.student-services .lead-heading {
		font-size: 20px;
	}
}

/* small polish: stagger fade key control if in-view toggled by your theme */
.student-services .fade-anim {
	will-change: transform, opacity;
}

/* small decorative semicircle left bottom (matches preview) */
.student-services .decor-semi {
	position: absolute;
	left: 40px;
	bottom: 20px;
	width: 110px;
	height: 110px;
	border-radius: 50%;
	border: 3px solid rgba(100, 33, 255, 0.18);
	transform: rotate(-30deg);
	z-index: 1;
	opacity: .95;
	pointer-events: none;
}

/* ============================
   CTA-2 Area Styles
   ============================ */

.cta-2-area {
	padding-top: 56px;
	padding-bottom: 56px;
	position: relative;
	z-index: 1;
}

.cta-2-area.style-default {
	background: linear-gradient(90deg, #fff 0%, #f7f8fb 50%, rgba(100, 33, 255, 0.06) 70%);
}

.cta-2-area.style-light {
	background: #fafbfd;
}

.cta-2-area-inner {
	border: 1px solid var(--theme);
	border-radius: 30px;
	display: grid;
	gap: 0px 50px;
	grid-template-columns: 1fr 550px;
}

@media only screen and (max-width: 1199px) {
	.cta-2-area-inner {
		grid-template-columns: 1fr 460px;
	}
}

@media only screen and (max-width: 991px) {
	.cta-2-area-inner {
		grid-template-columns: 1fr;
	}
}

.cta-2-content {
	padding: 98px 0 120px 120px;
}

@media only screen and (max-width: 1199px) {
	.cta-2-content {
		padding: 48px 0 70px 70px;
	}
}

@media only screen and (max-width: 991px) {
	.cta-2-content {
		padding: 28px 30px 50px 30px;
	}
}

@media only screen and (max-width: 767px) {
	.cta-2-content {
		padding: 20px 10px 40px 10px;
	}
}

.cta-2-content .title-wrapper {
	margin-top: 19px;
}

.cta-2-content .btn-wrapper {
	margin-top: 39px;
	display: flex;
	gap: 20px 30px;
	flex-wrap: wrap;
}

.cta-2-content .cta-box {
	display: flex;
	gap: 15px;
	align-items: center;
}

.cta-2-content .cta-box .icon {
	width: 50px;
	min-width: 50px;
	height: 50px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: var(--theme);
	border: 1px solid var(--theme);
}

.cta-2-content .cta-box .number {
	font-weight: 700;
	font-size: 18px;
	line-height: 1.22;
	color: var(--theme);
}

.cta-2-content .cta-box .number a:hover {
	color: var(--black);
}

.cta-2-content .cta-box .text {
	font-weight: 500;
	font-size: 16px;
	line-height: 19px;
	margin-top: 5px;
}

.cta-2-thumb {
	margin: 10px 10px 10px 0;
	border-radius: 0 30px 30px 0;
	overflow: hidden;
	-webkit-mask-image: url(assets/imgs/shape/shape-16.webp);
	mask-image: url(assets/imgs/shape/shape-16.webp);
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

@media only screen and (max-width: 991px) {
	.cta-2-thumb {
		-webkit-mask-image: none;
		mask-image: none;
		border-radius: 0 0 30px 30px;
		margin: 0 10px 10px 10px;
	}
}

.cta-2-thumb img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

/* ============================
   Archive list — horizontal cards
   ============================ */

/* Theme thumbnail helper (used by template-tags.php) */
.theme-post-thumbnail img,
.post-thumb .theme-post-thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 6px;
}

/* Page wrapper */
main.wrapper.post-archive {
	padding: 28px 0 80px;
	background: var(--bs-gray-200);
}

/* container card that holds rows */
.archive-list {
	background: transparent;
}

/* Archive card: left thumbnail + right content */
.archive-post-card {
	background: var(--white);
	border-radius: 8px;
	overflow: visible;
	box-shadow: 0 6px 14px rgba(35, 50, 70, 0.04);
	margin-bottom: 26px;
	border: 1px solid rgba(30, 40, 60, 0.03);
	transition: transform .25s ease, box-shadow .25s ease;
}

.archive-post-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 18px 40px rgba(31, 45, 60, 0.08);
}

/* fix selector: .row g-0 is invalid; target elements correctly */
.archive-post-card .row.g-0 {
	margin: 0;
}

/* thumbnail column */
.archive-post-card .post-thumb {
	position: relative;
	padding: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.archive-post-card .post-thumb img {
	width: 100%;
	height: 120px;
	object-fit: cover;
	border-radius: 6px;
	display: block;
}

/* small date box on the thumbnail (stacked day/month) */
.archive-post-card .date-box {
	position: absolute;
	left: 28px;
	top: 28px;
	width: 54px;
	background: #fff;
	border-radius: 6px;
	text-align: center;
	box-shadow: 0 8px 18px rgba(30, 40, 60, 0.08);
	font-weight: 700;
	color: var(--bs-pink);
	border-left: 4px solid rgba(0, 0, 0, 0.02);
	padding: 6px 6px;
	line-height: 1;
	z-index: 5;
}

.date-box .day {
	display: block;
	font-size: 18px;
}

.date-box .mon {
	display: block;
	font-size: 11px;
	text-transform: capitalize;
	opacity: .9;
}

/* content column */
.archive-post-card .post-body {
	padding: 22px 22px;
}

.post-meta {
	font-size: 12px;
	color: var(--bs-gray-500);
	margin-bottom: 8px;
}

.post-meta a {
	color: var(--bs-pink);
	text-decoration: none;
	font-weight: 600;
}

.post-title {
	font-size: 18px;
	margin: 4px 0 10px;
	font-weight: 700;
	color: #0f2137;
}

.post-excerpt {
	color: #6b7682;
	font-size: 14px;
	margin-bottom: 10px;
	line-height: 1.5;
}

.view-more {
	color: var(--bs-pink);
	font-weight: 700;
	text-decoration: none;
	font-size: 14px;
}

/* Sidebar widgets */
.sidebar .widget {
	background: var(--white);
	padding: 18px;
	border-radius: 8px;
	box-shadow: 0 6px 14px rgba(31, 45, 60, 0.04);
	margin-bottom: 22px;
	border: 1px solid rgba(30, 40, 60, 0.03);
}

.widget h5 {
	margin: 0 0 14px;
	font-size: 15px;
	font-weight: 700;
	position: relative;
	padding-bottom: 6px;
}

.widget h5::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 36px;
	height: 3px;
	background: var(--bs-pink);
	border-radius: 3px;
}

/* Search */
.widget .input-group .form-control {
	border-radius: 4px;
	border-color: #eef2f6;
	height: 44px;
}

.widget .input-group .btn {
	background: var(--bs-pink);
	color: #fff;
	border: none;
	width: 44px;
	border-radius: 4px;
}

/* categories */
.widget .cat-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.widget .cat-list li {
	padding: 10px 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.widget .cat-list a {
	color: #22313a;
	text-decoration: none;
	font-size: 14px;
	display: block;
}

/* trending mini posts */
.widget .trend-item {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	padding: 10px 0;
	border-bottom: 1px dashed rgba(0, 0, 0, 0.03);
}

.widget .trend-item img {
	width: 64px;
	height: 64px;
	object-fit: cover;
	border-radius: 4px;
}

.trend-item .t-title {
	font-size: 13px;
	margin: 0 0 6px;
	font-weight: 600;
	color: #14303c;
}

.trend-item .t-date {
	font-size: 12px;
	color: var(--bs-gray-500);
}

/* tags */
.widget .tags .badge {
	background: transparent;
	border: 1px solid #e6e9ec;
	color: #24333a;
	padding: 6px 8px;
	margin: 6px 6px 0 0;
	border-radius: 6px;
	font-weight: 600;
	font-size: 13px;
}

.widget .tags .badge:hover {
	background: var(--bs-pink);
	color: #fff;
	border-color: transparent;
}

/* contact info */
.contact-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.contact-list li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 12px 0;
	color: #4f5b63;
	font-size: 14px;
}

.contact-list .icon {
	color: var(--bs-pink);
	font-size: 18px;
	min-width: 22px;
}

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

.page-link {
	color: var(--bs-pink);
	border-radius: 6px;
	border: 1px solid rgba(0, 0, 0, 0.03);
	min-width: 40px;
	text-align: center;
}

.page-item.active .page-link {
	background: var(--bs-pink);
	color: #fff;
	border-color: var(--bs-pink);
}

/* --- Responsive layout fixes for archive post cards --- */

/* Ensure thumbnail and content columns behave as flex children (md and up) */
@media (min-width: 768px) {
	.archive-post-card .row.g-0 {
		display: flex;
		align-items: center;
	}

	/* Give thumbnail ~34% width and content ~66% width on md+ */
	.archive-post-card .post-thumb {
		flex: 0 0 34%;
		max-width: 34%;
		padding: 18px;
	}

	.archive-post-card .post-body {
		flex: 0 0 66%;
		max-width: 66%;
		padding: 22px 22px;
	}

	/* Constrain thumbnail height so it doesn't push layout strangely */
	.archive-post-card .post-thumb img {
		width: 100%;
		height: 160px;
		/* desktop card thumbnail height */
		object-fit: cover;
		border-radius: 6px;
		display: block;
	}

	/* Date box slightly larger on desktop */
	.archive-post-card .date-box {
		left: 28px;
		top: 28px;
		width: 54px;
		padding: 6px;
	}
}

/* Small screens: stack columns vertically, image above content */
@media (max-width: 767.98px) {
	.archive-post-card .row.g-0 {
		display: block;
	}

	.archive-post-card .post-thumb,
	.archive-post-card .post-body {
		max-width: 100%;
		flex: 0 0 100%;
		width: 100%;
	}

	/* Make the image fluid and let it size by intrinsic height */
	.archive-post-card .post-thumb img {
		width: 100%;
		height: auto;
		/* avoid fixed height on small screens */
		object-fit: cover;
		border-radius: 6px;
		display: block;
	}

	/* Reduce padding to keep card compact on mobile */
	.archive-post-card .post-thumb {
		padding: 12px 12px 8px;
	}

	.archive-post-card .post-body {
		padding: 12px 14px 18px;
	}

	/* Make date-box smaller and reposition so it doesn't overlap awkwardly */
	.archive-post-card .date-box {
		left: 12px;
		top: 12px;
		width: 48px;
		padding: 5px;
	}

	.date-box .day {
		font-size: 15px;
	}

	.date-box .mon {
		font-size: 10px;
	}
}

/* Tablet mid-range tweak (optional smoothing) */
@media (min-width: 576px) and (max-width: 991.98px) {
	.archive-post-card .post-thumb img {
		height: 140px;
		/* moderate height for tablets */
	}
}

od */ .theme-post-thumbnail img,
.post-thumb .theme-post-thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 6px;
}


.post-archive .archive-post-card,
.post-archive .sidebar .widget {
	box-sizing: border-box;
}


/* single post*/
.single-post-page {
	max-width: 1200px;
	margin: 48px auto;
	padding: 0 16px;
}

/* Card look for the post */
.post-card {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
	overflow: hidden;
}

.post-featured img {
	width: 100%;
	height: auto;
	display: block;
	border-bottom: 6px solid var(--bs-primary, #0d6efd);
}

.post-meta {
	font-size: 0.92rem;
	color: #6c757d;
	margin-bottom: 8px;
}

.post-title {
	font-size: 1.9rem;
	font-weight: 700;
	margin: 0 0 0.75rem 0;
}

.post-body p {
	line-height: 1.75;
	margin-bottom: 1rem;
	color: #333;
}

/* Sidebar widgets */
.widget {
	background: #fff;
	padding: 18px;
	border-radius: 10px;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
	margin-bottom: 18px;
}

.widget h5 {
	margin-bottom: 12px;
	font-weight: 700;
}

.author-sm {
	display: flex;
	gap: 12px;
	align-items: center;
}

.author-sm img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid rgba(13, 110, 253, 0.08);
}

/* Responsive tweaks */
@media (max-width: 767.98px) {
	.post-title {
		font-size: 1.4rem;
	}

	.single-post-page {
		margin: 24px 12px;
	}
}

/* ==========================
   Comments Section Styling
   ========================== */
/* Comments improved styles */
.comments-area {
	background: #fff;
	border-radius: 12px;
	padding: 1.6rem;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
}

/* Title bar */
.comments-area .comments-title {
	font-size: 1.4rem;
	font-weight: 700;
	margin-bottom: 1.25rem;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid var(--bs-primary);
}

/* Remove default list styles */
.comment-list {
	padding-left: 0;
	margin-left: 0;
}

.comment-list>li {
	list-style: none;
}

/* Single comment block */
.comment-item {
	padding: 1rem 0;
	border-bottom: 1px solid #eee;
}

/* Avatar */
.comment-avatar img {
	width: 64px;
	height: 64px;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid rgba(13, 110, 253, 0.06);
}

/* Author name */
.comment-author {
	display: inline-block;
}

/* Meta */
.comment-meta {
	color: #6c757d;
	font-size: 0.85rem;
}

/* Comment text */
.comment-content {
	color: #333;
	line-height: 1.7;
}

/* Reply link styling */
.reply-link a,
.reply-link {
	color: var(--bs-primary);
	text-decoration: none;
}

.reply-link a:hover,
.reply-link:hover {
	text-decoration: underline;
}

/* Nested replies indentation */
.comment-list .children {
	margin-left: 72px;
	padding-left: 0;
	margin-top: 0.75rem;
	border-left: 2px solid rgba(0, 0, 0, 0.03);
}

/* Moderation notice */
.comment-item .comment-awaiting-moderation,
.comment-item em {
	color: #6c757d;
	font-style: italic;
	background: rgba(0, 0, 0, 0.02);
	padding: .35rem .5rem;
	border-radius: 6px;
	display: inline-block;
}

/* Form controls */
.comment-form .form-control {
	border-radius: 8px;
}

.comment-form label {
	font-weight: 600;
	font-size: 0.9rem;
}

/* Small screens adjustments */
@media (max-width: 575.98px) {
	.comment-avatar img {
		width: 48px;
		height: 48px;
	}

	.comment-list .children {
		margin-left: 56px;
	}
}

/* Entry footer (categories / tags) */
.entry-footer-meta {
	gap: .5rem;
}

/* ensure badge anchor looks correct (anchor inside badge) */
.entry-footer-meta .badge a {
	color: inherit;
	text-decoration: none;
	display: inline-block;
	padding: .25rem .5rem;
}

.entry-footer-meta .badge a:hover {
	text-decoration: underline;
}

/* Outline tag pills */
.entry-footer-meta .badge.border {
	background: transparent;
	color: #333;
	border-color: rgba(0, 0, 0, 0.08);
	padding: .25rem .55rem;
}

/* Small spacing for the edit link container */
.entry-edit {
	margin-top: .5rem;
}

.entry-edit .edit-link a {
	color: rgba(0, 0, 0, 0.6);
	text-decoration: none;
}

.entry-edit .edit-link a:hover {
	color: var(--bs-primary);
}

/* Responsive tweaks */
@media (max-width: 575.98px) {
	.entry-footer-meta {
		gap: .35rem;
	}

	.entry-footer-meta .badge a {
		font-size: .82rem;
	}
}

/* ---------------------------
   Search results page styles
   --------------------------- */
.page-header .page-title {
	font-size: 1.6rem;
	margin-bottom: .75rem;
}

/* Small screens — tighten spacing */
@media (max-width: 576px) {
	.search-form {
		flex-direction: column;
		align-items: stretch;
	}

	.search-form .btn {
		width: 100%;
	}

	.page-header .page-title {
		font-size: 1rem;
		margin-bottom: .40rem;
	}
}

/* ==============================
   Pagination styles
   ============================== */


.ts-pagination {
	padding: 0;
	margin-top: 20px;
}

.ts-pagination li {
	display: inline-block;
}

.ts-pagination li span,
.ts-pagination li a {
	background: #0e5dae;
	padding: 0px 15px;
	color: #FFF;
	font-size: 18px;
	font-weight: 700;
	border-radius: 50px;
	-webkit-transition: all ease .3s;
	-o-transition: all ease .3s;
	transition: all ease .3s;
}

.ts-pagination li span,
.ts-pagination li a:hover {
	background: #0e5dae;

}

.ts-pagination li span.current {
	color: #fff;
	background: #0e5dae;
	-webkit-box-shadow: 0px 5px 15px 0px rgba(252, 74, 0, 0.25);
	box-shadow: 0px 5px 15px 0px rgba(252, 74, 0, 0.25);
}