.brand-logo {
  width: 52px;
  height: 52px;
  object-fit: cover;
  border-radius: 50%;
  flex: 0 0 auto;
}

.site-header nav { gap: 22px; }

.service-grid {
  grid-template-columns: repeat(3, 1fr);
}

.service-card { min-height: 450px; }

.service-card ul {
  list-style: none;
  padding: 0;
  margin: 8px 0 28px;
}

.service-card li {
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
}

.service-card.featured li {
  color: #e0e9e4;
  border-color: rgba(255,255,255,.14);
}

.work {
  background: #eef0ea;
  padding: 100px max(5vw, 24px);
}

.section-heading {
  max-width: 1180px;
  margin: 0 auto 48px;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 70px;
  align-items: end;
}

.section-heading h2 {
  margin: 0;
  font: 700 clamp(2.3rem, 4vw, 4.2rem)/1.08 "Libre Baskerville", serif;
  letter-spacing: -.03em;
}

.section-heading > p {
  color: var(--muted);
  font-size: 19px;
  margin: 0 0 5px;
}

.gallery {
  max-width: 1180px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 260px;
  gap: 14px;
}

.gallery figure {
  margin: 0;
  position: relative;
  overflow: hidden;
  background: var(--forest);
  border-radius: 4px;
}

.gallery figure.wide { grid-column: span 2; }
.gallery figure.tall { grid-row: span 2; }
.gallery figure.flyer { background: #09251c; }

.gallery img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}

.gallery .flyer img { object-fit: contain; }
.gallery figure:hover img { transform: scale(1.025); }

.gallery figcaption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 32px 16px 13px;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  background: linear-gradient(transparent, rgba(2,16,11,.86));
}

.footer {
  flex-wrap: wrap;
}

.footer-links {
  display: flex;
  gap: 18px;
}

.footer-links a { color: #dfe8e3; font-size: 13px; }
.footer-services { flex-basis: 100%; text-align: center; margin: 0!important; color: #92a69d; }

@media (max-width: 1000px) {
  .site-header nav { gap: 15px; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: auto; }
  .gallery { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 850px) {
  .brand-logo { width: 44px; height: 44px; }
  .section-heading { grid-template-columns: 1fr; gap: 24px; }
  .work { padding-top: 72px; padding-bottom: 72px; }
  .footer-links { justify-content: center; }
}

@media (max-width: 560px) {
  .gallery { grid-template-columns: 1fr; grid-auto-rows: 320px; }
  .gallery figure.wide { grid-column: auto; }
  .gallery figure.tall { grid-row: auto; }
  .gallery figure.flyer { min-height: 430px; }
}

/* Sorting service focus, extending the existing Gold Leaf theme. */
.hero h1{font-size:clamp(2.4rem,4.7vw,4.7rem);line-height:1.16;overflow-wrap:break-word}
.hero-content{max-width:780px}.hero-slogan{font-family:"Libre Baskerville",serif;font-size:clamp(1.25rem,2vw,1.75rem);color:var(--gold-light);margin:22px 0 0}.hero-copy{margin-top:20px}.hero-shade{background:linear-gradient(90deg,rgba(4,18,14,.96),rgba(9,29,23,.83) 45%,rgba(9,24,20,.24))}
.sorting-focus{max-width:1236px;margin:auto;padding:85px 28px}.sorting-focus .section-heading{gap:50px}.sorting-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0 0 30px}.sorting-steps article{border-top:3px solid var(--gold);padding:22px 0}.sorting-steps h3,.sorting-details h3{font-family:"Libre Baskerville",serif;font-size:1.25rem;line-height:1.4;margin:14px 0}.sorting-steps p,.sorting-details p{color:var(--muted);margin:0}.intro{padding-top:65px;border-top:1px solid var(--line)}.details-section h2{font:700 clamp(2rem,4vw,3.5rem)/1.2 "Libre Baskerville",serif;margin:0 0 40px}.sorting-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 50px}.sorting-details article{border-top:1px solid var(--line);padding-top:10px}.sorting-hero{min-height:610px;padding-bottom:70px}.brand small{font-size:12px;line-height:1.35}.eyebrow,.service-strip span,.contact-card small,blockquote footer{font-size:14px}.site-header{height:auto;min-height:82px;padding-top:12px;padding-bottom:12px}.site-header nav{gap:16px}.header-call{white-space:nowrap}.brand{min-width:0}.brand strong{letter-spacing:.1em}.brand small{max-width:245px}.button:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(max-width:1150px){.site-header nav,.header-call{display:none}.menu-button{display:block;margin-left:auto;background:transparent;color:#fff;border:1px solid #557168;border-radius:4px;font-size:21px;width:43px;height:43px;flex-shrink:0}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--forest);padding:15px 20px 24px}.mobile-menu.open{display:grid;gap:10px}.mobile-menu a{padding:10px}}
@media(max-width:850px){.sorting-steps,.sorting-details{grid-template-columns:1fr}.sorting-focus{padding:60px 24px}.sorting-focus .section-heading{gap:24px}.hero{padding-top:48px;min-height:680px}.sorting-hero{min-height:590px;padding-bottom:55px}.hero h1{font-size:clamp(2.15rem,7vw,3.6rem)}.brand small{font-size:12px}.service-strip{padding:0 12px}.service-strip span{letter-spacing:.03em;font-size:14px}.hero-shade{background:rgba(4,18,14,.79)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card,.gallery img{transition:none}}

/* Keep the strip in normal flow so wrapped hero text cannot overlap it. */
.hero{display:grid;grid-template-columns:minmax(0,1fr);padding:0;align-items:stretch}
.hero-content{width:100%;max-width:960px;padding:70px max(7vw,28px) 42px;align-self:center}
.service-strip{position:relative;left:auto;right:auto;bottom:auto;align-self:end}
.sorting-hero .hero-content{padding-bottom:70px}
@media(max-width:850px){.hero-content{padding:48px 24px 32px}.sorting-hero .hero-content{padding-bottom:48px}.service-strip span{padding:16px 7px}.microcopy{margin-bottom:0}}

/* Illustrative attic comparison: retain the entire image and readable disclosure. */
.possibilities{padding:75px max(5vw,24px);background:#eef0ea}
.possibilities .section-heading{gap:50px}
.transformation-example{max-width:1180px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.transformation-example>img{display:block;width:100%;height:auto}
.transformation-example figcaption{padding:22px 26px 24px}
.example-disclosure{font-size:16px;line-height:1.6;color:var(--forest);margin:0 0 16px}
.transformation-example h3{font:700 clamp(1.2rem,2.5vw,1.6rem)/1.4 "Libre Baskerville",serif;margin:0;color:var(--forest)}
.example-scope{max-width:1180px;margin:24px auto 0;font-size:17px;line-height:1.7;color:var(--muted)}
@media(max-width:850px){.possibilities{padding:60px 24px}.possibilities .section-heading{gap:24px}}
@media(max-width:520px){.possibilities{padding-left:18px;padding-right:18px}.transformation-example figcaption{padding:18px}.example-scope{font-size:16px}}
