/*
  WordPress and Elementor compatibility layer. Loaded after assets/css/style.css.
  Keep this file small: it only neutralises wrappers and defaults that
  WordPress and Elementor add around the mockup markup.
*/

/* The fixed header sits below the admin toolbar when logged in. */
.admin-bar .site-header { top: 32px; }
@media screen and (max-width: 782px) {
  .admin-bar .site-header { top: 46px; }
}

main p:empty { display: none; }

/* ------------------------------------------------------------------ */
/* Elementor                                                           */
/* ------------------------------------------------------------------ */

/* The theme's S&W widgets print complete mockup sections, which own their
   own spacing. Remove the gap Elementor puts between widgets and the
   padding it puts inside columns and containers that hold them. */
.elementor .elementor-widget[class*="elementor-widget-swvn-"] { margin-block-end: 0; margin-bottom: 0; }
.elementor .elementor-widget[class*="elementor-widget-swvn-"] > .elementor-widget-container { padding: 0; }

/* Elementor sets img { height: auto }, which undoes the mockup's cover fit. */
.elementor .u__img-cover img,
.elementor .m__hero__background-image img { height: 100%; }

/* Editor canvas only: keep the header in view instead of auto-hiding it. */
.elementor-editor-active .site-header.hidden { transform: none; }

/* ------------------------------------------------------------------ */
/* Fallback templates (blog index, standard-editor posts, 404)         */
/* until their designs land.                                           */
/* ------------------------------------------------------------------ */
.swvn-fallback .u__wrap { padding-top: 48px; padding-bottom: 96px; }
.swvn-fallback h2 a { color: inherit; text-decoration: none; }
.swvn-fallback__item + .swvn-fallback__item { margin-top: 48px; }
.swvn-fallback__image img { width: 100%; height: auto; }
.swvn-fallback__content img { max-width: 100%; height: auto; }

/* WordPress core class: hidden visually, still read by screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
