:root{
  --kiseo-cyber-red:#ff383f;
  --kiseo-cyber-red-dark:#d91f2a;
  --kiseo-cyber-ink:#101114;
  --kiseo-cyber-line:#eceef2;
}
.kiseo-answer-box{
  margin:1.6rem 0;
  padding:1.25rem 1.35rem;
  border:1px solid rgba(255,56,63,.22);
  border-left:6px solid var(--kiseo-cyber-red);
  border-radius:20px;
  background:#fff7f7;
  color:var(--kiseo-cyber-ink);
  box-shadow:0 14px 36px rgba(16,17,20,.07);
}
.kiseo-answer-box strong,
.kiseo-answer-box h2,
.kiseo-answer-box h3{color:var(--kiseo-cyber-ink)}
.kiseo-faq-block{
  margin:1.6rem 0;
}
.kiseo-faq-block details{
  margin:.8rem 0;
  padding:1rem 1.1rem;
  border:1px solid var(--kiseo-cyber-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 28px rgba(16,17,20,.05);
}
.kiseo-faq-block summary{
  color:var(--kiseo-cyber-ink);
  font-weight:800;
  cursor:pointer;
}
.kiseo-faq-block details[open]{border-color:rgba(255,56,63,.34)}
.kiseo-faq-block p{margin:.8rem 0 0}

/* cyberSEO Pilot FAQ placement */
.kiseo-faq-block{
  margin:2rem 0;
  padding:1.5rem;
  border:1px solid rgba(15,23,42,.12);
  border-radius:20px;
  background:#fff;
}
.kiseo-faq-block details{
  margin:.75rem 0;
  padding:1rem;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  background:#f8fafc;
}
.kiseo-faq-block summary{
  cursor:pointer;
  font-weight:800;
}
.kiseo-faq-layout{
  display:grid;
  gap:2rem;
  align-items:start;
}
.kiseo-faq-layout-left{grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr);}
.kiseo-faq-layout-right{grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);}
.kiseo-faq-side .kiseo-faq-block{margin-top:0;}
@media (max-width:900px){
  .kiseo-faq-layout-left,
  .kiseo-faq-layout-right{grid-template-columns:1fr;}
}


/* v0.2.29 safe FAQ injection: FAQ blocks are rendered from post meta and never rewrite the original page content. */
.kiseo-faq-injected{
  box-sizing:border-box;
  width:100%;
  clear:both;
}
.kiseo-faq-injected .kiseo-faq-block{
  box-sizing:border-box;
}
.kiseo-faq-position-left,
.kiseo-faq-position-right{
  width:min(34%, 360px);
  max-width:100%;
  clear:none;
  margin-top:.35rem;
  margin-bottom:1rem;
}
.kiseo-faq-position-left{
  float:left;
  margin-right:1.5rem;
}
.kiseo-faq-position-right{
  float:right;
  margin-left:1.5rem;
}
.kiseo-faq-clear{
  display:block;
  clear:both;
  width:100%;
  height:0;
  overflow:hidden;
}
@media (max-width:900px){
  .kiseo-faq-position-left,
  .kiseo-faq-position-right{
    float:none;
    width:100%;
    margin-left:0;
    margin-right:0;
  }
}

.kiseo-automatic-content-blocks {
  margin: 2rem 0;
  display: grid;
  gap: 1rem;
}
.kiseo-auto-content-block {
  padding: 1rem;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  background: rgba(255,255,255,.75);
}
.kiseo-auto-content-block > :first-child {
  margin-top: 0;
}
.kiseo-auto-content-block > :last-child {
  margin-bottom: 0;
}

.kiseo-cta-link-wrap {
    margin-top: 1em;
}
.kiseo-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    padding: .75em 1.1em;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.2;
    border: 1px solid currentColor;
}
.kiseo-cta-button:hover,
.kiseo-cta-button:focus {
    text-decoration: none;
}
.kiseo-cta-text-link {
    text-decoration: underline;
    font-weight: 700;
}

/* Automatic Content Blocks: internal links */
.kiseo-internal-link-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}
.kiseo-internal-link-list li {
  margin: 0;
  padding: 0;
}
.kiseo-internal-link-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  padding: .75em 1.1em;
  border-radius: 999px;
  text-decoration: none;
  border: 1px solid currentColor;
  font-weight: 700;
  line-height: 1.2;
}
.kiseo-internal-link-button:hover,
.kiseo-internal-link-button:focus {
  text-decoration: none;
}
.kiseo-internal-text-link {
  text-decoration: underline;
  text-underline-offset: .18em;
}

/* Automatic Content Blocks: headings and safer internal-link spacing */
.kiseo-automatic-content-blocks .kiseo-auto-content-heading {
  margin: 0 0 .65em;
}
.kiseo-automatic-content-blocks .kiseo-auto-content-internal_links {
  padding-left: 1rem;
  padding-right: 1rem;
}
.kiseo-automatic-content-blocks .kiseo-internal-link-list {
  list-style: none !important;
  list-style-type: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.kiseo-automatic-content-blocks .kiseo-internal-link-list li {
  list-style: none !important;
  list-style-type: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.kiseo-automatic-content-blocks .kiseo-internal-link-list li::marker {
  content: "";
  font-size: 0;
}
.kiseo-automatic-content-blocks .kiseo-internal-link-list li::before {
  display: none !important;
  content: none !important;
}
