/* Handover — shared stylesheet for /guides/ pages.
   Tokens, header, footer and article furniture are the same values used by
   index.html, website-handover-guide.html and help.html. Anything below the
   "guides only" marker is new and used only inside /guides/. */

@font-face{font-family:'IBM Plex Sans';src:url('/fonts/IBMPlexSans-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/IBMPlexSans-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/IBMPlexSans-SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{
  font-family:'Plex Fallback';
  src:local('Arial'),local('Helvetica Neue'),local('Liberation Sans');
  size-adjust:99.4%;ascent-override:102.5%;descent-override:27.5%;line-gap-override:0%;
}

:root{
  --bg:#fbfaf8; --surface:#ffffff; --surface-2:#f6f3ef;
  --ink:#171512; --ink-2:#4f4a45; --muted:#746e67;
  --line:#e6e1dc; --line-2:#efeae5;
  --accent:#e24832; --accent-ink:#bf321f; --accent-soft:#ffe8e0; --accent-line:#f0d4ca;
  --success:#34725b;
  --shadow:0 1px 2px rgba(36,27,19,.04),0 14px 34px -14px rgba(36,27,19,.16);
  --r-sm:12px; --r-md:20px; --r-lg:28px;
  --max:1120px;
  --font:'IBM Plex Sans','Plex Fallback','Segoe UI',system-ui,-apple-system,sans-serif;
  --mono:ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,svg{display:block}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3{font-weight:600;letter-spacing:-.028em;line-height:1.1}
.wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:12px 18px;z-index:999;border-radius:0 0 10px 0;font-weight:600}
.skip:focus{left:0}

/* ---------- header ---------- */
header{position:sticky;top:0;z-index:50;background:rgba(251,250,248,.82);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border-bottom:1px solid transparent;transition:border-color .2s ease}
header.stuck{border-bottom-color:var(--line)}
.navbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;letter-spacing:-.022em;font-size:22px}
.brand-mark{width:28px;height:28px;color:var(--accent);flex:none}
nav{display:flex;align-items:center;gap:4px}
nav a{font-size:15px;color:var(--ink-2);padding:9px 12px;border-radius:10px;transition:.15s ease}
nav a:hover{color:var(--ink);background:rgba(23,21,18,.045)}
nav .nav-cta{background:var(--ink);color:#fff;font-weight:500;padding-inline:16px;margin-left:4px}
nav .nav-cta:hover{background:#3a3531;color:#fff}
.nav-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;margin-left:4px;padding:0;flex:none;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);cursor:pointer;transition:.15s ease}
.nav-toggle:hover{background:rgba(23,21,18,.045)}
.nav-toggle svg{width:20px;height:20px}
.nav-toggle .ico-x{display:none}
.nav-toggle[aria-expanded="true"] .ico-bars{display:none}
.nav-toggle[aria-expanded="true"] .ico-x{display:block}
.nav-panel{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 14px 30px rgba(23,21,18,.10)}
.nav-panel-inner{width:min(calc(100% - 32px),var(--max));margin-inline:auto;padding:10px 0 18px;display:flex;flex-direction:column;gap:2px}
.nav-panel a{font-size:16.5px;padding:13px 12px;border-radius:10px}
.nav-panel .nav-cta{margin:10px 0 0;text-align:center;justify-content:center}
@media(max-width:860px){
  .js nav .nav-inline{display:none}
  .js .nav-toggle{display:inline-flex}
  .js .nav-panel:not([hidden]){display:block}
}
@media(max-width:430px){
  .js nav .nav-pricing{display:none}
}
@media(max-width:860px){
  html:not(.js) .navbar{height:auto;padding:12px 0;flex-wrap:wrap;row-gap:8px}
}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:var(--r-sm);background:var(--ink);color:#fff;font-weight:600;font-size:16px;letter-spacing:-.01em;box-shadow:0 1px 2px rgba(23,21,18,.18),0 12px 26px -14px rgba(23,21,18,.6);transition:transform .16s ease,background .16s ease,box-shadow .16s ease}
.btn:hover{background:#3a3531;color:#fff;transform:translateY(-1px);box-shadow:0 2px 4px rgba(23,21,18,.2),0 18px 32px -16px rgba(23,21,18,.65)}
.btn svg{opacity:.65}
.btn-note{display:block;margin-top:12px;font-size:14px;color:var(--muted)}
.link-quiet{color:var(--ink-2);font-size:16px;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:2px;transition:.16s ease}
.link-quiet:hover{color:var(--ink);border-bottom-color:var(--ink)}

/* ---------- page head ---------- */
.pagehead{padding:56px 0 30px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;margin:0 0 18px;color:var(--accent-ink);font-size:12px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:1px;background:currentColor;opacity:.55}
.pagehead h1{font-size:clamp(34px,4.2vw,50px);margin:0 0 16px;max-width:20ch}
.pagehead p{color:var(--ink-2);font-size:18px;max-width:62ch;margin:0}

/* ---------- layout: sidebar + content ---------- */
.docs{display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;align-items:start;padding-bottom:96px}

.toc{position:sticky;top:96px;font-size:15px}
.toc h2{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 14px;padding-left:12px}
.toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.toc li{margin:0}
.toc a{display:block;padding:7px 12px;color:var(--ink-2);border-left:2px solid transparent;margin-left:-1px;transition:.15s ease;line-height:1.4}
.toc a:hover{color:var(--ink);background:rgba(23,21,18,.035)}
.toc a.on{color:var(--accent-ink);border-left-color:var(--accent);font-weight:500;background:rgba(255,232,224,.45)}
.toc .toc-foot{margin-top:22px;padding-left:12px;font-size:14px;color:var(--muted)}
.toc .toc-foot a{display:inline;padding:0;color:var(--ink-2);border:0;border-bottom:1px solid var(--line)}
.toc .toc-foot a:hover{background:none;color:var(--ink);border-bottom-color:var(--ink)}

.doc h2{font-size:clamp(24px,2.6vw,31px);margin:0 0 16px;scroll-margin-top:96px}
.doc section{padding:0 0 60px}
.doc section + section{border-top:1px solid var(--line-2);padding-top:52px}
.doc h3{font-size:19px;margin:34px 0 10px}
.doc p{color:var(--ink-2);max-width:66ch}
.doc ul,.doc ol{color:var(--ink-2);max-width:66ch;padding-left:22px}
.doc li{margin-bottom:8px}
.doc strong{color:var(--ink);font-weight:600}
.doc code{font-family:var(--mono);font-size:14.5px;background:var(--surface-2);border:1px solid var(--line);border-radius:7px;padding:1px 6px}

.callout{margin:26px 0 0;padding:18px 20px;border:1px solid var(--accent-line);background:rgba(255,232,224,.5);border-radius:var(--r-sm)}
.callout p{margin:0;color:var(--ink);font-size:16px;max-width:none}
.callout p + p{margin-top:10px}
.callout strong{color:var(--accent-ink)}

.note{margin:26px 0 0;padding:18px 20px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm)}
.note p{margin:0;font-size:16px;max-width:none}
.note p + p{margin-top:10px}

.steps{counter-reset:s;list-style:none;padding:0;margin:22px 0 0;max-width:66ch}
.steps li{counter-increment:s;position:relative;padding-left:44px;margin-bottom:16px}
.steps li::before{content:counter(s);position:absolute;left:0;top:1px;width:28px;height:28px;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;font-weight:600;display:grid;place-items:center}
.steps strong{display:block}

.faq{margin-top:22px;max-width:70ch}
.faq details{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);margin-bottom:10px}
.faq summary{cursor:pointer;padding:15px 18px;font-weight:500;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--muted);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq .a{padding:0 18px 16px;color:var(--ink-2);font-size:16px}
.faq .a p{margin:0}
.faq .a p + p{margin-top:10px}

.answer{font-size:18.5px;color:var(--ink);border-left:3px solid var(--accent);padding-left:18px;margin-bottom:20px;max-width:64ch}
.keyfacts{list-style:none;padding:0;margin:22px 0 0;max-width:66ch}
.keyfacts li{position:relative;padding-left:26px;margin-bottom:10px;color:var(--ink-2)}
.keyfacts li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:7px;border-radius:999px;background:var(--accent)}

.cmp{margin:26px 0 0;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}
.cmp table{border-collapse:collapse;width:100%;font-size:15.5px;min-width:640px}
.cmp caption{text-align:left;padding:14px 18px 0;font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600}
.cmp th,.cmp td{padding:13px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-2)}
.cmp thead th{font-size:13.5px;letter-spacing:.02em;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}
.cmp tbody th{font-weight:500;color:var(--ink);width:26%}
.cmp td{color:var(--ink-2)}
.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:0}
@media print{.cmp{overflow:visible}.cmp table{min-width:0}}
@media screen and (max-width:640px){
  .cmp table{min-width:0}
  .cmp thead{display:none}
  .cmp table,.cmp tbody,.cmp tr,.cmp th,.cmp td{display:block;width:auto}
  .cmp caption{display:block;padding-bottom:6px}
  .cmp tbody tr{padding:14px 18px;border-bottom:1px solid var(--line-2)}
  .cmp tbody tr:last-child{border-bottom:0}
  .cmp tbody th,.cmp td{padding:0;border:0}
  .cmp tbody th{width:auto}
  .cmp td{margin-top:10px}
  .cmp td[data-label]::before{content:attr(data-label);display:block;font-size:12.5px;letter-spacing:.02em;color:var(--muted);font-weight:600;margin-bottom:2px}
}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--line);padding:34px 0 46px}
.foot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.foot .brand span{font-size:17px}
.foot .brand-mark{width:22px;height:22px}
.foot p{margin:0;font-size:14px;color:var(--muted)}
.foot nav{display:flex;gap:22px;font-size:14px;flex-wrap:wrap}
.foot nav a{color:var(--muted);padding:0}
.foot nav a:hover{color:var(--ink);background:none}

:where(a,button,[tabindex]):focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px;border-radius:6px}

/* ========================================================================
   guides only — components that do not exist on the older pages
   ======================================================================== */

/* Breadcrumb above the page head */
.crumbs{padding:22px 0 0;font-size:14px;color:var(--muted)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}
.crumbs li{display:flex;align-items:center;gap:8px;margin:0}
.crumbs li + li::before{content:"/";color:var(--line)}
.crumbs a{color:var(--ink-2);border-bottom:1px solid transparent}
.crumbs a:hover{color:var(--ink);border-bottom-color:var(--line)}
.crumbs [aria-current]{color:var(--muted)}

/* Printable / checkable list */
.checklist{list-style:none;margin:22px 0 0;padding:0;max-width:66ch}
.checklist li{position:relative;padding-left:34px;margin-bottom:14px;color:var(--ink-2)}
.checklist li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border:1.5px solid var(--line);border-radius:5px;background:var(--surface)}
.checklist strong{display:block;color:var(--ink);font-weight:600}
.checklist .why{display:block;font-size:15.5px;color:var(--muted)}

.checkbox-card{margin:26px 0 0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:26px 28px;box-shadow:var(--shadow)}
.checkbox-card > h3:first-child{margin-top:0}
.checkbox-card h3{font-size:16px;margin:30px 0 6px;letter-spacing:.02em}
.checkbox-card .checklist{margin-top:12px}
.checkbox-card .card-foot{margin:26px 0 0;padding-top:18px;border-top:1px solid var(--line-2);font-size:14.5px;color:var(--muted)}
.checkbox-card .card-foot p{margin:0;max-width:none;color:var(--muted)}

/* Mid-page contextual CTA */
.inline-cta{margin:34px 0 0;padding:24px 26px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}
.inline-cta h3{margin:0 0 8px;font-size:20px}
.inline-cta p{margin:0 0 16px;color:var(--ink-2);max-width:56ch;font-size:16.5px}
.inline-cta a{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--accent-ink);font-size:16px}
.inline-cta a:hover{color:var(--ink)}
.inline-cta a svg{opacity:.8}

/* Related guides + hub cards */
.gcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin:24px 0 0;padding:0;list-style:none}
.gcards li{margin:0}
.gcard{display:flex;flex-direction:column;height:100%;padding:24px 26px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.gcard:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--line-2)}
.gcard h3{margin:0 0 8px;font-size:19px;letter-spacing:-.02em}
.gcard p{margin:0;color:var(--ink-2);font-size:16px;max-width:none}
.gcard .arrow{margin-top:18px;display:inline-flex;align-items:center;gap:8px;color:var(--accent-ink);font-size:15px;font-weight:500}
.gcard .arrow svg{opacity:.8}

.gcard-wide{grid-column:1/-1;background:var(--ink);border-color:var(--ink)}
.gcard-wide h3,.gcard-wide p{color:#fff}
.gcard-wide p{color:rgba(255,255,255,.72)}
.gcard-wide .arrow{color:#fff}
.gcard-wide:hover{border-color:var(--ink)}

/* Closing CTA */
.endcta{margin:0;padding:44px 0 0;border-top:1px solid var(--line-2)}
.endcta h2{margin:0 0 10px}
.endcta p{color:var(--ink-2);max-width:56ch}

@media(max-width:900px){
  .docs{grid-template-columns:minmax(0,1fr);gap:30px}
  .toc{position:static;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:18px}
  .toc h2{padding-left:0}
  .toc ol{border-left:0;columns:2;column-gap:18px}
  .toc a{padding:5px 0;border-left:0}
  .toc a.on{background:none}
  .doc section{padding-bottom:44px}
  .doc section + section{padding-top:38px}
  .checkbox-card{padding:22px 20px}
}
@media(max-width:560px){
  .toc ol{columns:1}
  .btn{width:100%}
  .pagehead{padding-top:36px}
}
@media print{
  header,.toc,footer,.inline-cta,.nav-panel,.crumbs{display:none}
  .docs{grid-template-columns:1fr}
  body{font-size:11pt}
  .doc section{break-inside:auto;padding-bottom:24px}
  .checklist li{break-inside:avoid}
  .checkbox-card{border-color:#bbb;box-shadow:none;break-inside:auto}
  .checklist li::before{border-color:#666}
  .gcards{display:none}
  .endcta{display:none}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;color:#666}
}

/* A mid-article CTA breaks section adjacency, so restore the divider after it */
.doc .inline-cta{margin-bottom:0}
.inline-cta + section{margin-top:60px;border-top:1px solid var(--line-2);padding-top:52px}
@media(max-width:900px){.inline-cta + section{margin-top:44px;padding-top:38px}}

/* Copy-and-paste document skeleton */
.skeleton{margin:26px 0 0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}
.skeleton-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid var(--line-2);background:var(--surface-2);font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600}
.skeleton pre{margin:0;padding:20px 18px;overflow-x:auto;font-family:var(--mono);font-size:13.5px;line-height:1.75;color:var(--ink-2);white-space:pre;-moz-tab-size:2;tab-size:2}
.skeleton pre b{color:var(--ink);font-weight:600}
@media print{.skeleton pre{white-space:pre-wrap;overflow:visible;font-size:9pt}}

/* Field lists inside the template sections */
.fields{list-style:none;margin:14px 0 0;padding:0;max-width:66ch}
.fields li{position:relative;padding-left:22px;margin-bottom:9px;color:var(--ink-2);font-size:16.5px}
.fields li::before{content:"";position:absolute;left:0;top:10px;width:9px;height:1.5px;background:var(--line);border-radius:2px}
.fields b{color:var(--ink);font-weight:600}

/* Numbered template sections */
.tsec{margin-top:38px;padding-top:26px;border-top:1px solid var(--line-2)}
.tsec:first-of-type{margin-top:24px;padding-top:0;border-top:0}
.tsec h3{display:flex;align-items:baseline;gap:12px;margin:0 0 8px;font-size:20px}
.tsec h3 .n{flex:none;width:28px;height:28px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:600;display:inline-grid;place-items:center;transform:translateY(2px)}
.tsec p{margin:0}

/* Hub page */
.hub{padding:8px 0 96px}
.hub h2{font-size:clamp(22px,2.4vw,28px);margin:0 0 8px}
.hub .hub-sub{color:var(--ink-2);max-width:62ch;margin:0}
.hub-block + .hub-block{margin-top:56px;padding-top:48px;border-top:1px solid var(--line-2)}
.hub .endcta{margin-top:56px;padding-top:48px}

/* ---------- compact list of every guide (end of each guide) ---------- */
.glist-wrap{margin-top:34px}
.glist-wrap h3{font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 10px}
.glist-wrap ul.glist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2)}
.glist-wrap ul.glist li{margin:0;padding:0;border-bottom:1px solid var(--line-2)}
.glist a,.glist span{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 2px;font-size:16px;line-height:1.35}
.glist a{color:var(--ink);text-decoration:none}
.glist a::after{content:"\2192";color:var(--accent-ink);flex:none}
.glist a:hover{color:var(--accent-ink)}
.glist span{color:var(--muted)}
.glist small{font-size:13px;color:var(--muted);flex:none}
.glist-wrap > p{margin:16px 0 0}
@media print{.glist-wrap{display:none}}

/* ---------- hub: jump chips to every guide, phones only ---------- */
.gjump{display:none}
@media (max-width:760px){
  .gjump{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}
  .gjump li{margin:0}
  .gjump a{display:inline-block;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);font-size:14.5px;line-height:1.3;text-decoration:none}
  .gjump a:hover{border-color:var(--line-2);color:var(--ink)}
}
.gcards li{scroll-margin-top:90px}
@media print{.gjump{display:none}}
