/* V630 — Co-Stone SEO content expansion, matching the existing editorial language. */

body.ct-costone-page .cs630-material{
  padding:clamp(72px,7vw,104px) 0;
  background:#f7f3ee;
}
body.ct-costone-page .cs630-material-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.82fr);
  gap:clamp(52px,6vw,88px);
  align-items:start;
}
body.ct-costone-page .cs630-material-copy{
  max-width:720px;
}
body.ct-costone-page .cs630-material-copy .cb119-title{
  margin-top:14px;
  max-width:720px;
}
body.ct-costone-page .cs630-material-copy .cb119-body{
  margin-top:24px;
}
body.ct-costone-page .cs630-material-copy p + p{
  margin-top:16px;
}
body.ct-costone-page .cs630-material-detail{
  padding-top:33px;
  border-top:1px solid rgba(70,59,50,.18);
}
body.ct-costone-page .cs630-material-detail h3{
  margin:0;
  max-width:520px;
  font-family:var(--ct-type-serif,Georgia,"Times New Roman",serif);
  font-size:clamp(27px,2.4vw,34px);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.035em;
  color:#302a25;
}
body.ct-costone-page .cs630-material-detail > p{
  margin:20px 0 0;
  max-width:560px;
  font-size:15px;
  line-height:1.72;
  color:#665b51;
}
body.ct-costone-page .cs630-factor-list{
  list-style:none;
  margin:30px 0 0;
  padding:0;
  border-top:1px solid rgba(70,59,50,.15);
}
body.ct-costone-page .cs630-factor-list li{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:12px;
  padding:14px 0;
  border-bottom:1px solid rgba(70,59,50,.12);
  font-size:13px;
  line-height:1.55;
  color:#4f463e;
}
body.ct-costone-page .cs630-factor-list span{
  font-size:10px;
  font-weight:600;
  letter-spacing:.16em;
  color:#948170;
}

/* Application steps — informational, not card-heavy. */
body.ct-costone-page .cs630-steps{
  list-style:none;
  margin:28px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 28px;
  border-top:1px solid rgba(70,59,50,.14);
}
body.ct-costone-page .cs630-steps li{
  position:relative;
  min-height:104px;
  padding:17px 0 18px 42px;
  border-bottom:1px solid rgba(70,59,50,.12);
}
body.ct-costone-page .cs630-steps .cs630-step-no{
  position:absolute;
  left:0;
  top:18px;
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  color:#9a8673;
}
body.ct-costone-page .cs630-steps strong{
  display:block;
  margin-bottom:6px;
  font-size:14px;
  font-weight:600;
  color:#3d352f;
}
body.ct-costone-page .cs630-steps p{
  margin:0;
  font-size:13px;
  line-height:1.58;
  color:#6b5f55;
}

/* FAQ */
body.ct-costone-page .cs630-faq{
  padding:clamp(72px,7vw,104px) 0;
  background:#f3eee8;
}
body.ct-costone-page .cs630-faq-head{
  display:grid;
  grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);
  gap:clamp(36px,5vw,72px);
  align-items:end;
  padding-bottom:34px;
  border-bottom:1px solid rgba(70,59,50,.16);
}
body.ct-costone-page .cs630-faq-head .cb119-title{
  margin-top:14px;
  max-width:760px;
}
body.ct-costone-page .cs630-faq-list{
  margin-top:6px;
}
body.ct-costone-page .cs630-faq details{
  border-bottom:1px solid rgba(70,59,50,.14);
}
body.ct-costone-page .cs630-faq summary{
  position:relative;
  cursor:pointer;
  list-style:none;
  padding:24px 42px 24px 0;
  font-family:var(--ct-type-serif,Georgia,"Times New Roman",serif);
  font-size:22px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:-.02em;
  color:#342e29;
}
body.ct-costone-page .cs630-faq summary::-webkit-details-marker{
  display:none;
}
body.ct-costone-page .cs630-faq summary::after{
  content:"+";
  position:absolute;
  right:4px;
  top:22px;
  font-family:Arial,Helvetica,sans-serif;
  font-size:18px;
  font-weight:400;
  line-height:1;
  color:#796a5d;
  transition:transform .2s ease;
}
body.ct-costone-page .cs630-faq details[open] summary::after{
  transform:rotate(45deg);
}
body.ct-costone-page .cs630-faq details p{
  margin:0;
  max-width:820px;
  padding:0 42px 25px 0;
  font-size:15px;
  line-height:1.72;
  color:#665b51;
}

@media (max-width:900px){
  body.ct-costone-page .cs630-material-grid,
  body.ct-costone-page .cs630-faq-head{
    grid-template-columns:1fr;
    gap:34px;
  }
  body.ct-costone-page .cs630-material-detail{
    padding-top:28px;
  }
}

@media (max-width:700px){
  body.ct-costone-page .cs630-material,
  body.ct-costone-page .cs630-faq{
    padding:58px 0 62px;
  }
  body.ct-costone-page .cs630-material-grid{
    gap:36px;
  }
  body.ct-costone-page .cs630-material-copy .cb119-title{
    margin-top:12px;
  }
  body.ct-costone-page .cs630-material-copy .cb119-body{
    margin-top:20px;
  }
  body.ct-costone-page .cs630-material-detail h3{
    font-size:28px;
    line-height:1.1;
  }
  body.ct-costone-page .cs630-steps{
    grid-template-columns:1fr;
    gap:0;
  }
  body.ct-costone-page .cs630-steps li{
    min-height:0;
    padding:16px 0 17px 38px;
  }
  body.ct-costone-page .cs630-faq-head{
    gap:18px;
    padding-bottom:25px;
  }
  body.ct-costone-page .cs630-faq summary{
    padding:21px 36px 21px 0;
    font-size:21px;
    line-height:1.2;
  }
  body.ct-costone-page .cs630-faq summary::after{
    top:20px;
    right:2px;
  }
  body.ct-costone-page .cs630-faq details p{
    padding:0 28px 22px 0;
    font-size:14px;
    line-height:1.68;
  }
}

@media (prefers-reduced-motion:reduce){
  body.ct-costone-page .cs630-faq summary::after{
    transition:none;
  }
}
