/* Q6.9.7-HF.1.18D REV1 — Store visual flow */

/* Home / dedicated store */
.hf118d-r1-storefront{
  padding:82px 0;
  border-top:1px solid rgba(255,255,255,.07);
  background:
    radial-gradient(circle at 14% 12%,rgba(218,173,86,.09),transparent 35%),
    #070707;
}

#hf118dR1StorePage{
  min-height:calc(100vh - 180px);
}

.hf118d-r1-store-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:28px;
}

.hf118d-r1-store-head h1,
.hf118d-r1-store-head h2{
  margin:7px 0 9px;
}

.hf118d-r1-store-head p{
  max-width:720px;
  margin:0;
  opacity:.7;
}

.hf118d-r1-product-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:18px;
}

.hf118d-r1-product-card{
  display:grid;
  grid-template-rows:240px 1fr;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
}

.hf118d-r1-product-media{
  overflow:hidden;
  background:#0b0b0b;
}

.hf118d-r1-product-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.hf118d-r1-product-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  letter-spacing:.18em;
  opacity:.38;
}

.hf118d-r1-product-copy{
  display:grid;
  align-content:space-between;
  gap:20px;
  padding:20px;
}

.hf118d-r1-product-main h3{
  margin:0 0 8px;
}

.hf118d-r1-product-main p{
  margin:0;
  opacity:.68;
  line-height:1.55;
}

.hf118d-r1-product-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.hf118d-r1-product-bottom strong{
  font-size:1.25rem;
}

.hf118d-r1-no-products,
.hf118d-r1-store-empty-page{
  display:grid;
  gap:10px;
  justify-items:start;
}

.hf118d-r1-no-products{
  grid-column:1/-1;
  border:1px dashed rgba(255,255,255,.13);
  border-radius:18px;
  padding:24px;
}

.hf118d-r1-store-empty-page{
  padding:58px 0;
}

.hf118d-r1-payment-result{
  margin-bottom:24px;
  border:1px solid rgba(158,231,178,.28);
  border-radius:15px;
  padding:14px 16px;
  background:rgba(158,231,178,.06);
}

/* Checkout modal */
.hf118d-r1-modal[hidden]{
  display:none!important;
}

.hf118d-r1-modal{
  position:fixed;
  inset:0;
  z-index:13000;
  display:grid;
  place-items:center;
  padding:18px;
}

.hf118d-r1-modal-backdrop{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:rgba(0,0,0,.84);
}

.hf118d-r1-dialog{
  position:relative;
  z-index:1;
  width:min(780px,100%);
  max-height:92vh;
  overflow:auto;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:27px;
  background:#090909;
  box-shadow:0 30px 95px rgba(0,0,0,.56);
}

.hf118d-r1-dialog-x{
  position:absolute;
  top:13px;
  right:16px;
  border:0;
  background:none;
  color:#fff;
  font-size:29px;
  cursor:pointer;
}

.hf118d-r1-checkout-product{
  margin:18px 0;
  border:1px solid rgba(220,175,73,.22);
  border-radius:14px;
  padding:14px 15px;
}

.hf118d-r1-checkout-product>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.hf118d-r1-checkout-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.hf118d-r1-checkout-grid label{
  display:grid;
  gap:7px;
}

.hf118d-r1-checkout-grid label.wide{
  grid-column:1/-1;
}

.hf118d-r1-checkout-grid input,
.hf118d-r1-checkout-grid textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.12);
  border-radius:13px;
  background:#0d0d0d;
  color:#fff;
  padding:12px 13px;
  font:inherit;
}

.hf118d-r1-terms{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:start;
  margin:18px 0;
}

.hf118d-r1-terms input{
  margin-top:4px;
}

.hf118d-r1-checkout-status{
  min-height:1.35em;
  color:#ffb0aa;
}

body.hf118d-r1-modal-open{
  overflow:hidden;
}

/* Admin link */
.hf118d-r1-admin-public-link{
  text-decoration:none;
}

/* Standalone comment success fix */
#experienceSuccess[hidden]{
  display:none!important;
}

#experienceSuccess.hf118d-r1-comment-success-overlay:not([hidden]){
  position:fixed!important;
  inset:0!important;
  z-index:14000!important;
  display:grid!important;
  place-items:center!important;
  min-height:0!important;
  box-sizing:border-box!important;
  padding:20px!important;
  background:rgba(0,0,0,.86)!important;
}

.hf118d-r1-comment-success-card{
  width:min(560px,100%);
  box-sizing:border-box;
  display:grid;
  justify-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:34px 28px;
  background:#090909;
  box-shadow:0 30px 100px rgba(0,0,0,.6);
  text-align:center;
}

.hf118d-r1-comment-success-card h2{
  margin:5px 0 6px;
}

.hf118d-r1-comment-success-card p{
  max-width:480px;
}

body.hf118d-r1-comment-success-open{
  overflow:hidden;
}

@media(max-width:720px){
  .hf118d-r1-store-head{
    flex-direction:column;
    align-items:flex-start;
  }

  .hf118d-r1-product-grid{
    grid-template-columns:1fr;
  }

  .hf118d-r1-product-card{
    grid-template-rows:220px 1fr;
  }

  .hf118d-r1-checkout-grid{
    grid-template-columns:1fr;
  }

  .hf118d-r1-checkout-grid label.wide{
    grid-column:auto;
  }

  .hf118d-r1-dialog{
    padding:23px 18px;
  }

  .hf118d-r1-checkout-product>div,
  .hf118d-r1-product-bottom{
    align-items:flex-start;
    flex-direction:column;
  }
}
