/*
Theme Name:   LBS Aircon
Theme URI:    https://lbsaircon.com/
Description:  Child theme for the LBS Aircon website, built on Hello Elementor. Includes the site header and footer. Custom CSS and code go here so they survive parent theme updates.
Author:       Mohd Kasim
Author URI:   https://lbsaircon.com/
Template:     hello-elementor
Version:      1.1.0
License:      GNU General Public License v3 or later
License URI:  https://www.gnu.org/licenses/gpl-3.0.html
Text Domain:  lbs-aircon
*/

html{scroll-behavior:smooth}

.skip-link.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link.screen-reader-text:focus{top:8px;left:8px;z-index:100000;width:auto;height:auto;clip:auto;padding:12px 18px;border-radius:8px;background:#fff;color:#0B2540;font-weight:700}

/* ============================ Header ============================ */
#lbs-header{--frost:#F3F7F9;--navy:#0B2540;--blue:#1C64D9;--blue-dark:#164FB0;--line:#D5DEE5;position:relative;z-index:999;font-family:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:17px;line-height:1.6;color:var(--navy);-webkit-font-smoothing:antialiased}
#lbs-header *,#lbs-header *::before,#lbs-header *::after{box-sizing:border-box}
#lbs-header a{color:inherit;text-decoration:none}
#lbs-header svg{display:block;flex:none}
#lbs-header .wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
#lbs-header :focus-visible{outline:3px solid var(--blue);outline-offset:3px}
#lbs-header .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border:2px solid transparent;border-radius:10px;font:inherit;font-size:.95rem;font-weight:700;line-height:1;text-transform:none;white-space:nowrap;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}
#lbs-header .btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}
#lbs-header .btn-primary:hover{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}
#lbs-header .btn-ghost{background:transparent;border-color:var(--navy);color:var(--navy)}
#lbs-header .btn-ghost:hover{background:var(--navy);color:#fff}
#lbs-header .topbar{background:var(--navy);color:#C9D7E3;font-size:.875rem}
#lbs-header .topbar .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding:9px 0}
#lbs-header .topbar a{color:#fff;font-weight:600}
#lbs-header .header{position:relative;z-index:999;background:rgba(243,247,249,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
#lbs-header .header.is-fixed{position:fixed;top:var(--wp-admin--admin-bar--height,0px);left:0;right:0;box-shadow:0 12px 30px -22px rgba(11,37,64,.5)}
#lbs-header .header .wrap{display:flex;align-items:center;gap:28px;height:76px}
#lbs-header .logo{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:500;font-stretch:118%;letter-spacing:-.01em;color:var(--navy)}
#lbs-header .logo b{font-weight:800}
#lbs-header .logo-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--navy)}
#lbs-header .logo-image .custom-logo-link{display:block}
#lbs-header .logo-image img{display:block;width:auto;max-height:48px}
#lbs-header .nav{margin-left:auto}
#lbs-header .nav-list{display:flex;gap:26px;margin:0;padding:0;list-style:none}
#lbs-header .nav-list li{margin:0}
#lbs-header .nav-list a{display:block;padding:6px 0;font-size:.95rem;font-weight:600;border-bottom:2px solid transparent}
#lbs-header .nav-list a:hover{border-bottom-color:var(--blue)}
#lbs-header .header-cta{display:flex;gap:10px}
#lbs-header .menu-btn{display:none;align-items:center;justify-content:center;width:46px;height:46px;margin-left:auto;padding:0;background:transparent;border:2px solid var(--navy);border-radius:10px;color:var(--navy);cursor:pointer}
#lbs-header .menu-btn:hover{background:var(--navy);color:#fff}
@media (max-width:1180px){#lbs-header .header-cta .btn-ghost{display:none}}
@media (max-width:980px){
	#lbs-header .menu-btn{display:inline-flex}
	#lbs-header .header-cta{display:none}
	#lbs-header .nav{position:absolute;left:0;right:0;top:100%;display:none;margin:0;padding:6px 20px 18px;background:#fff;border-bottom:1px solid var(--line)}
	#lbs-header .nav.open{display:block}
	#lbs-header .nav-list{flex-direction:column;gap:0}
	#lbs-header .nav-list a{padding:14px 0;border-bottom:1px solid var(--line)}
}
@media (max-width:760px){
	#lbs-header .topbar .wrap{justify-content:center}
	#lbs-header .topbar-hours,#lbs-header .topbar-email{display:none}
}

/* ============================ Footer ============================ */
#lbs-footer{--navy:#0B2540;--blue:#1C64D9;--line:#D5DEE5;font-family:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
#lbs-footer *,#lbs-footer *::before,#lbs-footer *::after{box-sizing:border-box}
#lbs-footer p{margin:0}
#lbs-footer a{color:inherit;text-decoration:none}
#lbs-footer svg{display:block;flex:none}
#lbs-footer .wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
#lbs-footer :focus-visible{outline:3px solid var(--blue);outline-offset:3px}
#lbs-footer .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:2px solid transparent;border-radius:10px;font:inherit;font-size:1rem;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer}
#lbs-footer .btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}
#lbs-footer .btn-ghost{background:#fff;border-color:var(--navy);color:var(--navy)}
#lbs-footer .footer{padding:72px 0 28px;background:var(--navy);color:#B9CADB;font-size:.98rem}
#lbs-footer .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.1fr 1.1fr;gap:40px}
#lbs-footer .logo{display:inline-flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:500;font-stretch:118%;letter-spacing:-.01em;color:#fff}
#lbs-footer .logo b{font-weight:800}
#lbs-footer .logo-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#15385C}
#lbs-footer .footer-about{max-width:34ch;margin-top:16px}
#lbs-footer .footer-h{margin:0 0 16px;font-family:inherit;font-size:1rem;font-weight:700;line-height:1.3;letter-spacing:0;text-transform:none;color:#fff}
#lbs-footer .footer-h-gap{margin-top:28px}
#lbs-footer .footer-list{margin:0;padding:0;list-style:none}
#lbs-footer .footer-list li{margin:0 0 10px}
#lbs-footer .footer a:hover{color:#fff;text-decoration:underline}
#lbs-footer .footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:56px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:.9rem}
#lbs-footer .float-chat{position:fixed;right:24px;bottom:24px;z-index:998;display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:0 22px 0 18px;border-radius:999px;background:var(--navy);color:#fff;font-weight:700;box-shadow:0 18px 40px -16px rgba(11,37,64,.7);transition:background-color .15s}
#lbs-footer .float-chat:hover{background:var(--blue);color:#fff}
#lbs-footer .mobile-bar{display:none}
@media (max-width:1080px){#lbs-footer .footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){
	#lbs-footer .float-chat{display:none}
	#lbs-footer .mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:998;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--line)}
	#lbs-footer .footer{padding-bottom:110px}
}
@media (max-width:560px){#lbs-footer .footer-grid{grid-template-columns:1fr}}

@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	#lbs-header *,#lbs-footer *{transition:none!important}
}

/* ==========================================================
   Add your custom CSS below this line.
   It loads after the Hello Elementor styles, so it takes priority.
   ========================================================== */
