/*
  Interactive legal tools — 7 August 2026
  Shared presentation for the budget planner and consumer-credit checker.
*/
:root{
  --tool-blue:#163f5f;
  --tool-blue-2:#0b2a43;
  --tool-gold:#a67f43;
  --tool-paper:#fffdf9;
  --tool-soft:#f5f1e9;
  --tool-line:#d8d0c3;
  --tool-ink:#1d2b35;
  --tool-muted:#64717a;
  --tool-green:#2f6b50;
  --tool-green-bg:#edf7f1;
  --tool-yellow:#8a5d12;
  --tool-yellow-bg:#fff7df;
  --tool-red:#873936;
  --tool-red-bg:#fff0ee;
  --tool-urgent:#6d2030;
  --tool-urgent-bg:#fbeaec;
}
.page-tool-2026 main{overflow:hidden}
.legal-tool-hero{padding:58px 0 46px;background:linear-gradient(135deg,var(--site-navy-deep),var(--site-navy-soft));color:#fff}
.legal-tool-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:44px;align-items:center}
.legal-tool-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:7px 10px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.legal-tool-hero h1{max-width:850px;margin:0 0 16px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(35px,5vw,60px);font-weight:500;line-height:1.06;letter-spacing:-.035em}
.legal-tool-hero p{max-width:820px;margin:0 0 15px;color:rgba(255,255,255,.84);font-size:18px}
.legal-tool-byline{font-size:13px!important;color:rgba(255,255,255,.7)!important}
.legal-tool-byline a{color:#fff}
.legal-tool-answer{margin:22px 0 0;padding:17px 18px;border-left:4px solid #d4b579;background:rgba(255,255,255,.09);color:#fff;font-size:16px}
.legal-tool-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.legal-tool-hero-actions .btn-outline{border-color:rgba(255,255,255,.55);color:#fff}
.legal-tool-hero-actions .btn-outline:hover{background:#fff;color:var(--site-navy)}
.legal-tool-summary-card{padding:26px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);box-shadow:0 18px 60px rgba(0,0,0,.13)}
.legal-tool-summary-card h2{margin:0 0 16px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:500}
.legal-tool-summary-card ul{margin:0;padding:0;list-style:none}
.legal-tool-summary-card li{display:grid;grid-template-columns:26px 1fr;gap:11px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.84)}
.legal-tool-summary-card li:last-child{border-bottom:0}
.legal-tool-summary-card i{margin-top:4px;color:#dfc794;text-align:center}
.legal-tool-main{padding:42px 0 72px}
.legal-tool-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:26px;align-items:start}
.legal-tool-panel{margin-bottom:24px;padding:28px;border:1px solid var(--tool-line);background:var(--tool-paper);box-shadow:0 10px 30px rgba(8,33,54,.045)}
.legal-tool-panel h2{margin:0 0 10px;color:var(--site-navy);font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:500;line-height:1.2}
.legal-tool-panel h3{margin:0 0 8px;color:var(--site-navy);font-size:18px}
.legal-tool-panel>p:first-of-type{margin-top:0}
.legal-tool-section-kicker{margin-bottom:8px;color:var(--site-gold-dark);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.legal-tool-help{margin:7px 0 0;color:var(--tool-muted);font-size:13px;line-height:1.45}
.legal-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.legal-tool-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.legal-tool-field{display:flex;min-width:0;flex-direction:column;gap:7px}
.legal-tool-field.full{grid-column:1/-1}
.legal-tool-field label,.legal-tool-fieldset legend{color:var(--tool-ink);font-size:14px;font-weight:780}
.legal-tool-field input,.legal-tool-field select,.legal-tool-field textarea{width:100%;min-height:48px;padding:11px 12px;border-color:var(--tool-line);background:#fff}
.legal-tool-field textarea{min-height:100px}
.legal-tool-field input[aria-invalid="true"],.legal-tool-field select[aria-invalid="true"]{border-color:var(--tool-red);box-shadow:0 0 0 3px rgba(135,57,54,.12)}
.legal-tool-field-error{min-height:18px;color:var(--tool-red);font-size:12px;font-weight:700}
.legal-tool-fieldset{margin:0;padding:0;border:0}
.legal-tool-fieldset legend{margin-bottom:8px}
.legal-tool-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.legal-tool-choice{position:relative}
.legal-tool-choice input{position:absolute;opacity:0;pointer-events:none}
.legal-tool-choice label{display:flex;min-height:48px;align-items:center;justify-content:center;padding:10px 12px;border:1px solid var(--tool-line);background:#fff;color:var(--tool-ink);text-align:center;cursor:pointer;font-size:13px;font-weight:750;line-height:1.25;transition:.18s ease}
.legal-tool-choice input:checked+label{border-color:var(--site-navy);background:var(--site-navy);color:#fff;box-shadow:0 8px 20px rgba(8,33,54,.12)}
.legal-tool-choice input:focus-visible+label{outline:3px solid rgba(166,127,67,.28);outline-offset:2px}
.legal-tool-category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0 22px}
.legal-tool-category-btn{display:flex;min-height:84px;align-items:center;justify-content:center;gap:8px;padding:12px 9px;border:1px solid var(--tool-line);background:#fff;color:var(--site-navy);cursor:pointer;text-align:center;font-size:13px;font-weight:800;line-height:1.25}
.legal-tool-category-btn i{font-size:18px}
.legal-tool-category-btn:hover,.legal-tool-category-btn.active{border-color:var(--site-navy);background:var(--site-navy);color:#fff}
.legal-tool-popular{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.legal-tool-popular button{display:flex;min-height:76px;align-items:center;gap:12px;padding:13px;border:1px solid var(--tool-line);background:#fff;cursor:pointer;text-align:left}
.legal-tool-popular button:hover{border-color:var(--site-gold);background:#fffbf3}
.legal-tool-popular i{width:24px;color:var(--site-gold-dark);font-size:19px;text-align:center}
.legal-tool-popular strong,.legal-tool-popular small{display:block}
.legal-tool-popular strong{color:var(--site-navy);font-size:14px}
.legal-tool-popular small{margin-top:2px;color:var(--tool-muted);font-size:11px}
.legal-tool-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.legal-tool-actions button{cursor:pointer}
.legal-tool-actions .btn-muted{border-color:var(--tool-line);background:#fff;color:var(--site-navy)}
.legal-tool-actions .btn-muted:hover{border-color:var(--site-navy);background:var(--tool-soft)}
.legal-tool-result{position:sticky;top:108px;padding:26px;border:1px solid var(--tool-line);background:#fff;box-shadow:var(--site-shadow)}
.legal-tool-result h2{margin:0 0 8px;color:var(--site-navy);font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:500}
.legal-tool-result-intro{margin:0 0 20px;color:var(--tool-muted);font-size:14px}
.legal-tool-total{margin:14px 0 20px;padding:20px;border:1px solid #cdbb97;background:#fff8ea;text-align:center}
.legal-tool-total span{display:block;color:var(--tool-muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.legal-tool-total strong{display:block;margin-top:6px;color:var(--site-navy);font-family:Georgia,"Times New Roman",serif;font-size:42px;font-weight:500;line-height:1}
.legal-tool-breakdown{margin:0;padding:0;list-style:none}
.legal-tool-breakdown li{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--tool-line);font-size:14px}
.legal-tool-breakdown li:last-child{border-bottom:0}
.legal-tool-breakdown strong{text-align:right;color:var(--site-navy)}
.legal-tool-note{margin-top:18px;padding:14px;border-left:4px solid var(--site-gold);background:var(--tool-soft);color:var(--tool-muted);font-size:13px}
.legal-tool-inline-notice{margin:18px 0;padding:15px 17px;border-left:4px solid var(--site-gold);background:#fff9ed;color:#5d4a29}
.legal-tool-privacy{display:flex;gap:12px;margin:18px 0;padding:16px;border:1px solid #c8d7e2;background:#f1f7fb;color:#345266;font-size:14px}
.legal-tool-privacy i{margin-top:4px;color:var(--site-navy)}
.legal-tool-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 24px;padding:0;list-style:none}
.legal-tool-stepper button{width:100%;min-height:54px;padding:8px;border:1px solid var(--tool-line);background:#fff;color:var(--tool-muted);cursor:pointer;font-size:12px;font-weight:800;line-height:1.2}
.legal-tool-stepper button span{display:block;margin-bottom:3px;color:var(--site-gold-dark);font-size:11px}
.legal-tool-stepper button.active{border-color:var(--site-navy);background:var(--site-navy);color:#fff}
.legal-tool-stepper button.active span{color:#ead6ac}
.legal-tool-step[hidden]{display:none!important}
.legal-tool-step-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--tool-line)}
.legal-tool-step-nav .btn{cursor:pointer}
.legal-tool-cost-group{margin-top:20px;padding-top:20px;border-top:1px solid var(--tool-line)}
.legal-tool-cost-group:first-child{margin-top:0;padding-top:0;border-top:0}
.legal-tool-cost-group h3{margin-bottom:14px}
.legal-tool-question-list{display:grid;gap:13px}
.legal-tool-question{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid var(--tool-line)}
.legal-tool-question:last-child{border-bottom:0}
.legal-tool-question label{font-size:14px;font-weight:700}
.legal-tool-question small{display:block;margin-top:3px;color:var(--tool-muted);font-weight:400}
.legal-tool-question select{min-height:44px;padding:9px}
.legal-risk-result{display:none;margin-top:24px;scroll-margin-top:120px}
.legal-risk-result.visible{display:block}
.legal-risk-banner{padding:22px;border:1px solid var(--tool-line);border-left-width:6px;background:#fff}
.legal-risk-banner.low{border-left-color:var(--tool-green);background:var(--tool-green-bg)}
.legal-risk-banner.review{border-left-color:var(--tool-yellow);background:var(--tool-yellow-bg)}
.legal-risk-banner.high{border-left-color:var(--tool-red);background:var(--tool-red-bg)}
.legal-risk-banner.urgent{border-left-color:var(--tool-urgent);background:var(--tool-urgent-bg)}
.legal-risk-banner-head{display:flex;align-items:flex-start;gap:14px}
.legal-risk-icon{display:flex;width:44px;height:44px;flex:0 0 44px;align-items:center;justify-content:center;border-radius:50%;background:#fff;font-size:21px}
.legal-risk-banner.low .legal-risk-icon{color:var(--tool-green)}
.legal-risk-banner.review .legal-risk-icon{color:var(--tool-yellow)}
.legal-risk-banner.high .legal-risk-icon{color:var(--tool-red)}
.legal-risk-banner.urgent .legal-risk-icon{color:var(--tool-urgent)}
.legal-risk-banner h2{margin:0 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:500}
.legal-risk-banner p{margin:0;color:#46545d}
.legal-risk-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.legal-risk-metric{padding:14px;border:1px solid rgba(0,0,0,.1);background:rgba(255,255,255,.65)}
.legal-risk-metric span{display:block;color:var(--tool-muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.legal-risk-metric strong{display:block;margin-top:5px;color:var(--site-navy);font-size:20px}
.legal-risk-findings{margin-top:22px}
.legal-risk-findings h3{margin-bottom:12px}
.legal-risk-finding{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;margin-bottom:10px;padding:14px;border:1px solid var(--tool-line);background:#fff}
.legal-risk-finding:last-child{margin-bottom:0}
.legal-risk-finding-icon{display:flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:var(--tool-soft);color:var(--site-navy)}
.legal-risk-finding[data-severity="high"] .legal-risk-finding-icon{background:var(--tool-red-bg);color:var(--tool-red)}
.legal-risk-finding[data-severity="review"] .legal-risk-finding-icon{background:var(--tool-yellow-bg);color:var(--tool-yellow)}
.legal-risk-finding[data-severity="urgent"] .legal-risk-finding-icon{background:var(--tool-urgent-bg);color:var(--tool-urgent)}
.legal-risk-finding strong{display:block;color:var(--site-navy)}
.legal-risk-finding p{margin:3px 0 0;color:var(--tool-muted);font-size:13px}
.legal-risk-tag{display:inline-block;margin-top:7px;padding:3px 7px;border:1px solid var(--tool-line);color:var(--tool-muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.legal-tool-document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0 0;padding:0;list-style:none}
.legal-tool-document-list li{position:relative;padding:9px 10px 9px 29px;border:1px solid var(--tool-line);background:#fff;font-size:13px}
.legal-tool-document-list li::before{content:"✓";position:absolute;left:10px;color:var(--tool-green);font-weight:900}
.legal-tool-method{padding:64px 0;background:#fff}
.legal-tool-method h2{margin:0 0 16px;color:var(--site-navy);font-family:Georgia,"Times New Roman",serif;font-size:36px;font-weight:500}
.legal-tool-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.legal-tool-method-card{padding:22px;border:1px solid var(--tool-line);background:var(--tool-paper)}
.legal-tool-method-card h3{margin:0 0 8px;color:var(--site-navy);font-size:18px}
.legal-tool-method-card p{margin:0;color:var(--tool-muted);font-size:14px}
.legal-tool-sources{margin-top:24px;padding:18px;border:1px solid var(--tool-line);background:var(--tool-soft);font-size:13px}
.legal-tool-sources ul{margin:8px 0 0;padding-left:20px}
.legal-tool-sources a{word-break:break-word}
.legal-tool-faq{padding:58px 0;background:var(--site-canvas)}
.legal-tool-faq h2{margin:0 0 24px;color:var(--site-navy);font-family:Georgia,"Times New Roman",serif;font-size:36px;font-weight:500}
.legal-tool-faq details{margin-bottom:10px;border:1px solid var(--tool-line);background:#fff}
.legal-tool-faq summary{padding:17px 20px;cursor:pointer;color:var(--site-navy);font-weight:800}
.legal-tool-faq details p{margin:0;padding:0 20px 18px;color:var(--tool-muted)}
.legal-tool-cta{padding:44px 0;background:var(--site-navy);color:#fff}
.legal-tool-cta .container{display:flex;align-items:center;justify-content:space-between;gap:28px}
.legal-tool-cta h2{margin:0 0 6px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:31px;font-weight:500}
.legal-tool-cta p{margin:0;color:rgba(255,255,255,.78)}
.legal-tool-cta .btn-outline{border-color:rgba(255,255,255,.5);color:#fff}
.legal-tool-cta .btn-outline:hover{background:#fff;color:var(--site-navy)}
.legal-tool-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media print{
  .site-header-2026,.site-utility-2026,.site-footer-2026,.mobile-contact-bar-2026,.legal-tool-hero-actions,.legal-tool-actions,.legal-tool-stepper,.legal-tool-step-nav,.legal-tool-cta{display:none!important}
  body{background:#fff}
  .legal-tool-hero{padding:20px 0;background:#fff;color:#000}
  .legal-tool-hero p,.legal-tool-byline{color:#333!important}
  .legal-tool-hero h1{color:#000;font-size:34px}
  .legal-tool-summary-card{display:none}
  .legal-tool-main{padding:10px 0}
  .legal-tool-layout{display:block}
  .legal-tool-result{position:static;box-shadow:none}
  .legal-tool-panel{box-shadow:none;break-inside:avoid}
}
@media(max-width:1020px){
  .legal-tool-hero-grid,.legal-tool-layout{grid-template-columns:1fr}
  .legal-tool-summary-card{max-width:760px}
  .legal-tool-result{position:static}
  .legal-tool-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .legal-tool-popular{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .legal-tool-hero{padding:40px 0 34px}
  .legal-tool-hero p{font-size:16px}
  .legal-tool-panel,.legal-tool-result{padding:21px}
  .legal-tool-grid,.legal-tool-grid-3,.legal-tool-method-grid,.legal-risk-metrics,.legal-tool-document-list{grid-template-columns:1fr}
  .legal-tool-choice-grid{grid-template-columns:1fr}
  .legal-tool-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-tool-question{grid-template-columns:1fr;gap:8px}
  .legal-tool-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-tool-popular{grid-template-columns:1fr}
  .legal-tool-cta .container{align-items:flex-start;flex-direction:column}
  .legal-tool-hero-actions,.legal-tool-actions{align-items:stretch;flex-direction:column}
  .legal-tool-hero-actions .btn,.legal-tool-actions .btn{width:100%}
}
@media(max-width:420px){
  .legal-tool-category-grid,.legal-tool-stepper{grid-template-columns:1fr}
  .legal-tool-panel h2,.legal-tool-result h2{font-size:25px}
  .legal-tool-total strong{font-size:35px}
}
