/* Minimal Bootstrap overrides */
.ct-topbar {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
}

.ct-brand {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  text-decoration: none;
}

.ct-brand img {
  width: 28px;
  height: 28px;
}

.ct-lang a {
  color: #475569;
  font-size: .875rem;
  margin-left: .75rem;
  text-decoration: none;
}

.ct-lang a.is-active,
.ct-lang a[aria-current="true"] {
  color: #0f172a;
  font-weight: 600;
  border-bottom: 2px solid #2563eb;
  padding-bottom: 2px;
}
    :root{
      --bg:#ffffff;
      --text:#0f172a;
      --muted:#475569;
      --border:#e5e7eb;
      --brand:#2563eb;
      --brand-soft:#dbeafe;
      --max:1120px;
      --radius:14px;
    }

    *{box-sizing:border-box}
    body{
      margin:0;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
      background:var(--bg);
      color:var(--text);
      line-height:1.55;
    }
    a{color:var(--brand);text-decoration:none}
    a:hover{text-decoration:underline}

    .container{
      width:min(var(--max), calc(100% - 40px));
      margin:0 auto;
    }

    /* Header */
    header{
      position:sticky;
      top:0;
      background:#fff;
      border-bottom:1px solid var(--border);
      z-index:10;
    }
    .header-inner{
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:16px 0;
    }
    .brand{
      font-weight:700;
      font-size:18px;
      letter-spacing:.2px;
      color:var(--text);
    }
    
    nav{display:flex;gap:20px;font-size:14px}

    .lang-switch{
      display:flex;
      gap:12px;
      font-size:13px;
    }
    .lang-switch a{
      color:var(--muted);
      text-decoration:none;
    }
    .lang-switch a[aria-current="true"]{
      color:var(--text);
      font-weight:600;
      border-bottom:2px solid var(--brand);
      padding-bottom:2px;
    }

    nav a{color:var(--muted)}
    nav a:hover{color:var(--text)}

    /* Hero */
    .hero{
      padding:64px 0 56px;
    }
    .hero h1{
      font-size:clamp(32px,4vw,46px);
      line-height:1.1;
      margin:0 0 16px;
      max-width:16ch;
    }
    .hero p{
      font-size:18px;
      color:var(--muted);
      max-width:60ch;
      margin:0 0 28px;
    }
    .hero-actions{
      display:flex;
      gap:16px;
      flex-wrap:wrap;
    }
    .btn{
      display:inline-block;
      padding:12px 20px;
      border-radius:999px;
      font-size:14px;
      font-weight:600;
    }
    .btn-primary{
      background:var(--brand);
      color:#fff;
    }
    .btn-secondary{
      background:var(--brand-soft);
      color:var(--brand);
    }

    /* Sections */
    section{
      padding:56px 0;
      border-top:1px solid var(--border);
    }
    h2{
      font-size:26px;
      margin:0 0 12px;
    }
    .section-intro{
      color:var(--muted);
      max-width:82ch;
      margin-bottom:32px;
    }

    /* Grid */
    .grid-3{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:32px;
    }
    .grid-2{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:32px;
    }

    .item h3{
      margin:0 0 6px;
      font-size:17px;
    }
    .item p{
      margin:0;
      color:var(--muted);
      font-size:15px;
    }

    .service-head{
      display:flex;
      align-items:flex-start;
      gap:10px;
      margin-bottom:6px;
    }
    .ico{
      width:22px;
      height:22px;
      flex:0 0 auto;
      fill: none;
      stroke: var(--brand);
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
      margin-top:2px;
    }

    /* Blog */
    .blog-grid{ gap:28px; }
    .post{ margin:0; }
    .post-img{
      width:100%;
      height:auto;
      display:block;
      border:1px solid var(--border);
      border-radius:12px;
    }
    .post-meta{
      margin-top:12px;
      font-size:13px;
      color:var(--muted);
    }
    .post-title{
      margin:8px 0 8px;
      font-size:18px;
      line-height:1.25;
    }
    .post-title a{ color: var(--text); text-decoration:none; }
    .post-title a:hover{ text-decoration:underline; }
    .post-excerpt{
      margin:0;
      color:var(--muted);
      font-size:15px;
    }


    /* Lists */
    .inline-list{
      display:flex;
      flex-wrap:wrap;
      gap:12px 24px;
      font-size:15px;
      color:var(--muted);
    }

    /* Contact */
    form{
      max-width:520px;
      display:grid;
      gap:16px;
    }
    label{
      font-size:13px;
      color:var(--muted);
    }
    input, textarea, select{
      width:100%;
      padding:12px 14px;
      font-size:15px;
      border-radius:10px;
      border:1px solid var(--border);
      font-family:inherit;
    }
    textarea{min-height:140px}

    footer{
      border-top:1px solid var(--border);
      padding:32px 0;
      color:var(--muted);
      font-size:14px;
    }
    .footer-inner{
      display:flex;
      justify-content:space-between;
      flex-wrap:wrap;
      gap:20px;
    }

    @media(max-width:900px){
      .grid-3{grid-template-columns:1fr 1fr}
    }
    @media(max-width:640px){
      nav{display:none}
      .grid-3,.grid-2{grid-template-columns:1fr}
      .hero h1{max-width:none}
    }
.block-views{
padding: 56px 0;
    border-top: 1px solid var(--border);
}
.post img{
    width: 100%;
    height: auto;
    display: block;
    border: 1px solid var(--border);
    border-radius: 12px;
}
