
:root{
  --clp-paper:#f4f1eb;
  --clp-paper-2:#ebe7df;
  --clp-ink:#111417;
  --clp-ink-2:#252a2e;
  --clp-muted:#697177;
  --clp-line:#d7d1c8;
  --clp-line-2:#c5beb4;
  --clp-white:#fff;
  --clp-red:#9e272c;
  --clp-red-deep:#71181d;
  --clp-red-pale:#f5e8e8;
  --clp-amber:#9a6b22;
  --clp-amber-pale:#fbf3df;
  --clp-green:#1f604a;
  --clp-radius:18px;
  --clp-radius-sm:11px;
  --clp-shadow:0 22px 65px rgba(25,22,18,.09);
  --clp-shadow-sm:0 8px 28px rgba(25,22,18,.06);
  --clp-max:1240px;
}
/* Shared production detail contract: Joomla owns navigation and breadcrumb. */
.clp-tool-shared .result,.clp-tool-shared .result-card,.clp-tool-shared .cta{color:#fff}
.clp-tool-shared .result a,.clp-tool-shared .result-card a,.clp-tool-shared .cta a{color:#fff}
.clp-tool-shared .result .muted,.clp-tool-shared .result-card .muted,.clp-tool-shared .result-note{color:#c8d0d4}
.clp-tool-shared .result label,.clp-tool-shared .result-card label{color:#eef2f3}
body:has(.clp-tool-shared) .site-header .desktop-nav>a,body:has(.clp-tool-shared) .site-header .nav-trigger,body:has(.clp-tool-shared) .site-header .brand-mark{color:#f7f4ec!important}
body:has(.clp-tool-shared) .site-header .mega-menu,body:has(.clp-tool-shared) .site-header .mega-menu a{color:#0b2138!important}
body:has(.clp-tool-shared) .mobile-menu,body:has(.clp-tool-shared) .mobile-menu a,body:has(.clp-tool-shared) .mobile-menu button{color:#f7f4ec!important}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--clp-ink);
  font:15.5px/1.62 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  background:
    linear-gradient(rgba(17,20,23,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(17,20,23,.018) 1px,transparent 1px),
    var(--clp-paper);
  background-size:100% 34px,34px 100%,auto;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
a{color:inherit}
button,input,select,textarea{font:inherit}
.clp-shell{min-height:100vh}
.clp-utility{
  background:#111417;color:#d9dcde;border-bottom:1px solid #292d31;
  font-size:11.5px
}
.clp-utility__inner,.clp-header__inner,.clp-footer__inner{
  width:min(var(--clp-max),calc(100% - 40px));margin:auto
}
.clp-utility__inner{
  min-height:37px;display:flex;align-items:center;justify-content:space-between;gap:20px
}
.clp-utility__left{letter-spacing:.025em}
.clp-utility__right{display:flex;gap:18px}
.clp-utility a{text-decoration:none;color:#c8cccf}
.clp-utility a:hover{color:#fff}
.clp-header{
  position:sticky;top:0;z-index:50;
  background:rgba(244,241,235,.94);
  border-bottom:1px solid rgba(197,190,180,.8);
  backdrop-filter:blur(16px)
}
.clp-header__inner{
  min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:28px
}
.clp-brand{text-decoration:none;display:flex;align-items:center;gap:13px;min-width:max-content}
.clp-brand__mark{
  width:38px;height:38px;display:grid;place-items:center;
  border:1px solid #17191c;background:#17191c;color:#fff;
  font:700 11px/1 Georgia,serif;letter-spacing:.08em
}
.clp-brand__name{font:700 19px/1.05 Georgia,"Times New Roman",serif}
.clp-brand__strap{display:block;margin-top:3px;color:#6c7378;font:700 9px/1.2 ui-sans-serif;letter-spacing:.1em;text-transform:uppercase}
.clp-nav{display:flex;align-items:center;gap:24px}
.clp-nav a{
  position:relative;padding:28px 0 25px;text-decoration:none;
  font-size:12px;font-weight:760;color:#33393d
}
.clp-nav a:hover{color:var(--clp-red)}
.clp-nav a.active:after{
  content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--clp-red)
}
.clp-nav__cta{
  padding:10px 14px!important;border:1px solid #24282b!important;
  background:#191c1f;color:#fff!important
}
.clp-mobile-title{display:none}
.clp-tool.wrap{
  width:min(var(--clp-max),calc(100% - 40px));max-width:none;
  margin:0 auto;padding:0 0 88px
}
.clp-hero{
  display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:44px;
  padding:58px 0 46px;border-bottom:1px solid var(--clp-line)
}
.clp-hero__eyebrow{
  margin-bottom:18px;color:#6c6e6c;font-size:10.5px;font-weight:850;
  letter-spacing:.145em;text-transform:uppercase
}
.clp-hero h1,h1{
  margin:0 0 17px;max-width:930px;
  font:700 clamp(43px,5vw,68px)/.99 Georgia,"Times New Roman","Songti SC",serif;
  letter-spacing:-.032em;text-wrap:balance
}
.clp-hero .dek,.dek{
  margin:0;max-width:850px;color:#596168;font-size:17px;line-height:1.7
}
.clp-hero__aside{
  align-self:end;border-left:1px solid var(--clp-line-2);padding-left:24px
}
.clp-aside-kicker{font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:#777b7e}
.clp-route-id{font:700 44px/1 Georgia,serif;margin:8px 0 9px;color:#1a1d20}
.clp-aside-copy{color:#666e73;font-size:12.5px;line-height:1.55}
.tool-meta{
  display:flex;flex-wrap:wrap;gap:0;margin:25px 0 0;border-top:1px solid var(--clp-line);border-bottom:1px solid var(--clp-line)
}
.tool-chip{
  position:relative;display:inline-flex;align-items:center;min-height:42px;
  padding:0 16px 0 0;margin-right:16px;color:#51595e;
  font-size:11px;font-weight:800;letter-spacing:.025em
}
.tool-chip:after{content:"";width:1px;height:14px;background:var(--clp-line-2);margin-left:16px}
.tool-chip:last-child:after{display:none}
.tool-chip:before{content:none!important}
.clp-process{
  display:grid;grid-template-columns:repeat(4,1fr);
  margin:0 0 30px;border-bottom:1px solid var(--clp-line)
}
.clp-process__step{
  position:relative;min-height:91px;padding:18px 20px 18px 50px;
  border-right:1px solid var(--clp-line)
}
.clp-process__step:first-child{border-left:1px solid var(--clp-line)}
.clp-process__num{
  position:absolute;left:16px;top:19px;color:var(--clp-red);
  font:800 10px/1 ui-sans-serif;letter-spacing:.1em
}
.clp-process__label{font:700 14px/1.2 Georgia,serif}
.clp-process__copy{margin-top:5px;color:#777e83;font-size:10.5px;line-height:1.4}
.grid{
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(345px,.92fr);
  gap:28px;align-items:start
}
.card{
  border:1px solid var(--clp-line);border-radius:0;
  background:rgba(255,255,255,.91);padding:30px;
  box-shadow:none
}
.grid>.card:first-child{
  position:relative;background:rgba(255,255,255,.96);
  box-shadow:var(--clp-shadow-sm)
}
.grid>.card:first-child:before{
  content:"INPUT DESK";position:absolute;right:20px;top:19px;
  color:#979a9b;font-size:9px;font-weight:900;letter-spacing:.14em
}
.card h2{
  margin:0 0 25px;padding-right:80px;
  font:700 27px/1.15 Georgia,"Times New Roman","Songti SC",serif;letter-spacing:-.015em
}
.card h3{
  margin:30px -30px 16px;padding:17px 30px 0;border-top:1px solid var(--clp-line);
  color:#72777a;font-size:9.5px;font-weight:850;letter-spacing:.145em;text-transform:uppercase
}
.field{margin-bottom:19px}
.label{display:block;margin:0 0 7px;color:#2d3236;font-size:12.8px;font-weight:770}
/* Scoped to tool content so site header search/nav controls are not restyled */
.legal-tool-page input,.legal-tool-page select,.legal-tool-page textarea,
.clp-tool input,.clp-tool select,.clp-tool textarea{
  width:100%;min-height:49px;padding:12px 13px;
  border:1px solid var(--clp-line-2);border-radius:2px;
  background:#fff;color:#16191c;outline:none;
  transition:border-color .15s,box-shadow .15s,background .15s
}
.legal-tool-page textarea,.clp-tool textarea{min-height:92px;resize:vertical;line-height:1.55}
.legal-tool-page input::placeholder,.legal-tool-page textarea::placeholder,
.clp-tool input::placeholder,.clp-tool textarea::placeholder{color:#9b9fa2}
.legal-tool-page input:hover,.legal-tool-page select:hover,.legal-tool-page textarea:hover,
.clp-tool input:hover,.clp-tool select:hover,.clp-tool textarea:hover{border-color:#989188}
.legal-tool-page input:focus,.legal-tool-page select:focus,.legal-tool-page textarea:focus,
.clp-tool input:focus,.clp-tool select:focus,.clp-tool textarea:focus{border-color:var(--clp-red);box-shadow:0 0 0 3px rgba(158,39,44,.09)}
.help{margin-top:6px;color:#777e82;font-size:11.8px;line-height:1.52}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.check{
  display:flex;gap:10px;align-items:flex-start;margin:6px 0;padding:10px 0;border-bottom:1px solid #ebe7e1
}
.legal-tool-page .check input,.clp-tool .check input{width:17px;height:17px;min-height:auto;margin:2px 0 0;accent-color:var(--clp-red)}
.check strong{font-size:12.8px}
.legal-tool-page button,.legal-tool-page .primary,.legal-tool-page .secondary,
.clp-tool button,.clp-tool .primary,.clp-tool .secondary{
  min-height:48px;border-radius:1px;padding:13px 18px;
  font-weight:800;font-size:12.5px;letter-spacing:.02em;cursor:pointer;
  transition:background .15s,color .15s,transform .1s
}
.legal-tool-page button:active,.legal-tool-page .primary:active,.legal-tool-page .secondary:active,
.clp-tool button:active,.clp-tool .primary:active,.clp-tool .secondary:active{transform:translateY(1px)}
.legal-tool-page .primary,.clp-tool .primary{
  width:100%;border:1px solid var(--clp-red-deep);
  background:var(--clp-red);color:#fff
}
.legal-tool-page .primary:hover,.clp-tool .primary:hover{background:var(--clp-red-deep)}
.legal-tool-page .secondary,.clp-tool .secondary{border:1px solid var(--clp-line-2);background:#f5f2ed;color:#24282c}
.legal-tool-page .secondary:hover,.clp-tool .secondary:hover{background:#ebe6df}
.actions{display:flex;gap:10px;flex-wrap:wrap}
.actions .primary,.actions .secondary{width:auto;flex:1 1 180px}
.result,.result-card{
  position:sticky;top:102px;
  overflow:hidden;border-color:#1d2023;background:#191c1f;color:#fff;
  box-shadow:var(--clp-shadow)
}
.result:before,.result-card:before{
  content:"RESULT / ROUTE OUTPUT";display:block;margin:-30px -30px 26px;padding:12px 20px;
  border-bottom:1px solid #33373a;background:#151719;color:#9ea4a8;
  font-size:9px;font-weight:900;letter-spacing:.14em
}
.result .eyebrow,.result-card .eyebrow{color:#aeb4b8}
.eyebrow{color:#777d80;font-size:9.5px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.amount,.status{
  margin:8px 0 9px;color:#fff;
  font:700 clamp(35px,4vw,50px)/1.02 Georgia,"Times New Roman","Songti SC",serif;
  letter-spacing:-.025em;overflow-wrap:anywhere
}
.result-note,.muted{color:#b9c0c4;font-size:12.8px;line-height:1.55}
.tag,.badge,.pill,.risk{
  display:inline-flex;margin-top:13px;padding:6px 8px;border:1px solid #623338;
  border-radius:1px;background:#301f22;color:#f0b9bb;
  font-size:9.5px;font-weight:900;letter-spacing:.085em;text-transform:uppercase
}
.divider{height:1px;background:#35393c;margin:22px 0}
.result .breakdown,.result-card .breakdown{display:grid;gap:0}
.brow,.step{
  display:flex;justify-content:space-between;align-items:flex-start;gap:18px;
  padding:10px 0;border-bottom:1px solid #303438;font-size:12px
}
.brow:last-child,.step:last-child{border-bottom:0}
.brow span:first-child{color:#9fa6aa}
.brow strong{color:#fff;text-align:right;font-variant-numeric:tabular-nums}
.result .notice,.result-card .notice{
  border:1px solid #645435;background:#2b281f;color:#d9c99e
}
.notice{
  margin-top:18px;padding:14px 15px;border:1px solid #e3cc98;border-radius:1px;
  background:var(--clp-amber-pale);color:#664b1b;font-size:12.2px;line-height:1.55
}
.error{margin-top:10px;padding:10px 12px;border-left:3px solid var(--clp-red);background:#fff0f0;color:#9c1c22;font-size:12px;font-weight:650}
.tabs{
  display:flex;gap:0;flex-wrap:wrap;width:max-content;max-width:100%;
  margin:0 0 26px;border:1px solid var(--clp-line-2);background:#e9e4dd
}
.tabbtn{min-height:40px;border:0;border-right:1px solid var(--clp-line-2);border-radius:0;background:transparent;color:#596065;font-size:11.5px;font-weight:850}
.tabbtn:last-child{border-right:0}
.tabbtn.active{background:#fff;color:var(--clp-red)}
.tab{border:1px solid #3b3f42;border-radius:0;background:#202428;padding:12px;text-align:center}
.tab small{color:#949ba0}.tab strong{display:block;margin-top:3px;color:#fff;font-size:16px}
.section{margin-top:30px}
.section.card{
  position:relative;padding:34px 36px;background:rgba(255,255,255,.72);
  border-left:1px solid var(--clp-line);border-right:0;border-top:1px solid var(--clp-line);border-bottom:0
}
.section.card:before{
  content:"LEGAL NOTE";display:block;margin-bottom:13px;color:#8d8d89;
  font-size:9px;font-weight:900;letter-spacing:.15em
}
.section h2{margin:0 0 14px;padding:0;font:700 27px/1.2 Georgia,"Times New Roman","Songti SC",serif}
.section p,.section li{color:#4c5459}.section p{max-width:930px}.section ul{padding-left:20px}.section li{margin:7px 0}
.legal{background:#faf7f0!important}
.cta{
  display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;
  background:#191c1f!important;color:#fff;border:0!important;
  box-shadow:var(--clp-shadow)!important
}
.cta:before{content:"COUNSEL NEXT"!important;color:#a3a9ad!important;margin:0!important;grid-column:1/-1}
.cta h2{color:#fff}.cta p{color:#bfc5c8;margin-bottom:0}
.cta a{
  grid-column:2;grid-row:2/4;display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:11px 16px;border:1px solid #fff;background:#fff;color:#181b1e;
  text-decoration:none;font-size:12px;font-weight:850;white-space:nowrap
}
.doc{
  max-height:900px;overflow:auto;white-space:pre-wrap;
  padding:28px;border:1px solid var(--clp-line);border-radius:0;background:#fff;
  color:#222629;font:14px/1.8 Georgia,"Times New Roman","Songti SC","SimSun",serif;
  box-shadow:inset 0 0 0 8px #f5f2ed
}
.doc::-webkit-scrollbar{width:10px}.doc::-webkit-scrollbar-thumb{background:#d1cac0;border:3px solid #fff}
.meter{height:8px;background:#303438;overflow:hidden;margin:13px 0 8px}.meter>div{height:100%;background:#cc5e62}
.table{width:100%;border-collapse:collapse;margin-top:12px}.table th,.table td{padding:10px 4px;border-bottom:1px solid #34383b;font-size:11.5px;text-align:right}.table th:first-child,.table td:first-child{text-align:left}.table th{color:#969da1;text-transform:uppercase;letter-spacing:.07em;font-size:9px}
.share{display:grid;grid-template-columns:1fr auto;gap:16px;padding:11px 0;border-bottom:1px solid #34383b}.share small{display:block;color:#a7adb1}
.clp-after{
  display:grid;grid-template-columns:1.25fr .75fr;margin-top:44px;border-top:1px solid var(--clp-line);border-bottom:1px solid var(--clp-line)
}
.clp-after__panel{padding:28px 28px 30px 0}
.clp-after__panel+ .clp-after__panel{padding-left:28px;border-left:1px solid var(--clp-line)}
.clp-after__kicker{font-size:9.5px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#858986}
.clp-after h2{margin:9px 0 9px;font:700 25px/1.15 Georgia,serif}
.clp-after p{color:#656d72;font-size:12.5px}
.clp-after a{display:inline-block;margin-top:8px;color:var(--clp-red);font-weight:800;font-size:11.5px;text-decoration:none}
.clp-footer{margin-top:0;background:#121518;color:#d8dcde}
.clp-footer__inner{padding:46px 0 34px}
.clp-footer__strap{padding-bottom:25px;border-bottom:1px solid #323639;font:700 18px/1.25 Georgia,serif;color:#fff}
.clp-footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:36px;padding:28px 0}
.clp-footer__brand{font:700 22px/1.1 Georgia,serif;color:#fff}.clp-footer__copy{margin-top:10px;max-width:330px;color:#9ea5a9;font-size:12px}
.clp-footer h4{margin:0 0 12px;color:#777f84;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.clp-footer a{display:block;margin:8px 0;color:#c6cccf;text-decoration:none;font-size:11.5px}.clp-footer a:hover{color:#fff}
.clp-footer__bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid #323639;color:#747d82;font-size:10.5px}
.hidden{display:none!important}
@media(max-width:980px){
  .clp-nav{display:none}.clp-mobile-title{display:block;font-size:11px;font-weight:800;color:#686f73}
  .clp-hero{grid-template-columns:1fr}.clp-hero__aside{display:none}
  .grid{grid-template-columns:1fr}.result,.result-card{position:static}
  .clp-process{grid-template-columns:1fr 1fr}.clp-process__step:nth-child(3){border-left:1px solid var(--clp-line)}
  .clp-footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .clp-utility__right{display:none}
  .clp-utility__inner,.clp-header__inner,.clp-footer__inner,.clp-tool.wrap{width:min(100% - 28px,var(--clp-max))}
  .clp-header__inner{min-height:64px}
  .clp-hero{padding:38px 0 34px}
  .clp-hero h1,h1{font-size:39px}
  .clp-hero .dek,.dek{font-size:15px}
  .tool-meta{display:grid;grid-template-columns:1fr 1fr}.tool-chip{margin:0;padding-right:10px}.tool-chip:after{display:none}
  .clp-process{grid-template-columns:1fr}.clp-process__step,.clp-process__step:nth-child(3){border-left:1px solid var(--clp-line);border-bottom:1px solid var(--clp-line)}
  .row{grid-template-columns:1fr;gap:0}
  .card{padding:22px 18px}.card h3{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
  .result:before,.result-card:before{margin:-22px -18px 22px}
  .section.card{padding:26px 20px}
  .cta{grid-template-columns:1fr}.cta a{grid-column:1;grid-row:auto;width:max-content}
  .clp-after{grid-template-columns:1fr}.clp-after__panel+ .clp-after__panel{border-left:0;border-top:1px solid var(--clp-line);padding-left:0}
  .clp-footer__grid{grid-template-columns:1fr}.clp-footer__bottom{display:block}.clp-footer__bottom span{display:block;margin-top:6px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
