/* Astra main.min.css override layer — PADDING / MARGIN ZERO-OUT + ICON HIDE.
   Source: wp-content/themes/astra/assets/css/minified/main.min.css

   Scope (intentionally narrow):
   1. Disable the "before" icon font (Astra uses content: "\e5d2" / "\e5cd" on
      :before pseudo-elements) and hide Astra's decorative arrow / chevron
      SVGs (.ast-icon.icon-arrow, .ast-arrow-svg, .ast-header-navigation-arrow).
      The HWH design system relies on inline SVG icons, so the Astra icons
      are emptied and hidden.
   2. Zero out the padding / margin that Astra injects around wrappers
      (#primary, #secondary, .ast-separate-container, .ast-article-*,
      .ast-archive-description, .ast-404-layout-1, blog layout wrappers,
      single post navigation, site-header / site-footer sections, comments,
      search/archive headers, etc.).
   3. Reset .ast-container and .ast-plain-container padding so each HWH widget
      can manage its own max-width and padding through the design system variables.

   This file is loaded LAST in the frontend cascade and intentionally comes
   after the theme stylesheet so its declarations win against main.min.css at
   the same specificity. Where needed, !important is used to defeat theme
   defaults that are otherwise inlined by WordPress.

   Anything outside of padding / margin zeroing and icon hiding (colors,
   fonts, borders, backgrounds, form controls, widgets, WP blocks,
   navigation chrome, link colors, list styles, new spacing values, etc.)
   is INTENTIONALLY left untouched so the HWH custom styles in 10/20/30/40
   continue to drive the look. */

/* =========================================================
   0. Disable Astra icon font pseudo-elements and decorative SVGs
   The HWH design system renders icons as inline SVGs, so any
   Astra-injected icon font glyphs (content: "\e5d2" / "\e5cd")
   and decorative arrow / chevron SVGs are hidden.
   ========================================================= */
.ast-button-wrap .menu-toggle .menu-toggle-icon:before,
.ast-button-wrap .menu-toggle.toggled .menu-toggle-icon:before,
[data-theme="astra"] .menu-toggle .menu-toggle-icon:before,
[data-theme="astra"] .menu-toggle.toggled .menu-toggle-icon:before {
  content: none !important;
}

.site-header .ast-icon.icon-arrow,
.site-header .icon-arrow,
.site-header .ast-arrow-svg,
.site-header .ast-header-navigation-arrow,
.site-header .ast-icon .ast-arrow-svg,
.menu-link .ast-header-navigation-arrow,
.main-header-menu .ast-header-navigation-arrow {
  display: none !important;
}

/* =========================================================
   1. Strip padding / margin from Astra sections and containers
   ========================================================= */
#primary,
#secondary {
  margin: 0 !important;
  padding: 0 !important;
}

.ast-separate-container #primary,
.ast-separate-container.ast-left-sidebar #primary,
.ast-separate-container.ast-right-sidebar #primary {
  margin: 0 !important;
  padding: 0 !important;
}

.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single {
  margin: 0 !important;
  padding: 0 !important;
}

.ast-separate-container .ast-archive-description,
.ast-separate-container .ast-author-box {
  margin: 0 !important;
  padding: 0 !important;
}

.ast-separate-container .site-main > .ast-row,
.ast-separate-container .ast-row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.site-header-section,
.site-footer-section,
.site-footer-section > * {
  padding: 0 !important;
  margin: 0 !important;
}

/* Strip the 4em/5em/6.67em wrappers injected at every breakpoint */
@media (max-width: 1200px) {
  .ast-separate-container .ast-article-post,
  .ast-separate-container .ast-article-single {
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (min-width: 993px) {
  .ast-separate-container #primary,
  .ast-separate-container.ast-left-sidebar #primary,
  .ast-separate-container.ast-right-sidebar #primary {
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 992px) {
  .ast-separate-container .ast-archive-description {
    padding: 0 !important;
    margin: 0 !important;
  }
}

/* 404 layout */
.ast-404-layout-1,
.ast-404-search,
.ast-404-search .widget_search {
  margin: 0 !important;
  padding: 0 !important;
}

/* Single post navigation */
.single .entry-header,
.single .post-navigation {
  margin: 0 !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
}

.single .post-navigation a {
  margin: 0 !important;
}

@media (max-width: 768px) {
  .single .post-navigation {
    padding-top: 0 !important;
  }
  .ast-separate-container .entry-header {
    margin-bottom: 0 !important;
  }
}

/* Blog / archive listing wrappers */
.ast-separate-container .blog-layout-1,
.ast-blog-featured-section,
.entry-header + .ast-blog-featured-section,
.blog-layout-2 .ast-blog-featured-section,
.blog-layout-3 .ast-blog-featured-section {
  padding: 0 !important;
  margin: 0 !important;
}

.ast-no-thumb .ast-blog-featured-section,
.ast-no-thumb .entry-header + .ast-blog-featured-section {
  margin: 0 !important;
  padding: 0 !important;
}

/* Ast author box */
.ast-author-box {
  margin: 0 !important;
  padding: 0 !important;
}

/* Search results / archive header */
.archive .page-header,
.search .page-header,
.taxonomy-description {
  margin: 0 !important;
  padding: 0 !important;
}

.search .site-content .content-area .search-form {
  margin: 0 !important;
  padding: 0 !important;
}

/* Comments */
#comments,
.comments-area,
.comment-list,
.comment-body,
.comment-respond {
  margin: 0 !important;
  padding: 0 !important;
}

/* =========================================================
   2. Astra container width / padding reset
   Astra's .ast-container has its own max-width and padding
   that would otherwise constrain or indent the HWH widgets.
   We let each widget handle its own max-width and padding
   through the design system variables.
   ========================================================= */
.ast-container,
.ast-container-fluid {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.ast-plain-container,
.ast-plain-container.ast-no-sidebar {
  padding: 0 !important;
}
