/* Pop's Barn SEO Pages — matches site palette (parchment / ink / amber, Bebas Neue + DM Sans) */
.pbseo {
	--pb-parch: #F0E8D8;
	--pb-parch-2: #e6dac4;
	--pb-ink: #1a1208;
	--pb-ink-2: #4a3b28;
	--pb-amber: #9A6B3A;
	--pb-amber-dk: #7d5528;
	--pb-line: rgba(26, 18, 8, .15);
	max-width: 820px;
	margin: 0 auto;
	padding: 24px 16px 48px;
	color: var(--pb-ink);
	font-family: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
	font-size: 18px;
	line-height: 1.65;
	box-sizing: border-box;
}
.pbseo *, .pbseo *::before, .pbseo *::after { box-sizing: border-box; }

.pbseo h2 {
	font-family: 'Bebas Neue', Impact, 'Arial Narrow', sans-serif;
	font-weight: 400;
	font-size: 2.1rem;
	letter-spacing: .02em;
	line-height: 1.1;
	margin: 2.4rem 0 .8rem;
	color: var(--pb-ink);
}
.pbseo p, .pbseo ul, .pbseo ol { margin: 0 0 1.1rem; }
.pbseo ul, .pbseo ol { padding-left: 1.3em; }
.pbseo li { margin-bottom: .45rem; }
.pbseo a { color: var(--pb-amber-dk); text-decoration: underline; text-underline-offset: 3px; }
.pbseo a:hover { color: var(--pb-ink); }
.pbseo strong { color: var(--pb-ink); }

.pbseo-byline {
	font-size: .85rem;
	color: var(--pb-ink-2);
	text-transform: uppercase;
	letter-spacing: .08em;
	border-bottom: 1px solid var(--pb-line);
	padding-bottom: .8rem;
	margin-bottom: 1.4rem;
}
.pbseo-lede {
	font-size: 1.2rem;
	line-height: 1.55;
	border-left: 4px solid var(--pb-amber);
	padding: .2rem 0 .2rem 1rem;
}

.pbseo .pbseo-btn {
	display: inline-block;
	background: var(--pb-ink);
	color: var(--pb-parch);
	text-decoration: none;
	font-family: 'Bebas Neue', Impact, sans-serif;
	font-size: 1.25rem;
	letter-spacing: .05em;
	padding: .55rem 1.2rem .45rem;
	margin: 0 .5rem .6rem 0;
	border: 2px solid var(--pb-ink);
	border-radius: 2px;
}
.pbseo .pbseo-btn:hover { background: var(--pb-amber); border-color: var(--pb-amber); color: #fff; }
.pbseo .pbseo-btn-ghost { background: transparent; color: var(--pb-ink); }
.pbseo .pbseo-btn-ghost:hover { background: var(--pb-ink); border-color: var(--pb-ink); color: var(--pb-parch); }

/* Tables */
.pbseo-table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 1.4rem;
	font-size: .95rem;
	background: rgba(255, 255, 255, .35);
}
.pbseo-table th, .pbseo-table td {
	text-align: left;
	padding: .6rem .75rem;
	border-bottom: 1px solid var(--pb-line);
	vertical-align: top;
}
.pbseo-table th {
	background: var(--pb-ink);
	color: var(--pb-parch);
	font-weight: 600;
	font-size: .8rem;
	text-transform: uppercase;
	letter-spacing: .06em;
}
.pbseo-table tbody tr:nth-child(even) { background: rgba(154, 107, 58, .07); }

/* Worked example */
.pbseo-example {
	border: 1px solid var(--pb-line);
	border-left: 4px solid var(--pb-amber);
	background: rgba(255, 255, 255, .45);
	padding: 1rem 1.2rem .6rem;
	margin: 0 0 1.2rem;
}
.pbseo-example-title { font-weight: 700; margin-bottom: .5rem !important; }
.pbseo-example ol { margin-bottom: .4rem; font-size: .95rem; }
.pbseo-example-total {
	font-family: 'Bebas Neue', Impact, sans-serif;
	font-size: 2rem;
	color: var(--pb-amber-dk);
	margin: 0 0 .4rem !important;
}

/* FAQ */
.pbseo-faq {
	border-top: 1px solid var(--pb-line);
	padding: .2rem 0;
}
.pbseo-faq:last-of-type { border-bottom: 1px solid var(--pb-line); }
.pbseo-faq summary {
	cursor: pointer;
	font-weight: 700;
	padding: .8rem 2rem .8rem 0;
	position: relative;
	list-style: none;
}
.pbseo-faq summary::-webkit-details-marker { display: none; }
.pbseo-faq summary::after {
	content: '+';
	position: absolute;
	right: .2rem;
	top: .55rem;
	font-size: 1.5rem;
	color: var(--pb-amber);
}
.pbseo-faq[open] summary::after { content: '–'; }
.pbseo-faq p { padding-bottom: .4rem; }

/* Calculator */
.pbseo-calc {
	background: var(--pb-ink);
	color: var(--pb-parch);
	padding: 1.2rem;
	margin: 0 0 1.6rem;
	border-radius: 3px;
}
.pbseo-calc-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: .8rem;
}
.pbseo-calc label {
	display: flex;
	flex-direction: column;
	font-size: .78rem;
	text-transform: uppercase;
	letter-spacing: .07em;
	gap: .3rem;
}
.pbseo-calc input, .pbseo-calc select {
	font: inherit;
	font-size: 1.05rem;
	text-transform: none;
	letter-spacing: 0;
	padding: .55rem .6rem;
	border: 1px solid rgba(240, 232, 216, .35);
	background: var(--pb-parch);
	color: var(--pb-ink);
	border-radius: 2px;
	width: 100%;
	min-height: 44px;
}
.pbseo-calc-out {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: .8rem;
	margin-top: 1.1rem;
	border-top: 1px solid rgba(240, 232, 216, .25);
	padding-top: 1rem;
}
.pbseo-calc-out span {
	display: block;
	font-size: .75rem;
	text-transform: uppercase;
	letter-spacing: .08em;
	opacity: .75;
}
.pbseo-calc-out strong {
	color: var(--pb-parch);
	font-family: 'Bebas Neue', Impact, sans-serif;
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.1;
}
.pbseo-calc-total strong { color: #d9a66a; font-size: 2.6rem; }
.pbseo-calc-note { font-size: .82rem; opacity: .75; margin: .8rem 0 0 !important; }

/* Guide cards */
.pbseo-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1rem;
	margin: 1.4rem 0 1.8rem;
}
.pbseo .pbseo-card {
	display: flex;
	flex-direction: column;
	gap: .4rem;
	padding: 1.1rem 1.2rem;
	border: 1px solid var(--pb-line);
	border-top: 4px solid var(--pb-amber);
	background: rgba(255, 255, 255, .45);
	text-decoration: none;
	color: var(--pb-ink);
}
.pbseo .pbseo-card:hover { border-top-color: var(--pb-ink); background: rgba(255, 255, 255, .7); }
.pbseo-card-title {
	font-family: 'Bebas Neue', Impact, sans-serif;
	font-size: 1.5rem;
	line-height: 1.1;
}
.pbseo-card-desc { font-size: .92rem; color: var(--pb-ink-2); }

/* About the author */
.pbseo-about {
	margin-top: 3rem;
	padding: 1.2rem 1.3rem .4rem;
	background: var(--pb-parch-2);
	border-left: 4px solid var(--pb-ink);
	font-size: .95rem;
}
.pbseo-about h2 { margin-top: 0; font-size: 1.6rem; }

@media (max-width: 600px) {
	.pbseo { font-size: 17px; padding-top: 16px; }
	.pbseo h2 { font-size: 1.8rem; }
	.pbseo-lede { font-size: 1.08rem; }
	.pbseo-table { display: block; overflow-x: auto; }
	.pbseo-table th, .pbseo-table td { padding: .5rem .55rem; }
	.pbseo .pbseo-btn { display: block; text-align: center; margin-right: 0; }
}

/* Reviews */
.pbseo-reviews{margin:2.5em 0 1.5em}
.pbseo-review-grid{display:grid;align-items:start;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.pbseo-review{margin:0;background:#fff;border:1px solid rgba(26,18,8,.12);border-left:4px solid #9A6B3A;border-radius:4px;padding:16px 18px;display:flex;flex-direction:column}
.pbseo-stars{color:#9A6B3A;letter-spacing:2px;font-size:15px;margin-bottom:6px}
.pbseo-review blockquote{margin:0 0 10px;padding:0;border:0;font-style:normal;font-size:15px;line-height:1.55;color:#1a1208;flex:1}
.pbseo-review figcaption{font-size:13px;color:#6b5a44}
.pbseo-review-links{margin-top:12px;font-size:14px}
.pbseo-review-links a{color:#9A6B3A}
