/* About James — refined page-specific layout. */
.about-page .about-hero {
  padding: 34px 0 32px;
  border-bottom: 1px solid rgba(210,162,58,.18);
  background:
    radial-gradient(circle at 78% 42%, rgba(210,162,58,.12), transparent 24rem),
    rgba(0,0,0,.18);
}
.about-page .about-hero-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 38px;
  align-items: center;
}
.about-page .about-hero-copy h1 {
  max-width: 15ch;
  font-size: clamp(2.15rem, 3.7vw, 3.85rem);
  line-height: 1.02;
  margin-bottom: 14px;
}
.about-page .about-hero-copy > p:not(.kicker) {
  max-width: 660px;
  color: var(--muted);
  font-size: .98rem;
  line-height: 1.65;
}
.about-page .about-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}
.about-page .about-hero-media {
  margin: 0;
  border: 1px solid var(--line);
  overflow: hidden;
  background: #050505;
}
.about-page .about-hero-media img {
  width: 100%;
  aspect-ratio: 5 / 4;
  max-height: 445px;
  object-fit: cover;
  object-position: center 34%;
}

.about-page .about-proof {
  border-bottom: 1px solid rgba(210,162,58,.18);
}
.about-page .about-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-left: 1px solid var(--line);
}
.about-page .about-proof-grid > div {
  min-height: 108px;
  padding: 20px 22px;
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.about-page .about-proof-grid strong {
  color: var(--gold-light);
  font-family: Marcellus, Georgia, serif;
  font-size: 1.25rem;
  font-weight: 400;
}
.about-page .about-proof-grid span {
  color: var(--muted);
  font-size: .83rem;
}

.about-page .about-section {
  padding: 50px 0;
  border-bottom: 1px solid rgba(210,162,58,.14);
}
.about-page .about-section-dark { background: rgba(0,0,0,.22); }
.about-page .about-section-head {
  max-width: 760px;
  margin-bottom: 26px;
}
.about-page .about-section-head p:not(.kicker) { color: var(--muted); }


/* Background & career: intentionally secondary and collapsed until requested. */
.about-page .about-history-section {
  padding-top: 42px;
  padding-bottom: 42px;
  background: rgba(0,0,0,.18);
}
.about-page .about-history-details {
  border: 1px solid var(--line);
  background: linear-gradient(145deg, rgba(210,162,58,.045), rgba(255,255,255,.008));
}
.about-page .about-history-details summary {
  position: relative;
  list-style: none;
  cursor: pointer;
  padding: 26px 72px 26px 28px;
}
.about-page .about-history-details summary::-webkit-details-marker { display: none; }
.about-page .about-history-details summary::after {
  content: "+";
  position: absolute;
  right: 28px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--gold-light);
  font-family: Marcellus, Georgia, serif;
  font-size: 2rem;
  font-weight: 400;
}
.about-page .about-history-details[open] summary::after { content: "−"; }
.about-page .about-history-summary-kicker {
  display: block;
  color: var(--gold-light);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 7px;
}
.about-page .about-history-summary-title {
  display: block;
  max-width: 820px;
  color: var(--cream);
  font-family: Marcellus, Georgia, serif;
  font-size: clamp(1.35rem, 2.2vw, 1.85rem);
  line-height: 1.18;
}
.about-page .about-history-summary-copy {
  display: block;
  max-width: 820px;
  margin-top: 8px;
  color: var(--muted);
  font-size: .9rem;
}
.about-page .about-history-summary-action {
  display: inline-block;
  margin-top: 13px;
  color: var(--gold-light);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.about-page .about-history-expanded {
  border-top: 1px solid var(--line);
  padding: 30px 28px 32px;
}
.about-page .about-history-head {
  max-width: 860px;
  margin-bottom: 28px;
}
.about-page .about-history-head h2 { max-width: 17ch; }
.about-page .about-history-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: 38px;
  align-items: start;
}
.about-page .about-chronology {
  position: relative;
  border-top: 1px solid var(--line);
}
.about-page .about-milestone {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 22px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(210,162,58,.22);
}
.about-page .about-milestone-date {
  min-height: 58px;
  border-right: 1px solid rgba(210,162,58,.32);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.about-page .about-milestone-date span {
  color: var(--muted);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.about-page .about-milestone-date strong {
  color: var(--gold-light);
  font-family: Marcellus, Georgia, serif;
  font-size: 1.55rem;
  font-weight: 400;
  line-height: 1.05;
}
.about-page .about-milestone h3 {
  margin: 0 0 6px;
  color: var(--cream);
  font-size: 1.13rem;
}
.about-page .about-milestone p {
  margin: 0;
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.6;
}
.about-page .about-milestone p strong { color: var(--cream); }
.about-page .about-milestone-now {
  background: linear-gradient(90deg, rgba(210,162,58,.055), transparent 72%);
}
.about-page .about-instrument-history { position: static; }

.about-page .about-history-grid {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 38px;
  align-items: start;
}
.about-page .about-history-panel {
  border: 1px solid var(--line);
  padding: 26px;
  background: linear-gradient(145deg, rgba(210,162,58,.06), rgba(255,255,255,.012));
}
.about-page .about-history-panel h3 {
  color: var(--gold-light);
  font-size: 1.45rem;
  margin-bottom: 12px;
}
.about-page .about-history-panel > p:not(.kicker) {
  color: var(--muted);
  font-size: .92rem;
}
.about-page .about-origin-grid { align-items: center; }
.about-page .about-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 38px;
  align-items: center;
}
.about-page .about-copy p { color: var(--muted); }
.about-page .about-copy p strong { color: var(--cream); }
.about-page .about-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 20px;
}
.about-page .about-links .text-link { color: var(--gold-light); font-weight: 800; }

.about-page .about-background-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 38px;
  align-items: start;
}
.about-page .about-background-panel {
  border: 1px solid var(--line);
  padding: 26px;
  background: linear-gradient(145deg, rgba(210,162,58,.06), rgba(255,255,255,.012));
}
.about-page .about-background-panel h3 { color: var(--gold-light); }
.about-page .about-instrument-list,
.about-page .about-service-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
.about-page .about-instrument-list span,
.about-page .about-service-list span {
  border: 1px solid rgba(210,162,58,.34);
  padding: 7px 10px;
  color: var(--muted);
  font-size: .82rem;
}

.about-page .about-business-media,
.about-page .about-performance-media {
  margin: 0;
  border: 1px solid var(--line);
  overflow: hidden;
  background: #050505;
}
.about-page .about-business-media img,
.about-page .about-performance-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-page .about-business-media img { aspect-ratio: 4 / 3; }
.about-page .about-performance-media img { aspect-ratio: 4 / 3; object-position: center 34%; }

.about-page .about-tuition-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.about-page .about-tuition-gallery figure {
  margin: 0;
  border: 1px solid var(--line);
  overflow: hidden;
  background: #050505;
}
.about-page .about-tuition-gallery img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.about-page .about-tuition-gallery figure:first-child img { object-position: center 58%; }
.about-page .about-tuition-gallery figure:last-child img { object-position: center; }
.about-page .about-business-note {
  margin-top: 18px;
  padding: 15px 17px;
  border-left: 2px solid var(--gold);
  background: rgba(210,162,58,.055);
  color: var(--muted);
  font-size: .9rem;
}

.about-page .about-luthiery-intro {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 38px;
  align-items: start;
  margin-bottom: 28px;
}
.about-page .about-luthiery-panel {
  border: 1px solid var(--line);
  padding: 25px;
  background: linear-gradient(145deg, rgba(210,162,58,.065), rgba(255,255,255,.012));
}
.about-page .about-luthiery-panel h3 { color: var(--gold-light); }
.about-page .about-luthiery-panel p { color: var(--muted); margin-bottom: 0; }

.about-page .about-craft-grid {
  display: grid;
  grid-template-columns: 1fr 1fr .72fr;
  gap: 12px;
  align-items: stretch;
  max-width: 1040px;
  margin: 0 auto;
}
.about-page .about-before-after {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid var(--line);
  background: #050505;
  min-width: 0;
}
.about-page .about-ba-image {
  position: relative;
  min-width: 0;
  overflow: hidden;
}
.about-page .about-ba-image + .about-ba-image { border-left: 1px solid var(--line); }
.about-page .about-ba-image img {
  width: 100%;
  height: 220px;
  min-height: 0;
  object-fit: cover;
}
.about-page .about-before-after:first-child .about-ba-image img { object-position: center; }
.about-page .about-ba-image span {
  position: absolute;
  left: 10px;
  bottom: 10px;
  padding: 5px 8px;
  background: rgba(0,0,0,.78);
  border: 1px solid rgba(244,210,124,.46);
  color: var(--gold-light);
  font-size: .67rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.about-page .about-bridge-card {
  margin: 0;
  border: 1px solid var(--line);
  background: #050505;
  display: flex;
  flex-direction: column;
}
.about-page .about-bridge-card img {
  width: 100%;
  flex: 1;
  height: 220px;
  min-height: 0;
  object-fit: cover;
  object-position: center 48%;
}
.about-page .about-bridge-card figcaption {
  padding: 11px 13px;
  color: var(--muted);
  font-size: .78rem;
}
.about-page .about-bridge-card figcaption strong {
  display: block;
  color: var(--gold-light);
  font-family: Marcellus, Georgia, serif;
  font-size: 1rem;
  font-weight: 400;
}
.about-page .about-woodwind-note {
  margin-top: 20px;
  padding: 16px 18px;
  border: 1px solid rgba(210,162,58,.26);
  color: var(--muted);
  font-size: .88rem;
}
.about-page .about-woodwind-note strong { color: var(--cream); }

.about-page .about-final {
  padding: 48px 0 56px;
  background: rgba(0,0,0,.3);
}
.about-page .about-final-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid var(--line);
}
.about-page .about-final-grid > div { padding: 28px; }
.about-page .about-final-grid > div + div { border-left: 1px solid var(--line); }
.about-page .about-final-grid p:not(.kicker) { color: var(--muted); }

@media (max-width: 1100px) {
  .about-page .about-history-layout { grid-template-columns: 1fr; }
  .about-page .about-instrument-history { position: static; }
}


@media (max-width: 980px) {
  .about-page .about-craft-grid { max-width: 760px; }
  .about-page .about-ba-image img,
  .about-page .about-bridge-card img { height: 210px; }
}

@media (max-width: 980px) {
  .about-page .about-hero-grid,
  .about-page .about-two-col,
  .about-page .about-background-grid,
  .about-page .about-history-grid,
  .about-page .about-luthiery-intro { grid-template-columns: 1fr; }
  .about-page .about-hero-media { max-width: 620px; }
  .about-page .about-proof-grid { grid-template-columns: repeat(2, 1fr); }
  .about-page .about-craft-grid { grid-template-columns: 1fr 1fr; }
  .about-page .about-bridge-card { grid-column: 1 / -1; }
  .about-page .about-bridge-card img { max-height: 360px; }
}

@media (max-width: 620px) {
  .about-page .about-history-section { padding-top: 40px; padding-bottom: 40px; }
  .about-page .about-milestone { grid-template-columns: 68px 1fr; gap: 14px; padding: 17px 0; }
  .about-page .about-milestone-date strong { font-size: 1.3rem; }
  .about-page .about-milestone p { font-size: .86rem; }
}

@media (max-width: 720px) {
  .about-page .about-hero { padding: 30px 0 28px; }
  .about-page .about-hero-copy h1 {
    font-size: clamp(2rem, 9vw, 2.85rem);
    max-width: 16ch;
  }
  .about-page .about-hero-copy > p:not(.kicker) { font-size: .94rem; }
  .about-page .about-hero-actions { margin-top: 16px; }
  .about-page .about-hero-media img { max-height: 390px; }
  .about-page .about-section { padding: 38px 0; }
  .about-page .about-proof-grid,
  .about-page .about-final-grid,
  .about-page .about-tuition-gallery,
  .about-page .about-craft-grid { grid-template-columns: 1fr; }
  .about-page .about-proof-grid > div { min-height: 86px; }
  .about-page .about-final-grid > div + div { border-left: 0; border-top: 1px solid var(--line); }
  .about-page .about-before-after { min-height: 0; }
  .about-page .about-ba-image img { height: 200px; min-height: 0; }
  .about-page .about-bridge-card { grid-column: auto; }
  .about-page .about-bridge-card img { height: 200px; max-height: none; }
}

@media (max-width: 640px) {
  .about-page .about-history-section { padding-top: 32px; padding-bottom: 32px; }
  .about-page .about-history-details summary { padding: 22px 56px 22px 22px; }
  .about-page .about-history-details summary::after { right: 20px; }
  .about-page .about-history-expanded { padding: 24px 20px 26px; }
}

/* About final enquiry routes: keep the four strands visually distinct. */
.about-page .about-final-head {
  max-width: 760px;
  margin: 0 0 24px;
}
.about-page .about-final-head h2 {
  margin-bottom: 10px;
}
.about-page .about-final-head > p:not(.kicker) {
  color: var(--muted);
  margin-bottom: 0;
}
.about-page .about-final-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 0;
  gap: 14px;
}
.about-page .about-final-grid > .about-final-card {
  padding: 24px;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.about-page .about-final-grid > .about-final-card + .about-final-card {
  border-left: 1px solid var(--line);
}
.about-page .about-final-card h3 {
  margin: 0 0 10px;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
}
.about-page .about-final-card p:not(.kicker) {
  flex: 1;
  margin-bottom: 18px;
}
@media (max-width: 720px) {
  .about-page .about-final-grid {
    grid-template-columns: 1fr;
  }
  .about-page .about-final-grid > .about-final-card + .about-final-card {
    border-left: 1px solid var(--line);
    border-top: 1px solid var(--line);
  }
}

/* Compact business enquiry strip with area-specific line icons. */
.about-page .about-final {
  padding: 38px 0 44px;
}
.about-page .about-final-head {
  max-width: 700px;
  margin-bottom: 18px;
}
.about-page .about-final-head .kicker {
  margin-bottom: 7px;
}
.about-page .about-final-head h2 {
  font-size: clamp(1.75rem, 2.6vw, 2.35rem);
  margin-bottom: 7px;
}
.about-page .about-final-head > p:not(.kicker) {
  font-size: .9rem;
  line-height: 1.55;
}
.about-page .about-final-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.about-page .about-final-grid > .about-final-card {
  padding: 17px 17px 16px;
  min-height: 0;
}
.about-page .about-final-card-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.about-page .about-final-card-top .kicker {
  margin: 0;
  font-size: .68rem;
  line-height: 1.15;
}
.about-page .about-final-icon {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  color: var(--gold-light);
  border: 1px solid rgba(210,162,58,.42);
  border-radius: 50%;
  background: rgba(210,162,58,.04);
}
.about-page .about-final-icon svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.about-page .about-final-card h3 {
  font-size: clamp(1.15rem, 1.45vw, 1.42rem);
  line-height: 1.15;
  margin-bottom: 7px;
}
.about-page .about-final-card p:not(.kicker) {
  margin-bottom: 13px;
  font-size: .82rem;
  line-height: 1.5;
}
.about-page .about-final-card .btn {
  min-height: 0;
  padding: 10px 12px;
  font-size: .68rem;
  letter-spacing: .105em;
  margin-top: auto;
}
@media (max-width: 1120px) {
  .about-page .about-final-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .about-page .about-final {
    padding: 32px 0 36px;
  }
  .about-page .about-final-grid {
    grid-template-columns: 1fr;
    gap: 9px;
  }
  .about-page .about-final-grid > .about-final-card {
    padding: 16px;
  }
  .about-page .about-final-grid > .about-final-card + .about-final-card {
    border-left: 1px solid var(--line);
  }
}


/* Luthiery examples: compact, uncropped and responsive. */
.about-page .about-craft-head {
  max-width: 760px;
  margin: 0 0 18px;
}
.about-page .about-craft-head h3 {
  margin: 0 0 7px;
  color: var(--cream);
  font-size: clamp(1.4rem, 2vw, 1.85rem);
  line-height: 1.18;
}
.about-page .about-craft-head p:not(.kicker) {
  max-width: 680px;
  margin: 0;
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.55;
}
.about-page .about-case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  margin: 0;
}
.about-page .about-case-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #050505;
  display: flex;
  flex-direction: column;
}
.about-page .about-before-after-compact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  height: clamp(180px, 15vw, 220px);
  background: #050505;
}
.about-page .about-case-shot,
.about-page .about-case-single {
  position: relative;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  background: #050505;
}
.about-page .about-case-shot + .about-case-shot {
  border-left: 1px solid var(--line);
}
.about-page .about-case-shot img,
.about-page .about-case-single img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  background: #050505;
}
.about-page .about-case-single {
  height: clamp(180px, 15vw, 220px);
}
.about-page .about-case-shot span {
  position: absolute;
  left: 8px;
  bottom: 8px;
  padding: 4px 7px;
  border: 1px solid rgba(244,210,124,.48);
  background: rgba(0,0,0,.82);
  color: var(--gold-light);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .11em;
  line-height: 1.2;
  text-transform: uppercase;
}
.about-page .about-case-copy {
  padding: 11px 12px 13px;
  border-top: 1px solid rgba(210,162,58,.18);
}
.about-page .about-case-copy h3 {
  margin: 0 0 5px;
  color: var(--gold-light);
  font-size: 1rem;
  line-height: 1.2;
}
.about-page .about-case-copy p {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.48;
}

/* No cropping on the detail shots: the complete bridge, bow slide and fingerboard wear stay visible. */
.about-page .about-case-card:nth-child(4) img,
.about-page .about-case-card:nth-child(5) img,
.about-page .about-case-card:nth-child(6) img {
  object-fit: contain;
  object-position: center;
}

@media (max-width: 1100px) {
  .about-page .about-case-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .about-page .about-before-after-compact,
  .about-page .about-case-single {
    height: clamp(185px, 23vw, 225px);
  }
}

@media (max-width: 720px) {
  .about-page .about-case-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .about-page .about-before-after-compact,
  .about-page .about-case-single {
    height: 220px;
  }
  .about-page .about-case-copy {
    padding: 10px 11px 12px;
  }
}

@media (max-width: 480px) {
  .about-page .about-before-after-compact {
    height: 205px;
  }
  .about-page .about-case-single {
    height: 210px;
  }
  .about-page .about-case-shot span {
    left: 6px;
    bottom: 6px;
    padding: 4px 6px;
  }
}


/* About lower-page refinement: open, editorial treatment instead of stacked boxes. */

/* Repair examples: frame the photography, not the whole card. */
.about-page .about-case-grid {
  column-gap: 20px;
  row-gap: 24px;
}
.about-page .about-case-card {
  border: 0;
  background: transparent;
  overflow: visible;
}
.about-page .about-before-after-compact,
.about-page .about-case-single {
  border: 1px solid rgba(210,162,58,.30);
  background: #050505;
  overflow: hidden;
}
.about-page .about-case-copy {
  padding: 10px 2px 0;
  border-top: 0;
}
.about-page .about-case-copy h3 {
  margin-bottom: 4px;
}

/* Woodwind information reads as a note rather than another boxed panel. */
.about-page .about-woodwind-note {
  max-width: 980px;
  margin: 24px 0 0;
  padding: 7px 0 7px 15px;
  border: 0;
  border-left: 2px solid rgba(210,162,58,.72);
  background: transparent;
  font-size: .84rem;
  line-height: 1.55;
}

/* Background & career: simple ruled accordion rather than a large rectangle. */
.about-page .about-history-section {
  padding-top: 34px;
  padding-bottom: 34px;
  background: rgba(0,0,0,.10);
}
.about-page .about-history-details {
  border: 0;
  border-top: 1px solid rgba(210,162,58,.34);
  border-bottom: 1px solid rgba(210,162,58,.34);
  background: transparent;
}
.about-page .about-history-details summary {
  padding: 24px 52px 24px 0;
}
.about-page .about-history-details summary::after {
  right: 2px;
  font-size: 1.7rem;
}
.about-page .about-history-summary-title {
  max-width: 760px;
  font-size: clamp(1.45rem, 2.15vw, 1.9rem);
}
.about-page .about-history-summary-copy {
  max-width: 760px;
}
.about-page .about-history-summary-action {
  margin-top: 11px;
}
.about-page .about-history-expanded {
  padding: 28px 0 8px;
  border-top: 1px solid rgba(210,162,58,.18);
}
.about-page .about-history-panel {
  border: 0;
  border-left: 1px solid rgba(210,162,58,.32);
  padding: 4px 0 4px 24px;
  background: transparent;
}

/* Final enquiry routes: open columns separated by fine rules. */
.about-page .about-final {
  padding: 40px 0 48px;
  background: rgba(0,0,0,.18);
}
.about-page .about-final-head {
  margin-bottom: 24px;
}
.about-page .about-final-grid {
  gap: 0;
  border-top: 1px solid rgba(210,162,58,.28);
  border-bottom: 1px solid rgba(210,162,58,.28);
}
.about-page .about-final-grid > .about-final-card {
  padding: 22px 24px 22px;
  border: 0;
  background: transparent;
}
.about-page .about-final-grid > .about-final-card + .about-final-card {
  border-left: 1px solid rgba(210,162,58,.24);
}
.about-page .about-final-grid > .about-final-card:first-child {
  padding-left: 0;
}
.about-page .about-final-grid > .about-final-card:last-child {
  padding-right: 0;
}
.about-page .about-final-card-top {
  gap: 9px;
  margin-bottom: 9px;
}
.about-page .about-final-icon {
  width: 26px;
  height: 26px;
  flex-basis: 26px;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.about-page .about-final-icon svg {
  width: 22px;
  height: 22px;
  stroke-width: 1.65;
}
.about-page .about-final-card h3 {
  font-size: clamp(1.12rem, 1.35vw, 1.36rem);
}
.about-page .about-final-card p:not(.kicker) {
  font-size: .8rem;
  margin-bottom: 12px;
}
.about-page .about-final-card .btn {
  padding: 9px 0 7px;
  border: 0;
  border-bottom: 1px solid rgba(210,162,58,.58);
  background: transparent;
  color: var(--gold-light);
  box-shadow: none;
}
.about-page .about-final-card .btn:hover,
.about-page .about-final-card .btn:focus-visible {
  background: transparent;
  border-bottom-color: var(--gold-light);
  color: var(--cream);
}
.about-page .about-final-card .btn-primary {
  background: transparent;
  color: var(--gold-light);
}

@media (max-width: 1120px) {
  .about-page .about-final-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .about-page .about-final-grid > .about-final-card {
    padding: 20px 22px;
  }
  .about-page .about-final-grid > .about-final-card:nth-child(odd) {
    padding-left: 0;
    border-left: 0;
  }
  .about-page .about-final-grid > .about-final-card:nth-child(even) {
    padding-right: 0;
    border-left: 1px solid rgba(210,162,58,.24);
  }
  .about-page .about-final-grid > .about-final-card:nth-child(n+3) {
    border-top: 1px solid rgba(210,162,58,.20);
  }
}

@media (max-width: 720px) {
  .about-page .about-case-grid {
    row-gap: 22px;
  }
  .about-page .about-woodwind-note {
    margin-top: 22px;
  }
  .about-page .about-history-section {
    padding-top: 28px;
    padding-bottom: 28px;
  }
  .about-page .about-history-details summary {
    padding: 21px 42px 21px 0;
  }
  .about-page .about-history-details summary::after {
    right: 0;
  }
  .about-page .about-history-expanded {
    padding-top: 24px;
  }
  .about-page .about-history-panel {
    border-left: 0;
    border-top: 1px solid rgba(210,162,58,.24);
    padding: 22px 0 0;
  }
  .about-page .about-final {
    padding: 34px 0 40px;
  }
  .about-page .about-final-grid {
    grid-template-columns: 1fr;
  }
  .about-page .about-final-grid > .about-final-card,
  .about-page .about-final-grid > .about-final-card:first-child,
  .about-page .about-final-grid > .about-final-card:last-child,
  .about-page .about-final-grid > .about-final-card:nth-child(odd),
  .about-page .about-final-grid > .about-final-card:nth-child(even) {
    padding: 18px 0;
    border-left: 0;
  }
  .about-page .about-final-grid > .about-final-card + .about-final-card,
  .about-page .about-final-grid > .about-final-card:nth-child(n+3) {
    border-top: 1px solid rgba(210,162,58,.20);
  }
}

/* Timeline date labels: keep year ranges on one line. */
.about-page .about-milestone {
  grid-template-columns: 112px minmax(0, 1fr);
}
.about-page .about-milestone-date {
  padding-right: 16px;
}
.about-page .about-milestone-date strong {
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  font-variant-numeric: tabular-nums;
}

@media (max-width: 620px) {
  .about-page .about-milestone {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 14px;
  }
  .about-page .about-milestone-date {
    padding-right: 10px;
  }
  .about-page .about-milestone-date strong {
    font-size: 1.12rem;
  }
}

@media (max-width: 390px) {
  .about-page .about-milestone {
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 12px;
  }
  .about-page .about-milestone-date strong {
    font-size: 1rem;
  }
}

/* About page width alignment: use the same shared content span as the rest of the site. */
.about-page .about-hero > .container,
.about-page .about-section > .container,
.about-page .about-history-section > .container,
.about-page .about-final > .container {
  width: min(var(--container), calc(100% - 40px));
  max-width: none;
  margin-inline: auto;
}

/* Let the hero occupy the shared page width rather than feeling inset. */
.about-page .about-hero-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  width: 100%;
}
.about-page .about-hero-copy h1 {
  max-width: 18ch;
}
.about-page .about-hero-copy > p:not(.kicker) {
  max-width: 720px;
}
.about-page .about-hero-media {
  width: 100%;
}

/* Remove narrower internal gallery/note caps that made the lower page look slimmer. */
.about-page .about-craft-grid,
.about-page .about-case-grid,
.about-page .about-woodwind-note {
  max-width: none;
  width: 100%;
}

/* Keep readable copy widths, but allow headings/section structures to align to the full grid. */
.about-page .about-section-head,
.about-page .about-craft-head,
.about-page .about-final-head {
  max-width: 820px;
}

@media (max-width: 980px) {
  .about-page .about-craft-grid,
  .about-page .about-case-grid {
    max-width: none;
  }
}

@media (max-width: 720px) {
  .about-page .about-hero > .container,
  .about-page .about-section > .container,
  .about-page .about-history-section > .container,
  .about-page .about-final > .container {
    width: min(100% - 26px, var(--container));
  }
  .about-page .about-hero-copy h1 {
    max-width: 16ch;
  }
}

/* =====================================================================
   ABOUT PAGE DIMENSION PARITY AUDIT
   Matches the shared dimensional system used by the finished site pages.
   Header values mirror the site's effective desktop/tablet/mobile header;
   hero values mirror the standard refined internal-page hero rhythm.
   ===================================================================== */

/* Guard against any inherited/page-specific scale drift. */
.about-page {
  font-size: 16px;
}

/* Shared desktop header parity (>1120px). */
@media (min-width: 1121px) {
  .about-page .header-inner {
    width: min(var(--container), calc(100% - 40px));
    min-height: 112px;
    grid-template-columns: 250px minmax(0, 1fr) 54px;
    gap: 44px;
    margin-inline: auto;
    align-items: center;
  }
  .about-page .logo-link {
    width: 250px;
  }
  .about-page .main-nav {
    justify-content: flex-start;
    gap: 12px;
  }
  .about-page .main-nav a {
    font-size: .76rem;
    letter-spacing: .07em;
    line-height: 1;
    padding: 14px 0;
  }
}

/* Shared compact-desktop/tablet-header parity (901-1120px). */
@media (min-width: 901px) and (max-width: 1120px) {
  .about-page .header-inner {
    width: min(var(--container), calc(100% - 40px));
    min-height: 112px;
    grid-template-columns: 230px minmax(0, 1fr) 54px;
    gap: 34px;
  }
  .about-page .logo-link {
    width: 230px;
  }
  .about-page .main-nav {
    justify-content: flex-start;
    gap: 9px;
  }
  .about-page .main-nav a {
    font-size: .70rem;
    letter-spacing: .045em;
    line-height: 1;
    padding: 14px 0;
  }
}

/* About hero now uses the same dimensional language as the site's
   standard refined internal-page heroes. */
.about-page .about-hero {
  padding: 64px 0 48px;
}
.about-page .about-hero > .container {
  width: min(var(--container), calc(100% - 40px));
  margin-inline: auto;
}
.about-page .about-hero-grid {
  width: 100%;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
  gap: 44px;
  align-items: start;
}
.about-page .about-hero-copy {
  max-width: 690px;
}
.about-page .about-hero-copy .kicker {
  font-size: .72rem;
  letter-spacing: .2em;
  margin-bottom: 10px;
}
.about-page .about-hero-copy h1 {
  max-width: 680px;
  font-size: clamp(2.05rem, 3.35vw, 3.35rem);
  line-height: 1.12;
  letter-spacing: .012em;
  margin-bottom: 16px;
}
.about-page .about-hero-copy > p:not(.kicker) {
  max-width: 650px;
  font-size: 1rem;
  line-height: 1.68;
}
.about-page .about-hero-actions {
  margin-top: 20px;
}
.about-page .about-hero-media {
  width: 100%;
  max-width: none;
}
.about-page .about-hero-media img {
  width: 100%;
  height: 360px;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center 34%;
}

/* Shared content span: no About-only narrowing of page sections. */
.about-page .about-proof > .container,
.about-page .about-section > .container,
.about-page .about-history-section > .container,
.about-page .about-final > .container {
  width: min(var(--container), calc(100% - 40px));
  max-width: none;
  margin-inline: auto;
}
.about-page .about-two-col,
.about-page .about-luthiery-intro,
.about-page .about-history-layout,
.about-page .about-final-grid,
.about-page .about-case-grid,
.about-page .about-craft-grid {
  width: 100%;
}

/* Keep normal site button sizing in the hero; compact buttons elsewhere
   remain intentionally compact where previously approved. */
.about-page .about-hero-actions .btn {
  min-height: 48px;
  padding: 0 26px;
  font-size: .82rem;
  letter-spacing: .12em;
}

@media (max-width: 900px) {
  .about-page .header-inner {
    width: min(var(--container), calc(100% - 40px));
    min-height: 86px;
    grid-template-columns: 240px 1fr 46px;
  }
  .about-page .logo-link {
    width: 240px;
  }
  .about-page .main-nav a {
    font-size: .92rem;
    letter-spacing: .095em;
  }
  .about-page .about-hero {
    padding: 52px 0 40px;
  }
  .about-page .about-hero-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .about-page .about-hero-copy {
    max-width: 700px;
  }
  .about-page .about-hero-media {
    max-width: 680px;
  }
  .about-page .about-hero-media img {
    height: 360px;
  }
}

@media (max-width: 640px) {
  .about-page .header-inner,
  .about-page .about-hero > .container,
  .about-page .about-proof > .container,
  .about-page .about-section > .container,
  .about-page .about-history-section > .container,
  .about-page .about-final > .container {
    width: min(100% - 26px, var(--container));
  }
  .about-page .header-inner {
    min-height: 86px;
    grid-template-columns: 200px 1fr 44px;
  }
  .about-page .logo-link {
    width: 200px;
  }
  .about-page .about-hero {
    padding: 44px 0 36px;
  }
  .about-page .about-hero-copy h1 {
    max-width: none;
    font-size: clamp(1.85rem, 8.5vw, 2.55rem);
  }
  .about-page .about-hero-copy > p:not(.kicker) {
    font-size: 1rem;
  }
  .about-page .about-hero-media img {
    height: 320px;
  }
  .about-page .about-hero-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .about-page .about-hero-actions .btn {
    width: 100%;
  }
}
