*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.7;color:#111;background:#fff}
.sc-WhNiLj{max-width:900px;margin:0 auto;padding:0 28px}
.sc-tLLJyf{background:#111;color:#fff;padding:64px 0;margin-bottom:48px}
.sc-tLLJyf h1{font-size:42px;font-weight:800;letter-spacing:-1px;margin-bottom:8px}
.sc-tLLJyf p{font-size:18px;opacity:.7}
.sc-tLLJyf a{color:#fff;text-decoration:none;font-size:22px;font-weight:800}
.sc-gWnYNy{padding:0}
.sc-QTXntc{padding:32px 0;border-left:4px solid #111;padding-left:24px;margin-bottom:28px}
.sc-QTXntc h2{font-size:24px;font-weight:700;margin-bottom:6px}
.sc-QTXntc h2 a{color:#111;text-decoration:none}
.sc-QTXntc h2 a:hover{text-decoration:underline}
.sc-QTXntc .sc-TLFusg{font-size:12px;font-weight:600;text-transform:uppercase;color:#888;letter-spacing:1px;margin-bottom:8px}
.sc-QTXntc p{font-size:15px;color:#444;margin-bottom:10px}
.sc-YaHivU{display:inline-block;background:#111;color:#fff;padding:8px 20px;font-size:13px;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:1px}
.sc-YaHivU:hover{background:#333}
.sc-Vjuheb{padding-bottom:60px}
.sc-Vjuheb h1{font-size:38px;font-weight:800;letter-spacing:-1px;margin-bottom:10px}
.sc-Vjuheb time{font-size:12px;font-weight:600;text-transform:uppercase;color:#888;letter-spacing:1px;display:block;margin-bottom:28px}
.sc-Vjuheb h2{font-size:26px;font-weight:700;margin:40px 0 14px}
.sc-Vjuheb h3{font-size:20px;font-weight:700;margin:32px 0 10px}
.sc-Vjuheb p{margin-bottom:18px;font-size:17px}
.sc-Vjuheb ul,.sc-Vjuheb ol{margin:0 0 18px 24px}
.sc-Vjuheb a{color:#111;font-weight:600;text-decoration:underline}
.sc-Vjuheb img{max-width:100%;height:auto;margin:20px 0}
.sc-NYkjUy{background:#111;color:#888;padding:28px 0;margin-top:48px;text-align:center;font-size:12px}
.sc-NYkjUy a{color:#888;text-decoration:none}
.sc-kOOxBw{background:#222;color:#aaa;padding:14px 20px;margin-bottom:24px;font-size:13px;font-style:italic}
.sc-SlXETP{background:#1a1a1a;color:#888;padding:14px 20px;margin-top:32px;font-size:12px;border-top:3px solid #444}
.sc-KRtCzi{font-size:12px;font-weight:600;text-transform:uppercase;color:#666;letter-spacing:1px;margin:-20px 0 28px;padding-left:12px;border-left:2px solid #ccc}
.sc-HpSvHW{margin:0 0 24px}
.sc-BfOTnK{width:100%;height:auto;border-radius:0}
.sc-jFWHFh{margin:20px 0}
.sc-DJPfvg{width:100%;height:auto;border-radius:0}
.sc-GGHaJO{border-left:4px solid #111;padding-left:24px;margin-top:48px}
.sc-GGHaJO h3{font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}
.sc-GGHaJO ul{list-style:none;padding:0}
.sc-GGHaJO li{padding:6px 0}
.sc-GGHaJO a{color:#111;text-decoration:underline;font-weight:600}
/* === Theme === */
:root{--primary:#4C3D3D;--accent:#C9A878;--bg:#ECE4D0;--fg:#1F1A1A;--border:#C5BBA8;--r:30px;--fb:'Nunito Sans';--fh:'Geist'}
/* === Custom === */
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;700&family=Nunito+Sans:ital,wght@0,400;0,600;0,700;1,400&display=swap');

:root body { font-family: var(--fb), system-ui, -apple-system, sans-serif; color: var(--fg); background: var(--bg); line-height: 1.74; font-size: 17px; }
::selection { background: var(--primary); color: var(--bg); }
:root hr { border: 0; border-top: 1px solid var(--border); margin: 32px 0; }

:root > body > div:first-child { background: var(--primary); color: var(--bg); padding: 60px 0 40px; margin-bottom: 48px; border-bottom: 5px solid var(--accent); }
:root > body > div:first-child h1 { font-family: var(--fh), system-ui, sans-serif; font-size: 40px; font-weight: 700; color: var(--bg); letter-spacing: -.015em; line-height: 1.12; margin-bottom: 10px; }
:root > body > div:first-child p { font-family: var(--fb), system-ui, sans-serif; font-size: 16px; color: rgba(236, 228, 208, .82); font-style: italic; }
:root > body > div:first-child a { font-family: var(--fh), system-ui, sans-serif; font-size: 24px; color: var(--bg); text-decoration: none; font-weight: 700; letter-spacing: -.01em; }

:root main { padding-bottom: 80px; }
:root main > hgroup > h1, :root main > h1 { font-family: var(--fh), system-ui, sans-serif; font-size: 38px; font-weight: 700; color: var(--primary); line-height: 1.16; margin: 8px 0 10px; letter-spacing: -.015em; }
:root main > hgroup > time, :root main > time { display: block; font-family: var(--fb), system-ui, sans-serif; font-size: 12px; color: var(--accent); margin-bottom: 32px; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; }

:root main > article > p { margin-bottom: 18px; font-size: 17px; line-height: 1.8; }
:root main > article > h2 { font-family: var(--fh), system-ui, sans-serif; font-size: 24px; font-weight: 700; color: var(--primary); margin: 2.5em 0 0.6em; padding-top: 12px; border-top: 2px solid rgba(201, 168, 120, 0.40); letter-spacing: -.005em; }
:root main > article > h3 { font-family: var(--fh), system-ui, sans-serif; font-size: 19px; font-weight: 700; color: var(--accent); margin: 1.8em 0 0.4em; }
:root main > article ul, :root main > article ol { margin: 0 0 18px 26px; }
:root main > article li { margin-bottom: 6px; }
:root main > article blockquote { border-left: 4px solid var(--accent); padding: 10px 0 10px 20px; margin: 28px 0; font-style: italic; color: var(--primary); background: rgba(201, 168, 120, .07); border-radius: 0 var(--r) var(--r) 0; }

:root main > article > p a, :root main > article > p a:visited { color: var(--primary); text-decoration: underline; text-decoration-color: var(--accent); text-underline-offset: 3px; text-decoration-thickness: 1.5px; font-weight: 600; }
:root main > article > p a:hover { color: var(--accent); text-decoration-color: var(--primary); }

:root main > article > p a[href^="/check/"], :root main > article > p a[href^="/ref/"], :root main > article > p a[href^="/try/"] { background: var(--accent); color: var(--bg); padding: 2px 10px; border-radius: var(--r); text-decoration: none; font-weight: 700; font-family: var(--fh), system-ui, sans-serif; font-size: 14.5px; letter-spacing: .02em; }
:root main > article > p a[href^="/check/"]:hover, :root main > article > p a[href^="/ref/"]:hover, :root main > article > p a[href^="/try/"]:hover { background: var(--primary); }

:root main > article > section:has(> img) { margin: 0 0 32px; }
:root main > article > section > img { width: 100%; height: auto; display: block; border-radius: var(--r); box-shadow: 0 4px 18px rgba(31, 26, 26, .14); }

:root main > article > aside { background: rgba(76, 61, 61, .07); border-left: 4px solid var(--primary); border-radius: 0 var(--r) var(--r) 0; padding: 14px 20px; margin: 36px 0 0; font-size: 14px; color: var(--fg); font-family: var(--fb), system-ui, sans-serif; font-style: italic; }

:root main > div:has(> h2) { background: var(--bg); border: 1px solid var(--border); border-left: 5px solid var(--primary); border-radius: 0 var(--r) var(--r) 0; padding: 22px 24px; margin-bottom: 22px; box-shadow: 0 1px 6px rgba(31, 26, 26, .05); transition: transform .15s ease, box-shadow .15s ease; }
:root main > div:has(> h2):hover { transform: translateX(2px); box-shadow: 0 4px 14px rgba(76, 61, 61, .10); }
:root main > div:has(> h2) > p:first-child { font-family: var(--fb), system-ui, sans-serif; font-size: 11px; color: var(--accent); letter-spacing: .14em; text-transform: uppercase; margin-bottom: 8px; font-weight: 700; }
:root main > div:has(> h2) > h2 { font-family: var(--fh), system-ui, sans-serif; font-size: 22px; font-weight: 700; margin-bottom: 8px; line-height: 1.22; letter-spacing: -.005em; }
:root main > div:has(> h2) > h2 a { color: var(--primary); text-decoration: none; }
:root main > div:has(> h2) > h2 a:hover { color: var(--accent); }
:root main > div:has(> h2) > p:not(:first-child) { font-family: var(--fb), system-ui, sans-serif; font-size: 15.5px; color: var(--fg); opacity: .90; line-height: 1.62; margin-bottom: 14px; }
:root main > div:has(> h2) > a:last-child { font-family: var(--fh), system-ui, sans-serif; font-size: 12.5px; color: var(--bg); background: var(--primary); padding: 7px 18px; border-radius: var(--r); text-decoration: none; letter-spacing: .06em; font-weight: 700; display: inline-block; }
:root main > div:has(> h2) > a:last-child:hover { background: var(--accent); }

:root main > div:has(> ul) { margin-top: 48px; padding-top: 28px; border-top: 2px solid var(--primary); }
:root main > div:has(> ul) > h3 { font-family: var(--fh), system-ui, sans-serif; font-size: 14px; color: var(--primary); margin-bottom: 16px; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; }
:root main > div:has(> ul) > ul { list-style: none; margin: 0; padding: 0; }
:root main > div:has(> ul) > ul > li { padding: 10px 0; border-bottom: 1px dotted var(--border); }
:root main > div:has(> ul) > ul > li:last-child { border-bottom: 0; }
:root main > div:has(> ul) > ul > li > a { color: var(--fg); text-decoration: none; font-family: var(--fb), system-ui, sans-serif; font-size: 15.5px; line-height: 1.4; }
:root main > div:has(> ul) > ul > li > a:hover { color: var(--primary); }

:root footer { background: transparent; border-top: 1px solid var(--border); padding: 26px 0 36px; margin-top: 48px; text-align: center; font-family: var(--fb), system-ui, sans-serif; font-size: 13.5px; color: var(--fg); opacity: 0.80; letter-spacing: .03em; }
:root footer a { color: var(--fg); text-decoration: none; border-bottom: 1px dotted var(--border); }
:root footer a:hover { color: var(--primary); border-bottom-color: var(--primary); }

/* === R2 fixes (2026-06-01T06:00:03.752072+00:00) === */

/* Site header bar — more presence, readable title, visual anchor */
.sc-tLLJyf { padding-top: 20px; padding-bottom: 20px; border-bottom: 1px solid rgba(0,0,0,0.08); background: rgba(76, 61, 61, 0.05); }
.sc-tLLJyf a, .sc-tLLJyf span { font-size: 1.4rem; }

/* Homepage article card — breathing room and clearer card shape */
.sc-QTXntc { padding: 24px; margin-bottom: 8px; border-radius: 6px; }

/* Article card date — muted secondary label instead of database timestamp */
.sc-TLFusg { font-size: 0.75rem; color: #888; letter-spacing: 0.03em; text-transform: uppercase; }

/* Related articles block — visible top border to signal end-of-article */
.sc-GGHaJO { border-top: 2px solid rgba(0,0,0,0.08); margin-top: 3em; padding-top: 1.5em; }

/* === R3 fixes (2026-06-01T06:40:03.521502+00:00) === */
/* footer opacity+size+tracking updated in-place (line 52) */
/* .sc-tLLJyf warm tint added in-place (R2 rule above) */
/* article h2 border opacity softened in-place (line 17) */
/* homepage card blurb size/opacity/line-height/margin updated in-place (line 40) */

/* === R4 fixes (2026-06-01T07:20:03.887876+00:00) === */

/* Article opening paragraph — gentle lead-in on text-only openers */
:root main > article > p:first-of-type { font-size: 18.5px; color: var(--primary); line-height: 1.82; opacity: 0.92; }

/* Refreshed date line — match golden uppercase language of publish date */
.sc-KRtCzi { font-family: var(--fb), system-ui, sans-serif; font-size: 11px; color: var(--accent); letter-spacing: .10em; text-transform: uppercase; opacity: 0.75; margin-bottom: 20px; display: block; }
