body {
	margin:0;
	padding:0;
	background: repeat-x top #fff;
}
a {
	outline:none;
	color:#dddddd;
	text-decoration:none;
}
/**************************************************
=-*=-*=-*=-*=-*=-*= Single Post =-*=-*=-*=-*=-*=-*=
**************************************************/
.single-post01 .post-image img,
.single-post01 .post-navigation,
.single-post01 .comment-list img,
.sidebar .widget,
.sidebar .widget-tweeter small,
.sidebar .widget-twitter small,
#loader-wrapper,
.post-image img,
.single-post01 .post-item-description .post-meta,
.sidebar .form-inline .input-group,
.sidebar .post-thumbnail-entry,
.fluid-width-video-wrapper iframe,
.fluid-width-video-wrapper object,
.fluid-width-video-wrapper embed,
#blog .post-item.border > .post-item-wrap > .post-item-description,
#blog img,#blog audio,#blog iframe{
	width: 100%;
}
.single-post01 .post-image img {
	height: auto;
}
.single-post01 .post-item-description {
	font-size: 16px;
	padding: 22px 0;
	line-height: 28px;
}
.single-post01 .post-item-description h2,
.single-post01 .post-item-description h2 > a {
	font-size: 34px;
	margin-top: 8px;
	line-height: 38px;
	margin-bottom: 12px;
}
.single-post01 .post-item-description .post-meta {
	padding: 12px 0;
	margin-bottom: 26px;
}
.single-post01 .post-item-description .post-meta-date,
.single-post01 .post-item-description .post-meta-date a,
.single-post01 .post-item-description .post-meta-category,
.single-post01 .post-item-description .post-meta-category a,
.single-post01 .post-item-description .post-meta-comments,
.single-post01 .post-item-description .post-meta-comments a,
.single-post01 .post-meta-share a,
.single-post01 .post-navigation .post-next,
.single-post01 .post-navigation .post-prev,
.sidebar .post-thumbnail-list a,
.sidebar .tags a,
.load-more a,
#blog .post-item.border .post-image .post-meta-category a,
#blog .post-item .post-item-description > h2,
#blog .post-item .post-item-description > h2 > a,
.breadcrumb ol li a, .breadcrumb ul li a,
.sidebar .widget-categories ul li a, .post-meta-category a{
	text-decoration: none; color: #ddd;
}
a.item-link{margin-top: 10px; display: inline-block}
.single-post01 .post-item-description .post-meta-date,
.single-post01 .post-item-description .post-meta-date a,
.single-post01 .post-item-description .post-meta-category,
.single-post01 .post-item-description .post-meta-category a,
.single-post01 .post-item-description .post-meta-comments,
.single-post01 .post-item-description .post-meta-comments a,
.single-post01 .post-tags a{
	font-size: 13px;
	margin-right: 16px;
}
.single-post01 .post-item-description .post-meta-category i,
.single-post01 .post-item-description .post-meta-comments i,
.single-post01 .post-item-description .post-meta-date i {
	margin-right: 4px;
}
.single-post01 .post-meta-share a{
	line-height: 16px;
}
.single-post01 .post-meta-share a i{
	font-size: 30px;
}
.single-post01 .post-item-description .blockquote {
	font-size: 16px;
    margin: 0 0 20px 72px;
    padding: 10px 20px;
    font-style: italic;
}
.single-post01 .post-item-description .blockquote .small,
.single-post01 .post-item-description .blockquote small {
	font-size: 100%;
}
.single-post01 .post-tags {
	margin-bottom: 40px;
}
.single-post01 .post-tags a {
	font-size: 12px;
	padding: 3px 10px;
	border-radius: 4px;
	margin-bottom: 10px;
}
.single-post01 .post-navigation,
.sidebar .post-thumbnail-list,
#loader,
#blog .post-item .post-meta-category,
#blog .post-item .post-meta-comments,
#blog .post-item .post-meta-date,
#blog .post-item.border .post-image,
.breadcrumb ol li, .breadcrumb ul li,
.sidebar .widget-categories ul li,
.single-post01 .comments .comment .text {
	position: relative;
}
.single-post01 .post-navigation,
.sidebar .tags a {
	display: inline-block;
	font-size: 14px;
    line-height: 20px;
}
.single-post01 .post-navigation {
	min-height: 64px;
	padding: 20px 0 0;
	vertical-align: top;
}
.single-post01 .post-navigation .post-next,
.single-post01 .post-navigation .post-prev,
.post-navigation .post-prev:before,
.post-navigation .post-all,
#loader:before,
#loader:after,
.fluid-width-video-wrapper iframe, .fluid-width-video-wrapper object, .fluid-width-video-wrapper embed,
#blog .post-item.border .post-meta-category,
.sidebar .widget-categories ul li:before,
.player,
.sidebar .widget-tweeter:not([data-avatar="true"]) li::before,
.sidebar .widget-twitter:not([data-avatar="true"]) li::before,
.post-navigation .post-next:after{
	position: absolute;
}
.single-post01 .post-navigation .post-next,
.single-post01 .post-navigation .post-prev {
	height: 44px;
	max-width: 40%;
	font-size: 16px;
}
.post-navigation .post-prev:before,
.post-navigation .post-next:after{
	left: 0;
	top: 12px;
	font-size: 14px;
	padding-top: 2px;
	content: "\f053";
	font-family: 'FontAwesome';
	transition: all .3s ease;
	transform: translate3d(0,-50%,0);
}
.post-navigation .post-next:after {
	right: 0;
	left: inherit;
	content: "\f054";
	font-family: 'FontAwesome';
}
.post-navigation .post-prev-title {
	padding-left: 25px;
}
.post-navigation .post-next span,
.post-navigation .post-prev span {
	opacity: 0.7;
	font-size: 14px;
	margin-top: 3px;
	margin-bottom: -6px;
	text-transform: uppercase;
}
.post-navigation .post-all {
	top: 32px;
	right: 50%;
	left: auto;
	width: 12px;
	opacity: .7;
	font-size: 24px;
	text-align: center;
}
.single-post01 .post-navigation .post-next {
	right: 0;
	text-align: right;
}
.post-navigation .post-next-title {
	padding-right: 25px;
}
.single-post01 .comments {
	padding: 40px 0;
}
.single-post01 .comments .comment {
	padding: 10px 0;
}
.single-post01 .comments .comment_number {
	font-size: 20px;
	margin: 0 0 30px;
	font-weight: 500;
}
.single-post01 .comments .comment .image,
.sidebar .post-thumbnail-entry > img,
.sidebar .post-thumbnail-entry,
.single-post01 .post-item-description .post-meta,
.sidebar .widget{
	float: left;
}
.single-post01 .comments .comment .image {
	width: 64px;
	height: 64px;
}
.single-post01 .comment-list img {
	height: auto;
	border-radius:100%;
}
.single-post01 .comments .comment .text {
	min-height: 80px;
	padding: 0 0 0 86px;
}
.single-post01 .comments .comment .text .name {
	font-size: 24px;
}
.single-post01 .comments .comment .comment_date {
	font-size: 14px;
}
.single-post01 .comments .comment .text .comment-reply-link {
	opacity: 0.7;
	font-size: 12px;
	padding: 0 0 0 5px;
	text-transform: uppercase;
}
.single-post01 .text_holder{
	line-height: 24px;
}
.single-post01 .comment .comment {
	margin-left: 90px;
}
.respond-form {
	padding-top: 40px;
}
.respond-comment {
	font-size: 20px;
	margin: 0 0 30px;
	font-weight: 500;
}
.single-post01 .form-group label:not(.error) {
	font-size: 16px;
	margin-bottom: 4px;
	letter-spacing: .04em;
	text-transform: uppercase;
	font-weight: 500;
}
.single-post01 .form-gray-fields .form-control {
	border-color: transparent;
}
.single-post01 .form-gray-fields .form-control:focus{
	outline: 0;
}
.single-post01 .form-control{
	box-shadow: none;
	line-height: 20px;
	padding:10px 16px;
	border-radius: 5px;
	font-size: 14px;
	transition: all .3s ease;
}
.form-gray-fields .btn{
	font-size: 14px;
	padding:13px 22px 10px;
	text-transform: uppercase;
}
.sidebar {
	font-size: 12px;
}
.sidebar .widget {
	margin-bottom: 30px;
	padding-bottom: 30px;
}
.widget-newsletter .form-control{
	font-size: 14px;
	box-shadow: none;
	line-height: 18px;
	padding: 10px 16px;
	border-radius: 5px; height: auto;
}
.widget-newsletter .btn {
	font-weight: 600;
	height: 40px;
	padding: 8px 16px;
}
.widget-newsletter .btn{
	border-radius: 0 5px 5px 0;
}
.sidebar .nav-tabs {
	margin-bottom: 30px;
}
.sidebar .nav-tabs .nav-item {
	margin-bottom: -2px;
}
.tabs .nav-tabs .nav-link {
	border: 0;
	padding: 14px 24px;
	transition: .3s ease;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.sidebar .widget .tabs li > a {
	padding: 10px;
	font-size: 14px;
}
.sidebar .post-thumbnail-entry > img {
	height: 60px;
	width: 80px;
	margin-right: 16px;
	border-radius: 2px;
}
.sidebar .post-thumbnail-entry {
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.sidebar .post-thumbnail-entry:last-child,
.sidebar .widget-categories ul li:last-child{
	margin: 0;
	padding-bottom:0;
	border-bottom: none;
}
.sidebar .post-thumbnail-entry > img {
	height: 48px;
	width: 64px;
	margin-right: 10px;
}
.sidebar .post-thumbnail-entry img + .post-thumbnail-content {
	padding-left: 72px;
}
.sidebar .post-thumbnail-list a {
	margin: -4px 0 0;
}
.sidebar .post-thumbnail-entry .post-category i,
.sidebar .post-thumbnail-entry .post-date i {
	margin-right: 2px;
}
.sidebar .post-thumbnail-entry .post-category,
.sidebar .post-thumbnail-entry .post-date {
	font-size: 10px;
}
.sidebar .widget-title,
.sidebar > h4 {
	font-size: 18px;
	line-height: 24px;
	margin-bottom: 20px;
	text-transform: uppercase;
	font-weight: 500;
}
.sidebar .widget-tweeter ul,
.sidebar .widget-twitter ul,
.sidebar .widget-categories ul{
	list-style: none;
}

.sidebar .widget-tweeter ul,
.sidebar .widget-twitter ul {
	margin-bottom: 0;
	padding-left: 22px;
}
.sidebar .widget-tweeter li,
.sidebar .widget-twitter li {
	font-size: 14px;
	margin-bottom: 18px;
}
.sidebar .widget-tweeter:not([data-avatar="true"]) li::before,
.sidebar .widget-twitter:not([data-avatar="true"]) li::before {
	content: "\f099";
	margin-left: -22px;
	font-family: 'Font Awesome 5 Brands';
}
.sidebar .tags a {
	padding: 5px 14px;
	border-radius: 50px;
	margin: 0 2px 5px 0;
}
.sidebar .widget-categories ul{
	padding:0;
}
.sidebar .widget-categories ul li{
	margin-bottom: 10px;
	padding:0 0 10px 28px;
}
.sidebar .widget-categories ul li:before{
	position: absolute ; content: "";
	left:0;
	top: 12px;
	font-size: 20px;
	padding-top: 2px;
	background: url("../old.images/icon-folder.png"); width: 16px; height: 14px;
	transition: all .3s ease;
	transform: translate3d(0,-50%,0);
}
.sidebar .cat-count-span{
	float: right;
}
/************ PRELOADER CSS ************/
/* ====  Preloader styles ==== */
#loader-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	z-index: 9999999999999;
}
#loader {
	left: 50%;
	top: 50%;
	width: 150px;
	height: 150px;
	margin: -75px 0 0 -75px;
	border-radius: 50%;
	border: 3px solid transparent;
	z-index: 1001;
	animation: spin 2s linear infinite;
}
#loader:before {
	content: "";
	top: 5px;
	left: 5px;
	right: 5px;
	bottom: 5px;
	border-radius: 50%;
	border: 3px solid transparent;
	animation: spin 3s linear infinite;
}
#loader:after {
	content: "";
	top: 15px;
	right: 15px;
	left: 15px;
	bottom: 15px;
	border-radius: 50%;
	border: 3px solid transparent;
	animation: spin 1.5s linear infinite;
}
#loader-wrapper .loader-section {
	position: fixed;
	top: 0;
	width: 51%;
	height: 100%;
	z-index: 1000;
	transform: translateX(0);
}
#loader-wrapper .loader-section.section-left {
	left: 0;
}
#loader-wrapper .loader-section.section-right {
	right: 0;
}
@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
.loaded #loader-wrapper .loader-section.section-left {
	transform: translateX(-100%);
	transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded #loader-wrapper .loader-section.section-right {
	transform: translateX(100%);
	transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded #loader {
	opacity: 0;
	transition: all 0.3s ease-out;
}
.loaded #loader-wrapper {
	visibility: hidden;
	transform: translateY(-100%);
	transition: all 0.3s 1s ease-out;
}
/*************************************************
=-*=-*=-*=-*=-*=-*= One Column =-*=-*=-*=-*=-*=-*=
**************************************************/
.breadcrumb,
#loader,
.sidebar .widget-tweeter small,
.sidebar .widget-twitter small,
.post-navigation .post-next span,
.post-navigation .post-prev span,
.sidebar .post-thumbnail-entry .post-category{
	display: block;
	font-size: 14px;
    line-height: 20px;
}
.breadcrumb {
	font-size: 10px;
	margin-bottom: 10px;
	letter-spacing: .5px;
	background-color: transparent;
	padding: 10px 0;
}
.breadcrumb ol, .breadcrumb ul{
	margin:0;
	padding: 0;
}
.breadcrumb ol li, .breadcrumb ul li {
	opacity: .8;
	display: inline;
}
.breadcrumb ol li + li::before,
.breadcrumb ul li + li::before {
	margin: 0 5px;
	content: ">";
	background-color: transparent;
}
.breadcrumb ol li.active,
.breadcrumb ol li:hover,
.breadcrumb ol li:last-child,
.breadcrumb ul li.active,
.breadcrumb ul li:hover,
.breadcrumb ul li:last-child {
	opacity: 1;
}
#blog .post-item.border > .post-item-wrap > .post-item-description {
	padding: 24px;
	line-height: 28px;
}
#blog .post-item.border .post-meta-category{
	top: 11px;
	z-index: 0;
	right: 10px;
	font-size: 13px;
	padding:7px 16px 7px;
	border-radius: 50px;
	z-index: 1;
}
#blog .post-item .post-meta-category,
#blog .post-item .post-meta-comments,
#blog .post-item .post-meta-date {
	top: -4px;
	font-size: 12px;
	margin-right: 8px;
}
#blog .post-item .post-item-description > h2,
#blog .post-item .post-item-description > h2 > a {
	font-size: 28px !important;
	font-weight: 500 !important;
	line-height: 34px !important;
	margin-bottom: 16px;
	letter-spacing: 0px;
}
.blog-posts p {
	font-size: 18px;
	line-height: 24px;
}
.fluid-width-video-wrapper iframe, .fluid-width-video-wrapper object, .fluid-width-video-wrapper embed {
	top: 0;
	left: 0;
	height: 100%;
}
.fluid-width-video-wrapper{
	padding-top:56.3%;
}
.player{
	top:0;
}
.post-audio audio{
	bottom: 0;
    left: 0;
}
.pagination{
	padding-left:15px;
}
.fluid-width-video-wrapper {
	padding-top: 66.8%;
}
.hide-blog{
	display: none;
}
.load-more a{
	padding: 12px 25px;
	border-radius: 30px;
}
.load-more a:hover{
	background: none;
}
/*************************************************************
=-*=-*=-*=-*=-*=-*= Responsive Single Post =-*=-*=-*=-*=-*=-*=
*************************************************************/
@media screen and (max-width: 1199px) {
	.widget-newsletter .form-control {
		font-size: 12px;
		padding: 10px 10px;
	}
	.sidebar .widget .tabs li > a {
		font-size: 13px;
		padding: 10px 8px;
	}
	.sidebar .widget {
		margin-bottom: 20px;
		padding-bottom: 20px;
	}
	.single-post01 .post-item-description,
	.single-post01 .post-item-description .blockquote{
		font-size: 14px;
		line-height: 26px;
	}
	.single-post01 .post-navigation .post-next,
	.single-post01 .post-navigation .post-prev {
		font-size: 14px;
	}
	.single-post01 .post-item-description h2,
	.single-post01 .post-item-description h2 > a {
		margin-top: 0;
		font-size: 28px;
		line-height: 32px;
	}
}
@media screen and (max-width: 991px) {
	.respond-form {
		padding-top: 0;
	}
.single-post01 .post-item-description .post-meta-date, .single-post01 .post-item-description .post-meta-date a, .single-post01 .post-item-description .post-meta-category, .single-post01 .post-item-description .post-meta-category a, .single-post01 .post-item-description .post-meta-comments, .single-post01 .post-item-description .post-meta-comments a {
		margin-right: 5px;
	}
	.single-post01 .comments .comment .text {
		padding: 0;
	}
	.single-post01 .comments .comment .image {
		width: 48px;
		height: 48px;
		margin-right: 14px;
	}
	.single-post01 .text_holder {
		font-size: 12px;
		margin: 10px 0 0;
	}
	.single-post01 .comment .comment {
		margin-left: 30px;
	}
	.single-post01 .comments{
		padding: 30px 0 0;
	}
	.sidebar {
		margin: 20px 0 0;
	}
	.page-title h1 {
		font-size: 2rem;
	}
}
@media screen and (max-width: 767px) {
	.single-post01 .post-item-description h2,
	.single-post01 .post-item-description h2 > a {
		font-size: 24px;
		line-height: 26px;
	}
	#blog .post-item.border > .post-item-wrap > .post-item-description {
		line-height: 20px;
		font-size: 12px;
	}
	.blog-posts p {
		font-size: 16px;
		line-height: 22px;
	}
	.single-post01 .post-item-description .blockquote {
		margin-left: 25px;
	}
}
@media screen and (max-width: 575px) {
	.single-post01 .text_holder p{
		margin: 0 0 8px;
	}
	.single-post01 .comments .comment .comment_date {
		font-size: 11px;
	}
	.single-post01 .post-item-description,
	.single-post01 .post-item-description .blockquote {
		font-size: 13px;
		line-height: 24px;
	}
	.single-post01 .post-item-description h2,
	.single-post01 .post-item-description h2 > a{
		margin:0;
	}
	.single-post01 .post-meta-share ul{
		margin:5px 0 0;
	}
	.single-post01 .post-item-description .post-meta-date, .single-post01 .post-item-description .post-meta-date a, .single-post01 .post-item-description .post-meta-category, .single-post01 .post-item-description .post-meta-category a, .single-post01 .post-item-description .post-meta-comments, .single-post01 .post-item-description .post-meta-comments a {
		font-size: 12px;
	}
	.single-post01 .respond-comment {
		 font-size: 16px;
	 }
	.page-title h1 {
		font-size: 1.8rem;
		padding: 1rem;
		padding-bottom: 0;
	}
	#blog .post-item .post-item-description > h2,
	#blog .post-item .post-item-description > h2 > a{
		font-size: 20px;
		line-height: 24px;
	}
	.single-post01 .comments .comment .text .name {
		font-size: 18px;
	}
}
/* =============================================
   Navbar dropdown enhancements
   ============================================= */
.navbar-nav .drop-down-content {
    border-top: 3px solid #d1c687 !important;
    border-radius: 0 0 8px 8px !important;
    padding: 6px 0 !important;
    min-width: 230px !important;
    box-shadow: 0 8px 24px rgba(6, 68, 108, 0.15) !important;
    animation: dropdown-appear 0.18s ease-out;
}
@keyframes dropdown-appear {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}
.drop-down-pages .nav-link {
    padding: 10px 20px !important;
    font-size: 15px !important;
    color: #06446c !important;
    border-left: 3px solid transparent;
    transition: border-left-color 0.18s ease, background 0.18s ease, padding-left 0.18s ease;
}
.drop-down-pages .nav-link:hover {
    border-left-color: #d1c687;
    background-color: #f5f3e6;
    padding-left: 26px !important;
    color: #06446c !important;
}
.drop-down-pages li + li {
    border-top: 1px solid rgba(6, 68, 108, 0.06);
}

/* =============================================
   Service page card — base style & hover fix
   ============================================= */

/*
 * Cards in the 3 section contexts get distinct alternating styles.
 *
 * offer-section      (bg: light blue #d7e8f2)  → white card + gold top border
 * servicepage-section (bg: white)              → light blue-tinted card + dark-blue top border
 * aboutoffer-section  (bg: white)              → warm cream card + gold left border (FAQ feel)
 *
 * Hover: subtle lift + deeper shadow. Text stays dark in all cases.
 * (Overrides the global .service-section rule that turns text white on hover.)
 */

/* Equal-height cards: columns containing service-box become flex containers
   so the card stretches to the tallest sibling in the row */
.offer-section .row > [class*="col"]:has(.service-box),
.servicepage-section .row > [class*="col"]:has(.service-box),
.aboutoffer-section .row > [class*="col"]:has(.service-box) {
    display: flex;
    flex-direction: column;
    padding-bottom: 24px; /* vertical gap between card rows */
}
.offer-section .service-box,
.servicepage-section .service-box,
.aboutoffer-section .service-box {
    flex: 1;
}
/* box-mb was referenced but never defined */
.box-mb {
    margin-bottom: 0;
}

/* --- offer-section cards (on light blue background) ---------------------- */
.offer-section .service-box {
    background: #ffffff;
    border-radius: 10px;
    padding: 28px 24px;
    border: 1px solid rgba(6, 68, 108, 0.08);
    border-top: 3px solid #d1c687;
    box-shadow: 0 2px 14px rgba(6, 68, 108, 0.08);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.offer-section .service-box:hover {
    box-shadow: 0 8px 28px rgba(6, 68, 108, 0.14);
    transform: translateY(-3px);
    background: #ffffff;
}

/* --- servicepage-section cards (on white background) --------------------- */
.servicepage-section .service-box {
    background: #eef5fb;
    border-radius: 10px;
    padding: 28px 24px;
    border: 1px solid rgba(6, 68, 108, 0.10);
    border-top: 3px solid #06446c;
    box-shadow: 0 2px 10px rgba(6, 68, 108, 0.06);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.servicepage-section .service-box:hover {
    box-shadow: 0 8px 28px rgba(6, 68, 108, 0.13);
    transform: translateY(-3px);
    background: #eef5fb;
}

/* --- aboutoffer-section cards (FAQ, on white background) ----------------- */
.aboutoffer-section .service-box {
    background: #faf9f0;
    border-radius: 10px;
    padding: 28px 24px;
    border: 1px solid rgba(209, 198, 135, 0.30);
    border-left: 4px solid #d1c687;
    box-shadow: 0 2px 10px rgba(6, 68, 108, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.aboutoffer-section .service-box:hover {
    box-shadow: 0 6px 22px rgba(6, 68, 108, 0.10);
    transform: translateY(-2px);
    background: #faf9f0;
}

/* Override the global white-text-on-hover rule from style.css */
.offer-section .service-box:hover h4,
.offer-section .service-box:hover p,
.offer-section .service-box:hover li,
.offer-section .service-box:hover span,
.servicepage-section .service-box:hover h4,
.servicepage-section .service-box:hover p,
.servicepage-section .service-box:hover li,
.servicepage-section .service-box:hover span,
.aboutoffer-section .service-box:hover h4,
.aboutoffer-section .service-box:hover p,
.aboutoffer-section .service-box:hover li,
.aboutoffer-section .service-box:hover span {
    color: inherit !important;
}

/* Price disclaimer note */
.price-disclaimer {
    font-size: 0.8rem;
    color: #888;
    text-align: center;
    margin-top: 2rem;
    padding: 0 1rem;
    line-height: 1.5;
}

/* =============================================
   Service page card components
   ============================================= */
/* Large price display — pack cards */
.price-tag {
    font-size: 2rem;
    font-weight: 700;
    color: #06446c;
    margin-bottom: 0.5rem;
    line-height: 1.15;
}
.price-tag .price-unit {
    font-size: 1rem;
    font-weight: 400;
    color: #555;
}
/* Standard price display — network / phone / misc */
.price-sm {
    font-size: 1.5rem;
    font-weight: 700;
    color: #06446c;
    margin-bottom: 0.5rem;
}
/* "Sur devis" pill */
.price-badge {
    display: inline-block;
    font-size: 0.95rem;
    font-weight: 600;
    color: #06446c;
    background: #d7e8f2;
    padding: 4px 14px;
    border-radius: 20px;
    margin-bottom: 0.75rem;
}
/* Checkmark icon using brand color */
.check-icon {
    color: #06446c;
    margin-right: 6px;
    font-size: 0.9rem;
}
/* Icon displayed above card heading */
.svc-card-icon {
    font-size: 2rem;
    color: #d1c687;
    margin-bottom: 0.75rem;
    display: block;
}
/* Pack subtitle (e.g. "Bureautique") */
.pack-subtitle {
    font-size: 1rem;
    font-weight: 400;
    color: #555;
}
/* Inline icon in headings / list items using brand blue */
.icon-brand {
    color: #06446c;
    margin-right: 6px;
}
/* Step number label (e.g. "ÉTAPE 01") */
.step-label {
    color: #06446c;
    font-weight: 700;
    font-size: 0.875rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

/* ==========================================================================
   Process Stepper — "Six étapes pour chaque demande"
   ========================================================================== */

.proc-section { padding-bottom: 80px; }

/* ── Stepper wrapper ────────────────────────────────────────────────────── */
.proc-stepper {
    margin-top: 2.5rem;
}

/* ── Track ──────────────────────────────────────────────────────────────── */
.proc-track-wrap {
    position: relative;
    padding: 0 0 16px;
    margin-bottom: 32px;
}

/* The grey rail */
.proc-track-rail {
    position: absolute;
    top: 32px; /* half of 64px node */
    left: calc(100% / 12);
    right: calc(100% / 12);
    height: 4px;
    background: rgba(6,68,108,0.12);
    border-radius: 2px;
    overflow: visible;
}

/* Filled portion (JS sets width) */
.proc-track-fill {
    position: absolute;
    inset: 0;
    width: 0%;
    background: linear-gradient(to right, #06446c 0%, #d1c687 100%);
    border-radius: 2px;
    transition: width 0.5s cubic-bezier(0.4,0,0.2,1);
}

/* Countdown timer overlay on the fill */
.proc-track-timer {
    position: absolute;
    top: 0; bottom: 0;
    left: 0;
    width: 0%;
    background: rgba(209,198,135,0.35);
    border-radius: 2px;
}
@keyframes proc-timer-fill {
    from { width: 0%; }
    to   { width: 100%; }
}

/* ── Milestone nodes ────────────────────────────────────────────────────── */
.proc-milestones {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}

.proc-ms {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    cursor: pointer;
    user-select: none;
}

/* Circle */
.proc-node {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid rgba(6,68,108,0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: rgba(6,68,108,0.30);
    transition: all 0.35s cubic-bezier(0.34,1.56,0.64,1);
    box-shadow: 0 2px 8px rgba(6,68,108,0.08);
    margin-bottom: 8px;
    position: relative;
}

.proc-ms-num {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: rgba(6,68,108,0.35);
    transition: color 0.3s;
}
.proc-ms-label {
    font-size: 0.75rem;
    font-weight: 500;
    color: #aaa;
    transition: color 0.3s;
    text-align: center;
    line-height: 1.2;
    max-width: 80px;
}

/* Visited state */
.proc-ms.visited .proc-node {
    background: #06446c;
    border-color: #06446c;
    color: #fff;
    transform: scale(1.0);
}
.proc-ms.visited .proc-node::after {
    content: '\f00c'; /* fa-check */
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.8rem;
    position: absolute;
    top: -4px; right: -4px;
    background: #d1c687;
    color: #06446c;
    width: 18px; height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 18px;
    text-align: center;
}
.proc-ms.visited .proc-ms-num  { color: #06446c; }
.proc-ms.visited .proc-ms-label { color: #06446c; }

/* Active state */
.proc-ms.active .proc-node {
    background: linear-gradient(135deg, #06446c 0%, #0d6eaf 100%);
    border-color: #d1c687;
    border-width: 3px;
    color: #fff;
    transform: scale(1.22);
    box-shadow: 0 8px 24px rgba(6,68,108,0.30);
}
.proc-ms.active .proc-ms-num   { color: #06446c; font-weight: 800; }
.proc-ms.active .proc-ms-label { color: #06446c; font-weight: 700; }

/* Hover on non-active */
.proc-ms:not(.active) .proc-node:hover {
    border-color: #06446c;
    color: #06446c;
    transform: scale(1.08);
}

/* ── Content panels ─────────────────────────────────────────────────────── */
.proc-panels {
    position: relative;
    overflow: hidden;
    transition: height 0.45s cubic-bezier(0.25,0.46,0.45,0.94);
}

/*
 * All panels are always rendered (position:absolute, opacity:0) so that
 * display toggling never interrupts the CSS transition.
 * opacity + transform are managed entirely by JS inline styles.
 */
.proc-panel {
    position: absolute;
    top: 0; left: 0; right: 0;
    display: flex;
    align-items: center;
    gap: 32px;
    background: #fff;
    border-radius: 14px;
    padding: 36px 40px;
    box-shadow: 0 6px 30px rgba(6,68,108,0.10);
    border-left: 5px solid #06446c;
    overflow: hidden;
    /* initial hidden state — JS overrides these inline */
    opacity: 0;
    pointer-events: none;
    will-change: opacity, transform;
}
/* Active panel: visible by default; JS overrides inline during transitions,
   then clears them — at which point these CSS values take over again. */
.proc-panel.active {
    pointer-events: auto;
    opacity: 1;
    transform: translateX(0);
}

/* Large watermark step number */
.proc-panel-bg-num {
    position: absolute;
    right: 28px;
    top: -16px;
    font-size: 9rem;
    font-weight: 900;
    line-height: 1;
    color: rgba(6,68,108,0.045);
    pointer-events: none;
    user-select: none;
    font-variant-numeric: tabular-nums;
}

/* Icon left of text */
.proc-panel-icon {
    font-size: 2.8rem;
    color: #d1c687;
    flex-shrink: 0;
    line-height: 1;
    filter: drop-shadow(0 2px 4px rgba(209,198,135,0.4));
}

.proc-panel-body h4 {
    color: #06446c;
    font-size: 1.25rem;
    margin-bottom: 12px;
}
.proc-panel-body p {
    font-size: 1rem;
    line-height: 1.75;
    color: #444;
    margin: 0;
}

/* ── Controls ───────────────────────────────────────────────────────────── */
.proc-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 28px;
}

.proc-btn {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 2px solid #06446c;
    background: transparent;
    color: #06446c;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background 0.2s, color 0.2s, transform 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.proc-btn:hover {
    background: #06446c;
    color: #fff;
    transform: scale(1.1);
}

.proc-dots {
    display: flex;
    gap: 8px;
    align-items: center;
}
.proc-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgba(6,68,108,0.18);
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
}
.proc-dot.active {
    width: 28px;
    border-radius: 5px;
    background: #06446c;
}
.proc-dot:hover:not(.active) {
    background: rgba(6,68,108,0.40);
    transform: scale(1.2);
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .proc-track-rail { display: none; }
    .proc-milestones { overflow-x: auto; padding-bottom: 8px; flex-wrap: nowrap; gap: 4px; }
    .proc-ms         { min-width: 70px; }
    .proc-ms-label   { display: none; }
    .proc-node       { width: 52px; height: 52px; font-size: 1.1rem; }
    .proc-panel      { flex-direction: column; text-align: center; padding: 28px 20px; gap: 16px; }
    .proc-panel-bg-num { font-size: 6rem; }
    .proc-panel-icon { font-size: 2.2rem; }
}

/* Content section links */
.servicepage-section a,
.aboutoffer-section a {
	color: #06446c;
	text-decoration: underline;
}
.servicepage-section a:hover,
.aboutoffer-section a:hover {
	color: #d1c687;
}
/* Cookie Consent Banner */
#cookie-consent {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	background: rgba(6, 68, 108, 0.97);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	box-shadow: 0 -2px 20px rgba(0, 0, 0, 0.15);
	animation: cc-slide-up 0.4s ease-out;
}
@keyframes cc-slide-up {
	from { transform: translateY(100%); }
	to { transform: translateY(0); }
}
#cookie-consent .cc-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding: 20px 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}
#cookie-consent .cc-inner p {
	color: #fff;
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
	flex: 1;
}
#cookie-consent .cc-buttons {
	display: flex;
	gap: 10px;
	flex-shrink: 0;
}
#cookie-consent .cc-btn {
	border: none;
	border-radius: 30px;
	padding: 10px 24px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	white-space: nowrap;
}
#cookie-consent .cc-accept {
	background: #d1c687;
	color: #06446c;
}
#cookie-consent .cc-accept:hover {
	background: #e0d89e;
}
#cookie-consent .cc-decline {
	background: transparent;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.4);
}
#cookie-consent .cc-decline:hover {
	border-color: #fff;
}
@media screen and (max-width: 767px) {
	#cookie-consent .cc-inner {
		flex-direction: column;
		text-align: center;
		padding: 18px 20px;
		gap: 16px;
	}
	#cookie-consent .cc-buttons {
		width: 100%;
		justify-content: center;
	}
}

/* =============================================
   Liquid glass navigation bar (all pages)
   ============================================= */
.banner_outer .navbar-nav,
.sub-banner .navbar-nav {
    padding: 5px 10px !important;
    padding-left: 10px !important;
    background: rgba(255, 255, 255, 0.20);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.50);
    box-shadow:
        inset 0 1.5px 0 rgba(255, 255, 255, 0.65),
        inset 0 -1px 0 rgba(0, 0, 0, 0.05),
        0 6px 24px rgba(0, 0, 0, 0.10);
    align-items: center;
    gap: 4px;
}
/* Override base li margins so gap handles spacing */
.banner_outer .navbar-nav li,
.banner_outer .navbar-nav li:last-child,
.sub-banner .navbar-nav li,
.sub-banner .navbar-nav li:last-child {
    margin: 0 !important;
}
/* Individual links — no glass, just text inside the bar */
.banner_outer .navbar-nav .nav-item > a,
.banner_outer .navbar-nav .nav-item > a.dropdown-toggle,
.sub-banner .navbar-nav .nav-item > a,
.sub-banner .navbar-nav .nav-item > a.dropdown-toggle {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 999px !important;
    color: var(--e-global-color-white) !important;
    font-weight: 600 !important;
    padding: 6px 20px !important;
    margin: 0 !important;
    transition: background 0.2s ease, color 0.2s ease !important;
    transform: none !important;
}
/* Hover highlight inside the bar */
.banner_outer .navbar-nav .nav-item > a:hover,
.banner_outer .navbar-nav .nav-item > a.dropdown-toggle:hover,
.sub-banner .navbar-nav .nav-item > a:hover,
.sub-banner .navbar-nav .nav-item > a.dropdown-toggle:hover {
    background: rgba(255, 255, 255, 0.25) !important;
    color: var(--e-global-color-white) !important;
    transform: none !important;
}
/* Active link */
.banner_outer .navbar-nav .active > a,
.sub-banner .navbar-nav .active > a {
    background: rgba(255, 255, 255, 0.25) !important;
    color: var(--e-global-color-white) !important;
}
/* Dropdown panel — semi-transparent glass on sub-banner pages */
.sub-banner .navbar-nav .dropdown-menu {
    background: rgba(255, 255, 255, 0.72) !important;
    backdrop-filter: blur(18px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    border: 1px solid rgba(255, 255, 255, 0.50) !important;
    border-radius: 14px !important;
    box-shadow:
        inset 0 1.5px 0 rgba(255, 255, 255, 0.70),
        0 10px 32px rgba(0, 0, 0, 0.18) !important;
    padding: 6px !important;
    margin-top: 8px !important;
    border-top: 3px solid var(--e-global-color-primary) !important;
}
/* Active dropdown item — current page highlight */
.drop-down-pages .nav-link.active,
.drop-down-pages .active > .nav-link {
    background: rgba(209, 198, 135, 0.25) !important;
    border-left-color: var(--e-global-color-primary) !important;
    color: var(--e-global-color-secondary) !important;
    font-weight: 700 !important;
    padding-left: 26px !important;
}

/* Dropdown items (sub-banner) — force dark text */
.sub-banner .navbar-nav .dropdown-menu .nav-item > a,
.sub-banner .drop-down-pages .nav-link {
    color: var(--e-global-color-secondary) !important;
    border-radius: 8px !important;
    border-left: 3px solid transparent !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
    transition: border-left-color 0.18s ease, background 0.18s ease, padding-left 0.18s ease !important;
}
.sub-banner .navbar-nav .dropdown-menu .nav-item > a:hover,
.sub-banner .drop-down-pages .nav-link:hover {
    color: var(--e-global-color-secondary) !important;
    border-left-color: var(--e-global-color-primary) !important;
    background: rgba(255, 255, 255, 0.55) !important;
    padding-left: 26px !important;
}

/* =============================================
   Mobile — liquid glass nav panel (≤ 991px)
   ============================================= */
@media (max-width: 991px) {

    /* Glass panel on the collapse container */
    .navbar-collapse {
        background: rgba(255, 255, 255, 0.78) !important;
        backdrop-filter: blur(22px) saturate(160%) !important;
        -webkit-backdrop-filter: blur(22px) saturate(160%) !important;
        border: 1px solid rgba(255, 255, 255, 0.60) !important;
        border-radius: 18px !important;
        box-shadow:
            inset 0 1.5px 0 rgba(255, 255, 255, 0.70),
            0 12px 36px rgba(0, 0, 0, 0.18) !important;
        width: 260px !important;
        top: 72px !important;
        right: 12px !important;
        padding: 10px !important;
    }

    /* Strip pill shape from navbar-nav — flat inside the glass panel */
    .banner_outer .navbar-nav,
    .sub-banner .navbar-nav {
        border-radius: 0 !important;
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        padding: 2px 0 !important;
        gap: 2px;
        width: 100%;
        align-items: stretch !important;
    }

    /* Nav link items on mobile — dark navy text on glass */
    .banner_outer .navbar-nav .nav-item > a,
    .banner_outer .navbar-nav .nav-item > a.dropdown-toggle,
    .sub-banner .navbar-nav .nav-item > a,
    .sub-banner .navbar-nav .nav-item > a.dropdown-toggle {
        color: var(--e-global-color-secondary) !important;
        border-radius: 10px !important;
        padding: 10px 14px !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        line-height: 1.4 !important;
    }
    .banner_outer .navbar-nav .nav-item > a:hover,
    .sub-banner .navbar-nav .nav-item > a:hover {
        background: rgba(6, 68, 108, 0.09) !important;
        color: var(--e-global-color-secondary) !important;
        transform: none !important;
    }
    .banner_outer .navbar-nav .active > a,
    .sub-banner .navbar-nav .active > a {
        background: rgba(6, 68, 108, 0.12) !important;
        color: var(--e-global-color-secondary) !important;
    }

    /* li margin reset for mobile */
    .banner_outer .navbar-nav li,
    .banner_outer .navbar-nav li:last-child,
    .sub-banner .navbar-nav li,
    .sub-banner .navbar-nav li:last-child {
        margin: 0 !important;
    }

    /* Auto-expand Services dropdown when mobile menu opens */
    .navbar-collapse.show .nav-item.dropdown .dropdown-menu {
        display: block !important;
    }

    /* Dropdown panel on mobile — indented sub-list */
    .banner_outer .navbar-nav .dropdown-menu,
    .sub-banner .navbar-nav .dropdown-menu {
        position: static !important;
        background: rgba(6, 68, 108, 0.06) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        border: none !important;
        border-left: 2px solid rgba(209, 198, 135, 0.70) !important;
        border-top: none !important;
        border-radius: 0 0 10px 10px !important;
        box-shadow: none !important;
        margin: 0 0 4px 16px !important;
        padding: 4px 0 !important;
    }

    /* Dropdown items on mobile */
    .banner_outer .navbar-nav .dropdown-menu .nav-item > a,
    .banner_outer .drop-down-pages .nav-link,
    .sub-banner .navbar-nav .dropdown-menu .nav-item > a,
    .sub-banner .drop-down-pages .nav-link {
        color: var(--e-global-color-secondary) !important;
        font-size: 14px !important;
        padding: 8px 14px !important;
        border-radius: 8px !important;
        border-left: none !important;
        font-weight: 500 !important;
    }
    .banner_outer .drop-down-pages .nav-link:hover,
    .sub-banner .drop-down-pages .nav-link:hover {
        background: rgba(6, 68, 108, 0.08) !important;
        padding-left: 14px !important;
        border-left: none !important;
        color: var(--e-global-color-secondary) !important;
    }
    .banner_outer .drop-down-pages .nav-link.active,
    .sub-banner .drop-down-pages .nav-link.active {
        background: rgba(209, 198, 135, 0.28) !important;
        font-weight: 700 !important;
        border-left: none !important;
        padding-left: 14px !important;
        color: var(--e-global-color-secondary) !important;
    }

    /* Small phones — full-width panel */
    .navbar-collapse {
        width: calc(100vw - 24px) !important;
        right: 12px !important;
        left: 12px !important;
    }
}

/* Hamburger lines — white on all banners */
.banner_outer .navbar-light .navbar-toggler-icon {
    background: var(--e-global-color-white) !important;
}
.sub-banner .navbar-light .navbar-toggler-icon {
    background: var(--e-global-color-white) !important;
}

/* Fix: centered service-box h4 titles losing alignment on mobile.
   responsive.css adds padding-right to .servicepage-section .service-box h4
   and .offer-section .service-box h4 which breaks text-center on small screens. */
.servicepage-section .service-box.text-center h4,
.offer-section .service-box.text-center h4 {
    padding-right: 0 !important;
    text-align: center !important;
}

/* get_started.button2 — global fallback for unscoped contexts */
.get_started.button2 {
    background-image: linear-gradient(to right, var(--e-button-gradient-1) 0%, var(--e-button-gradient-2) 100%);
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    border-radius: 30px;
    padding: 10px 20px;
    text-align: center;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    transition: all 0.3s ease-in-out;
}
.get_started.button2:hover {
    background-image: linear-gradient(to right, var(--e-global-color-desaturated-blue) 0%, var(--e-global-color-desaturated-blue) 100%);
}
.get_started.button2 figure {
    display: inline-flex;
    margin-left: 8px;
    flex-shrink: 0;
}

/* Service cards — get_started buttons inside service-box */
.service-box .get_started.button2 {
    background-image: linear-gradient(to right, var(--e-button-gradient-1) 0%, var(--e-button-gradient-2) 100%);
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    border-radius: 30px;
    padding: 10px 20px;
    text-align: center;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    transition: all 0.3s ease-in-out;
}
.service-box .get_started.button2:hover {
    background-image: linear-gradient(to right, var(--e-global-color-desaturated-blue) 0%, var(--e-global-color-desaturated-blue) 100%);
}
.service-box .get_started.button2 figure {
    display: inline-flex;
    margin-left: 8px;
    flex-shrink: 0;
}

/* Sticky Header */
.header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: rgba(6, 68, 108, 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 0 40px !important;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.15);
    animation: slideDown 0.35s ease-out;
}
.header.sticky .navbar {
    padding: 12px 0;
}
.header.sticky .banner-logo img {
    max-height: 40px;
}
@keyframes slideDown {
    from { transform: translateY(-100%); }
    to { transform: translateY(0); }
}















