html,body{margin:0;background:#100e0c;color:#f3ece3;font-family:Outfit,Segoe UI,system-ui,sans-serif}
*{box-sizing:border-box}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:"Cormorant Garamond",Times New Roman,serif;text-wrap:balance;font-weight:600}
button:not(:disabled),[role=button]{cursor:pointer}
.wrap{max-width:64rem;margin:0 auto;padding:2.5rem 1.25rem 6rem}
.top{position:sticky;top:0;z-index:40;border-bottom:1px solid #3a342c;background:rgba(16,14,12,.95);backdrop-filter:blur(12px)}
.banner{border-bottom:1px solid #3a342c;padding:.5rem 1rem;text-align:center;font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#c4a574}
.bar{display:flex;align-items:center;gap:.75rem;max-width:64rem;margin:0 auto;padding:.75rem 1rem}
.nav{display:flex;gap:.25rem;overflow:auto}
.nav a,.chip{display:inline-flex;min-height:44px;align-items:center;border-radius:.75rem;padding:0 .75rem;font-size:.875rem;color:#a89a8c}
.nav a.on,.chip.on{background:#221e1a;color:#f3ece3}
.cart{position:relative;display:inline-flex;min-height:44px;align-items:center;gap:.5rem;border-radius:.75rem;padding:0 .75rem;background:#1a1714;box-shadow:0 0 0 1px rgb(243 236 227 / .08);margin-left:auto}
.badge{position:absolute;right:-4px;top:-4px;min-width:20px;height:20px;border-radius:999px;background:#d9c4a8;color:#100e0c;font-family:"IBM Plex Mono",monospace;font-size:10px;display:grid;place-items:center}
.kicker{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#d9c4a8}
h1{font-size:2.25rem;margin:.5rem 0 0;letter-spacing:-.03em}
@media(min-width:640px){h1{font-size:3.75rem}}
.lede{max-width:42rem;color:#a89a8c;line-height:1.6;margin-top:.75rem}
.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border-radius:.75rem;padding:0 1.25rem;font-size:.875rem;border:0}
.btn-c{background:#d9c4a8;color:#100e0c;font-weight:500}
.btn-g{background:#1a1714;color:#f3ece3;box-shadow:0 0 0 1px rgb(243 236 227 / .08)}
.grid{display:grid;gap:1rem}
@media(min-width:768px){.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:1fr 1fr 1fr}}
.card{background:#1a1714;border-radius:1rem;padding:1.25rem;box-shadow:0 0 0 1px rgb(243 236 227 / .08)}
.muted{color:#a89a8c;font-size:.875rem;line-height:1.6}
.mono{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#7a6e62}
.price{font-family:"IBM Plex Mono",monospace;color:#d9c4a8}
.row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;width:100%;text-align:left;background:#1a1714;color:#f3ece3;border:0;border-radius:1rem;padding:.75rem 1rem;min-height:48px;box-shadow:0 0 0 1px rgb(243 236 227 / .08)}
.row.on{background:#221e1a}
.hero{display:flex;flex-direction:column;align-items:center;text-align:center}
.hero img{max-width:100%}
.ctas{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:28rem;margin-top:2rem}
@media(min-width:640px){.ctas{flex-direction:row}.desk{display:block}.mob{display:none}}
@media(max-width:639px){.desk{display:none}}
.foot{margin-top:4rem;border-top:1px solid #3a342c;padding-top:2rem;color:#a89a8c;font-size:.875rem}
.cream{color:#d9c4a8}
.sticky{position:sticky;bottom:1rem;background:#221e1a;border-radius:1rem;padding:1.25rem;box-shadow:0 0 0 1px rgb(243 236 227 / .14)}
input,textarea{width:100%;border:0;border-radius:.75rem;background:#1a1714;color:#f3ece3;padding:.75rem;box-shadow:0 0 0 1px rgb(243 236 227 / .08);font:inherit}
label{display:block;margin-top:1rem}
.mt{margin-top:2.5rem}
.filter{display:flex;gap:.5rem;overflow:auto;padding-bottom:.5rem;margin:1.5rem 0 1rem}
