:host {
  /**
   * @prop --lu-grid-padding: Padding for the Grid
   * @prop --lu-grid-padding-xs: Padding for the Grid on xs screens
   * @prop --lu-grid-padding-sm: Padding for the Grid on sm screens
   * @prop --lu-grid-padding-md: Padding for the Grid on md screens
   * @prop --lu-grid-padding-lg: Padding for the Grid on lg screens
   * @prop --lu-grid-padding-xl: Padding for the Grid on xl screens
   *
   * @prop --lu-grid-width: Width of the fixed Grid
   * @prop --lu-grid-width-xs: Width of the fixed Grid on xs screens
   * @prop --lu-grid-width-sm: Width of the fixed Grid on sm screens
   * @prop --lu-grid-width-md: Width of the fixed Grid on md screens
   * @prop --lu-grid-width-lg: Width of the fixed Grid on lg screens
   * @prop --lu-grid-width-xl: Width of the fixed Grid on xl screens
   */
  padding: var(--lu-grid-padding-xs, var(--lu-grid-padding, 5px));
  margin-left: auto;
  margin-right: auto;
  display: block;
}
@media (min-width: 576px) {
  :host {
    padding: var(--lu-grid-padding-sm, var(--lu-grid-padding, 5px));
  }
}
@media (min-width: 768px) {
  :host {
    padding: var(--lu-grid-padding-md, var(--lu-grid-padding, 5px));
  }
}
@media (min-width: 992px) {
  :host {
    padding: var(--lu-grid-padding-lg, var(--lu-grid-padding, 5px));
  }
}
@media (min-width: 1200px) {
  :host {
    padding: var(--lu-grid-padding-xl, var(--lu-grid-padding, 5px));
  }
}

:host(.grid-fixed) {
  width: var(--lu-grid-width-xs, var(--lu-grid-width, 100%));
  max-width: 100%;
}
@media (min-width: 576px) {
  :host(.grid-fixed) {
    width: var(--lu-grid-width-sm, var(--lu-grid-width, 540px));
  }
}
@media (min-width: 768px) {
  :host(.grid-fixed) {
    width: var(--lu-grid-width-md, var(--lu-grid-width, 720px));
  }
}
@media (min-width: 992px) {
  :host(.grid-fixed) {
    width: var(--lu-grid-width-lg, var(--lu-grid-width, 960px));
  }
}
@media (min-width: 1200px) {
  :host(.grid-fixed) {
    width: var(--lu-grid-width-xl, var(--lu-grid-width, 1140px));
  }
}

:host([no-padding]) {
  padding: 0;
}

:host([no-padding]) ::slotted(lu-col) {
  padding: 0;
}