.container{max-width:1440px;margin:0 auto}

/* —— TPM blocks: shell —— */
.cb-tpm-intro,.cb-tpm-seo{
  background:#003E51;
  color:#fff;
  padding:20px 16px;
  margin:8px 0;
  line-height:1.6;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  border-radius:12px;
  font-family:Roboto,system-ui,sans-serif;
  font-size:14px;
}
.cb-tpm-intro{border-top:1px solid rgba(255,255,255,.08)}
.cb-tpm-seo{padding-bottom:32px;border-top:1px solid rgba(255,255,255,.08)}
.cb-tpm-seo--faq{background:transparent;border-top:0;border-radius:0;padding-top:8px;padding-bottom:16px}
.cb-tpm-intro__inner,.cb-tpm-seo__inner{max-width:1440px;margin:0 auto;min-width:0}

/* —— Headings —— */
.cb-tpm-intro h1{
  margin:0 0 14px;
  font-size:clamp(1.25rem,2.8vw,1.625rem);
  font-weight:600;
  line-height:1.25;
  color:#fff;
  scroll-margin-top:5rem;
}
.cb-tpm-intro .entry-content__heading,
.cb-tpm-seo .entry-content__heading,
.cb-tpm-seo h2,
.cb-tpm-seo h3,
.cb-tpm-seo h4,
.cb-tpm-seo h5,
.cb-tpm-seo h6{
  scroll-margin-top:5rem;
  line-height:1.3;
  color:#fff;
}
.cb-tpm-intro .entry-content__heading,
.cb-tpm-seo .entry-content__heading{
  display:inline-block;
  margin:1.5em 0 .75em;
  font-size:clamp(1.0625rem,2.2vw,1.375rem);
  font-weight:700;
  position:relative;
  padding-bottom:6px;
}
.cb-tpm-intro .entry-content__heading::after,
.cb-tpm-seo .entry-content__heading::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:48px;
  height:2px;
  background:#ff0019;
  border-radius:2px;
}
.cb-tpm-seo h2,.cb-tpm-seo .wp-block-heading{
  margin:1.75em 0 .75em;
  font-size:clamp(1.0625rem,2.2vw,1.375rem);
  font-weight:700;
}
.cb-tpm-seo h3{
  margin:1.5em 0 .625em;
  font-size:clamp(1rem,1.9vw,1.1875rem);
  font-weight:600;
}
.cb-tpm-seo h4{
  margin:1.25em 0 .5em;
  font-size:clamp(.9375rem,1.7vw,1.0625rem);
  font-weight:600;
}
.cb-tpm-seo h5{
  margin:1em 0 .5em;
  font-size:clamp(.875rem,1.5vw,1rem);
  font-weight:600;
}
.cb-tpm-seo h6{
  margin:.875em 0 .375em;
  font-size:.8125rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:rgba(255,255,255,.72);
}

/* —— Text —— */
.cb-tpm-intro p,.cb-tpm-seo p{
  margin:0 0 12px;
  font-size:14px;
  color:rgba(255,255,255,.88);
}
.cb-tpm-intro p:last-child,.cb-tpm-seo p:last-child{margin-bottom:0}
.cb-tpm-intro strong,.cb-tpm-intro b,
.cb-tpm-seo strong,.cb-tpm-seo b{font-weight:700;color:#fff}
.cb-tpm-intro em,.cb-tpm-intro i,
.cb-tpm-seo em,.cb-tpm-seo i{font-style:italic}
.cb-tpm-intro u,.cb-tpm-intro ins,
.cb-tpm-seo u,.cb-tpm-seo ins{text-decoration:underline;text-underline-offset:2px}
.cb-tpm-intro del,.cb-tpm-intro s,
.cb-tpm-seo del,.cb-tpm-seo s{text-decoration:line-through;color:rgba(255,255,255,.55)}
.cb-tpm-intro mark,.cb-tpm-seo mark{
  background:rgba(255,0,25,.22);
  color:#fff;
  padding:.1em .3em;
  border-radius:3px;
}
.cb-tpm-intro small,.cb-tpm-seo small{font-size:.875em;color:rgba(255,255,255,.65)}
.cb-tpm-intro sub,.cb-tpm-intro sup,
.cb-tpm-seo sub,.cb-tpm-seo sup{font-size:.75em;line-height:0;position:relative;vertical-align:baseline}
.cb-tpm-intro sup,.cb-tpm-seo sup{top:-.4em}
.cb-tpm-intro sub,.cb-tpm-seo sub{top:.2em}
.cb-tpm-intro abbr[title],.cb-tpm-seo abbr[title]{text-decoration:underline dotted;cursor:help}

/* —— Links —— */
.cb-tpm-intro a,.cb-tpm-seo a{
  color:#ff0019;
  text-decoration:underline;
  text-underline-offset:2px;
  transition:color .2s ease;
}
.cb-tpm-seo .anchors-block a{
  color:rgba(255,255,255,.82);
  text-decoration:none;
}
.cb-tpm-intro a:hover,.cb-tpm-seo a:hover{color:#fff}
.cb-tpm-seo .anchors-block a:hover{
  color:#fff;
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.1);
}
.cb-tpm-intro a:focus-visible,.cb-tpm-seo a:focus-visible{
  outline:2px solid #ff0019;
  outline-offset:2px;
  border-radius:2px;
}

/* —— Code —— */
.cb-tpm-intro code,.cb-tpm-intro kbd,.cb-tpm-intro samp,
.cb-tpm-seo code,.cb-tpm-seo kbd,.cb-tpm-seo samp{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.9em;
}
.cb-tpm-intro code,.cb-tpm-seo code{
  padding:.15em .4em;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:4px;
  color:#ffb3bc;
}
.cb-tpm-intro pre,.cb-tpm-seo pre{
  margin:0 0 16px;
  padding:14px 16px;
  background:#013e51;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
  overflow-x:auto;
}
.cb-tpm-intro pre code,.cb-tpm-seo pre code{
  padding:0;
  background:none;
  border:0;
  border-radius:0;
  color:#fff;
}
.cb-tpm-intro kbd,.cb-tpm-seo kbd{
  padding:.15em .45em;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);
  border-radius:4px;
  box-shadow:0 2px 0 rgba(255,255,255,.08);
  color:#fff;
}

/* —— Lists —— */
.cb-tpm-intro ul,.cb-tpm-intro ol,
.cb-tpm-seo ul,.cb-tpm-seo ol{
  margin:0 0 14px;
  padding:0 0 0 1.25em;
  color:rgba(255,255,255,.88);
  list-style-position:outside;
}
.cb-tpm-intro ul,.cb-tpm-seo ul,.cb-tpm-intro .wp-block-list,.cb-tpm-seo .wp-block-list{list-style:disc}
.cb-tpm-intro ol,.cb-tpm-seo ol{list-style:decimal}
.cb-tpm-intro li,.cb-tpm-seo li{margin:0 0 8px;line-height:1.55;display:list-item}
.cb-tpm-intro li::marker,.cb-tpm-seo li::marker{color:#ff0019;font-weight:600}
.cb-tpm-intro li>p,.cb-tpm-seo li>p{margin-bottom:8px}
.cb-tpm-intro li>p:last-child,.cb-tpm-seo li>p:last-child{margin-bottom:0}
.cb-tpm-intro ul ul,.cb-tpm-intro ol ol,.cb-tpm-intro ul ol,.cb-tpm-intro ol ul,
.cb-tpm-seo ul ul,.cb-tpm-seo ol ol,.cb-tpm-seo ul ol,.cb-tpm-seo ol ul{
  margin:.5em 0 0;
  padding-left:1.15em;
}
.cb-tpm-intro ul ul,.cb-tpm-seo ul ul{list-style:circle}
.cb-tpm-intro ul ul ul,.cb-tpm-seo ul ul ul{list-style:square}
.cb-tpm-intro ol ol,.cb-tpm-seo ol ol{list-style:lower-alpha}
.cb-tpm-intro ol ol ol,.cb-tpm-seo ol ol ol{list-style:lower-roman}

/* content-text adds check-icons and counter badges — disable inside TPM */
.content-text .cb-tpm-intro ul,
.content-text .cb-tpm-seo ul,
.content-text .cb-tpm-intro ol,
.content-text .cb-tpm-seo ol{
  margin:0 0 14px;
  padding:0 0 0 1.25em;
  counter-reset:none;
}
.content-text .cb-tpm-intro ul li,
.content-text .cb-tpm-seo ul li,
.content-text .cb-tpm-intro ol li,
.content-text .cb-tpm-seo ol li{
  position:static;
  display:list-item;
  align-items:unset;
  counter-increment:none;
  margin:0 0 8px;
  padding-left:0;
}
.content-text .cb-tpm-intro ul li::before,
.content-text .cb-tpm-seo ul li::before,
.content-text .cb-tpm-intro ol li::before,
.content-text .cb-tpm-seo ol li::before,
.content-text .cb-tpm-intro ul li:before,
.content-text .cb-tpm-seo ul li:before,
.content-text .cb-tpm-intro ol li:before,
.content-text .cb-tpm-seo ol li:before{
  content:none !important;
  display:none !important;
  background:none !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  position:static !important;
}

/* —— Definition lists —— */
.cb-tpm-intro dl,.cb-tpm-seo dl{margin:0 0 14px}
.cb-tpm-intro dt,.cb-tpm-seo dt{font-weight:700;color:#fff;margin-top:10px}
.cb-tpm-intro dt:first-child,.cb-tpm-seo dt:first-child{margin-top:0}
.cb-tpm-intro dd,.cb-tpm-seo dd{margin:.25em 0 0 1.25em;color:rgba(255,255,255,.82)}

/* —— Quote & divider —— */
.cb-tpm-intro blockquote,.cb-tpm-seo blockquote{
  margin:0 0 14px;
  padding:10px 14px;
  border-left:3px solid #ff0019;
  background:rgba(1,62,81,.55);
  border-radius:0 8px 8px 0;
  color:rgba(255,255,255,.82);
}
.cb-tpm-intro blockquote p:last-child,.cb-tpm-seo blockquote p:last-child{margin-bottom:0}
.cb-tpm-intro blockquote cite,.cb-tpm-seo blockquote cite{
  display:block;
  margin-top:6px;
  font-size:.875em;
  color:rgba(255,255,255,.55);
  font-style:normal;
}
.cb-tpm-intro hr,.cb-tpm-seo hr{
  margin:20px 0;
  border:0;
  border-top:1px solid rgba(255,255,255,.12);
}

/* —— Anchors (TOC) —— */
.cb-tpm-seo .anchors-block{
  display:flex;
  flex-wrap:wrap;
  gap:8px 10px;
  align-items:center;
  margin:0 0 18px;
  padding:12px 14px;
  list-style:none;
  background:rgba(1,62,81,.65);
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
}
.cb-tpm-seo .anchors-block li{margin:0;padding:0;list-style:none}
.cb-tpm-seo .anchors-block a{
  display:inline-block;
  padding:5px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  font-size:13px;
  font-weight:500;
}

/* —— Tables (intro + seo / shortArticle + article) —— */
.gb-tpm-seo-table-scroll,.cb-tpm-seo-table-scroll{
  overflow-x:auto;
  margin:16px 0;
  -webkit-overflow-scrolling:touch;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.15);
  background:#012f3d;
}
.cb-tpm-intro table,.cb-tpm-seo table,
.cb-tpm-intro .wp-block-table table,.cb-tpm-seo .wp-block-table table{
  width:100%;
  border-collapse:collapse;
  font-size:14px;
  margin:0;
}
.content-text .cb-tpm-intro .wp-block-table table,
.content-text .cb-tpm-intro .wp-block-table thead,
.content-text .cb-tpm-intro .wp-block-table tbody,
.content-text .cb-tpm-intro .wp-block-table tr,
.content-text .cb-tpm-intro .wp-block-table th,
.content-text .cb-tpm-intro .wp-block-table td,
.content-text .cb-tpm-seo .wp-block-table table,
.content-text .cb-tpm-seo .wp-block-table thead,
.content-text .cb-tpm-seo .wp-block-table tbody,
.content-text .cb-tpm-seo .wp-block-table tr,
.content-text .cb-tpm-seo .wp-block-table th,
.content-text .cb-tpm-seo .wp-block-table td{
  border:1px solid rgba(255,255,255,.12);
}
.content-text .cb-tpm-intro table tr,
.content-text .cb-tpm-seo table tr{
  background:transparent;
}
.cb-tpm-intro thead th,
.cb-tpm-intro thead td,
.cb-tpm-seo thead th,
.cb-tpm-seo thead td,
.cb-tpm-intro .wp-block-table thead th,
.cb-tpm-intro .wp-block-table thead td,
.cb-tpm-seo .wp-block-table thead th,
.cb-tpm-seo .wp-block-table thead td,
.cb-tpm-intro table:not(:has(thead)) tbody tr:first-child td,
.cb-tpm-intro table:not(:has(thead)) tbody tr:first-child th,
.cb-tpm-seo table:not(:has(thead)) tbody tr:first-child td,
.cb-tpm-seo table:not(:has(thead)) tbody tr:first-child th{
  font-weight:700;
  color:#021c19;
  text-align:left;
  background:#d2e512;
  border-color:rgba(2,28,25,.15);
}
.cb-tpm-intro th,.cb-tpm-intro td,
.cb-tpm-seo th,.cb-tpm-seo td,
.cb-tpm-intro .wp-block-table td,.cb-tpm-intro .wp-block-table th,
.cb-tpm-seo .wp-block-table td,.cb-tpm-seo .wp-block-table th{
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.12);
  min-width:5rem;
  vertical-align:middle;
  color:rgba(255,255,255,.9);
}
.cb-tpm-intro tbody tr:nth-child(even),
.cb-tpm-seo tbody tr:nth-child(even){
  background:#013e51;
}
.cb-tpm-intro tbody tr:nth-child(odd):not(:first-child),
.cb-tpm-seo tbody tr:nth-child(odd):not(:first-child){
  background:rgba(1,47,61,.55);
}
.cb-tpm-intro table:has(thead) tbody tr:nth-child(odd),
.cb-tpm-seo table:has(thead) tbody tr:nth-child(odd){
  background:rgba(1,47,61,.55);
}
.cb-tpm-intro table:has(thead) tbody tr:nth-child(even),
.cb-tpm-seo table:has(thead) tbody tr:nth-child(even){
  background:#013e51;
}
.cb-tpm-intro caption,.cb-tpm-seo caption{
  caption-side:bottom;
  margin-top:6px;
  font-size:12px;
  color:rgba(255,255,255,.55);
  text-align:left;
}
.cb-tpm-intro .has-text-align-center,.cb-tpm-intro td.has-text-align-center,.cb-tpm-intro th.has-text-align-center,
.cb-tpm-seo .has-text-align-center,.cb-tpm-seo td.has-text-align-center,.cb-tpm-seo th.has-text-align-center{text-align:center}
.cb-tpm-intro .has-text-align-right,.cb-tpm-intro td.has-text-align-right,.cb-tpm-intro th.has-text-align-right,
.cb-tpm-seo .has-text-align-right,.cb-tpm-seo td.has-text-align-right,.cb-tpm-seo th.has-text-align-right{text-align:right}
.cb-tpm-intro .has-text-align-left,.cb-tpm-intro td.has-text-align-left,.cb-tpm-intro th.has-text-align-left,
.cb-tpm-seo .has-text-align-left,.cb-tpm-seo td.has-text-align-left,.cb-tpm-seo th.has-text-align-left{text-align:left}
.cb-tpm-intro .wp-block-table,.cb-tpm-seo .wp-block-table{margin:14px 0}

/* —— Media & WP blocks —— */
.cb-tpm-intro figure,.cb-tpm-seo figure,
.cb-tpm-seo .wp-block-image{margin:14px 0}
.cb-tpm-intro figure img,.cb-tpm-seo figure img,
.cb-tpm-seo .wp-block-image img,
.cb-tpm-seo img{
  display:block;
  box-sizing:border-box;
  height:auto;
  max-width:100%;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.1);
}
.cb-tpm-intro figcaption,.cb-tpm-seo figcaption,
.cb-tpm-seo .wp-block-image figcaption{
  margin-top:6px;
  font-size:12px;
  color:rgba(255,255,255,.55);
  text-align:center;
}
.cb-tpm-seo .wp-block-columns{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin:14px 0;
}
.cb-tpm-seo .wp-block-column{
  flex:1 1 280px;
  min-width:0;
}
.cb-tpm-intro address,.cb-tpm-seo address{
  margin:0 0 14px;
  font-style:normal;
  color:rgba(255,255,255,.82);
}
.cb-tpm-intro iframe,.cb-tpm-intro video,.cb-tpm-intro embed,
.cb-tpm-seo iframe,.cb-tpm-seo video,.cb-tpm-seo embed{
  max-width:100%;
  border:0;
  border-radius:8px;
}

/* —— FAQ inside seo block —— */
.cb-tpm-seo .cb-tpm-faq{margin-top:8px;padding-top:0;border-top:0}
.cb-tpm-faq>h2{margin:0 0 16px;font-size:20px;font-weight:600;line-height:1.25;color:#fff}
.cb-tpm-seo .accord-block .accord-block-header:after{
  background:none;
  width:8px;
  height:8px;
  border-right:2px solid rgba(255,255,255,.85);
  border-bottom:2px solid rgba(255,255,255,.85);
  transform:rotate(45deg);
  top:20px;
}
.cb-tpm-seo .accord-block.open .accord-block-header:after{transform:rotate(-135deg)}
.cb-providers__list-item--logo{width:100%;max-height:38px;display:flex;align-items:center;justify-content:center}
.cb-providers__list-item--logo img{width:auto !important;height:auto !important;max-width:100%;max-height:38px;object-fit:contain}
.cb-auditors__list{list-style:none;white-space:nowrap;overflow-x:auto;padding-bottom:8px;display:flex;justify-content:center}
.cb-tpm-figure{margin:16px auto;max-width:1440px;text-align:center;border-radius:12px;overflow:hidden}
.cb-tpm-figure img{max-width:100%;height:auto;border-radius:12px;border:1px solid rgba(255,255,255,.1)}
.cb-bonus-section,.cb-support-section{padding:8px 12px 24px;max-width:1440px;margin:8px auto;border-radius:12px;overflow:hidden}

/* Footer menu: text links only, no list/check icons */
.content-text .footer__menu ul,
.footer__menu ul{margin:0;padding:0;list-style:none}
.content-text .footer__menu ul li,
.footer__menu ul li{position:static;display:list-item;align-items:unset;padding-left:0}
.content-text .footer__menu ul li::before,
.content-text .footer__menu ul li:before,
.footer__menu ul li::before,
.footer__menu ul li:before{
  content:none !important;
  display:none !important;
  background:none !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
}
.footer__menu img,.footer__menu svg{display:none !important}

@media (min-width:768px){
  .cb-tpm-intro,.cb-tpm-seo{padding:24px 20px}
  .cb-tpm-intro h1{font-size:clamp(1.375rem,2.5vw,1.75rem)}
  .cb-tpm-intro p,.cb-tpm-seo p{font-size:15px}
  .cb-tpm-seo .wp-block-columns{flex-wrap:nowrap}
}
