/* Reseller page &mdash; TIM4biz */
:root{
  --rs-bg:#f6f8fb;
  --rs-ink:#0f1b2d;
  --rs-mute:#5b6b80;
  --rs-line:#e4e8ef;
  --rs-card:#ffffff;
  --rs-brand:#1f4ed8;
  --rs-brand-2:#3b6ee0;
  --rs-teal:#0c8a8a;
  --rs-amber:#b06b00;
  --rs-violet:#5b3bd6;
  --rs-rose:#c8336c;
  --rs-ok:#0a7a4a;
  --rs-shadow:0 10px 30px rgba(15,27,45,.06);
}

.rs-hero,
.rs-section,
.rs-cta{ color:var(--rs-ink); }

/* Hero */
.rs-hero{
  background:
    radial-gradient(900px 360px at 90% -10%, rgba(31,78,216,.18), transparent 60%),
    linear-gradient(180deg,#0f1b2d 0%, #15264a 100%);
  color:#eaf0fb;
  padding:72px 0 88px;
}
.rs-hero h1{
  font-size:clamp(2rem, 4vw, 3rem);
  line-height:1.1; margin:.4rem 0 1rem; color:#fff;
  letter-spacing:-.01em;
}
.rs-hero-grid{
  display:grid; gap:48px;
  grid-template-columns: 1.2fr .9fr;
  align-items:center;
}
.rs-eyebrow{
  display:inline-block; text-transform:uppercase; letter-spacing:.14em;
  font-size:.75rem; font-weight:700;
  color:#9ec0ff; background:rgba(31,78,216,.18);
  padding:.35rem .6rem; border-radius:999px;
}
.rs-lede{ color:#cdd9ee; font-size:1.05rem; max-width:60ch; }
.rs-hero-cta{ display:flex; gap:.75rem; margin:1.25rem 0 1.5rem; flex-wrap:wrap; }
.rs-hero-trust{
  list-style:none; padding:0; margin:1.5rem 0 0;
  display:flex; gap:2rem; flex-wrap:wrap;
}
.rs-hero-trust li{ display:flex; flex-direction:column; }
.rs-hero-trust strong{ color:#fff; font-size:1.1rem; }
.rs-hero-trust span{ color:#9fb2d2; font-size:.85rem; }

/* Hero flow card */
.rs-hero-card{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px; padding:1.25rem;
  backdrop-filter: blur(6px);
}
.rs-flow{ display:grid; gap:1rem; }
.rs-flow-step{ display:flex; gap:.9rem; align-items:flex-start; }
.rs-flow-num{
  flex:0 0 36px; height:36px; border-radius:50%;
  display:grid; place-items:center;
  background:linear-gradient(135deg,var(--rs-brand),var(--rs-brand-2));
  color:#fff; font-weight:700;
}
.rs-flow-step strong{ color:#fff; }
.rs-flow-step p{ color:#bccae3; margin:.15rem 0 0; font-size:.92rem; }

/* Sections */
.rs-section{ padding:72px 0; background:var(--rs-card); }
.rs-section-soft{ background:var(--rs-bg); }
.rs-section h2{
  font-size:clamp(1.6rem, 2.6vw, 2.1rem);
  letter-spacing:-.01em; margin:0 0 .35rem;
}
.rs-sub{ color:var(--rs-mute); margin:0 0 2rem; max-width:65ch; }

/* Why grid */
.rs-why-grid{
  display:grid; gap:1rem;
  grid-template-columns: repeat(4, 1fr);
}
.rs-why{
  background:var(--rs-card);
  border:1px solid var(--rs-line);
  border-radius:14px; padding:1.25rem;
  box-shadow:var(--rs-shadow);
}
.rs-why h3{ font-size:1.05rem; margin:.6rem 0 .35rem; }
.rs-why p{ color:var(--rs-mute); margin:0; font-size:.95rem; }
.rs-why-icon{
  display:inline-grid; place-items:center;
  width:38px; height:38px; border-radius:10px;
  background:rgba(31,78,216,.08); color:var(--rs-brand);
  font-weight:700;
}
.rs-i-money{ background:rgba(10,122,74,.1); color:var(--rs-ok); }
.rs-i-stack{ background:rgba(91,59,214,.1); color:var(--rs-violet); }
.rs-i-cloud{ background:rgba(12,138,138,.1); color:var(--rs-teal); }
.rs-i-shield{ background:rgba(200,51,108,.1); color:var(--rs-rose); }

/* Portal section */
.rs-portal-grid{
  display:grid; gap:48px;
  grid-template-columns: 1fr 1fr; align-items:center;
}
.rs-feature-list{ list-style:none; padding:0; margin:1rem 0 1.25rem; display:grid; gap:.55rem; }
.rs-feature-list li{ padding-left:1.25rem; position:relative; color:var(--rs-ink); }
.rs-feature-list li::before{
  content:"›"; position:absolute; left:0; color:var(--rs-brand); font-weight:700;
}

.rs-portal-card{
  background:#0f1b2d; color:#dbe5f5;
  border-radius:14px; overflow:hidden;
  border:1px solid #1a2a44; box-shadow:0 20px 50px rgba(15,27,45,.18);
}
.rs-portal-head{
  display:flex; align-items:center; gap:.4rem;
  padding:.6rem .9rem; background:#0a1424; border-bottom:1px solid #18243c;
}
.rs-portal-dot{ width:10px; height:10px; border-radius:50%; background:#2a3a58; display:inline-block; }
.rs-portal-title{ margin-left:.5rem; font-size:.8rem; color:#7e92b6; font-family: ui-monospace, Menlo, monospace; }
.rs-portal-body{ padding:1.1rem 1.1rem 1.25rem; display:grid; gap:.75rem; }
.rs-portal-row{
  display:flex; justify-content:space-between; align-items:baseline;
  padding:.65rem .85rem; background:#15243d; border:1px solid #1d3056;
  border-radius:10px;
}
.rs-portal-row strong{ color:#fff; font-size:1.05rem; }
.rs-portal-row-mini{ background:transparent; border:none; padding:.25rem .15rem; }
.rs-portal-bar{ height:8px; background:#15243d; border-radius:999px; overflow:hidden; }
.rs-portal-bar-fill{ height:100%; background:linear-gradient(90deg,var(--rs-brand),#7aa6ff); }
.rs-ok{ color:#52d39a !important; }

/* Fit grid */
.rs-fit-grid{
  display:grid; gap:1rem;
  grid-template-columns: repeat(4, 1fr);
}
.rs-fit{
  background:var(--rs-card); border:1px solid var(--rs-line);
  border-radius:14px; padding:1.25rem; box-shadow:var(--rs-shadow);
}
.rs-fit h3{ margin:.7rem 0 .25rem; font-size:1.02rem; }
.rs-fit p{ margin:0; color:var(--rs-mute); font-size:.92rem; }

/* Tags */
.rs-tag{
  display:inline-block; font-size:.72rem; font-weight:700;
  text-transform:uppercase; letter-spacing:.1em;
  padding:.25rem .55rem; border-radius:999px;
}
.rs-tag-blue{ background:rgba(31,78,216,.1); color:var(--rs-brand); }
.rs-tag-teal{ background:rgba(12,138,138,.12); color:var(--rs-teal); }
.rs-tag-amber{ background:rgba(176,107,0,.12); color:var(--rs-amber); }
.rs-tag-violet{ background:rgba(91,59,214,.12); color:var(--rs-violet); }
.rs-tag-rose{ background:rgba(200,51,108,.12); color:var(--rs-rose); }

/* Steps */
.rs-steps{
  list-style:none; padding:0; margin:0;
  display:grid; gap:1rem;
  grid-template-columns: repeat(4, 1fr);
  counter-reset: rsstep;
}
.rs-steps li{
  background:var(--rs-card); border:1px solid var(--rs-line);
  border-radius:14px; padding:1.25rem; box-shadow:var(--rs-shadow);
}
.rs-step-num{
  display:inline-grid; place-items:center;
  width:32px; height:32px; border-radius:50%;
  background:var(--rs-brand); color:#fff; font-weight:700; margin-bottom:.55rem;
}
.rs-steps strong{ display:block; margin-bottom:.2rem; }
.rs-steps p{ margin:0; color:var(--rs-mute); font-size:.93rem; }

/* Apply form */
.rs-apply-grid{
  display:grid; gap:48px;
  grid-template-columns: .9fr 1.1fr; align-items:flex-start;
}
.rs-promise{ list-style:none; padding:0; margin:1rem 0 0; display:grid; gap:.4rem; color:var(--rs-ink); }
.rs-promise li{ color:var(--rs-ink); }

.rs-form{
  background:var(--rs-card); border:1px solid var(--rs-line);
  border-radius:16px; padding:1.5rem; box-shadow:var(--rs-shadow);
  display:grid; gap:1rem;
}
.rs-row{ display:grid; gap:.4rem; }
.rs-row-2{ grid-template-columns: 1fr 1fr; gap:1rem; }
.rs-row-2 > div{ display:grid; gap:.4rem; }
.rs-row label{ font-weight:600; font-size:.92rem; color:var(--rs-ink); }
.rs-req{ color:var(--rs-rose); }
.rs-input{
  width:100%; box-sizing:border-box;
  padding:.65rem .8rem; font-size:1rem;
  border:1px solid var(--rs-line); border-radius:10px;
  background:#fff; color:var(--rs-ink);
  transition: border-color .15s, box-shadow .15s;
}
.rs-input:focus{
  outline:none; border-color:var(--rs-brand);
  box-shadow:0 0 0 3px rgba(31,78,216,.18);
}
.rs-textarea{ resize:vertical; min-height:110px; }
.rs-consent{ display:flex; flex-direction:row; align-items:center; gap:.5rem; }
.rs-consent label{ font-weight:400; font-size:.92rem; color:var(--rs-mute); }
.rs-actions{ display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }
.rs-error{ color:var(--rs-rose); font-size:.85rem; }
.rs-status{ font-size:.92rem; }
.rs-status-ok{ color:var(--rs-ok); }
.rs-status-error{ color:var(--rs-rose); }

/* CTA */
.rs-cta{
  background:linear-gradient(135deg,#0f1b2d,#1f4ed8);
  color:#fff; padding:48px 0;
}
.rs-cta-inner{
  display:flex; justify-content:space-between; align-items:center; gap:1.5rem; flex-wrap:wrap;
}
.rs-cta h2{ margin:0; color:#fff; }
.rs-cta p{ margin:.25rem 0 0; color:#cdd9ee; }

/* Responsive */
@media (max-width: 1024px){
  .rs-hero-grid,
  .rs-portal-grid,
  .rs-apply-grid{ grid-template-columns: 1fr; }
  .rs-why-grid,
  .rs-fit-grid,
  .rs-steps{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px){
  .rs-hero{ padding:56px 0 64px; }
  .rs-section{ padding:56px 0; }
  .rs-why-grid,
  .rs-fit-grid,
  .rs-steps,
  .rs-row-2{ grid-template-columns: 1fr; }
  .rs-hero-trust{ gap:1.25rem; }
}


/* missing, added from api-support */
/*.btn-primary {
    background: linear-gradient(135deg, var(--api-brand), var(--api-brand-2));
    color: #fff;
    box-shadow: 0 12px 30px -14px rgba(11,108,242,.7);
}

    .btn-primary:hover {
        transform: translateY(-1px);
    }
*/
.btn-ghost {
    background: rgba(255,255,255,.06);
    color: #e8eef7;
    border: 1px solid rgba(255,255,255,.18);
}

    .btn-ghost:hover {
        background: rgba(255,255,255,.12);
    }
