.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* Dark page behind the glass header on the v2 pages (home, portfolio, single work) */
body.page-id-3734, body.page-id-3735, body.single-work { background-color: #0A0A0A; }
/* Stop sideways scrolling on phones (iOS ignores overflow on body alone). clip, not hidden, so the sticky header keeps working */
html { overflow-x: clip; }
/* Closed mobile menu: don't let its links spill past the screen edge */
.elementor-location-header details:not([open]) .elementor-element-3a7a7fab { visibility: hidden; max-width: 100vw; overflow: hidden; }
/* Green status dots pulse: hero "Available for Freelance" (home) + footer "I reply within one business day" */
@keyframes jwsPulse { 0% { box-shadow: 0 0 0 0 rgba(61, 220, 132, 0.55); } 70% { box-shadow: 0 0 0 8px rgba(61, 220, 132, 0); } 100% { box-shadow: 0 0 0 0 rgba(61, 220, 132, 0); } }
[data-id="7fcba25b"] > span { background-color: #3DDC84 !important; animation: jwsPulse 2s ease-out infinite; }
[data-id="22dc10af"]::before { animation: jwsPulse 2s ease-out infinite; }
@media (prefers-reduced-motion: reduce) { [data-id="7fcba25b"] > span, [data-id="22dc10af"]::before { animation: none; } }/* End custom CSS */