:root{--primary:#2563eb;--secondary:#0f172a;--accent:#06b6d4;--text:#334155;--light:#f8fafc;--white:#fff;--border:#e2e8f0;--shadow:0 20px 45px rgba(15,23,42,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.7}a{text-decoration:none;color:inherit}.container{width:min(1180px,92%);margin:auto}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:40px;font-weight:700;border:1px solid transparent;transition:.3s}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:white}.btn-outline{border-color:var(--primary);color:var(--primary);background:white}.btn-light{background:white;color:var(--primary)}.section{padding:90px 0}.section.light,.light{background:var(--light)}.center{text-align:center}.eyebrow,.section-title span{color:var(--primary);font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:1px}.hero,.page-hero,.home-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:white}.home-hero{padding:150px 0}.page-hero{padding:115px 0;text-align:center}.hero h1,.page-hero h1{font-size:clamp(38px,7vw,76px);line-height:1.05;margin:14px 0}.hero p,.page-hero p{font-size:18px;max-width:760px;opacity:.92}.page-hero p{margin:auto}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}.section-title{text-align:center;max-width:720px;margin:0 auto 50px}.section-title h2{font-size:42px;color:var(--secondary);margin:8px 0}.card-grid,.portfolio-grid,.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.feature-card,.portfolio-card,.price-card{background:white;border:1px solid var(--border);border-radius:24px;padding:34px;box-shadow:var(--shadow);transition:.3s}.feature-card:hover,.portfolio-card:hover,.price-card:hover{transform:translateY(-8px)}.icon{width:64px;height:64px;border-radius:18px;background:#eff6ff;display:grid;place-items:center;font-size:30px}.feature-card h3,.portfolio-card h3,.price-card h3{color:var(--secondary);font-size:24px;margin:20px 0 10px}.feature-card a{color:var(--primary);font-weight:800}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.split h2{font-size:42px;color:var(--secondary);line-height:1.15}.check-list{padding:0;list-style:none}.check-list li{margin:12px 0;padding-left:30px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:900}.stats-box{display:grid;grid-template-columns:1fr;gap:20px}.stats-box div{background:white;border-radius:22px;padding:35px;box-shadow:var(--shadow)}.stats-box strong{display:block;font-size:42px;color:var(--primary)}.thumb{height:190px;border-radius:18px;background:linear-gradient(135deg,#dbeafe,#cffafe)}.price-card{text-align:center}.price-card strong{display:block;font-size:48px;color:var(--primary);margin:15px 0}.price-card.popular{border:2px solid var(--primary);transform:scale(1.03)}.form-wrap{max-width:520px}.auth-form{background:white;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:24px;padding:35px}.auth-form label{display:block;font-weight:700;margin:15px 0 8px}.auth-form input{width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:12px}.auth-form button{width:100%;margin-top:22px}.docs-layout{display:grid;grid-template-columns:260px 1fr;gap:40px}.docs-sidebar{position:sticky;top:100px;align-self:start;background:white;border:1px solid var(--border);border-radius:20px;padding:20px}.docs-sidebar a{display:block;padding:12px 14px;border-radius:12px;color:var(--secondary);font-weight:700}.docs-sidebar a:hover{background:#eff6ff;color:var(--primary)}.docs-content{background:white;border:1px solid var(--border);border-radius:24px;padding:35px}.docs-content h2{color:var(--secondary);margin-top:25px}

.contact-section{
  padding:100px 0;
  background:#f8fafc;
}

.contact-wrapper{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:50px;
  align-items:start;
}

.contact-info,
.contact-form-area{
  background:#fff;
  padding:40px;
  border-radius:24px;
  box-shadow:0 20px 45px rgba(15,23,42,.08);
}

.contact-info h2{
  font-size:38px;
  color:#0f172a;
  margin:12px 0 18px;
}

.contact-box{
  display:flex;
  gap:18px;
  margin-top:25px;
  padding:20px;
  border-radius:18px;
  background:#f8fafc;
}

.contact-icon{
  width:55px;
  height:55px;
  border-radius:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:#fff;
  font-size:24px;
  flex-shrink:0;
}

.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.form-group{
  margin-bottom:22px;
}

.form-group label{
  display:block;
  font-weight:700;
  margin-bottom:8px;
  color:#0f172a;
}

.form-group input,
.form-group select,
.form-group textarea{
  width:100%;
  padding:15px 18px;
  border:1px solid #dbe4ee;
  border-radius:14px;
  font-size:15px;
  outline:none;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
  border-color:#2563eb;
  box-shadow:0 0 0 4px rgba(37,99,235,.12);
}

.contact-btn{
  width:100%;
  border:none;
  padding:17px;
  border-radius:14px;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.contact-success{
  display:none;
  margin-top:18px;
  padding:15px;
  border-radius:12px;
  background:#dcfce7;
  color:#166534;
  font-weight:700;
}

@media(max-width:991px){
  .contact-wrapper{
    grid-template-columns:1fr;
  }
}

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

  .contact-info,
  .contact-form-area{
    padding:25px;
  }
}


/* =========================
   BLOG PAGE
========================= */

.blog-section{
  padding:100px 0;
  background:#f8fafc;
}

.blog-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

.blog-card{
  display:block;
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 20px 45px rgba(15,23,42,.08);
  transition:.3s;
  text-decoration:none;
  color:#0f172a;
}

.blog-card:hover{
  transform:translateY(-8px);
}

.blog-img{
  height:220px;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:60px;
}

.blog-content{
  padding:28px;
}

.blog-date{
  display:block;
  color:#2563eb;
  font-size:14px;
  font-weight:800;
  margin-bottom:12px;
}

.blog-content h3{
  font-size:24px;
  line-height:1.3;
  color:#0f172a;
  margin:0 0 14px;
}

.blog-content p{
  color:#64748b;
  margin-bottom:18px;
}

.blog-read{
  color:#2563eb;
  font-weight:800;
}

@media(max-width:991px){
  .blog-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:576px){
  .blog-grid{
    grid-template-columns:1fr;
  }

  .blog-img{
    height:180px;
  }
}


.faq-wrapper{
  max-width:900px;
  margin:0 auto;
}

.faq-item{
  background:#fff;
  border-radius:18px;
  margin-bottom:18px;
  box-shadow:0 12px 35px rgba(15,23,42,.08);
  overflow:hidden;
}

.faq-question{
  width:100%;
  border:none;
  background:#fff;
  padding:22px 26px;
  text-align:left;
  font-size:18px;
  font-weight:800;
  color:#0f172a;
  cursor:pointer;
  position:relative;
}

.faq-question:after{
  content:"+";
  position:absolute;
  right:26px;
  top:50%;
  transform:translateY(-50%);
  font-size:28px;
  color:#2563eb;
}

.faq-item.active .faq-question:after{
  content:"−";
}

.faq-answer{
  display:none;
  padding:0 26px 24px;
}

.faq-answer p{
  margin:0;
  color:#64748b;
  font-size:16px;
}

.faq-item.active .faq-answer{
  display:block;
}


/* =========================
   PRIVACY POLICY PAGE
========================= */

.policy-section{
  padding:100px 0;
  background:#f8fafc;
}

.policy-layout{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:40px;
  align-items:start;
}

.policy-sidebar{
  position:sticky;
  top:110px;
  background:#fff;
  padding:24px;
  border-radius:22px;
  box-shadow:0 20px 45px rgba(15,23,42,.08);
}

.policy-sidebar a{
  display:block;
  padding:13px 16px;
  margin-bottom:8px;
  border-radius:12px;
  color:#0f172a;
  font-weight:700;
  text-decoration:none;
}

.policy-sidebar a:hover,
.policy-sidebar a.active{
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:#fff;
}

.policy-content{
  background:#fff;
  padding:45px;
  border-radius:24px;
  box-shadow:0 20px 45px rgba(15,23,42,.08);
}

.policy-content h2{
  color:#0f172a;
  font-size:30px;
  margin:35px 0 16px;
}

.policy-content h2:first-of-type{
  margin-top:20px;
}

.policy-content p{
  color:#475569;
  font-size:17px;
  line-height:1.8;
  margin-bottom:18px;
}

.policy-content ul{
  padding-left:22px;
  margin-bottom:24px;
}

.policy-content li{
  color:#475569;
  font-size:16px;
  margin-bottom:10px;
}

.policy-btn{
  display:inline-flex;
  margin-top:25px;
  padding:14px 28px;
  border-radius:40px;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:#fff;
  font-weight:800;
  text-decoration:none;
}

.policy-btn:hover{
  color:#fff;
  transform:translateY(-2px);
}

/* Responsive */
@media(max-width:991px){
  .policy-layout{
    grid-template-columns:1fr;
  }

  .policy-sidebar{
    position:relative;
    top:auto;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
  }

  .policy-sidebar a{
    margin-bottom:0;
  }
}

@media(max-width:576px){
  .policy-content{
    padding:25px;
  }

  .policy-content h2{
    font-size:24px;
  }

  .policy-sidebar{
    grid-template-columns:1fr;
  }
}