/* migrated header dependency */
/* Pulse 1.5 FULL HEADER MATCH dependency — header only */
:root{--pulse-navy:#071427;--pulse-gold:#bfa15f;--pulse-paper:#fbfaf7}
.header{position:sticky;top:0;z-index:9990;height:92px;background:rgba(251,250,247,.86);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(18,39,69,.08);box-shadow:0 12px 40px rgba(18,39,69,.045)}
.header .nav{width:min(1380px,100%);height:100%;margin:auto;padding:0 28px;display:grid!important;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);align-items:center;gap:18px}
.header .brand{grid-column:1;justify-self:start;display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Orbitron,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:900;letter-spacing:.03em;line-height:1.02;color:var(--pulse-navy);min-width:0}
.header .brand svg{width:58px;height:58px;flex:0 0 auto;animation:pulseSharedLogoFloat 3.8s ease-in-out infinite}
.header .brand svg path:last-child{stroke-dasharray:160;stroke-dashoffset:160;animation:pulseSharedLogoLine 2.8s ease-in-out infinite}
.header .brand span{color:var(--pulse-navy);font-size:.98rem;text-transform:uppercase}
.header .brand small{display:block;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.62rem;color:var(--pulse-gold);letter-spacing:.14em;text-transform:uppercase;margin-top:3px}
.header .menu{display:flex;gap:19px;align-items:center;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.header .menu a{text-decoration:none;color:var(--pulse-navy);position:relative}
.header .menu a:hover:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:99px;background:var(--pulse-gold);animation:pulseSharedMenuLine .8s ease both}
.header .pulse-center-phone,.header .phone,.header a.phone,.header a[href^="tel"].phone{grid-column:2;justify-self:center;font-weight:950;font-size:clamp(1rem,1.45vw,1.34rem);letter-spacing:-.025em;text-decoration:none;color:var(--pulse-navy)!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;padding:0!important;line-height:1;white-space:nowrap;position:relative}
.header .pulse-center-phone::before,.header .phone::before,.header a[href^="tel"].phone::before,.header .pulse-center-phone::after,.header .phone::after,.header a[href^="tel"].phone::after{content:none!important;display:none!important}
.header .header-cta{grid-column:3;justify-self:end;display:flex;align-items:center;gap:12px;white-space:nowrap}
.header .btn,.header .btn.gold,.header-cta .btn,.header-cta a.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border-radius:999px;padding:12px 18px;font-weight:900;text-decoration:none;position:relative;overflow:hidden;border:1px solid rgba(191,161,95,.32)!important;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.86)) padding-box,linear-gradient(135deg,#bfa15f,#f1d889,#bfa15f) border-box!important;color:var(--pulse-navy)!important;box-shadow:0 12px 28px rgba(18,39,69,.08),0 0 20px rgba(191,161,95,.12)!important;animation:pulseSharedCallGlow 2.6s ease-in-out infinite}
.header .btn::before,.header-cta .btn::before,.header-cta a.btn::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 18%,rgba(191,161,95,.18) 48%,rgba(255,255,255,.44) 55%,transparent 78%);transform:translateX(-130%);animation:pulseSharedCallShimmer 3.8s ease-in-out infinite;pointer-events:none}
.header .btn::after,.header-cta .btn::after,.header-cta a.btn::after{content:"";position:absolute;left:50%;bottom:6px;width:70px;height:10px;transform:translateX(-50%) scaleX(.75);background:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 12 H32 L42 3 L56 21 L70 7 L82 12 H120' fill='none' stroke='%23071427' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round' opacity='.68'/%3E%3C/svg%3E") center/contain no-repeat;animation:pulseSharedCallLine 2s ease-in-out infinite;pointer-events:none}
@keyframes pulseSharedLogoFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.025)}}
@keyframes pulseSharedLogoLine{0%{stroke-dashoffset:160;opacity:.45}45%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-160;opacity:.48}}
@keyframes pulseSharedMenuLine{from{transform:scaleX(.25);opacity:.2}to{transform:scaleX(1);opacity:1}}
@keyframes pulseSharedCallGlow{0%,100%{box-shadow:0 12px 28px rgba(18,39,69,.08),0 0 16px rgba(191,161,95,.12)}50%{box-shadow:0 16px 34px rgba(18,39,69,.11),0 0 28px rgba(191,161,95,.24)}}
@keyframes pulseSharedCallShimmer{0%,50%{transform:translateX(-130%);opacity:0}65%{opacity:1}88%,100%{transform:translateX(130%);opacity:0}}
@keyframes pulseSharedCallLine{0%,100%{transform:translateX(-50%) scaleX(.72);opacity:.38}50%{transform:translateX(-50%) scaleX(1.08);opacity:.86}}
@media(max-width:1050px){.header .nav{grid-template-columns:minmax(190px,1fr) auto minmax(150px,1fr);gap:12px}.header .menu{display:none}}
@media(max-width:760px){.header{height:82px}.header .nav{padding:0 12px;grid-template-columns:minmax(118px,1fr) auto minmax(88px,1fr);gap:7px}.header .brand{gap:7px}.header .brand svg{width:46px;height:46px}.header .brand span{font-size:.74rem}.header .brand small{font-size:.44rem;letter-spacing:.08em}.header .pulse-center-phone,.header .phone,.header a.phone,.header a[href^="tel"].phone{display:block!important;font-size:clamp(.72rem,2.8vw,.95rem);line-height:1;text-align:center}.header .header-cta{gap:0}.header .btn,.header .btn.gold,.header-cta .btn,.header-cta a.btn{min-height:36px;padding:8px 9px;font-size:.68rem;max-width:96px;white-space:nowrap}.header .btn::after,.header-cta .btn::after,.header-cta a.btn::after{width:54px}}
@media(max-width:390px){.header .nav{grid-template-columns:minmax(106px,1fr) auto minmax(76px,1fr);gap:5px}.header .brand svg{width:42px;height:42px}.header .brand span{font-size:.66rem}.header .brand small{font-size:.39rem}.header .pulse-center-phone,.header .phone,.header a.phone,.header a[href^="tel"].phone{font-size:.66rem}.header .btn,.header .btn.gold,.header-cta .btn,.header-cta a.btn{min-height:34px;padding:7px 8px;font-size:.62rem}}


/* Pulse core shared layer */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{max-width:100%;overflow-x:hidden}
img,video,svg{max-width:100%;height:auto}
input,select,textarea,button{font:inherit}


/* Pulse launch QA patch: reliable mobile layout and callback toggle */
.pulse-anchor-target{position:relative;top:-110px;display:block;width:1px;height:1px;overflow:hidden}
.floating-callback-form.is-open .callback-mini-panel{opacity:1!important;transform:translateY(0) scale(1)!important;pointer-events:auto!important;visibility:visible!important}
a[href^="tel:"],a[href^="sms:"],button,[role="button"]{touch-action:manipulation}
@media(max-width:760px){
  .floating-callback-form.is-open .callback-mini-panel{opacity:1!important;transform:translateY(0) scale(1)!important;pointer-events:auto!important}
  .header .nav{max-width:100%;overflow:visible!important}
  .header .header-cta{min-width:0!important}
  .header .pulse-center-phone,.header .phone{min-width:0!important;max-width:42vw!important;overflow:visible!important}
}
