/* Service and project routes share the home typography, forms and navigation. */
.intent-links { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:24px; }
.intent-links a { font-size:12px; text-decoration:none; color:#e3e3db; border-bottom:1px solid #64665c; padding:8px 0; }
.intent-links span { margin-left:8px; color:#d7fa86; }
.project-external { display:inline-flex; gap:8px; min-height:44px; align-items:center; font-size:12px; color:#b4b4ad; text-underline-offset:4px; margin-top:8px; }
.detail-page .site-header { position:relative; background:#0b0b0b; border-bottom:1px solid #292a24; }
.detail-page h1 { font-size:clamp(42px,5.3vw,76px); line-height:1.06; letter-spacing:-.06em; margin:0 0 28px; }
.breadcrumb { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:42px; font-size:12px; color:#b7b7ae; }
.breadcrumb a { text-underline-offset:4px; }
.page-intro { display:grid; grid-template-columns:1.6fr 1fr; gap:72px; align-items:center; padding-block:44px 80px; }
.page-lead { max-width:680px; color:#bdbdb5; font-size:17px; line-height:1.75; }
.page-intro .button { margin-top:10px; }
.intro-note { color:#a9a99e; font-size:12px; margin:18px 0 0; }
.route-panel { align-self:center; background:#1c2018; border:1px solid #39422c; padding:34px; border-radius:14px; margin-top:80px; }
.route-panel .eyebrow { color:#d7fa86; letter-spacing:.07em; line-height:1.6; }
.route-panel ul { list-style:none; margin:0; padding:0; }
.route-panel li { font-size:16px; line-height:1.6; padding:18px 0; border-top:1px solid #3a4330; color:#d6dacd; }
.route-panel a { display:flex; justify-content:space-between; gap:16px; margin-top:24px; font-size:12px; color:#e6eadd; text-decoration:none; }
.scope-section { padding-block:80px; display:grid; grid-template-columns:1fr 1.1fr; gap:80px; border-bottom:1px solid #30322a; }
.scope-list { list-style:none; margin:0; padding:0; }
.scope-list li { padding:20px 0 20px 28px; border-bottom:1px solid #393b32; position:relative; color:#deded4; }
.scope-list li::before { content:'↗'; position:absolute; left:0; color:#d7fa86; }
.prep-note { margin-top:28px; border-left:2px solid #d7fa86; padding-left:24px; }
.prep-note h3 { font-size:16px; letter-spacing:-.025em; margin-bottom:8px; }
.prep-note p { color:#b4b4ad; font-size:14px; margin:0; }
.proof-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:36px; }
.proof-card { display:block; border:1px solid #34362e; border-radius:12px; background:#171914; overflow:hidden; text-decoration:none; }
.proof-card img { display:block; width:100%; height:auto; aspect-ratio:1440/1000; object-fit:cover; }
.proof-card>div { padding:24px; }.proof-card>div>span { font-size:11px; color:#b4b4ad; text-transform:uppercase; letter-spacing:.06em; }
.proof-card h3 { font-size:26px; letter-spacing:-.045em; margin:12px 0; display:flex; justify-content:space-between; gap:12px; }.proof-card h3 span { font-size:19px; color:#d7fa86; }
.proof-card p { font-size:12px; color:#b4b4ad; margin:0; }
.related-services { padding-block:42px; display:flex; flex-wrap:wrap; gap:24px 60px; justify-content:space-between; }
.related-services p { font-size:13px; color:#b4b4ad; margin:0; }.related-services>div { display:flex; flex-wrap:wrap; gap:18px 32px; }
.related-services a { font-size:14px; text-decoration:none; }.related-services a span { margin-left:12px; color:#d7fa86; }
.project-intro { padding-block:44px 54px; }
.project-title-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:80px; align-items:end; }
.project-title-grid h1 { font-size:clamp(40px,5vw,70px); margin-bottom:0; }
.project-title-grid .page-lead { font-size:16px; }
.text-link { display:inline-flex; gap:24px; align-items:center; min-height:44px; text-underline-offset:6px; font-size:14px; }
.case-figure { margin-block:0 50px; }
.case-figure img { display:block; width:100%; height:auto; border-radius:12px; border:1px solid #32342d; }
.case-figure figcaption { font-size:12px; color:#aaa; padding-top:12px; }
.case-reading { padding-block:20px 68px; display:grid; grid-template-columns:1fr 1.25fr; gap:80px; }
.case-points article { display:flex; gap:24px; padding:26px 0; border-top:1px solid #393b32; }
.case-points article>span { font-size:12px; color:#d7fa86; padding-top:6px; }
.case-points h3 { font-size:23px; line-height:1.3; letter-spacing:-.035em; margin-bottom:12px; }
.case-points p { font-size:15px; color:#b4b4ad; margin:0; }
.case-takeaway { padding-bottom:64px; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.case-takeaway p { max-width:640px; font-size:23px; letter-spacing:-.03em; line-height:1.5; margin:0; }
.mobile-contact-bar { display:none; }
@media(hover:hover) { .proof-card:hover { border-color:#a6b783; }.intent-links a:hover,.related-services a:hover { color:#d7fa86; } }
@media(max-width:991px) {
 .page-intro,.project-title-grid { gap:36px; grid-template-columns:1.3fr 1fr; }.route-panel { padding:24px; }.route-panel li { font-size:14px; }
 .scope-section,.case-reading { gap:40px; }.proof-grid { gap:16px; }.proof-card>div { padding:18px; }.proof-card h3 { font-size:23px; }
 .case-takeaway { align-items:flex-start; flex-direction:column; gap:16px; }
}
@media(max-width:767px) {
 .intent-links { gap:6px 18px; margin-top:16px; }.intent-links a { font-size:12px; }
 .page-intro { grid-template-columns:1fr; padding-block:28px 48px; gap:28px; }.breadcrumb { margin-bottom:32px; }
 .detail-page h1 { font-size:clamp(38px,8.5vw,55px); }.page-lead { font-size:15px; }
 .page-intro .button { width:100%; }.route-panel { margin-top:0; padding:24px; }.route-panel li { font-size:15px; }
 .scope-section { grid-template-columns:1fr; gap:18px; padding-block:52px; }
 .proof-grid { grid-template-columns:1fr; gap:24px; }.proof-card h3 { font-size:28px; }.proof-card>div { padding:24px; }
 .related-services { padding-block:32px; gap:20px; }.related-services>div { flex-direction:column; gap:16px; }
 .project-intro { padding-block:28px 32px; }.project-title-grid { grid-template-columns:1fr; gap:20px; }.project-title-grid h1 { font-size:40px; }.project-title-grid .page-lead { font-size:15px; }
 .case-figure { margin-bottom:32px; }.case-figure img { border-radius:6px; }.case-figure figcaption { font-size:11px; }
 .case-reading { grid-template-columns:1fr; gap:12px; padding-block:20px 40px; }.case-points article { gap:16px; }.case-points h3 { font-size:22px; }.case-points p { font-size:14px; }
 .case-takeaway { padding-bottom:44px; }.case-takeaway p { font-size:20px; }
 .mobile-contact-bar { position:fixed; z-index:90; left:16px; right:16px; bottom:max(12px,env(safe-area-inset-bottom)); display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:52px; padding:14px 20px; border:1px solid #c1de82; border-radius:10px; background:#d7fa86; color:#172011; box-shadow:0 8px 28px #0008; text-decoration:none; font-size:14px; font-weight:500; }
}
