/* Calculator page SEO articles + light UX polish (no logic changes) */

.calc-grid-ready > .panel{
  display:flex;
  flex-direction:column;
}
.panel-heading{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--trust);
  margin:-4px 0 14px;
  padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
.panel-heading-results{color:var(--safe);}
.panel-heading-icon{font-size:15px;line-height:1;}

.calc-grid-ready .panel > label:first-of-type{margin-top:0;}
.calc-grid-ready .panel input[type="number"],
.calc-grid-ready .panel input[type="date"],
.calc-grid-ready .panel input[type="datetime-local"],
.calc-grid-ready .panel select{margin-bottom:14px;}
.calc-grid-ready .violations{margin-top:4px;}

/* ---------- SEO article block below calculator ---------- */
.calc-seo-article{
  margin-top:clamp(36px,6vw,56px);
  padding-top:clamp(32px,5vw,48px);
  border-top:2px solid var(--line);
}
.calc-seo-hero{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(20px,4vw,36px);
  align-items:center;
  margin-bottom:clamp(28px,5vw,40px);
}
@media(max-width:720px){
  .calc-seo-hero{grid-template-columns:1fr;}
  .calc-seo-hero-img{order:-1;max-height:220px;}
}
.calc-seo-hero-img{
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:16 / 9;
  min-height:0;
  max-height:280px;
  object-fit:cover;
  object-position:center;
  border-radius:16px;
  border:1px solid var(--line);
  box-shadow:0 8px 28px rgba(22,35,58,.1);
}
.calc-seo-kicker{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:10px;
  display:block;
}
.calc-seo-hero h2{
  font-family:'Fraunces',serif;
  font-size:clamp(22px,3.2vw,30px);
  font-weight:600;
  color:var(--ink);
  margin:0 0 12px;
  line-height:1.2;
}
.calc-seo-intro{
  font-size:15px;
  line-height:1.65;
  color:var(--ink-muted);
  margin:0;
}
.calc-seo-sections{
  display:flex;
  flex-direction:column;
  gap:28px;
  max-width:820px;
}
.calc-seo-section h3{
  font-family:'Fraunces',serif;
  font-size:20px;
  font-weight:600;
  color:var(--ink);
  margin:0 0 10px;
  scroll-margin-top:88px;
}
.calc-seo-section p{
  font-size:14.5px;
  line-height:1.7;
  color:var(--ink-soft);
  margin:0 0 12px;
}
.calc-seo-section p:last-child{margin-bottom:0;}
.calc-seo-section ul{
  margin:8px 0 0;
  padding-left:20px;
  color:var(--ink-soft);
  font-size:14.5px;
  line-height:1.65;
}
.calc-seo-section li{margin-bottom:6px;}

.calc-seo-faq{
  margin-top:36px;
  padding:clamp(20px,4vw,28px);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:16px;
}
.calc-seo-faq h3{
  font-family:'Fraunces',serif;
  font-size:20px;
  margin:0 0 16px;
  color:var(--ink);
}
.calc-seo-faq details{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:10px;
  margin-bottom:8px;
  overflow:hidden;
}
.calc-seo-faq details[open]{border-color:var(--trust);}
.calc-seo-faq summary{
  cursor:pointer;
  font-weight:600;
  font-size:14.5px;
  color:var(--ink);
  padding:14px 16px;
  list-style:none;
}
.calc-seo-faq summary::-webkit-details-marker{display:none;}
.calc-seo-faq details p{
  margin:0;
  padding:0 16px 14px;
  font-size:14px;
  line-height:1.65;
  color:var(--ink-soft);
}
.calc-seo-related{
  margin-top:24px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.calc-seo-related a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:9px 14px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--card);
  font-size:13px;
  font-weight:600;
  color:var(--trust);
  text-decoration:none;
  transition:background .15s,border-color .15s;
}
.calc-seo-related a:hover{
  background:var(--trust-soft);
  border-color:var(--trust);
}
.calc-seo-disclaimer{
  margin-top:24px;
  font-size:12.5px;
  color:var(--ink-soft);
  line-height:1.55;
  padding:14px 16px;
  border-left:3px solid var(--gold);
  background:rgba(200,155,60,.08);
  border-radius:0 8px 8px 0;
}

.calc-seo-toc{
  margin-bottom:28px;
  padding:18px 20px;
  background:var(--trust-soft);
  border:1px solid rgba(30,58,95,.12);
  border-radius:14px;
  max-width:820px;
}
.calc-seo-toc-title{
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--trust);
  margin:0 0 10px;
  font-family:'IBM Plex Mono',monospace;
}
.calc-seo-toc ol{
  margin:0;
  padding-left:20px;
  color:var(--ink-soft);
  font-size:14px;
  line-height:1.75;
}
.calc-seo-toc a{
  color:var(--trust);
  text-decoration:none;
  font-weight:500;
}
.calc-seo-toc a:hover{text-decoration:underline;}

.calc-seo-figure{
  margin:16px 0 0;
  max-width:100%;
  border-radius:14px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:0 6px 20px rgba(22,35,58,.08);
}
.calc-seo-figure img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:16 / 9;
  max-height:260px;
  object-fit:cover;
  object-position:center;
}
.calc-seo-figure figcaption{
  font-size:12px;
  color:var(--ink-soft);
  padding:10px 14px;
  background:var(--paper);
  border-top:1px solid var(--line);
}
.calc-seo-related-label{
  width:100%;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--ink-soft);
  margin-bottom:4px;
}

/* Light calculator UX polish (no logic changes) */
.calc-tool-page .tool-header{
  padding-bottom:4px;
  margin-bottom:4px;
}
.calc-tool-page .tool-sub{
  max-width:640px;
  line-height:1.6;
}
.calc-tool-page .panel label{
  font-weight:600;
  color:var(--ink);
}
.calc-tool-page .search-row input{
  margin-top:6px;
}
.calc-tool-page .lookup-stats{
  margin-bottom:16px;
}

html[data-theme="dark"] .calc-seo-faq{background:var(--card);}
html[data-theme="dark"] .calc-seo-hero-img{box-shadow:0 8px 28px rgba(0,0,0,.35);}
html[data-theme="dark"] .calc-seo-toc{background:rgba(30,58,95,.2);border-color:rgba(255,255,255,.08);}
html[data-theme="dark"] .calc-seo-figure{box-shadow:0 6px 20px rgba(0,0,0,.25);}
