/* =====================================================
   HOLD WEBS – LIGHT PREMIUM (INTERSERVER-LIKE)
   Theme: twenty-one
   CTRL+A → PASTE SAFE VERSION
   ===================================================== */

:root{
  --hw-blue:#1d4ed8;
  --hw-blue2:#2563eb;

  --hw-bg:#ffffff;
  --hw-soft:#f5f8ff;

  --hw-text:#0f172a;
  --hw-muted:#475569;

  --hw-border:rgba(15,23,42,.10);
  --hw-radius:18px;
}

body{
  background:#ffffff;
  color:var(--hw-text);
}

/* TOP BAR */
.hw-topbar{
  background:#1d4ed8;
  color:#fff;
  font-size:12px;
}
.hw-topbar-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 0;
}
.hw-topbar-link{
  color:#fff;
  text-decoration:none;
  margin-left:12px;
  opacity:.95;
}
.hw-topbar-link:hover{ opacity:1; text-decoration:underline; }

/* HEADER */
.hw-header{
  background:linear-gradient(180deg,#f7f9ff,#ffffff);
  border-bottom:1px solid var(--hw-border);
}
.hw-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 0;
}
.hw-brand img{
  height:36px;
  width:auto;
  display:block;
}
.hw-logo{
  height:36px !important;
  width:auto !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
}
.hw-menu{
  display:flex;
  gap:18px;
  align-items:center;
}
.hw-menu a{
  color:#0f172a;
  font-size:14px;
  text-decoration:none;
  opacity:.9;
}
.hw-menu a:hover{ opacity:1; color:var(--hw-blue); }
.hw-btn-pill{
  border-radius:999px !important;
  padding:8px 16px !important;
}

/* BUTTONS */
.btn-primary{
  background:linear-gradient(135deg,#2563eb,#1d4ed8) !important;
  border:none !important;
  color:#fff !important;
}
.btn-primary:hover{
  background:linear-gradient(135deg,#3b82f6,#2563eb) !important;
}
.btn-outline-primary{
  color:#1d4ed8 !important;
  border-color:#93c5fd !important;
  background:#ffffff !important;
}
.btn-outline-primary:hover{
  background:#eff6ff !important;
  color:#1d4ed8 !important;
}

/* HERO */
.hw-hero{
  background:radial-gradient(1100px 420px at top center,#eaf2ff 0%,#ffffff 62%);
  padding:60px 0 40px;
}
.hw-hero-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:30px;
  align-items:center;
}
@media(max-width:991px){
  .hw-hero-grid{ grid-template-columns:1fr; }
}
.hw-eyebrow{
  color:#f59e0b;
  font-size:13px;
  font-weight:600;
  margin-bottom:10px;
}
.hw-h1{
  font-size:44px;
  line-height:1.05;
  margin:0 0 10px;
}
@media(max-width:480px){
  .hw-h1{ font-size:34px; }
}
.hw-sub{
  color:var(--hw-muted);
  margin:0;
  max-width:560px;
}
.hw-hero-cta{
  display:flex;
  gap:12px;
  margin-top:18px;
  flex-wrap:wrap;
}
.hw-dots{
  display:flex;
  gap:8px;
  margin-top:18px;
}
.hw-dots span{
  width:28px;
  height:3px;
  background:rgba(29,78,216,.18);
  border-radius:999px;
}
.hw-dots span:first-child{
  background:#2563eb;
}

.hw-trust{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}
.hw-pill{
  display:inline-block;
  padding:8px 12px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid rgba(29,78,216,.18);
  color:#1d4ed8;
  font-size:12px;
}

/* HERO SHOT + ANIMATION */
.hw-hero-shot{
  background:#ffffff;
  border:1px solid var(--hw-border);
  border-radius:var(--hw-radius);
  padding:14px;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 50px rgba(2,6,23,.08);
}
.hw-hero-shot-title{
  font-size:13px;
  color:#1d4ed8;
  margin:4px 0 10px;
  opacity:.95;
}
.hw-dashboard-wrap{
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(180deg,#f7f9ff,#ffffff);
}
.hw-dashboard-svg{
  width:100%;
  height:auto;
  display:block;
  border-radius:16px;
  animation: hwFloat 4.8s ease-in-out infinite;
}

@keyframes hwFloat{
  0%{ transform: translateY(0px); }
  50%{ transform: translateY(-6px); }
  100%{ transform: translateY(0px); }
}

/* Sections */
.hw-section{ padding:60px 0; }
.hw-soft{
  background:var(--hw-soft);
  border-top:1px solid var(--hw-border);
  border-bottom:1px solid var(--hw-border);
}
.hw-section-title{
  text-align:center;
  margin-bottom:30px;
}
.hw-section-title h2{
  margin:0 0 8px;
  color:var(--hw-text);
}
.hw-section-title p{
  margin:0;
  color:var(--hw-muted);
}

/* Cards */
.hw-cards-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
@media(max-width:991px){
  .hw-cards-3{ grid-template-columns:1fr; }
}
.hw-card{
  background:#ffffff;
  border:1px solid var(--hw-border);
  border-radius:var(--hw-radius);
  padding:20px;
  position:relative;
  display:flex;
  flex-direction:column;
  box-shadow:0 12px 35px rgba(2,6,23,.06);
}
.hw-card:hover{
  border-color: rgba(37,99,235,.35);
  transform: translateY(-1px);
  transition: .18s ease;
}
.hw-card-pop{
  box-shadow:0 0 0 2px rgba(37,99,235,.20), 0 18px 50px rgba(2,6,23,.08);
}
.hw-badge{
  position:absolute;
  top:14px;
  right:14px;
  background:rgba(37,99,235,.10);
  color:#1d4ed8;
  font-size:12px;
  padding:6px 12px;
  border-radius:999px;
}
.hw-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  margin-bottom:12px;
}
.hw-card-title{
  font-weight:700;
  font-size:18px;
  color:var(--hw-text);
}
.hw-price{
  text-align:right;
}
.hw-price-amt{
  display:block;
  font-weight:800;
  color:var(--hw-text);
}
.hw-price-unit{
  display:block;
  font-size:12px;
  color:var(--hw-muted);
}
.hw-list{
  margin:12px 0 16px;
  padding-left:18px;
  color:var(--hw-muted);
}
.hw-btn-block{
  width:100%;
  margin-top:auto;
}

/* Panels */
.hw-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
@media(max-width:991px){
  .hw-grid-2{ grid-template-columns:1fr; }
}
.hw-panel{
  background:#ffffff;
  border:1px solid var(--hw-border);
  border-radius:var(--hw-radius);
  padding:20px;
  box-shadow:0 12px 35px rgba(2,6,23,.06);
}
.hw-panel-title{
  font-weight:700;
  color:var(--hw-text);
  margin-bottom:14px;
}
.hw-links a{
  display:block;
  padding:12px;
  border-radius:12px;
  border:1px solid rgba(15,23,42,.10);
  margin-bottom:10px;
  color:var(--hw-text);
  text-decoration:none;
  background:#ffffff;
}
.hw-links a:hover{
  background:#eff6ff;
  border-color: rgba(37,99,235,.25);
  color:#1d4ed8;
}
.hw-muted{ color:var(--hw-muted); }

/* Testimonial */
.hw-testimonials-inner{
  background:#ffffff;
  border:1px solid var(--hw-border);
  border-radius:var(--hw-radius);
  padding:24px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:20px;
  margin-top:18px;
  box-shadow:0 12px 35px rgba(2,6,23,.06);
}
@media(max-width:991px){
  .hw-testimonials-inner{ grid-template-columns:1fr; }
}
.hw-kicker{
  color:#f59e0b;
  font-size:12px;
  margin-bottom:8px;
}
.hw-quote{
  background:#eff6ff;
  border:1px solid rgba(37,99,235,.18);
  border-radius:14px;
  padding:16px;
  color:var(--hw-text);
}
.hw-quote-meta{
  margin-top:10px;
  font-size:12px;
  color:var(--hw-muted);
}

/* Features */
.hw-features{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
@media(max-width:991px){
  .hw-features{ grid-template-columns:1fr; }
}
.hw-feature{
  background:#ffffff;
  border:1px solid var(--hw-border);
  border-radius:var(--hw-radius);
  padding:20px;
  box-shadow:0 12px 35px rgba(2,6,23,.06);
}
.hw-feature-title{
  font-weight:700;
  color:var(--hw-text);
  margin-bottom:8px;
}

/* Footer */
.hw-footer{
  background:#0b2b5a;
  padding:60px 0 20px;
  color:#cfe0ff;
}
.hw-footer-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
@media(max-width:991px){
  .hw-footer-grid{ grid-template-columns:1fr 1fr; }
}
@media(max-width:520px){
  .hw-footer-grid{ grid-template-columns:1fr; }
}
.hw-footer-title{
  color:#fff;
  font-weight:800;
  margin-bottom:12px;
}
.hw-footer a{
  color:#cfe0ff;
  text-decoration:none;
  display:block;
  margin:8px 0;
}
.hw-footer a:hover{ color:#fff; }
.hw-footer-bottom{
  border-top:1px solid rgba(255,255,255,.18);
  margin-top:30px;
  padding-top:16px;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}

/* GLOBAL WHMCS (Cart / Products / Sidebars) */
.panel, .panel-default, .card, .well, .list-group, .list-group-item,
.sidebar .panel, .sidebar .card{
  background:#ffffff !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  color: #0f172a !important;
  border-radius: 18px !important;
  box-shadow:0 12px 35px rgba(2,6,23,.06) !important;
}
.panel-heading, .card-header, .list-group-item.active{
  background: rgba(37,99,235,.10) !important;
  border-color: rgba(15,23,42,.10) !important;
  color:#0f172a !important;
}
.sidebar a, .panel a, .list-group a{
  color:#0f172a !important;
}
.sidebar a:hover, .panel a:hover, .list-group a:hover{
  color:#1d4ed8 !important;
}
.table, table{
  color:#0f172a !important;
}
.table>thead>tr>th{
  border-bottom:1px solid rgba(15,23,42,.10) !important;
}
.table>tbody>tr>td, .table>tbody>tr>th{
  border-top:1px solid rgba(15,23,42,.10) !important;
}
.btn-success, .btn.btn-success, .btn-green{
  background: linear-gradient(135deg,#2563eb,#1d4ed8) !important;
  border: none !important;
  color:#fff !important;
}
.btn-success:hover, .btn.btn-success:hover, .btn-green:hover{
  background: linear-gradient(135deg,#3b82f6,#2563eb) !important;
}
.form-control, input, select, textarea{
  background: #ffffff !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  color:#0f172a !important;
}
.form-control::placeholder, input::placeholder, textarea::placeholder{
  color: rgba(15,23,42,.45) !important;
}
h1,h2,h3,h4,h5{ color:#0f172a !important; }
