.service-detail { background: #f2f3ef; }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 34px; color: #66746f; font-size: 13px; }
.breadcrumb a { color: var(--green); font-weight: 700; }
.detail-hero { position: relative; overflow: hidden; padding: 95px 0 105px; background: radial-gradient(circle at 86% 12%, rgba(113,152,137,.24), transparent 29%), linear-gradient(160deg, #f7f8f5 0%, #e4e9e3 100%); }
.detail-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(25,58,49,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(25,58,49,.045) 1px, transparent 1px); background-size: 46px 46px; -webkit-mask-image: linear-gradient(90deg, transparent 25%, #000); mask-image: linear-gradient(90deg, transparent 25%, #000); }
.detail-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.15fr .85fr; gap: 85px; align-items: center; }
.detail-hero h1, .detail-section h2, .detail-scope h2, .detail-cta h2 { margin: 0; font: 600 clamp(42px, 5.2vw, 72px)/1.05 "Manrope", sans-serif; letter-spacing: -.052em; }
.detail-lead { max-width: 720px; margin: 30px 0 34px; color: var(--ink-soft); font-size: 19px; line-height: 1.65; }
.detail-actions { display: flex; align-items: center; gap: 26px; }
.detail-summary { padding: 38px; border: 1px solid rgba(255,255,255,.9); border-radius: 22px; background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(199,208,204,.84)); box-shadow: var(--shadow), inset 0 0 0 1px rgba(37,65,57,.07); }
.detail-summary > strong { display: block; margin: 25px 0 12px; font: 600 27px/1.25 "Manrope"; letter-spacing: -.035em; }
.detail-summary > p { margin: 0 0 28px; color: var(--ink-soft); line-height: 1.6; }
.detail-summary dl { margin: 0; border-top: 1px solid var(--line); }
.detail-summary dl div { display: grid; grid-template-columns: 75px 1fr; gap: 16px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.detail-summary dt { color: #687670; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.detail-summary dd { margin: 0; font-size: 14px; font-weight: 700; }
.detail-section { padding: 105px 0; }
.intro-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: end; margin-bottom: 55px; }
.detail-section h2, .detail-scope h2, .detail-cta h2 { font-size: clamp(34px, 4vw, 54px); }
.intro-copy { margin: 0; color: var(--ink-soft); font-size: 17px; line-height: 1.75; }
.situation-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.situation-grid article { min-height: 265px; padding: 28px; border: 1px solid var(--line); border-radius: 18px; background: #f8f9f6; }
.situation-grid article > span { color: var(--green); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.situation-grid h3 { margin: 55px 0 12px; font: 600 23px/1.25 "Manrope"; letter-spacing: -.035em; }
.situation-grid p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.6; }
.detail-scope { padding: 105px 0; color: #edf3ef; background: radial-gradient(circle at 0 0, rgba(136,190,164,.15), transparent 30%), var(--green-dark); }
.scope-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; align-items: start; }
.scope-grid > div > p:last-child { max-width: 520px; color: #aabbb4; font-size: 16px; line-height: 1.7; }
.scope-grid ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.16); }
.scope-grid li { position: relative; padding: 21px 8px 21px 22px; border-bottom: 1px solid rgba(255,255,255,.14); color: #d7e2dd; font-size: 14px; line-height: 1.45; }
.scope-grid li::before { content: ""; position: absolute; left: 0; top: 28px; width: 6px; height: 6px; border-radius: 50%; background: var(--green-bright); }
.detail-heading { display: flex; justify-content: space-between; align-items: end; gap: 60px; margin-bottom: 52px; }
.detail-heading .eyebrow { margin-bottom: 0; }
.detail-heading h2 { max-width: 650px; text-align: right; }
.process-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.process-grid article { min-height: 255px; padding: 28px 25px; border-right: 1px solid var(--line); }
.process-grid article:last-child { border-right: 0; }
.process-grid span { color: var(--green); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.process-grid h3 { margin: 50px 0 12px; font: 600 22px/1.25 "Manrope"; letter-spacing: -.03em; }
.process-grid p { margin: 0; color: var(--ink-soft); font-size: 14px; line-height: 1.6; }
.detail-faq { background: #e6eae4; }
.faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 95px; align-items: start; }
.faq-grid > div:first-child > p:last-child { max-width: 430px; color: var(--ink-soft); line-height: 1.65; }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { display: flex; justify-content: space-between; gap: 24px; padding: 24px 0; cursor: pointer; font: 600 17px/1.45 "Manrope"; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--green); font-size: 23px; transition: transform .2s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { margin: -5px 48px 25px 0; color: var(--ink-soft); line-height: 1.65; }
.detail-related { background: #f6f7f4; }
.related-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.related-grid a { display: flex; justify-content: space-between; align-items: center; min-height: 78px; padding: 20px 24px; border: 1px solid var(--line); border-radius: 12px; background: #fff; font: 600 15px/1.3 "Manrope"; transition: transform .2s, border-color .2s; }
.related-grid a:hover { transform: translateY(-2px); border-color: rgba(33,79,66,.45); }
.related-grid i { color: var(--green); font-style: normal; }
.detail-cta { padding: 0 0 105px; background: #f6f7f4; }
.detail-cta-card { display: grid; grid-template-columns: 1.1fr .9fr; gap: 80px; align-items: center; padding: 58px; border-radius: 26px; color: #edf3ef; background: linear-gradient(145deg, #173f34, #0b251f); box-shadow: var(--shadow); }
.detail-cta-card > div:first-child > p:last-child { max-width: 650px; color: #aabcb5; line-height: 1.65; }
.detail-cta-actions { display: grid; justify-items: start; gap: 22px; }
.detail-cta-actions .button { color: var(--green-dark); background: #dcebe3; }
.detail-cta-actions > a:last-child { color: #b6cec2; font-size: 14px; font-weight: 700; }

@media (max-width: 900px) {
  .detail-hero-grid, .intro-grid, .scope-grid, .faq-grid, .detail-cta-card { grid-template-columns: 1fr; gap: 48px; }
  .situation-grid { grid-template-columns: 1fr 1fr; }
  .process-grid { grid-template-columns: 1fr 1fr; }
  .process-grid article:nth-child(2) { border-right: 0; }
  .process-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .detail-heading { display: block; }
  .detail-heading .eyebrow { margin-bottom: 18px; }
  .detail-heading h2 { text-align: left; }
}

@media (max-width: 680px) {
  .detail-hero { padding: 62px 0 72px; }
  .detail-hero h1 { font-size: clamp(39px, 12vw, 54px); }
  .detail-lead { font-size: 16px; }
  .detail-actions { flex-direction: column; align-items: stretch; text-align: center; }
  .detail-summary { padding: 28px 22px; }
  .detail-section, .detail-scope { padding: 76px 0; }
  .situation-grid, .scope-grid ul, .related-grid { grid-template-columns: 1fr; }
  .situation-grid article { min-height: 220px; }
  .process-grid { grid-template-columns: 1fr; }
  .process-grid article { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--line); }
  .process-grid article:last-child { border-bottom: 0; }
  .faq-grid { gap: 35px; }
  .detail-cta { padding-bottom: 0; }
  .detail-cta-card { width: 100%; padding: 48px 22px; border-radius: 0; }
}
