:root {
  --bg: #0B1220;
  --surface: #111827;
  --primary: #3D5ECC;   /* Muted Azure */
  --secondary: #5B2BB3; /* Muted Purple */
  --accent: #1AA7C1;    /* Muted Cyan */
  --muted: #94A3B8;
  --text: #E6E9F2;
  --gradient: linear-gradient(135deg, #3D5ECC 0%, #5B2BB3 50%, #1AA7C1 100%);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial}
.container{max-width:100%;margin:0 auto;padding:24px}
.header{position:sticky;top:0;background:rgba(0,0,0,0.35);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,0.06);z-index:10}
.nav{display:flex;align-items:center;justify-content:center;gap:36px;padding:14px 0;flex-wrap:wrap}
.brand{display:flex;gap:12px;align-items:center;justify-content:center}
.nav-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}
.brand-badge{display:none}
.logo{height:40px}
.brand-name{font-size:20px;font-weight:700;color:var(--text);display:flex;align-items:center}
.btn{
  padding:12px 20px;
  border-radius:16px;
  border:none;
  cursor:pointer;
  font-weight:600;
  text-decoration:none;
  display:inline-block;
  transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 4px 16px rgba(0,0,0,0.1), 0 1px 4px rgba(0,0,0,0.05);
}

.btn::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.05) 100%);
  border-radius:16px;
  opacity:0;
  transition:opacity 0.3s ease;
  pointer-events:none;
}

.btn:hover::before{
  opacity:1;
}

.btn-primary{
  background:rgba(61,94,204,0.15);
  color:var(--text);
  border:1px solid rgba(61,94,204,0.3);
  box-shadow:0 4px 16px rgba(61,94,204,0.2), 0 1px 4px rgba(61,94,204,0.1), inset 0 1px 0 rgba(255,255,255,0.1);
}

.btn-primary:hover{
  background:rgba(61,94,204,0.25);
  border-color:rgba(61,94,204,0.4);
  box-shadow:0 8px 24px rgba(61,94,204,0.3), 0 2px 8px rgba(61,94,204,0.15), inset 0 1px 0 rgba(255,255,255,0.15);
  transform:translateY(-1px);
}

.btn-primary:active{
  transform:translateY(0);
  box-shadow:0 4px 16px rgba(61,94,204,0.2), 0 1px 4px rgba(61,94,204,0.1), inset 0 1px 0 rgba(255,255,255,0.1);
}

.btn-secondary{
  background:rgba(255,255,255,0.08);
  color:var(--text);
  border:1px solid rgba(255,255,255,0.15);
  box-shadow:0 4px 16px rgba(0,0,0,0.1), 0 1px 4px rgba(0,0,0,0.05), inset 0 1px 0 rgba(255,255,255,0.1);
}

.btn-secondary:hover{
  background:rgba(255,255,255,0.12);
  border-color:rgba(255,255,255,0.2);
  box-shadow:0 8px 24px rgba(0,0,0,0.15), 0 2px 8px rgba(0,0,0,0.08), inset 0 1px 0 rgba(255,255,255,0.15);
  transform:translateY(-1px);
}

.btn-secondary:active{
  transform:translateY(0);
  box-shadow:0 4px 16px rgba(0,0,0,0.1), 0 1px 4px rgba(0,0,0,0.05), inset 0 1px 0 rgba(255,255,255,0.1);
}
.hero{position:relative;min-height:100vh;padding:0;display:flex;align-items:flex-start}
.hero-content{text-align:center;max-width:800px;margin:0 auto;padding:144px 0}
.hero-bg{position:absolute;inset:0;overflow:hidden;z-index:0}
.hero-bg::before{content:'';position:absolute;inset:0;background: url('/images/siteachtergrond.png') center/cover no-repeat;filter:blur(8px);opacity:0.35;transform:scale(1.05);pointer-events:none}
.hero .hero-content,.hero .hero-badges{position:relative;z-index:1}
.blob{position:absolute;width:320px;height:320px;border-radius:50%;filter:blur(48px);opacity:0.25}
.blob.a{background:linear-gradient(135deg, rgba(61,94,204,0.6), rgba(26,167,193,0.6));top:10%;left:-80px;animation:float1 16s ease-in-out infinite}
.blob.b{background:linear-gradient(135deg, rgba(26,167,193,0.6), rgba(91,43,179,0.6));bottom:10%;right:-80px;animation:float2 18s ease-in-out infinite}
@keyframes float1{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,20px)}}
@keyframes float2{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,-20px)}}
.hero-text{width:100%}
.hero h1{font-size:40px;line-height:1.1;margin:0 0 12px}
.hero p{color:var(--muted);max-width:58ch;margin:0 auto 16px}
.hero-buttons{display:flex;gap:12px;margin-top:16px;justify-content:center}
.hero-badges{display:flex;align-items:center;gap:12px;margin-top:24px;justify-content:center}
.aws-ready-badge{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:8px;padding:6px 12px}
.badge-text{color:var(--muted);font-size:14px}
.badge-dot{color:var(--muted);font-size:14px}
.gradient-block{width:100%;height:120px;background:linear-gradient(90deg, #5B2BB3 0%, #1AA7C1 100%);border-radius:16px;margin-bottom:16px}
.color-palette{display:flex;gap:12px}
.color-swatch{flex:1}
.color-preview{width:100%;height:60px;border-radius:12px;margin-bottom:8px}
.bg-color{background:var(--bg)}
.surface-color{background:var(--surface)}
.primary-color{background:var(--primary)}
.color-info{text-align:center}
.color-label{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}
.color-hex{display:block;font-weight:700;font-size:14px}

.demo-image{width:100%;height:auto;border-radius:12px;margin:16px 0}
.card{background:var(--surface);border:1px solid rgba(255,255,255,0.06);border-radius:20px;padding:20px}
.card h1, .card h2, .card h3 { text-align:center }
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
/* Section titles */
.section-title{font-size:28px;margin:0 0 16px}
.centered{text-align:center}

/* Steps (Sectie 4) */
.steps{display:flex;align-items:center;justify-content:center;gap:18px}
.step-card{flex:1;min-width:220px;max-width:320px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:16px;text-align:center}
.step-icon{display:flex;align-items:center;justify-content:center;margin-bottom:8px;color:#E6E9F2}
.connector{width:60px;height:2px;border-bottom:2px dashed rgba(255,255,255,0.25)}
.icon{opacity:0.9}

/* Benefits (Sectie 5) */
.benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:980px;margin:0 auto}
.benefit-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:8px}
.benefit-icon{color:#E6E9F2}
.benefit-card h3{margin:0}
.benefit-card p{margin:0;color:var(--muted)}

/* Offer (Sectie 6) */
.offer{max-width:820px;margin:0 auto;text-align:center}
.offer-text{max-width:60ch;margin:8px auto 18px;color:var(--muted)}
.btn-lg{padding:14px 22px;border-radius:18px;font-size:16px}
.section{padding:42px 0}
.badge{display:inline-block;background:var(--accent);color:#0B1220;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700}
.footer{color:var(--muted);font-size:12px;padding:32px 0}
.kicker{color:var(--muted);font-size:14px}
pre,code{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace}
a{color:inherit;text-decoration:none}
.brand a{display:flex;align-items:center;gap:12px}
.nav-links a{color:#cbd5e1;transition:color 0.3s ease}
.nav-links a:hover{color:#fff}

/* Pricing section styles */
.pricing-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;align-items:stretch;max-width:100%}
.pricing-card{background:var(--surface);border:1px solid rgba(255,255,255,0.06);border-radius:20px;padding:24px;position:relative;height:100%;display:flex;flex-direction:column}
.pricing-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:20px;background:linear-gradient(90deg, rgba(91,43,179,0.1) 0%, rgba(26,167,193,0.1) 100%);pointer-events:none}
.card-header{position:relative;z-index:1}
.card-badge{display:inline-block;background:var(--accent);color:#0B1220;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:700;margin-bottom:12px}
.pricing-card h2{font-size:24px;margin:0 0 12px;position:relative;z-index:1}
.pricing-card p{color:var(--muted);margin:0 0 16px;position:relative;z-index:1}
.highlight-text{display:flex;align-items:flex-start;gap:8px;margin-bottom:20px;position:relative;z-index:1;padding:12px;background:rgba(26,167,193,0.1);border-radius:8px;border:1px solid rgba(26,167,193,0.2)}
.highlight-icon{font-size:16px;flex-shrink:0;margin-top:2px}
.highlight-text span:last-child{color:var(--text);font-size:14px;line-height:1.4;font-weight:500}
.pricing-info{display:flex;align-items:baseline;gap:4px;margin-bottom:20px;position:relative;z-index:1}
.price{font-size:32px;font-weight:700;color:var(--accent)}
.price-period{color:var(--muted);font-size:16px}
.info-container{position:relative;display:inline-block}
.info-button{
  background:rgba(26,167,193,0.1);
  border:1px solid rgba(26,167,193,0.2);
  color:var(--accent);
  font-size:16px;
  cursor:pointer;
  margin-left:12px;
  padding:4px;
  border-radius:50%;
  width:24px;
  height:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  font-weight:bold;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 2px 8px rgba(26,167,193,0.15), inset 0 1px 0 rgba(255,255,255,0.1);
}

.info-button:hover{
  background:rgba(26,167,193,0.2);
  border-color:rgba(26,167,193,0.3);
  transform:scale(1.1);
  box-shadow:0 4px 12px rgba(26,167,193,0.25), inset 0 1px 0 rgba(255,255,255,0.15);
}
.extra-costs-popup{position:absolute;bottom:100%;left:0;background:var(--surface);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:16px;min-width:280px;box-shadow:0 8px 32px rgba(0,0,0,0.4);opacity:0;visibility:hidden;transform:translateY(10px);transition:all 0.3s ease;z-index:1000;margin-bottom:8px;display:none}
.extra-costs-popup.show{opacity:1;visibility:visible;transform:translateY(0);display:block}
.popup-content h4{margin:0 0 12px;color:var(--text);font-size:14px;font-weight:600}
.popup-content ul{margin:0;padding-left:16px;color:var(--muted);font-size:13px;line-height:1.5}
.popup-content li{margin-bottom:8px}
.popup-content strong{color:var(--text)}
.extra-costs-popup::before{content:'';position:absolute;bottom:-6px;left:12px;width:12px;height:12px;background:var(--surface);border-right:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(255,255,255,0.1);transform:rotate(45deg)}
.card-buttons{display:flex;gap:12px;margin-bottom:24px;position:relative;z-index:1}
.feature-list{position:relative;z-index:1;flex-grow:1;display:flex;flex-direction:column;justify-content:flex-end}
.feature-item{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.checkmark{color:#10B981;font-weight:700}
.pricing-image{display:flex;align-items:center;justify-content:center}
.demo-placeholder{width:100%;height:300px;background:var(--surface);border:1px solid rgba(255,255,255,0.06);border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(0,0,0,0.3)}
.placeholder-content{text-align:center;padding:24px}
.placeholder-icon{font-size:48px;margin-bottom:16px}
.placeholder-content h3{margin:0 0 8px;color:var(--text)}
.placeholder-content p{color:var(--muted);margin:0}
.demo-screenshot{width:100%;height:auto;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,0.3)}
/* Pitch styles */
.pitch-hero{position:relative;text-align:center;padding:48px;border-radius:24px;background:linear-gradient(135deg, rgba(61,94,204,0.18), rgba(26,167,193,0.18));border:1px solid rgba(255,255,255,0.08);box-shadow:0 8px 32px rgba(0,0,0,0.3);overflow:hidden}
.pitch-hero h1{font-size:42px;line-height:1.1;margin:8px 0 6px}
.pitch-hero .subtitle{color:var(--muted);max-width:60ch;margin:8px auto 0}
.pitch-hero .hero-cta{display:flex;gap:12px;justify-content:center;margin-top:14px}
.pitch-hero .hero-stats{display:flex;gap:20px;justify-content:center;margin-top:16px;color:var(--muted);flex-wrap:wrap}
.pitch-hero .hero-stats div{display:flex;flex-direction:column;align-items:center;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:12px;padding:8px 12px}
.pitch-hero .hero-stats strong{color:var(--text);font-size:18px}
.pill{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.16);color:var(--text);padding:6px 10px;border-radius:999px;font-weight:600}
.features .feature-card{position:relative}
.features .feature-card::before{content:'';position:absolute;inset:0;border-radius:20px;background:linear-gradient(180deg, rgba(255,255,255,0.06), transparent);pointer-events:none}
.checklist{padding-left:18px;margin:0}
.checklist li{margin:6px 0}
.architecture-diagram{margin:12px 0;background:var(--bg);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:14px}
.architecture-diagram pre{margin:0;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;line-height:1.6;color:var(--text)}
.arch-svg{margin:12px 0;background:var(--bg);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:12px}
.arch-svg svg{width:100%;height:auto;display:block}
.pitch-hero .hero-glow,.pitch-hero .hero-glow-alt,.pitch-hero .hero-glare{position:absolute;inset:auto;pointer-events:none;filter:blur(48px);opacity:0.6}
.pitch-hero .hero-glow{top:-60px;left:-60px;width:220px;height:220px;background:radial-gradient(circle at center, rgba(61,94,204,0.5), transparent 60%)}
.pitch-hero .hero-glow-alt{bottom:-60px;right:-60px;width:220px;height:220px;background:radial-gradient(circle at center, rgba(26,167,193,0.45), transparent 60%)}
.pitch-hero .hero-glare{top:10%;left:20%;width:60%;height:40%;background:radial-gradient(ellipse at center, rgba(255,255,255,0.15), transparent 70%);filter:blur(28px);opacity:0.35}
.features{margin-top:24px}
/* Value list */
.value-list{list-style:none;padding:0;margin:8px auto 0;display:grid;gap:10px;max-width:900px;text-align:center}
.value-list li{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:12px}
/* Demo UI */
.demo-ui{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.demo-input{width:100%;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,0.08);background:rgba(255,255,255,0.04);color:var(--text);outline:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.demo-input::placeholder{color:#94A3B8}
.demo-actions{display:flex;gap:10px;margin-top:12px}
.demo-docs{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.demo-doc-item{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:12px}
.demo-doc-item span{color:var(--muted)}
.demo-results{display:flex;flex-direction:column;gap:12px}
.demo-answer-block{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:12px}
.demo-source{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.demo-snippets{margin:0;padding-left:18px;color:var(--text)}
.muted{color:var(--muted)}

/* Chat UI */
.chat{display:flex;flex-direction:column;gap:12px}
.chat-messages{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:14px;height:420px;overflow:auto}
.chat-input{display:flex;gap:10px;align-items:center}
.chat-text{flex:1;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,0.08);background:rgba(255,255,255,0.04);color:var(--text);outline:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.chat-bubble{max-width:75%;padding:10px 12px;border-radius:14px;margin:6px 0;line-height:1.4}
.from-user{margin-left:auto;background:rgba(61,94,204,0.2);border:1px solid rgba(61,94,204,0.3)}
.from-bot{margin-right:auto;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12)}
.chat-details{opacity:0.8}

/* Responsive design */
@media (max-width: 768px) {
  .hero-content{flex-direction:column;gap:32px}
  .hero-visual{width:100%}
  .pricing-grid{grid-template-columns:1fr;gap:20px}
  .hero-buttons{flex-direction:column}
  .hero-badges{flex-wrap:wrap}
  .problem-solution-grid{grid-template-columns:1fr;gap:24px}
  .steps{flex-direction:column}
  .connector{display:none}
  .grid-4{grid-template-columns:1fr;gap:12px}
  .color-palette{flex-direction:column}
  .demo-ui{grid-template-columns:1fr}
  .chat-messages{height:60vh}
}

/* Comparison table styles */
.comparison-section {
  padding: 80px 0;
  background: var(--surface);
}

.comparison-title {
  text-align: center;
  font-size: 32px;
  margin-bottom: 48px;
  color: var(--text);
}

.comparison-table {
  background: var(--bg);
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.table-header {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  background: rgba(61, 94, 204, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.feature-column {
  padding: 24px;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
}

.package-column {
  padding: 24px;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
}

.package-column:last-child {
  border-right: none;
}

.package-column h3 {
  margin: 0 0 8px 0;
  font-size: 20px;
  color: var(--text);
}

.package-price {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--accent);
}

.table-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.table-row:last-child {
  border-bottom: none;
}

.feature-cell {
  padding: 20px 24px;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(17, 24, 39, 0.5);
}

.package-cell {
  padding: 20px 24px;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  color: var(--text);
}

.package-cell:last-child {
  border-right: none;
}

.feature-icon {
  font-size: 20px;
  width: 24px;
  text-align: center;
  flex-shrink: 0;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 2px 4px rgba(61, 94, 204, 0.3));
}

.feature-cell span {
  font-weight: 500;
  color: var(--text);
}

/* Problem/Solution section styles */
.problem-solution-section {
  padding: 80px 0;
  background: var(--surface);
}

.problem-solution-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: stretch;
}

.problem-card, .solution-card {
  background: var(--bg);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 20px;
  padding: 32px;
  position: relative;
  height: 100%;
}

.problem-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 20px;
  background: linear-gradient(90deg, rgba(239, 68, 68, 0.1) 0%, rgba(220, 38, 38, 0.1) 100%);
  pointer-events: none;
}

.solution-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 20px;
  background: linear-gradient(90deg, rgba(34, 197, 94, 0.1) 0%, rgba(22, 163, 74, 0.1) 100%);
  pointer-events: none;
}

.problem-badge {
  display: inline-block;
  background: #ef4444;
  color: white;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 16px;
}

.solution-badge {
  display: inline-block;
  background: #22c55e;
  color: white;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 16px;
}

.problem-card h2, .solution-card h2 {
  font-size: 24px;
  margin: 0 0 16px;
  position: relative;
  z-index: 1;
}

.problem-card p, .solution-card p {
  color: var(--muted);
  margin: 0;
  position: relative;
  z-index: 1;
  line-height: 1.6;
}

/* Responsive table */
@media (max-width: 1024px) {
  .comparison-table {
    overflow-x: auto;
  }
  
  .table-header,
  .table-row {
    min-width: 800px;
  }
}

@media (max-width: 768px) {
  .comparison-title {
    font-size: 24px;
    margin-bottom: 32px;
  }
  
  .feature-column,
  .package-column,
  .feature-cell,
  .package-cell {
    padding: 16px;
  }
  
  .package-column h3 {
    font-size: 16px;
  }
  
  .package-price {
    font-size: 14px;
  }
  
  .feature-icon {
    font-size: 16px;
    width: 20px;
  }
}
