/* LineArch -- page styles (blog) */

body{
  background:var(--bg);
  color:var(--ink);
  font-family:"LA Inter",-apple-system,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
  font-size:16px;
  line-height:1.65;
}
img{max-width:100%;display:block;}

/* ---------- header ---------- */

.logo img{height:36px;width:auto;display:block;flex-shrink:0;}
@media (max-width:420px){.logo img{height:28px;}}
nav ul{list-style:none;display:flex;gap:1.5rem;margin:0;padding:0;flex-wrap:wrap;}

nav a[aria-current="page"]{color:var(--ink);}
nav a[aria-current="page"]::after{transform:scaleX(1);}
.navtoggle{display:none;}
@media (max-width:640px){
  .navtoggle{
    display:block;background:none;border:1px solid var(--line);width:2.6rem;height:2.6rem;position:relative;cursor:pointer;
  }
  
  
  
  
  
  
  
  
  
  
  
  
}

/* ---------- shared section header ---------- */

.shead h2{font-family:"LA Outfit",sans-serif;font-weight:700;font-size:clamp(1.4rem,2.6vw,1.9rem);margin:0;text-wrap:balance;}
.ssub{color:var(--ink-soft);margin:0 0 2rem;max-width:38rem;}

/* ---------- cta ---------- */

.cta-grid{display:grid;gap:2rem;align-items:end;}

.cta .phone{font-family:"LA Outfit",sans-serif;font-weight:700;font-size:1.5rem;text-align:right;}
@media (max-width:760px){.cta-grid{grid-template-columns:1fr;}.cta .phone{text-align:left;}}

/* ---------- blog: listing ---------- */
.blog-hero{padding:1.5rem 0 2.5rem;}
.blog-hero h1{font-family:"LA Outfit",sans-serif;font-weight:700;font-size:clamp(2.2rem,4.4vw,3.2rem);margin:.6rem 0 1rem;text-wrap:balance;}
.blog-hero p{color:var(--ink-soft);max-width:40rem;font-size:1.02rem;margin:0;}
.blog-cats{padding:1rem 0 5rem;}
.blog-cat{padding:2.6rem 0;border-top:1px solid var(--line);}
.blog-cat:first-child{border-top:none;}
.blog-list{display:flex;flex-direction:column;}
.brow{display:grid;grid-template-columns:3.5rem 1fr auto;gap:1.6rem;align-items:baseline;padding:1.3rem 0;border-bottom:1px solid var(--line);}

.brow .n{font-family:"LA Inter",sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.03em;color:var(--ink-soft);}
.brow .btext h3{font-family:"LA Outfit",sans-serif;font-weight:700;font-size:1.08rem;margin:0 0 .35rem;}
.brow .btext p{margin:0;color:var(--ink-soft);font-size:.9rem;max-width:42rem;}
.brow .go{opacity:0;transition:opacity .2s;white-space:nowrap;}
.brow:hover .go{opacity:1;}
@media (max-width:720px){
  .brow{grid-template-columns:1fr;gap:.3rem;padding:1.1rem 0;}
  .brow .n{grid-column:1;}
  .brow .btext{grid-column:1;}
  .brow .go{display:none;}
}

/* ---------- blog: article ---------- */
.article-hero{padding:1rem 0 2.5rem;border-bottom:1px solid var(--line);}

.article-hero h1{font-family:"LA Outfit",sans-serif;font-weight:700;font-size:clamp(1.9rem,4vw,2.7rem);line-height:1.15;margin:.7rem 0 0;text-wrap:balance;max-width:44rem;}
.article-body{max-width:42rem;padding:3rem 0;}
.article-body h2{font-family:"LA Outfit",sans-serif;font-weight:700;font-size:clamp(1.25rem,2.2vw,1.55rem);margin:2.4rem 0 1rem;text-wrap:balance;}
.article-body h2:first-child{margin-top:0;}
.article-body p{margin:0 0 1.2rem;color:var(--ink);}
.article-body ul,.article-body ol{margin:0 0 1.2rem;padding-left:1.3rem;color:var(--ink);}
.article-body li{margin:0 0 .5rem;}
.article-body li:last-child{margin-bottom:0;}
.article-body strong{font-weight:700;}
.article-body a{color:var(--accent);border-bottom:1px solid var(--line);}
.article-body a:hover{border-color:var(--accent);}
.article-foot{max-width:42rem;padding:0 0 3rem;border-top:1px solid var(--line);padding-top:1.6rem;display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;}
.article-nav{padding:3.5rem 0 5rem;border-top:1px solid var(--line);}
.article-nav-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.article-nav-card{border:1px solid var(--line);border-radius:4px;padding:1.3rem 1.5rem;}
.article-nav-card .eyebrow{display:block;margin-bottom:.5rem;}
.article-nav-card .article-nav-title{display:block;font-family:"LA Outfit",sans-serif;font-weight:700;font-size:1rem;margin:0;text-wrap:balance;}
.article-nav-card.next{text-align:right;}
@media (max-width:640px){.article-nav-grid{grid-template-columns:1fr;}.article-nav-card.next{text-align:left;}}
