/* Seasonal skin. Everything is scoped to html.hw, which halloween.js sets only before Nov 1, 2026. */
html.hw{--hw-orange:#F47820;--hw-purple:#8A5CF0;--hw-plum:#2A1236}
html.hw nav{border-bottom:1px solid rgba(138,92,240,.28)!important}
html.hw .nav-cta,html.hw .btn-primary{background:linear-gradient(135deg,#F47820,#E0521A)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 4px 18px rgba(244,120,32,.28)}
html.hw .nav-cta:hover,html.hw .btn-primary:hover{box-shadow:0 6px 24px rgba(244,120,32,.45)}
html.hw .btn-ghost{border-color:rgba(138,92,240,.55)!important}
html.hw .btn-ghost:hover{border-color:#F47820!important;color:#F47820!important}
html.hw .hero-badge{border-color:rgba(244,120,32,.5)!important;background:rgba(244,120,32,.10)!important;color:#FFB070!important}
html.hw .hero-badge::before{background:#F47820!important;box-shadow:0 0 8px #F47820!important}
html.hw .hero-eyebrow{border-color:rgba(244,120,32,.45)!important;background:rgba(244,120,32,.10)!important;color:#FFB070!important}
html.hw .stat-val,html.hw .story-stat-val{color:#F47820!important}
html.hw .svc-card:hover,html.hw .blog-card:hover{border-color:rgba(138,92,240,.65)!important;box-shadow:0 10px 30px rgba(138,92,240,.22)!important}
html.hw .svc-link,html.hw .nav-links a.active,html.hw .nav-links a:hover{color:#F47820!important}
html.hw .light-body .svc-link,html.hw .light-body .blog-card a{color:#C4570F!important}
html.hw .section-title::after{background:linear-gradient(90deg,#F47820,#8A5CF0)!important}
html.hw footer{border-top:1px solid transparent!important;border-image:linear-gradient(90deg,#F47820,#8A5CF0,#F47820) 1;position:relative}
html.hw #hero,html.hw .hero,html.hw .hero-section{background-image:radial-gradient(ellipse at 85% 0%,rgba(138,92,240,.22),transparent 55%),radial-gradient(ellipse at 10% 100%,rgba(244,120,32,.10),transparent 50%)}
/* decor */
html.hw .hw-web{position:absolute;top:64px;width:150px;height:150px;color:#C9B8FF;opacity:.38;pointer-events:none;z-index:4}
html.hw .hw-web svg{width:100%;height:100%;display:block}
html.hw .hw-web-l{left:0}
html.hw .hw-web-r{right:0;transform:scaleX(-1)}
html.hw .hw-moon{position:absolute;right:7%;top:14%;width:96px;height:96px;border-radius:50%;background:radial-gradient(circle at 38% 38%,rgba(255,196,130,.35),rgba(244,120,32,.10) 60%,transparent 72%);box-shadow:0 0 60px rgba(244,120,32,.18);pointer-events:none;z-index:0}
html.hw .hw-bat{position:absolute;width:24px;color:#7A55D6;filter:drop-shadow(0 0 5px rgba(138,92,240,.8));opacity:.7;pointer-events:none;z-index:1;animation:hwfly 26s linear infinite}
html.hw .hw-bat svg{display:block;width:100%;animation:hwflap .5s ease-in-out infinite alternate;transform-origin:center}
html.hw .hw-bat1{top:22%;left:-4%}
html.hw .hw-bat2{top:38%;left:-4%;width:16px;animation-duration:34s;animation-delay:-12s}
html.hw .hw-bat3{top:14%;left:-4%;width:13px;animation-duration:42s;animation-delay:-24s}
@keyframes hwfly{0%{transform:translate(0,0)}25%{transform:translate(28vw,-18px)}50%{transform:translate(56vw,10px)}75%{transform:translate(84vw,-14px)}100%{transform:translate(108vw,4px)}}
@keyframes hwflap{from{transform:scaleY(1)}to{transform:scaleY(.55)}}
html.hw .hw-spider{position:absolute;top:64px;right:22%;width:20px;color:#1a1030;pointer-events:none;z-index:2;animation:hwdrop 7s ease-in-out infinite;transform-origin:top center}
html.hw .hw-spider i{display:block;width:1px;height:70px;margin:0 auto;background:rgba(185,164,255,.45)}
html.hw .hw-spider svg{display:block;width:20px;color:#B9A4FF}
@keyframes hwdrop{0%,100%{transform:translateY(0)}50%{transform:translateY(34px)}}
html.hw .hw-pumpkin{position:absolute;right:18px;top:-17px;width:34px;filter:drop-shadow(0 0 8px rgba(244,120,32,.55));pointer-events:none;animation:hwglow 3.2s ease-in-out infinite}
html.hw .hw-pumpkin svg{display:block;width:100%}
@keyframes hwglow{0%,100%{filter:drop-shadow(0 0 6px rgba(244,120,32,.4))}50%{filter:drop-shadow(0 0 13px rgba(244,120,32,.8))}}
@media(max-width:700px){html.hw .hw-web{width:90px;height:90px;top:56px}html.hw .hw-moon{width:60px;height:60px;right:6%}html.hw .hw-bat2,html.hw .hw-bat3{display:none}html.hw .hw-spider{right:3%}html.hw .hw-pumpkin-h{width:40px}html.hw .hw-spider i{height:44px}}
@media(prefers-reduced-motion:reduce){html.hw .hw-bat,html.hw .hw-bat svg,html.hw .hw-spider,html.hw .hw-pumpkin{animation:none}html.hw .hw-bat{left:20%}}
html.hw .hw-pumpkin-h{position:absolute;bottom:9%;left:6%;width:54px;filter:drop-shadow(0 0 12px rgba(244,120,32,.6));pointer-events:none;z-index:1;animation:hwglow 3.2s ease-in-out infinite}
html.hw .hw-pumpkin-h+.hw-pumpkin-h{left:calc(6% + 46px);bottom:8%;width:36px;animation-delay:-1.4s}
html.hw .hw-pumpkin-h svg{display:block;width:100%}
html.hw a[style*="#0077b6"]{background:linear-gradient(135deg,#F47820,#E0521A)!important}
html.hw .hero-section{overflow:hidden}
html.hw .hero-section .hw-pumpkin-h{bottom:10%}
html.hw .hero-section .hw-spider{right:16%}
html.hw .hero-section .hw-moon{display:none}

html.hw .hw-h1{position:relative;width:fit-content;max-width:100%;margin-left:auto!important;margin-right:auto!important}
html.hw .hw-drape{position:absolute;left:0;right:0;bottom:-44px;height:62px;color:#C9B8FF;opacity:.5;pointer-events:none;z-index:2}
html.hw .hw-drape svg{display:block;width:100%;height:100%}
html.hw .hw-hweb{position:absolute;top:-22px;width:74px;height:74px;color:#C9B8FF;opacity:.55;pointer-events:none;z-index:2}
html.hw .hw-hweb svg{display:block;width:100%;height:100%}
html.hw .hw-hweb-l{left:-22px}
html.hw .hw-hweb-r{right:-22px;transform:scaleX(-1)}
html.hw .hw-witch{position:absolute;right:calc(7% - 14px);top:calc(14% + 10px);width:118px;color:#150B26;filter:drop-shadow(0 0 5px rgba(138,92,240,.6));pointer-events:none;z-index:1;animation:hwwitch 9s ease-in-out infinite}
html.hw .hw-witch svg{display:block;width:100%}
html.hw .hero-section .hw-witch{top:6%;right:8%;width:96px}
@keyframes hwwitch{0%,100%{transform:translate(0,0) rotate(-6deg)}50%{transform:translate(-14px,-8px) rotate(-3deg)}}
@media(max-width:700px){html.hw .hw-witch{width:64px;right:2%;top:3%}html.hw .hw-hweb{width:44px;height:44px;top:-12px}html.hw .hw-hweb-l{left:-8px}html.hw .hw-hweb-r{right:-8px}html.hw .hw-drape{bottom:-30px;height:44px}html.hw .hero-section .hw-witch{width:60px;top:4%}}
@media(prefers-reduced-motion:reduce){html.hw .hw-witch{animation:none}}
html.hw .hero-section .hw-h1{margin-bottom:34px!important}
html.hw .hero-section .hw-drape{bottom:-30px}@media(max-width:700px){html.hw .hero-section .hw-drape{bottom:-20px;height:34px}}
html.hw div.hero .hw-witch,html.hw div.hero .hw-pumpkin-h,html.hw div.hero .hw-bat,html.hw div.hero .hw-moon,html.hw div.hero .hw-spider,html.hw div.hero .hw-drape,html.hw div.hero .hw-hweb{display:none}
/* Oct 14 extension: carry the decor onto inner pages (#page-hero) and light content pages (.light-hero) */
html.hw #page-hero .hw-h1{margin-bottom:34px!important}
html.hw .light-hero{overflow:hidden}
html.hw .light-hero .hw-h1{width:auto;margin-left:0!important;margin-right:0!important}
html.hw .light-hero .hw-drape,html.hw .light-hero .hw-hweb{display:none}
html.hw .light-hero .hw-moon{top:100px;right:6%}
html.hw .light-hero .hw-witch{top:170px;right:6%;width:96px}
html.hw .light-hero .hw-bat1{top:120px}
html.hw .light-hero .hw-bat2{top:190px}
html.hw .light-hero .hw-bat3{top:90px}
html.hw .light-hero .hw-pumpkin-h{top:150px;bottom:auto;left:4%}
html.hw .light-hero .hw-pumpkin-h+.hw-pumpkin-h{top:162px;left:calc(4% + 46px);bottom:auto}
@media(max-width:700px){html.hw .light-hero .hw-witch{top:120px}html.hw .light-hero .hw-pumpkin-h{top:130px}}

/* === Oct 14 placement pass (Patrick-approved): no seasonal decor over text, badges, or buttons === */
html.hw .hw-bat{display:none}
html.hw .light-hero .hw-pumpkin-h{display:none}
html.hw .light-hero .hw-witch{top:118px}
html.hw .hw-web{top:86px}
html.hw .hw-spider{right:12%}
html.hw .hw-hweb-l{left:-86px}
html.hw .hw-hweb-r{right:-86px}
html.hw .hw-drape,html.hw .hero-section .hw-drape{bottom:-70px}
html.hw #hero .hw-h1,html.hw #page-hero .hw-h1,html.hw .hero-section .hw-h1{margin-bottom:80px!important}
@media(max-width:700px){
html.hw .hw-web,html.hw .hw-pumpkin-h,html.hw .hw-spider,html.hw .hw-hweb,html.hw .light-hero .hw-witch,html.hw .hero-section .hw-witch{display:none}
html.hw .hw-drape,html.hw .hero-section .hw-drape{height:44px;bottom:-52px}
html.hw #hero .hw-h1,html.hw #page-hero .hw-h1,html.hw .hero-section .hw-h1{margin-bottom:60px!important}
}
html.hw .hero-section .hw-witch{top:84px}
