/* Reference-inspired composition: contact / centered identity / menu. */
html body.theme-vibrant .wrap>header.reference-header,html body.theme-vibrant .wrap>header.reference-header.is-scrolled{position:sticky!important;top:0!important;left:auto!important;right:auto!important;display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;width:calc(100% + 2 * clamp(24px,2vw,48px))!important;max-width:none!important;height:80px!important;min-height:0!important;margin:0 calc(-1 * clamp(24px,2vw,48px))!important;padding:0 clamp(24px,3vw,48px)!important;gap:20px!important;background:#141414f5!important;border:0!important;border-bottom:1px solid #ffffff14!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:blur(16px)!important;z-index:200!important;transform:none!important;overflow:visible!important;pointer-events:auto!important}
html body.theme-vibrant .wrap>header.reference-header .logo{grid-column:2;grid-row:1;justify-self:center!important;margin:0!important;padding:0!important;border:0!important;width:220px!important;max-width:none!important;overflow:visible!important;z-index:2;gap:0!important}
html body.theme-vibrant .wrap>header.reference-header .brand-mark{width:220px!important;height:40px!important;max-width:none!important;opacity:1!important;clip-path:none!important;transform:none!important;animation:none!important}
html body.theme-vibrant .wrap>header.reference-header .brand-mark img{width:100%!important;filter:brightness(0) saturate(100%) invert(86%) sepia(84%) saturate(849%) hue-rotate(14deg) brightness(105%) contrast(104%)!important}
html body.theme-vibrant .wrap>header.reference-header .brand-name{display:none!important}
html body.theme-vibrant .wrap>header.reference-header .header-phone{grid-column:1;grid-row:1;justify-self:start!important;display:flex!important;align-items:center!important;gap:10px!important;margin:0!important;padding:8px 0!important;min-height:44px!important;border:0!important;background:none!important;box-shadow:none!important;border-radius:0!important;font-size:16px!important;font-weight:500!important;letter-spacing:0!important;color:#fff!important;transform:none!important;white-space:nowrap}
html body.theme-vibrant .wrap>header.reference-header .header-phone>span:first-child{color:#d3f329!important;font-size:24px!important}
html body.theme-vibrant .wrap>header.reference-header .menu{grid-column:3;grid-row:1;justify-self:end!important;display:flex!important;align-items:center!important;gap:14px!important;min-height:48px!important;min-width:90px!important;margin:0!important;padding:8px 0!important;color:#fff!important;border:0!important;background:none!important;box-shadow:none!important;border-radius:0!important;font-size:15px!important;font-weight:400!important;text-transform:lowercase;z-index:2;cursor:pointer}
html body.theme-vibrant .wrap>header.reference-header .menu:after{content:''!important;display:block!important;width:28px!important;height:20px!important;border-top:3px solid currentColor!important;border-bottom:3px solid currentColor!important;background:linear-gradient(currentColor,currentColor) center/20px 3px no-repeat!important;transform:none!important;transition:transform .2s ease!important}
html body.theme-vibrant .wrap>header.reference-header .menu[aria-expanded="true"]:after{border:0!important;background:linear-gradient(45deg,transparent 46%,currentColor 47%,currentColor 54%,transparent 55%),linear-gradient(-45deg,transparent 46%,currentColor 47%,currentColor 54%,transparent 55%)!important;height:28px!important}
html body.theme-vibrant .wrap>header.reference-header nav{display:none!important}
html body.theme-vibrant .wrap>header.reference-header nav.open{position:fixed!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;inset:80px 0 auto!important;height:calc(100dvh - 80px)!important;width:100%!important;max-width:none!important;max-height:none!important;gap:8px!important;padding:30px 24px!important;margin:0!important;background:radial-gradient(ellipse at center,#28232d,#141217 75%)!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important;overflow-y:auto!important;animation:menu-arrival .25s ease both;backdrop-filter:none!important}
html body.theme-vibrant .wrap>header.reference-header nav.open a{display:flex!important;justify-content:center!important;align-items:center!important;flex:none!important;width:auto!important;max-width:100%!important;min-height:0!important;padding:5px 16px!important;margin:0!important;color:#fff!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;font-family:Montserrat,Arial,sans-serif!important;font-size:clamp(32px,4.3vw,64px)!important;font-weight:900!important;line-height:1.15!important;letter-spacing:-.045em!important;text-transform:uppercase!important;text-align:center!important}
html body.theme-vibrant .wrap>header.reference-header nav.open a:is(:hover,[aria-current="page"]){color:#d3f329!important;background:none!important}
html body.theme-vibrant .wrap>header.reference-header nav a:after,html body.theme-vibrant .wrap>header.reference-header .header-scroll-line{display:none!important}
html body.navigation-open{overflow:hidden!important}
@keyframes menu-arrival{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
@media(max-width:900px){html body.theme-vibrant .wrap>header.reference-header,html body.theme-vibrant .wrap>header.reference-header.is-scrolled{width:calc(100% + 40px)!important;margin:0 -20px!important;padding:0 20px!important;height:68px!important;gap:12px!important}html body.theme-vibrant .wrap>header.reference-header .logo,html body.theme-vibrant .wrap>header.reference-header .brand-mark{width:190px!important}html body.theme-vibrant .wrap>header.reference-header .phone-number{display:none!important}html body.theme-vibrant .wrap>header.reference-header .header-phone{min-width:44px!important}html body.theme-vibrant .wrap>header.reference-header .menu{font-size:13px!important;min-width:44px!important;gap:8px!important}html body.theme-vibrant .wrap>header.reference-header nav.open{top:68px!important;height:calc(100dvh - 68px)!important;gap:14px!important}html body.theme-vibrant .wrap>header.reference-header nav.open a{font-size:clamp(28px,7.5vw,48px)!important}}
@media(max-width:450px){html body.theme-vibrant .wrap>header.reference-header .logo,html body.theme-vibrant .wrap>header.reference-header .brand-mark{width:160px!important}html body.theme-vibrant .wrap>header.reference-header .menu{font-size:0!important}html body.theme-vibrant .wrap>header.reference-header .menu:after{width:25px!important}html body.theme-vibrant .wrap>header.reference-header nav.open{padding:26px 16px!important}html body.theme-vibrant .wrap>header.reference-header nav.open a{font-size:30px!important}}
@media(max-width:360px){html body.theme-vibrant .wrap>header.reference-header,html body.theme-vibrant .wrap>header.reference-header.is-scrolled{width:calc(100% + 32px)!important;margin:0 -16px!important;padding:0 16px!important}html body.theme-vibrant .wrap>header.reference-header .logo,html body.theme-vibrant .wrap>header.reference-header .brand-mark{width:148px!important}}
@media(prefers-reduced-motion:reduce){html body.theme-vibrant .wrap>header.reference-header nav.open{animation:none!important}}
html body.theme-vibrant .wrap>header.reference-header .header-phone .phone-number{color:#fff!important}
