/* Center Apple Pay Button in Mobile Checkout */
@media screen and (max-width: 540px){
	iframe#fullsteam-hosted-digitalwallet-frame {
margin-right: 0 !important;
	}
}

/* Full-width announcement bar + consistent height */
.announcement-bar{
  background:#C56B48;
  color:#fff;

  /* break out of Astra's boxed header container */
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);

  box-sizing:border-box;
  padding:10px 16px;

  /* keep the bar the same height while messages swap */
  position:relative;
  min-height:44px;

  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

/* Layer messages on top of each other so height never changes */
.announcement{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;

  padding:0 16px;
  box-sizing:border-box;

  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;

  opacity:0;
  transition:opacity 1.5s ease;
}

.announcement.active{
  opacity:1;
}

.announcement a{
  color:inherit;           /* use the announcement text color */
  font-weight:600;
  text-decoration:none;
	cursor:pointer;
}

.announcement a:hover{
  text-decoration:none;
  opacity:.85;
}

.announcement a{
  padding:2px 6px;
  border-radius:4px;
  background:rgba(255,255,255,.20);
}

/* Only allow clicks on the active announcement */
.announcement {
  pointer-events: none;
}

.announcement.active {
  pointer-events: auto;
}

/* Hide meta + prev/next on single c7_product */
body.single-c7_product .entry-meta,
body.single-c7_product .post-navigation {
  display: none !important;
}

@media (max-width: 921px){
  .announcement-bar{ font-size: 13px; }
}

@media (max-width: 921px){
  .announcement-bar{ padding-left:12px; padding-right:12px; }
}

@media (min-width: 922px){
  button.c7-link[aria-label*="View Cart"]{
    position: relative;
    top: 60px; /* try 4–10px */
  }
}
@media (min-width: 922px){
  .c7-user-nav__account{
    position: relative;
    top: 60px;
  }
}


/* MOBILE ONLY */
@media (max-width: 921px){

  /* Login / Account */
  .c7-user-nav__account{
    position: relative;
    top: 40px;   /* adjust this */
  }

  /* Cart button */
  button.c7-link[aria-label*="View Cart"]{
    position: relative;
    top: 40px;   /* adjust separately */
  }
}

/* MOBILE: make the bar behave normally (no 100vw shift) */
@media (max-width: 921px){
  .announcement-bar{
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: auto;
    right: auto;

    /* iPhone notch safe-area padding */
    padding-left: max(12px, env(safe-area-inset-left));
    padding-right: max(12px, env(safe-area-inset-right));
  }

  /* force true centering of the visible message */
  .announcement{
    left: 0;
    right: 0;
    text-align: center;
  }
}

/* MOBILE: force the Astra header HTML element (and the bar inside it) to span full width */
@media (max-width: 921px){

  /* Astra header builder HTML element wrapper(s) */
  .ast-header-html,
  .ast-builder-layout-element.ast-header-html-1,
  .ast-builder-layout-element.ast-header-html-2,
  .ast-builder-layout-element.ast-header-html-3{
    width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* The announcement bar itself */
  .announcement-bar{
    width: 100% !important;
    display: flex !important;
    margin: 0 !important;

    /* keep it centered + safe on notched phones */
    padding-left: max(12px, env(safe-area-inset-left));
    padding-right: max(12px, env(safe-area-inset-right));
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
  }
}

/* MOBILE: make announcement bar full-bleed across the screen */
@media (max-width: 921px){

  /* make sure Astra's HTML header element can stretch */
  .ast-header-html,
  .ast-builder-layout-element.ast-header-html-1{
    width: 100% !important;
    flex: 0 0 100% !important;
  }

	/* MOBILE: full-bleed background with no viewport shifting */
@media (max-width: 921px){

  .announcement-bar{
    position: relative;
    width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box;
    overflow: hidden; /* keeps the pseudo-element clean */
  }
