/* Navigation only: tattoo-powered ornamental status bar. */
html{scroll-padding-top:96px}
.site-header.spirit-header{--scroll-progress:0;--progress-head-x:0px;display:block;height:80px;padding:0;position:fixed;inset:0 0 auto;z-index:50;background:linear-gradient(180deg,#040d16f7,#07121aed);border:0;box-shadow:0 8px 26px #0003;backdrop-filter:blur(14px)}
.site-header.spirit-header.scrolled{background:linear-gradient(180deg,#040d16fc,#07121af7);border:0}
.site-header.spirit-header:after{display:none}
.spirit-header .spirit-nav-inner{position:relative;display:grid;grid-template-columns:250px minmax(0,1fr) 190px;align-items:center;gap:34px;width:calc(100% - 72px);max-width:1660px;height:100%;margin-inline:auto;border-bottom:1px solid #80c5e02a}
.spirit-header .spirit-nav-inner:before,.spirit-header .spirit-nav-inner:after{content:'';position:absolute;top:17px;width:180px;height:49px;border-top:1px solid #729fbc40;border-radius:50%;pointer-events:none;opacity:.5}
.spirit-header .spirit-nav-inner:before{left:65px;transform:rotate(7deg)}
.spirit-header .spirit-nav-inner:after{right:10px;transform:rotate(-9deg);border-color:#a98bdd44}
.spirit-header .spirit-brand{display:flex;gap:13px;position:relative;min-width:0;min-height:0;margin:0;white-space:nowrap}
.spirit-header .tattoo-emblem{width:49px;height:64px;object-fit:contain;flex:none;filter:drop-shadow(0 0 5px #74d3fc22)}
.spirit-header .spirit-brand-copy{display:flex;flex-direction:column;gap:8px;font:400 19px/1 Georgia,'Times New Roman',serif;letter-spacing:.12em;color:#d2ebf5}
.spirit-header .spirit-brand-copy small{font:10px/1 var(--mono);letter-spacing:.25em;color:#8bcce5}
.spirit-header .spirit-brand:hover .tattoo-emblem{filter:drop-shadow(0 0 8px #92ddfa44)}
.spirit-header .spirit-nav-center{position:relative;align-self:stretch;min-width:0;display:flex;justify-content:center;align-items:flex-end;padding-bottom:10px}
.spirit-header .nav-energy-track{position:absolute;left:0;right:0;top:18px;height:2px;pointer-events:none}
.spirit-header .energy-rail,.spirit-header .energy-fill{position:absolute;inset:0;border-radius:50%;transform-origin:left center}
.spirit-header .energy-rail{background:#86b5d039;box-shadow:0 4px 0 -0.5px #6291b11a}
.spirit-header .energy-fill{background:linear-gradient(90deg,#68bee6,#8cecff 65%,#c1f7ff);box-shadow:0 0 5px #6ad6ff9a,0 0 12px #5aa0e955;transform:scaleX(var(--scroll-progress));will-change:transform}
.spirit-header .energy-head{position:absolute;left:0;top:-29px;width:84px;height:74px;z-index:4;transform:translateX(calc(var(--progress-head-x) - 76px));will-change:transform}
.spirit-header .energy-flame{position:absolute;width:65px;height:29px;right:-6px;top:-14.5px;overflow:visible;filter:drop-shadow(0 0 4px #83dbff99)}
.spirit-header .flame-trails{transform-origin:63px 16px;animation:spirit-flame-drift 3.7s ease-in-out infinite}
.spirit-header .flame-core{animation:spirit-flame-light 4.6s ease-in-out infinite}
@keyframes spirit-flame-drift{0%,100%{transform:scaleX(.89) scaleY(.84);opacity:.72}50%{transform:scaleX(1) scaleY(1.06);opacity:.95}}
@keyframes spirit-flame-light{0%,100%{opacity:.8}50%{opacity:1}}
.spirit-header .nav-end{position:absolute;width:88px;height:54px;top:-10px;fill:none;stroke:#7abfe17a;stroke-width:1;stroke-linecap:round;pointer-events:none}
.spirit-header .nav-end-left{right:calc(100% - 10px)}
.spirit-header .nav-end-right{left:calc(100% - 10px);transform:scaleX(-1)}
.spirit-header .nav-end .violet-line{stroke:#ac8cea70}
.spirit-header .nav-end .end-diamond{fill:#081320;stroke:#a7ddf29c}
.spirit-header .desktop-nav{display:flex;gap:10px;align-items:center;justify-content:center;width:auto;min-width:0;padding:0;background:none;border:0;clip-path:none}
.spirit-header .desktop-nav a,.spirit-header .header-contact{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:37px;line-height:1;margin:0;padding:10px 18px;border:0;border-radius:0;background:transparent;box-shadow:none;clip-path:none;overflow:visible;font:400 14px/1.2 Georgia,'Times New Roman',serif;letter-spacing:.12em;color:#a9c8dd;white-space:nowrap;transition:color .25s,text-shadow .25s}
.spirit-header .desktop-nav a:before,.spirit-header .desktop-nav a:after,.spirit-header .header-contact:after{display:none}
.spirit-header .nav-separator{color:#608ba375;font:13px/1 Georgia,serif;pointer-events:none}
.spirit-header .nav-outline{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#91d7f5;stroke-width:.85;opacity:0;pointer-events:none;transition:opacity .28s,filter .28s}
.spirit-header .nav-outline path{vector-effect:non-scaling-stroke}
.spirit-header .outline-accent{stroke:#99dffa;stroke-width:.7}
.spirit-header .nav-active-diamond{position:absolute;left:50%;bottom:-3px;color:#95e8ff;font:9px/1 Georgia,serif;opacity:0;transform:translateX(-50%);transition:opacity .25s}
.spirit-header .nav-link-label{position:relative}
.spirit-header .nav-link-label:after{content:'';height:1px;position:absolute;left:0;right:0;bottom:-7px;background:linear-gradient(90deg,transparent,#a3edff,transparent);transform:scaleX(0);transition:transform .28s}
.spirit-header .desktop-nav a:hover,.spirit-header .desktop-nav a.active{color:#ddf6ff;background:none;border:0;box-shadow:none;text-shadow:0 0 10px #a6dfff55}
.spirit-header .desktop-nav a:hover .nav-link-label:after{transform:scaleX(1)}
.spirit-header .desktop-nav a:hover .nav-active-diamond,.spirit-header .desktop-nav a.active .nav-active-diamond{opacity:1}
.spirit-header .desktop-nav a.active .nav-outline{opacity:.85;filter:drop-shadow(0 0 3px #57c8fa66) drop-shadow(0 0 5px #9275cd35)}
.spirit-header .header-contact{padding:13px 25px;min-height:43px;justify-self:end;min-width:183px;color:#d2edf9}
.spirit-header .header-contact .nav-outline{opacity:.75;filter:drop-shadow(0 0 3px #68c7ff33)}
.spirit-header .header-contact span{margin-left:0}
.spirit-header .contact-label{display:flex;align-items:center;gap:16px}
.spirit-header .header-contact .contact-label>span{font:20px/1 var(--body);color:#aeeeff}
.spirit-header .header-contact .contact-wisp{right:-34px;top:-8px;transform:rotate(170deg);opacity:.85;width:70px;height:54px;stroke:#9385df9c}
.spirit-header .header-contact .contact-wisp .violet-line{stroke:#65b5e4a8}
.spirit-header .header-contact:hover,.spirit-header .header-contact.active{background:none;box-shadow:none;color:#ecfbff;text-shadow:0 0 10px #8dd8ff88}
.spirit-header .header-contact:hover .nav-outline{opacity:1;filter:drop-shadow(0 0 5px #6ed7fc7a)}
.spirit-header .header-contact:hover .outline-accent{stroke-dasharray:9 22;animation:contact-energy 1.6s linear infinite}
@keyframes contact-energy{to{stroke-dashoffset:-62}}
.spirit-header a:focus-visible,.spirit-header button:focus-visible{outline:1px solid #b3eafa;outline-offset:4px;border-radius:4px}
.spirit-header .menu-button{display:none}
.spirit-header .mobile-nav{top:80px;background:#07121afc;border-bottom:1px solid #94d1ef50;box-shadow:0 15px 30px #0006;max-height:calc(100svh - 80px);overflow-y:auto}
.spirit-header .mobile-nav a{font:400 17px/1.4 Georgia,'Times New Roman',serif;letter-spacing:.11em;color:#abcce2;padding:14px 18px;margin-block:5px;border-left:1px solid #6d99b130;transition:color .25s,border-color .25s}
.spirit-header .mobile-nav a.active,.spirit-header .mobile-nav a:hover{background:linear-gradient(90deg,#69c9e915,transparent);border-left-color:#a4e4fc;color:#e1f7ff;text-shadow:0 0 10px #82caef44}
@media(max-width:1500px) and (min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:218px minmax(0,1fr) 170px;gap:22px;width:calc(100% - 64px)}
 .spirit-header .desktop-nav{gap:7px}.spirit-header .desktop-nav a{padding-inline:14px;font-size:13px;letter-spacing:.1em}
 .spirit-header .header-contact{min-width:164px;font-size:13px;padding-inline:19px}
 .spirit-header .spirit-brand-copy{font-size:17px}.spirit-header .nav-end{width:66px}
}
@media(max-width:1150px) and (min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:190px minmax(0,1fr) 156px;gap:16px;width:calc(100% - 48px)}
 .spirit-header .desktop-nav{gap:4px}.spirit-header .desktop-nav a{padding-inline:10px;font-size:12px}
 .spirit-header .header-contact{min-width:150px;font-size:12px}.spirit-header .tattoo-emblem{width:39px;height:58px}.spirit-header .spirit-brand{gap:9px}
}
@media(max-width:1000px){
 html{scroll-padding-top:86px}
 .site-header.spirit-header{height:72px}
 .spirit-header .spirit-nav-inner{display:flex;justify-content:space-between;width:calc(100% - 36px);max-width:none;gap:16px;border:0}
 .spirit-header .spirit-nav-inner:before,.spirit-header .spirit-nav-inner:after{display:none}
 .spirit-header .spirit-brand{gap:10px}.spirit-header .tattoo-emblem{width:39px;height:58px}.spirit-header .spirit-brand-copy{font-size:16px;gap:7px}.spirit-header .spirit-brand-copy small{font-size:8px;letter-spacing:.2em}
 .spirit-header .desktop-nav,.spirit-header .header-contact{display:none}
 .spirit-header .spirit-nav-center{position:absolute;inset:0;pointer-events:none;display:block;padding:0}
 .spirit-header .nav-energy-track{top:auto;bottom:0;left:0;right:0;height:1px}
 .spirit-header .nav-end{display:none}.spirit-header .energy-flame{width:44px;height:22px;top:-11px;right:-4px}
 .spirit-header .menu-button{display:flex;position:relative;flex-direction:column;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:10px;z-index:1}
 .spirit-header .menu-button>span{width:24px;height:1px;background:#acd9ec;box-shadow:0 0 5px #70aef130;transition:transform .25s}
 .spirit-header .menu-button[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}
 .spirit-header .menu-button[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .spirit-header .mobile-nav{top:72px;max-height:calc(100svh - 72px);padding:18px 6% 25px}
}
@media(prefers-reduced-motion:reduce){
 .spirit-header .flame-trails,.spirit-header .flame-core,.spirit-header .outline-accent{animation:none!important}
 .spirit-header a,.spirit-header svg,.spirit-header .nav-link-label:after,.spirit-header .nav-active-diamond{transition:none!important}
}

/* Extracted tattoo-flame frames: scroll controls position, frames provide a living idle shape. */
.spirit-header .energy-flame-frame{position:absolute;left:0;top:0;width:84px;height:auto;display:block;pointer-events:none;filter:drop-shadow(0 0 5px #6ad6ffcc) drop-shadow(0 0 11px #8b66e977);transform-origin:84% 55%;animation:spirit-flame-breathe 2.8s ease-in-out infinite}
@keyframes spirit-flame-breathe{0%,100%{transform:scale(0.96,0.97);filter:drop-shadow(0 0 4px #6ad6ffb0) drop-shadow(0 0 8px #8b66e944)}50%{transform:scale(1.04,1.02);filter:drop-shadow(0 0 6px #8be7ffdd) drop-shadow(0 0 13px #8b66e977)}}
@media(max-width:1000px){.spirit-header .energy-head{top:-25px;width:52px;height:46px;transform:translateX(calc(var(--progress-head-x) - 46px))}.spirit-header .energy-flame-frame{width:52px}}
@media(prefers-reduced-motion:reduce){.spirit-header .energy-flame-frame{animation:none!important}}

/* Handmade flame: the core sits on the rail while the blue and violet wisps animate behind it. */
.spirit-header .energy-head{top:-20px;width:88px;height:40px;transform:translateX(calc(var(--progress-head-x) - 80px))}
.spirit-header .energy-head{opacity:0;transition:opacity .2s ease}
.spirit-header.is-scrolling .energy-head{opacity:1}
.spirit-header .energy-flame{position:absolute;left:0;top:0;width:88px;height:40px;display:block;overflow:visible;filter:drop-shadow(0 0 4px #62d8ffcc) drop-shadow(0 0 8px #9b6dff55)}
.spirit-header .flame-tail{transform-origin:79px 20px;animation:spirit-tail-flow 2.4s ease-in-out infinite}
.spirit-header .flame-wisp{transform-origin:74px 20px;animation:spirit-wisp-flow 1.65s ease-in-out infinite alternate}
.spirit-header .flame-aura{transform-origin:79px 20px;animation:spirit-aura-breathe 1.35s ease-in-out infinite}
.spirit-header .flame-core{transform-origin:79px 20px;animation:spirit-core-breathe 1.05s ease-in-out infinite}
.spirit-header .flame-spark{animation:spirit-spark-drift 2.1s ease-in-out infinite}
.spirit-header .spark-two{animation-delay:-1s}
@keyframes spirit-tail-flow{0%,100%{transform:scaleX(.9) skewY(1deg);opacity:.68}50%{transform:scaleX(1.08) skewY(-2deg);opacity:1}}
@keyframes spirit-wisp-flow{0%{transform:translateX(1px) scaleY(.82);opacity:.45}100%{transform:translateX(-3px) scaleY(1.12);opacity:.95}}
@keyframes spirit-aura-breathe{0%,100%{transform:scale(.78);opacity:.62}50%{transform:scale(1.22);opacity:1}}
@keyframes spirit-core-breathe{0%,100%{transform:scale(.9);opacity:.88}50%{transform:scale(1.12);opacity:1}}
@keyframes spirit-spark-drift{0%,100%{transform:translate(0,0);opacity:.1}35%{transform:translate(-4px,-3px);opacity:.95}75%{transform:translate(-9px,2px);opacity:0}}
@media(max-width:1000px){.spirit-header .energy-head{top:-15px;width:66px;height:30px;transform:translateX(calc(var(--progress-head-x) - 59px))}.spirit-header .energy-flame{width:66px;height:30px}}
@media(prefers-reduced-motion:reduce){.spirit-header .flame-tail,.spirit-header .flame-wisp,.spirit-header .flame-aura,.spirit-header .flame-core,.spirit-header .flame-spark{animation:none!important}}
/* Keep the flame organic and filled; no stroke-line tracers. */
.spirit-header .flame-tail path:nth-child(2){display:none}
/* At either end of the rail, reduce the head to a single breathing white point. */
.spirit-header .energy-head:after{content:'';position:absolute;left:80px;top:20px;width:7px;height:7px;border-radius:50%;background:#f8ffff;box-shadow:0 0 5px #fff,0 0 13px #7edfff;opacity:0;transform:translate(-50%,-50%);animation:spirit-endpoint-pulse 1.05s ease-in-out infinite}
.spirit-header.is-endpoint .energy-head{opacity:1}
.spirit-header.is-endpoint .energy-flame{opacity:0}
.spirit-header.is-endpoint .energy-head:after{opacity:1}
.spirit-header.is-scrolling:not(.is-endpoint) .energy-flame{opacity:1}
.spirit-header .energy-flame{transform-origin:79px 20px}
.spirit-header.scroll-reverse .energy-flame{transform:scaleX(-1)}
@media(max-width:1000px){.spirit-header .energy-head:after{left:59px;top:15px;width:6px;height:6px}.spirit-header .energy-flame{transform-origin:59px 15px}}
@keyframes spirit-endpoint-pulse{0%,100%{transform:translate(-50%,-50%) scale(.72);opacity:.62}50%{transform:translate(-50%,-50%) scale(1.18);opacity:1}}

/* Extracted ornament system.  Each image is a transparent crop from the
   supplied sheet; the scroll rail and its progress head stay live HTML. */
.spirit-header .spirit-nav-inner:before,
.spirit-header .spirit-nav-inner:after,
.spirit-header .nav-energy-track .nav-end{display:none}
.spirit-header .nav-ornament{position:absolute;display:block;pointer-events:none;user-select:none;z-index:0;object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 0 4px #74d8ff32) drop-shadow(0 0 7px #9a72d927);animation:nav-ornament-breathe 8s ease-in-out infinite}
.spirit-header .nav-ornament-left{left:194px;top:1px;width:205px;height:78px;object-position:left center;opacity:.58}
.spirit-header .nav-ornament-right{right:184px;top:1px;width:190px;height:78px;object-position:left center;opacity:.38;transform:scaleX(-1);animation-delay:-3.5s}
@keyframes nav-ornament-breathe{0%,100%{opacity:.42;filter:drop-shadow(0 0 3px #74d8ff22) drop-shadow(0 0 6px #9a72d91c)}50%{opacity:.68;filter:drop-shadow(0 0 5px #74d8ff42) drop-shadow(0 0 10px #9a72d938)}}
.spirit-header .nav-track-ornament{position:absolute;inset:-26px 0 auto;width:100%;height:54px;display:block;object-fit:fill;pointer-events:none;z-index:0;opacity:.24;mix-blend-mode:screen;filter:drop-shadow(0 0 4px #67cfff40)}
.spirit-header .nav-energy-track .energy-rail,.spirit-header .nav-energy-track .energy-fill{z-index:1}
.spirit-header .nav-energy-track .energy-head{z-index:3}
.spirit-header .nav-separator{display:grid;place-items:center;flex:0 0 18px;width:18px;height:28px;color:transparent}
.spirit-header .nav-separator img{display:block;width:12px;height:18px;object-fit:contain;opacity:.52;filter:drop-shadow(0 0 3px #8bdcff42);transition:opacity .25s,filter .25s,transform .25s}
.spirit-header .nav-separator:hover img{opacity:.95;filter:drop-shadow(0 0 5px #9feaff9a);transform:scale(1.12)}
.spirit-header .header-contact{width:clamp(182px,14vw,226px);min-width:0;min-height:49px;padding:12px 26px;background:transparent url('../assets/nav-cta-frame.png?v=5b14773f28292d04') center/100% 100% no-repeat;filter:drop-shadow(0 0 4px #6bcfff22);transition:color .25s,text-shadow .25s,filter .3s}
.spirit-header .header-contact .contact-wisp,
.spirit-header .header-contact>.nav-outline{display:none}
.spirit-header .header-contact .contact-label{position:relative;z-index:1;gap:13px}
.spirit-header .header-contact .contact-label>span{font-size:18px}
.spirit-header .header-contact:hover,.spirit-header .header-contact.active{background-color:transparent;filter:drop-shadow(0 0 7px #6ed7fc62) drop-shadow(0 0 11px #9979df2c);text-shadow:0 0 10px #9be6ff88}
@media(max-width:1500px) and (min-width:1001px){
 .spirit-header .nav-ornament-left{left:174px;width:170px;height:72px;opacity:.45}
 .spirit-header .nav-ornament-right{right:163px;width:150px;height:72px}
 .spirit-header .header-contact{width:174px;padding-inline:22px}
}
@media(max-width:1150px) and (min-width:1001px){
 .spirit-header .nav-ornament-left{left:154px;width:135px;height:66px;opacity:.34}
 .spirit-header .nav-ornament-right{display:none}
 .spirit-header .header-contact{width:154px;padding-inline:17px}
}
@media(max-width:1000px){
 .spirit-header .nav-ornament-left,.spirit-header .nav-ornament-right,.spirit-header .nav-track-ornament{display:none}
 .spirit-header .nav-separator img{width:10px;height:15px}
}
@media(prefers-reduced-motion:reduce){
 .spirit-header .nav-ornament{animation:none!important}
 .spirit-header .nav-separator img,.spirit-header .header-contact{transition:none!important}
}

/* Latest supplied cosmic ornaments: the CTA artwork carries its own lettering,
   while the live anchor text remains in the DOM for accessibility. */
.spirit-header .nav-separator img{content:url('../assets/nav-divider-cosmic.png?v=5b14773f28292d04');width:24px;height:14px;opacity:.62;filter:drop-shadow(0 0 4px #74cfff66)}
.spirit-header .nav-separator{flex-basis:24px;width:24px}
.spirit-header .header-contact{width:clamp(198px,15vw,238px);min-height:58px;padding:12px 28px;background-image:url('../assets/nav-cta-cosmic-frame.png?v=5b14773f28292d04');background-size:100% 100%;background-position:center;transform:translateX(12px);filter:drop-shadow(0 0 5px #6bcfff30) drop-shadow(0 0 8px #9979df22)}
.spirit-header .header-contact .contact-label{color:transparent;text-shadow:none}
.spirit-header .header-contact .contact-label>span{color:transparent}
.spirit-header .nav-ornament-right{display:none}
@media(max-width:1500px) and (min-width:1001px){.spirit-header .header-contact{width:204px;min-height:54px;transform:translateX(10px);padding-inline:24px}}
@media(max-width:1150px) and (min-width:1001px){.spirit-header .header-contact{width:182px;min-height:50px;transform:translateX(7px);padding-inline:18px}}

/* Final navbar proportion pass: give the ornament artwork breathing room and
   keep the CTA artwork present in every interaction state. */
@media(min-width:1001px){
 html{scroll-padding-top:110px}
 .site-header.spirit-header{height:94px}
 .spirit-header .spirit-nav-inner{grid-template-columns:250px minmax(0,1fr) clamp(230px,16vw,276px)}
 .spirit-header .nav-ornament-left{top:7px;height:78px}
 .spirit-header .header-contact{width:clamp(230px,16vw,276px);min-height:70px;padding:14px 32px;transform:translateX(14px);background-image:url('../assets/nav-cta-cosmic-frame.png?v=5b14773f28292d04');background-size:100% 100%;background-repeat:no-repeat}
 .spirit-header .header-contact:hover,
 .spirit-header .header-contact.active{background-color:transparent;background-image:url('../assets/nav-cta-cosmic-frame.png?v=5b14773f28292d04')!important;background-size:100% 100%;background-repeat:no-repeat}
}
@media(max-width:1500px) and (min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:218px minmax(0,1fr) 230px}
 .spirit-header .header-contact{width:230px;min-height:66px;transform:translateX(11px);padding-inline:25px}
}
@media(max-width:1150px) and (min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:190px minmax(0,1fr) 202px}
 .spirit-header .header-contact{width:202px;min-height:60px;transform:translateX(8px);padding-inline:18px}
}
@media(max-width:1000px){html{scroll-padding-top:86px}}

/* Restore the right-hand flourish and give the CTA a stronger visual weight. */
@media(min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:250px minmax(0,1fr) clamp(266px,18vw,320px)}
 .spirit-header .nav-ornament-left{top:50%;transform:translateY(-50%)}
 .spirit-header .nav-ornament-right{display:block;right:280px;top:50%;width:180px;height:78px;opacity:.38;transform:translateY(-50%) scaleX(-1);z-index:0}
 .spirit-header .header-contact{position:relative;z-index:2;width:clamp(266px,18vw,320px);min-height:78px;padding-inline:34px;transform:translateX(14px)}
 .spirit-header .header-contact:hover,
 .spirit-header .header-contact.active{background-image:url('../assets/nav-cta-cosmic-frame.png?v=5b14773f28292d04')!important;background-size:100% 100%}
}
@media(max-width:1500px) and (min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:218px minmax(0,1fr) 250px}
 .spirit-header .nav-ornament-right{right:240px;top:50%;width:155px;height:72px;transform:translateY(-50%) scaleX(-1)}
 .spirit-header .header-contact{width:250px;min-height:70px;transform:translateX(10px);padding-inline:26px}
}
@media(max-width:1150px) and (min-width:1001px){
 .spirit-header .spirit-nav-inner{grid-template-columns:190px minmax(0,1fr) 214px}
 .spirit-header .nav-ornament-right{display:none}
 .spirit-header .header-contact{width:214px;min-height:62px;transform:translateX(7px);padding-inline:18px}
}

/* Keep the right flourish tied to the CTA column so zoom/reflow does not
   change their relationship.  The CTA itself is intentionally simple. */
@media(min-width:1151px){
 .spirit-header .spirit-nav-inner{grid-template-columns:270px minmax(0,1fr) clamp(230px,16vw,260px)}
 .spirit-header .tattoo-emblem{width:64px;height:78px}
 .spirit-header .spirit-brand-copy{font-size:20px}
 .spirit-header .header-contact{width:clamp(200px,14vw,240px);min-height:50px;padding:9px 20px;transform:translateX(14px);background:#0b1a29;border:1px solid #80cfe887;border-radius:4px;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);box-shadow:inset 0 0 16px #63d9ff10,0 0 10px #63d9ff18}
 .spirit-header .header-contact:hover,.spirit-header .header-contact.active{background:#122a3d;border-color:#a3eaff;background-image:none!important;box-shadow:inset 0 0 18px #63d9ff20,0 0 14px #63d9ff3b}
 .spirit-header .header-contact .contact-label{color:#d2edf9;text-shadow:none}
 .spirit-header .header-contact .contact-label>span{color:#aeeeff}
 .spirit-header .header-contact .contact-label{font-size:20px}
}
@media(max-width:1150px) and (min-width:1001px){
 .spirit-header .header-contact{min-height:50px;background:#0b1a29;background-image:none!important;border:1px solid #80cfe887;clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);transform:translateX(8px)}
 .spirit-header .header-contact .contact-label{color:#d2edf9}
 .spirit-header .header-contact .contact-label>span{color:#aeeeff}
}

/* Align the pair of upper flower strokes with each rail corner. The source
   artwork's attachment is at 43% of its width, independent of viewport zoom. */
@media(min-width:1151px){
 .spirit-header .nav-energy-track{--flourish-size:190px;left:32px;right:50px}
 .spirit-header .nav-energy-track .nav-ornament{display:block;width:var(--flourish-size);height:auto;max-width:none;top:calc(var(--flourish-size) * -.055);bottom:auto;object-fit:contain;object-position:center}
 .spirit-header .nav-energy-track .nav-ornament-left{left:0;right:auto;transform:translateX(-43%)}
 .spirit-header .nav-energy-track .nav-ornament-right{right:0;left:auto;transform:translateX(43%) scaleX(-1)}
}
@media(min-width:1151px) and (max-width:1500px){
 .spirit-header .nav-energy-track{--flourish-size:150px;left:16px;right:28px}
}
