/* Isolated header styles: protect against theme / Elementor global button and icon rules */
.csd-head,.csd-head *{box-sizing:border-box}
.csd-head{width:100%;min-height:74px;display:flex;align-items:center;gap:clamp(12px,1.35vw,25px);padding:0 clamp(16px,3vw,55px);background:#fff;color:#151922;font-family:Inter,Arial,sans-serif;position:relative;z-index:90;box-shadow:0 1px 5px rgba(0,0,0,.045)}
.csd-head .csd-logo{flex:0 0 auto;display:flex;align-items:center;margin-right:auto;max-width:240px}
.csd-head .csd-logo img{display:block;width:215px;max-width:100%;height:auto;object-fit:contain}
.csd-head .csd-menu{flex:0 1 auto;min-width:0}
.csd-head .csd-links,.csd-head .csd-links ul{list-style:none!important;margin:0!important;padding:0!important}
.csd-head .csd-links{display:flex;align-items:center;gap:clamp(13px,1.3vw,25px)}
.csd-head .csd-links li{list-style:none!important;margin:0!important;padding:0!important;position:relative}
.csd-head .csd-links>li>a{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;position:relative;min-height:48px}
.csd-head .csd-links a{color:#151922;font-size:14px;font-weight:600;text-decoration:none;line-height:1.4;background:none;border:0;box-shadow:none;padding:0;text-transform: uppercase;}
.csd-head .csd-links .current-menu-item>a,.csd-head .csd-links .current_page_item>a,.csd-head .csd-links a:hover{color:#ed2635}
.csd-head .csd-links>li.current-menu-item>a:after,.csd-head .csd-links>li.current_page_item>a:after{content:"";height:2px;position:absolute;bottom:2px;left:0;right:0;background:#ed2635}
.csd-head .csd-links .menu-item-has-children>a:before{content:"";display:inline-block;order:2;width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px}
.csd-head .csd-links .sub-menu{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:315px;padding:9px!important;border:1px solid #eceef1;box-shadow:0 12px 25px #1018281f;border-radius:8px;z-index:100}
.csd-head .csd-links li:hover>.sub-menu,.csd-head .csd-links li:focus-within>.sub-menu{display:block}
.csd-head .csd-links .sub-menu li a{display:block!important;padding:10px 12px!important;white-space:normal!important}
.csd-head .csd-links .sub-menu li:hover>a{background:#fff3f4!important}
.csd-head .csd-info{display:flex;align-items:center;gap:8px;flex:0 0 auto;white-space:nowrap;font-size:11px;line-height:1.4;color:#151922;text-decoration:none}
.csd-head .csd-info>span:last-child{display:flex;flex-direction:column}
.csd-head .csd-info strong{font-weight:700;color:inherit}.csd-head .csd-info small{color:inherit}
.csd-head .csd-accent{color:#ed2635;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0}
.csd-head .csd-accent i,.csd-head .csd-accent svg{font-size:18px;width:18px;height:18px;line-height:1;max-width:none;max-height:none}
.csd-head a.csd-wa{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#00a651;color:#fff;border:0;border-radius:7px;padding:11px 15px;font-size:12px;font-weight:700;line-height:1.2;text-decoration:none;box-shadow:none;min-height:42px;width:auto;height:auto}
.csd-head .csd-wa i,.csd-head .csd-wa svg{display:inline-block;color:#fff;font-size:20px;width:20px;height:20px;line-height:1;max-width:20px;max-height:20px;flex:0 0 20px}
.csd-head button.csd-toggle{display:none;flex:0 0 40px;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border:1px solid #e5e7eb!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.csd-head .csd-bar{width:19px;height:2px;background:#151922;display:block;border-radius:2px;transition:transform .2s,opacity .2s}
@media(max-width:1190px){.csd-head{gap:12px}.csd-head .csd-logo img{width:175px}.csd-head .csd-links{gap:12px}.csd-head .csd-links a{font-size:12px}}
@media(max-width:1024px){
.csd-head{min-height:66px!important;padding:0 16px;gap:10px}
.csd-head .csd-logo{margin-right:auto;max-width:180px}.csd-head .csd-logo img{width:175px}
.csd-head .csd-info{display:none}
.csd-head a.csd-wa{margin-left:auto;padding:9px 11px;min-height:39px}
.csd-head button.csd-toggle{display:flex}
.csd-head .csd-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 16px 26px #10182822;border-top:1px solid #eceef1;max-height:75vh;overflow:auto;padding:9px 16px 16px;z-index:100}
.csd-head .csd-menu.open{display:block}
.csd-head .csd-links{display:block!important}
.csd-head .csd-links>li{border-bottom:1px solid #eef0f2}
.csd-head .csd-links>li>a{display:flex!important;min-height:48px!important;padding:13px 42px 13px 5px!important;font-size:14px}
.csd-head .csd-links>li.current-menu-item>a:after{display:none}
.csd-head .csd-links .menu-item-has-children>a:before{display:none}
.csd-head .csd-links .sub-menu{display:none!important;position:static!important;box-shadow:none!important;border:0!important;border-radius:7px;background:#f8fafc;min-width:0;padding:4px 10px!important;margin:0 0 9px!important}
.csd-head .csd-links .sub-menu.csd-sub-open{display:block!important}
.csd-head button.csd-sub-toggle{display:flex;position:absolute;top:5px;right:0;align-items:center;justify-content:center;width:38px!important;height:38px!important;min-height:38px!important;border:0!important;background:transparent!important;padding:0!important;color:#374151!important;box-shadow:none!important}
.csd-head .csd-sub-toggle:after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.csd-head .csd-sub-toggle[aria-expanded=true]:after{transform:rotate(225deg)}
.csd-head button.csd-toggle[aria-expanded=true] .csd-bar:first-child{transform:translateY(7px) rotate(45deg)}
.csd-head button.csd-toggle[aria-expanded=true] .csd-bar:nth-child(2){opacity:0}
.csd-head button.csd-toggle[aria-expanded=true] .csd-bar:last-child{transform:translateY(-7px) rotate(-45deg)}
}
@media(min-width:1025px){.csd-head button.csd-sub-toggle{display:none!important}}
@media(max-width:480px){.csd-head{padding:0 12px;gap:9px}.csd-head .csd-logo{max-width:48%}.csd-head .csd-logo img{width:155px}.csd-head .csd-wa-label.csd-hide-mobile{display:none}.csd-head a.csd-wa{width:40px;height:40px;padding:0}.csd-head button.csd-toggle{width:40px!important;height:40px!important}}

/* v1.4.5: independent label/value styles and SVG icon color inheritance */
.csd-head .csd-location>span:last-child,.csd-head .csd-phone>span:last-child{display:flex;flex-direction:column}
.csd-head .csd-location-label,.csd-head .csd-phone-label{display:block;font-size:10px;font-weight:400;line-height:1.35}
.csd-head .csd-location-value,.csd-head .csd-phone-number{display:block;font-size:10px;font-weight:700;line-height:1.35}
.csd-head .csd-accent svg{fill:currentColor}
.csd-head .csd-wa svg{fill:currentColor}
.csd-head .csd-accent svg path,.csd-head .csd-wa svg path{fill:inherit}

/* 1.4.6 contact text separated: Elementor selectors match real markup */
.csd-head .csd-location-label,.csd-head .csd-phone-label{display:block}
.csd-head .csd-location-value,.csd-head .csd-phone-number{display:block}
.csd-head .csd-info .csd-accent svg,.csd-head .csd-wa svg{fill:currentColor}
.csd-head .csd-info .csd-accent svg path,.csd-head .csd-wa svg path{fill:inherit}

/* v1.4.7 square phone icon, independent sizing */
.csd-head .csd-phone .csd-phone-sticker{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;min-width:42px;background:#fff1f2;border-radius:8px;line-height:1;overflow:hidden}
.csd-head .csd-phone .csd-phone-sticker i{display:block;line-height:1}
.csd-head .csd-phone .csd-phone-sticker svg{display:block;flex:0 0 auto;max-width:100%;max-height:100%}
.csd-head .csd-location .csd-accent,.csd-head .csd-phone .csd-accent{line-height:1;align-items:center;justify-content:center}
.csd-head .csd-location .csd-accent i,.csd-head .csd-phone .csd-accent i{line-height:1}

/* v1.4.8: Fix fixed 18px caps that prevented Elementor icon size controls. */
.csd-head .csd-location .csd-accent,
.csd-head .csd-phone .csd-accent{flex:0 0 auto;min-width:0;min-height:0;overflow:visible}
.csd-head .csd-location .csd-accent i,
.csd-head .csd-phone .csd-accent i{font-size:var(--csd-icon-size,20px)!important;width:auto!important;height:auto!important;max-width:none!important;max-height:none!important;line-height:1!important}
.csd-head .csd-location .csd-accent svg,
.csd-head .csd-phone .csd-accent svg{width:var(--csd-icon-size,20px)!important;height:var(--csd-icon-size,20px)!important;min-width:var(--csd-icon-size,20px);min-height:var(--csd-icon-size,20px);max-width:none!important;max-height:none!important;flex:none!important}
.csd-head .csd-phone .csd-phone-sticker{display:inline-flex;align-items:center;justify-content:center;overflow:visible}

/* v1.4.9: Mobile side drawer */
.csd-head .csd-drawer-top,.csd-head .csd-drawer-backdrop{display:none}
@media(max-width:1024px){
.csd-head .csd-drawer-backdrop{display:block;position:fixed;inset:0;background:rgba(8,15,30,.55);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility .28s ease;z-index:99997}
.csd-head .csd-drawer-backdrop.csd-visible{opacity:1;visibility:visible;pointer-events:auto}
.csd-head .csd-menu{display:block!important;position:fixed!important;top:0!important;right:0!important;left:auto!important;bottom:0!important;width:min(var(--csd-drawer-width,320px),90vw)!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;padding:0 18px 28px!important;background:#fff;box-shadow:-10px 0 35px rgba(0,0,0,.16);border:0!important;z-index:99998!important;transform:translateX(105%);visibility:hidden;pointer-events:none;transition:transform .3s ease,visibility .3s ease;overscroll-behavior:contain}
.csd-head .csd-menu.open{transform:translateX(0);visibility:visible;pointer-events:auto}
.csd-head .csd-drawer-top{display:flex;align-items:center;justify-content:space-between;min-height:76px;border-bottom:1px solid #e9edf1;margin-bottom:8px}
.csd-head .csd-drawer-title{font-size:20px;font-weight:750;color:#151922;letter-spacing:-.3px}
.csd-head button.csd-drawer-close{display:flex;align-items:center;justify-content:center;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border:1px solid #e9edf1!important;border-radius:10px!important;background:#f8f9fb!important;color:#1f2937!important;font-size:29px!important;font-weight:400!important;line-height:1!important;box-shadow:none!important;cursor:pointer}
.csd-head .csd-links>li{border-bottom:1px solid #edf0f3}
.csd-head .csd-links>li>a{font-size:15px!important;font-weight:600;min-height:55px!important;padding:16px 42px 16px 8px!important;letter-spacing:.1px}
.csd-head .csd-links .sub-menu{background:#f7f8fa!important;margin-bottom:12px!important}
.csd-head button.csd-sub-toggle{top:8px;right:3px}
.csd-head button.csd-toggle[aria-expanded=true] .csd-bar:first-child{transform:none}
.csd-head button.csd-toggle[aria-expanded=true] .csd-bar:nth-child(2){opacity:1}
.csd-head button.csd-toggle[aria-expanded=true] .csd-bar:last-child{transform:none}
}
@media(prefers-reduced-motion:reduce){.csd-head .csd-menu,.csd-head .csd-drawer-backdrop{transition:none!important}}

/* v1.5.0: mobile drawer branding and contact cards */
.csd-head .csd-drawer-logo,.csd-head .csd-drawer-bottom{display:none}
@media(max-width:1024px){
.csd-head .csd-menu{display:flex!important;flex-direction:column}
.csd-head .csd-drawer-top{flex:0 0 auto;gap:12px}
.csd-head .csd-drawer-logo{display:flex;align-items:center;min-width:0;max-width:calc(100% - 54px)}
.csd-head .csd-drawer-logo img{display:block;width:185px;max-width:100%;height:auto;object-fit:contain}
.csd-head .csd-links{flex:0 0 auto}
.csd-head .csd-drawer-bottom{display:flex;flex-direction:column;gap:11px;margin-top:auto;padding:22px 0 5px;border-top:1px solid #eceff3}
.csd-head .csd-drawer-contact{display:flex;align-items:center;gap:14px;min-height:65px;padding:13px 14px;background:#f6f8fa;border:1px solid #e8edf2;border-radius:12px;text-decoration:none!important;color:#151922;min-width:0}
.csd-head .csd-drawer-contact>span:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.csd-head .csd-drawer-contact small{font-size:12px;line-height:1.3;color:#697386}
.csd-head .csd-drawer-contact strong{font-size:14px;line-height:1.35;color:#151922;overflow-wrap:anywhere}
.csd-head .csd-drawer-contact .csd-accent{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;min-width:40px;height:40px;background:#fff;border:1px solid #e8edf2;border-radius:10px;color:#ed2635}
.csd-head .csd-drawer-contact .csd-accent i{font-size:21px!important;line-height:1!important}
.csd-head .csd-drawer-contact .csd-accent svg{width:21px!important;height:21px!important;max-width:none!important;max-height:none!important}
}

.csd-head.csd-stuck{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100vw!important;max-width:100vw!important;z-index:99990!important;box-shadow:0 5px 18px rgba(0,0,0,.12)!important}
body.admin-bar .csd-head.csd-stuck{top:32px!important}
@media(max-width:782px){body.admin-bar .csd-head.csd-stuck{top:46px!important}}

/* v1.6.1: stable viewport positioning with the Elementor widget as portal */
.csd-sticky-portal{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;max-width:100%!important;margin:0!important;transform:none!important;z-index:99990!important}
.csd-sticky-portal .csd-head.csd-stuck{position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;transform:none!important}
body.admin-bar .csd-sticky-portal{top:32px!important}
@media(max-width:782px){body.admin-bar .csd-sticky-portal{top:46px!important}}
.csd-sticky-spacer{display:none;width:100%;pointer-events:none}

/* v1.6.2: lock widget to viewport, prevent horizontal drift */
body>.csd-sticky-portal{position:fixed!important;inset:0 0 auto 0!important;width:100%!important;max-width:100%!important;transform:none!important;margin:0!important;z-index:999990!important}
body>.csd-sticky-portal .csd-head.csd-stuck{position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;max-width:100%!important}
