/* Public buying guides share the existing Parley typography and palette. */
.value-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; padding-top:28px; padding-bottom:35px; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.value-strip strong { display:block; font-size:17px; margin-bottom:6px; }
.value-strip p { color:var(--muted); font-size:14px; max-width:34ch; }
.buying-section { padding-top:90px; padding-bottom:90px; }
.buying-section > h2, .public-faq > h2 { font-size:clamp(34px,4vw,52px); max-width:760px; margin:15px 0 30px; }
.buying-grid, .route-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:28px 0; }
.buying-card { padding:34px; border-radius:20px; background:var(--surface); border:1px solid var(--rule); }
.buying-card h3 { font-family:var(--serif); font-size:34px; line-height:1.1; margin:16px 0; }
.buying-card p { margin:14px 0; color:var(--muted); }
.buying-card .text-link { margin-top:12px; }
.buying-card.accent { background:var(--accent-soft); }
.public-faq { padding-top:50px; padding-bottom:90px; max-width:980px; }
.public-faq details { border-bottom:1px solid var(--rule); padding:20px 0; }
.public-faq summary { font-size:18px; cursor:pointer; font-weight:600; }
.public-faq details p { color:var(--muted); margin-top:14px; max-width:75ch; }
.public-faq a, .availability-note a { text-decoration:underline; text-underline-offset:3px; }
.hero-note a { text-decoration:underline; text-underline-offset:3px; }
.marketing-article { max-width:1000px; }
.marketing-article .page-heading { margin-bottom:35px; }
.marketing-article .lead { max-width:760px; }
.marketing-article h1 { font-size:clamp(38px,5vw,66px); }
.marketing-article h1 em { color:var(--accent); }
.marketing-article p, .marketing-article li { line-height:1.75; }
.marketing-article ul, .article-steps { padding-left:24px; }
.marketing-article li { margin:14px 0; }
.marketing-article a:not(.action):not(.brand) { text-decoration:underline; text-underline-offset:3px; }
.marketing-article h2 { line-height:1.15; }
.marketing-article h3 { font-family:var(--serif); font-size:27px; line-height:1.2; margin:0 0 16px; }
.route-grid section { padding:26px; border:1px solid var(--rule); background:var(--surface); border-radius:16px; min-width:0; }
.route-grid h2 { font-size:29px; margin:0 0 16px; }
.route-grid p { margin:0; }
.article-figure { margin:25px 0 40px; }
.article-figure img { display:block; width:100%; height:auto; border-radius:16px; border:1px solid var(--rule); }
.article-figure figcaption, .article-meta, .breadcrumbs { font-size:13px !important; color:var(--muted); }
.article-figure figcaption { padding-top:8px; }
.breadcrumbs { margin-bottom:35px; }
.article-next { margin-top:50px; padding:30px; background:var(--accent-soft); border-radius:18px; }
.article-next h2 { margin-top:0; font-size:34px; }
.article-next .action { display:inline-flex; width:auto; margin:12px 18px 0 0; }
.availability-note { border-left:3px solid var(--accent); padding:20px 24px; margin:25px 0; background:var(--surface); }
.availability-note p { margin:10px 0 0; }
.comparison-scroll { overflow-x:auto; margin:25px 0; border:1px solid var(--rule); border-radius:12px; }
.comparison-scroll table { width:100%; min-width:660px; border-collapse:collapse; font-size:14px; line-height:1.6; }
.comparison-scroll caption { text-align:left; padding:18px; font-weight:600; background:var(--surface); }
.comparison-scroll th, .comparison-scroll td { padding:18px; text-align:left; vertical-align:top; border-top:1px solid var(--rule); }
.comparison-scroll thead th { background:var(--accent-soft); }
.comparison-scroll th[scope="row"] { min-width:145px; }
.cost-estimator { max-width:1000px; margin:60px auto; padding:35px; border:1px solid var(--rule); border-radius:20px; background:var(--surface); }
.cost-estimator h2 { font-size:36px; margin:0 0 14px; }
.estimate-controls { display:flex; align-items:end; flex-wrap:wrap; gap:22px; margin:24px 0; }
.estimate-controls label { display:grid; gap:8px; font-size:14px; flex:1 1 220px; }
.estimate-controls input, .estimate-controls select { width:100%; min-width:0; padding:12px; border:1px solid #b9bea8; background:white; color:#292929; border-radius:8px; font:inherit; }
.estimate-total { display:block; font-size:27px; color:#4e601b; margin:20px 0 12px; }
.estimate-note { color:var(--muted); font-size:14px; line-height:1.7; }
.pricing-page .availability-note { max-width:1000px; margin:0 auto 30px; }
.display-price.pending-price > span { font-size:clamp(26px,3vw,38px); line-height:1.2; }
.submenu a { display:block; padding:12px 10px; border-radius:6px; }
.submenu a:hover { background:var(--surface); }
@media(max-width:700px) {
 .value-strip, .buying-grid, .route-grid { grid-template-columns:1fr; }
 .value-strip { gap:20px; }
 .buying-section, .public-faq { padding-top:45px; padding-bottom:45px; }
 .buying-card, .cost-estimator { padding:24px; }
 .article-next { padding:24px; }
 .article-next .text-link { display:inline-block; margin-top:18px; }
 .cost-estimator h2 { font-size:30px; }
 .page-footer nav { flex-wrap:wrap; }
}

/* Review: clear capabilities and compact, readable product sections. */
.review-home .hero { max-width: 1400px; margin: auto; padding: 64px 44px; gap: 48px; min-height: 0; }
.review-home .hero h1 { font-size: clamp(38px, 4vw, 58px); line-height: 1.12; letter-spacing: -.025em; }
.review-home .hero-description { font-size: 18px; max-width: 42ch; margin: 24px 0; }
.review-home .hero-benefits { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin: 24px 0; }
.hero-benefits li { display: grid; gap: 2px; }
.hero-benefits strong { font-size: 18px; }
.hero-benefits span { color: var(--muted); font-size: 14px; }
.hero-benefits a { text-decoration: underline; text-underline-offset: 3px; }
.language-controls .language-model-field { grid-column: 1 / -1; }
#language-feedback { padding: 12px 0; font-weight: 600; color: var(--accent); }
.review-home .hero-note { font-size: 14px; color: var(--muted); }
.review-home .hero-visual { width: 100%; min-width: 0; padding: 0; }
.review-home .hero-frame { transform: none; width: 100%; margin: 0; }
.review-home .hero-frame img { width: 100%; }
.review-home .hero-frame figcaption { display: block; font-size: 13px; padding: 12px; color: var(--muted); }
.visual-caption { padding: 18px 6px; text-align: center; color: #4e601b; font-size: 16px; }
.review-home .section-shell { padding-top: 64px; padding-bottom: 64px; }
.review-home h2 { font-size: clamp(30px, 3.2vw, 44px); letter-spacing: -.02em; }
.review-home .value-strip { padding-top: 28px; padding-bottom: 28px; }
.preview-section, .history-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.preview-section p, .history-summary p, .services-summary p { margin: 22px 0; font-size: 17px; color: var(--muted); }
.caption-preview { padding: 32px; border-radius: 18px; background: #eef1e3; }
.caption-preview small { color: #526030; }
.caption-preview p { color: var(--ink); font-size: 23px; margin: 12px 0 26px; }
.caption-preview figcaption { color: var(--muted); font-size: 13px; }
.provider-demos { border-top: 1px solid var(--rule); padding-top: 20px; margin-top: 24px; }
.provider-demos p { font-size: 14px; margin: 10px 0; }
.provider-demos a { margin: 10px 20px 0 0; }
.review-home .mode-grid { margin-top: 28px; }
.review-home .mode-card { min-height: 0; padding: 32px; }
.review-home .mode-card h3 { font-size: 32px; }
.capability-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 30px; }
.capability-grid article { border: 1px solid var(--rule); border-radius: 18px; padding: 28px; }
.capability-number { display: block; color: var(--accent); font-size: 32px; margin-bottom: 18px; }
.capability-grid h3 { font-size: 21px; font-weight: 600; line-height: 1.4; }
.capability-grid p { color: var(--muted); margin: 16px 0 22px; }
.setup-summary { background: var(--surface); }
.setup-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; padding-left: 20px; margin: 32px 0; }
.setup-cards li { padding-left: 8px; }
.setup-cards p { color: var(--muted); margin-top: 12px; }
.history-summary img { border: 1px solid var(--rule); border-radius: 14px; }
.review-home .services-summary { padding-top: 24px; padding-bottom: 24px; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.services-summary h2 { font-size: 28px; }
.services-summary p { max-width: 85ch; }
.pricing-page .page-heading h1 { font-size: clamp(38px,4vw,56px); }
.pricing-page main { padding-top: 44px; }
.pricing-page .page-heading { margin-bottom: 28px; }
.pricing-page .buyout-card { background: var(--surface); border: 1px solid var(--rule); }
.pricing-page .pricing-card.recommended { border: 2px solid var(--accent); background: #eef1e3; }
.pricing-page .pricing-grid { grid-template-columns: 1fr; }
.license-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.license-grid .venue-plan { margin: 0; }
.model-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin: 28px 0; }
.model-choice { background: white; border: 1px solid #d5dbc4; border-radius: 16px; padding: 26px; min-width: 0; }
.model-price h3 { font-family: var(--sans); font-size: 22px; font-weight: 600; line-height: 1.45; }
.model-price > span { display: block; color: var(--accent); font-size: 30px; font-weight: 600; margin: 16px 0; }
.model-choice .model-promise { margin: 18px 0; font-size: 16px; color: #454c35; }
.model-choice .voice-availability { padding: 14px; border-radius: 9px; background: var(--surface); font-size: 14px; line-height: 1.7; }
.model-choice ul { padding-left: 20px; margin: 18px 0; }
.model-choice li { margin: 10px 0; line-height: 1.6; }
.model-evidence { border-top: 1px solid var(--rule); padding-top: 16px; margin-top: 18px; font-size: 14px; }
.model-evidence summary { cursor: pointer; line-height: 1.6; font-weight: 600; }
.model-evidence p { margin: 14px 0; }
.model-evidence a { text-decoration: underline; text-underline-offset: 3px; }
.model-metric-note { font-size: 14px; color: var(--muted); }
.review-home .model-rates .home-model-benefit { padding-top: 0; border-bottom: 0; font-size: 14px; }
.pricing-page .card-note, .pricing-page #service-price { font-size: 14px; color: var(--muted); }
.estimator-fields { display: flex; gap: 20px; flex-wrap: wrap; margin: 24px 0; }
.estimator-fields label { display: grid; gap: 8px; flex: 1 1 180px; }
.estimator-fields input, .estimator-fields select { width: 100%; padding: 12px; border: 1px solid #b9bea8; border-radius: 8px; font: inherit; background: white; }
.plan-examples { padding: 24px; border-radius: 16px; background: var(--surface); margin: 24px 0; }
.plan-examples li { margin: 14px 0; }
.setup-path { display: flex; flex-wrap: wrap; gap: 12px; list-style: none; padding: 0 !important; }
.setup-path li { flex: 1 1 160px; padding: 16px; border: 1px solid var(--rule); border-radius: 12px; background: var(--surface); }
.setup-path li span { display: block; color: var(--muted); font-size: 14px; margin-top: 6px; }
.compatibility-check { margin: 30px 0; padding: 26px; border: 1px solid var(--rule); border-radius: 16px; }
.compatibility-check .route-grid { margin: 20px 0; }
.compatibility-check h4 { font-size: 18px; margin: 0 0 12px; }
.compatibility-check a { display: inline-block; margin-top: 14px; }
.compatibility-check .compatibility-note { color: var(--muted); font-size: 14px; }
.preview-contact { margin-top: 18px; }
.slint-credit { display: inline-flex; align-items: center; gap: 16px; margin-top: 32px; font-size: 14px; }
@media(max-width:1000px) {
 .review-home .hero { padding: 44px 24px; gap: 32px; }
 .capability-grid { grid-template-columns: 1fr; }
 .setup-cards { gap: 24px; }
}
@media(max-width:700px) {
 .review-home .hero { padding: 32px 22px; text-align: left; }
 .review-home .hero .button-row { justify-content: flex-start; }
 .review-home .hero-benefits { text-align: left; }
 .review-home .hero .eyebrow { margin-left: 0; }
 .review-home .section-shell { padding-top: 40px; padding-bottom: 40px; }
 .preview-section, .history-summary { grid-template-columns: 1fr; gap: 24px; }
 .setup-cards { grid-template-columns: 1fr; }
 .review-home .hero-frame { max-width: 100%; }
 .review-home .mode-card { padding: 26px; }
 .caption-preview { padding: 24px; }
 .model-choice-grid, .license-grid { grid-template-columns: 1fr; }
 .model-choice { padding: 22px; }
}
@media(max-width:380px) {
 .review-home .hero h1 { font-size: 32px; }
 .review-home .hero-description { font-size: 16px; }
 .hero-benefits strong { font-size: 16px; }
 .hero-benefits span { font-size: 13px; }
}

/* API key guide: on-page contents list and code in tables. */
.guide-toc { margin: 24px 0 8px; padding: 20px 24px; border: 1px solid var(--rule); border-radius: 14px; background: var(--surface); }
.guide-toc .eyebrow { margin: 0 0 8px; }
.guide-toc ul { list-style: none; margin: 0; padding: 0; columns: 2; column-gap: 32px; }
.guide-toc li { margin: 6px 0; break-inside: avoid; }
.comparison-scroll code { font-size: 12.5px; white-space: nowrap; }
@media (max-width: 720px) { .guide-toc ul { columns: 1; } }
.language-list { list-style: none; margin: 12px 0 28px; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px 20px; }
.language-list li { padding: 6px 0; border-bottom: 1px solid var(--rule, var(--rule)); }
.language-list .input-only { color: var(--muted); font-size: 0.9em; }
.not-found-links { margin-top: 24px; line-height: 2; }
/* Chinese hero headline: eight wide characters per line fit the text column. */
html[lang^="zh"] .review-home .hero h1 { font-size: clamp(30px, 2.8vw, 40px); letter-spacing: 0; line-height: 1.2; }
/* Section rhythm for pages built from plain sections (languages, FAQ). */
.marketing-article > section { margin-top: 40px; }
.marketing-article > section > h2 { margin: 0 0 12px; }
.marketing-article > section > h3 { margin: 24px 0 8px; font-size: 1.1rem; }
.marketing-article > section > p { margin: 0 0 12px; max-width: 70ch; line-height: 1.6; }
.marketing-article > .availability-note { margin-top: 40px; }

.blog-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 28px; }
.blog-list li { padding: 22px 0; border-top: 1px solid var(--rule); }
.blog-list li:first-child { border-top: 0; padding-top: 0; }
.blog-list strong { font-family: var(--serif); font-size: 26px; line-height: 1.25; font-weight: 600; }
.blog-list a { text-decoration: none; color: inherit; }
.blog-list a:hover strong { color: var(--accent); }
.blog-list p { margin: 8px 0 0; max-width: 720px; }

.blog-cta{margin:1.5rem 0 0;padding:1rem 1.15rem;border:1px solid var(--line, var(--rule));border-radius:10px;background:var(--surface-2, var(--surface));}
.blog-cta a{font-weight:600;}

.footer-badges{margin:1.25rem 0 .5rem;}
.footer-badges img{display:inline-block;height:auto;max-width:130px;vertical-align:middle;}
