
:root{
  --black:#0b0b0b;
  --cream:#f4efe6;
  --paper:#fffaf2;
  --gold:#c8a56a;
  --text:#f7f2ea;
  --muted:#c9c0b4;
  --ink:#161821;
  --soft:#4f5360;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#222;font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.55}
a{text-decoration:none;color:inherit}
.header{
  height:84px;
  padding:0 6vw;
  background:linear-gradient(180deg,#111,#090909);
  color:var(--text);
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.brand{display:flex;align-items:center;gap:14px}
.logo{
  width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;
  display:grid;place-items:center;color:var(--gold);font-weight:800;letter-spacing:.04em;
}
.brand strong{display:block;font-size:18px}
.brand small{display:block;color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.18em}
nav{display:flex;align-items:center;gap:34px;text-transform:uppercase;font-weight:800;font-size:13px;letter-spacing:.04em}
.nav-button{background:var(--gold);color:#111;padding:14px 22px;border-radius:2px}
.hero{
  min-height:650px;
  position:relative;
  display:flex;
  align-items:center;
  padding:82px 6vw;
  background:url('assets/hero-board-knife.jpg') center right/cover no-repeat;
  color:var(--text);
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(8,8,8,.94) 0%,rgba(8,8,8,.75) 38%,rgba(8,8,8,.22) 74%,rgba(8,8,8,.08) 100%);
}
.hero-content{position:relative;max-width:650px;z-index:1}
.eyebrow{margin:0 0 18px;color:var(--gold);font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.18em}
.eyebrow.dark{color:#a97936}
h1,h2{font-family:"Libre Baskerville",Georgia,serif;line-height:1.06;letter-spacing:-.04em;margin:0}
h1{font-size:clamp(42px,5.4vw,72px)}
h2{font-size:clamp(34px,4.2vw,56px)}
.hero p{font-size:18px;max-width:590px;color:#e5ddd2;margin:24px 0 32px}
.buttons{display:flex;gap:14px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:15px 24px;border-radius:2px;
  text-transform:uppercase;font-weight:800;letter-spacing:.05em;font-size:13px;
}
.primary{background:var(--gold);color:#111}
.secondary{border:1px solid var(--gold);color:var(--gold);background:rgba(0,0,0,.16)}
.dark-btn{background:#111;color:white;margin-top:18px}
.benefits{
  background:var(--cream);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  padding:38px 6vw;
  gap:0;
}
.benefits article{
  text-align:center;
  padding:12px 34px;
  border-right:1px solid #d7cbbb;
}
.benefits article:last-child{border-right:none}
.icon{font-size:30px;color:var(--gold);line-height:1;margin-bottom:10px}
.benefits h3{
  text-transform:uppercase;
  font-size:14px;
  letter-spacing:.06em;
  margin:0 0 10px;
}
.benefits p{margin:0;color:#2d313b;font-size:14px}
.background-section{
  background:var(--paper);
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:42px;
  align-items:center;
  padding:76px 6vw;
}
.background-copy{padding:0}
.background-copy p{color:#3f4652;font-size:17px;max-width:640px}
.cuts-image{
  overflow:hidden;
  border-radius:18px;
  box-shadow:0 18px 44px rgba(15,15,15,.11);
  border:1px solid rgba(0,0,0,.045);
  background:#0f0f0f;
  align-self:center;
}
.cuts-image img{
  width:100%;
  height:auto;
  aspect-ratio:1.54 / 1;
  object-fit:cover;
  object-position:center;
  display:block;
}
.supply-section{
  background:#0d0d0d;
  color:var(--text);
  padding:92px 6vw;
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:62px;
  align-items:start;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.supply-intro{
  max-width:720px;
  position:sticky;
  top:110px;
}
.supply-intro h2{
  color:var(--text);
  font-size:clamp(34px,4.15vw,54px);
  max-width:740px;
}
.supply-lead{
  color:var(--muted);
  font-size:19px;
  max-width:650px;
  margin:24px 0 0;
}
.supply-note{
  margin-top:34px;
  padding:22px 24px;
  border:1px solid rgba(200,165,106,.32);
  background:linear-gradient(135deg,rgba(200,165,106,.12),rgba(255,255,255,.035));
  border-radius:16px;
  max-width:620px;
}
.supply-note strong{
  display:block;
  color:var(--text);
  font-size:18px;
  margin-bottom:6px;
}
.supply-note span{
  display:block;
  color:var(--muted);
  font-size:15px;
}
.process-line{
  margin-top:34px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  color:var(--text);
}
.process-line span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 15px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.045);
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.process-line i{
  width:28px;
  height:1px;
  background:linear-gradient(90deg,rgba(200,165,106,.35),rgba(200,165,106,.9));
  display:block;
}
.supply-points{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
.supply-points article{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.095);
  border-radius:18px;
  padding:28px 30px;
  transition:transform .2s ease, border-color .2s ease, background .2s ease;
}
.supply-points article:hover{
  transform:translateY(-2px);
  border-color:rgba(200,165,106,.32);
  background:rgba(255,255,255,.06);
}
.supply-points .step{
  display:block;
  color:var(--gold);
  font-weight:800;
  letter-spacing:.14em;
  font-size:12px;
  margin-bottom:10px;
}
.supply-points h3{
  margin:0 0 9px;
  font-size:22px;
  color:var(--text);
}
.supply-points p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.55;
}

.quote-section{
  background:var(--cream);
  padding:82px 6vw;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:28px;
}
.quote-card,.contact-card{
  background:white;
  border-radius:18px;
  padding:38px;
  box-shadow:0 22px 60px rgba(0,0,0,.08);
}
.quote-card p,.contact-card p{color:var(--soft);font-size:17px}
.contact-card h3{font-size:26px;margin-top:0}
footer{
  background:#0b0b0b;
  color:var(--muted);
  padding:28px 6vw;
  font-size:14px;
}
@media(max-width:900px){
  nav{display:none}
  .hero{min-height:620px;background-position:center right}
  .hero-overlay{background:linear-gradient(90deg,rgba(8,8,8,.94) 0%,rgba(8,8,8,.72) 100%)}
  .benefits,.background-section,.supply-section,.quote-section{grid-template-columns:1fr}
  .benefits article{border-right:none;border-bottom:1px solid #d7cbbb}
  .background-section{padding:58px 6vw;gap:34px}
  .supply-intro{position:static}
  .process-line i{display:none}
  .cuts-image img{aspect-ratio:1.32 / 1}
  .buttons{display:grid}
  .btn{width:100%}
}


/* Button hover motion */
.btn,
.nav-button,
.dark-btn {
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
}

.btn:hover,
.nav-button:hover,
.dark-btn:hover {
  transform: translateY(-3px);
}

.primary:hover,
.nav-button:hover {
  box-shadow: 0 14px 30px rgba(200,165,106,.24);
}

.secondary:hover {
  background: rgba(200,165,106,.12);
  border-color: rgba(200,165,106,.9);
  box-shadow: 0 14px 30px rgba(0,0,0,.22);
}

.dark-btn:hover {
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
}


/* Contact card links */
.contact-list{
  display:grid;
  gap:14px;
  margin-top:26px;
}

.contact-row{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:14px;
  align-items:center;
  padding:14px 14px;
  border:1px solid rgba(0,0,0,.07);
  border-radius:14px;
  background:#fff;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.contact-row:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 34px rgba(0,0,0,.08);
  border-color:rgba(200,165,106,.42);
}

.contact-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(200,165,106,.13);
  color:#9a733f;
}

.contact-icon svg{
  width:23px;
  height:23px;
  fill:currentColor;
}

.contact-row strong{
  display:block;
  color:var(--ink);
  font-size:15px;
  margin-bottom:2px;
}

.contact-row small{
  display:block;
  color:var(--soft);
  font-size:15px;
  line-height:1.35;
}

.contact-card > p{
  display:none;
}

/* Image card hover */
.cuts-image{
  transition:transform .24s ease, box-shadow .24s ease;
}
.cuts-image:hover{
  transform:translateY(-3px);
  box-shadow:0 24px 58px rgba(15,15,15,.14);
}


/* Clean APM logo header */
.brand-clean,
.footer-logo{
  display:flex;
  align-items:center;
  gap:13px;
}

.brand-shield{
  width:52px;
  height:52px;
  object-fit:contain;
  display:block;
  flex:0 0 auto;
}

.brand-text strong{
  display:block;
  font-size:18px;
  line-height:1.05;
  color:var(--text);
  letter-spacing:.01em;
}

.brand-text small{
  display:block;
  margin-top:5px;
  color:var(--gold);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.18em;
}

.site-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.footer-logo .brand-text strong{
  color:var(--text);
}

@media(max-width:900px){
  .brand-shield{
    width:46px;
    height:46px;
  }
  .brand-text strong{
    font-size:16px;
  }
  .brand-text small{
    font-size:11px;
  }
  .site-footer{
    display:block;
  }
  .footer-logo{
    margin-bottom:16px;
  }
}


/* V22 dark logo correction */
.brand-clean{
  outline:none;
}

.brand-clean:focus{
  outline:none;
}

.brand-clean:focus-visible{
  outline:2px solid rgba(200,165,106,.7);
  outline-offset:6px;
  border-radius:10px;
}

.brand-shield{
  width:46px !important;
  height:46px !important;
  object-fit:contain;
  border-radius:0;
  background:transparent;
}

.brand-text strong{
  font-size:17px !important;
  line-height:1.05;
}

.brand-text small{
  font-size:11px !important;
  margin-top:5px;
}

.footer-logo .brand-shield{
  width:48px !important;
  height:48px !important;
}

@media(max-width:900px){
  .brand-shield{
    width:42px !important;
    height:42px !important;
  }
}
