/* ITNOPROB Product Builder — frontend */
:root{
  --itnpb-ink:#0f1419;
  --itnpb-muted:#5c6670;
  --itnpb-accent:#e85a3a;
  --itnpb-accent-dark:#c94228;
  --itnpb-accent-soft:rgba(232,90,58,.1);
  --itnpb-paper:#f4f1ea;
  --itnpb-line:#e4e7ec;
  --itnpb-card:#fff;
  --itnpb-radius:18px;
  --itnpb-shadow:0 14px 40px rgba(15,20,25,.07);
  --itnpb-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.itnpb-product-page,.itnpb-archive{
  background:#fafaf8;
  color:var(--itnpb-ink);
  font-family:var(--itnpb-font);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
.itnpb-wrap{width:min(1120px,calc(100% - 40px));margin:0 auto}
.itnpb-product-bar{
  padding:12px 0;
  background:linear-gradient(90deg,#12161c 0%,#1a222d 100%);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.itnpb-product-bar .itnpb-wrap{
  display:flex;flex-wrap:wrap;gap:12px 20px;
  justify-content:space-between;align-items:center;
}
.itnpb-product-bar strong{font-weight:700;letter-spacing:-.02em}
.itnpb-product-bar span{
  font-size:12px;font-weight:600;
  padding:4px 10px;border-radius:999px;
  background:rgba(255,255,255,.1);color:#e8ecf0;
}
.itnpb-section{padding:72px 0}
.itnpb-section:nth-child(even of .itnpb-section){background:var(--itnpb-paper)}
.itnpb-hero{
  padding:96px 0 88px;
  background:
    radial-gradient(ellipse 80% 60% at 100% 0%,rgba(232,90,58,.14),transparent 55%),
    radial-gradient(ellipse 50% 40% at 0% 100%,rgba(15,20,25,.04),transparent 50%),
    #fafaf8;
}
.itnpb-eyebrow{
  display:inline-block;
  color:var(--itnpb-accent);
  font-size:12px;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:8px;
}
.itnpb-section h1,.itnpb-section h2{
  font-size:clamp(32px,5.5vw,56px);
  max-width:900px;line-height:1.08;
  margin:10px 0 18px;letter-spacing:-.04em;font-weight:800;
  color:var(--itnpb-ink);
}
.itnpb-lead{
  font-size:clamp(17px,2vw,21px);
  line-height:1.55;color:var(--itnpb-muted);
  max-width:640px;margin:0 0 28px;
}
.itnpb-hero-image{
  display:block;width:min(100%,720px);margin:32px 0 0;
  border-radius:var(--itnpb-radius);box-shadow:var(--itnpb-shadow);
}
.itnpb-grid,.itnpb-plans,.itnpb-catalog{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px;margin-top:36px;
}
.itnpb-grid article{
  padding:24px 22px;
  border:1px solid var(--itnpb-line);
  border-radius:var(--itnpb-radius);
  background:var(--itnpb-card);
  box-shadow:0 4px 16px rgba(15,20,25,.03);
  transition:border-color .2s,box-shadow .2s,transform .2s;
}
.itnpb-grid article:hover{
  border-color:#d0d5dd;
  box-shadow:var(--itnpb-shadow);
  transform:translateY(-2px);
}
.itnpb-grid article h3{
  margin:0 0 8px;font-size:17px;font-weight:700;
  letter-spacing:-.02em;line-height:1.3;
}
.itnpb-grid article p{
  margin:0;font-size:14.5px;line-height:1.5;color:var(--itnpb-muted);
}
.itnpb-steps{counter-reset:itnpb-step}
.itnpb-steps .itnpb-grid article{
  position:relative;padding-top:28px;
  border-top:3px solid var(--itnpb-accent);
}
.itnpb-steps .itnpb-grid article::before{
  counter-increment:itnpb-step;
  content:counter(itnpb-step);
  position:absolute;top:14px;right:18px;
  width:28px;height:28px;border-radius:50%;
  background:var(--itnpb-accent-soft);color:var(--itnpb-accent);
  font-size:13px;font-weight:800;
  display:flex;align-items:center;justify-content:center;
}
.itnpb-faq .itnpb-grid article{
  border-left:3px solid var(--itnpb-accent);
}
.itnpb-plan{
  display:flex;flex-direction:column;gap:10px;
  padding:28px 24px;
  border:1px solid var(--itnpb-line);
  border-radius:var(--itnpb-radius);
  background:var(--itnpb-card);
  box-shadow:0 4px 20px rgba(15,20,25,.04);
}
.itnpb-plan:hover{border-color:#c8cdd5}
.itnpb-plan>strong{
  font-size:15px;font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;color:var(--itnpb-muted);
}
.itnpb-plan>span{
  font-size:36px;font-weight:800;letter-spacing:-.03em;line-height:1.1;
}
.itnpb-plan>small{
  color:var(--itnpb-muted);font-size:14px;line-height:1.45;
  min-height:40px;display:block;
}
.itnpb-checkout{display:grid;gap:12px;margin-top:8px}
.itnpb-checkout label>span{
  display:block;font-size:12px;font-weight:700;
  margin-bottom:5px;color:var(--itnpb-ink);
}
.itnpb-checkout input[type=email]{
  box-sizing:border-box;width:100%;min-height:46px;
  padding:10px 14px;border:1px solid #c9ced6;border-radius:12px;
  font-size:15px;font-family:inherit;
  transition:border-color .15s,box-shadow .15s;
}
.itnpb-checkout input[type=email]:focus{
  outline:none;border-color:var(--itnpb-accent);
  box-shadow:0 0 0 3px var(--itnpb-accent-soft);
}
.itnpb-consent{
  display:flex;gap:8px;align-items:flex-start;
  color:var(--itnpb-muted);font-size:12px;line-height:1.4;
}
.itnpb-consent input{margin-top:2px;accent-color:var(--itnpb-accent)}
.itnpb-plan button,.itnpb-button{
  display:inline-flex;align-items:center;justify-content:center;
  width:100%;min-height:48px;padding:12px 20px;
  border:0;border-radius:999px;
  background:var(--itnpb-accent);color:#fff!important;
  font-size:15px;font-weight:700;font-family:inherit;
  text-decoration:none!important;cursor:pointer;
  transition:background .15s,transform .15s,box-shadow .15s;
  box-shadow:0 6px 16px rgba(232,90,58,.28);
}
.itnpb-plan button:hover,.itnpb-button:hover{
  background:var(--itnpb-accent-dark);
  transform:translateY(-1px);
  box-shadow:0 8px 20px rgba(232,90,58,.35);
}
.itnpb-button-inline{
  width:auto;padding:14px 28px;margin-top:8px;
}
.itnpb-cta{
  background:linear-gradient(135deg,#12161c 0%,#1e2836 100%)!important;
  color:#fff;
}
.itnpb-cta h2{color:#fff!important}
.itnpb-cta .itnpb-lead{color:#b8c0cc!important}
.itnpb-cta .itnpb-button{
  background:#fff;color:var(--itnpb-ink)!important;
  box-shadow:0 6px 20px rgba(0,0,0,.2);
}
.itnpb-cta .itnpb-button:hover{background:#f0f2f5}

/* Archive */
.itnpb-archive-head{
  padding:72px 0 40px;
  background:
    radial-gradient(ellipse 70% 50% at 90% 0%,rgba(232,90,58,.12),transparent 50%),
    #fafaf8;
}
.itnpb-archive-head h1{
  font-size:clamp(36px,5vw,52px);font-weight:800;
  letter-spacing:-.04em;margin:10px 0 14px;line-height:1.1;
}
.itnpb-archive-head .itnpb-lead{margin-bottom:0}

/* Cards */
.itnpb-card{
  display:flex;flex-direction:column;
  border:1px solid var(--itnpb-line);
  border-radius:var(--itnpb-radius);
  background:var(--itnpb-card);
  overflow:hidden;
  box-shadow:0 4px 16px rgba(15,20,25,.03);
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
.itnpb-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--itnpb-shadow);
  border-color:#d0d5dd;
}
.itnpb-card>a{display:flex;flex-direction:column;flex:1;color:inherit;text-decoration:none!important;height:100%}
.itnpb-card img{width:100%;height:180px;object-fit:cover;display:block;background:#eceae4}
.itnpb-card-body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.itnpb-card-meta{display:flex;flex-wrap:wrap;gap:6px}
.itnpb-card-meta span,.itnpb-badge{
  display:inline-block;font-size:11px;font-weight:700;
  padding:3px 9px;border-radius:999px;
  background:#f0f2f5;color:var(--itnpb-muted);
  letter-spacing:.02em;
}
.itnpb-badge-status-available{background:#e6f6ec;color:#1a7a3c}
.itnpb-badge-status-beta,.itnpb-badge-status-alpha,.itnpb-badge-status-testing{background:#fff3e0;color:#b56a00}
.itnpb-badge-status-coming{background:#eef0ff;color:#3d4db8}
.itnpb-card-body h3{
  margin:4px 0 0;font-size:18px;font-weight:750;
  letter-spacing:-.02em;line-height:1.25;
}
.itnpb-card-body p{
  margin:0;font-size:14px;line-height:1.45;color:var(--itnpb-muted);
  flex:1;
}
.itnpb-card-foot{
  display:flex;justify-content:space-between;align-items:center;
  margin-top:10px;padding-top:12px;border-top:1px solid var(--itnpb-line);
}
.itnpb-card-price{font-size:15px;font-weight:800;color:var(--itnpb-ink)}
.itnpb-card-cta{font-size:13px;font-weight:700;color:var(--itnpb-accent)}

@media(max-width:782px){
  .itnpb-section{padding:52px 0}
  .itnpb-hero{padding:64px 0 52px}
  .itnpb-wrap{width:calc(100% - 28px)}
  .itnpb-product-bar .itnpb-wrap{flex-direction:column;align-items:flex-start}
  .itnpb-plan>span{font-size:30px}
}
@media(prefers-reduced-motion:reduce){
  .itnpb-card,.itnpb-grid article,.itnpb-plan button,.itnpb-button{transition:none}
}
