:root{--bg-main: #0D5F39;--bg-deep: #0a4a2d;--bg-alt: #2d1b4e;--bg-alt-light: #3d2a5e;--primary-dark: #004225;--primary: #5DD39E;--primary-light: #5DD39E;--primary-mid: #2E8B57;--accent-brass: #D4AF37;--accent-brass-light: #E5C65C;--accent-brass-dark: #B8960C;--accent-purple: #6B5B95;--accent-purple-light: #8A7AB0;--text-light: #FFFFFF;--text-muted: #C8E6C9;--text-on-gold: #1a1a1a;--border-subtle: rgba(60, 179, 113, .3);--border-strong: #5DD39E;--shadow: rgba(0, 0, 0, .4);--header-height: 80px;--container-max: 1200px;--section-padding: 80px;--section-padding-mobile: 60px;--font-family: "Jost", system-ui, -apple-system, sans-serif;--font-size-base: 16px;--line-height-base: 1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-family);font-weight:700;line-height:1.2;color:var(--text-light)}h1{font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:900;margin-bottom:20px;text-shadow:2px 2px 4px var(--shadow)}h2{font-size:clamp(1.8rem,3.5vw,2.5rem);margin-bottom:16px}h3{font-size:clamp(1.2rem,2vw,1.5rem);margin-bottom:12px}a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;transition:color .2s}a:hover{color:var(--primary-light)}.text-primary{color:var(--primary)}.text-gold{color:var(--accent-brass)}.text-muted{color:var(--text-muted)}.text-center{text-align:center}.section-badge{display:inline-block;background:#3cb37133;border:2px solid var(--primary);color:var(--primary);padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:20px}.section-badge.brass{background:#d4af3733;border-color:var(--accent-brass);color:var(--accent-brass)}.testimonial-disclaimer,.figure-disclaimer,.resource-disclaimer,.tool-disclaimer,.intake-disclaimer,.privacy-notice{font-size:.85rem;color:var(--text-muted);font-style:italic;margin-top:12px}.practice-area-notice{background:#d4af3726;border:2px solid var(--accent-brass);border-radius:8px;padding:16px;margin-bottom:24px}.practice-area-notice p{margin:0;color:var(--text-light)}.btn-retro{display:inline-block;background:linear-gradient(180deg,var(--primary-light) 0%,var(--primary) 50%,var(--primary-mid) 100%);color:var(--primary-dark);font-family:var(--font-family);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;padding:12px 24px;border:3px solid var(--primary-dark);border-radius:8px;box-shadow:4px 4px 0 var(--primary-dark);text-decoration:none;transition:all .15s;cursor:pointer}.btn-retro:hover{transform:translateY(-2px);box-shadow:6px 6px 0 var(--primary-dark),0 0 20px #3cb37166;color:var(--primary-dark)}.btn-retro:active{transform:translateY(2px);box-shadow:2px 2px 0 var(--primary-dark)}.btn-retro.secondary{background:linear-gradient(180deg,var(--accent-purple-light) 0%,var(--accent-purple) 50%,var(--accent-purple) 100%);color:#fff}.btn-retro.gold,.btn-retro.brass{background:linear-gradient(180deg,var(--accent-brass-light) 0%,var(--accent-brass) 50%,var(--accent-brass-dark) 100%);color:var(--text-on-gold)}header{position:fixed;top:0;left:0;right:0;z-index:1000;background:linear-gradient(180deg,var(--primary-dark) 0%,rgba(0,66,37,.95) 100%);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px var(--shadow);border-bottom:3px solid var(--primary)}.header-logo{display:flex;align-items:center;gap:12px;text-decoration:none}.logo-monogram{height:48px;width:auto}.logo-text{display:flex;flex-direction:column}.logo-text-top{font-family:var(--font-family);font-size:.65rem;font-weight:600;color:var(--text-light);letter-spacing:.1em;text-transform:uppercase;line-height:1.2}.logo-text-name{font-family:var(--font-family);font-weight:700;font-size:1.1rem;color:var(--text-light);line-height:1.2}.header-phone{display:none;align-items:center;gap:6px;color:var(--accent-brass);text-decoration:none;font-weight:600;font-size:.95rem}.header-phone:hover{color:var(--accent-brass-light)}@media (min-width: 900px){.header-phone{display:flex}}@media (max-width: 899px){.header-phone{display:flex;position:absolute;top:12px;right:60px}.header-phone .phone-number{display:none}}.nav-links{display:flex;gap:24px;align-items:center}.nav-links a{color:var(--text-light);text-decoration:none;font-weight:500;font-size:.95rem;transition:color .2s,transform .2s;position:relative}.nav-links a:hover{color:var(--primary);transform:translateY(-2px)}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--primary);transition:width .3s}.nav-links a:hover:after{width:100%}.nav-links a.btn-retro:after{display:none}.nav-tools-link{position:relative}.nav-badge{background:var(--accent-brass);color:var(--text-on-gold);font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;margin-left:4px;text-transform:uppercase;vertical-align:super}.mobile-menu-close{display:none}.mobile-menu-btn{display:none;background:none;border:none;color:var(--text-light);font-size:1.5rem;cursor:pointer;padding:8px;min-width:44px;min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:rgba(60,179,113,.3);position:relative;z-index:1002}.nav-links.nav-desktop{display:flex;align-items:center;gap:24px}.nav-links.nav-mobile{display:none;position:fixed;top:0;right:0;width:280px;height:100vh;height:100dvh;padding-bottom:max(24px,env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;background:var(--primary-dark);flex-direction:column;padding:80px 24px 24px;gap:0;box-shadow:-4px 0 20px #00000080;z-index:1003;overflow-y:auto}.nav-links.nav-mobile.active{display:flex;pointer-events:auto;-webkit-transform:translateZ(0);transform:translateZ(0)}.nav-links.nav-mobile a{display:block;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1);width:100%;font-size:1.1rem;pointer-events:auto!important;touch-action:manipulation;position:relative;z-index:10;-webkit-tap-highlight-color:rgba(60,179,113,.3);cursor:pointer}.nav-links.nav-mobile .btn-retro{margin-top:16px;text-align:center;pointer-events:auto!important}.nav-links.nav-mobile .mobile-menu-close{display:block;position:absolute;top:20px;right:20px;background:none;border:none;color:var(--text-light);font-size:1.5rem;cursor:pointer;padding:8px;min-width:44px;min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:rgba(60,179,113,.3);z-index:10;pointer-events:auto!important}@media (max-width: 768px){.nav-links.nav-desktop{display:none!important}.mobile-menu-btn{display:block}.mobile-menu-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:1002;pointer-events:none}.mobile-menu-overlay.active{display:block}header{padding:12px 16px}}footer{background:var(--primary-dark);padding:60px 24px 24px;border-top:3px solid var(--primary)}.footer-grid{max-width:var(--container-max);margin:0 auto 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:40px}.footer-col h3{color:var(--primary);font-size:1rem;margin-bottom:16px;text-transform:uppercase;letter-spacing:1px}.footer-col ul{list-style:none}.footer-col li{margin-bottom:8px}.footer-col a{color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:color .2s;display:inline-flex;align-items:center;min-height:44px;padding:8px 0}.footer-col a:hover{color:var(--primary)}.footer-badges{display:flex;gap:16px;margin-top:16px;flex-wrap:wrap}.footer-badges img{height:40px;width:auto;opacity:.8}.footer-bottom{max-width:var(--container-max);margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.footer-legal{font-size:.8rem;color:var(--text-muted)}.footer-legal a{color:var(--primary)}.footer-legal-links{display:flex;gap:24px}.footer-legal-links a{color:var(--text-muted);text-decoration:none;font-size:.85rem;display:inline-flex;align-items:center;min-height:44px;padding:8px 0}.footer-legal-links a:hover{color:var(--primary)}.helper-orb{position:fixed;bottom:30px;right:30px;z-index:100;text-decoration:none}.helper-orb img{width:80px;height:auto;filter:drop-shadow(0 0 15px rgba(100,200,255,.6));animation:helperFloat 3s ease-in-out infinite}.helper-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--bg-alt);border:2px solid var(--primary);border-radius:8px;padding:8px 16px;color:var(--text-light);font-size:.9rem;white-space:nowrap;opacity:0;transition:opacity .3s;pointer-events:none;margin-bottom:10px}.helper-orb:hover .helper-tooltip{opacity:1}.helper-thumb{display:none;position:fixed;bottom:24px;right:24px;left:auto;z-index:100;background:linear-gradient(180deg,var(--accent-brass-light) 0%,var(--accent-brass) 50%,var(--accent-brass-dark) 100%);border:3px solid var(--primary-dark);border-radius:50px;padding:12px 20px 12px 12px;align-items:center;gap:8px;box-shadow:4px 4px 0 var(--primary-dark),0 0 20px #d4af3766;text-decoration:none;min-width:140px;min-height:56px}.helper-thumb-img{width:32px;height:auto;animation:helperPulse 2s ease-in-out infinite}.helper-thumb-text{color:var(--text-on-gold);font-weight:700;font-size:.9rem;text-transform:uppercase}@media (max-width: 768px){.helper-orb{display:none}.helper-thumb{display:flex}}.music-toggle{position:fixed;bottom:30px;right:130px;z-index:100;background:var(--bg-alt);border:2px solid var(--primary);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s}.music-toggle:hover{background:var(--bg-alt-light);transform:scale(1.1)}.music-icon{width:24px;height:24px}.music-icon-on,.music-toggle[aria-pressed=true] .music-icon-off{display:none}.music-toggle[aria-pressed=true] .music-icon-on{display:block}@media (max-width: 768px){.music-toggle{bottom:100px;right:auto;left:24px}}.service-card{background:linear-gradient(135deg,var(--bg-deep) 0%,var(--primary-dark) 100%);border:3px solid var(--primary);border-radius:12px;padding:24px;text-align:center;transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #3cb3714d}.service-card.purple{border-color:var(--accent-purple);background:linear-gradient(135deg,var(--bg-alt) 0%,var(--bg-alt-light) 100%)}.service-icon{width:80px;height:80px;object-fit:contain;margin-bottom:16px}.villager-card{background:linear-gradient(135deg,var(--bg-alt) 0%,var(--bg-alt-light) 100%);border:3px solid var(--accent-purple);border-radius:12px;padding:20px;text-align:center;transition:transform .3s}.villager-card:hover{transform:scale(1.02)}.villager-card img{width:100px;height:auto;margin-bottom:12px}.tool-promo-card{background:linear-gradient(135deg,var(--bg-deep) 0%,var(--primary-dark) 100%);border:3px solid var(--primary);border-radius:12px;padding:24px;text-align:center;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block}.tool-promo-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #3cb3714d}.tool-promo-card img{width:60px;height:60px;object-fit:contain;margin-bottom:12px}.tool-promo-card h3{color:var(--text-light);font-size:1.1rem;margin-bottom:8px}.tool-promo-cta{color:var(--primary);font-weight:600}@keyframes helperFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes helperPulse{0%,to{filter:drop-shadow(0 0 8px rgba(100,200,255,.5))}50%{filter:drop-shadow(0 0 15px rgba(100,200,255,.8))}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.animate-on-scroll.visible,.animate-on-scroll.animated{opacity:1;transform:translateY(0)}.animate-rise{animation:animateRise .8s ease-out forwards}@keyframes animateRise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-pop{animation:animatePop .5s ease-out forwards}@keyframes animatePop{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.animate-glow{animation:animateGlow 2s ease-in-out infinite}@keyframes animateGlow{0%,to{box-shadow:0 0 5px #3cb3714d}50%{box-shadow:0 0 20px #3cb37199}}.helper-clicked{animation:helperBounce .3s ease-out}@keyframes helperBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.helper-shake{animation:helperShake .5s ease-in-out}@keyframes helperShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.helper-payoff{filter:drop-shadow(0 0 20px rgba(212,175,55,.8))!important}.helper-break{opacity:.5;filter:grayscale(50%)}.bodega-cat-container{position:fixed;bottom:100px;right:-200px;z-index:9999;cursor:pointer;animation:catFloat 6s linear forwards}.bodega-cat-container:hover{transform:scale(1.05)}.bodega-cat-img{width:100px;height:auto;animation:catBob 1s ease-in-out infinite}.bodega-cat-bubble{position:absolute;bottom:110px;left:50%;transform:translate(-50%);background:var(--bg-alt);border:2px solid var(--accent-brass);border-radius:8px;padding:12px 16px;color:var(--text-light);font-family:var(--font-family);font-size:14px;white-space:nowrap;text-align:center;line-height:1.4}.bodega-cat-bubble:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid var(--accent-brass)}.bodega-cat-bubble a{color:var(--primary-light);text-decoration:underline;text-underline-offset:2px}.bodega-cat-bubble a:hover{color:var(--accent-brass)}@keyframes catFloat{0%{right:-200px}to{right:calc(100% + 200px)}}@keyframes catBob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes catFadeInOut{0%{opacity:0}15%{opacity:1}85%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.bodega-cat-container{right:50%;transform:translate(50%);opacity:0;animation:catFadeInOut 5s ease forwards}.bodega-cat-container:hover{transform:translate(50%) scale(1.05)}.bodega-cat-img{animation:none}.helper-thumb-img{animation:none;filter:drop-shadow(0 0 8px rgba(100,200,255,.5))}}.container{max-width:var(--container-max);margin:0 auto;padding:0 24px}.section{padding:var(--section-padding) 24px}@media (max-width: 768px){.section{padding:var(--section-padding-mobile) 16px}}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-wrap{flex-wrap:wrap}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.mt-xl{margin-top:48px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:24px}.mb-xl{margin-bottom:48px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.desktop-only{display:block}.mobile-only{display:none}@media (max-width: 768px){.desktop-only{display:none}.mobile-only{display:block}}.img-responsive{max-width:100%;height:auto}.img-cover{width:100%;height:100%;object-fit:cover}.img-contain{width:100%;height:100%;object-fit:contain}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:rgba(60,179,113,.3)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}input,select,textarea{font-size:16px}body{font-family:var(--font-family);background:var(--bg-main);color:var(--text-light);line-height:var(--line-height-base);overflow-x:hidden}@media (pointer: fine){*,*:before,*:after{cursor:url(/assets/cursors/gavel-raised-large.png) 14 25,auto!important}*:active,*:active:before,*:active:after{cursor:url(/assets/cursors/gavel-down-large.png) 14 25,auto!important}}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);background:var(--primary-dark);color:var(--text-light);padding:12px 24px;z-index:10000;text-decoration:none;font-weight:600;border-radius:0 0 8px 8px;transition:top .3s}.skip-link:focus{top:0}a:focus,button:focus{outline:2px solid var(--primary);outline-offset:2px}main{padding-top:var(--header-height)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media (max-width: 768px){main{padding-bottom:100px}}@media (max-width: 400px){html{font-size:14px}.container{padding-left:12px;padding-right:12px}h1{font-size:1.75rem;word-break:break-word}h2{font-size:1.5rem}h3{font-size:1.25rem}.btn-retro{padding:10px 16px;font-size:.9rem}}
