:root { --ink:#172a27; --muted:#53615b; --paper:#f5f1e8; --white:#fffdf8; --accent:#d57745; --accent-dark:#a54f27; --line:#ded8ca; --sage:#dce5da; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial,Helvetica,sans-serif; line-height:1.55; }
a { color:inherit; }
.announcement { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 22px; padding:9px 16px; background:var(--ink); color:var(--white); font-size:.8rem; letter-spacing:.02em; }
.announcement-contact { display:inline-flex; align-items:center; gap:7px; color:var(--white); text-decoration:none; white-space:nowrap; }
.announcement-contact:hover,.announcement-contact:focus-visible { color:#f2b28b; }
.announcement-contact svg { display:block; width:18px; height:18px; flex:none; }
.announcement-contact strong { font-weight:700; }
header { display:flex; align-items:center; justify-content:space-between; max-width:1160px; margin:0 auto; padding:18px 28px; }
.brand { display:inline-flex; align-items:center; gap:12px; text-decoration:none; }
.brand-mark { display:block; overflow:hidden; flex:0 0 160px; width:160px; height:84px; }
.brand-mark img { display:block; width:160px; height:84px; object-fit:contain; }
.brand-copy { display:flex; flex-direction:column; gap:4px; line-height:1; }
.brand-name { font-size:1.14rem; font-weight:800; letter-spacing:-.04em; }
.brand-subtitle { color:var(--muted); font-size:.62rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.main-nav { display:flex; align-items:center; gap:20px; }
.main-nav a { color:var(--muted); font-size:.9rem; text-decoration:none; }
.main-nav .nav-order { color:var(--ink); font-weight:700; }
.category-menu { display:flex; justify-content:center; gap:8px; overflow-x:auto; padding:12px 20px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--white); }
.category-menu a { flex:0 0 auto; padding:8px 14px; border-radius:3px; color:var(--muted); font-size:.87rem; font-weight:700; text-decoration:none; white-space:nowrap; }
.category-menu a:hover,.category-menu a[aria-current="page"] { background:var(--sage); color:var(--ink); }
.page-wrap { max-width:1100px; margin:0 auto; padding:60px 28px 76px; }
.eyebrow { margin:0 0 15px; color:var(--accent-dark); font-size:.77rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
h1,h2,h3 { font-family:Georgia,'Times New Roman',serif; font-weight:500; }
h1 { max-width:760px; margin:0; font-size:clamp(2.3rem,5vw,4rem); letter-spacing:-.06em; line-height:1; }
.lead { max-width:720px; margin:22px 0 0; color:var(--muted); font-size:1.08rem; }
.content-section { margin-top:54px; padding-top:32px; border-top:1px solid var(--line); }
.content-section h2 { margin:0 0 12px; font-size:clamp(1.8rem,3vw,2.5rem); letter-spacing:-.04em; }
.content-section>p { max-width:720px; color:var(--muted); }
.availability-card { max-width:820px; margin-top:24px; padding:30px; border:1px solid var(--line); background:var(--white); }
.availability-card h3 { margin:0 0 10px; font-size:1.65rem; }
.availability-card p:not(.eyebrow) { max-width:650px; color:var(--muted); }
.button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; margin-top:8px; padding:0 20px; border:1px solid var(--ink); border-radius:4px; background:var(--ink); color:var(--white); font-size:.92rem; font-weight:700; text-decoration:none; }
.button:hover { background:#263e39; }
.product-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; align-items:center; max-width:1000px; margin-top:22px; padding:18px; border:1px solid var(--line); background:var(--white); }
.product-card img { display:block; width:100%; height:auto; }
.product-category { margin:0 0 10px; color:var(--accent-dark); font-size:.77rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.product-card h3 { margin:0 0 12px; font-size:clamp(1.7rem,3vw,2.4rem); line-height:1.1; }
.product-price { margin:0 0 18px; font-size:1.22rem; font-weight:800; }
.product-price span { color:var(--muted); font-size:.9rem; font-weight:500; }
.product-copy { color:var(--muted); }
.product-card ul { padding-left:20px; color:var(--muted); }
.product-card li { margin:7px 0; }
.back-link { display:inline-block; margin-top:30px; color:var(--muted); text-underline-offset:4px; }
footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:22px 28px; border-top:1px solid var(--line); color:var(--muted); font-size:.84rem; }
footer p { margin:0; }
@media (max-width:760px) {
  .announcement { gap:6px 12px; padding:8px 10px; font-size:.72rem; }
  .announcement-contact { gap:5px; }
  .announcement-contact svg { width:16px; height:16px; }
  header { padding:12px 18px; }
  .brand { gap:6px; }
  .brand-mark,.brand-mark img { width:110px; height:58px; }
  .brand-mark { flex-basis:110px; }
  .brand-name { font-size:.95rem; }
  .brand-subtitle { font-size:.5rem; letter-spacing:.09em; }
  .main-nav { gap:8px; }
  .main-nav a:not(.nav-order) { display:none; }
  .main-nav .nav-order { font-size:.74rem; }
  .category-menu { justify-content:flex-start; gap:2px; padding:9px 12px; }
  .category-menu a { padding:8px 10px; font-size:.8rem; }
  .page-wrap { padding:48px 20px 58px; }
  .availability-card { padding:22px; }
  .product-card { grid-template-columns:1fr; gap:18px; padding:14px; }
  footer { padding:20px; }
}
