/* Product pages: practical choices, real demonstrations and clear purchase terms. */
.product-page { --product-ink:#12263b; --product-soft:#496076; --product-line:#d3dfe9; --product-light:#f4f7fa; }
.product-page .page-hero { padding-bottom:56px; }
.product-page .page-hero h1 { font-size:clamp(2.4rem,4.2vw,4.25rem); max-width:15ch; line-height:1.08; letter-spacing:-.045em; }
.product-page .page-hero .lead { max-width:57ch; font-size:clamp(1rem,1.2vw,1.15rem); line-height:1.7; color:#c2cede; }
.product-page .page-hero-grid { gap:clamp(28px,4vw,60px); align-items:center; }
.product-page .page-hero-visual { border:1px solid #345067; border-radius:16px; background:#11243a; box-shadow:none; }
.product-page .page-hero-visual>img { object-fit:contain; }
.product-page .ph-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding-top:22px; margin-top:24px; gap:20px; }
.product-page .ph-stats .n { font-size:clamp(1.2rem,2vw,1.8rem); }
.product-page .ph-stats .l { font-size:12px; color:#bdcbd9; line-height:1.5; }
.product-page .ph-ctas .btn { min-height:50px; white-space:normal; text-align:center; }
.product-page .page-hero figcaption { font-size:12px; line-height:1.6; color:#c2cede; }
.product-page .mk-tabs { scrollbar-width:thin; scrollbar-color:#5b7289 #11243a; gap:4px; padding-bottom:10px; border-bottom:1px solid #294156; }
.product-page .mk-tab { min-height:46px; padding:12px 18px; flex-shrink:0; font-size:14px; }
.product-page .mk-tab:focus-visible { outline-offset:-3px; }
.product-page .mk-panel { padding-top:28px; }
.product-page .feature-row h2 { font-size:clamp(1.7rem,2.9vw,2.7rem); line-height:1.2; }
.product-page .feature-row p,.product-page .addin-feat p { line-height:1.7; }
.product-page .addin-feat .fi { color:#50c9df!important; background:#50c9df14!important; }
.product-page .addin-feat { box-shadow:none; border:1px solid #294156; border-radius:14px; background:#0d1c30; }
.product-page .compat-table { width:100%; table-layout:fixed; }
.product-page .compat-table td { overflow-wrap:anywhere; padding:17px 20px; font-size:14px; line-height:1.6; }
.product-page .compat-table td:first-child { width:65%; }
.product-page .compat-table .ok { color:#9be0c7; }
.product-section-head { max-width:760px; margin:0 0 28px; }
.product-overline { color:#50c9df; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; margin-bottom:12px; }
.product-section-head h2 { margin:0 0 16px; font-size:clamp(1.7rem,3vw,2.7rem); line-height:1.16; letter-spacing:-.035em; color:#f5f8fc; }
.product-section-head p { margin:0; font-size:16px; line-height:1.7; color:#c2cede; max-width:65ch; }
.product-plan-guide { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:24px 0 28px; }
.product-fact { min-width:0; display:flex; gap:13px; align-items:flex-start; padding:18px; border:1px solid #d3dfe9; border-radius:12px; background:#f4f7fa; color:#12263b; }
.product-fact>i { display:grid; place-items:center; flex:0 0 40px; height:40px; border-radius:10px; background:#e1edf2; color:#075d75; font-size:18px; }
.product-fact strong { display:block; margin:1px 0 5px; font-size:14px; line-height:1.5; color:#12263b; }
.product-fact small { display:block; font-size:13px; line-height:1.6; color:#496076; }
.product-purchase-note { display:flex; gap:14px; align-items:flex-start; margin:24px 0; padding:20px; background:#edf4f8; color:#12263b; border:1px solid #ccdfe9; border-radius:12px; }
.product-purchase-note>i { color:#075d75; font-size:19px; margin-top:3px; }
.product-purchase-note strong { display:block; color:#12263b; font-size:14px; margin-bottom:6px; }
.product-purchase-note p { margin:0; color:#496076; font-size:14px; line-height:1.7; }
.product-advisor { display:flex; align-items:center; gap:10px; border:1px solid #416077; border-radius:10px; padding:13px 18px; min-height:48px; margin-top:24px; background:#11243a; color:#edf3fa; font:700 14px/1.4 var(--font-title,Manrope,sans-serif); text-align:left; cursor:pointer; transition:background .2s,border-color .2s; }
.product-advisor:hover { background:#16304a; border-color:#50c9df; }
.product-advisor>i:last-child { margin-left:auto; }
.product-advisor:focus-visible,.product-faq summary:focus-visible { outline:3px solid #50c9df; outline-offset:4px; }
.product-help-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:#075d75; font-size:14px; font-weight:700; }
.product-cad-pricing { padding:32px!important; border:1px solid #d3dfe9; background:#f4f7fa; border-radius:18px; --ink:#12263b; --ink-2:#496076; --ink-soft:#496076; --gold:#8d520d; --gold-lt:#8d520d; --violet:#075d75; }
.product-cad-pricing .product-overline { color:#075d75; }
.product-cad-pricing .product-section-head h2 { color:#12263b; }
.product-cad-pricing .product-section-head p { color:#496076; }
.product-cad-pricing .pricing-3 { gap:24px; align-items:start; }
.product-cad-pricing .pricing-tier { background:#fff; box-shadow:none; border:1px solid #d3dfe9; border-radius:14px; min-width:0; }
.product-cad-pricing :is(.tier-name,.tier-price,.price-compare-head strong,.plan-choice-top strong,.plan-choice-cost b.money) { color:#12263b; }
.product-cad-pricing :is(.tier-desc,.plan-choice-body small,.price-compare-head small,.plan-note,.price-secondary,.plan-choice-saving) { color:#496076; }
.product-cad-pricing .plan-choice { background:#f8fafc; border-color:#d3dfe9; }
.product-cad-pricing .plan-choice:has(input:checked) { background:#fbf6ed; border-color:#bc8134; box-shadow:inset 3px 0 #bc8134; }
.product-cad-pricing .plan-choice-radio { border-color:#8195a7; }
.product-cad-pricing .plan-choice:has(input:checked) .plan-choice-radio { border-color:#8d520d; background:#8d520d; }
.product-cad-pricing :is(.choice-badge,.tier-flag) { color:#80500f; background:#f5e6cb; }
.product-cad-pricing .choice-badge-cyan { background:#e5f1f5; color:#075d75; }
.product-cad-pricing .plan-choice-meter { background:#dfe8ee; }
.product-cad-pricing .chip { border-color:#d3dfe9; color:#496076; background:#f4f7fa; }
.product-cad-pricing .btn-dark { background:#11243a; color:#f5f8fc; border-color:#11243a; }
.product-cad-pricing .btn-gold { background:#d8a75f; color:#07111f; border-color:#d8a75f; }
.product-resource-preview { align-self:center; border:1px solid #36516a; border-radius:16px; background:#0d1c30; overflow:hidden; }
.resource-preview-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:22px; border-bottom:1px solid #294156; }
.resource-preview-head>span:first-child { display:flex; align-items:center; gap:10px; font-size:15px; font-weight:700; color:#f5f8fc; }
.resource-preview-head i { color:#d8a75f; }
.resource-preview-badge { font-size:11px; color:#9edfed; background:#50c9df12; padding:6px 9px; border-radius:6px; }
.resource-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:22px; }
.resource-preview-grid .product-fact { flex-direction:column; padding:18px; border-color:#294156; background:#11243a; }
.resource-preview-grid .product-fact>i { background:#50c9df12; color:#50c9df; width:40px; }
.resource-preview-grid .product-fact strong { color:#f5f8fc; font-size:16px; }
.resource-preview-grid .product-fact small { color:#c2cede; font-size:13px; }
.resource-preview-foot { display:flex; align-items:flex-start; gap:12px; padding:18px 22px; border-top:1px solid #294156; color:#c2cede; font-size:13px; line-height:1.65; }
.resource-preview-foot>i { color:#50c9df; padding-top:3px; }
.product-page .section.product-resource-shop { background:#f4f7fa; color:#12263b; padding:64px 0!important; border-block:1px solid #d3dfe9; }
.product-resource-shop .product-overline { color:#075d75; }
.product-resource-shop .product-section-head h2 { color:#12263b; }
.product-resource-shop .product-section-head p { color:#496076; }
.product-resource-shop .sub-label { font-size:13px; color:#496076; }
.product-resource-shop .supremo { background:#11243a; border:1px solid #36516a; box-shadow:none!important; border-radius:14px; }
.product-resource-shop .sup-glow { display:none; }
.product-resource-shop .sup-top { background:#d8a75f; color:#07111f; }
.product-resource-shop .sup-name { color:#f5f8fc; }
.product-resource-shop .sup-desc { color:#c2cede; }
.product-resource-shop .sup-feat { color:#d5e0eb; }
.product-resource-shop .sup-right .btn { background:#d8a75f; color:#07111f; border-color:#d8a75f; }
.product-resource-shop .filter-bar { gap:8px; flex-wrap:wrap; margin:32px 0 24px; }
.product-resource-shop .filter-btn { min-height:44px; padding:11px 17px; font-size:13px; border:1px solid #bdcdd9; color:#344d63; background:#fff; }
.product-resource-shop .filter-btn.active { color:#fff; background:#11243a; border-color:#11243a; }
.product-resource-shop .price-grid { gap:20px; }
.product-resource-shop .price-card { min-width:0; background:#fff; border:1px solid #d3dfe9; border-radius:14px; box-shadow:none; }
.product-resource-shop :is(.pc-name,.pc-new,.pc-new .money) { color:#12263b; }
.product-resource-shop :is(.pc-desc,.pc-old,.pc-tier,.pc-bonus) { color:#496076; }
.product-resource-shop .pc-desc { font-size:14px; line-height:1.75; }
.product-resource-shop .pc-ic { color:#075d75!important; background:#e6f0f5!important; }
.product-resource-shop .price-card .btn-ghost { background:#f7fafc; color:#075d75; border:1px solid #bdcdd9; min-height:48px; }
.product-resource-shop .price-card .btn-gold { background:#d8a75f; color:#07111f; min-height:48px; }
.product-resource-shop .disc { background:#f6ebd9; color:#80500f; }
.product-page .product-resource-comparison { padding-top:64px; }
.product-resource-comparison .cmp-wrap { border:1px solid #294156; border-radius:14px; }
.product-resource-comparison .cmp { min-width:550px; }
.product-resource-comparison .cmp th,.product-resource-comparison .cmp td { font-size:14px; line-height:1.55; }
.product-resource-comparison .cmp .feat-col { background:#50c9df0b; }
.product-resource-guidance { padding-block:64px!important; }
.product-faq { border-top:1px solid #294156; }
.product-faq details { border-bottom:1px solid #294156; padding:0 0 16px; }
.product-faq summary { min-height:60px; padding:20px 28px 12px 0; color:#f5f8fc; font-size:16px; font-weight:700; cursor:pointer; line-height:1.6; }
.product-faq details p { max-width:76ch; margin:8px 0 12px; color:#c2cede; line-height:1.75; font-size:15px; }
.product-faq details>a { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:#50c9df; font-size:14px; font-weight:700; }
.product-page .pulse { animation:none!important; }
.product-page .cta-strip { padding-block:64px; }
.product-page .cta-strip p { max-width:65ch; margin-inline:auto; }
@media(max-width:800px) {
  .product-page .page-hero { padding-bottom:40px; }
  .product-page .page-hero-grid { grid-template-columns:1fr; }
  .product-page .page-hero h1 { font-size:clamp(2.15rem,6.5vw,3.1rem); max-width:19ch; }
  .product-page .page-hero-copy { min-width:0; }
  .product-page .page-hero-visual { margin-top:4px; }
  .product-page .ph-stats { gap:16px; }
  .product-page .ph-stats>div { min-width:0; }
  .product-page .ph-stats .n { font-size:1.2rem; }
  .product-page .ph-stats>div { padding:0; border:0; }
  .product-cad-pricing { padding:22px!important; }
  .product-cad-pricing .pricing-3 { grid-template-columns:1fr; }
  .product-cad-pricing .pricing-tier { padding:24px 20px; }
  .product-resource-shop { padding-block:48px!important; }
  .product-resource-shop .price-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-page .mk-tabs { flex-wrap:nowrap; overflow-x:auto; width:100%; max-width:100%; }
}
@media(max-width:480px) {
  .product-page .page-hero h1 { font-size:2.25rem; }
  .product-page .ph-ctas { flex-direction:column; align-items:stretch; }
  .product-page .ph-ctas .btn { width:100%; min-height:52px; font-size:14px; }
  .product-page .ph-stats { flex-wrap:wrap; }
  .product-page .ph-stats .l { font-size:12px; }
  .product-page .ph-stats .n .money { font-size:clamp(1.05rem,4vw,1.3rem); white-space:nowrap; }
  .product-page .ph-stats .n .money .cur { font-size:inherit; }
  .product-page .mk-tab { padding:12px 15px; }
  .product-plan-guide { grid-template-columns:1fr; }
  .product-purchase-note { padding:16px; }
  .product-page .compat-table td { padding:14px 12px; font-size:13px; }
  .product-cad-pricing { padding:18px 14px!important; }
  .product-cad-pricing .pricing-tier { padding:20px 14px; }
  .product-cad-pricing .tier-name { font-size:1.35rem; }
  .product-cad-pricing .plan-choice { padding:14px 12px; }
  .product-cad-pricing .plan-choice-cost b { font-size:1.55rem; }
  .product-cad-pricing .plan-choice-cta { white-space:normal; min-height:52px; font-size:13px; line-height:1.5; }
  .resource-preview-head,.resource-preview-grid { padding:18px; }
  .resource-preview-grid { gap:10px; }
  .resource-preview-grid .product-fact { padding:14px 12px; }
  .resource-preview-grid .product-fact small { font-size:12px; }
  .resource-preview-foot { padding:18px; }
  .product-resource-shop .price-grid { grid-template-columns:1fr; }
  .product-resource-shop .supremo { padding:26px 20px; }
  .product-resource-shop .sup-name { font-size:1.8rem; }
  .product-resource-shop .sup-feats { gap:10px; }
  .product-resource-shop .sup-feat { font-size:12px; }
  .product-advisor { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  .product-page *, .product-page *::before, .product-page *::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
}
