:root{
  --bg:#E7EEEA; --ink:#24302C; --accent:#5E7A70; --muted:#6B7C76; --card:#F7FAF8; --line:#C9D5CF;
  --display:"Outfit", system-ui, sans-serif; --serif:"Source Serif 4", Georgia, serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--display);font-weight:400;letter-spacing:.01em}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.top{display:flex;align-items:center;justify-content:space-between;padding:22px 32px;position:sticky;top:0;background:rgba(231,238,234,.9);backdrop-filter:blur(10px);z-index:20}
.logo{font-weight:300;letter-spacing:.28em;text-transform:lowercase;font-size:20px}
.top nav{display:flex;gap:28px;font-size:14px;text-transform:lowercase}
.tray{font-size:14px}
.billboard{min-height:88vh;display:grid;place-items:end start;padding:48px;background:#d5dfda center/cover no-repeat;color:#f7faf8}
.billboard h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,7vw,84px);max-width:12ch;line-height:.95;margin:0 0 12px}
.timeline{display:flex;overflow:auto;gap:18px;padding:36px 32px}
.t-card{min-width:260px;background:var(--card);padding:28px;border-radius:28px 4px 28px 4px}
.t-card h2{font-family:var(--serif);font-weight:400;margin:0 0 8px}
.shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.shelf a{padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.shelf img{aspect-ratio:4/5;object-fit:cover;border-radius:40% 40% 4px 4px;background:#dde6e1}
.shelf h3{font-weight:400;font-size:16px;margin:12px 0 4px;text-transform:lowercase}
.muted{color:var(--muted)}
.wrap{width:min(1080px,calc(100% - 48px));margin:0 auto;padding:48px 0}
.notes{font-family:var(--serif);font-size:20px;max-width:34em}
.pdp{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;padding:24px 32px 80px}
.pdp img.main{width:100%;border-radius:48% 48% 8px 8px;object-fit:cover;aspect-ratio:4/5;background:#dde6e1}
.chips{display:flex;gap:8px;margin:12px 0}
.chips img{width:72px;height:90px;object-fit:cover;border-radius:20px 20px 4px 4px;cursor:pointer;opacity:.7}
.chips img.on{opacity:1;outline:1px solid var(--accent)}
.pdp h1{font-family:var(--serif);font-weight:400;font-size:42px;text-transform:lowercase}
.btn{border:0;background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:999px;font:inherit;cursor:pointer;display:inline-block}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.form{display:grid;gap:12px;max-width:480px}
.form input,.form textarea,.form select{border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;font:inherit}
.legal{max-width:720px}
.base{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:48px 32px;border-top:1px solid var(--line);font-size:14px}
.flash{background:#dff0e6;padding:12px;margin:12px 0}
.scent-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.scent-row a{border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-size:13px;text-transform:lowercase}
.scent-row a.on{background:var(--ink);color:var(--bg)}
.cart img{width:64px;height:80px;object-fit:cover;border-radius:16px}
@media(max-width:900px){
  .shelf,.pdp,.base{grid-template-columns:1fr}
  .top nav{display:none}
  .billboard{min-height:70vh}
}
