/* KZ Clarity Check (online self-assessment). Scoped to .cc-* classes; uses the site's colour and font variables. */
.cc-app{background:var(--ivory);padding:56px 0 90px}
.cc-wrap{max-width:900px}
.cc-panel{background:var(--paper);border:1px solid var(--line);padding:clamp(22px,4vw,48px)}
.cc-title{font-family:var(--serif);font-weight:400;font-size:clamp(26px,3.4vw,38px);line-height:1.25;letter-spacing:-.03em;margin:0 0 14px;color:var(--navy)}
.cc-lead,.cc-why{color:var(--muted);font-size:15px;max-width:700px;margin:0 0 26px}
.cc-fine{font-size:11px;color:var(--muted);margin:26px 0 0;font-style:italic}

/* answer scale */
.cc-k-2{--k:#3e7c5a}.cc-k-1{--k:#c98b2b}.cc-k-0{--k:#b4513f}.cc-k-ns{--k:var(--navy)}
.cc-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 24px}
.cc-scale-item{border:1px solid var(--line);border-top:3px solid var(--k);padding:14px 14px 16px;background:#fff}
.cc-scale-item b{display:block;font-size:13px;color:var(--ink)}
.cc-scale-item span{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:4px}
.cc-tips{margin:0 0 28px;padding-left:18px;color:#4c5765;font-size:14px}
.cc-tips li{margin:6px 0}
.cc-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.cc-actions-end{justify-content:flex-end;margin-top:22px}
.cc-link{background:none;border:0;padding:0;font:inherit;font-size:12px;font-weight:700;color:#936d2d;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cc-resume{margin:20px 0 0;font-size:13px;color:#4c5765;background:var(--ivory);padding:12px 14px;border-left:2px solid var(--gold)}
.cc-resume button{background:none;border:0;padding:0;font:inherit;font-weight:700;color:#936d2d;text-decoration:underline;cursor:pointer}

/* quiz */
.cc-progress{height:4px;background:var(--line);margin:0 0 22px;overflow:hidden}
.cc-progress span{display:block;height:100%;background:var(--gold);transition:width .3s ease}
.cc-step{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--gold);margin:0 0 10px}
.cc-q{border-top:1px solid var(--line);padding:18px 0;display:grid;grid-template-columns:1fr;gap:12px;align-items:center}
@media(min-width:861px){.cc-q{grid-template-columns:minmax(0,1fr) 360px;gap:22px}}
.cc-qt{margin:0;font-size:14px;line-height:1.6;color:var(--ink)}
.cc-qn{color:var(--gold);font-weight:700;margin-right:4px}
.cc-opts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.cc-opt{position:relative;cursor:pointer}
.cc-opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.cc-opt span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:6px 4px;border:1px solid #d4d0c6;background:#fff;font-size:12px;font-weight:600;color:#4c5765;transition:background .15s,border-color .15s,color .15s}
.cc-opt:hover span{border-color:var(--k)}
.cc-opt input:checked+span{background:var(--k);border-color:var(--k);color:#fff}
.cc-opt input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.cc-missing .cc-qt{color:#9d2921}
.cc-missing .cc-opt span{border-color:#d9a79f}
.cc-error{color:#9d2921;font-size:13px;margin:12px 0 0;min-height:1px}
.cc-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:22px;margin-top:6px}
.cc-back{background:none;border:0;padding:0;font:inherit;font-size:12px;font-weight:700;color:#596575;cursor:pointer}
.cc-back:before{content:'\2190';margin-right:8px}

/* results: bands */
.cc-b-solid{--b:#3e7c5a}.cc-b-partly{--b:#c98b2b}.cc-b-attention{--b:#b4513f}
.cc-totals{display:flex;gap:30px;align-items:flex-end;flex-wrap:wrap;margin:8px 0 26px}
.cc-totals>div:not(.cc-chips) b{display:block;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1;color:var(--navy)}
.cc-totals>div:not(.cc-chips) span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}
.cc-chips{display:flex;gap:8px;flex-wrap:wrap}
.cc-chip{display:inline-block;padding:5px 10px;font-size:11px;font-weight:700;color:var(--b);border:1px solid var(--b);background:#fff;white-space:nowrap}
.cc-profile{border-top:1px solid var(--navy)}
.cc-row{display:grid;grid-template-columns:220px 1fr 90px;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.cc-row-name{font-size:13px;font-weight:600;color:var(--ink)}
.cc-row-name span{color:var(--gold);margin-right:8px}
.cc-bar{display:grid;grid-template-columns:repeat(12,1fr);gap:3px}
.cc-bar i{height:16px;border:1px solid var(--b);background:#fff}
.cc-bar i.on{background:var(--b)}
.cc-row-score{text-align:right;font-size:12px;color:var(--muted)}
.cc-row-score b{font-size:16px;color:var(--ink)}
.cc-row-score small{display:block;font-size:10px}
.cc-legend{display:flex;gap:18px;flex-wrap:wrap;margin:14px 0 0;font-size:11px;color:var(--muted)}
.cc-legend span:before{content:'';display:inline-block;width:10px;height:10px;background:var(--b);margin-right:6px;vertical-align:-1px}
.cc-note{margin:22px 0 0;padding:14px 16px;background:var(--ivory);border-left:2px solid var(--gold);font-size:13px;color:#4c5765}

/* gate */
.cc-gate{margin-top:34px;background:var(--navy);color:#fff;padding:clamp(22px,4vw,40px);display:grid;grid-template-columns:.85fr 1.15fr;gap:34px}
.cc-gate h3,.cc-start-here h3,.cc-cta h3{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.6vw,28px);line-height:1.3;margin:0 0 14px}
.cc-gate ul{padding-left:18px;margin:0;color:#d2d7de;font-size:13px}
.cc-gate li{margin:8px 0}
.cc-gate .field label{color:#e1c58c}
.cc-gate .field input,.cc-gate .field select{background:#fff}
.cc-consent{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;color:#d2d7de!important;font-size:12px!important;line-height:1.5}
.cc-consent input{width:auto!important;margin-top:3px;accent-color:var(--gold)}
.cc-consent a{color:#e1c58c;text-decoration:underline}
.cc-gate .cc-error{color:#f2b8ad}
.cc-gate .btn[disabled]{opacity:.7;cursor:wait}
.cc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* full breakdown */
.cc-full{margin-top:34px}
.cc-start-here{background:var(--navy);color:#fff;padding:clamp(22px,4vw,36px);margin-bottom:26px}
.cc-start-here h3 span{color:var(--gold-light)}
.cc-start-here p{color:#d2d7de;font-size:14px;margin:0}
.cc-areas{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cc-area{border:1px solid var(--line);border-top:3px solid var(--b);padding:18px 18px 16px;background:#fff}
.cc-area.cc-first{box-shadow:0 0 0 2px var(--gold)}
.cc-area header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cc-area-no{color:var(--gold);font-weight:700;font-size:12px}
.cc-area h4{font-family:var(--serif);font-weight:400;font-size:18px;margin:0;flex:1;min-width:150px}
.cc-area-score{font-size:12px;color:var(--muted);margin:8px 0 6px}
.cc-area p{font-size:13px;color:#4c5765;margin:0 0 8px}
.cc-ask{font-size:10px!important;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--gold)!important;margin:12px 0 4px!important}
.cc-area ul{margin:0;padding-left:18px;font-family:var(--serif);font-size:14px;color:var(--navy)}
.cc-area li{margin:6px 0;line-height:1.5}
.cc-example{margin:26px 0;padding:18px 20px;background:var(--ivory);border-left:2px solid var(--gold)}
.cc-example p{font-size:13px;color:#4c5765;margin:0 0 10px}
.cc-example p:last-child{margin:0}
.cc-cta{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;border:1px solid var(--gold);padding:clamp(22px,4vw,36px);background:#fff}
.cc-cta p{font-size:14px;color:#4c5765;margin:0}
.cc-cta-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start}

@media(max-width:860px){
  .cc-scale{grid-template-columns:1fr 1fr}
  .cc-row{grid-template-columns:1fr 70px;gap:6px 12px}
  .cc-bar{grid-column:1/-1;grid-row:2}
  .cc-row-score{grid-row:1;grid-column:2}
  .cc-gate,.cc-cta{grid-template-columns:1fr}
  .cc-areas{grid-template-columns:1fr}
}
@media(max-width:480px){.cc-opt span{font-size:11px;min-height:46px}.cc-nav .btn{padding:13px 14px}}

@media print{
  .site-header,.site-footer,.cookie-banner,.back-top,.cc-hero,.cc-actions,.cc-cta-actions,.cc-gate{display:none!important}
  .cc-app{padding:0;background:#fff}.cc-panel{border:0;padding:0}
  .cc-area,.cc-row{break-inside:avoid}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
