/* ==========================================================================
   Posh Leather — base: design tokens, reset, type, buttons
   ========================================================================== */
:root{
  --espresso:#211712;
  --espresso-2:#2b1e17;
  --saddle:#8a4e2b;
  --saddle-dark:#6c3b1f;
  --brass:#c79a5c;
  --brass-light:#e3c58f;
  --bone:#f4ede1;
  --bone-2:#eae1d0;
  --paper:#fbf7ef;
  --ink:#241a13;
  --ink-soft:#5a4a3d;
  --line:rgba(36,26,19,0.12);
  --line-strong:rgba(36,26,19,0.28);
  --radius:2px;
  --maxw:1240px;
  --header-h:72px;
  --font-display:'Fraunces',Georgia,'Times New Roman',serif;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px);}
body{
  margin:0;background:var(--bone);color:var(--ink);
  font-family:var(--font-body);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{font-family:var(--font-display);margin:0;color:var(--ink);font-weight:600;letter-spacing:-0.01em;line-height:1.15;}
p{margin:0;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
button,input,select,textarea{font:inherit;color:inherit;}
button{cursor:pointer;}
ul{margin:0;padding:0;list-style:none;}
dl,dd{margin:0;}
:focus-visible{outline:2px solid var(--saddle);outline-offset:3px;}
.on-dark :focus-visible,.page-hero :focus-visible,.cta-band :focus-visible,footer :focus-visible{outline-color:var(--brass-light);}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.narrow{max-width:820px;}
.skip{position:absolute;left:-9999px;top:8px;z-index:2000;background:var(--espresso);color:var(--bone);padding:10px 16px;}
.skip:focus{left:8px;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* the stitched line — used as the one recurring ornament */
.stitch{
  height:6px;width:64px;color:var(--saddle);
  background-image:radial-gradient(circle,currentColor 1.4px,transparent 1.6px);
  background-size:11px 6px;background-repeat:repeat-x;background-position:left center;
  margin:14px 0 22px;
}
.stitch.wide{width:100%;margin:0;color:var(--brass);opacity:.55;}

.eyebrow{font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:var(--saddle-dark);font-weight:600;}
.on-dark .eyebrow{color:var(--brass-light);}
.lede{font-family:var(--font-display);font-size:clamp(20px,2.2vw,26px);line-height:1.45;font-weight:400;color:var(--ink);}
.muted{color:var(--ink-soft);}

/* buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 28px;
  font-size:13px;letter-spacing:0.08em;text-transform:uppercase;font-weight:600;line-height:1.2;
  border-radius:var(--radius);border:1px solid transparent;cursor:pointer;
  transition:background-color .25s ease,border-color .25s ease,color .25s ease;
}
.btn-brass{background:var(--brass);color:var(--espresso);}
.btn-brass:hover{background:var(--brass-light);}
.btn-dark{background:var(--espresso);color:var(--bone);}
.btn-dark:hover{background:var(--saddle-dark);}
.btn-outline{border-color:rgba(244,237,225,0.55);color:var(--bone);}
.btn-outline:hover{border-color:var(--bone);background:rgba(244,237,225,0.1);}
.btn-line{border-color:var(--line-strong);color:var(--ink);}
.btn-line:hover{border-color:var(--ink);background:rgba(36,26,19,0.05);}
.btn-sm{padding:11px 20px;font-size:12px;}
.text-link{
  font-size:12px;letter-spacing:0.06em;text-transform:uppercase;font-weight:600;
  color:var(--saddle-dark);border-bottom:1px solid currentColor;padding-bottom:2px;
}
.text-link:hover{color:var(--espresso);}

/* Reduced motion: calm the hover effects and smooth-scroll, but keep the marquee and hero slider running
   (they are the site's main navigation cues and pause on hover / focus). */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .tile .thumb img,.range-card .thumb img,.cat-card img{transition:none !important;}
  .tile:hover .thumb img,.range-card:hover .thumb img,.cat-card:hover img{transform:none !important;}
}
