/* Pricing Page Styles (refined) */
.pricing-hero { padding: 120px 0 36px; background: #fff; }
.pricing-hero .hero-content { text-align:center; max-width:900px; margin:0 auto; }
.pricing-hero .sales-strip { color:#4b5563; font-size:.95rem; margin-bottom:.5rem; }
.pricing-hero .sales-strip a { color:#111827; text-decoration:none; font-weight:600; }
.pricing-hero .link-btn { background:none; border:none; color:#111827; text-decoration:underline; cursor:pointer; }
.pricing-hero .subtitle { color:#111827; font-weight:800; font-size:2.1rem; margin-top:.25rem; }
.pricing-hero .desc { color:#6b7280; margin-top:.5rem; }

.currency-toggle, .mode-toggle { display:inline-flex; gap:8px; padding:6px; background:#f3f4f6; border-radius:999px; }
.currency-btn, .mode-btn { border:0; background:transparent; padding:8px 12px; border-radius:999px; cursor:pointer; color:#111827; font-weight:600; }
.currency-btn.active, .mode-btn.active { background:#4f46e5; color:#fff; }

.scale-section { background:#f9fafb; padding: 48px 0 64px; }
.configurator.card { background:#fff; border:1px solid #e5e7eb; border-radius:14px; padding:18px; box-shadow:0 2px 8px rgba(0,0,0,.04); }
.preset-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.users-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.users-row input[type="number"]{width:100%;padding:8px;border:1px solid #e5e7eb;border-radius:8px}
#cfgBreakdown{font-size:12px;margin-top:4px}
.actions{display:flex;gap:8px;justify-content:flex-end}
.preset-btn{border:1px solid #e5e7eb;background:#fff;color:#111827;border-radius:999px;padding:8px 12px;cursor:pointer}
.preset-btn:hover{background:#111827;color:#fff}
.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.cfg-card{display:flex;flex-direction:column;gap:4px;border:1px solid #e5e7eb;border-radius:10px;padding:12px;cursor:pointer;background:#fff}
.cfg-card input{display:none}
.cfg-card.active{border-color:#4f46e5;box-shadow:0 4px 12px rgba(79,70,229,.12)}
.cfg-card:hover{border-color:#9ca3af}
.cfg-card span{font-weight:700;color:#111827}
.cfg-card small{color:#6b7280}
.summary{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.summary .muted{color:#6b7280}
.price{font-size:28px;font-weight:800;color:#111827}
.btn-buy{display:inline-block;padding:10px 14px;background:#4f46e5;color:#fff;border:0;border-radius:8px;cursor:pointer}
.btn-buy:hover{background:#4338ca}

.rfq-section { background:#fff; padding:36px 0 80px; }
.rfq-grid { display:grid; grid-template-columns: 1.2fr .8fr; gap:30px; align-items:start; }
.rfq-copy h2 { font-size:1.85rem; margin-bottom:.4rem; color:#111827; }
.rfq-copy p { color:#4b5563; margin-bottom:.6rem; }
.rfq-bullets { list-style:none; margin:.25rem 0 0; padding:0; }
.rfq-bullets li { padding:.35rem 0; color:#4b5563; }
.rfq-form-wrap .btn-submit{width:100%;justify-content:center}

.form-row { display:grid; grid-template-columns: 1fr 1fr; gap:14px; }
.form-group { display:flex; flex-direction:column; gap:6px; }
.form-group label { font-weight:600; font-size:.95rem; }
.rfq-form input[type="text"],
.rfq-form input[type="email"],
.rfq-form input[type="tel"],
.rfq-form select,
.rfq-form textarea { border:1px solid #e5e7eb; border-radius:10px; padding:10px 12px; font: inherit; outline:none; transition: .15s ease; background:#fff; }
.rfq-form textarea { resize:vertical; }
.rfq-form input:focus,
.rfq-form select:focus,
.rfq-form textarea:focus { border-color:#111827; box-shadow: 0 0 0 3px rgba(17,24,39,.12); }
.chips { display:flex; flex-wrap:wrap; gap:10px; }
.chips label { display:inline-flex; align-items:center; gap:8px; border:1px solid #e5e7eb; border-radius:999px; padding:6px 10px; background:#fff; cursor:pointer; font-size:.92rem; }
.chips input { accent-color:#111827; }
.hp { position:absolute; left:-9999px; top:-9999px; opacity:0; }

.btn-submit { display:inline-flex; align-items:center; gap:10px; border:none; background:#111827; color:#fff; padding:12px 18px; border-radius:10px; font-weight:700; cursor:pointer; transition:.15s ease; margin-top:6px; }
.btn-submit:hover { transform: translateY(-1px); box-shadow:0 6px 16px rgba(0,0,0,.1); }
.btn-loader { width:16px; height:16px; border-radius:50%; border:2px solid rgba(255,255,255,.5); border-top-color:#fff; animation: spin 1s linear infinite; display:none; }
.btn-submit.loading .btn-text { opacity:.5; }
.btn-submit.loading .btn-loader { display:block; }
@keyframes spin { to { transform: rotate(360deg); } }

.form-success { margin-top:10px; color:#065f46; background:#d1fae5; border:1px solid #a7f3d0; padding:10px 12px; border-radius:10px; }
.form-error { margin-top:10px; color:#7f1d1d; background:#fee2e2; border:1px solid #fecaca; padding:10px 12px; border-radius:10px; }

@media (max-width: 1024px) {
  .rfq-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
}
