/* Route-local design-review prototype; approved shell and other routes stay intact. */
.services-overview{--svc-ink:#0b0b0c;--svc-paper:#f0eee8;--svc-muted:#c4beb4;--svc-accent:#ff754d;--svc-paper-accent:#b33115;color:var(--svc-paper);background:var(--svc-ink)}
.services-overview *{box-sizing:border-box;min-width:0}
.services-overview h1,.services-overview h2,.services-overview h3,.services-overview p{margin:0}
.services-overview p,.services-overview li{line-height:1.6}
.services-overview h2{font-size:clamp(1.9rem,4.2vw,4.375rem);line-height:1.1;letter-spacing:-.025em;font-weight:800;text-transform:uppercase}
.services-overview h2 span{color:var(--svc-accent)}
.services-overview h3{font-size:clamp(1.2rem,1.75vw,1.65rem);line-height:1.22;letter-spacing:-.015em}
.services-overview a{color:inherit;text-decoration:none}
.services-overview a:focus-visible,.services-overview summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.services-overview .svc-label{font-size:.67rem;font-weight:700;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:var(--svc-accent)}
.svc-hero{padding:7.1rem clamp(1rem,6.5vw,7.5rem) 3.6rem;background:radial-gradient(ellipse at 8% 30%,rgba(240,74,35,.09),transparent 58%)}
.svc-crumbs{display:flex;align-items:center;gap:.75rem;margin-bottom:2.4rem;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--svc-muted)}
.svc-crumbs a{display:inline-flex;min-height:44px;align-items:center}
.svc-hero-grid{display:grid;grid-template-columns:1.13fr 1fr;align-items:start;gap:clamp(2rem,7vw,7rem)}
.services-overview h1{margin:.7rem 0 1.2rem;font-size:clamp(2.5rem,5.45vw,5.2rem);font-weight:800;line-height:1.05;letter-spacing:-.03em}
.services-overview h1 em{color:var(--svc-accent);font-style:normal}
.services-overview .svc-lead{max-width:41ch;font-size:clamp(1rem,1.35vw,1.2rem);color:#d8d1c7}
.svc-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;font-size:.85rem;font-weight:700;border-bottom:1px solid currentColor}
.svc-intro>.svc-text-link{color:var(--svc-accent);margin-top:1.05rem}
.services-overview .svc-intro-note{font-size:.78rem;color:var(--svc-muted);max-width:40ch;margin-top:.7rem}
.svc-choices>.svc-label{padding-bottom:1.05rem}
.svc-choices>a{display:grid;grid-template-columns:1.5rem 1fr 1rem;align-items:center;gap:.65rem;min-height:76px;border-top:1px solid #44403c;padding:1rem 0;transition:color .15s ease}
.svc-choices>a:last-of-type{border-bottom:1px solid #44403c}
.svc-num{font-size:.67rem;font-weight:700;letter-spacing:.08em;color:var(--svc-accent)}
.svc-choices strong{display:block;font-size:clamp(.98rem,1.25vw,1.15rem);font-weight:600;line-height:1.3}
.svc-choices small{display:block;font-size:.73rem;line-height:1.5;color:var(--svc-muted);margin-top:.3rem}
.svc-arrow{color:var(--svc-accent)}
.svc-choices>a:hover{color:var(--svc-accent)}
.services-overview .svc-choices-note{font-size:.73rem;color:var(--svc-muted);margin-top:.85rem}
.svc-band{padding:clamp(3rem,5vw,5rem) clamp(1rem,6.5vw,7.5rem)}
.svc-paper{background:var(--svc-paper);color:var(--svc-ink);--svc-accent:var(--svc-paper-accent);--svc-muted:#56524c}
.svc-section-head{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:clamp(2rem,6vw,6rem);margin-bottom:2.5rem}
.svc-section-head h2{margin-top:.7rem}
.svc-section-head>p{max-width:47ch;font-size:1rem;color:var(--svc-muted)}
.svc-offer{display:grid;grid-template-columns:1fr 1.03fr .65fr;gap:clamp(1.25rem,3.5vw,3.6rem);border-top:1px solid #b9b1a6;padding:2rem 0;scroll-margin-top:7rem}
.svc-offer-title h3{font-size:clamp(1.35rem,2vw,1.9rem);margin:.65rem 0}
.svc-offer-title>p:last-child{font-size:.87rem;color:var(--svc-muted);max-width:42ch}
.svc-output{padding-top:.05rem}
.svc-output ul{list-style:none;padding:0;margin:.65rem 0 0}
.svc-output li{display:grid;grid-template-columns:.7rem 1fr;gap:.25rem;margin:.55rem 0;font-size:.87rem}
.svc-output li::before{content:'—';color:var(--svc-accent)}
.services-overview .svc-price{font-size:clamp(1.3rem,1.8vw,1.7rem);font-weight:750;line-height:1.2;letter-spacing:-.02em;margin:.6rem 0}
.services-overview .svc-scope{font-size:.78rem;line-height:1.55;color:var(--svc-muted)}
.svc-detail{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:44px;margin-top:.8rem;font-size:.78rem;font-weight:750;border-bottom:1px solid var(--svc-accent)}
.svc-detail:hover,.svc-paper .svc-text-link:hover{color:var(--svc-accent)}
.svc-decision{display:grid;grid-template-columns:1fr 1.8fr;gap:clamp(1.5rem,3.5vw,3.6rem);border-top:2px solid var(--svc-ink);margin-top:.4rem;padding-top:1.8rem}
.svc-decision h3{margin-top:.65rem;max-width:19ch}
.svc-decision p{font-size:.88rem;color:var(--svc-muted)}
.svc-decision p+p{margin-top:.55rem}
.svc-decision strong{color:var(--svc-ink);font-weight:650}
.svc-decision .svc-text-link{margin-top:.6rem}
.svc-proofs{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.7vw,2.7rem)}
.svc-proof-image{display:block;background:#22201d;margin-bottom:1.25rem}
.svc-proof-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;filter:none}
.svc-proof-card>.svc-label{margin-bottom:.5rem}
.svc-proof-card>p:not(.svc-label){font-size:.85rem;color:var(--svc-muted);margin-top:.7rem;max-width:44ch}
.svc-proof-card .svc-text-link{margin-top:.6rem}
.svc-proof-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem 3rem;border-top:1px solid #44403c;margin-top:2.4rem;padding-top:1rem}
.svc-proof-footer>p{font-size:.76rem;color:var(--svc-muted);max-width:66ch}
.svc-proof-footer>a{flex-shrink:0}
.svc-process{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;list-style:none;padding:0;margin:0}
.svc-process li{border-top:1px solid #b9b1a6;padding-top:1.1rem}
.svc-process h3{margin:.7rem 0;font-size:1.15rem}
.svc-process p{font-size:.85rem;color:var(--svc-muted)}
.svc-care{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,6vw,6rem);border-top:1px solid #b9b1a6;margin-top:2.6rem;padding-top:1.7rem}
.svc-care h3{margin-top:.6rem;max-width:24ch}
.svc-care p{font-size:.87rem;color:var(--svc-muted)}
.svc-care .svc-text-link{margin-top:.6rem}
.svc-faq{display:grid;grid-template-columns:.85fr 1.5fr;gap:clamp(2rem,6vw,6rem);padding-top:0}
.svc-faq h2{margin-top:.7rem}
.svc-questions{border-top:1px solid #b9b1a6}
.svc-questions details{border-bottom:1px solid #b9b1a6}
.svc-questions summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:64px;padding:1rem 0;cursor:pointer;list-style:none;font-size:.98rem;font-weight:650;line-height:1.45}
.svc-questions summary::-webkit-details-marker{display:none}
.svc-questions summary span{flex-shrink:0;color:var(--svc-accent);font-size:1.4rem;line-height:1}
.svc-questions details[open] summary span{transform:rotate(45deg)}
.svc-questions details>p{font-size:.9rem;color:var(--svc-muted);max-width:66ch;padding:0 1.5rem 1.2rem 0}
.svc-next{display:grid;grid-template-columns:1.5fr .7fr;gap:clamp(2rem,6vw,6rem);align-items:end}
.svc-next h2{margin:.7rem 0 1.1rem}
.svc-next>div>p:not(.svc-label){max-width:50ch;font-size:.95rem;color:var(--svc-muted)}
.svc-button{display:inline-flex;justify-content:space-between;align-items:center;gap:3rem;min-height:52px;padding:.95rem 1.2rem;margin-top:1.4rem;background:var(--svc-accent);color:var(--svc-ink)!important;font-weight:750;font-size:.86rem;transition:background .15s ease}
.svc-button:hover{background:var(--svc-paper)}
.svc-next-note{border-left:1px solid #65594e;padding-left:1.5rem;padding-bottom:.1rem}
.svc-next-note p{margin-top:.7rem;font-size:.83rem!important}
@media(min-width:1700px){.svc-band,.svc-hero{padding-inline:max(7.5rem,calc((100vw - 1450px)/2))}}
@media(max-width:1000px){
 .svc-hero-grid{gap:2.5rem;grid-template-columns:1fr 1fr}
 .svc-offer{grid-template-columns:1fr 1fr;gap:1.4rem 2rem}
 .svc-investment{grid-column:2}
 .svc-offer-title{grid-row:span 2}
 .svc-offer-title h3{font-size:1.5rem}
 .svc-investment .svc-detail{max-width:18rem}
 .svc-process{grid-template-columns:repeat(2,1fr)}
 .svc-proofs{gap:1.3rem}
 .svc-proof-card h3{font-size:1.1rem}
 .svc-section-head{gap:2rem}
 .svc-decision{grid-template-columns:1fr 1.35fr}
}
@media(max-width:700px){
 .svc-hero{padding-top:5.1rem;padding-bottom:2.3rem}
 .svc-crumbs{margin-bottom:.7rem}
 .svc-hero-grid{grid-template-columns:1fr;gap:1.75rem}
 .services-overview h1{font-size:clamp(2.25rem,10vw,3.7rem);margin:.6rem 0 .8rem}
 .services-overview .svc-lead{font-size:1rem;max-width:40ch}
 .svc-intro>.svc-text-link{margin-top:.55rem}
 .services-overview .svc-intro-note{margin-top:.45rem;font-size:.76rem}
 .svc-choices>.svc-label{padding-bottom:.8rem}
 .svc-choices>a{min-height:73px;padding:.8rem 0}
 .svc-choices strong{font-size:1rem}
 .svc-band{padding-block:2.6rem}
 .svc-section-head{grid-template-columns:1fr;gap:1rem;margin-bottom:1.8rem}
 .svc-section-head>p{font-size:.92rem}
 .svc-offer{grid-template-columns:1fr;gap:1.2rem;padding:1.7rem 0;scroll-margin-top:5.4rem}
 .svc-offer-title{grid-row:auto}.svc-investment{grid-column:auto}
 .svc-offer-title h3{font-size:1.55rem}
 .svc-offer-title>p:last-child{max-width:none;font-size:.9rem}
 .svc-output li{font-size:.9rem;margin:.45rem 0}
 .svc-investment{border-left:2px solid #b9b1a6;padding-left:1rem}
 .services-overview .svc-price{font-size:1.4rem}
 .svc-investment .svc-detail{max-width:none}
 .svc-decision{grid-template-columns:1fr;gap:1rem;padding-top:1.5rem}
 .svc-decision h3{max-width:none;font-size:1.35rem}
 .svc-proofs{grid-template-columns:1fr;gap:2.3rem}
 .svc-proof-image{margin-bottom:1rem}
 .svc-proof-card h3{font-size:1.3rem}
 .svc-proof-card>p:not(.svc-label){font-size:.9rem;max-width:none}
 .svc-proof-footer{align-items:start;flex-direction:column;gap:.5rem;margin-top:1.8rem}
 .svc-process{gap:1.6rem 1.2rem}
 .svc-process h3{font-size:1.05rem}
 .svc-process p{font-size:.82rem}
 .svc-care{grid-template-columns:1fr;gap:1rem;margin-top:1.8rem;padding-top:1.5rem}
 .svc-faq{grid-template-columns:1fr;gap:1.4rem;padding-top:0}
 .svc-questions summary{font-size:.94rem}
 .svc-next{grid-template-columns:1fr;gap:1.8rem}
 .svc-next-note{padding-left:1rem}
 .svc-next>div>p:not(.svc-label){font-size:.9rem}
}
@media(max-width:350px){.svc-process{grid-template-columns:1fr}.svc-hero-grid{gap:1.4rem}.svc-label{letter-spacing:.09em!important}}
@media(prefers-reduced-motion:reduce){.services-overview a{transition:none}}
html.motion-off .services-overview a{transition:none}
