/* =====================================================================
   AllCoaching Blog v3 — "guide" layout (2026-10-24)
   Reading layout modelled on the Shopify blog: Inter at weight 330 for
   headlines, 20px grey body copy, a three-column grid with a sticky
   "On this page" rail, a CTA card and a related-posts rail, visuals on
   soft gradient panels. Loaded after brand.css on posts that use the
   v3 template (body.v3). Colour stays AllCoaching: electric blue accent.
   ===================================================================== */

body.v3{
  --v3-ink:#000;
  --v3-ink-2:rgba(0,0,0,.6);
  --v3-ink-3:rgba(0,0,0,.45);
  --v3-line:#E3E3E3;
  --v3-panel:#F4F4F0;
  --v3-blue:#2B44FF;
  --v3-blue-h:#1A2FD9;
  --v3-card:#B4C1FF;
  --v3-font:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;
  --v3-mono:'IBM Plex Mono',ui-monospace,monospace;
  background:#fff!important;
  color:var(--v3-ink);
  font-family:var(--v3-font);
  font-feature-settings:"ss01" 0;
  -webkit-font-smoothing:antialiased;
  margin:0;
}
body.v3 *{box-sizing:border-box}
body.v3 img{max-width:100%;height:auto;display:block}

/* ---------- reading progress ---------- */
.v3-progress{position:fixed;top:0;left:0;height:4px;width:0;background:var(--v3-blue);z-index:60;transition:width .08s linear}

/* ---------- header ---------- */
.v3-head{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--v3-line)}
.v3-head-in{max-width:1260px;margin:0 auto;padding:0 16px;height:72px;display:flex;align-items:center;gap:32px}
.v3-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#000;flex-shrink:0}
.v3-logo img{width:34px;height:34px;border-radius:9px}
.v3-logo .word{font-size:25px;line-height:1;color:#000}
.v3-nav{display:flex;gap:32px;align-items:center}
.v3-nav a{font-size:16px;color:#000;text-decoration:none;white-space:nowrap}
.v3-nav a.on{font-weight:650}
.v3-nav a:hover{text-decoration:underline;text-underline-offset:4px}
.v3-head-r{margin-left:auto;display:flex;align-items:center;gap:32px}
.v3-head-r .login{font-size:16px;color:#000;text-decoration:none}
.v3-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 22px;border-radius:999px;background:#000;color:#fff!important;font:600 16px/1 var(--v3-font);text-decoration:none;border:2px solid #000;transition:background .15s,border-color .15s;white-space:nowrap}
.v3-btn:hover{background:var(--v3-blue);border-color:var(--v3-blue)}
.v3-btn.ghost{background:transparent;color:#000!important}
.v3-btn.ghost:hover{background:#000;color:#fff!important;border-color:#000}
.v3-btn.lg{height:56px;padding:0 28px;font-size:18px}
@media (max-width:1023px){.v3-nav{display:none}.v3-head-r{gap:16px}.v3-head-r .login{display:none}}
@media (max-width:420px){.v3-logo .word{font-size:22px}.v3-btn{padding:0 16px;font-size:15px}}

/* ---------- promo strip (top of post) ---------- */
.v3-promo{background:var(--v3-panel);padding:44px 16px 48px;text-align:center}
.v3-promo h2{margin:0;font:400 32px/1.15 var(--v3-font);letter-spacing:-.01em;text-transform:uppercase}
.v3-promo p{margin:12px auto 24px;max-width:680px;font-size:15px;line-height:1.45;color:#000}
.v3-promo .row{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}
@media (max-width:640px){.v3-promo h2{font-size:24px}.v3-promo .row{gap:12px}}

/* ---------- hero ---------- */
.v3-hero{max-width:1260px;margin:0 auto;padding:48px 16px 0;text-align:center}
.v3-eyebrow{display:inline-flex;gap:10px;align-items:center;font:550 16px/1 var(--v3-font);letter-spacing:.02em;text-transform:uppercase;color:#000}
.v3-eyebrow a{color:#000;text-decoration:none}
.v3-eyebrow i{width:5px;height:5px;border-radius:50%;background:#000;display:inline-block}
.v3-hero h1{margin:22px auto 0;max-width:768px;font:330 56px/1.08 var(--v3-font);letter-spacing:-.01em;color:#000}
.v3-dek{margin:28px auto 0;max-width:740px;font-size:20px;line-height:1.4;color:var(--v3-ink-2)}
.v3-cover{margin:40px 0 0;background:#E8ECFF;overflow:hidden}
.v3-cover img{width:100%;aspect-ratio:16/9;object-fit:cover}
@media (max-width:767px){.v3-hero{padding-top:32px}.v3-eyebrow{font-size:13px}.v3-hero h1{font-size:36px;line-height:1.12;letter-spacing:0}.v3-dek{font-size:18px}.v3-cover{margin:28px -16px 0}}

/* ---------- three-column grid ---------- */
.v3-grid{max-width:1260px;margin:0 auto;padding:56px 16px 0;display:grid;grid-template-columns:285px minmax(0,610px) 285px;column-gap:40px;justify-content:center;align-items:start}
.v3-left,.v3-right{position:sticky;top:104px;align-self:start}
.v3-left{max-height:calc(100vh - 120px);overflow:auto;scrollbar-width:none}
@media (max-width:1259px){.v3-grid{grid-template-columns:240px minmax(0,610px) 240px;column-gap:28px}}
@media (max-width:1100px){.v3-grid{grid-template-columns:240px minmax(0,1fr);}.v3-right{display:none}}
@media (max-width:860px){.v3-grid{display:block;padding-top:28px}.v3-left{position:static;max-height:none;overflow:visible}}

/* "On this page" */
.v3-toc h2{margin:0 0 28px;font:400 20px/1.2 var(--v3-font);color:#000}
.v3-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid #CFCFCF}
.v3-toc li a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:14px;line-height:1.3;color:#000;text-decoration:none}
.v3-toc li a:hover{text-decoration:underline}
.v3-toc li a.on{border-left-color:#000;font-weight:650}
.v3-toc-m{display:none}
@media (max-width:860px){
  .v3-toc{display:none}
  .v3-toc-m{display:block;border:1px solid var(--v3-line);border-radius:12px;margin:0 0 24px}
  .v3-toc-m summary{list-style:none;cursor:pointer;padding:16px 20px;font-size:17px;display:flex;justify-content:space-between;align-items:center}
  .v3-toc-m summary::-webkit-details-marker{display:none}
  .v3-toc-m summary::after{content:"";width:9px;height:9px;border-right:2px solid #000;border-bottom:2px solid #000;transform:rotate(45deg);margin-top:-4px;transition:transform .2s}
  .v3-toc-m[open] summary::after{transform:rotate(-135deg);margin-top:4px}
  .v3-toc-m ol{list-style:none;margin:0;padding:0 20px 16px}
  .v3-toc-m li a{display:block;padding:8px 0;font-size:15px;color:#000;text-decoration:none;border-top:1px solid #F0F0F0}
}

/* side CTA card */
.v3-sidecta{margin-top:56px;background:var(--v3-card);padding:28px 24px 24px}
.v3-sidecta p{margin:0;font:400 28px/1.2 var(--v3-font);letter-spacing:-.01em;color:#000}
.v3-sidecta p b{font-weight:650}
.v3-sidecta a{margin-top:28px;display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;border-bottom:1px solid #000;color:#000;text-decoration:none;font-weight:600;font-size:18px}
.v3-sidecta a svg{width:16px;height:16px}
.v3-sidecta-m{display:none}
@media (max-width:860px){.v3-left .v3-sidecta{display:none}.v3-sidecta-m{display:block;margin:0 0 32px}.v3-sidecta-m .v3-sidecta{margin:0}.v3-sidecta p{font-size:24px}}

/* right rail */
.v3-byline{display:flex;gap:16px;align-items:center}
.v3-byline img{width:56px;height:56px;border-radius:50%;object-fit:cover}
.v3-byline b{display:block;font-size:16px;font-weight:600}
.v3-byline a{color:#000;text-decoration:none}
.v3-byline span{display:block;margin-top:4px;font-size:14px;color:var(--v3-ink-2)}
.v3-rail-h{margin:48px 0 20px;padding-top:28px;border-top:1px solid var(--v3-line);font:400 24px/1.2 var(--v3-font)}
.v3-rail-post{display:block;margin:0 0 22px;text-decoration:none;color:#000}
.v3-rail-post small{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}
.v3-rail-post span{font-size:16px;font-weight:550;line-height:1.4}
.v3-rail-post:hover span{text-decoration:underline}
.v3-byline-m{display:none}
@media (max-width:1100px){.v3-byline-m{display:flex;margin:0 0 28px}}

/* ---------- article body ---------- */
.v3-body{min-width:0;font-size:20px;line-height:1.4;color:var(--v3-ink-2)}
.v3-body > p,.v3-body section > p,.v3-body li{margin:0}
.v3-body p + p{margin-top:24px}
.v3-body section{scroll-margin-top:96px}
.v3-body h2{margin:72px 0 28px;font:330 44px/1.1 var(--v3-font);letter-spacing:-.01em;color:#000;scroll-margin-top:96px}
.v3-body h3{margin:48px 0 20px;font:330 34px/1.14 var(--v3-font);color:#000;scroll-margin-top:96px}
.v3-body h4{margin:32px 0 12px;font:600 20px/1.3 var(--v3-font);color:#000}
.v3-body a{color:#000;font-weight:550;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.v3-body a:hover{color:var(--v3-blue)}
.v3-body strong{color:#000;font-weight:600}
.v3-body ul,.v3-body ol{margin:24px 0;padding-left:20px}
.v3-body li{padding-left:6px;margin-top:12px}
.v3-body li::marker{color:#000}
.v3-body ol > li::marker{font-weight:600}
.v3-body > section:first-child > p:first-child{margin-top:0}
@media (max-width:767px){.v3-body{font-size:18px}.v3-body h2{font-size:30px;line-height:1.14;margin-top:56px}.v3-body h3{font-size:25px;margin-top:40px}}

/* figure on a gradient panel */
.v3-fig{margin:40px 0}
.v3-fig .pane{border-radius:0;overflow:hidden}
.v3-fig img{width:100%}
.v3-fig figcaption{margin-top:12px;font-size:14px;line-height:1.45;color:var(--v3-ink-3)}

/* key takeaways */
.v3-keys{margin:40px 0;background:var(--v3-panel);border-radius:24px;padding:32px}
.v3-keys h2{margin:0 0 4px!important;font-size:28px!important}
.v3-keys ul{margin:16px 0 0;padding-left:20px}
.v3-keys li{font-size:18px;line-height:1.45}

/* inline CTA card */
.v3-cta{margin:48px 0;background:var(--v3-panel);border-radius:24px;padding:32px}
.v3-cta p.t{margin:0;font:400 26px/1.25 var(--v3-font);color:#000}
.v3-cta p.t em{font-style:normal;color:var(--v3-blue)}
.v3-cta p.s{margin:10px 0 22px!important;font-size:16px;color:var(--v3-ink-2)}
.v3-cta .row{display:flex;gap:12px;flex-wrap:wrap}
.v3-cta small{display:block;margin-top:16px;font-size:14px;color:var(--v3-ink-2)}
@media (max-width:540px){.v3-cta .v3-btn{width:100%}}

/* question box (inline Q&A, also used for glossary terms) */
.v3-q{margin:40px 0;border-top:4px solid var(--v3-blue);background:var(--v3-panel);padding:28px 32px}
.v3-q .l{margin:0 0 8px!important;font:600 12px/1 var(--v3-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--v3-blue)}
.v3-q h3,.v3-q h4{margin:0 0 12px!important;font:600 22px/1.3 var(--v3-font)!important;color:#000}
.v3-q p{font-size:18px;line-height:1.45}
.v3-q p + p{margin-top:14px}

/* pull quote */
.v3-quote{margin:48px 0;padding:0 0 0 28px;border-left:4px solid #000}
.v3-quote p{margin:0;font:330 30px/1.25 var(--v3-font);color:#000}
.v3-quote cite{display:block;margin-top:16px;font-style:normal;font-size:16px;color:var(--v3-ink-2)}

/* step list (big numbers) */
.v3-steps{list-style:none;padding:0!important;margin:32px 0;counter-reset:s}
.v3-steps li{counter-increment:s;position:relative;padding:24px 0 24px 72px!important;margin:0!important;border-top:1px solid var(--v3-line)}
.v3-steps li:last-child{border-bottom:1px solid var(--v3-line)}
.v3-steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:22px;font:330 36px/1 var(--v3-font);color:var(--v3-blue)}
.v3-steps b{display:block;color:#000;font-weight:600;margin-bottom:6px}
.v3-steps span{font-size:18px}

/* table */
.v3-table{margin:32px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.v3-table table{width:100%;min-width:560px;border-collapse:collapse;font-size:16px;line-height:1.4;color:var(--v3-ink-2)}
.v3-table th{background:#EFEFEF;color:#000;font-weight:650;text-align:left;padding:12px 14px;border:1px solid #DADADA;vertical-align:bottom}
.v3-table td{padding:12px 14px;border:1px solid #DADADA;vertical-align:top}
.v3-table td:first-child{color:#000;font-weight:550}
.v3-table caption{caption-side:bottom;text-align:left;padding-top:10px;font-size:14px;color:var(--v3-ink-3)}

/* two-up cards (do / avoid) */
.v3-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:32px 0}
.v3-pair > div{border:1px solid var(--v3-line);border-radius:16px;padding:24px}
.v3-pair h4{margin:0 0 10px!important;font-size:17px!important}
.v3-pair p{font-size:16px;line-height:1.45}
.v3-pair .yes{border-top:4px solid #1F9D55}
.v3-pair .no{border-top:4px solid #D93025}
@media (max-width:640px){.v3-pair{grid-template-columns:1fr}}

/* FAQ */
.v3-faq{margin:72px 0 0;border-top:4px solid var(--v3-blue);background:var(--v3-panel);padding:32px}
.v3-faq h2{margin:0 0 8px!important;font-size:30px!important}
.v3-faq details{border-bottom:1px solid #DCDCD6;padding:18px 0}
.v3-faq details:last-child{border-bottom:0}
.v3-faq summary{cursor:pointer;list-style:none;font:600 20px/1.35 var(--v3-font);color:#000;display:flex;gap:16px;justify-content:space-between}
.v3-faq summary::-webkit-details-marker{display:none}
.v3-faq summary::after{content:"+";font-weight:330;font-size:28px;line-height:.9;flex-shrink:0}
.v3-faq details[open] summary::after{content:"\2212"}
.v3-faq details p{margin-top:12px!important;font-size:18px;line-height:1.45}

/* glossary + references */
.v3-gloss dl{margin:24px 0 0}
.v3-gloss dt{margin-top:24px;font-weight:600;color:#000;font-size:20px}
.v3-gloss dt dfn{font-style:normal}
.v3-gloss dd{margin:6px 0 0;font-size:18px;line-height:1.45}
.v3-refs ol{font-size:15px;line-height:1.55}
.v3-refs li{margin-top:10px}

/* author box at the end */
.v3-author{margin:64px 0 0;padding:32px 0;border-top:1px solid var(--v3-line);border-bottom:1px solid var(--v3-line);display:flex;gap:20px}
.v3-author img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0}
.v3-author b{display:block;color:#000;font-size:18px}
.v3-author span{display:block;font-size:15px;margin-top:2px}
.v3-author p{margin-top:12px!important;font-size:16px;line-height:1.5}

/* ---------- popular posts strip ---------- */
.v3-more{max-width:1260px;margin:96px auto 0;padding:0 16px}
.v3-more h2{margin:0 0 32px;font:330 44px/1.1 var(--v3-font);letter-spacing:-.01em}
.v3-more-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.v3-more a{text-decoration:none;color:#000;display:block}
.v3-more .th{aspect-ratio:16/10;border-radius:4px;overflow:hidden;background:#E8ECFF}
.v3-more .th img{width:100%;height:100%;object-fit:cover}
.v3-more small{display:block;margin-top:16px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.v3-more span{display:block;margin-top:8px;font-size:18px;line-height:1.3}
.v3-more a:hover span{text-decoration:underline}
@media (max-width:1023px){.v3-more-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.v3-more h2{font-size:30px}.v3-more-grid{grid-template-columns:1fr}}

/* ---------- dark sign-up band ---------- */
.v3-band{margin:96px auto 0;max-width:1260px;display:grid;grid-template-columns:1fr 1fr;background:#000;color:#fff;border-radius:24px;overflow:hidden}
.v3-band .art{background:#0A0F3D}
.v3-band .art img{width:100%;height:100%;object-fit:cover}
.v3-band .txt{padding:56px 48px;display:flex;flex-direction:column;justify-content:center}
.v3-band h2{margin:0;font:330 44px/1.1 var(--v3-font);letter-spacing:-.01em;color:#fff}
.v3-band p{margin:16px 0 28px;font-size:18px;line-height:1.45;color:rgba(255,255,255,.7)}
.v3-band .v3-btn{background:#fff;color:#000!important;border-color:#fff;align-self:flex-start}
.v3-band .v3-btn:hover{background:var(--v3-card);border-color:var(--v3-card)}
.v3-band small{margin-top:14px;font-size:13px;color:rgba(255,255,255,.55)}
@media (max-width:860px){.v3-band{grid-template-columns:1fr;margin:64px 16px 0;border-radius:16px}.v3-band .txt{padding:36px 24px}.v3-band h2{font-size:32px}}
body.v3 footer{margin-top:96px}

@media (prefers-reduced-motion:reduce){.v3-progress{transition:none}.v3-toc-m summary::after{transition:none}}
@media print{.v3-head,.v3-left,.v3-right,.v3-promo,.v3-band,.v3-more,.v3-progress,.fab-wa,footer{display:none!important}.v3-grid{display:block}}
.v3-body .v3-byline a,.v3-body .v3-sidecta a{text-decoration:none;color:#000}
.v3-body .v3-sidecta a{text-decoration:none;font-weight:600}
.v3-body .v3-byline a{font-weight:600}
.v3-checked{display:inline-flex;align-items:center;gap:8px;margin:20px auto 0;padding:8px 16px;border:1.5px solid var(--v3-blue);border-radius:999px;font:600 14px/1.2 var(--v3-font);color:var(--v3-blue)}
.v3-checked::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--v3-blue)}
/* option cards for comparison posts */
.v3-opt{margin:28px 0;border:1px solid var(--v3-line);border-radius:20px;padding:24px 28px}
.v3-opt.us{border:2px solid var(--v3-blue);background:#F7F8FF}
.v3-opt h3{margin:0 0 6px!important;font:600 26px/1.2 var(--v3-font)!important;color:#000}
.v3-opt .tag{display:inline-block;margin:0 0 14px;font:600 12px/1 var(--v3-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--v3-blue)}
.v3-opt dl{display:grid;grid-template-columns:150px 1fr;gap:8px 16px;margin:0;font-size:17px;line-height:1.45}
.v3-opt dt{color:#000;font-weight:600}
.v3-opt dd{margin:0}
@media (max-width:640px){.v3-opt{padding:20px}.v3-opt dl{grid-template-columns:1fr}.v3-opt dt{margin-top:8px}}
.v3-note{margin:24px 0;padding:16px 20px;border-left:3px solid #000;background:#FAFAF8;font-size:16px;line-height:1.5}
