/* WordPress integration; the approved page components keep their original CSS. */
.skip-link { position: fixed; top: -100px; left: 18px; padding: 12px 20px; z-index: 100000; background: var(--orange); color: #111; border-radius: 8px; }
.skip-link:focus { top: 12px; }
.admin-bar .nav { margin-top: 32px; }
.custom-logo-link { display: inline-flex; flex-shrink: 0; }
.custom-logo { width: auto; max-width: 185px; max-height: 40px; height: auto; object-fit: contain; }
.ecomtrap-standard-content { padding-bottom: 100px; min-height: 60vh; }
.ecomtrap-standard-content h1 { font-size: clamp(36px,6vw,72px); }
.ecomtrap-standard-content h2 { font-size: clamp(26px,4vw,40px); }
.ecomtrap-standard-content img { max-width: 100%; height: auto; }
.ecomtrap-standard-content a:not(.button) { text-decoration: underline; text-underline-offset: 3px; }
.ecomtrap-standard-content p, .ecomtrap-standard-content ul, .ecomtrap-standard-content ol { max-width: 80ch; }
.ecomtrap-post-summary { padding: 20px 0; border-bottom: 1px solid var(--border); }
.ecomtrap-comments { padding-top: 40px; }
.ecomtrap-comments textarea { width: 100%; }
/* Keep controls usable if the visitor disables JavaScript. */
html:not(.js) #theme, html:not(.js) #menu { display: none; }
.home-portfolio-slider:focus-within .home-portfolio-track { animation-play-state: paused; }
@media (max-width: 782px) { .admin-bar .nav { margin-top: 46px; } }
@media (max-width: 600px) { .admin-bar .nav { margin-top: 0; } #wpadminbar { position: fixed; } .admin-bar .nav { top: 56px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
