
*{box-sizing:border-box}body{margin:0;background:#0e1025;color:#faf7ff;font:16px/1.4 system-ui,sans-serif}a{color:inherit}main{width:min(100% - 36px,540px);margin:auto;padding-bottom:30px}[hidden]{display:none!important}#gate{min-height:100svh;display:grid;place-content:center;text-align:center;padding:20px}h1,h2,p{margin:0}h1{font-size:clamp(25px,6vw,32px);letter-spacing:-.04em}.actions{display:flex;justify-content:center;gap:12px;margin-top:24px}.actions>*{padding:12px 22px;border:1px solid #68677c;border-radius:9px;background:transparent;color:inherit;text-decoration:none;font:600 16px system-ui;cursor:pointer}.actions button{background:#f2bd69;border-color:#f2bd69;color:#171528}header{text-align:center}header img{display:block;width:min(62vw,210px);margin:0 auto 10px}ul{list-style:none;padding:0;margin:0}.row{display:grid;grid-template-columns:clamp(64px,22vw,100px) 1fr 12px;gap:16px;align-items:center;padding:20px 6px;text-decoration:none;border-top:1px solid #38394d}a.row:hover,a.row:focus-visible{background:#191a32}.row img{width:100%}.row h2{font-size:clamp(17px,4.7vw,22px);letter-spacing:-.035em}.row p,.detail p{color:#d0cada;margin-top:4px}.arrow{width:9px;height:9px;border-right:2px solid #daa758;border-top:2px solid #daa758;transform:rotate(45deg)}.back{display:inline-block;padding:12px 0;color:#eed1a4}.detail{border-top:1px solid #38394d}.hero{display:block;width:min(48vw,220px);margin:16px auto 22px}.detail h2{font-size:17px;margin:24px 0 6px}.detail li{padding:9px 0;border-bottom:1px solid #38394d}:focus-visible{outline:2px solid #efbd76;outline-offset:3px}
.flavors{margin:24px 0 0;padding:0;border:0;min-width:0}.flavors legend{font-size:20px;font-weight:700;padding:0}.flavors h2{color:#eed1a4;margin:16px 0 4px}.flavors li{padding:0}.flavors label{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px;border-radius:6px;cursor:pointer}.flavors input{width:19px;height:19px;margin:0;accent-color:#f2bd69}.flavors label:has(:checked){background:#302a3a}.flavors label:focus-within{outline:2px solid #eed1a4}.selection:not(:empty){padding:12px 0}@media (min-width: 800px) {
  main { width: min(100% - 80px, 1040px); padding-bottom: 64px; }
  header img { width: 220px; margin: 8px auto 28px; }
  #products > ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; }
  .row { height: 100%; box-sizing: border-box; }
  .detail { display: grid; grid-template-columns: minmax(200px, 0.8fr) minmax(320px, 1.2fr); column-gap: 54px; align-items: start; }
  .detail > .back { grid-column: 1 / -1; justify-self: start; margin: 4px 0 18px; }
  .detail > .hero { grid-column: 1; grid-row: 2 / span 4; width: min(100%, 310px); margin: 0 auto; }
  .detail > :is(h1, p, fieldset) { grid-column: 2; }
}
.gate-logo{display:block;width:min(64vw,240px);height:auto;justify-self:center;margin:0 auto 16px}
header nav {text-align:right;margin:0 0 12px}
#cart-link,.add,.quantity button {display:inline-block;border:1px solid #847991;border-radius:8px;padding:10px 15px;color:inherit;background:transparent;text-decoration:none;font:inherit;cursor:pointer}
.add {background:#f2bd69;color:#171528;font-weight:700;border:0;margin-top:18px;grid-column:2}
.add:disabled {opacity:.45;cursor:default}
#lines li {padding:18px 0;border-bottom:1px solid #38394d}
.quantity {display:flex;gap:10px;align-items:center;margin-top:10px}
#subtotal {margin:18px 0;font-weight:bold}

.ingredients{grid-column:2;margin:16px 0}.ingredients summary{cursor:pointer;color:#eed1a4}.ingredients p{line-height:1.55}

.lead-time{grid-column:2;margin:12px 0;color:#d0cada;line-height:1.5}
