/* Minimal styles to approximate layout */
body{font-family: system-ui, Arial, sans-serif;color:#222}
.hero{position:relative}
.hero img{height:100vh;object-fit:cover}
.hero-cta{position:absolute;left:50%;top:60%;transform:translateX(-50%);}
.card-img-top{height:200px;object-fit:contain}
.navbar-brand{font-weight:700}
@media (max-width:576px){.hero img{height:40vh}.card-img-top{height:140px}}

/* Header / Navigator styles */
.o_top_fixed_element{position:sticky;top:0;z-index:1030}
.o_header_standard .o_main_nav{background:#000;color:#fff;padding:0.35rem 0}
.o_header_standard .o_main_nav .navbar-brand{color:#fff}
.o_header_standard .o_main_nav .navbar-brand img{filter:brightness(0) invert(1);max-height:40px}
.o_header_standard .top_menu .nav-link{color:rgba(255,255,255,0.95);transition:all .18s ease;padding:0.6rem 0.9rem;font-weight:600}
.o_header_standard .top_menu .nav-link:hover{color:#ffd966;transform:translateY(-3px);text-decoration:none}
.o_header_standard .navbar-nav .o_nav_link_btn{color:#fff}
.o_navlink_background, .o_navlink_background_hover{color:#fff}
.o_navlink_background:hover, .o_navlink_background_hover:hover{color:#ffd966}
.o_header_standard .my_cart_quantity{display:inline-block;min-width:20px;min-height:20px;padding:0 6px}

/* Full width bar */
.o_main_nav.container-fluid{padding-left:2rem;padding-right:2rem}

/* Force physical-side placement: logo left, controls right, nav centered regardless of dir */
.o_main_nav{position:relative;display:flex;align-items:center}
.o_main_nav .navbar-brand{position:absolute;left:1rem;right:auto;transform:none;margin:0;padding:0;z-index:50}
.o_main_nav .navbar-nav.align-items-center{position:absolute;right:1rem;left:auto;display:flex;align-items:center;gap:0.5rem;z-index:50}
.o_main_nav #top_menu{margin:0 auto;display:flex;justify-content:center;flex:1;position:relative;z-index:40}

/* Pin language selector, cart and wishlist to fixed physical offsets on the right
	so they do NOT change places when document `dir` changes. */
.o_main_nav .o_header_language_selector{position:absolute !important;right:1rem !important;left:auto !important;top:50%;transform:translateY(-50%);z-index:60}
.o_main_nav .o_wsale_my_cart{position:absolute !important;right:7.5rem !important;left:auto !important;top:50%;transform:translateY(-50%);z-index:60}
.o_main_nav .o_wsale_my_wish{position:absolute !important;right:5.2rem !important;left:auto !important;top:50%;transform:translateY(-50%);z-index:60}

/* Ensure the phone link sits left of the controls */
.o_main_nav .s_text_block{position:absolute;right:9.8rem;left:auto;top:50%;transform:translateY(-50%);z-index:55}

/* extra spacing for small screens */
@media (max-width: 576px){
	.o_main_nav .o_wsale_my_cart{right:6.8rem !important}
	.o_main_nav .o_wsale_my_wish{right:4.6rem !important}
	.o_main_nav .s_text_block{right:8.6rem !important}
}

/* ensure mobile offcanvas toggler does not overlap fixed controls */
@media (max-width: 991.98px){
	.o_main_nav .navbar-toggler{position:relative;z-index:60}
}

/* Ensure menu centered and large touch targets */
.top_menu{display:flex;gap:0.5rem}
.top_menu .nav-link{padding:0.75rem 1rem}

/* Mobile-specific header tweaks */
@media (max-width: 991.98px){
	.o_header_mobile{background:#000}
	.o_header_mobile .navbar-brand{color:#fff;font-size:1rem;line-height:1;}
	.o_header_mobile .navbar-toggler-icon{background-image:none}
	.o_header_mobile .navbar-toggler{border:0;color:#fff}
	.o_header_mobile .navbar-toggler-icon::before{content:'\2630';font-size:1.6rem;color:#fff}
	.o_header_mobile .navbar-toggler{width:52px;height:52px;display:flex;align-items:center;justify-content:center;padding:0}
	.o_header_mobile .navbar-toggler-icon::before{line-height:1;display:block}

	/* make the header container a positioned flex for alignment */
	.o_header_mobile .o_main_nav{position:relative;display:flex;align-items:center;justify-content:space-between;padding-left:1rem;padding-right:1rem;height:64px}
	/* keep the logo fixed on the left and controls fixed on the right
	   Use flex ordering so the middle nav can change without moving logo/controls */
	.o_header_mobile .navbar-brand{position:static;left:auto;transform:none;margin:0;order:1}
	.o_header_mobile .top_menu{order:2;flex:1;text-align:center}
	.o_header_mobile > .d-flex{order:3;margin-left:auto;display:flex;align-items:center;gap:0.5rem}
	.o_header_mobile .navbar-toggler{order:4}
	/* ensure left icons are not glued to the edge */
	.o_header_mobile .o_main_nav > .d-flex{padding-left:0.5rem}
	/* ensure toggler sits a bit away from right edge */
	.o_header_mobile .nav-link.btn{margin-right:0.5rem}
	  /* Offcanvas (mobile menu) uses white bg - ensure readable text
		  note: the offcanvas element has classes like 'offcanvas o_navbar_mobile' */
	.offcanvas.o_navbar_mobile{background:#fff;color:#111;padding:1.0rem}
	/* ensure offcanvas content flows top->down and language selector sits after nav without overlapping */
	.offcanvas.o_navbar_mobile .offcanvas-body{padding:0;overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-start;gap:0.5rem}
	/* professional menu: compact, consistent touch targets for mobile offcanvas */
	/* make nav items sit in a centered column (approx half width) on mobile */
	.offcanvas.o_navbar_mobile .navbar-nav{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0.5rem;padding-top:0.5rem;padding-bottom:0.5rem}
	/* full-width menu items on mobile: full width, centered text */
	/* make each menu item span the full viewport width on mobile */
	.offcanvas.o_navbar_mobile .nav-link{color:#fff !important;padding:0.9rem 1rem;font-size:1rem;text-align:center;background:#0f0f0f;border-radius:0;border-top:1px solid rgba(255,255,255,0.03);border-bottom:1px solid rgba(255,255,255,0.03);box-shadow:none;transition:box-shadow .12s ease,background .12s ease;display:block;box-sizing:border-box;width:100%;max-width:100%;margin:0}
	.offcanvas.o_navbar_mobile .nav-link:hover{background:#151515;transform:none;box-shadow:0 10px 22px rgba(0,0,0,0.14)}
	.offcanvas.o_navbar_mobile .nav-link:active{transform:translateY(0)}
	.offcanvas.o_navbar_mobile .dropdown-item{color:#111 !important}
	.offcanvas.o_navbar_mobile .btn-close{filter:invert(0);} /* try to keep it visible */

/* Ensure the offcanvas close button is visible on white background */
.offcanvas.o_navbar_mobile .btn-close{
	background-image: none !important; /* remove bootstrap svg background to use our text icon */
	width:40px;
	height:40px;
	display:flex;
	align-items:center;
	justify-content:center;
	position:absolute;
	right:12px;
	top:12px;
	border: none;
	background: transparent;
	opacity: 1;
}
.offcanvas.o_navbar_mobile .btn-close .custom-close-icon{
	font-size:22px;
	line-height:1;
	color:#111; /* dark X so it's visible on white */
}

	/* Add side padding so icons and edges are not flush */
	.o_main_nav.container, .o_main_nav.container-fluid{padding-left:1rem;padding-right:1rem}
	.o_header_mobile .o_main_nav{padding-left:0.75rem;padding-right:0.75rem}
	/* ensure icons on right have breathing room */
	.o_header_mobile .o_main_nav > .d-flex a{margin-left:8px;margin-right:8px}
	/* hide desktop-only elements on mobile */
	.o_header_standard.d-none.d-lg-block{display:none}
}

/* Mobile offcanvas tweaks */
.o_header_mobile .o_main_nav{padding:0.5rem 0}
.o_navbar_mobile .offcanvas-body{padding:1rem}

/* Ensure offcanvas uses border-box and prevent nested list paddings from causing overflow */
.offcanvas.o_navbar_mobile,
.offcanvas.o_navbar_mobile *{
	box-sizing: border-box;
}
.offcanvas.o_navbar_mobile{overflow-x:hidden}
.offcanvas.o_navbar_mobile .offcanvas-body{padding:0}
.offcanvas.o_navbar_mobile .navbar-nav{padding:0;margin:0;list-style:none;width:100%}
.offcanvas.o_navbar_mobile .navbar-nav .top_menu{padding:0;margin:0;width:100%}
.offcanvas.o_navbar_mobile .top_menu .nav-item{width:100%}
.offcanvas.o_navbar_mobile .top_menu .nav-link{padding-left:1rem;padding-right:1rem}

/* Tweak language selector inside mobile offcanvas: reduce height and ensure dropdown appears above content */
	/* compact language selector styling for mobile offcanvas */
		/* language selector: full-width, light background with border to distinguish it */
		.offcanvas.o_navbar_mobile .js_language_selector{display:block;padding:0.5rem 0;margin-top:0.5rem}
		.offcanvas.o_navbar_mobile .js_language_selector .dropdown-toggle.small-lang-toggle{padding:0.75rem 1rem;font-size:1rem;border-radius:0;display:block;width:100%;box-sizing:border-box;margin:0;background:#ffffff;color:#111;border:1px solid #333;box-shadow:none;font-weight:700}
		.offcanvas.o_navbar_mobile .js_language_selector .dropdown-toggle.small-lang-toggle:hover{background:#f6f6f6}
		.offcanvas.o_navbar_mobile .js_language_selector .small-lang-menu{z-index:1060;left:0;right:0;min-width:0;width:100%;box-sizing:border-box;margin-top:6px;border-radius:0}
		.offcanvas.o_navbar_mobile .js_language_selector .dropdown-item{padding:0.6rem 0.75rem;color:#111;font-weight:600}
	.offcanvas.o_navbar_mobile .js_language_selector .dropdown-item{padding:0.5rem 0.75rem}
	/* ensure offcanvas content doesn't get hidden behind bottom controls */
	.offcanvas.o_navbar_mobile .navbar-nav{padding-bottom:1.25rem}
.offcanvas.o_navbar_mobile .js_language_selector{position:relative}
.offcanvas.o_navbar_mobile .js_language_selector .dropdown-item{font-weight:600}

/* Subtle dropdown animation */
.dropdown-menu{transition:transform .12s ease,opacity .15s ease;transform-origin:top right}
.dropdown.show .dropdown-menu{transform:translateY(6px);opacity:1}

/* Accessibility focus */
.top_menu .nav-link:focus{outline:3px solid rgba(255,255,255,0.12);outline-offset:2px}

/* Filter active state */
.top_menu .nav-link.filter-active{color:#ffd966;background:transparent;text-decoration:underline}

/* Hidden by filter (strong) */
.hidden-by-filter{display:none !important}

/* product-filter button styling */
.product-filter .btn{border-color:rgba(0,0,0,0.08);color:#222}
.product-filter .btn.filter-active, .product-filter .btn.active{color:#111;background:#ffd966;border-color:#ffd966}
.product-filter .btn:focus{box-shadow:none}

/* Favorite button overlay on product cards */
.product-fav-btn{
	position:absolute;
	top:10px;
	right:10px;
	width:38px;
	height:38px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(255,255,255,0.95);
	border:1px solid rgba(0,0,0,0.06);
	color:#444;
	z-index:30;
	cursor:pointer;
	transition:transform .12s ease,box-shadow .12s ease;
}
.product-fav-btn:hover{transform:scale(1.05);box-shadow:0 6px 14px rgba(0,0,0,0.08)}
.product-fav-btn i{font-size:16px}
.product-fav-btn.fav-active{background:#fff0f0;color:#c62828;border-color:rgba(198,40,40,0.12)}
.product-fav-btn.fav-active i{color:#c62828}

/* Favorites modal styling */
.fav-modal .modal-content{border-radius:12px;padding:0}
.fav-modal .fav-item{display:flex;align-items:center;gap:0.75rem;padding:0.75rem;border-bottom:1px solid rgba(0,0,0,0.04)}
.fav-modal .fav-item img{width:64px;height:64px;object-fit:contain;border-radius:8px}
.fav-modal .fav-item .fav-title{font-weight:600}
.fav-modal .fav-empty{padding:2rem;text-align:center;color:#666}
.fav-modal .fav-remove{background:transparent;border:0;color:#c62828}
.fav-modal .fav-footer{padding:0.75rem 1rem;display:flex;justify-content:space-between;align-items:center}

/* Quick-view modal styles */
.quickview-modal .modal-content{border-radius:12px;overflow:hidden}
.quickview-body{display:flex;gap:1rem;padding:1rem}
.quickview-body .qv-img{flex:0 0 48%;max-width:48%}
.quickview-body .qv-img img{width:100% !important;height:auto !important;max-height:70vh;object-fit:cover;border-radius:8px}
.quickview-body .qv-info{flex:1;display:flex;flex-direction:column;justify-content:space-between}
.qv-info .qv-title{font-size:1.1rem;font-weight:700;margin-bottom:0.5rem}
.qv-info .qv-price{font-size:1.25rem;color:#111;font-weight:700;margin-bottom:0.5rem}
.qv-info .qv-desc{color:#555;margin-bottom:1rem}
.qv-note{display:block;background:linear-gradient(90deg,#fffbea,#fff8e1);border-left:4px solid #ffd966;padding:10px 12px;border-radius:6px;margin:0.5rem 0;font-weight:600;color:#663c00}
.qv-note .muted{color:#6c6c6c;font-weight:400;margin-left:6px}
.qv-actions{display:flex;gap:0.5rem}
@media (max-width:767px){.quickview-body{flex-direction:column}.quickview-body .qv-img{max-width:100%;flex:0 0 auto}}

/* Organizations modal: always stack image -> description -> form (use mobile order on desktop too) */
.org-modal .modal-content{border-radius:12px}
.org-modal .quickview-body{flex-direction:column;padding:1rem}
.org-modal .quickview-body .qv-img{flex:0 0 auto;max-width:100%;width:100%;margin-bottom:1rem}
.org-modal .quickview-body .qv-img img{width:100% !important;height:auto !important;max-height:60vh;object-fit:cover;border-radius:8px}
.org-modal .quickview-body .qv-info{flex:0 0 auto;width:100%;display:block}
.org-modal .qv-actions{display:block;margin-top:0.75rem}

/* Product card (Odoo-like) */
.o_carousel_product_card{position:relative;border-radius:12px;overflow:hidden;border:1px solid rgba(0,0,0,0.06);transition:transform .14s ease,box-shadow .14s ease;background:#fff}
.o_carousel_product_card:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(0,0,0,0.12)}
.o_carousel_product_img_link{display:block;width:100%}
.o_carousel_product_card .card-img-top{width:100%;height:220px;object-fit:contain;display:block}
.o_carousel_product_card_body{padding:0.75rem 0.75rem 0}
.o_carousel_product_card .card-title{margin-bottom:0.5rem;font-size:1rem}
.o_carousel_product_card .oe_currency_value{font-weight:700}
.o_carousel_product_card_footer{position:relative;padding-top:0.5rem;padding-bottom:1rem;margin-top:auto;background:transparent;border-top:0}
.o_website_rating_static{display:inline-flex;align-items:center;gap:6px;color:#f6c444}
.o_website_rating_static i{color:#f6c444;margin-right:2px}
.o_carousel_product_card .btn{padding:0.5rem 1rem;border-radius:8px}

@media (max-width:576px){
	.o_carousel_product_card .card-img-top{height:140px}
}

/* Full-viewport feature sections (image half / details half on large screens) */
.full-vh-section{min-height:100vh;height:100vh;display:flex;align-items:stretch;padding:0;box-sizing:border-box}
.full-vh-section{
	/* make section full-bleed across viewport even if nested inside a .container */
	width:100vw;
	position:relative;
	left:50%;
	right:50%;
	margin-left:-50vw;
	margin-right:-50vw;
}
.full-vh-section .feature-img{flex:0 0 50%;width:50%;min-height:100vh;display:block;overflow:hidden}
.full-vh-section .feature-img img{width:100%;height:100%;object-fit:contain;display:block}
.full-vh-section .feature-details{flex:0 0 50%;width:50%;padding:3rem;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.full-vh-section .feature-details h2{font-size:2rem;margin-bottom:0.5rem}
.full-vh-section .feature-details p{color:#ddd;font-size:1.125rem}
.feature-actions{margin-top:1.25rem;display:flex;gap:0.75rem;align-items:center}

@media (max-width: 991.98px){
	.full-vh-section{flex-direction:column;height:auto;min-height:60vh;padding-top:1rem;padding-bottom:1rem;margin-top:0.75rem;margin-bottom:0.75rem}
	.full-vh-section .feature-img{width:100%;min-height:40vh}
	/* keep image aspect ratio on small screens; avoid cropping */
	.full-vh-section .feature-img img{height:auto;width:100%;object-fit:contain}
	/* make details occupy full width when stacked on small screens */
	.full-vh-section .feature-details{flex:0 0 100%;width:100%;padding:1.25rem;align-items:center;text-align:center}
	.full-vh-section .feature-details .feature-desc{width:100%;max-width:100%}
	.full-vh-section .feature-details h2{font-size:1.5rem}
}

/* reverse variation: swap the visual order of image/details on wide screens */
.full-vh-section.reverse .feature-img{order:1}
.full-vh-section.reverse .feature-details{order:0}
@media (max-width: 991.98px){
	/* on mobile keep image above details for readability */
	.full-vh-section.reverse{flex-direction:column}
	.full-vh-section.reverse .feature-img{order:0}
	.full-vh-section.reverse .feature-details{order:1}
}

/* RTL fixes: ensure dropdowns (language selector etc.) stay inside viewport */
[dir="rtl"] .dropdown-menu,
[dir="rtl"] .dropdown-menu.dropdown-menu-end,
[dir="rtl"] .js_language_selector .dropdown-menu{
	left: auto !important;
	right: 0 !important;
}

/* For dropup variants in RTL align to the right side as well */
[dir="rtl"] .dropup .dropdown-menu{
	left: auto !important;
	right: 0 !important;
	transform-origin: bottom left !important;
}

/* On very small screens make language dropdowns full-width to avoid overflow */
@media (max-width: 575.98px){
	.js_language_selector .dropdown-menu,
	.js_language_selector .dropdown-menu.w-100{
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		box-sizing: border-box;
	}
}

/* Elegant WhatsApp contact button */
.whatsapp-btn{
	display:inline-flex;
	align-items:center;
	gap:0.5rem;
	background:#25D366;
	color:#fff;
	padding:0.55rem 0.9rem;
	border-radius:999px;
	text-decoration:none;
	font-weight:600;
	box-shadow:0 10px 28px rgba(37,211,102,0.16);
	transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease;
}
.whatsapp-btn i{font-size:1.25rem}
.whatsapp-btn .whatsapp-btn-text{line-height:1}
.whatsapp-btn:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(37,211,102,0.22);opacity:0.98}
.whatsapp-btn:focus{outline:3px solid rgba(37,211,102,0.18);outline-offset:3px}

/* RTL spacing fix for the icon */
[dir="rtl"] .whatsapp-btn i{margin-left:0.5rem;margin-right:0}

@media (max-width:575.98px){
	.whatsapp-btn{width:100%;justify-content:center}
}

/* If `.whatsapp-btn` is also given Bootstrap `.btn` classes, prefer the
   Bootstrap button appearance so it matches the call button exactly. */
.whatsapp-btn.btn{
	/* reset custom green styles so .btn classes take effect */
	background: none !important;
	color: inherit !important;
	padding: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	transition: none !important;
}
@media (max-width:575.98px){
	.whatsapp-btn.btn{width:auto;justify-content:flex-start}
}

/* Continuous thumbnail slider */
.thumb-slider{width:100%;overflow:hidden}
.thumb-slider .slider-viewport{width:100%;overflow:hidden}
.thumb-slider .slider-track{display:flex;align-items:center;gap:12px;padding:12px 8px;will-change:transform;animation:thumb-scroll 28s linear infinite}
.thumb-slider .slide{flex:0 0 auto}
.thumb-slider .slide img{height:84px;width:auto;border-radius:8px;display:block;object-fit:cover;box-shadow:0 8px 20px rgba(0,0,0,0.08);transition:transform .18s ease}
.thumb-slider .slide img:hover{transform:scale(1.06)}

/* slower on small devices to keep thumb visibility */
@media (max-width:768px){
	.thumb-slider .slide img{height:64px}
	.thumb-slider .slider-track{gap:10px;padding:10px;animation-duration:36s}
}
@media (max-width:420px){
	.thumb-slider .slide img{height:56px}
	.thumb-slider .slider-track{animation-duration:44s}
}

/* reverse direction for RTL pages so motion feels natural */
[dir="rtl"] .thumb-slider .slider-track{animation-name:thumb-scroll-rtl}

@keyframes thumb-scroll{
	0%{transform:translateX(0)}
	100%{transform:translateX(-50%)}
}
@keyframes thumb-scroll-rtl{
	0%{transform:translateX(0)}
	100%{transform:translateX(50%)}
}

/* reduce motion when user prefers reduced motion */
@media (prefers-reduced-motion: reduce){
	.thumb-slider .slider-track{animation: none}
}

/* Contact form styles (elegant card) */
.contact-form-wrapper{max-width:920px;margin-top:1rem}
.contact-form{background:linear-gradient(180deg,#ffffff,#fbfbfb);padding:1.25rem;border-radius:14px;box-shadow:0 18px 48px rgba(12,24,40,0.06);border:1px solid rgba(0,0,0,0.04)}
.contact-form .form-control{border-radius:10px;padding:0.75rem 0.9rem;border:1px solid rgba(17,24,39,0.06)}
.contact-form .form-control:focus{box-shadow:0 8px 28px rgba(37,211,102,0.06);border-color:#cdeed6}
.contact-form .btn-success{background:#25D366;border-color:#20b858;color:#fff;padding:0.55rem 0.85rem;border-radius:999px;font-weight:700;box-shadow:0 12px 28px rgba(37,211,102,0.12)}
.contact-form .btn-success:hover{transform:translateY(-2px)}
.contact-form small.text-muted{color:#6b7280}

@media (max-width:767px){
	.contact-form{padding:1rem}
	.contact-form .btn-success{width:100%;display:block}
	.contact-form .col-md-6{width:100%;flex:0 0 100%}
}

/* Force left-to-right input for phone numbers regardless of page direction */
.ltr-input{direction:ltr;text-align:left}
.ltr-input::placeholder{direction:ltr;text-align:left}

/* Full-width elegant contact form on contact page (full-bleed) */
/* Make the wrapper span the viewport and apply the dark background; inner form fills it */
#contact .contact-form-wrapper{width:100vw;padding:0;background:linear-gradient(180deg,#0f0810,#120715);box-sizing:border-box}
#contact .contact-form{max-width:none;margin:0;width:100%;border-radius:0;padding:2.25rem;background:transparent;color:#fff;border:none;box-shadow:none}
#contact .contact-form .form-control{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);color:#fff}
#contact .contact-form .form-control::placeholder{color:rgba(255,255,255,0.6)}
#contact .contact-form .btn{
	border-radius: 12px;
    display: flex;
    padding: 12px 40px;
    align-items: center;
    gap: 7px;
}

/* Elegant submit button style */
.cf-submit-elegant{background:linear-gradient(90deg,#ffd966,#ffb84d);color:#111;border:none;padding:0.7rem 1.25rem;font-weight:800;border-radius:999px;box-shadow:0 12px 36px rgba(255,184,77,0.18);cursor:pointer}
.cf-submit-elegant:hover{transform:translateY(-2px)}

@media (max-width:767px){
	#contact .contact-form-wrapper{padding:1.25rem}
	#contact .contact-form{padding:1.25rem}
}

/* Floating WhatsApp button (fixed bottom-right) */
.floating-whatsapp{position:fixed;bottom:22px;right:22px;width:60px;height:60px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 36px rgba(37,211,102,0.18);z-index:99999;transition:transform .12s ease,box-shadow .12s ease}
.floating-whatsapp i{font-size:24px}
.floating-whatsapp:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(37,211,102,0.24)}
.floating-whatsapp:active{transform:translateY(0)}
@media (max-width:480px){.floating-whatsapp{width:52px;height:52px;bottom:16px;right:16px}.floating-whatsapp i{font-size:20px}}
@media print{.floating-whatsapp{display:none !important}}

/* Extended footer styles to match provided design */
.site-footer-extended{background:#100b16;color:#e9e6ee;padding:36px 0;font-size:15px}
.site-footer-extended a{color:rgba(255,255,255,0.92);text-decoration:none}
.site-footer-extended a:hover{text-decoration:underline;color:#ffd966}
.site-footer-extended .sf-title{font-weight:700;margin-bottom:12px;color:#fff;font-size:1.05rem}
.site-footer-extended .sf-list{list-style:none;padding:0;margin:0}
.site-footer-extended .sf-list li{margin-bottom:8px}
.site-footer-extended .sf-contact p{color:rgba(255,255,255,0.95);margin:0}
.site-footer-extended .btn-circle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#fff;color:#111;border:0;font-size:18px}
.site-footer-extended .btn-circle i{font-size:16px}
.site-footer-extended .branch-title{color:#fff;font-weight:700;margin-bottom:6px}
.site-footer-extended .branch-addr{color:rgba(255,255,255,0.75);margin:0}

@media (max-width:991.98px){
	.site-footer-extended{text-align:center}
	.site-footer-extended .text-lg-start{text-align:center !important}
}