/* ============================================================
   INNER PAGES — shared visual language with the homepage
   ============================================================ */
.inner-breadcrumb {
  max-width: 1200px;
  margin: 0 auto;
  padding: .9rem 1.5rem 0;
  color: var(--gray-600);
  font-size: .82rem;
}
.inner-breadcrumb ol { display:flex; flex-wrap:wrap; gap:.55rem; list-style:none; }
.inner-breadcrumb li + li::before { content:'/'; color:#94a3b8; margin-right:.55rem; }
.inner-breadcrumb a { color:var(--accent-dark); text-decoration:underline; text-underline-offset:3px; }
.inner-hero { padding-top:3.5rem; }
.inner-hero__aside {
  position:relative;
  padding:2rem;
  border:1px solid var(--gray-200);
  border-top:4px solid var(--gold-light);
  border-radius:var(--radius-lg);
  background:linear-gradient(155deg,#fff 0%,#fbf7ee 100%);
  box-shadow:0 24px 60px rgba(10,22,40,.10);
}
.inner-hero__eyebrow { color:var(--spice); text-transform:uppercase; letter-spacing:.1em; font-size:.72rem; font-weight:800; }
.inner-hero__aside h2 { color:var(--primary); font-family:var(--font-display); font-size:1.65rem; line-height:1.2; font-weight:400; margin:.7rem 0; }
.inner-hero__aside p { color:var(--gray-600); line-height:1.75; }
.inner-hero__aside a { display:inline-flex; gap:.5rem; margin-top:1.2rem; color:var(--accent-dark); font-weight:700; }
.inner-intro { padding-top:2rem; padding-bottom:1rem; }
.inner-callout { max-width:900px; margin:0 auto; padding:1.15rem 1.4rem; border-left:4px solid var(--accent); border-radius:0 12px 12px 0; background:#e8f6f2; color:#243b45; }
.inner-callout p { line-height:1.7; }
.inner-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; max-width:1050px; margin:0 auto; }
.inner-panel { min-width:0; padding:1.6rem; background:#fff; border:1px solid var(--gray-200); border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); }
.section--alt .inner-panel { background:rgba(255,255,255,.84); }
.inner-panel h3 { color:var(--primary); font-family:var(--font-display); font-weight:400; font-size:1.35rem; margin-bottom:.65rem; }
.inner-panel p, .inner-panel li { color:var(--gray-600); line-height:1.75; }
.inner-panel p + p { margin-top:.8rem; }
.inner-panel ul { margin:.8rem 0 0 1.2rem; }
.inner-panel li + li { margin-top:.35rem; }
.inner-related { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; max-width:1050px; margin:0 auto; }
.inner-related a { display:flex; flex-direction:column; gap:.45rem; padding:1.3rem; border:1px solid var(--gray-200); border-radius:var(--radius-lg); background:#fff; transition:transform .2s ease,box-shadow .2s ease; }
.inner-related a:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); }
.inner-related strong { color:var(--primary); font-size:1.03rem; }
.inner-related span { color:var(--gray-600); line-height:1.6; font-size:.92rem; }
.inner-end { padding-top:1rem; }
.inner-end__box { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:2.3rem; border-radius:var(--radius-lg); background:linear-gradient(145deg,var(--primary),var(--primary-soft)); color:var(--cream); }
.inner-end__box .section__eyebrow { color:var(--gold-light); }
.inner-end__box .section__title { color:var(--cream); margin-bottom:.6rem; }
.inner-end__box p { max-width:690px; color:#d6e0eb; line-height:1.75; }
.inner-end__box .btn { flex:none; }
.service-index-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.1rem; max-width:1100px; margin:0 auto; }
.service-index-card { display:flex; flex-direction:column; min-height:100%; padding:1.5rem; border:1px solid var(--gray-200); border-radius:var(--radius-lg); background:#fff; box-shadow:var(--shadow-sm); }
.service-index-card h2 { font-family:var(--font-display); font-weight:400; color:var(--primary); font-size:1.35rem; margin-bottom:.65rem; }
.service-index-card p { color:var(--gray-600); line-height:1.7; flex:1; }
.service-index-card a { color:var(--accent-dark); font-weight:800; margin-top:1rem; }
.case-row { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr); gap:2rem; align-items:center; padding:2rem 0; border-bottom:1px solid var(--gray-200); }
.case-row:last-child { border-bottom:0; }
.case-row__tag,.case-row__meta { color:var(--spice); font-size:.8rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.case-row__title { color:var(--primary); font:400 clamp(1.45rem,2.8vw,2rem)/1.2 var(--font-display); margin:.55rem 0; }
.case-row__desc { color:var(--gray-600); line-height:1.75; margin:.8rem 0 1rem; }
.case-row__image { overflow:hidden; border-radius:var(--radius-lg); background:var(--sand); }
.case-row__image img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.case-detail { max-width:920px; margin:0 auto; }
.case-detail__facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; margin:0 0 2rem; }
.case-detail__fact { padding:1rem; border:1px solid var(--gray-200); border-radius:12px; background:#fff; }
.case-detail__fact strong { display:block; color:var(--primary); margin-bottom:.25rem; }
.case-detail__fact span { color:var(--gray-600); line-height:1.5; font-size:.92rem; }
.case-detail h2 { color:var(--primary); font:400 clamp(1.45rem,3vw,2rem)/1.2 var(--font-display); margin:2rem 0 .7rem; }
.case-detail p,.case-detail li { color:var(--gray-600); line-height:1.8; }
.case-detail p + p { margin-top:.8rem; }
.case-detail ul { margin:.75rem 0 1rem 1.25rem; }
.case-detail__note { margin-top:2rem; padding:1rem 1.2rem; border-radius:12px; background:var(--sand); color:var(--gray-600); line-height:1.7; }
@media (max-width:900px) {
  .inner-grid { grid-template-columns:1fr; }
  .inner-related,.service-index-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-row { grid-template-columns:1fr; }
  .case-row__image { max-width:620px; }
}
@media (max-width:600px) {
  .inner-breadcrumb { padding-left:1.1rem; padding-right:1.1rem; }
  .inner-hero__aside { padding:1.4rem; }
  .inner-related,.service-index-grid { grid-template-columns:1fr; }
  .inner-end__box { align-items:flex-start; flex-direction:column; padding:1.5rem; }
  .case-detail__facts { grid-template-columns:1fr; }
}
