/* Shared review layout repairs; visual foundation is the supplied archive CSS. */
.review > .container { align-items: flex-start; }
.review .sidebar { flex: 0 0 25%; min-width: 0; max-height: calc(100dvh - 104px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none; }
.review .sidebar::-webkit-scrollbar { display: none; }
.review .sidebar > .header:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
.review .wrapper { flex: 1; min-width: 0; width: auto; }
.review .sidebar .logo > .visit-trigger { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.review .sidebar .logo img { max-height: 100%; object-fit: contain; }
.review .sidebar .bonus .button { width: 100%; }
.review .sidebar .bonus .value { font-size: clamp(24px, 2.6vw, 37.5px); line-height: 1.25; }
.review .info-trigger { display: inline-flex; align-items: center; justify-content: center; padding: 0 3px; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.review .tooltipWrapper .tooltipData { max-width: 260px; }
.review .sidebar .tooltipWrapper .tooltipData { right: auto; left: -110px; }
.review .review-toc > summary { color: #000; font-size: .95rem; font-weight: 600; cursor: pointer; }
.review .review-toc nav { padding-top: 18px; }
.review .sidebar .heading ul { row-gap: 16px; }
.review .sidebar .heading ul li { display: block; }
.review .sidebar .heading ul li a { display: block; }
.review .sidebar .heading ul li.toc-level-3 { margin-left: 12px; font-size: .85rem; }
.review .sidebar .heading ul li.active { color: var(--StyleColorsMain); }
.review .review-topline { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
.review .breadcrumbs { min-width: 0; }
.review .breadcrumbs ul { flex-wrap: wrap; gap: 6px 0; }
.review .review-topline .ageControl { flex-shrink: 0; }
.review .wrapper .resume .header { align-items: flex-start; gap: 20px; }
.review .resume .left { flex: 1; min-width: 0; }
.review h1 { font-size: clamp(28px, 3vw, 36px); line-height: 1.2; }
.review .wrapper .resume .header .specs { flex-wrap: wrap; gap: 6px 18px; margin-top: 12px; }
.review .resume .author > span { display: inline-flex; align-items: center; gap: 4px; }
.review .wrapper .resume .header .right { display: flex; flex-direction: column; gap: 10px; flex-shrink: 0; }
.review .wrapper .resume .header .right .link { color: #06f; }
.review .review-markets { margin-bottom: 24px; }
.review .wrapper .resume .body .value ul { gap: 12px 20px; }
.review .wrapper .resume .body .value ul li > :is(a, span) { display: inline-flex; align-items: center; gap: 4px; }
.review .wrapper .resume .body .value ul li img { height: 16px; max-width: 24px; margin: 0; object-fit: contain; }
.review .wrapper .resume .body .summary { gap: 24px; }
.review .wrapper .resume .body .summary .description { flex: 1; min-width: 0; width: auto; margin: 0; }
.review .wrapper .resume .body .summary .action { flex: 0 0 160px; width: auto; padding: 0; }
.review .wrapper .resume .body .summary .action > .button {
  gap: 8px;
  min-width: 0;
  min-height: 40px;
  height: auto;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: .04em;
}
.review .wrapper .resume .body .summary .action > .button > i { flex: 0 0 auto; margin: 0; }
.review .wrapper .resume .body .summary .action .button-label { white-space: nowrap; }
.review .specsData h2.subName { color: #3d3d3e; font-size: .9rem; line-height: 1.4; margin: 0 0 8px; }
.review .wrapper .specsData .shadowBox .general li { gap: 10px; }
.review .specsData .general .value { text-align: right; }
.review .specsData .features li { align-items: flex-start; }
.review .specsData .features li i { flex-shrink: 0; margin-top: 4px; }
.review .bodyContent { overflow-wrap: break-word; }
.review .wrapper .bodyContent { padding: 36px 0 0; }
.review .bodyContent :is(h2, h3, h4) { scroll-margin-top: 90px; }
.review .bodyContent h2 { margin: 36px 0 18px; font-size: 30px; line-height: 1.3; }
.review .bodyContent > h2:first-child { margin-top: 0; }
.review .bodyContent h3 { margin: 28px 0 12px; font-size: 23px; line-height: 1.35; }
.review .bodyContent h4 { margin: 20px 0 10px; font-size: 18px; line-height: 1.4; }
.review .bodyContent p { display: block; margin: 0 0 14px; }
.review .bodyContent figure { margin: 24px 0; border-radius: 16px; overflow: hidden; }
.review .bodyContent figure img { display: block; height: auto; max-width: 100%; margin-inline: auto; }
.review .bodyContent img:hover { cursor: default; }
.review .bodyContent ul:not(.listBullet), .review .bodyContent ol { margin: 12px 0 20px; padding-left: 24px; }
.review .bodyContent ul:not(.listBullet) > li { list-style: disc; }
.review .bodyContent :is(ul, ol) > li { margin-bottom: 8px; }
.review .table-scroll { max-width: 100%; overflow-x: auto; margin: 24px 0; padding: 8px; border-radius: 20px; background: #fff; }
.review .wrapper .bodyContent .table-scroll table { width: 100%; min-width: 520px; margin: 0; padding: 0; border-collapse: separate; border-spacing: 0; }
.review .wrapper .bodyContent .table-scroll table::before { content: none; }
.review .bodyContent .table-scroll th { padding: 10px 20px; font-weight: 600; text-align: left; }
.review .bodyContent .table-scroll th:not(:first-child) { text-align: center; }
.review .bodyContent .table-scroll thead tr { background: #d4e1ee; }
.review .wrapper .bodyContent .table-scroll tbody tr:nth-child(odd) { background: #fff; }
.review .bodyContent .table-scroll th:first-child { border-radius: 8px 0 0 8px; }
.review .bodyContent .table-scroll th:last-child { border-radius: 0 8px 8px 0; }
.review .widget { margin: 24px 0; }
.review .widget .listCheck, .review .widget .listDisable { padding-left: 24px; }
.review .widget .pros-style { color: var(--StyleColorsMain); }
.review .widget .cons-style { color: #c62828; }
.review .switch-table { display: flex; max-width: 300px; padding: 4px; margin: 0 auto 16px; gap: 4px; background: #fff; border-radius: 8px; }
.review .switch-table button { flex: 1; min-width: 0; border: 0; border-radius: 5px; padding: 10px; color: #222; background: transparent; font: inherit; font-weight: 500; cursor: pointer; }
.review .switch-table button.active { color: #fff; background: var(--StyleColorsMain); }
.review .switch-table button:focus-visible { outline: 2px solid #08213e; outline-offset: 2px; }
.review .review-payment-panel[hidden] { display: none; }
.review .review-payment-panel .table-scroll { margin-top: 0; }
.review .bodyContent .review-payment-panel td.title img { display: block; width: 100px; max-height: 42px; object-fit: contain; margin: 0 auto 6px; }
.review .bodyContent .review-payment-panel td.title { text-align: center; }
.review .specsData .list > li > span { display: flex; align-items: center; justify-content: center; height: 100%; padding: 4px; font-weight: 600; }
.review .scroll-progress { transform: scaleX(0); transform-origin: left; }
@media (max-width: 1199px) {
  .review .wrapper .resume .header { flex-direction: column; }
  .review .wrapper .resume .header .right { width: 100%; flex-direction: row; align-items: center; justify-content: space-between; }
  .review .wrapper .specsData > .col { flex: 0 0 100%; width: 100%; margin-bottom: 18px; }
}
@media (max-width: 991px) {
  .review { padding: 24px 0; }
  .review > .container { flex-direction: column; gap: 24px; }
  .review .sidebar { position: static; flex: none; width: 100%; max-height: none; overflow: visible; }
  .review .sidebar .header { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 1.5fr); align-items: center; gap: 20px; margin-bottom: 16px; padding-bottom: 16px; }
  .review .sidebar .logo { height: 110px; }
  .review .sidebar .logo img { max-width: 100%; }
  .review .sidebar .bonus .value { font-size: 2rem; }
  .review .wrapper { width: 100%; padding-top: 0; }
}
@media (max-width: 768px) {
  .review .review-topline { align-items: flex-start; flex-wrap: wrap; }
  .review .wrapper .resume .header .specs { display: flex; }
  .review .wrapper .resume .header .right { flex-wrap: wrap; }
  .review .wrapper .resume .body .summary { flex-direction: column; gap: 16px; padding: 0; }
  .review .wrapper .resume .body .summary .description { width: 100%; margin: 0; }
  .review .wrapper .resume .body .summary .action { flex: none; width: 100%; padding: 0; }
  .review .wrapper .resume .body .summary .action .button { text-transform: uppercase; }
  .review .wrapper .specsData > .col { margin-bottom: 16px; }
  .review .wrapper .bodyContent { padding-top: 24px; }
  .review .bodyContent h2 { font-size: 26px; }
  .review .bodyContent h3 { font-size: 21px; }
}
@media (max-width: 380px) {
  .review .sidebar .header { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .review .sidebar .logo { height: 80px; }
  .review .sidebar .logo img { max-width: 180px; }
}
