/* Services: a readable guide, not a gallery of cards. */
.services-intro { display:grid; grid-template-columns:1.2fr 1fr; gap:80px; align-items:end; padding-block:88px 56px; }
.services-intro h1 { font-size:clamp(44px,5vw,70px); line-height:1.08; letter-spacing:-.05em; }
.services-intro p { color:var(--secondary); font-size:16px; line-height:1.8; max-width:440px; }
.services-intro .service-small,.service-small { font-size:12px; color:var(--secondary); margin-top:20px; }
.service-index { display:flex; flex-wrap:wrap; gap:12px 28px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding-block:16px; }
.service-index a { font-size:13px; min-height:32px; display:flex; align-items:center; }
.service-index a:hover { text-decoration:underline; text-underline-offset:5px; }
.service-detail { display:grid; grid-template-columns:1fr 1.25fr; gap:96px; padding-block:64px; border-bottom:1px solid var(--line); scroll-margin-top:24px; }
.service-detail:last-child { border-bottom:0; }
.service-overview h2 { font-size:34px; letter-spacing:-1px; }
.service-price { margin-block:24px; }
.service-price > span { display:block; font-size:12px; color:var(--secondary); }
.service-price strong { display:block; font-size:42px; font-weight:400; letter-spacing:-1.5px; line-height:1.25; margin-block:4px; }
.service-overview > p { max-width:370px; font-size:15px; color:var(--secondary); line-height:1.8; }
.service-overview .button { margin-top:24px; }
.scope-summary { font-size:21px; line-height:1.5; letter-spacing:-.4px; }
.scope-facts { margin-top:14px; font-size:12px; color:var(--secondary); }
.service-scope h3 { font-size:14px; margin-top:28px; }
.service-scope ul { list-style:none; padding:0; margin:16px 0 24px; display:grid; gap:10px; }
.service-scope li { display:flex; gap:12px; font-size:14px; color:#505050; }
.service-scope li::before { content:'✓'; flex-shrink:0; }
.scope-note { font-size:12px; color:var(--secondary); line-height:1.75; max-width:520px; }
.services-explainer-band { background:var(--surface); }
.services-explainer { display:grid; grid-template-columns:1fr 1.3fr; gap:80px; padding-block:72px; }
.services-explainer > div > p { font-size:14px; line-height:1.8; color:var(--secondary); margin-top:24px; max-width:340px; }
.cost-factors { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.cost-factors h3 { font-size:17px; margin-bottom:12px; }
.cost-factors p { font-size:14px; color:var(--secondary); line-height:1.75; }
.services-questions { display:grid; grid-template-columns:1fr 1.5fr; gap:80px; padding-block:80px; }
.services-questions .text-link { margin-top:20px; }
.services-faq details { border-bottom:1px solid var(--line); }
.services-faq details:first-child { border-top:1px solid var(--line); }
.services-faq summary { display:flex; justify-content:space-between; align-items:center; gap:24px; cursor:pointer; list-style:none; padding-block:22px; font-size:15px; }
.services-faq summary::-webkit-details-marker { display:none; }
.services-faq summary > span { font-size:22px; }
.services-faq details[open] summary > span { transform:rotate(45deg); }
.services-faq details p { padding-bottom:24px; font-size:14px; line-height:1.8; color:var(--secondary); }
.services-closing { padding-block:56px 80px; border-top:1px solid var(--line); }
.services-closing > p { max-width:580px; color:var(--secondary); margin-top:20px; }
.services-closing .button { margin-top:24px; }
@media(max-width:999px) {
 .navigation { height:76px; } .nav-links,.nav-actions { display:none; } .menu-toggle { display:inline-flex; }
 .services-intro,.service-detail,.services-explainer,.services-questions { gap:40px; }
 .services-intro { padding-top:64px; }
 .service-detail { grid-template-columns:1fr 1.15fr; }
 .cost-factors { grid-template-columns:1fr; gap:24px; }
}
@media(max-width:699px) {
 .navigation { height:72px; }
 .demo-notice .container { flex-wrap:wrap; gap:4px 12px; } .demo-notice a { margin-left:0; }
 .services-intro,.service-detail,.services-explainer,.services-questions { grid-template-columns:1fr; gap:28px; padding-block:48px; }
 .services-intro h1 { font-size:clamp(42px,11vw,60px); }
 .service-index { gap:8px 24px; }
 .service-index a { min-height:40px; }
 .service-overview h2 { font-size:30px; }
 .service-price { margin-block:20px; }
 .service-overview > p { max-width:none; }
 .scope-summary { font-size:20px; }
 .cost-factors { grid-template-columns:1fr; }
 .services-closing { padding-block:40px 56px; }
 .footer-top { grid-template-columns:1fr 1fr; gap:32px 24px; } .footer-brand { grid-column:1/-1; }
 .footer-bottom { flex-wrap:wrap; gap:16px; } .footer-bottom > div { flex-wrap:wrap; }
 .modal { padding:28px 24px; } .modal .form-row { grid-template-columns:1fr; }
 input:not([type=checkbox]),textarea { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; animation:none!important; } }
