
.breadcrumb{padding:16px 7% 0;font-size:11px;color:var(--muted)}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--ink)}
.bc-sep{margin:0 6px;opacity:.5}
.detail-wrap{padding:30px 7% 70px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}
.detail-media{background:linear-gradient(145deg,#ece0c8,#b58d63);border-radius:16px;min-height:340px;display:grid;place-items:center;font-size:120px;box-shadow:var(--shadow)}
.detail-copy h1{font-family:"Playfair Display";font-size:38px;margin:0 0 10px}
.detail-copy .price{font-size:22px;font-weight:700;color:var(--ink);margin:10px 0}
.detail-copy .desc{color:#554e43;line-height:1.7;font-size:14px;margin-bottom:18px}
.badge-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.badge-row span{background:#f2eee5;border-radius:20px;padding:5px 12px;font-size:10px;font-weight:700}
.ingredients-list,.steps-list{margin:0;padding-left:18px;color:#3d3a34;font-size:13px;line-height:1.9}
.steps-list{padding-left:20px}
h2.subhead{font-family:"Playfair Display";font-size:22px;margin:26px 0 10px}
.related-strip{padding:10px 7% 60px}
.related-strip h2{font-family:"Playfair Display";font-size:24px;margin-bottom:16px}
.mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.mini-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:0 8px 30px rgba(7,17,13,.05)}
.mini-card .emj{font-size:34px}
.mini-card b{display:block;font-family:"Playfair Display";font-size:15px;margin:8px 0 4px}
.mini-card small{color:var(--muted);font-size:11px}
.hub-hero{padding:50px 7% 20px}
.hub-hero h1{font-family:"Playfair Display";font-size:44px;margin:0 0 10px}
.hub-hero p{color:var(--muted);max-width:640px;line-height:1.6;font-size:14px}
.pillar-section{padding:30px 7%}
.pillar-section h2{font-family:"Playfair Display";font-size:26px;margin-bottom:4px}
.pillar-section .sub{color:var(--muted);font-size:12px;margin-bottom:16px}
.index-section{padding:20px 7% 60px}
.index-group{margin-bottom:22px}
.index-group h3{font-family:"Playfair Display";font-size:16px;margin:0 0 8px}
.index-links{display:flex;flex-wrap:wrap;gap:8px}
.index-links a{font-size:11px;background:#f2eee5;border-radius:14px;padding:6px 12px}
.coll-hero{padding:50px 7% 10px}
.coll-hero h1{font-family:"Playfair Display";font-size:44px;margin:0 0 10px}
.coll-hero p{color:var(--muted);max-width:640px;font-size:14px;line-height:1.6}

/* Responsive — matches the site's existing 1050px / 700px breakpoints. Desktop rules above are unchanged. */
@media(max-width:1050px){
  .detail-wrap{grid-template-columns:1fr;gap:28px}
  .detail-media{min-height:240px;font-size:90px}
}
@media(max-width:700px){
  .detail-wrap{padding:20px 5% 45px;gap:22px}
  .detail-wrap,.detail-copy,.detail-media{min-width:0;max-width:100%}
  .detail-media{min-height:190px;font-size:70px;width:100%}
  .detail-copy h1{font-size:26px;word-break:break-word;overflow-wrap:break-word}
  .badge-row{gap:6px}
  .ingredients-list,.steps-list{padding-left:18px;overflow-wrap:break-word;word-break:break-word}
  .breadcrumb{padding:14px 5% 0;font-size:10px}
  .hub-hero{padding:38px 5% 15px}
  .hub-hero h1{font-size:30px}
  .coll-hero{padding:38px 5% 8px}
  .coll-hero h1{font-size:30px}
  .related-strip{padding:8px 5% 40px}
  .related-strip h2{font-size:19px}
  .pillar-section{padding:20px 5%}
  .pillar-section h2{font-size:20px}
  .index-section{padding:14px 5% 40px}
  .mini-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
}
