/* =========================================================
   Home page
   ========================================================= */

.hero{
  position:relative;
  background:#EAF1F8 url("../images/hero-bg.jpg") center right / cover no-repeat;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(90deg, #F3F7FC 0%, #F3F7FCee 34%, rgba(243,247,252,.55) 52%, rgba(243,247,252,.05) 66%);
}
@media (max-width:900px){
  .hero::before{ background:linear-gradient(180deg, #F3F7FCf5 42%, rgba(243,247,252,.86) 100%); }
}
.hero-inner{
  position:relative; z-index:1;
  padding-block:76px 92px;
  max-width:620px;
}
@media (max-width:900px){ .hero-inner{ max-width:100%; padding-block:52px 340px; } }
.hero h1{ margin-bottom:20px; }
.hero .lede{ margin-bottom:34px; max-width:520px; }
.hero-actions{ display:flex; gap:14px; flex-wrap:wrap; }

.hero-tags{ display:flex; gap:10px; flex-wrap:wrap; margin-top:40px; }
.hero-tags .tag{
  font-family:var(--font-mono); font-size:.78rem; letter-spacing:.04em;
  background:#fff; border:1px solid var(--border); color:var(--text-secondary);
  padding:8px 13px; border-radius:var(--radius-pill); display:inline-flex; align-items:center; gap:7px;
}
.hero-tags .tag svg{ color:var(--green-500); }

/* What we handle — quick strip */
.handle-strip{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
@media (max-width:900px){ .handle-strip{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .handle-strip{ grid-template-columns:1fr; } }
.handle-card{ padding:26px 22px; text-align:left; }
.handle-card .service-icon{ margin-bottom:16px; }
.handle-card h3{ font-size:1rem; margin-bottom:6px; }
.handle-card p{ font-size:.88rem; color:var(--text-secondary); line-height:1.6; }

/* About teaser */
.about-teaser{ display:grid; grid-template-columns:.95fr 1.05fr; gap:56px; align-items:center; }
@media (max-width:900px){ .about-teaser{ grid-template-columns:1fr; gap:36px; } }
.about-teaser-media{ position:relative; }
.about-teaser-media img{ border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); }
.about-teaser-media .tab-label{ position:absolute; top:20px; left:20px; }

/* Pricing teaser */
.price-mini-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
@media (max-width:980px){ .price-mini-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .price-mini-grid{ grid-template-columns:1fr; } }
.price-mini{ padding:28px 24px; display:flex; flex-direction:column; gap:14px; }
.price-mini .tab-label{ align-self:flex-start; }
.price-mini .amount{ font-family:var(--font-mono); font-size:1.9rem; font-weight:600; color:var(--brand); display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
.price-mini .amount span{ font-size:.78rem; font-weight:600; color:var(--text-secondary); text-transform:uppercase; letter-spacing:.04em; }
.price-mini p{ font-size:.88rem; color:var(--text-secondary); line-height:1.6; flex:1; }

/* Process */
.process-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
@media (max-width:980px){ .process-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .process-grid{ grid-template-columns:1fr; } }
.process-card{ padding:28px 24px; }
.process-card .step-index{ margin-bottom:18px; }
.process-card h3{ font-size:1.05rem; margin-bottom:8px; }
.process-card p{ font-size:.9rem; color:var(--text-secondary); line-height:1.65; }
