/* ─────────────────────────────────────────────
   Nordivé — Trust Center redesign exploration
   Calm, decision-maker-facing reorganisation of /sikkerhet.
   Light page · navy compliance band · progressive disclosure.
   ───────────────────────────────────────────── */

.tc{
  font-family:var(--font-h);color:var(--ink);background:var(--off);
  width:100%;min-height:100%;position:relative;
}
.tc, .tc *{box-sizing:border-box}
.tc-wrap{max-width:1080px;margin:0 auto;padding:0 56px}

/* ── mini top bar ── */
.tc-top{
  display:flex;align-items:center;justify-content:space-between;
  height:64px;border-bottom:1px solid var(--rule);
}
.tc-brand{display:flex;align-items:center;gap:.55rem;font-weight:500;font-size:1.05rem;letter-spacing:-.01em;color:var(--navy)}
.tc-brand .mk{width:20px;height:20px;background:url('../assets/logo-mark.png') center/contain no-repeat}
.tc-back{font-family:var(--font-body);font-size:.85rem;color:var(--mid);display:flex;align-items:center;gap:.4rem}
.tc-topnav{display:flex;align-items:center;gap:22px}
.tc-topnav a{font-family:var(--font-body);font-size:.85rem;color:var(--mid);transition:color .2s}
.tc-topnav a.faq{color:var(--navy);font-weight:500}

/* ── FAQ subpage ── */
.tc-faq-cat{font-family:var(--font-h);font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mid);margin:38px 0 4px}
.tc-faq{border-top:1px solid var(--rule)}
.tc-faq-item{border-bottom:1px solid var(--rule)}
.tc-faq-q{display:flex;align-items:center;gap:16px;padding:19px 4px;cursor:pointer;user-select:none}
.tc-faq-qt{font-family:var(--font-h);font-size:1.05rem;font-weight:500;color:var(--navy);letter-spacing:-.01em}
.tc-faq-ic{margin-left:auto;width:20px;height:20px;flex-shrink:0;position:relative;color:var(--mid)}
.tc-faq-ic::before,.tc-faq-ic::after{content:"";position:absolute;background:currentColor;border-radius:2px;transition:transform .25s var(--ease),opacity .2s}
.tc-faq-ic::before{left:3px;right:3px;top:9px;height:2px}
.tc-faq-ic::after{top:3px;bottom:3px;left:9px;width:2px}
.tc-faq-item.open .tc-faq-ic::after{transform:scaleY(0);opacity:0}
.tc-faq-a{max-height:0;overflow:hidden;transition:max-height .3s var(--ease)}
.tc-faq-item.open .tc-faq-a{max-height:320px}
.tc-faq-a-in{font-family:var(--font-body);font-size:.96rem;line-height:1.6;color:var(--ink-2);padding:0 4px 22px;max-width:68ch}
.tc-faq-cta{margin-top:46px;background:#fff;border:1px solid var(--rule);border-radius:var(--r-card-lg);padding:30px 32px;display:flex;align-items:center;gap:24px;box-shadow:var(--shadow-sm)}
.tc-faq-cta-t{font-family:var(--font-h);font-size:1.12rem;font-weight:500;color:var(--navy);letter-spacing:-.01em}
.tc-faq-cta-s{font-family:var(--font-body);font-size:.92rem;color:var(--mid);margin-top:3px}
.tc-btn{margin-left:auto;flex-shrink:0;white-space:nowrap;background:var(--navy);color:#fff;font-family:var(--font-h);font-size:.92rem;font-weight:500;padding:.8rem 1.4rem;border-radius:var(--r-btn);display:inline-flex;align-items:center;gap:.5rem}

/* ── shared section atoms ── */
.tc-eye{font-family:var(--font-h);font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);display:flex;align-items:center;gap:.6rem}
.tc-eye .num{color:var(--brand);font-feature-settings:"tnum"}
.tc-h1{font-family:var(--font-h);font-weight:400;font-size:2.7rem;line-height:1.05;letter-spacing:-.03em;color:var(--navy)}
.tc-h1 em{font-family:var(--font-serif);font-style:italic;letter-spacing:-.02em}
.tc-lead{font-family:var(--font-body);font-size:1.08rem;line-height:1.6;color:var(--ink-2);max-width:60ch}
.tc-h2{font-family:var(--font-h);font-weight:500;font-size:1.35rem;letter-spacing:-.02em;color:var(--navy)}
.tc-h2 em{font-family:var(--font-serif);font-style:italic;font-weight:400}
.tc-sub{font-family:var(--font-body);font-size:.95rem;line-height:1.55;color:var(--ink-2)}

/* status line */
.tc-status{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-body);font-size:.85rem;color:var(--ink-2)}
.tc-status .dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px var(--green-bg)}
.tc-status .sep{width:3px;height:3px;border-radius:50%;background:var(--dim)}
.tc-status .muted{color:var(--mid)}

/* ── compliance badge band (navy) ── */
.tc-badges{
  background:var(--navy);border-radius:var(--r-card-lg);
  padding:30px 36px;display:flex;align-items:stretch;gap:0;
  position:relative;overflow:hidden;
}
.tc-badges::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 70% at 92% 0%,rgba(41,82,217,.18),transparent 60%)}
.tc-badge{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:11px;padding:4px 22px;border-left:1px solid rgba(255,255,255,.08);position:relative;z-index:1}
.tc-badge:first-child{border-left:0}
.tc-badge img{height:62px;width:auto;object-fit:contain}
.tc-badge .nm{font-family:var(--font-h);font-size:.82rem;font-weight:600;color:#fff;letter-spacing:-.005em}
.tc-chip{font-family:var(--font-h);font-size:.64rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:5px}
.tc-chip::before{content:"";width:5px;height:5px;border-radius:50%}
.tc-chip-on{background:rgba(63,122,82,.18);color:#8fd0a3}.tc-chip-on::before{background:#8fd0a3}
.tc-chip-inh{background:rgba(41,82,217,.18);color:#9db8ff}.tc-chip-inh::before{background:#9db8ff}
.tc-chip-wip{background:rgba(184,130,28,.2);color:#e0b463}.tc-chip-wip::before{background:#e0b463}
.tc-badges-note{font-family:var(--font-body);font-size:.82rem;line-height:1.5;color:var(--mid)}

/* ── accordion control category ── */
.tc-acc{background:#fff;border:1px solid var(--rule);border-radius:var(--r-card);overflow:hidden;transition:border-color .2s}
.tc-acc + .tc-acc{margin-top:10px}
.tc-acc-head{display:flex;align-items:center;gap:16px;padding:20px 22px;cursor:pointer;user-select:none}
.tc-acc-ico{width:38px;height:38px;border-radius:8px;background:var(--off-2);display:flex;align-items:center;justify-content:center;color:var(--navy);flex-shrink:0}
.tc-acc-ttl{font-family:var(--font-h);font-size:1.05rem;font-weight:500;color:var(--navy);letter-spacing:-.01em}
.tc-acc-dsc{font-family:var(--font-body);font-size:.85rem;color:var(--mid);margin-top:2px}
.tc-acc-meta{margin-left:auto;display:flex;align-items:center;gap:14px;flex-shrink:0}
.tc-acc-count{font-family:var(--font-h);font-size:.74rem;font-weight:600;letter-spacing:.04em;color:var(--green);display:inline-flex;align-items:center;gap:5px;font-feature-settings:"tnum"}
.tc-acc-count::before{content:"✓";font-size:.8rem}
.tc-chev{width:18px;height:18px;color:var(--mid);transition:transform .25s var(--ease)}
.tc-acc.open .tc-chev{transform:rotate(90deg)}
.tc-acc-body{padding:0 22px;max-height:0;overflow:hidden;transition:max-height .3s var(--ease),padding .3s var(--ease)}
.tc-acc.open .tc-acc-body{padding:0 22px 20px;max-height:900px}
.tc-acc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;padding-top:4px;border-top:1px solid var(--rule-2)}
.tc-ctrl{display:flex;gap:11px;align-items:flex-start;padding-top:14px}
.tc-check{width:18px;height:18px;border-radius:50%;background:var(--green-bg);color:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.62rem;font-weight:700;margin-top:1px}
.tc-ctrl-t{font-family:var(--font-body);font-size:.92rem;color:var(--ink);line-height:1.4}
.tc-ctrl-t span{display:block;color:var(--mid);font-size:.82rem;margin-top:2px;line-height:1.45}

/* ── documents ── */
.tc-docs{display:flex;flex-direction:column;gap:8px}
.tc-doc{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--rule);border-radius:var(--r-card);padding:15px 18px;transition:border-color .2s}
.tc-doc:hover{border-color:rgba(14,27,51,.18)}
.tc-doc-ico{width:34px;height:42px;border-radius:3px;background:var(--off-2);border:1px solid var(--rule);position:relative;flex-shrink:0;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;font-family:var(--font-h);font-size:.5rem;font-weight:700;letter-spacing:.06em;color:var(--mid)}
.tc-doc-ico::before{content:"";position:absolute;top:0;right:0;border-width:0 8px 8px 0;border-style:solid;border-color:var(--off) var(--off) transparent transparent}
.tc-doc-meta{min-width:0}
.tc-doc-nm{font-family:var(--font-h);font-size:.95rem;font-weight:500;color:var(--navy);letter-spacing:-.005em}
.tc-doc-ds{font-family:var(--font-body);font-size:.82rem;color:var(--mid);margin-top:1px}
.tc-doc-act{margin-left:auto;font-family:var(--font-body);font-size:.85rem;font-weight:500;color:var(--brand);display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0;white-space:nowrap}
.tc-doc-act.gated{color:var(--mid)}
.tc-doc-act svg{width:13px;height:13px}

/* ── subprocessors ── */
.tc-table{width:100%;background:#fff;border:1px solid var(--rule);border-radius:var(--r-card);overflow:hidden;border-collapse:collapse}
.tc-table th{font-family:var(--font-h);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);text-align:left;padding:12px 18px;background:var(--off-2);border-bottom:1px solid var(--rule)}
.tc-table td{font-family:var(--font-body);font-size:.88rem;color:var(--ink-2);padding:13px 18px;border-bottom:1px solid var(--rule-2)}
.tc-table tr:last-child td{border-bottom:0}
.tc-table td.nm{font-family:var(--font-h);font-weight:500;color:var(--navy);letter-spacing:-.005em}
.tc-flag{font-family:var(--font-h);font-size:.7rem;font-weight:600;color:var(--green);background:var(--green-bg);padding:2px 7px;border-radius:var(--r-chip);letter-spacing:.02em}

/* spacing helpers */
.tc-block{margin-top:54px}
.tc-block-head{margin-bottom:20px}
.tc-detail-link{font-family:var(--font-body);font-size:.88rem;font-weight:500;color:var(--brand);display:inline-flex;align-items:center;gap:.4rem;margin-top:14px}
.tc-detail-link svg{width:13px;height:13px}

/* ═══════════ VARIANT A — sidebar ═══════════ */
.va-shell{display:grid;grid-template-columns:232px 1fr;gap:48px;padding:46px 0 64px}
.va-nav{position:sticky;top:24px;align-self:start;display:flex;flex-direction:column;gap:2px}
.va-nav-eye{font-family:var(--font-h);font-size:.66rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:12px}
.va-nav a{font-family:var(--font-body);font-size:.92rem;color:var(--mid);padding:8px 12px;border-radius:var(--r-btn);border-left:2px solid transparent;transition:color .2s,background .2s}
.va-nav a.on{color:var(--navy);background:#fff;border-left-color:var(--navy);font-weight:500}
.va-card-status{background:#fff;border:1px solid var(--rule);border-radius:var(--r-card);padding:16px;margin-top:20px}
.va-card-status .lbl{font-family:var(--font-h);font-size:.64rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mid);margin-bottom:8px}

/* ═══════════ VARIANT C — tabs ═══════════ */
.vc-tabs{display:flex;gap:4px;border-bottom:1px solid var(--rule);margin-top:30px}
.vc-tab{font-family:var(--font-h);font-size:.95rem;font-weight:500;color:var(--mid);padding:12px 18px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .2s,border-color .2s}
.vc-tab.on{color:var(--navy);border-bottom-color:var(--navy)}
.vc-panel{padding-top:36px}

/* standalone A page extras */
.pa-hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px}
.pa-hero-actions .tc-btn{margin-left:0}
.va-nav-ext{margin-top:8px;padding-top:14px!important;border-top:1px solid var(--rule)!important;color:var(--brand)!important;display:inline-flex;align-items:center;gap:.45rem;font-weight:500!important;border-left:2px solid transparent}
.va-nav-ext svg{width:13px;height:13px}
