/* ==========================================================================
   Refined article pages (inc/article-refined.php)
   Sits on top of the DFLV Homepage plugin's article CSS. Ads are untouched.
   ========================================================================== */

/* ---- one sidebar on computers: article column + 300px rail ---- */
@media (min-width: 901px) {
	body.dflv-artx:not(.dflv-art-2rail) .dflv-art.dflv-art--rail { max-width: 1140px; }
	body.dflv-artx:not(.dflv-art-2rail) .dflv-art-railgrid { grid-template-columns: minmax(0, 760px) 300px; justify-content: center; gap: 36px; }
	body.dflv-artx:not(.dflv-art-2rail) .dflv-art-box { max-width: none; }
	body.dflv-artx:not(.dflv-art-2rail) .dflv-art-rail { width: 300px; }
}

/* ---- right rail: our box first, plugin cards hidden, ads kept ---- */
body.dflv-artx-rail .dflv-art-rail:not(.dflv-art-rail--left) > .dflv-art-rail-card { display: none !important; }
.artx-rail-box { display: block; }

.artx-acct { position: relative; overflow: hidden; background: #000; color: #fff; border-radius: 16px; padding: 22px; }
.artx-k { margin: 0; font: 800 10.5px/1 var(--font-body, Inter, sans-serif); letter-spacing: .12em; text-transform: uppercase; color: #FBBF00; }
.artx-t { margin: 8px 0 12px; font: 700 20px/1.25 var(--font-display, Poppins, sans-serif); color: #fff; padding-right: 34px; }
.artx-ticks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; font-size: 13.5px; line-height: 1.35; color: #D6D6D2; }
.artx-ticks li { margin: 0; padding: 0; }
.artx-ticks li::before { content: "✓"; color: #FBBF00; margin-right: 8px; }
.artx-btns { display: flex; flex-direction: column; gap: 10px; margin-top: 18px; }
.artx-btn { height: 46px; border-radius: 12px; background: #fff; color: #141414 !important; display: flex; align-items: center; justify-content: center; padding: 0 20px; font-weight: 700; font-size: 14.5px; text-decoration: none !important; white-space: nowrap; }
.artx-btn:hover { background: #FBBF00; }
.artx-link { color: #D6D6D2 !important; text-align: center; font-weight: 600; font-size: 13px; text-decoration: none !important; }
.artx-link:hover { color: #fff !important; text-decoration: underline !important; }
.artx-paw { position: absolute; right: 16px; top: 14px; width: 40px; height: 40px; fill: #FBBF00; opacity: .35; transform: rotate(18deg); }

.artx-ev { background: #fff; border: 1px solid #E6E4DE; border-radius: 16px; padding: 16px 18px; }
.artx-ev-h { display: flex; justify-content: space-between; align-items: center; padding-bottom: 10px; border-bottom: 1px solid #EEECE6; }
.artx-ev-h p { margin: 0; font: 700 16px/1.2 var(--font-display, Poppins, sans-serif); color: #141414; }
.artx-ev-h a { font-size: 12.5px; font-weight: 600; color: #6E6E6B; text-decoration: none; }
.artx-ev-h a:hover { color: #141414; }
.artx-ev-day { margin: 0; padding-top: 12px; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8A8A87; }
.artx-ev-row { display: flex; gap: 10px; align-items: center; padding: 8px 0; text-decoration: none !important; color: #141414; }
.artx-ev-row + .artx-ev-row { border-top: 1px solid #EEECE6; }
.artx-ev-tm { flex: none; width: 54px; font-size: 12.5px; font-weight: 700; white-space: nowrap; }
.artx-ev-ti { flex: 1; min-width: 0; font-size: 13.5px; font-weight: 600; line-height: 1.3; }
.artx-ev-row:hover .artx-ev-ti { text-decoration: underline; }
.artx-ev-ti i { display: block; font-style: normal; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8A8A87; margin-top: 2px; }
.artx-ev-sv { flex: none; font-size: 9.5px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; background: #FBF0DC; color: #8F5C0F; border-radius: 5px; padding: 2px 6px; }
.artx-ev-more { display: flex; justify-content: center; align-items: center; margin-top: 12px; height: 40px; border: 1.5px solid #DCDAD3; border-radius: 10px; font-weight: 700; font-size: 13px; text-decoration: none !important; color: #141414; }
.artx-ev-more:hover { border-color: #141414; }

/* ---- band between articles ---- */
.artx-band { max-width: 1136px; margin: 36px auto 0; padding: 0 20px; }
.artx-band-in { position: relative; overflow: hidden; background: #000; color: #fff; border-radius: 18px; padding: 28px 32px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px; align-items: center; }
.artx-band-in::before { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 20% 140%, rgba(251, 191, 0, .2), transparent 55%); pointer-events: none; }
.artx-band-in > * { position: relative; }
.artx-band-in > .artx-paw { position: absolute; }
.artx-band .artx-t { font-size: 26px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2; margin: 8px 0 10px; padding: 0; }
.artx-band .artx-ticks { flex-direction: row; flex-wrap: wrap; gap: 8px 18px; font-size: 14px; }
.artx-band .artx-btns { margin: 0; min-width: 240px; }
.artx-band .artx-btn { height: 48px; font-size: 15px; }
.artx-band .artx-paw { display: none; }
.artx-band + .dflv-art-related, .artx-band + .dflv-ad, .artx-band + .dflv-is-news + .dflv-ad { margin-top: 28px !important; }

/* ---- newsletter signups off (end of article, between articles, in the rail) ---- */
body.dflv-artx-nonews .dflv-art-news,
body.dflv-artx-nonews .dflv-is-news,
body.dflv-artx-nonews .dflv-art-rail-card--news { display: none !important; }

/* ---- "Filed under" off; the category label at the top is the link ---- */
body.dflv-artx-nofiled .dflv-art-foot-label,
body.dflv-artx-nofiled .dflv-art-foot-cat-link { display: none !important; }
body.dflv-artx-nofiled .dflv-art-foot-cat:not(:has(.dflv-art-foot-google, .dflv-art-foot-nextdoor)) { display: none !important; }
body.dflv-artx-nofiled .dflv-art-foot:not(:has(.dflv-art-tags, .dflv-art-foot-google, .dflv-art-foot-nextdoor)) { display: none !important; }
body.dflv-artx-nofiled .dflv-art-box:has(> .dflv-art-foot:last-child:not(:has(.dflv-art-tags, .dflv-art-foot-google, .dflv-art-foot-nextdoor))) { padding-bottom: 24px; }
body.dflv-artx-nofiled .dflv-art-hstrip-link::after { content: " ›"; }
body.dflv-artx-nofiled .dflv-art-hstrip-link:hover { text-decoration: underline; }

/* ---- phones ---- */
@media (max-width: 900px) {
	.artx-band { padding: 0; margin-top: 0; }
	.artx-band-in { border-radius: 0; grid-template-columns: 1fr; padding: 26px 16px; gap: 18px; }
	.artx-band .artx-t { font-size: 22px; padding-right: 40px; }
	.artx-band .artx-ticks { flex-direction: column; gap: 7px; }
	.artx-band .artx-btns { display: grid; grid-template-columns: 1.6fr 1fr; min-width: 0; }
	.artx-band .artx-btns > :only-child { grid-column: 1 / -1; }
	.artx-band .artx-link { height: 48px; display: flex; align-items: center; justify-content: center; border: 1.5px solid #3A3A3A; color: #fff !important; border-radius: 12px; }
	.artx-band .artx-pre { display: none; }
	.artx-band .artx-paw { display: block; }
	.artx-band + .dflv-ad { margin-top: 24px !important; }
}
@media (max-width: 767px) {
	/* everything edge to edge: no box around the post, no gap under the header */
	body.dflv-artx-edge .dflv-art--hero-boxed,
	body.dflv-artx-edge .dflv-art--hero-strip { padding-top: 0 !important; }
	body.dflv-artx-edge .dflv-art-box { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: 0 !important; }
	body.dflv-artx-edge .dflv-art-box > .dflv-art-foot { border-radius: 0 !important; }
	body.dflv-artx-edge .dflv-art-hstrip { width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: 0 !important; border-left: 0 !important; border-right: 0 !important; }
	body.dflv-artx-edge .dflv-art-box .dflv-art-hstrip { width: auto !important; max-width: none !important; margin: 0 !important; }
	body.dflv-artx-edge .dflv-art-hstrip,
	body.dflv-artx-edge .dflv-art-hstrip-bar,
	body.dflv-artx-edge .dflv-art-hstrip-photo { border-radius: 0 !important; }
	body.dflv-artx-edge .dflv-is-post { padding-top: 24px; }
	body.dflv-artx .artx-band { width: 100vw; margin-left: calc(50% - 50vw); }
}
