/* Service pages: continuation of the approved Studio nocturne design.
   All visual rules are scoped; widget, navigation and project illustrations retain their own styles. */
body.service-refinement { --home-bg:#101722; --home-panel:#1a2433; --home-text:#f4f0e9; --home-muted:#c3cad4; --home-accent:#f5b582; background:var(--home-bg); color:var(--home-text); }
.service-refinement main > .wrap,.service-refinement main > section > .wrap,.service-refinement .home-footer { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.service-refinement main > section { scroll-margin-top:28px; }
.service-refinement main p { color:var(--home-muted); }
.service-refinement main :is(h1,h2,h3) { color:var(--home-text); font-family:'Manrope',sans-serif; }
.service-refinement main .eyebrow { color:var(--home-accent); font:500 12px/1.6 'DM Sans',sans-serif; letter-spacing:.1em; }
.service-refinement main .eyebrow::before { display:none; }
.service-refinement main .accent { color:var(--home-accent); }
.service-refinement main .textlink { display:inline-flex; align-items:center; gap:14px; min-height:48px; padding-block:10px; color:var(--home-accent); font:500 15px/1.6 'DM Sans',sans-serif; border:0; text-decoration:underline; text-underline-offset:5px; }
.service-refinement main .btn { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:54px; padding:14px 24px; border:1px solid var(--home-accent); border-radius:7px; background:var(--home-accent); color:var(--home-bg); font:600 15px/1.5 'DM Sans',sans-serif; transform:none; }
.service-refinement main .btn:hover { background:#ffca9f; }
.service-refinement main a:focus-visible { outline:3px solid var(--home-accent); outline-offset:5px; }
.service-refinement main .btn:focus-visible { outline-color:#fff; }
.service-refinement .service-page-hero { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr); gap:72px; align-items:center; padding-block:40px 64px; }
.service-back { display:flex; gap:12px; align-items:center; width:fit-content; min-height:44px; margin-bottom:26px; color:#c3cad4; font:400 13px/1.5 'DM Sans',sans-serif; }
.service-back:hover { color:#f5b582; }
.service-page-copy > .eyebrow { margin:0 0 20px; }
.service-refinement .service-page-copy h1 { font:650 clamp(38px,4.1vw,60px)/1.12 'Manrope',sans-serif; letter-spacing:-.05em; margin:20px 0 24px; }
.service-page-copy h1 em { color:#f5b582; font-style:normal; }
.service-refinement .service-page-copy .lead { font:400 18px/1.75 'DM Sans',sans-serif; max-width:620px; margin:0; }
.service-page-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 26px; margin-top:28px; }
.service-page-index { background:#1a2433; border:1px solid #45536a; border-radius:14px; padding:28px; margin-top:62px; }
.service-refinement .service-page-index > p { color:#f5b582; font:500 12px/1.7 'DM Sans',sans-serif; letter-spacing:.06em; margin:0 0 20px; text-transform:uppercase; }
.service-page-index ol { list-style:none; margin:0; padding:0; }
.service-page-index li { border-top:1px solid #45536a; }
.service-page-index li a { display:grid; grid-template-columns:20px 1fr 14px; align-items:center; gap:14px; min-height:70px; padding:16px 0; color:#f4f0e9; }
.service-page-index li a span { color:#f5b582; font-size:12px; }
.service-page-index strong { font:500 16px/1.5 'DM Sans',sans-serif; }
.service-page-index li a:hover strong { color:#f5b582; }
.service-index-all { display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid #45536a; padding-top:18px; margin-top:8px; min-height:48px; color:#c3cad4; font:400 13px/1.5 'DM Sans',sans-serif; }
.service-refinement .service-detail-grid,.service-refinement .service-types .grid3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding-block:32px 60px; border-top:1px solid #45536a; }
.service-refinement .service-detail-grid article,.service-refinement .expertise-card { min-width:0; padding:0 28px; border:0; border-left:1px solid #45536a; background:transparent; border-radius:0; box-shadow:none; transform:none; }
.service-refinement :is(.service-detail-grid,.service-types .grid3) > article:first-child { border-left:0; padding-left:0; }
.service-refinement :is(.service-detail-grid,.service-types .grid3) > article:last-child { padding-right:0; }
.service-refinement :is(.service-detail-grid,.expertise-card,.service) .number { color:#f5b582; font:500 12px/1.5 'DM Sans',sans-serif; letter-spacing:.08em; }
.service-refinement .service-detail-grid h2,.service-refinement .expertise-card h2 { font:600 25px/1.3 'Manrope',sans-serif; letter-spacing:-.035em; margin:18px 0; min-height:66px; }
.service-refinement .service-detail-grid p,.service-refinement .expertise-card p { color:#c3cad4; font:400 16px/1.75 'DM Sans',sans-serif; margin:0; }
.service-refinement .split { display:grid; grid-template-columns:1.15fr 1fr; gap:90px; padding-block:64px; border-top:1px solid #45536a; align-items:start; }
.service-refinement .split h2,.service-refinement .section-head h2 { font:600 clamp(30px,3vw,43px)/1.18 'Manrope',sans-serif; letter-spacing:-.04em; margin:18px 0 26px; }
.service-refinement .checklist { margin:0; padding:0; }
.service-refinement .checklist li { color:#c3cad4; font:400 16px/1.6 'DM Sans',sans-serif; padding:12px 0 12px 27px; border-color:#354051; }
.service-refinement .checklist li::before { color:#f5b582; }
.service-refinement .pricebox { padding:32px; background:#1a2433; border:1px solid #45536a; border-radius:14px; }
.service-refinement .pricebox h3 { font:600 26px/1.3 'Manrope',sans-serif; letter-spacing:-.035em; margin:18px 0; }
.service-refinement .pricebox .price { color:#f5b582; font:600 32px/1.3 'Manrope',sans-serif; margin:0 0 20px; }
.service-refinement .pricebox .eyebrow { color:#f5b582; }
.service-refinement .pricebox > p { font-size:16px; line-height:1.7; }
.service-refinement .pricebox .checklist li { font-size:14px; }
.service-refinement .pricebox .btn { margin-top:24px; }
.service-refinement .pricebox > .small { font-size:12px; line-height:1.7; }
.service-refinement .section { padding-block:60px; }
.service-refinement .section-head { align-items:end; gap:40px; margin-bottom:30px; }
.service-refinement .section-head > p { color:#c3cad4; font:400 16px/1.7 'DM Sans',sans-serif; }
.service-refinement .service { border-color:#45536a; border-radius:0; padding:24px 0 0; background:transparent; }
.service-refinement .service h3 { font:600 25px/1.3 'Manrope',sans-serif; margin-block:20px 14px; }
.service-refinement .service p { font:400 16px/1.75 'DM Sans',sans-serif; }
.service-refinement #budget { border-block:1px solid #45536a; }
.service-refinement .budget-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.service-refinement .budget-grid article { background:transparent; border:0; border-top:1px solid #45536a; border-radius:0; padding:24px 0 0; }
.service-refinement .budget-grid h3 { font:600 23px/1.35 'Manrope',sans-serif; margin:18px 0; }
.service-refinement .budget-grid p { font:400 15px/1.75 'DM Sans',sans-serif; }
.service-refinement .cases-section { background:#1a2433; }
.service-refinement .cases-section .case-copy h3 { color:#f4f0e9; font-family:'Manrope',sans-serif; }
.service-refinement .cases-section .case-copy :is(p,.eyebrow) { color:#c3cad4; }
.service-refinement .case-arrow { color:#f5b582; border-color:#6c7a90; }
.service-refinement .feature-case:hover .case-arrow { color:#101722; background:#f5b582; }
.service-refinement .case-art :is(h3,p) { color:inherit; }
.service-refinement .case-art .elevan-ui h3 { color:#fff; }
.service-refinement .case-art .legal-ui h3 { color:#302843; }
.service-refinement .project-card { display:block; border:1px solid #45536a; background:#1a2433; border-radius:14px; overflow:hidden; padding:24px; }
.service-refinement .project-card h3 { color:#f4f0e9; }
.service-refinement .project-card .meta { color:#f5b582; }
.service-refinement .project-card p { color:#c3cad4; }
.service-refinement .project-card:hover { border-color:#f5b582; transform:none; }
.service-refinement .home-footer { margin-top:0; padding:46px 0 95px; border-top:1px solid #45536a; background:transparent; color:#f4f0e9; }
.service-refinement .home-footer .brand-logo { width:156px; height:52px; }
@media(max-width:1050px) { .service-refinement .service-page-hero { gap:36px; grid-template-columns:1.35fr 1fr; } .service-page-index { padding:22px; } .service-refinement .split { gap:40px; } }
@media(max-width:800px) {
 .service-refinement main > .wrap,.service-refinement main > section > .wrap,.service-refinement .home-footer { width:calc(100% - 48px); }
 .service-refinement .service-page-hero { grid-template-columns:1fr; padding-block:24px 40px; gap:32px; }
 .service-page-index { margin:0; }
 .service-refinement .split { grid-template-columns:1fr; gap:30px; padding-block:40px; }
 .service-refinement .service-detail-grid,.service-refinement .service-types .grid3,.service-refinement .budget-grid { grid-template-columns:1fr; gap:0; padding-bottom:30px; }
 .service-refinement :is(.service-detail-grid,.service-types .grid3) > article { border-left:0; border-top:1px solid #45536a; padding:24px 0; }
 .service-refinement :is(.service-detail-grid,.service-types .grid3) > article:first-child { border-top:0; padding-top:0; }
 .service-refinement .service-detail-grid h2,.service-refinement .expertise-card h2 { min-height:0; font-size:25px; }
 .service-refinement .budget-grid article { padding:24px 0; }
 .service-refinement .section { padding-block:40px; }
 .service-refinement .section-head { flex-direction:column; align-items:start; gap:12px; }
 .service-refinement .section-head h2 { margin-bottom:10px; }
 .service-refinement .pricebox { padding:26px; }
}
@media(max-width:480px) {
 .service-refinement main > .wrap,.service-refinement main > section > .wrap,.service-refinement .home-footer { width:calc(100% - 40px); }
 .service-refinement .service-page-copy h1 { font-size:38px; }
 .service-refinement .service-page-copy .lead { font-size:17px; }
 .service-page-actions { align-items:flex-start; flex-direction:column; gap:8px; }
 .service-page-index { padding:20px; }
 .service-refinement .pricebox { padding:22px; }
}
/* Readable status caption inside the preserved legal-product illustration. */
.service-refinement .case-art .legal-ui .mock-label { color:#635b73; font-size:12px; }

/* Reuse the existing inline-entry observer to avoid two competing Alicia buttons. */
.service-refinement .service-page-copy.hero-copy { animation:none; }
.service-refinement.home-inline-alicia-visible .alice-launch:not([aria-expanded=true]) { display:none; }
