/* Scoped comparison page. Generated from the approved comparison draft. */
/* The comparison hero mascot layout is maintained in this Site stylesheet. */
.comparison-page{
  color-scheme: light;
  --ink: #15213d;
  --muted: #5b6a83;
  --paper: #f8f9fd;
  --surface: #fff;
  --line: #dce2ef;
  --purple: #5947df;
  --purple-dark: #4230bd;
  --blue: #0878fa;
  --teal: #008c98;
  --soft-purple: #efecff;
  --soft-blue: #edf5ff;
  --soft-teal: #e9f8f7;
  --radius: 20px;
  --shadow: 0 14px 42px #18274a0a;
}
.comparison-page *,.comparison-page *::before,.comparison-page *::after{ box-sizing: border-box; }
.comparison-page{ scroll-behavior: smooth; scroll-padding-top: 28px; }
.comparison-page{ margin: 0; background: var(--paper); color: var(--ink); font-family: "IBM Plex Sans", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
.comparison-page,.comparison-page main,.comparison-page section,.comparison-page article,.comparison-page aside,.comparison-page div{ min-width: 0; }
.comparison-page img,.comparison-page svg{ max-width: 100%; }
.comparison-page img{ height: auto; }
.comparison-page button,.comparison-page input,.comparison-page select,.comparison-page textarea{ font: inherit; }
.comparison-page button,.comparison-page a,.comparison-page select,.comparison-page input{ -webkit-tap-highlight-color: transparent; }
.comparison-page button,.comparison-page select,.comparison-page input[type="checkbox"]{ cursor: pointer; }
.comparison-page button{ color: inherit; }
.comparison-page a{ color: var(--purple); text-underline-offset: 3px; text-decoration-thickness: 1px; }
.comparison-page a:hover{ color: var(--purple-dark); }
.comparison-page :focus-visible{ outline: 3px solid var(--blue); outline-offset: 4px; }
.comparison-page ::selection{ color: #fff; background: var(--purple); }
.comparison-page [hidden]{ display: none !important; }
.comparison-page h1,.comparison-page h2,.comparison-page h3,.comparison-page h4,.comparison-page p,.comparison-page ul{ margin-top: 0; }
.comparison-page h1,.comparison-page h2{ font-family: "Big Shoulders Display", "IBM Plex Sans", sans-serif; font-weight: 750; letter-spacing: -.025em; line-height: 1.07; }
.comparison-page h1{ font-size: clamp(3.1rem, 5.8vw, 5rem); margin-bottom: 24px; }
.comparison-page h2{ font-size: clamp(2.3rem, 3.8vw, 3.45rem); margin-bottom: 18px; }
.comparison-page h3{ font-size: 1.25rem; line-height: 1.35; letter-spacing: -.02em; margin-bottom: 12px; }
.comparison-page p{ margin-bottom: 18px; }
.comparison-page ul{ padding-left: 1.25rem; }
.comparison-page li + li{ margin-top: 8px; }
.comparison-page strong{ font-weight: 650; }
.comparison-page .wrap{ width: calc(100% - 64px); max-width: 1200px; margin-inline: auto; }
.comparison-page .muted{ color: var(--muted); }
.comparison-page .unknown{ color: #756448; }
.comparison-page .eyebrow{ display: block; margin-bottom: 18px; color: var(--purple); font-size: .76rem; font-weight: 700; line-height: 1.5; letter-spacing: .12em; text-transform: uppercase; }
.comparison-page .eyebrow::before{ content: ""; display: inline-block; width: 28px; height: 2px; margin: 0 10px 4px 0; background: currentColor; }
.comparison-page .review-banner{ background: #14213a; color: #e2e8f4; padding: 10px 24px; text-align: center; font-size: .78rem; line-height: 1.6; }
.comparison-page .review-banner strong{ color: #fff; }
.comparison-page .review-banner a{ color: #b7ceff; }
.comparison-page .site-header{ background: #ffffffec; border-bottom: 1px solid var(--line); position: relative; }
.comparison-page .site-header::after{ content: ""; position: absolute; bottom: -1px; height: 3px; left: 0; width: 100%; background: linear-gradient(90deg, var(--teal) 0 27%, #07c0db 27% 43%, #e86788 43% 64%, #f6bd35 64% 78%, #8793ff 78% 93%, #8490a8 93%); }
.comparison-page .site-header > .wrap{ min-height: 91px; display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-block: 17px; }
.comparison-page .brand{ display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; color: var(--ink); text-decoration: none; }
.comparison-page .brand:hover{ color: var(--ink); }
.comparison-page .brand img{ width: 40px; height: 44px; object-fit: contain; }
.comparison-page .brand span{ font-size: 1.8rem; line-height: 1; letter-spacing: -.045em; font-weight: 700; }
.comparison-page .header-links{ display: flex; align-items: center; justify-content: flex-end; gap: 25px; flex-wrap: wrap; }
.comparison-page .header-links a{ font-size: .875rem; font-weight: 600; text-decoration: none; }
.comparison-page .header-links a:not(.btn){ color: var(--ink); }
.comparison-page .header-links a:hover{ color: var(--purple); }
.comparison-page .btn{ display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 13px 21px; min-height: 49px; border: 1px solid transparent; border-radius: 11px; background: var(--purple); color: #fff; font-size: .9rem; line-height: 1.45; text-align: center; font-weight: 650; text-decoration: none; transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.comparison-page .btn:hover{ color: #fff; background: var(--purple-dark); box-shadow: 0 7px 20px #5947df20; transform: translateY(-1px); }
.comparison-page .btn.secondary{ color: var(--ink); background: #fff; border-color: #cfd8ed; }
.comparison-page .btn.secondary:hover{ color: var(--purple); border-color: #b9adf5; background: #f7f5ff; }
.comparison-page .hero{ position: relative; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(0, .82fr); gap: 64px; align-items: center; padding-block: 76px 62px; }
.comparison-page .hero-copy{max-width:none;padding-top:0}
.comparison-page .hero-copy > p{ color: var(--muted); font-size: 1.12rem; line-height: 1.85; max-width: 660px; }
.comparison-page .hero-copy h1 em,.comparison-page .hero-copy h1 span{ color: var(--purple); font-style: normal; }
.comparison-page .hero-copy .btn{ margin: 8px 10px 8px 0; }
.comparison-page .hero-summary{ position: relative; isolation: isolate; padding: 35px; border: 1px solid #d5cef8; border-radius: 25px; background: linear-gradient(140deg, #f1ecff, #eaf6ff 73%, #e5f8f6); box-shadow: 0 20px 60px #3842a014; }
.comparison-page .hero-summary::before{ content: ""; position: absolute; z-index: -1; width: 145px; height: 145px; border: 24px solid #fff5; border-radius: 50%; top: 24px; right: 24px; pointer-events: none; }
.comparison-page .hero-summary h2,.comparison-page .hero-summary h3{ position: relative; }
.comparison-page .hero-summary h2{ font-size: 2rem; }
.comparison-page .hero-summary .price{ font-size: clamp(3.5rem, 5.1vw, 4.7rem); margin-block: 12px 0; }
.comparison-page .hero-summary p{ font-size: .95rem; }
.comparison-page .hero-summary > :last-child{ margin-bottom: 0; }
.comparison-page .comparison-summary-identity{display:grid;grid-template-columns:minmax(0,1fr) clamp(112px,13.5vw,168px);align-items:center;gap:10px;margin:-9px -7px 17px 0}
.comparison-page .comparison-summary-price{position:relative;z-index:1}
.comparison-page .comparison-summary-price .summary-top{display:block}
.comparison-page .comparison-summary-price .infinity{display:none}
.comparison-page .hero-summary .comparison-summary-price .hero-price{font-size:clamp(3.5rem,6.2vw,5.1rem);margin:22px 0 0}
.comparison-page .comparison-hero-mascot{position:relative;isolation:isolate;align-self:center}
.comparison-page .comparison-hero-mascot::before{content:"";position:absolute;z-index:-1;inset:25% 0 7%;border-radius:50%;background:radial-gradient(ellipse,#79dbe444,transparent 70%)}
.comparison-page .comparison-hero-mascot img{display:block;width:100%;height:auto;max-width:none;object-fit:contain;filter:drop-shadow(0 8px 9px #0b50651c)}
html[data-site-theme=dark] .comparison-page .comparison-hero-mascot::before{background:radial-gradient(ellipse,#47b7c42b,transparent 70%)}
@media(max-width:760px){.comparison-page .comparison-summary-identity{grid-template-columns:minmax(0,1fr) clamp(98px,30vw,142px);gap:8px;margin-top:-5px;margin-bottom:18px}.comparison-page .hero-summary .comparison-summary-price .hero-price{font-size:clamp(3.35rem,18vw,4.5rem);margin-top:19px}}
.comparison-page .hero-facts{ margin-top: 26px; padding-top: 22px; border-top: 1px solid #cfd5ea; }
.comparison-page .hero-facts ul,.comparison-page ul.hero-facts{ list-style: none; padding-left: 0; margin-bottom: 0; }
.comparison-page .hero-facts li{ position: relative; padding-left: 23px; color: #3c4b67; font-size: .91rem; }
.comparison-page .hero-facts li::before{ content: "✓"; color: var(--teal); font-weight: 700; position: absolute; left: 0; }
.comparison-page .section{ padding-block: 60px; }
.comparison-page .section + .section{ border-top: 1px solid var(--line); }
.comparison-page .section-heading{ max-width: 850px; margin-bottom: 31px; }
.comparison-page .section-heading p{ color: var(--muted); font-size: 1.05rem; max-width: 780px; }
.comparison-page .section-heading .eyebrow{ margin-bottom: 14px; }
.comparison-page .offer-grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; align-items: stretch; }
.comparison-page .offer-card{ position: relative; display: flex; flex-direction: column; align-items: flex-start; padding: 27px 23px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.comparison-page .offer-card.featured{ background: linear-gradient(155deg, #f4f0ff, #fff 55%); border: 2px solid var(--purple); padding: 26px 22px; box-shadow: 0 13px 38px #5947df14; }
.comparison-page .offer-card h3{ font-size: 1.23rem; margin-bottom: 9px; }
.comparison-page .offer-card > p{ font-size: .86rem; color: var(--muted); }
.comparison-page .product-kind{ display: inline-flex; align-items: center; gap: 6px; color: var(--teal); font-size: .7rem; line-height: 1.45; font-weight: 700; letter-spacing: .04em; margin-bottom: 14px; }
.comparison-page .featured .product-kind{ color: var(--purple); }
.comparison-page .price{ color: var(--ink); font-size: 2.4rem; font-weight: 650; line-height: 1.1; letter-spacing: -.055em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.comparison-page .price small{ font-size: .5em; font-weight: 500; letter-spacing: -.01em; }
.comparison-page .price-period{ display: block; color: var(--muted); font-size: .8rem; line-height: 1.5; margin: 9px 0 20px; }
.comparison-page .offer-points{ list-style: none; padding-left: 0; margin: 10px 0 23px; font-size: .85rem; line-height: 1.65; }
.comparison-page .offer-points li{ padding-left: 15px; position: relative; }
.comparison-page .offer-points li::before{ content: ""; position: absolute; width: 5px; height: 5px; border-radius: 50%; background: #8b93ac; top: .65em; left: 0; }
.comparison-page .featured .offer-points li::before{ background: var(--purple); }
.comparison-page .source-link{ display: inline-flex; font-size: .76rem; line-height: 1.5; font-weight: 550; overflow-wrap: anywhere; }
.comparison-page .offer-card > .source-link{ margin-top: auto; }
.comparison-page .shared-facts{ margin-top: 24px; padding: 22px 26px; border: 1px solid #cce4e7; border-left: 4px solid var(--teal); background: var(--soft-teal); border-radius: 13px; color: #315461; font-size: .92rem; }
.comparison-page .shared-facts > :last-child{ margin-bottom: 0; }
.comparison-page .suite-flow,.comparison-page .value-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.comparison-page .suite-flow{ counter-reset: suite; margin-block: 28px; }
.comparison-page .suite-step{ counter-increment: suite; position: relative; padding: 29px; border: 1px solid var(--line); background: var(--surface); border-radius: var(--radius); }
.comparison-page .suite-step::before{ content: "0" counter(suite); display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; margin-bottom: 20px; background: var(--soft-purple); border-radius: 11px; color: var(--purple); font-size: .88rem; font-weight: 650; }
.comparison-page .suite-step:nth-child(2)::before{ background: var(--soft-blue); color: var(--blue); }
.comparison-page .suite-step:nth-child(3)::before{ background: var(--soft-teal); color: var(--teal); }
.comparison-page .suite-step p,.comparison-page .value-card p{ color: var(--muted); font-size: .94rem; }
.comparison-page .suite-step > :last-child,.comparison-page .value-card > :last-child{ margin-bottom: 0; }
.comparison-page .value-card{ padding: 27px; border-top: 3px solid var(--purple); border-radius: 4px 4px 15px 15px; background: var(--soft-purple); }
.comparison-page .value-card:nth-child(2){ border-color: var(--blue); background: var(--soft-blue); }
.comparison-page .value-card:nth-child(3){ border-color: var(--teal); background: var(--soft-teal); }
.comparison-page .value-card h3{ font-size: 1.2rem; }
.comparison-page .compare-controls{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 17px; margin-block: 22px; }
.comparison-page .compare-controls > label{ display: flex; align-items: center; gap: 11px; color: var(--muted); font-size: .85rem; }
.comparison-page .filter-buttons{ display: flex; flex-wrap: wrap; gap: 6px; }
.comparison-page .filter-buttons button{ border: 1px solid var(--line); border-radius: 8px; padding: 9px 13px; background: var(--surface); font-size: .8rem; font-weight: 550; min-height: 41px; }
.comparison-page .filter-buttons button:hover{ border-color: #b0a5e8; background: #f0ecff; }
.comparison-page .filter-buttons button[aria-pressed="true"]{ background: var(--purple); border-color: var(--purple); color: #fff; }
.comparison-page select,.comparison-page input[type="number"]{ width: 100%; min-width: 0; padding: 11px 38px 11px 12px; border: 1px solid #c9d3e5; border-radius: 9px; background-color: #fff; color: var(--ink); min-height: 45px; font-size: .9rem; line-height: 1.5; }
.comparison-page .compare-controls select{ width: auto; max-width: 100%; min-width: 185px; }
.comparison-page .table-scroll{ width: 100%; overflow: auto; max-height: min(78vh, 940px); border: 1px solid #ccd5e6; border-radius: 16px; background: #fff; scrollbar-color: #a6b1ca #edf1f8; scrollbar-width: thin; overscroll-behavior: contain; }
.comparison-page .comparison-table{ border-collapse: separate; border-spacing: 0; table-layout: fixed; width: 100%; min-width: 1000px; font-size: .83rem; line-height: 1.55; }
.comparison-page .comparison-table caption{ padding: 15px 18px; font-size: .82rem; text-align: left; color: var(--muted); background: #f8faff; }
.comparison-page .comparison-table th,.comparison-page .comparison-table td{ padding: 19px 17px; text-align: left; vertical-align: top; border-right: 1px solid #e3e8f1; border-bottom: 1px solid #e3e8f1; overflow-wrap: anywhere; }
.comparison-page .comparison-table tr > :last-child{ border-right: 0; }
.comparison-page .comparison-table thead th{ position: sticky; top: 0; z-index: 3; background: #172641; color: #fff; font-size: .86rem; font-weight: 650; padding-block: 19px; }
.comparison-page .comparison-table thead th p,.comparison-page .comparison-table thead th small{ color: #c7d4ef; font-size: .74rem; font-weight: 400; }
.comparison-page .comparison-table thead th:first-child{ left: 0; z-index: 5; }
.comparison-page .comparison-table tbody tr:not(.group-row) > :first-child{ position: sticky; left: 0; z-index: 2; background: #fff; font-weight: 600; color: #253653; }
.comparison-page .comparison-table tbody tr:not(.group-row):nth-child(even) > :first-child{ background: #f9fafc; }
.comparison-page .comparison-table tbody tr:not(.group-row):nth-child(even){ background: #f9fafc; }
.comparison-page .comparison-table tbody td strong{ display: block; font-size: .88rem; font-weight: 650; margin-bottom: 7px; }
.comparison-page .comparison-table td p{ margin: 0 0 9px; font-size: .8rem; color: #5c6980; }
.comparison-page .comparison-table td p:last-child{ margin-bottom: 0; }
.comparison-page .comparison-table td .source-link{ margin-top: 7px; font-size: .7rem; }
.comparison-page .comparison-table .focus-column{ background: #f4f1ff; box-shadow: inset 2px 0 #d8cffc, inset -2px 0 #d8cffc; }
.comparison-page .comparison-table thead .focus-column{ background: var(--purple); box-shadow: none; }
.comparison-page .comparison-table .group-row > *{ background: #e8edf6; color: #344761; padding: 11px 17px; font-size: .74rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; border-right: 0; }
.comparison-page .comparison-table tbody:last-child tr:last-child > *{ border-bottom: 0; }
.comparison-page[data-compare="qm"] .comparison-table [data-product]:not([data-product="obelisk"]):not([data-product="qm"]),.comparison-page[data-compare="asternic"] .comparison-table [data-product]:not([data-product="obelisk"]):not([data-product="asternic"]),.comparison-page[data-compare="astervis"] .comparison-table [data-product]:not([data-product="obelisk"]):not([data-product="astervis"]){ display: none; }
.comparison-page:is([data-compare="qm"], [data-compare="asternic"], [data-compare="astervis"]) .comparison-table{ min-width: 352px; }
.comparison-page:is([data-compare="qm"], [data-compare="asternic"], [data-compare="astervis"]) .comparison-table thead th:first-child{ width: 26%; }
.comparison-page:is([data-compare="qm"], [data-compare="asternic"], [data-compare="astervis"]) .comparison-table thead [data-product]{ width: 37%; }
.comparison-page .cost-panel{ padding: 34px; border: 1px solid #d7d1f0; border-radius: 23px; background: linear-gradient(140deg, #f6f3ff, #f3f8fe); }
.comparison-page .cost-controls{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: start; margin-bottom: 28px; }
.comparison-page .cost-controls label{ display: block; color: #344563; font-size: .88rem; font-weight: 600; line-height: 1.6; }
.comparison-page .cost-controls label select,.comparison-page .cost-controls label input[type="number"]{ display: block; margin-top: 8px; font-weight: 400; }
.comparison-page .cost-controls label:has(input[type="checkbox"]){ display: flex; align-items: flex-start; gap: 10px; font-size: .83rem; font-weight: 400; }
.comparison-page .cost-controls input[type="checkbox"]{ width: 18px; height: 18px; flex: 0 0 18px; margin: 4px 0 0; accent-color: var(--purple); }
.comparison-page .cost-results{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.comparison-page .cost-card{ padding: 23px 20px; border: 1px solid #dce0ee; border-radius: 15px; background: #fff; }
.comparison-page .cost-card:first-child,.comparison-page .cost-card.featured,.comparison-page .cost-card.focus-column{ border-color: #ab9bea; background: #fdfcff; box-shadow: 0 0 0 1px #b5a7ec; }
.comparison-page .cost-card h3{ font-size: .95rem; margin-bottom: 16px; }
.comparison-page .cost-card .total{ font-size: clamp(1.5rem, 2.5vw, 2.05rem); font-weight: 650; line-height: 1.25; letter-spacing: -.045em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; color: var(--ink); }
.comparison-page .cost-card:first-child .total{ color: var(--purple); }
.comparison-page .cost-card .breakdown{ margin-top: 14px; color: var(--muted); font-size: .76rem; line-height: 1.7; }
.comparison-page .cost-card .breakdown p,.comparison-page .cost-card > p{ font-size: .78rem; }
.comparison-page .cost-card > :last-child{ margin-bottom: 0; }
.comparison-page .calculation-notes{ margin-top: 23px; color: var(--muted); font-size: .85rem; }
.comparison-page .calculation-notes details,.comparison-page details.calculation-notes{ border-top: 1px solid #d4d9e9; padding-top: 14px; }
.comparison-page .calculation-notes summary{ cursor: pointer; color: #344563; font-size: .9rem; font-weight: 600; padding: 6px 0; }
.comparison-page .calculation-notes details[open] summary,.comparison-page details.calculation-notes[open] summary{ margin-bottom: 10px; }
.comparison-page .calculation-notes p{ margin-bottom: 10px; }
.comparison-page .strength-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 21px; }
.comparison-page .strength-card{ padding: 27px; border: 1px solid var(--line); border-radius: 17px; background: #fff; }
.comparison-page .strength-card h3{ font-size: 1.2rem; }
.comparison-page .strength-card p,.comparison-page .strength-card ul{ font-size: .9rem; color: var(--muted); }
.comparison-page .strength-card > :last-child{ margin-bottom: 0; }
.comparison-page .ai-choice{ display: grid; grid-template-columns: minmax(0, 1.13fr) minmax(0, .87fr); gap: 44px; align-items: center; padding: 45px; border: 1px solid #cbd7ea; border-radius: 24px; background: linear-gradient(135deg, #172540, #17243c 55%, #143c4b); color: #fff; }
.comparison-page .ai-choice h2{ color: #fff; font-size: clamp(2.3rem, 3.6vw, 3.2rem); }
.comparison-page .ai-choice h3{ color: #fff; }
.comparison-page .ai-choice .eyebrow{ color: #adbbff; }
.comparison-page .ai-choice p{ color: #c5d1e7; font-size: .97rem; }
.comparison-page .ai-choice a:not(.btn){ color: #b9d6ff; }
.comparison-page .ai-choice .btn{ margin-top: 7px; }
.comparison-page .ai-choice > div > :last-child{ margin-bottom: 0; }
.comparison-page .ai-meter{ display: grid; gap: 13px; }
.comparison-page .ai-meter > *{ padding: 20px 22px; border: 1px solid #6b83b24d; background: #ffffff08; border-radius: 13px; }
.comparison-page .ai-meter > :nth-child(2){ border-color: #4ec8d54d; background: #40aabd0c; }
.comparison-page .ai-meter > :nth-child(3){ border-color: #aa91f254; background: #a082f00a; }
.comparison-page .ai-meter strong{ display: block; color: #fff; font-size: .97rem; margin-bottom: 5px; }
.comparison-page .ai-meter p,.comparison-page .ai-meter small{ display: block; font-size: .84rem; line-height: 1.65; margin-bottom: 0; color: #bdcce6; }
.comparison-page .sources-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; }
.comparison-page .source-group{ border-top: 2px solid #bac5dd; padding-top: 20px; }
.comparison-page .source-group h3{ font-size: 1.05rem; }
.comparison-page .source-group ul{ padding-left: 18px; margin-bottom: 0; }
.comparison-page .source-group li{ color: var(--muted); font-size: .84rem; line-height: 1.65; }
.comparison-page .source-group a{ overflow-wrap: anywhere; }
.comparison-page .method-note{ font-size: .85rem; color: var(--muted); line-height: 1.8; margin-top: 27px; padding: 22px 25px; border-radius: 13px; border: 1px solid var(--line); background: #f0f3f9; }
.comparison-page .method-note > :last-child{ margin-bottom: 0; }
.comparison-page .closing-cta{ display: flex; align-items: center; justify-content: space-between; gap: 35px; padding: 38px 42px; margin-block: 45px 60px; border-radius: 22px; color: #fff; background: linear-gradient(115deg, #5142ce, #5347d5 57%, #216bba); }
.comparison-page .closing-cta h2{ font-size: 2.6rem; margin-bottom: 12px; }
.comparison-page .closing-cta p{ color: #eeeaff; margin-bottom: 0; max-width: 680px; font-size: .98rem; }
.comparison-page .closing-cta .btn{ flex: 0 0 auto; color: #4030b8; background: #fff; border-color: #fff; }
.comparison-page .closing-cta .btn:hover{ background: #f1edff; }
.comparison-page footer{ padding: 28px 0 35px; color: #65748c; font-size: .79rem; border-top: 1px solid var(--line); }
.comparison-page footer > .wrap{ display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; }
.comparison-page footer p{ margin-bottom: 0; }
.comparison-page footer a{ overflow-wrap: anywhere; }
.comparison-page .skip-link{ position: absolute; z-index: 20; top: 10px; left: 20px; transform: translateY(-150%); padding: 10px 17px; border-radius: 8px; background: var(--ink); color: #fff; }
.comparison-page .skip-link:focus{ transform: none; color: #fff; }
.comparison-page .review-banner > span{ display: inline-block; margin-right: 13px; font-size: .69rem; font-weight: 700; letter-spacing: .06em; color: #fff; }
.comparison-page .hero-actions{ display: flex; flex-wrap: wrap; gap: 18px; align-items: center; margin-top: 25px; }
.comparison-page .hero-copy .hero-actions .btn{ margin: 0; }
.comparison-page .text-link{ display: inline-flex; align-items: center; gap: 8px; font-size: .85rem; line-height: 1.6; font-weight: 550; text-decoration: none; }
.comparison-page .text-link:hover{ text-decoration: underline; }
.comparison-page ul.hero-facts{ display: flex; flex-wrap: wrap; gap: 10px 22px; }
.comparison-page ul.hero-facts li{ margin: 0; font-size: .78rem; }
.comparison-page .summary-top{ display: flex; justify-content: space-between; align-items: center; gap: 15px; color: #5b4b9b; font-size: .7rem; font-weight: 650; line-height: 1.4; letter-spacing: .085em; }
.comparison-page .summary-top .infinity{ font-size: 2.7rem; font-weight: 400; line-height: .75; color: var(--purple); letter-spacing: -.05em; }
.comparison-page .hero-summary .hero-price{ position: relative; margin: 28px 0 13px; font-size: clamp(4.1rem, 6.2vw, 5.4rem); font-weight: 650; line-height: 1; letter-spacing: -.065em; color: var(--ink); font-variant-numeric: tabular-nums; }
.comparison-page .hero-summary .summary-label{ font-size: 1.1rem; line-height: 1.5; font-weight: 550; margin-bottom: 25px; }
.comparison-page .summary-lines{ display: grid; gap: 14px; padding-top: 21px; border-top: 1px solid #cbd2e7; }
.comparison-page .summary-lines strong{ display: block; margin-bottom: 3px; color: #263553; font-size: .87rem; }
.comparison-page .summary-lines span{ display: block; color: #596780; font-size: .8rem; line-height: 1.6; }
.comparison-page .hero-summary .summary-foot{ margin: 24px 0 0; font-size: .7rem; line-height: 1.7; color: #69738b; }
.comparison-page .offer-card > p.price{ margin: 8px 0 0; font-size: 2.4rem; font-weight: 650; line-height: 1.12; color: var(--ink); }
.comparison-page .offer-card > .price-period{ margin: 10px 0 19px; }
.comparison-page .offer-card .offer-extra{ border-top: 1px solid var(--line); padding-top: 15px; margin-bottom: 20px; font-size: .79rem; line-height: 1.65; }
.comparison-page .shared-facts{ display: flex; align-items: flex-start; gap: 19px; }
.comparison-page .shared-facts > span{ font-size: 2.25rem; line-height: 1.1; color: var(--teal); font-weight: 600; }
.comparison-page .shared-facts > p{ margin: 0; }
.comparison-page .suite-step::before{ display: none; }
.comparison-page .step-number{ display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 11px; margin-right: 11px; color: var(--purple); background: var(--soft-purple); font-size: .85rem; font-weight: 650; vertical-align: middle; }
.comparison-page .step-tag{ color: var(--muted); font-size: .69rem; line-height: 1.6; font-weight: 650; letter-spacing: .07em; text-transform: uppercase; vertical-align: middle; }
.comparison-page .suite-step:nth-child(2) .step-number{ background: var(--soft-blue); color: var(--blue); }
.comparison-page .suite-step:nth-child(3) .step-number{ background: var(--soft-teal); color: var(--teal); }
.comparison-page .suite-step h3{ margin-top: 21px; }
.comparison-page .value-symbol{ display: block; color: var(--purple); font-size: 2.3rem; font-weight: 500; line-height: 1; margin-bottom: 21px; }
.comparison-page .value-card:nth-child(2) .value-symbol{ color: var(--blue); }
.comparison-page .value-card:nth-child(3) .value-symbol{ color: var(--teal); }
.comparison-page .comparison-table thead th > span{ display: block; margin-top: 6px; color: #c9d5ef; font-size: .7rem; line-height: 1.5; font-weight: 400; }
.comparison-page .comparison-table thead .focus-column > span{ color: #e7e1ff; }
.comparison-page .citation{ font-size: .78em; font-weight: 550; white-space: nowrap; }
.comparison-page .updates-toggle{ display: flex; align-items: flex-start; gap: 12px; padding: 18px 20px; margin-bottom: 26px; border: 1px solid #d4d2e8; border-radius: 12px; background: #ffffffa8; cursor: pointer; }
.comparison-page .updates-toggle input{ width: 18px; height: 18px; flex: 0 0 18px; margin: 3px 0 0; accent-color: var(--purple); }
.comparison-page .updates-toggle strong{ display: block; font-size: .89rem; line-height: 1.5; }
.comparison-page .updates-toggle small{ display: block; margin-top: 5px; color: var(--muted); font-size: .78rem; line-height: 1.65; }
.comparison-page .cost-context{ margin-top: 24px; }
.comparison-page .cost-context p{ margin: 0 0 7px; color: var(--muted); font-size: .81rem; line-height: 1.7; }
.comparison-page .cost-context p:first-child{ color: #445572; font-weight: 550; }
.comparison-page .strength-card > span{ display: block; color: var(--purple); font-size: .73rem; font-weight: 650; margin-bottom: 17px; }
.comparison-page .ai-choice .method-note{ padding: 18px 20px; margin-top: 23px; color: #c6d2e6; background: #ffffff07; border-color: #667a9d66; font-size: .83rem; line-height: 1.7; }
.comparison-page .ai-meter > article{ display: flex; align-items: flex-start; gap: 17px; }
.comparison-page .ai-meter > article > span{ display: inline-flex; flex: 0 0 29px; align-items: center; justify-content: center; height: 29px; border-radius: 8px; color: #c3b6ff; background: #9a80e81c; font-size: .72rem; font-weight: 650; }
.comparison-page .ai-meter > article:nth-child(2) > span{ color: #9de4e2; background: #4bbdb51a; }
.comparison-page .ai-meter > article:nth-child(3) > span{ color: #c3ccff; background: #899df41a; }
.comparison-page .ai-meter h3{ margin: 2px 0 9px; font-size: 1rem; }
.comparison-page .method-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; margin: 29px 0 36px; }
.comparison-page .method-grid p{ margin: 0; color: var(--muted); font-size: .89rem; line-height: 1.8; }
.comparison-page .method-grid strong{ display: block; color: var(--ink); font-size: .96rem; margin-bottom: 9px; }
.comparison-page .source-group > summary{ cursor: pointer; font-size: 1.03rem; font-weight: 600; margin-bottom: 17px; }
.comparison-page .source-group ol{ padding-left: 23px; margin: 0; }
.comparison-page .source-group li::marker{ color: #8a96ac; font-size: .76rem; }
.comparison-page .closing-cta > .closing-inner{ width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 44px; }
.comparison-page .closing-cta .eyebrow{ color: #e0d9ff; }
.comparison-page .closing-actions{ display: flex; flex: 0 0 auto; flex-direction: column; gap: 12px; align-items: stretch; }
.comparison-page .closing-actions .secondary{ color: #fff; background: #ffffff0c; border-color: #d7cfff88; }
.comparison-page .closing-actions .secondary:hover{ color: #fff; background: #ffffff1b; }
.comparison-page .unlimited-pair{display:flex;flex-wrap:wrap;gap:9px;margin:19px 0}
.comparison-page .unlimited-pair>span{display:inline-flex;align-items:center;gap:8px;min-width:0;padding:8px 12px;border:1px solid var(--cp-obelisk-line,#abcfe9);border-radius:10px;background:var(--surface);color:var(--cp-obelisk,#146dba);font-size:.82rem;font-weight:600;line-height:1.5}
.comparison-page .unlimited-pair b{font-size:1.9rem;line-height:.9;font-weight:500}
.comparison-page .unlimited-pair>span:nth-child(2){border-color:var(--cp-asternic-line,#a7d6c9);color:var(--cp-asternic,#087d78)}
.comparison-page .cost-card .unlimited-pair{gap:7px;margin:18px 0 0}
.comparison-page .cost-card .unlimited-pair>span{padding:7px 9px;font-size:.72rem}
.comparison-page .cost-card .unlimited-pair b{font-size:1.45rem}
.comparison-page .cost-card .total.is-quote{font-size:1.16rem;line-height:1.45;letter-spacing:-.01em}
.comparison-page .value-grid .value-card:nth-child(4){background:var(--cp-obelisk-soft);border-color:var(--cp-obelisk)}
.comparison-page .value-grid .value-card:nth-child(4) .value-symbol{color:var(--cp-obelisk)}
.comparison-page .value-grid .value-card:nth-child(5){background:var(--cp-indigo-soft);border-color:var(--cp-indigo)}
.comparison-page .value-grid .value-card:nth-child(5) .value-symbol{color:var(--cp-indigo)}
.comparison-page .value-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.comparison-page .value-grid>.value-card{grid-column:span 2}
.comparison-page .value-grid>.value-card:nth-child(n+4){grid-column:span 3}
.comparison-page .comparison-attribution{padding-top:0;padding-bottom:35px;font-size:.8rem;color:var(--muted)}
.comparison-page{--cp-obelisk:#146dba;--cp-obelisk-soft:#e9f5ff;--cp-obelisk-line:#abcfe9;--cp-qm:#315894;--cp-qm-soft:#eef2fa;--cp-qm-line:#bccbe5;--cp-asternic:#087d78;--cp-asternic-soft:#e8f6f2;--cp-asternic-line:#a7d6c9;--cp-astervis:#b45040;--cp-astervis-soft:#fff0e9;--cp-astervis-line:#e8bbac;--cp-amber:#916612;--cp-amber-soft:#fff6df;--cp-amber-line:#e8d297;--cp-indigo:#6155ae;--cp-indigo-soft:#f0edfb;--cp-indigo-line:#ccc5e9;--cp-table-zebra:#f7f9fc}
.comparison-page a,.comparison-page .text-link{color:var(--cp-obelisk)}
.comparison-page a:hover,.comparison-page .text-link:hover{color:var(--cp-asternic)}
.comparison-page .btn{background:#146dba}
.comparison-page .btn:hover{background:#075c94;box-shadow:0 7px 20px #146dba26}
.comparison-page .btn.secondary:hover{color:var(--cp-obelisk);border-color:var(--cp-obelisk-line);background:var(--cp-obelisk-soft)}
.comparison-page .eyebrow{color:var(--cp-obelisk)}
.comparison-page .hero-copy h1 em,.comparison-page .hero-copy h1 span{color:var(--cp-obelisk)}
.comparison-page .hero-summary{border-color:var(--cp-obelisk-line);background:linear-gradient(135deg,var(--cp-obelisk-soft),var(--cp-asternic-soft));box-shadow:0 20px 55px #12597915}
.comparison-page .summary-top,.comparison-page .summary-top .infinity{color:var(--cp-asternic)}
.comparison-page .summary-lines{border-color:var(--cp-obelisk-line)}
.comparison-page .summary-lines strong{color:var(--ink)}
.comparison-page .summary-lines span,.comparison-page .hero-summary .summary-foot{color:var(--muted)}
.comparison-page .hero-summary .hero-price{color:var(--cp-obelisk)}
.comparison-page .offer-card,.comparison-page .cost-card{--cp-product:var(--cp-obelisk);--cp-product-soft:var(--cp-obelisk-soft);--cp-product-line:var(--cp-obelisk-line);border-color:var(--cp-product-line);border-top:4px solid var(--cp-product);background:linear-gradient(150deg,var(--cp-product-soft),var(--surface) 66%)}
.comparison-page .offer-card:nth-child(2),.comparison-page .cost-card:nth-child(2){--cp-product:var(--cp-qm);--cp-product-soft:var(--cp-qm-soft);--cp-product-line:var(--cp-qm-line)}
.comparison-page .offer-card:nth-child(3),.comparison-page .cost-card:nth-child(3){--cp-product:var(--cp-asternic);--cp-product-soft:var(--cp-asternic-soft);--cp-product-line:var(--cp-asternic-line)}
.comparison-page .offer-card:nth-child(4),.comparison-page .cost-card:nth-child(4){--cp-product:var(--cp-astervis);--cp-product-soft:var(--cp-astervis-soft);--cp-product-line:var(--cp-astervis-line)}
.comparison-page .offer-card.featured{border:2px solid var(--cp-obelisk);border-top-width:4px;background:linear-gradient(150deg,var(--cp-obelisk-soft),var(--cp-asternic-soft));box-shadow:0 13px 38px #146dba17}
.comparison-page .offer-card .product-kind,.comparison-page .offer-card .source-link,.comparison-page .offer-card>p.price,.comparison-page .cost-card .total,.comparison-page .cost-card:first-child .total{color:var(--cp-product)}
.comparison-page .offer-points li::before,.comparison-page .featured .offer-points li::before{background:var(--cp-product)}
.comparison-page .cost-card:first-child,.comparison-page .cost-card.featured,.comparison-page .cost-card.focus-column{border-color:var(--cp-obelisk);background:linear-gradient(150deg,var(--cp-obelisk-soft),var(--surface));box-shadow:0 0 0 1px var(--cp-obelisk-line)}
.comparison-page .price-section .eyebrow,.comparison-page #costi .eyebrow{color:var(--cp-amber)}
.comparison-page .price-section{background:linear-gradient(180deg,var(--cp-amber-soft),var(--paper) 240px)}
.comparison-page .suite-step{--cp-step:var(--cp-obelisk);--cp-step-soft:var(--cp-obelisk-soft);--cp-step-line:var(--cp-obelisk-line);border-color:var(--cp-step-line);background:linear-gradient(155deg,var(--cp-step-soft),var(--surface) 75%)}
.comparison-page .suite-step:nth-child(2){--cp-step:var(--cp-asternic);--cp-step-soft:var(--cp-asternic-soft);--cp-step-line:var(--cp-asternic-line)}
.comparison-page .suite-step:nth-child(3){--cp-step:var(--cp-amber);--cp-step-soft:var(--cp-amber-soft);--cp-step-line:var(--cp-amber-line)}
.comparison-page .suite-step .step-number,.comparison-page .suite-step:nth-child(2) .step-number,.comparison-page .suite-step:nth-child(3) .step-number{color:var(--cp-step);background:var(--cp-step-soft);border:1px solid var(--cp-step-line)}
.comparison-page .suite-step .step-tag{color:var(--cp-step)}
.comparison-page .value-card{background:var(--cp-obelisk-soft);border-color:var(--cp-obelisk)}
.comparison-page .value-card .value-symbol{color:var(--cp-obelisk)}
.comparison-page .value-card:nth-child(2){background:var(--cp-asternic-soft);border-color:var(--cp-asternic)}
.comparison-page .value-card:nth-child(2) .value-symbol{color:var(--cp-asternic)}
.comparison-page .value-card:nth-child(3){background:var(--cp-amber-soft);border-color:var(--cp-amber)}
.comparison-page .value-card:nth-child(3) .value-symbol{color:var(--cp-amber)}
.comparison-page .shared-facts{background:var(--cp-asternic-soft);border-color:var(--cp-asternic-line);color:var(--ink)}
.comparison-page .shared-facts>span{color:var(--cp-asternic)}
.comparison-page .filter-buttons button[aria-pressed=true]{background:#146dba;border-color:#146dba}
.comparison-page .filter-buttons button:hover{border-color:var(--cp-obelisk-line);background:var(--cp-obelisk-soft)}
.comparison-page .filter-buttons button[aria-pressed=true]:hover{background:#075c94;color:#fff}
.comparison-page .comparison-table thead [data-product=obelisk]{background:#146dba}
.comparison-page .comparison-table thead [data-product=qm]{background:#315894}
.comparison-page .comparison-table thead [data-product=asternic]{background:#087d78}
.comparison-page .comparison-table thead [data-product=astervis]{background:#a04738}
.comparison-page .comparison-table thead th>span,.comparison-page .comparison-table thead .focus-column>span{color:#edf5ff}
.comparison-page .comparison-table .focus-column{background:var(--cp-obelisk-soft);box-shadow:inset 2px 0 var(--cp-obelisk-line),inset -2px 0 var(--cp-obelisk-line)}
.comparison-page .comparison-table tbody[data-group=licensing] .group-row>*{color:var(--cp-amber);background:var(--cp-amber-soft)}
.comparison-page .comparison-table tbody[data-group=features] .group-row>*{color:var(--cp-asternic);background:var(--cp-asternic-soft)}
.comparison-page .comparison-table tbody td[data-product=qm] strong{color:var(--cp-qm)}
.comparison-page .comparison-table tbody td[data-product=asternic] strong{color:var(--cp-asternic)}
.comparison-page .comparison-table tbody td[data-product=astervis] strong{color:var(--cp-astervis)}
.comparison-page .cost-panel{border-color:var(--cp-amber-line);background:linear-gradient(140deg,var(--cp-amber-soft),var(--surface) 90%)}
.comparison-page .updates-toggle{border-color:var(--cp-amber-line);background:var(--surface)}
.comparison-page .updates-toggle input,.comparison-page .cost-controls input[type=checkbox]{accent-color:var(--cp-amber)}
.comparison-page .strength-card{--cp-product:var(--cp-qm);--cp-product-soft:var(--cp-qm-soft);--cp-product-line:var(--cp-qm-line);border-color:var(--cp-product-line);border-top:3px solid var(--cp-product);background:linear-gradient(150deg,var(--cp-product-soft),var(--surface) 80%)}
.comparison-page .strength-card:nth-child(2){--cp-product:var(--cp-asternic);--cp-product-soft:var(--cp-asternic-soft);--cp-product-line:var(--cp-asternic-line)}
.comparison-page .strength-card:nth-child(3){--cp-product:var(--cp-astervis);--cp-product-soft:var(--cp-astervis-soft);--cp-product-line:var(--cp-astervis-line)}
.comparison-page .strength-card>span{color:var(--cp-product)}
.comparison-page .ai-choice{background:linear-gradient(130deg,#182342,#183b46);border-color:#365665}
.comparison-page .ai-choice .eyebrow{color:#99dbdb}
.comparison-page .ai-meter>article:first-child{background:#63b4e918;border-color:#65adde77}
.comparison-page .ai-meter>article:first-child>span{color:#a9d9ff;background:#448cc42b}
.comparison-page .ai-meter>article:nth-child(2){background:#ddb14d10;border-color:#b99a5377}
.comparison-page .ai-meter>article:nth-child(2)>span{color:#f2d898;background:#b3933826}
.comparison-page .ai-meter>article:nth-child(3){background:#a082f017;border-color:#9b89d977}
.comparison-page .ai-meter>article:nth-child(3)>span{color:#d2c4ff;background:#a58acf26}
.comparison-page .sources-section .eyebrow{color:var(--muted)}
.comparison-page .source-group{--cp-source:var(--cp-obelisk);border-color:var(--cp-source)}
.comparison-page .source-group:nth-child(2){--cp-source:var(--cp-qm)}
.comparison-page .source-group:nth-child(3){--cp-source:var(--cp-asternic)}
.comparison-page .source-group:nth-child(4){--cp-source:var(--cp-astervis)}
.comparison-page .source-group>summary,.comparison-page .source-group a{color:var(--cp-source)}
.comparison-page .closing-cta{background:linear-gradient(115deg,#165ca5,#126e9c 54%,#087b7b)}
.comparison-page .closing-cta .eyebrow,.comparison-page .closing-cta p{color:#e0f4fb}
.comparison-page .closing-cta .btn{color:#125b84}
.comparison-page .closing-cta .btn:hover{background:#e8f7ff}
.comparison-page .closing-actions .secondary{color:#fff;border-color:#bfe3ed88}
.comparison-page .closing-actions .secondary:hover{color:#fff;background:#ffffff1b}
html[data-site-theme=dark] .comparison-page{--ink:#e6edf7;--muted:#adbbcf;--paper:#0b1322;--surface:#121e31;--line:#2b3d58;--cp-obelisk:#8bc5f6;--cp-obelisk-soft:#18334b;--cp-obelisk-line:#3b6280;--cp-qm:#a5bde7;--cp-qm-soft:#202e45;--cp-qm-line:#425978;--cp-asternic:#88d9ce;--cp-asternic-soft:#173a37;--cp-asternic-line:#376761;--cp-astervis:#f2af97;--cp-astervis-soft:#3d2c2c;--cp-astervis-line:#715049;--cp-amber:#ebcd8d;--cp-amber-soft:#373222;--cp-amber-line:#665b3d;--cp-indigo:#bfb3f5;--cp-indigo-soft:#2c2844;--cp-indigo-line:#554c78;--cp-table-zebra:#152135}
html[data-site-theme=dark] .comparison-page .btn{color:#fff}
html[data-site-theme=dark] .comparison-page .btn.secondary{color:var(--ink);background:var(--surface);border-color:var(--line)}
html[data-site-theme=dark] .comparison-page .hero-facts li{color:var(--muted)}
html[data-site-theme=dark] .comparison-page .summary-lines,html[data-site-theme=dark] .comparison-page .hero-facts{border-color:var(--line)}
html[data-site-theme=dark] .comparison-page .eyebrow{color:var(--cp-obelisk)}
html[data-site-theme=dark] .comparison-page .ai-choice .eyebrow{color:#99dbdb}
html[data-site-theme=dark] .comparison-page .closing-cta .eyebrow{color:#e0f4fb}
html[data-site-theme=dark] .comparison-page .hero .hero-copy h1 em,html[data-site-theme=dark] .comparison-page .hero .hero-copy h1 span{color:var(--cp-obelisk)}
html[data-site-theme=dark] .comparison-page .btn:not(.secondary){background:#146dba;color:#fff}
html[data-site-theme=dark] .comparison-page .btn:not(.secondary):hover{background:#087b7b}
html[data-site-theme=dark] .comparison-page .closing-cta .btn:not(.secondary){background:#fff;color:#125b84}
html[data-site-theme=dark] .comparison-page .table-scroll,html[data-site-theme=dark] .comparison-page select,html[data-site-theme=dark] .comparison-page input[type=number]{background-color:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-site-theme=dark] .comparison-page .comparison-table caption{background:var(--paper)}
html[data-site-theme=dark] .comparison-page .comparison-table th,html[data-site-theme=dark] .comparison-page .comparison-table td{border-color:var(--line)}
html[data-site-theme=dark] .comparison-page .comparison-table tbody tr:not(.group-row)>:first-child{background:var(--surface);color:var(--ink)}
html[data-site-theme=dark] .comparison-page .comparison-table tbody tr:not(.group-row):nth-child(even),html[data-site-theme=dark] .comparison-page .comparison-table tbody tr:not(.group-row):nth-child(even)>:first-child{background:var(--cp-table-zebra)}
html[data-site-theme=dark] .comparison-page .comparison-table td p{color:var(--muted)}
html[data-site-theme=dark] .comparison-page .cost-controls label,html[data-site-theme=dark] .comparison-page .cost-context p:first-child,html[data-site-theme=dark] .comparison-page .calculation-notes summary{color:var(--ink)}
html[data-site-theme=dark] .comparison-page .calculation-notes{border-color:var(--line)}
html[data-site-theme=dark] .comparison-page .method-note{background:var(--surface);border-color:var(--line)}
html[data-site-theme=dark] .comparison-page .unknown{color:var(--cp-amber)}
html[data-site-theme=dark] .comparison-page .ai-choice .method-note{background:#ffffff07;color:#c6d2e6;border-color:#667a9d66}
html[data-site-theme=dark] .comparison-page .closing-cta .btn{color:#125b84;background:#fff}
html[data-site-theme=dark] .comparison-page .closing-actions .secondary{color:#fff;background:#ffffff0c;border-color:#bfe3ed88}
@media (max-width: 1050px){.comparison-page .header-links{ gap: 17px; }
.comparison-page .hero{ gap: 35px; padding-top: 60px; }
.comparison-page .hero-summary{ padding: 28px; }
.comparison-page .offer-grid,.comparison-page .cost-results{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.comparison-page .suite-flow,.comparison-page .value-grid,.comparison-page .strength-grid{ gap: 15px; }
.comparison-page .suite-step,.comparison-page .value-card,.comparison-page .strength-card{ padding: 23px; }
.comparison-page .ai-choice{ gap: 30px; padding: 34px; }

}
@media (max-width: 760px){.comparison-page .wrap{ width: calc(100% - 40px); }
.comparison-page .site-header > .wrap{ min-height: 78px; gap: 15px; padding-block: 15px; display: grid; grid-template-columns: 1fr auto; align-items: center; }
.comparison-page .brand img{ width: 33px; height: 38px; }
.comparison-page .brand span{ font-size: 1.5rem; }
.comparison-page .header-links{ grid-row: 2; grid-column: 1 / -1; width: 100%; justify-content: space-between; gap: 11px; }
.comparison-page .site-header > .wrap > .btn{ min-height: 40px; padding: 9px 12px; font-size: .76rem; }
.comparison-page .header-links a{ font-size: .75rem; }
.comparison-page .header-links .btn{ min-height: 40px; padding: 9px 12px; font-size: .73rem; }
.comparison-page .hero{ grid-template-columns: 1fr; gap: 30px; padding-block: 44px 36px; }
.comparison-page h1{ font-size: clamp(3rem, 10vw, 4.2rem); }
.comparison-page .hero-copy > p{ font-size: 1rem; line-height: 1.8; }
.comparison-page .hero-summary{ padding: 27px; border-radius: 20px; }
.comparison-page .hero-summary .price{ font-size: 3.65rem; }
.comparison-page .section{ padding-block: 39px; }
.comparison-page .section-heading{ margin-bottom: 25px; }
.comparison-page .section-heading p{ font-size: .97rem; }
.comparison-page .suite-flow,.comparison-page .value-grid,.comparison-page .strength-grid,.comparison-page .sources-grid{ grid-template-columns: 1fr; gap: 15px; }
.comparison-page .value-grid>.value-card,.comparison-page .value-grid>.value-card:nth-child(n+4){grid-column:auto}
.comparison-page .suite-step{ padding: 23px; }
.comparison-page .suite-step::before{ position: absolute; left: 23px; top: 25px; }
.comparison-page .suite-step h3{ margin-bottom: 9px; }
.comparison-page .compare-controls{ align-items: stretch; flex-direction: column; gap: 14px; }
.comparison-page .compare-controls > label{ justify-content: space-between; }
.comparison-page .compare-controls select{ flex: 1; min-width: 0; max-width: 70%; }
.comparison-page .filter-buttons{ gap: 6px; }
.comparison-page .filter-buttons button{ flex: 1 1 auto; font-size: .75rem; padding: 9px 11px; }
.comparison-page .table-scroll{ border-radius: 12px; max-height: 76vh; }
.comparison-page .comparison-table{ font-size: .75rem; min-width: 940px; }
.comparison-page .comparison-table th,.comparison-page .comparison-table td{ padding: 13px 11px; }
.comparison-page .comparison-table thead th{ font-size: .78rem; padding-block: 15px; }
.comparison-page .comparison-table thead th:first-child{ font-size: .68rem; }
.comparison-page .comparison-table thead th p,.comparison-page .comparison-table thead th small{ font-size: .68rem; }
.comparison-page .comparison-table tbody td strong{ font-size: .78rem; }
.comparison-page .comparison-table td p{ font-size: .73rem; line-height: 1.55; }
.comparison-page .comparison-table td .source-link{ font-size: .67rem; }
.comparison-page .comparison-table .group-row > *{ padding: 10px 11px; font-size: .68rem; }
.comparison-page:is([data-compare="qm"], [data-compare="asternic"], [data-compare="astervis"]) .comparison-table thead th:first-child{ width: 27%; }
.comparison-page:is([data-compare="qm"], [data-compare="asternic"], [data-compare="astervis"]) .comparison-table thead [data-product]{ width: 36.5%; }
.comparison-page .cost-panel{ padding: 24px; border-radius: 18px; }
.comparison-page .cost-controls{ gap: 17px; grid-template-columns: 1fr; }
.comparison-page .cost-card{ padding: 20px 17px; }
.comparison-page .ai-choice{ grid-template-columns: 1fr; gap: 27px; padding: 29px 25px; border-radius: 19px; }
.comparison-page .ai-meter > *{ padding: 18px; }
.comparison-page .sources-grid{ gap: 28px; }
.comparison-page .shared-facts,.comparison-page .method-note{ padding: 21px; }
.comparison-page .closing-cta{ flex-direction: column; align-items: stretch; gap: 24px; padding: 29px; margin-block: 30px 42px; }
.comparison-page .closing-cta h2{ font-size: 2.4rem; }
.comparison-page .closing-cta > .closing-inner{ width: 100%; flex-direction: column; align-items: stretch; gap: 26px; }
.comparison-page .method-grid{ grid-template-columns: 1fr; gap: 21px; }
.comparison-page .hero-actions{ gap: 15px; }
.comparison-page .hero-actions .text-link{ font-size: .8rem; }
.comparison-page .hero-summary .hero-price{ font-size: 4.5rem; }
.comparison-page .updates-toggle{ padding: 17px; }
.comparison-page footer > .wrap{ flex-direction: column; gap: 12px; }

}
@media (max-width: 480px){.comparison-page .review-banner{ padding: 9px 20px; font-size: .7rem; }
.comparison-page .site-header > .wrap{ align-items: flex-start; gap: 12px; }
.comparison-page .header-links{ gap: 9px 13px; }
.comparison-page .brand{ gap: 8px; padding-top: 4px; }
.comparison-page .brand span{ font-size: 1.4rem; }
.comparison-page .brand img{ width: 31px; height: 33px; }
.comparison-page .header-links .btn{ padding-inline: 11px; }
.comparison-page .eyebrow{ font-size: .68rem; letter-spacing: .095em; }
.comparison-page .eyebrow::before{ width: 21px; margin-right: 8px; }
.comparison-page .hero-copy .btn{ width: 100%; margin-right: 0; }
.comparison-page .hero-summary{ padding: 24px; }
.comparison-page .hero-facts li{ font-size: .87rem; }
.comparison-page .offer-grid{ grid-template-columns: 1fr; gap: 15px; }
.comparison-page .offer-card,.comparison-page .offer-card.featured{ padding: 26px; }
.comparison-page .offer-card > p.price{ font-size: 2.7rem; }
.comparison-page .offer-points{ margin-bottom: 21px; font-size: .88rem; }
.comparison-page .cost-panel{ padding: 21px 17px; }
.comparison-page .cost-results{ gap: 11px; }
.comparison-page .cost-card{ padding: 18px 13px; }
.comparison-page .cost-card h3{ font-size: .86rem; }
.comparison-page .cost-card .total{ font-size: 1.6rem; }
.comparison-page .cost-card .breakdown{ font-size: .72rem; }
.comparison-page .comparison-table th,.comparison-page .comparison-table td{ padding-inline: 9px; }
.comparison-page .ai-choice{ padding: 26px 22px; }
.comparison-page .ai-choice .btn{ width: 100%; }
.comparison-page .closing-cta{ padding: 27px 23px; }
.comparison-page .closing-cta > .closing-inner{ width: 100%; }
.comparison-page .shared-facts{ gap: 13px; }
.comparison-page .shared-facts > span{ font-size: 1.8rem; }

}
@media (prefers-reduced-motion: reduce){.comparison-page{ scroll-behavior: auto; }
.comparison-page *,.comparison-page *::before,.comparison-page *::after{ animation: none !important; transition: none !important; }
.comparison-page .btn:hover{ transform: none; }

}
@media print{.comparison-page{ --paper: #fff; --shadow: none; }
.comparison-page{ color: #111; background: #fff; font-size: 10pt; }
.comparison-page .wrap{ width: 100%; max-width: none; }
.comparison-page .review-banner{ background: #eee; color: #111; border-bottom: 1px solid #bbb; }
.comparison-page .review-banner strong{ color: #111; }
.comparison-page .header-links,.comparison-page .compare-controls,.comparison-page .cost-controls,.comparison-page .closing-cta .btn,.comparison-page .updates-toggle,.comparison-page .skip-link{ display: none; }
.comparison-page .site-header > .wrap{ min-height: 60px; }
.comparison-page .hero{ padding-block: 28px; gap: 25px; }
.comparison-page h1{ font-size: 34pt; }
.comparison-page h2{ font-size: 25pt; }
.comparison-page .section{ padding-block: 25px; }
.comparison-page .offer-grid,.comparison-page .cost-results{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
.comparison-page .offer-card,.comparison-page .cost-card,.comparison-page .strength-card,.comparison-page .suite-step,.comparison-page .value-card{ padding: 15px; box-shadow: none; break-inside: avoid; }
.comparison-page .table-scroll{ max-height: none; overflow: visible; border-radius: 0; }
.comparison-page .comparison-table,.comparison-page[data-compare] .comparison-table{ min-width: 0; width: 100%; font-size: 7pt; }
.comparison-page[data-compare] .comparison-table [data-product]{ display: table-cell !important; width: 20% !important; }
.comparison-page[data-compare] .comparison-table thead th:first-child{ width: 20%; }
.comparison-page .comparison-table thead{ display: table-header-group; }
.comparison-page .comparison-table th,.comparison-page .comparison-table td{ padding: 8px 6px; position: static !important; box-shadow: none; }
.comparison-page .comparison-table thead th{ background: #e5e7f0; color: #111; font-size: 8pt; }
.comparison-page .comparison-table thead .focus-column{ background: #ddd7f7; color: #111; }
.comparison-page .comparison-table thead th p,.comparison-page .comparison-table thead th small{ color: #333; }
.comparison-page .comparison-table td p,.comparison-page .comparison-table td strong,.comparison-page .comparison-table td .source-link{ font-size: 7pt; }
.comparison-page .comparison-table tr{ break-inside: avoid; }
.comparison-page .ai-choice,.comparison-page .closing-cta{ background: #f3f1fa; color: #111; box-shadow: none; }
.comparison-page .ai-choice h2,.comparison-page .ai-choice h3,.comparison-page .ai-choice p,.comparison-page .ai-meter strong,.comparison-page .ai-meter p,.comparison-page .closing-cta p{ color: #222; }
.comparison-page .ai-choice .method-note{ color: #333; background: #fff; border-color: #bbb; }
.comparison-page .ai-meter > *{ border-color: #bbb; background: #fff; }
.comparison-page a{ color: #222; }
.comparison-page .btn{ background: #fff; color: #222; border: 1px solid #bbb; }

}

