/* 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 #e4e5dc; border-bottom:1px solid #e4e5dc; }
.value-strip strong { display:block; font-size:17px; margin-bottom:6px; }
.value-strip p { color:#61615b; 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:#f7f7f2; border:1px solid #e4e5dc; }
.buying-card h3 { font-family:var(--serif); font-size:34px; line-height:1.1; margin:16px 0; }
.buying-card p { margin:14px 0; color:#55594b; }
.buying-card .text-link { margin-top:12px; }
.buying-card.accent { background:#e9eddd; }
.public-faq { padding-top:50px; padding-bottom:90px; max-width:980px; }
.public-faq details { border-bottom:1px solid #ddd; padding:20px 0; }
.public-faq summary { font-size:18px; cursor:pointer; font-weight:600; }
.public-faq details p { color:#61615b; 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:#687a20; }
.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 #e0e4d5; background:#f7f7f2; 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 #e4e5dc; }
.article-figure figcaption, .article-meta, .breadcrumbs { font-size:13px !important; color:#6e7166; }
.article-figure figcaption { padding-top:8px; }
.breadcrumbs { margin-bottom:35px; }
.article-next { margin-top:50px; padding:30px; background:#e9eddd; 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 #687a20; padding:20px 24px; margin:25px 0; background:#f7f7f2; }
.availability-note p { margin:10px 0 0; }
.comparison-scroll { overflow-x:auto; margin:25px 0; border:1px solid #ddd; 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:#f7f7f2; }
.comparison-scroll th, .comparison-scroll td { padding:18px; text-align:left; vertical-align:top; border-top:1px solid #ddd; }
.comparison-scroll thead th { background:#e9eddd; }
.comparison-scroll th[scope="row"] { min-width:145px; }
.cost-estimator { max-width:1000px; margin:60px auto; padding:35px; border:1px solid #ddd; border-radius:20px; background:#f7f7f2; }
.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:#61615b; font-size:14px; line-height:1.7; }
.pricing-page .availability-note { max-width:1000px; margin:0 auto 30px; }
.submenu a { display:block; padding:12px 10px; border-radius:6px; }
.submenu a:hover { background:#f7f7f2; }
@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; }
}
