/* Four plans share real table rows; the entire table remains available on mobile. */
.advisory-pricing { --advisory-line:#bcc7d6; --advisory-highlight:#edf2ff; min-width:0; }
.advisory-recommendation { display:flex; align-items:center; gap:24px; padding:22px 26px; margin-bottom:24px; background:#fff; border-left:3px solid var(--blue); }
.advisory-recommendation-label { flex-shrink:0; color:var(--blue); font-size:12px; font-weight:600; }
.advisory-recommendation p { display:flex; align-items:center; flex-wrap:wrap; gap:8px 22px; margin:0; line-height:1.8; }
.advisory-recommendation strong { color:#234f9b; font-size:20px; font-weight:600; white-space:nowrap; }
.advisory-recommendation p > span { font-size:13px; color:var(--muted); }
.advisory-table-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.advisory-table-intro p { margin:0; font-size:12px; color:var(--muted); line-height:1.7; }
.advisory-scroll-hint { display:none; max-width:40em; }
.advisory-scroll-hint > span:first-child { margin-right:.5em; color:var(--blue); }
.advisory-keyboard-help { display:block; }
.advisory-table-scroll { position:relative; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-color:#687cba #e5e9f1; scrollbar-width:auto; border:1px solid var(--advisory-line); -webkit-overflow-scrolling:touch; }
.advisory-table-scroll:focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
.advisory-comparison { width:100%; min-width:1080px; table-layout:fixed; border-collapse:separate; border-spacing:0; background:#fff; font-size:14px; line-height:1.7; }
.advisory-comparison .advisory-label-column { width:20%; }
.advisory-comparison th,.advisory-comparison td { padding:22px 16px; border-right:1px solid var(--advisory-line); border-bottom:1px solid var(--advisory-line); vertical-align:middle; text-align:center; font-family:inherit; letter-spacing:0; word-break:normal; line-break:strict; overflow-wrap:normal; }
.advisory-comparison tr > :last-child { border-right:0; }
.advisory-comparison tbody > tr > th,.advisory-comparison tbody > tr > td { border-bottom:1px solid var(--advisory-line); }
.advisory-comparison tbody:last-of-type > tr:last-child > * { border-bottom:0; }
.advisory-comparison thead th { padding-block:26px; font-weight:500; vertical-align:top; border-top:3px solid transparent; }
.advisory-comparison .advisory-plan-row > th { vertical-align:bottom; }
.advisory-comparison thead th.advisory-featured { border-top-color:#254e9f; background:linear-gradient(130deg,#203c7a,#3264bc); color:#fff; }
.advisory-recommended-badge { display:inline-block; padding:5px 10px; margin-bottom:14px; border:1px solid #ffffff70; background:#fff; color:#234b91; font-size:12px; font-weight:600; white-space:nowrap; }
.advisory-featured .advisory-plan-purpose { color:#edf2ff; }
.advisory-featured .advisory-plan-name { font-size:20px; }
.advisory-featured .advisory-price,.advisory-hours-row .advisory-featured strong { color:#234f9b; font-weight:650; }
.advisory-comparison .advisory-corner,.advisory-comparison tbody th { position:sticky; left:0; z-index:2; text-align:left; background:#f7f8fb; box-shadow:1px 0 0 var(--advisory-line); font-weight:500; }
.advisory-comparison th.advisory-corner { color:var(--muted); vertical-align:bottom; }
.advisory-comparison .advisory-featured { background:var(--advisory-highlight); box-shadow:inset 1px 0 #7194d0,inset -1px 0 #7194d0; }
.advisory-comparison .advisory-audience-row > th:not(.advisory-corner) { padding:15px 12px; border-top:0; font-size:13px; font-weight:600; vertical-align:middle; }
.advisory-comparison .advisory-audience-personal { background:#f1f2f5; }
.advisory-comparison .advisory-audience-business { background:#e7edfc; color:#294d91; letter-spacing:.06em; }
.advisory-plan-purpose { display:block; font-size:12px; color:var(--muted); margin-bottom:10px; font-weight:400; }
.advisory-plan-name { display:block; font-size:clamp(15px,1.2vw,18px); font-weight:600; line-height:1.5; }
.advisory-price { display:block; font-family:inherit; font-size:34px; font-weight:550; line-height:1.2; letter-spacing:-.04em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.advisory-price-unit { display:block; font-size:13px; margin-top:7px; font-weight:400; white-space:nowrap; }
.advisory-unbroken { white-space:nowrap; }
.advisory-label-note,.advisory-cell-note { display:block; font-size:12px; font-weight:400; color:var(--muted); margin-top:5px; }
.advisory-status { display:block; font-size:23px; line-height:1; font-weight:500; }
.advisory-status.is-included { color:var(--blue); }
.advisory-status.is-excluded { color:#707c8e; }
.advisory-hours-row strong { font-weight:600; font-size:20px; }
.advisory-plan-link { display:flex; gap:8px; align-items:center; justify-content:center; min-height:48px; padding:10px 7px; border:1px solid #95a1b7; font-size:12px; line-height:1.6; transition:background .2s,color .2s; }
.advisory-featured .advisory-plan-link { color:#fff; background:#234f9b; border-color:#234f9b; font-weight:600; box-shadow:0 4px 12px #234f9b20; }
.advisory-plan-link:hover { background:var(--ink); color:#fff; border-color:var(--ink); }
.advisory-plan-link:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.advisory-plan-link > span { font-size:19px; flex-shrink:0; }
.advisory-plan-notes { margin-top:18px; color:var(--muted); font-size:12px; line-height:1.9; }
.advisory-plan-notes p { margin:0; }
.advisory-plan-notes p+p { margin-top:6px; }
.advisory-hours { margin-top:64px; padding:44px 40px; background:#fff; border:1px solid var(--advisory-line); }
.advisory-hours-heading h3 { margin:16px 0 20px; font-size:clamp(24px,2.3vw,32px); font-weight:500; line-height:1.5; }
.advisory-hours-heading > p { font-size:15px; line-height:1.95; }
.advisory-hours-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 40px; margin-top:32px; }
.advisory-hours-grid article { border-top:1px solid var(--advisory-line); padding-top:21px; }
.advisory-hours h4 { margin:0 0 12px; font-size:17px; line-height:1.7; font-weight:550; }
.advisory-hours-grid p { margin:0; font-size:14px; line-height:1.95; color:var(--muted); }
.advisory-hours-example { margin-top:34px; padding:28px; background:#f3f5fa; }
.advisory-hours-example > p { margin:0; font-size:14px; line-height:1.95; }
.advisory-hours-example .advisory-example-note { margin-top:12px; font-size:12px; color:var(--muted); }
.advisory-hours .advisory-scope-note { margin:23px 0 0; font-size:13px; color:var(--muted); line-height:1.95; }
.advisory-contract-notes { margin-top:36px; }
.advisory-contract-notes h3 { font-size:17px; margin:0 0 14px; font-weight:550; }
.advisory-contract-notes ul { padding-left:1.3em; margin:0; list-style:disc; font-size:13px; line-height:1.95; color:var(--muted); }
.advisory-contract-notes li+li { margin-top:9px; }
.advisory-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
@media(max-width:1240px) {
  .advisory-scroll-hint { display:block; }
  .advisory-table-intro { align-items:flex-start; }
}
@media(max-width:680px) {
  .advisory-recommendation { align-items:flex-start; flex-direction:column; gap:8px; padding:20px; }
  .advisory-recommendation p { align-items:flex-start; flex-direction:column; gap:6px; }
  .advisory-recommendation p > span { font-size:13px; }
  .advisory-recommended-badge { font-size:11px; padding:4px 8px; }
  .advisory-featured .advisory-plan-name { font-size:18px; }
  .advisory-table-scroll { scroll-padding-inline:132px 0; }
  .advisory-table-intro { flex-direction:column; gap:8px; }
  .advisory-keyboard-help { display:none; }
  .advisory-comparison { min-width:860px; font-size:13px; }
  .advisory-comparison .advisory-label-column { width:132px; }
  .advisory-comparison th,.advisory-comparison td { padding:18px 11px; }
  .advisory-comparison .advisory-corner,.advisory-comparison tbody th { font-size:12px; }
  .advisory-comparison thead th { padding-block:20px; }
  .advisory-plan-name { font-size:15px; }
  .advisory-plan-purpose { font-size:11px; }
  .advisory-price { font-size:29px; }
  .advisory-label-note,.advisory-cell-note { font-size:11px; }
  .advisory-hours { margin-top:42px; padding:28px 20px; }
  .advisory-hours-heading > p { font-size:14px; }
  .advisory-hours-grid { grid-template-columns:1fr; gap:24px; margin-top:26px; }
  .advisory-hours h4 { font-size:16px; }
  .advisory-hours-example { padding:22px 18px; }
  .advisory-hours .advisory-scope-note { font-size:12px; }
  .advisory-contract-notes ul { font-size:12px; }
}
@media(max-width:380px) {
  .advisory-table-scroll { scroll-padding-inline-start:100px; }
  .advisory-comparison { min-width:740px; }
  .advisory-comparison .advisory-label-column { width:100px; }
  .advisory-comparison th,.advisory-comparison td { padding-inline:8px; }
  .advisory-plan-name { font-size:14px; }
  .advisory-comparison .advisory-corner,.advisory-comparison tbody th { font-size:11px; }
  .advisory-comparison .advisory-audience-row > th:not(.advisory-corner) { font-size:12px; }
}
