*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;background:#F4F3EF;}
::selection{background:#2F6BE0;color:#fff;}

a{color:inherit;text-decoration:none;}

/* form inputs — styled to match the prototype's placeholder boxes */
.dc-input{
  width:100%;
  font-family:inherit;
  border-radius:8px;
  outline:none;
}
.dc-input-dark{
  background:#0F1116;
  border:1px solid #2C2C30;
  padding:12px 14px;
  color:#fff;
  font-size:14px;
}
.dc-input-dark::placeholder{color:#6E7686;}
.dc-input-dark:focus{border-color:#2F6BE0;}
.dc-input-light{
  background:#fff;
  border:1px solid #DAD7CF;
  padding:12px 14px;
  color:#16161A;
  font-size:14px;
}
.dc-input-light::placeholder{color:#9a978f;}
.dc-input-light:focus{border-color:#2F6BE0;}

/* subtle hover affordances (do not alter layout) */
[data-nav]{transition:opacity .15s ease, transform .15s ease;}
[data-nav]:hover{opacity:.85;}
[data-chip],[data-model]{transition:border-color .12s ease, background .12s ease, color .12s ease;}

/* ============ RESPONSIVE ============ */
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr !important; gap:40px !important; padding-top:48px !important;}
  .hero-title{font-size:46px !important;}
  .security-grid{grid-template-columns:1fr !important; gap:32px !important;}
  .cta-row{flex-direction:column; align-items:flex-start !important; gap:24px !important;}
  .showcase-head{flex-direction:column; align-items:flex-start !important;}
  .showcase-head>div:last-child{text-align:left !important; max-width:none !important;}
  .demo-form-grid{grid-template-columns:1fr !important; gap:24px !important;}
  .page-title{font-size:40px !important;}
}
@media (max-width:820px){
  .two-col{grid-template-columns:1fr !important;}
  .three-col{grid-template-columns:1fr !important; gap:24px !important;}
  .pricing-grid{grid-template-columns:1fr !important;}
  .kpi-4{grid-template-columns:repeat(2,1fr) !important;}
  .showcase-2{grid-template-columns:1fr !important;}
  .nav-links{gap:16px !important;}
  .trust-strip{flex-wrap:wrap; gap:8px 18px; justify-content:flex-start !important;}
  .chapters{grid-template-columns:repeat(2,1fr) !important;}
  .footer-row{flex-direction:column; gap:16px; align-items:flex-start !important; text-align:left;}
}
@media (max-width:560px){
  .wrap{padding-left:20px !important; padding-right:20px !important;}
  .hero-title{font-size:38px !important;}
  .page-title{font-size:32px !important;}
  .nav-row{padding-left:20px !important; padding-right:20px !important;}
  /* keep the nav usable on small screens */
  .nav-links span:nth-child(5){display:none;} /* EN / FR */
  .model-grid{grid-template-columns:1fr !important;}
  .kpi-4{grid-template-columns:1fr !important;}
  .dash-head{flex-direction:column; align-items:flex-start !important; gap:16px;}
}
