/*
Theme Name: Lone Star Law Review
Theme URI: https://lonestarlawreview.com
Author: Lone Star Law Review
Description: A clean, lightweight publication theme for legal reporting, court analysis, data, and commentary.
Version: 1.2.0
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: lone-star-law-review
*/
:root{--bg:#fbfaf7;--paper:#fff;--ink:#161616;--muted:#676767;--line:#d8d3ca;--accent:#1d3f66;--accent-dark:#102b49;--max:1180px;--reading:760px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Georgia,"Times New Roman",serif;line-height:1.65;font-size:18px}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent-dark)}img{max-width:100%;height:auto}.site-shell{max-width:var(--max);margin:0 auto;padding:0 24px}
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.masthead{padding:34px 0 22px;display:flex;gap:24px;align-items:flex-end;justify-content:space-between}.site-title{margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1;font-weight:700;letter-spacing:-.035em}.site-title a{color:var(--ink);text-decoration:none}.tagline{margin:10px 0 0;color:var(--muted);max-width:720px;font-size:1rem}.site-kicker{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--muted);white-space:nowrap}
.primary-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.primary-nav .menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0}.primary-nav li{margin:0}.primary-nav a{display:block;padding:12px 16px 11px 0;margin-right:18px;color:var(--ink);text-decoration:none;font-family:Arial,Helvetica,sans-serif;font-size:.83rem;font-weight:700;letter-spacing:.025em}.primary-nav a:hover{color:var(--accent)}
.home-intro{padding:42px 0 26px;border-bottom:1px solid var(--line)}.home-intro h1{margin:0 0 8px;font-size:clamp(1.9rem,4vw,3.2rem);line-height:1.08;letter-spacing:-.025em}.home-intro p{margin:0;color:var(--muted);max-width:820px}
.content-grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(260px,.9fr);gap:52px;padding:38px 0 56px}.post-list{min-width:0}.post-card{padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid var(--line)}.post-card:last-child{border-bottom:0}.eyebrow{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;font-weight:700;letter-spacing:.09em;font-size:.7rem;color:var(--accent);margin-bottom:8px}.post-card h2{margin:0 0 8px;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.12;letter-spacing:-.02em}.post-card h2 a{color:var(--ink);text-decoration:none}.post-card h2 a:hover{text-decoration:underline}.meta{font-family:Arial,Helvetica,sans-serif;color:var(--muted);font-size:.78rem;margin-bottom:12px}.excerpt{margin:0;color:#2b2b2b}.read-more{font-family:Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:700;text-decoration:none}
.sidebar{border-left:1px solid var(--line);padding-left:28px}.sidebar h2{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;margin:0 0 14px}.sidebar-section{margin-bottom:32px}.category-list{list-style:none;margin:0;padding:0}.category-list li{padding:7px 0;border-bottom:1px solid #e7e2da}.category-list a{text-decoration:none;color:var(--ink)}
.article-wrap{max-width:var(--reading);margin:0 auto;padding:50px 24px 70px}.article-header{margin-bottom:34px}.article-header h1{font-size:clamp(2.1rem,5vw,4.3rem);line-height:1.04;letter-spacing:-.035em;margin:0 0 16px}.article-content p{margin:0 0 1.2em}.article-content h2{margin:1.8em 0 .55em;font-size:1.7rem;line-height:1.2}.article-content h3{margin:1.6em 0 .45em;font-size:1.3rem}.article-content blockquote{margin:1.6em 0;padding:.2em 0 .2em 1.3em;border-left:4px solid var(--accent);color:#383838}.article-content ul,.article-content ol{padding-left:1.4em}.article-content table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.92rem}.article-content th,.article-content td{border:1px solid var(--line);padding:8px 10px;text-align:left}.article-content th{background:#f2efe8}.article-content pre{overflow:auto;padding:16px;background:#f1eee7;border:1px solid var(--line)}.article-content code{font-size:.9em}
.archive-header{padding:42px 0 10px}.archive-header h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.pagination{display:flex;gap:12px;justify-content:space-between;padding:24px 0;font-family:Arial,Helvetica,sans-serif;font-size:.85rem}.notice{padding:20px;border:1px solid var(--line);background:var(--paper)}
.site-footer{border-top:1px solid var(--line);background:var(--paper)}.footer-inner{padding:28px 0 42px;display:flex;gap:30px;justify-content:space-between;align-items:flex-start}.footer-title{font-weight:700}.footer-note{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.78rem;max-width:700px}.smallcaps{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}
.search-form{display:flex;gap:8px}.search-field{width:100%;padding:9px 10px;border:1px solid var(--line);background:#fff;font:inherit;font-size:.9rem}.search-submit{border:1px solid var(--accent);background:var(--accent);color:#fff;padding:9px 13px;font-family:Arial,Helvetica,sans-serif;cursor:pointer}.screen-reader-text{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
@media (max-width:800px){.masthead{align-items:flex-start;flex-direction:column}.site-kicker{white-space:normal}.content-grid{grid-template-columns:1fr;gap:25px}.sidebar{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.footer-inner{flex-direction:column}}


/* v1.1 mobile refinements */
@media (max-width:800px){
  body{font-size:17px}
  .site-shell{padding-left:18px;padding-right:18px}
  .masthead{padding:24px 0 18px;gap:14px}
  .site-title{font-size:clamp(2.45rem,12vw,3.35rem);line-height:.98}
  .tagline{font-size:.95rem;line-height:1.45}
  .site-kicker{font-size:.64rem;letter-spacing:.11em}
  .primary-nav{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .primary-nav .site-shell{padding-right:0}
  .primary-nav .menu{flex-wrap:nowrap;width:max-content}
  .primary-nav a{
    white-space:nowrap;
    margin-right:16px;
    padding:11px 0;
    font-size:.78rem
  }
  .home-intro{padding:30px 0 20px}
  .home-intro h1{font-size:2rem}
  .content-grid{padding-top:28px}
  .post-card h2{font-size:1.7rem}
  .sidebar{font-size:.95rem}
  .article-wrap{padding:36px 18px 55px}
  .article-header h1{font-size:2.45rem}
}
