/* =====================================================================
   Pricing pages — self-contained section styles (after styles.css + dispatch.css)
   Grid: 1080px content centred in the 1440 shell (Figma px-180), 28px section rhythm.
   ===================================================================== */
.home.pricing{ background:#f0f4fc; }

.pr-wrap{ width:min(1080px, calc(100% - 48px)); margin:0 auto; }
.pr-sec{ width:100%; display:flex; flex-direction:column; align-items:center; flex-shrink:0; background:#f0f4fc; }

/* ===== HEADER ===== */
.pr-header{ padding:80px 32px 40px; }
.pr-header__in{ display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
.pr-eyebrow{ display:inline-block; font-weight:700; font-size:12.5px; letter-spacing:1.2px; text-transform:uppercase; color:var(--color-brand); background:#e9eaff; padding:7px 14px; border-radius:999px; margin-bottom:2px; }
.pr-header h1{ font-weight:700; font-size:46px; line-height:1.1; letter-spacing:-1px; color:var(--color-gray-900); }
.pr-header p{ font-weight:400; font-size:18px; line-height:1.5; color:var(--color-gray-600); white-space:nowrap; }

/* Platform ↔ Route Planner toggle */
.pr-toggle{ display:inline-flex; gap:4px; padding:5px; background:#e9eaf2; border-radius:999px; margin-top:8px; }
.pr-toggle__opt{ padding:9px 22px; border-radius:999px; font-weight:600; font-size:14px; color:var(--color-gray-600); text-decoration:none; transition:background .15s, color .15s, box-shadow .15s; white-space:nowrap; }
.pr-toggle__opt.is-active{ background:#fff; color:var(--color-brand); box-shadow:0 2px 6px rgba(18,19,43,.12); }
.pr-toggle__opt:not(.is-active):hover{ color:var(--color-gray-900); }

/* ===== PLANS ===== */
.pr-plans{ padding:28px 32px; }
.pr-cards{ display:flex; gap:20px; align-items:stretch; }
.pr-card{ flex:1 1 0; min-width:0; background:#fff; border:1px solid #e6e7ec; border-radius:20px; padding:24px; display:flex; flex-direction:column; gap:16px; box-shadow:0 6px 9px rgba(26,26,51,.05); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.pr-card:hover{ transform:translateY(-5px); box-shadow:0 22px 44px -16px rgba(26,26,51,.18); border-color:#d3d6e6; }
.pr-card--pop{ border:2px solid var(--color-brand); box-shadow:0 18px 22px -6px rgba(65,65,231,.16); position:relative; padding:30px 24px 24px; }
.pr-card--pop:hover{ transform:translateY(-5px); box-shadow:0 28px 48px -14px rgba(65,65,231,.28); border-color:var(--color-brand); }
.pr-badge{ position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--color-brand); color:#fff; font-size:11px; font-weight:600; letter-spacing:.6px; text-transform:uppercase; padding:6px 13px; border-radius:20px; white-space:nowrap; }
.pr-card__head{ display:flex; flex-direction:column; gap:5px; }
.pr-card__name{ font-weight:700; font-size:20px; color:var(--color-gray-900); }
.pr-card__desc{ font-weight:400; font-size:14px; line-height:1.4; color:var(--color-gray-600); }
.pr-price-wrap{ display:flex; flex-direction:column; gap:6px; }
.pr-price{ display:flex; align-items:baseline; gap:7px; flex-wrap:wrap; }
.pr-price b{ font-weight:700; font-size:36px; line-height:1; letter-spacing:-.8px; color:var(--color-gray-900); }
.pr-price span{ font-weight:400; font-size:16px; color:var(--color-gray-600); }
.pr-save{ display:inline-flex; align-items:center; background:#e6f7ee; color:var(--color-green-600); font-family:"Plus Jakarta Sans", sans-serif; font-weight:700; font-size:12.5px; line-height:1; letter-spacing:.2px; padding:5px 10px; border-radius:999px; align-self:center; }
.pr-extra{ font-weight:400; font-size:13px; color:#8c8f98; }
.pr-btn{ width:100%; display:inline-flex; align-items:center; justify-content:center; height:44px; border-radius:11px; font-weight:600; font-size:14.5px; cursor:pointer; text-decoration:none; border:none; transition:transform .15s ease, filter .2s ease, box-shadow .2s ease; }
.pr-btn--ghost{ background:#fff; border:1px solid #e6e7ec; color:var(--color-gray-900); }
.pr-btn--ghost:hover{ background:var(--color-brand); border-color:var(--color-brand); color:#fff; box-shadow:0 10px 22px -10px rgba(65,65,231,.45); }
.pr-btn--primary{ background:#fff; border:1px solid #e6e7ec; color:var(--color-gray-900); }
.pr-btn--primary:hover{ background:var(--color-brand); border-color:var(--color-brand); color:#fff; box-shadow:0 10px 22px -10px rgba(65,65,231,.45); }
.pr-div{ height:1px; background:#e6e7ec; width:100%; }
.pr-feat{ display:flex; flex-direction:column; gap:11px; width:100%; }
.pr-feat__row{ display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:14px; }
.pr-feat__row .k{ font-weight:400; color:var(--color-gray-600); }
.pr-feat__row .v{ font-weight:600; color:var(--color-gray-900); }

/* ===== CUSTOM PLAN BAR ===== */
.pr-custom-sec{ padding:28px 32px; }
.pr-custom{ display:flex; align-items:center; gap:20px; background:#fff; border:1px solid #e6e7ec; border-radius:20px; padding:24px; }
.pr-custom__ic{ width:48px; height:48px; flex:none; border-radius:12px; background:#eef0fe; color:var(--color-brand); display:flex; align-items:center; justify-content:center; }
.pr-custom__ic svg{ width:24px; height:24px; }
.pr-custom__tx{ flex:1 1 0; min-width:0; display:flex; flex-direction:column; gap:4px; }
.pr-custom__tx b{ font-weight:700; font-size:20px; line-height:1.25; color:var(--color-gray-900); }
.pr-custom__tx span{ font-weight:400; font-size:16px; line-height:1.4; color:var(--color-gray-600); }
.pr-custom__link{ flex:none; display:inline-flex; align-items:center; gap:8px; padding:14px 18px; border-radius:12px; border:1px solid #e6e7ec; background:#fff; color:var(--color-gray-900); font-weight:600; font-size:15px; text-decoration:none; transition:border-color .15s, box-shadow .2s; white-space:nowrap; }
.pr-custom__link:hover{ border-color:var(--color-brand-300); box-shadow:0 8px 20px -10px rgba(18,19,43,.2); }

/* ===== GUARANTEES ===== */
.pr-guar-sec{ padding:28px 32px; }
.pr-guar{ display:flex; gap:28px; justify-content:center; align-items:center; flex-wrap:wrap; }
.pr-guar span{ display:inline-flex; align-items:center; gap:8px; font-weight:500; font-size:15px; color:var(--color-gray-600); }
.pr-guar .tick{ width:18px; height:18px; flex:none; color:var(--color-brand); }

/* ===== REVIEW ===== */
.pr-review-sec{ padding:28px 32px; }
.pr-review{ background:var(--color-blue-25,#f1f2ff); border:1px solid #e6e7ec; border-radius:28px; padding:52px 120px; display:flex; flex-direction:column; align-items:center; gap:10px; text-align:center; box-shadow:0 10px 30px -6px rgba(26,26,51,.05); }
.pr-review__stars{ display:flex; gap:6px; color:var(--color-gold); }
.pr-review__stars svg{ width:24px; height:24px; }
.pr-review p{ font-weight:500; font-size:19px; line-height:1.5; color:#2a2e3a; }

/* ===== COMPARE TABLE ===== */
.pr-compare-sec{ padding:28px 32px 56px; }
.pr-compare{ background:#fff; border:1px solid #e6e7ec; border-radius:20px; overflow:hidden; box-shadow:0 6px 9px rgba(26,26,51,.05); }
.pr-compare__head{ display:flex; align-items:center; gap:8px; padding:20px 24px; }
.pr-compare__head .ic{ width:20px; height:20px; color:var(--color-brand); }
.pr-compare__head b{ font-weight:700; font-size:17px; color:var(--color-gray-900); }
.pr-compare__head small{ font-weight:400; font-size:13px; color:#9a9ca6; }
.pr-tbl{ width:100%; border-collapse:collapse; table-layout:fixed; }
.pr-tbl col.c-feat{ width:34%; }
.pr-tbl th, .pr-tbl td{ padding:14px 20px; font-size:14.5px; text-align:center; }
.pr-tbl thead th{ font-weight:700; font-size:15px; color:var(--color-gray-900); padding-top:10px; padding-bottom:16px; }
.pr-tbl thead th:first-child{ text-align:left; }
.pr-tbl th.col-pop{ color:var(--color-brand); }
.pr-tbl td.col-pop, .pr-tbl th.col-pop{ background:#eef0ff; }
.pr-tbl tbody td:first-child{ text-align:left; font-weight:500; color:var(--color-gray-700,#3c3e47); }
.pr-tbl td .v{ font-weight:600; color:var(--color-gray-900); }
.pr-tbl td.col-pop .v{ color:var(--color-brand); }
.pr-tbl tr.row-line td{ border-top:1px solid #eef0f3; }
.pr-grp td{ background:#f6f7f9; font-weight:700; font-size:12px; letter-spacing:.8px; text-transform:uppercase; color:#6b6e78; text-align:left !important; padding:10px 20px; }
.pr-grp td.col-pop{ background:#eef0ff; }
.pr-tick{ display:inline-flex; color:var(--color-brand); }
.pr-tick svg{ width:17px; height:17px; }
.pr-cross{ display:inline-flex; color:#c3c6d0; }
.pr-cross svg{ width:15px; height:15px; }

/* ===== responsive ===== */
@media (max-width:1000px){
  .pr-cards{ flex-direction:column; align-items:center; }
  .pr-card{ width:100%; max-width:440px; flex:none; }
  .pr-custom{ flex-direction:column; align-items:flex-start; gap:16px; }
  .pr-header{ padding:48px 24px 32px; }
  .pr-header h1{ font-size:34px; }
  .pr-header p{ white-space:normal; }
  .pr-review{ padding:44px 28px; }
  .pr-compare{ overflow-x:auto; }
  .pr-tbl{ min-width:720px; }
}

body { background: #f0f4fc; }  /* full-width bg: match .home tint, kill gray gutter */

/* pricing: keep blue past the cards */
.disp-faq { background: #f0f4fc; }
