/* Category-page layout follows the civil center; the criminal palette is retained. */
.page-investigation{--practice-hero-image:url('/assets/practice-hero/investigation-handcuffs.webp')}
.page-fraud{--practice-hero-image:url('/assets/practice-hero/fraud.webp')}
.page-violence{--practice-hero-image:url('/assets/practice-hero/violence.webp')}
.page-sexual-offenses{--practice-hero-image:url('/assets/practice-hero/sexual-offenses.webp')}
.page-traffic{--practice-hero-image:url('/assets/practice-hero/traffic-accident.webp')}
.page-cybercrime{--practice-hero-image:url('/assets/practice-hero/cybercrime-documentary.webp')}
.page-drugs{--practice-hero-image:url('/assets/practice-hero/drugs-documentary.webp')}
.practice-detail-hero{position:relative;isolation:isolate;background:#201719 var(--practice-hero-image,url('/assets/practice-detail-hero.png')) center/cover;color:#fff}
.practice-detail-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(32,23,25,.94) 0%,rgba(32,23,25,.84) 32%,rgba(24,17,20,.56) 60%,rgba(24,17,20,.2) 100%),linear-gradient(180deg,rgba(24,17,20,.24),transparent 35%,rgba(24,17,20,.14));z-index:-1}
.practice-detail-hero>.container{display:flex;flex-direction:column;padding-top:calc(var(--site-header-height) + 120px);padding-bottom:120px}
.practice-detail-nav{display:flex;align-items:center;flex-wrap:wrap;gap:14px 26px;margin:0 0 32px;padding-right:64px}
.practice-detail-nav a{font-size:16px;line-height:1.6;letter-spacing:-1px;color:#fff;padding-bottom:10px;border-bottom:2px solid transparent;white-space:nowrap}
.practice-detail-nav a[aria-current=page]{font-weight:700;border-color:#fff}
.practice-detail-nav a:hover{color:#f5f5f5;border-color:#f5f5f5}
.practice-detail-nav[data-field-picker]{display:none}
.practice-detail-field-picker{display:none;max-width:440px;margin:0 0 32px}
.practice-detail-select-control{position:relative}
.practice-detail-select-control::after{position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-70%) rotate(45deg);content:'';pointer-events:none}
.practice-detail-field-picker select{display:block;width:100%;height:52px;appearance:none;-webkit-appearance:none;padding:12px 44px 12px 15px;border:1px solid #ffffff40;border-radius:7px;background:#2c2225;color:#fff;font:600 16px/1.5 Pretendard,sans-serif;letter-spacing:-.025em}
.practice-detail-field-picker select option{background:#fff;color:#222}
.practice-detail-field-picker select:focus-visible{outline:none;border-color:#ffffff80}
.practice-detail-desktop-nav{position:relative;margin-bottom:44px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px;padding:16px 0;border:0;border-bottom:1px solid #ffffff30;background:transparent}
.practice-detail-location{display:flex;align-items:center;gap:20px;min-width:0;font-size:16px;line-height:1.6}
.practice-detail-location>a{color:#c8c1c3;transition:color .18s}
.practice-detail-location>a:hover{color:#fff}
.practice-detail-location-separator{flex:none;width:6px;height:6px;border-top:1px solid #a99da1;border-right:1px solid #a99da1;transform:rotate(45deg);font-size:0}
.practice-detail-location [aria-current]{font-size:16px;font-weight:600;letter-spacing:-.025em}
.practice-detail-desktop-nav details{flex:none}
.practice-detail-desktop-nav summary{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 18px;list-style:none;border:1px solid #fff;border-radius:3px;background:#fff;color:#30272a;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer;transition:background .18s,border-color .18s}
.practice-detail-desktop-nav summary::-webkit-details-marker{display:none}
.practice-detail-desktop-nav summary::marker{content:''}
.practice-detail-desktop-nav summary:hover,.practice-detail-desktop-nav details[open]>summary{background:#c62828;border-color:#c62828;color:#fff}
.practice-detail-navigation-chevron{width:7px;height:7px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .18s}
.practice-detail-desktop-nav details[open] .practice-detail-navigation-chevron{transform:translateY(2px) rotate(225deg)}
.practice-detail-navigation-panel{position:absolute;top:calc(100% + 12px);left:0;right:0;padding:26px 30px 30px;background:#fff;border:1px solid #e5e0e1;color:#201719;box-shadow:0 18px 45px #180f1433}
.practice-detail-desktop-nav details:not([open])>.practice-detail-navigation-panel{display:none}
.practice-detail-navigation-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}
.practice-detail-navigation-heading>span{color:#51484c;font-size:15px;font-weight:700;letter-spacing:-.025em}
.practice-detail-navigation-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 26px;list-style:none;margin:0;padding:0}
.practice-detail-navigation-list li{min-width:0;margin:0;padding:0;border-top:1px solid #e5e0e1}
.practice-detail-navigation-list a{display:flex;align-items:center;gap:12px;min-height:66px;padding:14px 10px;color:#3f383b;font-size:15px;font-weight:500;line-height:1.6;word-break:keep-all;transition:background .18s,color .18s}
.practice-detail-navigation-list a:is(:hover,[aria-current=page]){background:#faf2f2;color:#c62828}
.practice-detail-navigation-list a[aria-current=page]{font-weight:700}
.practice-detail-navigation-number{flex:none;font-size:11px;color:#a39599}
.practice-detail-navigation-list a[aria-current=page] .practice-detail-navigation-number{color:#c62828}
.practice-detail-navigation-arrow{margin-left:auto;opacity:0;color:#c62828}
.practice-detail-navigation-list a:is(:hover,:focus-visible,[aria-current=page]) .practice-detail-navigation-arrow{opacity:1}
.practice-detail-desktop-nav :is(a,summary):focus-visible{outline:2px solid #ef4444;outline-offset:4px}
@media(min-width:768px) and (max-width:1500px){.practice-detail-navigation-panel{right:76px}}
@media(min-width:768px) and (max-width:991px){.practice-detail-navigation-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}.practice-detail-navigation-list a{min-height:52px}}
@media(prefers-reduced-motion:reduce){.practice-detail-desktop-nav summary,.practice-detail-navigation-chevron,.practice-detail-navigation-list a{transition:none}}
.practice-detail-hero .intro-card{min-height:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none;text-align:left}
.practice-detail-hero .practice-detail-number{font-size:16px;line-height:1.5;font-weight:700;color:var(--brand-accent-bright);margin:0 0 5px;letter-spacing:-1px}
.practice-detail-hero h1{font-size:48px;line-height:1.5;font-weight:700;letter-spacing:-1px;color:#fff;margin:0}
.practice-detail-divider{display:block;width:18px;height:1px;background:#fff;margin:30px 0 24px}
.practice-detail-hero .intro-card .detail-tagline{max-width:1000px;font-size:22px;line-height:1.5;font-weight:400;letter-spacing:-1px;margin:0 0 24px;color:#fff}
.practice-detail-hero .intro-card .detail-summary{max-width:1000px;font-size:22px;line-height:1.5;font-weight:400;letter-spacing:-1px;margin:0;color:#fff}
.practice-detail-hero .detail-summary-line{display:block;text-wrap:pretty}
.practice-detail-hero .detail-summary-line+br{display:none}
.practice-detail-services{padding:110px 0 130px;background:#fff}
.practice-detail-services .civil-services-header{margin-bottom:36px}
.practice-detail-services .civil-services-heading{font-size:35px}
.practice-detail-section-heading{margin-bottom:60px}
.practice-detail-section-heading>p{font-size:14px;line-height:1.5;letter-spacing:0;font-weight:700;color:#868686;margin:0 0 5px}
.practice-detail-section-heading h2{font-size:35px;line-height:1.5;letter-spacing:-1px;font-weight:700;margin:0;color:#111}
.practice-detail-section-heading h2 span{color:#c62828}
.practice-detail-review{padding:110px 0 90px;background:#201719;overflow:hidden;color:#fff}
.practice-detail-review .dcl-rp{--dcl-accent:#c62828}
.practice-detail-review>.practice-detail-section-heading{text-align:center;margin-bottom:74px;padding:0 24px}
.practice-detail-review .practice-detail-section-heading>p{color:#f5f5f599}
.practice-detail-review .practice-detail-section-heading h2{color:#fff}
.practice-detail-review .practice-detail-section-heading h2 span{color:#f5f5f5}
.practice-detail-review .practice-detail-section-heading h2 .practice-review-accent{color:#c62828}
.practice-detail-process,.practice-detail-preparation{padding:110px 0;background:#fff}
.practice-detail-process .practice-detail-section-heading{text-align:left;margin-bottom:42px}
.response-process-grid[data-count='1']{grid-template-columns:1fr}
.response-process-list ol{list-style:none;margin:0;padding:0}
.response-process-step{list-style:none}
.practice-detail-preparation{background:var(--brand-primary);color:#fff}
.practice-detail-preparation .practice-detail-section-heading>p{color:#f5f5f5cc}
.practice-detail-preparation .practice-detail-section-heading h2{color:#fff}
.practice-detail-preparation .practice-detail-section-heading h2 .practice-heading-accent{color:var(--brand-accent-bright)}
.practice-preparation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.practice-preparation-card{display:flex;flex-direction:column;overflow:hidden;padding:0;background:transparent;border:1px solid #ffffff30;border-radius:4px}
.practice-preparation-image{aspect-ratio:1;overflow:hidden;background:#312729}
.practice-preparation-image img{display:block;width:100%;height:100%;object-fit:cover}
.practice-preparation-copy{flex:1;padding:28px 26px 32px}
.practice-preparation-number{display:block;font-size:16px;line-height:1.5;font-weight:700;color:var(--brand-accent-bright)}
.practice-preparation-card h3{font-size:20px;line-height:1.4;color:#fff;margin:15px 0}
.practice-preparation-card p{font-size:16px;line-height:1.7;color:#f5f5f5;margin:0}
.practice-detail-when{padding:130px 0;background:#f5f5f5}
.practice-detail-when-grid{display:grid;grid-template-columns:1fr 2fr;gap:42px}
.practice-detail-when .practice-detail-section-heading{margin:0}
.civil-list{list-style:none;margin:0;padding:0}
.practice-detail-solution .solution-grid{gap:42px;grid-template-columns:1fr 2fr}
.practice-detail-solution .eyebrow,.practice-detail-solution .solution-grid p{color:#f5f5f5cc}
.practice-detail-solution .solution-grid h2{font-size:36px;line-height:1.5;font-weight:700}
@media(max-width:1200px){.practice-detail-nav{gap:12px 20px}.practice-detail-nav a{font-size:14px}.practice-detail-hero .detail-summary{padding-right:50px}}
@media(max-width:1024px){.practice-preparation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-detail-when-grid{grid-template-columns:1fr;gap:36px}.practice-detail-when h2 br{display:none}.practice-detail-solution .solution-grid{gap:36px}}
@media(min-width:768px){.practice-detail-page .quick-menu{top:max(calc(50% - 140px),calc(var(--site-header-height) + 212px));transform:none}}
@media(max-width:767px){
  .practice-detail-hero{background-position:62% center}
  .practice-detail-hero::before{background:linear-gradient(90deg,rgba(32,23,25,.9),rgba(24,17,20,.64)),linear-gradient(180deg,rgba(24,17,20,.2),transparent 45%,rgba(24,17,20,.2))}
  .practice-detail-hero>.container{padding:calc(var(--site-header-height) + 24px) 0 44px}
  .practice-detail-hero .intro-card{order:1;min-height:0;padding:0 26px}
  .practice-detail-desktop-nav{display:none}
  .practice-detail-field-picker{display:block;order:0;max-width:none;margin:0 26px 28px}
  .practice-detail-field-picker select{height:48px;padding-block:11px;font-size:15px}
  .practice-detail-hero .practice-detail-number{font-size:14px;margin-bottom:4px}
  .practice-detail-hero h1{font-size:30px;line-height:1.4}
  .practice-detail-divider{width:14px;margin:23px 0 20px}
  .practice-detail-hero .intro-card .detail-summary,.practice-detail-hero .intro-card .detail-tagline{font-size:14px;line-height:1.8;letter-spacing:-.6px;padding:0;max-width:none}
  .practice-detail-hero .detail-summary-line{display:inline}
  .practice-detail-hero .detail-summary-line+br{display:initial}
  .practice-detail-nav{order:0;background:#201719;padding:18px 26px;margin:0 0 28px;gap:12px 18px}
  .practice-detail-nav a{font-size:12px;line-height:1.6;letter-spacing:-.6px;padding-bottom:4px}
  .practice-detail-services{padding:64px 0 72px}
  .practice-detail-services .civil-services-header{margin-bottom:28px}
  .practice-detail-services .civil-services-header p{text-align:left;font-size:12px}
  .practice-detail-section-heading{margin-bottom:32px}
  .practice-detail-section-heading>p{font-size:12px}
  .practice-detail-section-heading h2,.practice-detail-services .civil-services-heading{font-size:25px;line-height:1.5}
  .practice-detail-review{padding:64px 0 30px}
  .practice-detail-review>.practice-detail-section-heading{margin-bottom:34px}
  .practice-detail-review>.container{padding-inline:0}
  .practice-detail-process,.practice-detail-preparation{padding:64px 0}
  .practice-detail-process .practice-detail-section-heading{margin-bottom:28px}
  .practice-preparation-grid{grid-template-columns:1fr}
  .practice-preparation-card{padding:0}
  .practice-preparation-copy{padding:24px}
  .practice-preparation-image{aspect-ratio:4/3}
  .practice-preparation-number{font-size:14px}
  .practice-preparation-card h3{font-size:16px}
  .practice-preparation-card p{font-size:14px}
  .practice-detail-when{padding:64px 0}
  .practice-detail-when-grid{gap:28px}
  .practice-detail-when .practice-detail-section-heading h2{font-size:25px}
  .practice-detail-solution{padding:64px 0}
  .practice-detail-solution .solution-grid{grid-template-columns:1fr;gap:32px}
  .practice-detail-solution .solution-grid h2{font-size:28px}
}
