/* =============================================================================
   TAXLOC SEO ARTICLE BLOCKS — append to taxlocation-clean.css
   ============================================================================= */

.taxloc-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:4px 5px; padding:12px 0 8px; font-size:0.72rem; font-weight:500; width:100%; box-sizing:border-box; clear:none; float:none; }
.taxloc-bc-sep { color:rgba(255,255,255,0.18); }
.taxloc-bc-link { color:rgba(245,166,35,0.65); text-decoration:none; transition:color 0.15s; }
.taxloc-bc-link:hover { color:var(--color-gold); text-decoration:none; }
.taxloc-bc-current { color:rgba(255,255,255,0.38); }

.taxloc-article { clear:both; display:block; width:100%; margin-top:48px; border-top:1px solid rgba(255,255,255,0.07); padding-top:8px; }
.taxloc-article--compact { margin-top:36px; }

.taxloc-art-section { padding:32px 0 0; }
.taxloc-art-section + .taxloc-art-section { border-top:1px solid rgba(255,255,255,0.05); }

.taxloc-art-faq { background:rgba(255,255,255,0.018); border:1px solid rgba(255,255,255,0.06); border-radius:14px; padding:24px 24px 8px; margin-top:32px; }

.taxloc-art-h2 { font-size:clamp(1.1rem,2.2vw,1.4rem) !important; font-weight:900 !important; color:#fff !important; margin:0 0 16px !important; padding:0 !important; border:none !important; line-height:1.25 !important; letter-spacing:-0.01em; }

.taxloc-art-body { font-size:0.91rem; line-height:1.9; color:rgba(255,255,255,0.5); max-width:100%; word-wrap:break-word; }
.taxloc-art-body p { margin:0 0 1.1em !important; padding:0 !important; }
.taxloc-art-body p:last-child { margin-bottom:0 !important; }
.taxloc-art-body strong,.taxlocation .bodybox .taxloc-art-body strong { color:rgba(255,255,255,0.72) !important; font-weight:700 !important; }
.taxloc-art-body em { font-style:italic !important; color:rgba(255,255,255,0.6) !important; }
.taxloc-art-body a,.taxlocation .bodybox .taxloc-art-body a { color:var(--color-gold) !important; text-decoration:none !important; border-bottom:1px solid rgba(245,166,35,0.22) !important; }
.taxloc-art-body a:hover,.taxlocation .bodybox .taxloc-art-body a:hover { color:#d4a52a !important; border-color:rgba(245,166,35,0.55) !important; text-decoration:none !important; }
.taxloc-art-body blockquote { margin:1em 0 !important; padding:10px 16px !important; border-left:3px solid rgba(245,166,35,0.5) !important; background:rgba(245,166,35,0.05) !important; border-radius:0 8px 8px 0 !important; color:rgba(255,255,255,0.45) !important; font-style:italic !important; }

.taxloc-art-list { margin:10px 0 14px 0 !important; padding:0 !important; list-style:none !important; }
.taxloc-art-list li { position:relative; padding:9px 14px 9px 34px; margin-bottom:4px; background:rgba(255,255,255,0.025); border-radius:8px; font-size:0.88rem; line-height:1.65; color:rgba(255,255,255,0.48); list-style:none !important; }
.taxloc-art-list li::before { content:''; position:absolute; left:14px; top:50%; transform:translateY(-50%); width:5px; height:5px; background:var(--color-gold); border-radius:50%; opacity:0.6; }
.taxloc-art-list li strong { color:rgba(255,255,255,0.72); }

.taxloc-faq-list { padding:0; }
.taxloc-faq-item { padding:16px 0 14px; border-bottom:1px solid rgba(255,255,255,0.05); }
.taxloc-faq-item:last-child { border-bottom:none; padding-bottom:4px; }
.taxloc-faq-q { font-size:0.9rem !important; font-weight:700 !important; color:rgba(255,255,255,0.82) !important; margin:0 0 8px !important; padding:0 !important; border:none !important; line-height:1.4 !important; }
.taxloc-faq-a { font-size:0.86rem; line-height:1.8; color:rgba(255,255,255,0.44); }
.taxloc-faq-a a { color:var(--color-gold); text-decoration:none; border-bottom:1px solid rgba(245,166,35,0.22); }
.taxloc-faq-a a:hover { border-color:rgba(245,166,35,0.55); }

.taxloc-art-parent-cta { margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,0.05); }
.taxloc-art-parent-link { display:inline-flex; align-items:center; gap:6px; padding:8px 18px; background:rgba(245,166,35,0.07); border:1px solid rgba(245,166,35,0.2); border-radius:50px; font-size:0.78rem; font-weight:700; color:var(--color-gold); text-decoration:none; transition:background 0.15s,border-color 0.15s; }
.taxloc-art-parent-link:hover { background:rgba(245,166,35,0.13); border-color:rgba(245,166,35,0.4); text-decoration:none; }

.taxloc-art-admin-bar { margin-top:24px; padding:10px 16px; background:rgba(245,166,35,0.06); border:1px dashed rgba(245,166,35,0.25); border-radius:8px; font-size:0.72rem; color:rgba(245,166,35,0.6); }
.taxloc-art-admin-bar a { color:var(--color-gold); text-decoration:underline; }
.taxloc-art-admin-bar code { background:rgba(255,255,255,0.06); padding:1px 5px; border-radius:4px; font-size:0.7rem; color:rgba(255,255,255,0.55); }

@media (max-width:680px) { .taxloc-art-faq { padding:18px 16px 6px; } .taxloc-art-section { padding-top:24px; } .taxloc-art-list li { padding-left:28px; } }
@media (max-width:480px) { .taxloc-art-h2 { font-size:1.1rem !important; } .taxloc-art-body { font-size:0.87rem; } }

/* ── Section images (uploaded via LSM admin) ── */
.taxloc-art-img {
	width: 100%;
	margin: 0 0 18px;
	border-radius: 10px;
	overflow: hidden;
	line-height: 0;
}
.taxloc-art-img img {
	width: 100%;
	height: auto;
	max-height: 340px;
	object-fit: cover;
	display: block;
}

/* ── Headings inside admin-saved body content ── */
/* ── Admin-saved body content: full specificity override ─────────────────
   Uses html body prefix to beat any theme rule that lacks !important.
   All rules also repeated with just .taxloc-art-body for non-theme contexts. */

html body .taxlocation .bodybox .taxloc-art-body h2,
html body .taxlocation .bodybox .taxloc-art-body h3,
html body .taxlocation .bodybox .taxloc-art-body h4,
html body .taxlocation .bodybox .taxloc-art-body h5,
html body .taxlocation .bodybox .taxloc-art-body h6,
.taxloc-art-body h2,
.taxloc-art-body h3,
.taxloc-art-body h4,
.taxloc-art-body h5,
.taxloc-art-body h6 {
	display: block !important;
	visibility: visible !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	margin: 1.5em 0 0.5em !important;
	padding: 0 !important;
	border: none !important;
	border-bottom: none !important;
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
	background: none !important;
	background-color: transparent !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
	text-shadow: none !important;
}
html body .taxlocation .bodybox .taxloc-art-body h2, .taxloc-art-body h2 {
	font-size: clamp(1.05rem, 2vw, 1.3rem) !important;
	color: #ffffff !important;
}
html body .taxlocation .bodybox .taxloc-art-body h3, .taxloc-art-body h3 {
	font-size: 1.05rem !important;
	color: rgba(255,255,255,0.9) !important;
}
html body .taxlocation .bodybox .taxloc-art-body h4,
html body .taxlocation .bodybox .taxloc-art-body h5,
html body .taxlocation .bodybox .taxloc-art-body h6,
.taxloc-art-body h4, .taxloc-art-body h5, .taxloc-art-body h6 {
	font-size: 0.95rem !important;
	color: rgba(255,255,255,0.75) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
}
.taxloc-art-body ul,
.taxloc-art-body ol {
	margin: 0.8em 0 1em 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.taxloc-art-body ul li,
.taxloc-art-body ol li {
	position: relative;
	padding: 8px 12px 8px 32px;
	margin-bottom: 4px;
	background: rgba(255,255,255,0.025);
	border-radius: 7px;
	font-size: 0.88rem;
	line-height: 1.65;
	color: rgba(255,255,255,0.5);
	list-style: none !important;
}
.taxloc-art-body ul li::before {
	content: '';
	position: absolute;
	left: 13px;
	top: 50%;
	transform: translateY(-50%);
	width: 5px;
	height: 5px;
	background: var(--color-gold, #f0a500);
	border-radius: 50%;
	opacity: 0.7;
}
.taxloc-art-body ol { counter-reset: lsm-ol; }
.taxloc-art-body ol li::before {
	content: counter(lsm-ol);
	counter-increment: lsm-ol;
	position: absolute;
	left: 10px;
	top: 8px;
	font-size: 0.7rem;
	font-weight: 700;
	color: var(--color-gold, #f0a500);
	opacity: 0.8;
}
.taxloc-art-body blockquote {
	margin: 1em 0;
	padding: 12px 18px;
	border-left: 3px solid rgba(245,166,35,0.5);
	background: rgba(245,166,35,0.05);
	border-radius: 0 8px 8px 0;
	font-style: italic;
	color: rgba(255,255,255,0.5);
}
