/* UK ISO 27001 internal audit page: Clause 9.2 cycle, process timeline, UK coverage, template download.
   Tokens only. Motion is positional and decorative; copy is never hidden (CSP: no inline styles). */
.auk-h1-sub{display:block;font-style:normal;color:var(--blue);font-size:.6em;letter-spacing:var(--tracking-heading);margin-top:var(--space-3)}
.auk-section{border-top:1px solid var(--line)}
.auk-section .section-heading{align-items:start}
.auk-clause-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-9);align-items:center}
.auk-figure{margin:0}
.auk-diagram{width:100%;height:auto;display:block}
.auk-diagram text{font-family:var(--font);fill:var(--ink)}
.auk-diagram .auk-dg-label{font-size:18px;font-weight:600;letter-spacing:-.015em}
.auk-diagram .auk-dg-centre{font-size:28px;font-weight:450;letter-spacing:-.03em}
.auk-diagram .auk-dg-centre-sub{font-size:14px;fill:var(--muted)}
.auk-draw{stroke:var(--blue);fill:none;stroke-width:2;stroke-linecap:round}
.auk-ring{stroke:var(--line);fill:none;stroke-width:1.5}
.auk-tick{stroke:var(--line);stroke-width:1}
.auk-node{fill:var(--paper);stroke:var(--blue);stroke-width:2;transform-box:fill-box;transform-origin:center}
.auk-node-core{fill:var(--blue);transform-box:fill-box;transform-origin:center}
.auk-req{list-style:none;margin:0;padding:0}
.auk-req li{display:block;padding:var(--space-5) 0 var(--space-5) var(--space-5);border-top:1px solid var(--line);border-left:3px solid var(--blue)}
.auk-req li:last-child{border-bottom:1px solid var(--line)}
.auk-req h3{font-size:var(--text-h4);margin:0 0 var(--space-2)}
.auk-req p{margin:0;font-size:var(--text-ui);color:var(--muted)}
.auk-callouts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);margin-top:var(--space-8)}
.auk-callout{background:var(--black);color:var(--paper);padding:var(--space-6);border-top:4px solid var(--blue)}
.auk-callout:nth-child(2){background:var(--blue)}
.auk-callout .eyebrow{color:var(--paper);margin-bottom:var(--space-4)}
.auk-callout .eyebrow::before{background:var(--paper)}
.auk-callout h3{color:var(--paper);font-size:var(--text-h3);margin:0 0 var(--space-4)}
.auk-callout p{color:var(--paper);margin:0;font-size:var(--text-body)}
.auk-callout p+p{margin-top:var(--space-4)}
.auk-compare-wrap{overflow-x:auto;margin-top:var(--space-8);border-top:3px solid var(--blue)}
.auk-compare{width:100%;border-collapse:collapse;text-align:left;font-size:var(--text-ui);table-layout:fixed;min-width:46rem}
.auk-compare th,.auk-compare td{vertical-align:top;padding:var(--space-5);border-bottom:1px solid var(--line);overflow-wrap:break-word}
.auk-compare thead th{font-weight:var(--weight-strong)}
.auk-compare thead th.auk-compare-focus{background:var(--blue);color:var(--paper)}
.auk-compare tbody th{font-weight:var(--weight-strong);color:var(--ink);width:17%}
.auk-compare td.auk-compare-focus{background:#2563eb0f;font-weight:var(--weight-strong);color:var(--ink)}
.auk-compare caption{text-align:left;caption-side:bottom;padding-top:var(--space-4);font-size:var(--text-small);color:var(--muted)}
/* Seven-step process on a black surface. */
.auk-process{background:var(--black);color:var(--paper);padding-block:var(--section)}
.auk-process .eyebrow{color:var(--paper)}
.auk-process .eyebrow::before{background:var(--paper)}
.auk-process h2{color:var(--paper)}
.auk-process .section-heading>p{color:#ffffffcc}
.auk-steps-wrap{position:relative}
.auk-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-4);position:relative}
.auk-steps::before{content:"";position:absolute;left:0;right:0;top:1.125rem;height:2px;background:#ffffff2e}
.auk-steps::after{content:"";position:absolute;left:0;right:0;top:1.125rem;height:2px;background:var(--blue);transform-origin:left center}
.auk-steps.scroll-progress-ready::after{transform:scaleX(var(--process-progress,1));transition:transform 120ms linear}
.auk-step{position:relative;padding-top:var(--space-7)}
.auk-step::before{content:"";position:absolute;top:calc(1.125rem - .5rem + 1px);left:0;width:1rem;height:1rem;border-radius:50%;background:var(--black);border:2px solid var(--blue);box-sizing:border-box;z-index:1}
.auk-step h3{color:var(--paper);font-size:var(--text-h4);margin:0 0 var(--space-3);min-height:2.6em}
.auk-step p{color:#ffffffcc;font-size:var(--text-small);margin:0}
.auk-step-out{display:block;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid #ffffff2e;color:var(--paper);font-size:var(--text-caption);font-weight:var(--weight-strong)}
.auk-process-foot{display:flex;gap:var(--space-6);flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid #ffffff2e}
.auk-process-foot p{margin:0;max-width:62ch;color:#ffffffcc;font-size:var(--text-ui)}
/* UK coverage. */
.auk-coverage-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:var(--space-9);align-items:center}
.auk-coverage-copy p{max-width:58ch}
.auk-coverage-list{list-style:none;margin:var(--space-5) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}
.auk-coverage-list li{border:1px solid var(--line);padding:var(--space-1) var(--space-3);font-size:var(--text-small);color:var(--ink);border-radius:var(--radius)}
.auk-nations{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.auk-nation{border:1px solid var(--line);padding:var(--space-5);background:var(--panel);border-radius:var(--radius)}
.auk-nation h3{font-size:var(--text-h4);margin:0 0 var(--space-2)}
.auk-nation p{margin:0;font-size:var(--text-small);color:var(--muted)}
.auk-nation-mark{display:block;width:34px;height:4px;background:var(--blue);margin-bottom:var(--space-4)}
.auk-remote{grid-column:1/-1;background:var(--blue);border-color:var(--blue);display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-5);align-items:center}
.auk-remote h3,.auk-remote p{color:var(--paper)}
.auk-remote svg{width:56px;height:56px;display:block}
.auk-remote svg circle,.auk-remote svg path{stroke:var(--paper);fill:none;stroke-width:1.5}
/* Template download card. */
.auk-download{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-6);align-items:center;border:1px solid var(--line);border-left:4px solid var(--blue);padding:var(--space-6);margin-top:var(--space-8);background:var(--panel)}
.auk-download svg{width:44px;height:44px;display:block}
.auk-download svg path,.auk-download svg rect{stroke:var(--blue);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.auk-download h3{font-size:var(--text-h4);margin:0 0 var(--space-2)}
.auk-download p{margin:0;font-size:var(--text-ui);color:var(--muted)}
/* Hover: lift only. */
@media(hover:hover){
 .auk-step,.auk-nation{transition:transform var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease)}
 .auk-step:hover{transform:translateY(-4px)}
 .auk-nation:hover{border-color:var(--blue);transform:translateY(-3px)}
}
/* Reveal motion rides on the page's existing IntersectionObserver (.iso-reveal/.is-waiting).
   Without JS, or with reduced motion, everything is simply visible. */
@media(prefers-reduced-motion:no-preference){
 .auk-draw{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1400ms var(--ease) 120ms}
 .iso-reveal.is-waiting .auk-draw{stroke-dashoffset:1}
 .auk-node,.auk-node-core{transition:transform 700ms var(--ease)}
 .iso-reveal.is-waiting .auk-node,.iso-reveal.is-waiting .auk-node-core{transform:scale(.3)}
 .auk-node:nth-of-type(2){transition-delay:120ms}.auk-node:nth-of-type(3){transition-delay:240ms}.auk-node:nth-of-type(4){transition-delay:360ms}.auk-node:nth-of-type(5){transition-delay:480ms}.auk-node:nth-of-type(6){transition-delay:600ms}
 .auk-step{transition:transform var(--motion-reveal) var(--ease)}
 .iso-reveal.is-waiting .auk-step{transform:translateY(18px)}
 .auk-step:nth-child(2){transition-delay:80ms}.auk-step:nth-child(3){transition-delay:160ms}.auk-step:nth-child(4){transition-delay:240ms}.auk-step:nth-child(5){transition-delay:320ms}.auk-step:nth-child(6){transition-delay:400ms}.auk-step:nth-child(7){transition-delay:480ms}
 .auk-req li{transition:transform var(--motion-reveal) var(--ease)}
 .iso-reveal.is-waiting .auk-req li{transform:translateX(16px)}
 .auk-req li:nth-child(2){transition-delay:70ms}.auk-req li:nth-child(3){transition-delay:140ms}.auk-req li:nth-child(4){transition-delay:210ms}.auk-req li:nth-child(5){transition-delay:280ms}.auk-req li:nth-child(6){transition-delay:350ms}
 .auk-nation{transition:transform var(--motion-reveal) var(--ease),border-color var(--motion-fast) var(--ease)}
 .iso-reveal.is-waiting .auk-nation{transform:translateY(14px)}
 .auk-nation:nth-child(2){transition-delay:80ms}.auk-nation:nth-child(3){transition-delay:160ms}.auk-nation:nth-child(4){transition-delay:240ms}.auk-nation:nth-child(5){transition-delay:320ms}
 .auk-callout{transition:transform var(--motion-reveal) var(--ease)}
 .iso-reveal.is-waiting .auk-callout{transform:translateY(14px)}
}
@media(max-width:1000px){
 .auk-clause-grid,.auk-coverage-grid{grid-template-columns:1fr;gap:var(--space-7)}
 .auk-steps{grid-template-columns:1fr;gap:var(--space-6)}
 .auk-steps::before,.auk-steps::after{left:calc(.5rem - 1px);right:auto;top:0;bottom:0;width:2px;height:auto;transform-origin:center top}
 .auk-steps.scroll-progress-ready::after{transform:scaleY(var(--process-progress,1))}
 .auk-step{padding-top:0;padding-left:2.5rem}
 .auk-step::before{top:.25rem}
 .auk-step h3{min-height:0}
}
@media(max-width:600px){.auk-figure{display:none}}
@media(max-width:750px){
 .auk-callouts,.auk-nations{grid-template-columns:1fr}
 .auk-callout,.auk-nation,.auk-download{padding:var(--space-5)}
 .auk-download{grid-template-columns:1fr;gap:var(--space-4)}
 .auk-remote{grid-template-columns:1fr}
 .auk-process-foot{align-items:flex-start;flex-direction:column}
}
