/* ISO 27001 Evidence Mapper landing page: free gap checklist + mapper hero */
.tp-iso .iso-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.tp-iso .iso-hero .mt-promise{display:flex;flex-direction:column;gap:16px;min-width:0}
.tp-iso .iso-hero .mt-promise>*{order:0;margin:0}
.tp-iso .iso-hero .mt-promise>h1{margin:0}
.tp-iso .iso-lead{color:var(--muted,#52647b);font-size:1.1rem;line-height:1.6}
.tp-iso .iso-lead b{color:var(--ink,#071b35)}

/* Start row: two clear entry points */
.tp-iso .iso-start{display:flex;flex-wrap:wrap;gap:10px 12px}
.tp-iso .iso-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid var(--blue,#1f5cf0);border-radius:12px;background:#fff;color:var(--blue-dark,#1548c7);font:inherit;font-weight:800;font-size:.97rem;text-decoration:none;cursor:pointer;text-align:center}
.tp-iso .iso-btn:hover{background:var(--soft,#edf4ff)}
.tp-iso .iso-btn--primary{background:var(--blue,#1f5cf0);color:#fff}
.tp-iso .iso-btn--primary:hover{background:var(--blue-dark,#1548c7)}
.tp-iso .iso-btn:focus-visible,.tp-iso .iso-reset:focus-visible,.tp-iso .iso-link:focus-visible{outline:3px solid rgba(31,92,240,.45);outline-offset:2px}

/* Step label above the drop zone */
.tp-iso .iso-step-label{margin:6px 0 0;font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#3159b8}
.tp-iso .iso-price{color:var(--muted,#52647b);font-size:.95rem;line-height:1.55}
.tp-iso .iso-price b{color:var(--ink,#071b35)}

/* Checklist card */
.tp-iso .iso-check{min-width:0;border:1px solid #bfd0e5;border-radius:22px;background:#fff;box-shadow:0 20px 55px rgba(9,34,70,.11);scroll-margin-top:84px}
.tp-iso .iso-form{counter-reset:isook isogap;display:grid;gap:14px;padding:22px}
.tp-iso .iso-check-head{display:grid;gap:6px}
.tp-iso .iso-check-head span{color:#06603c;font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.tp-iso .iso-check-head h2{margin:0;font-size:1.35rem;line-height:1.25;color:var(--ink,#071b35)}
.tp-iso .iso-check-head p{margin:0;color:var(--muted,#52647b);font-size:.93rem;line-height:1.55}
.tp-iso .iso-form fieldset{margin:0;padding:0;border:0;min-width:0}
.tp-iso .iso-form legend{padding:0;margin:0 0 8px;font-size:.8rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:var(--ink,#071b35)}
.tp-iso .iso-items{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.tp-iso .iso-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;min-height:44px;box-sizing:border-box;padding:9px 10px;border:1px solid var(--line,#d7e1ee);border-radius:12px;background:#fbfcfe;cursor:pointer;font-size:.92rem;line-height:1.45;color:var(--ink,#071b35)}
.tp-iso .iso-item:hover{border-color:#9fb6d6}
.tp-iso .iso-item input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--blue,#1f5cf0);cursor:pointer}
.tp-iso .iso-item input:not(:checked){counter-increment:isogap}
.tp-iso .iso-item input:checked{counter-increment:isook}
.tp-iso .iso-item:has(input:focus-visible){outline:3px solid rgba(31,92,240,.45);outline-offset:1px}
.tp-iso .iso-item:has(input:checked){background:#f1faf5;border-color:#a9d9bf}
.tp-iso .iso-item b{display:block;font-size:.78rem;font-weight:850;color:#3159b8}
.tp-iso .iso-flag{align-self:center;min-width:52px;padding:3px 8px;border-radius:999px;background:#fde8e6;color:#9a1c12;font-size:.75rem;font-weight:800;text-align:center}
.tp-iso .iso-flag::before{content:"Gap"}
.tp-iso .iso-item input:checked~.iso-flag{background:#e3f3ea;color:#06603c}
.tp-iso .iso-item input:checked~.iso-flag::before{content:"Ready"}
.tp-iso .iso-score{margin:0;padding:12px 14px;border-radius:12px;background:var(--soft,#edf4ff);color:var(--ink,#071b35);font-weight:800;font-size:.98rem}
.tp-iso .iso-score::after{content:"Ready " counter(isook) " of 12 \00b7  Gaps " counter(isogap)}
.tp-iso .iso-score small{display:block;margin-bottom:2px;color:var(--muted,#52647b);font-size:.78rem;font-weight:700}
.tp-iso .iso-check-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.tp-iso .iso-reset{min-height:42px;padding:0 14px;border:1px solid #b9c7da;border-radius:10px;background:#fff;color:var(--ink,#071b35);font:inherit;font-weight:750;font-size:.9rem;cursor:pointer}
.tp-iso .iso-reset:hover{border-color:var(--blue,#1f5cf0)}
.tp-iso .iso-link{display:inline-flex;align-items:center;min-height:42px;color:var(--blue-dark,#1548c7);font-weight:800;font-size:.92rem}
.tp-iso .iso-fine{margin:0;color:var(--muted,#52647b);font-size:.82rem;line-height:1.5}

/* What you get */
.tp-iso .iso-get{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:start}
.tp-iso .iso-get .mt-demo{order:0}
.tp-iso .iso-get h3{margin:0 0 10px;font-size:1.1rem}
.tp-iso .iso-get h3+.iso-list{margin-bottom:22px}
.tp-iso .iso-list{margin:0;padding-left:1.15em;display:grid;gap:8px;line-height:1.55;color:var(--ink,#071b35)}
.tp-iso .iso-list li::marker{color:var(--blue,#1f5cf0)}
.tp-iso .iso-list a{font-weight:700}
.tp-iso .mt-context-links{display:flex;flex-wrap:wrap;gap:10px 18px}
.tp-iso .mt-context-links a{display:inline-flex;align-items:center;min-height:40px}

@media (max-width:900px){
  .tp-iso .iso-hero,.tp-iso .iso-get{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:430px){
  .tp-iso .iso-form{padding:16px}
  .tp-iso .iso-btn{flex:1 1 100%}
  .tp-iso .iso-item{gap:8px;padding:9px 8px}
  .tp-iso .iso-flag{min-width:44px;padding:3px 6px}
}
@media (prefers-reduced-motion:reduce){.tp-iso *{transition:none;scroll-behavior:auto}}
