*{box-sizing:border-box}
:root{--primary-color:#22c55e;--primary-hover:#16a34a;--text-color:#222;--bg-white:#fff;--bg-light:#f8f9fa;--shadow-light:rgba(0,0,0,.08);--shadow-overlay:rgba(0,0,0,.2);--transition-fast:.2s;--transition-normal:.3s;--header-height:4rem;--container-max-width:1280px;--mobile-drawer-width:80vw;--mobile-drawer-max-width:320px}
header{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:50!important;background:var(--bg-white);box-shadow:0 2px 8px var(--shadow-light)}
.header-container{max-width:var(--container-max-width);margin:0 auto;padding:0 1rem}
main{padding-top:var(--header-height)}
.main-content-overlap{padding-top:0!important;margin-top:0!important}
.quote-btn,.mobile-btn-quote{background:var(--primary-color);color:var(--bg-white);border:none;border-radius:4px;padding:.5rem 1.2rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast);font-family:inherit;font-size:inherit;line-height:1}
.quote-btn:hover,.mobile-btn-quote:hover{background:var(--primary-hover)}
.desktop-header{display:block}
.desktop-navbar,.mobile-navbar{display:flex;align-items:center;justify-content:space-between;width:100%}
.desktop-navbar{padding:1rem 0}
.mobile-navbar{padding:.5rem 0}
.desktop-navbar .right-group,.mobile-navbar .right-group{display:flex;align-items:center}
.menu-horizontal{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:.4rem}
.menu-horizontal>li{position:relative;white-space:nowrap}
.menu-horizontal a{display:block;padding:.5rem 1rem;color:var(--text-color);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}
.menu-horizontal a:hover{color:var(--primary-color)}
.has-dropdown:hover>.dropdown-menu,.has-dropdown:hover>.submenu{display:block}
.dropdown-menu,.submenu{display:none;position:absolute;top:100%;left:0;background:var(--bg-white);min-width:180px;box-shadow:0 4px 16px var(--shadow-light);border-radius:.5rem;z-index:10;padding:.5rem 0}
.dropdown-menu li,.submenu li{list-style:none}
.dropdown-menu a,.submenu a{padding:.5rem 1rem;display:block;color:var(--text-color);text-decoration:none;transition:color var(--transition-fast),background var(--transition-fast)}
.dropdown-menu a:hover,.submenu a:hover{color:var(--primary-color);background:var(--bg-light)}
.dropdown-menu li.has-dropdown>a{position:relative;border-radius:.5rem;transition:background var(--transition-fast),color var(--transition-fast);display:flex!important;align-items:center;justify-content:space-between;gap:.5em}
.dropdown-menu li.has-dropdown:hover>a,.dropdown-menu li.has-dropdown:focus-within>a{background:var(--bg-light);color:var(--primary-color)}
.dropdown-menu a svg{transition:color var(--transition-fast);color:var(--text-color);vertical-align:middle;width:1em;height:1em;min-width:1em;min-height:1em;display:inline-block;margin-left:.25em}
.dropdown-menu li.has-dropdown:hover>a svg,.dropdown-menu li.has-dropdown:focus-within>a svg{color:var(--primary-color)}
.submenu{top:0;left:100%;margin-left:-4px}
.mobile-header{display:none}
@media(max-width:1024px){.desktop-header{display:none!important}.mobile-header{display:block!important}header .header-container{padding-left:1rem;padding-right:1rem}}
@media(min-width:1025px){.desktop-header{display:block!important}.mobile-header{display:none!important}}
.mobile-btn-circle{width:36px;height:36px;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;background:none;border:none;padding:0}
.mobile-btn-circle svg{width:28px;height:28px}
.mobile-drawer{display:none;position:fixed;top:56px;right:0;width:var(--mobile-drawer-width);max-width:var(--mobile-drawer-max-width);background:var(--bg-white);z-index:1001;box-shadow:-2px 0 16px var(--shadow-light);pointer-events:auto}
.mobile-drawer-side{height:100vh;overflow-y:auto}
.mobile-drawer-toggle{display:none}
.mobile-drawer-toggle:checked~.mobile-drawer{display:block}
.mobile-drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--shadow-overlay);z-index:1000;pointer-events:none}
.mobile-menu{pointer-events:auto;background:var(--bg-white);position:relative;z-index:1002;padding:1.5rem}
.mobile-menu a{pointer-events:auto;display:block;padding:.5rem 0;color:var(--text-color);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}
.mobile-menu a:hover{color:var(--primary-color)}
.mobile-dropdown{margin:0}
.mobile-dropdown summary{cursor:pointer;font-weight:500;padding:.5rem 0;outline:none;list-style:none;background:none;border:none;color:var(--text-color);transition:color var(--transition-fast)}
.mobile-dropdown[open]>summary{color:var(--primary-color)}
.mobile-menu ul,.mobile-menu ul li,.mobile-dropdown ul,.mobile-dropdown ul li{all:unset!important;display:block!important;margin:0!important;padding:0!important;list-style:none!important;list-style-type:none!important;list-style-image:none!important;list-style-position:outside!important;text-indent:0!important;background:none!important;border:none!important;outline:none!important}
.mobile-menu ul::before,.mobile-menu ul::after,.mobile-menu ul li::before,.mobile-menu ul li::after,.mobile-dropdown ul::before,.mobile-dropdown ul::after,.mobile-dropdown ul li::before,.mobile-dropdown ul li::after{display:none!important;content:none!important;visibility:hidden!important}
.mobile-menu,.mobile-menu *{list-style:none!important;list-style-type:none!important;list-style-image:none!important}
.mobile-dropdown ul{display:block!important;width:100%!important}
.mobile-dropdown ul li{display:block!important;width:100%!important;position:relative!important;padding:8px 0!important}
.mobile-dropdown ul li a{display:block;padding:4px 0;text-decoration:none}
#mobile-product-menu{transition:all var(--transition-normal) ease-in-out;max-height:0;overflow:hidden}
#mobile-product-menu:not(.hidden){max-height:200px;overflow:visible}

.fixed { position: fixed; }
.top-0 { top: 0; }
.left-0 { left: 0; }
.w-full { width: 100%; }
.bg-white { background-color: var(--bg-white); }
.shadow-md { box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); }
.z-50 { z-index: 50; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.flex { display: flex; }
.flex-none { flex: none; }
.items-center { align-items: center; }
.justify-between { justify-content: space-between; }
.space-x-1-6 > * + * { margin-left: 0.4rem; }
.h-10 { height: 2.5rem; }
.h-8 { height: 2rem; }
.w-auto { width: auto; }
.max-w-\[180px\] { max-width: 180px; }
.font-medium { font-weight: 500; }
.hover\:text-green-600:hover { color: #16a34a; }
.transition-colors { transition-property: color; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.px-1 { padding-left: 0.25rem; padding-right: 0.25rem; }
.ml-4, .mr-4 { margin-left: 1rem; }
.mr-4 { margin-right: 1rem; }
.mr-2, .ml-2 { margin-right: 0.5rem; }
.ml-2 { margin-left: 0.5rem; }
.cursor-pointer { cursor: pointer; }
.p-6 { padding: 1.5rem; }
.mb-6 { margin-bottom: 1.5rem; }
.pb-2 { padding-bottom: 0.5rem; }
.border-b, .border-t { border-bottom-width: 1px; }
.border-t { border-top-width: 1px; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.font-bold { font-weight: 700; }
.space-y-1 > * + * { margin-top: 0.25rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-6 { margin-top: 1.5rem; }
.pt-4 { padding-top: 1rem; }
.min-h-screen { min-height: 100vh; }
.relative { position: relative; }
.hidden { display: none; }
.border-gray-200 { border-color: #e5e7eb; }

@media print {
    header { display: none !important; }
    main { padding-top: 0 !important; }
}
@media (prefers-contrast: high) {
    :root {
        --shadow-light: rgba(0,0,0,0.3);
        --shadow-overlay: rgba(0,0,0,0.5);
    }
}
@media (prefers-reduced-motion: reduce) {
    * {
        transition: none !important;
        animation: none !important;
    }
}
@media (prefers-color-scheme: dark) {
    [data-theme="light"] {}
}
@supports not (position: sticky) {
    header { position: fixed !important; }
}