:root{
  --bg:#f6f8fc; --card:#ffffffaa; --border:rgba(13,110,253,.15);
  --text:#1b263b; --muted:#6c757d; --brand:#0d6efd; --accent:#e6b400;
  --glass:blur(10px) saturate(130%);
}
body{background:radial-gradient(1200px 600px at 10% -10%,#e9f1ff 0%,#f6f8fc 40%,#f6f8fc 100%) no-repeat fixed; color:var(--text)}
.navbar{background:#fff; box-shadow:0 6px 30px rgb(13 110 253 / 6%)}
.hero{padding:110px 0 70px; position:relative}
.hero-blob{position:absolute; inset:-60px -40px auto auto; width:420px; height:420px; background:radial-gradient(circle at 30% 30%, #aad4ff 0%, transparent 55%), radial-gradient(circle at 80% 70%, #ffe69c 0%, transparent 50%); filter:blur(40px); opacity:.6; pointer-events:none}
.glass{backdrop-filter:var(--glass); -webkit-backdrop-filter:var(--glass); border:1px solid var(--border); background:var(--card); box-shadow:0 20px 40px rgba(16,24,40,.08)}
.rounded-2xl{border-radius:22px}
.btn-brand{background:var(--brand); color:#fff; border:none}
.btn-brand:hover{opacity:.95}
.section{padding:80px 0}
.icon-badge{width:44px; height:44px; display:grid; place-items:center; border-radius:12px; background:linear-gradient(135deg,#e9f2ff,#fff5cc); border:1px solid var(--border); color:#0d6efd}
.card-price{font-size:2rem; font-weight:800}
.card small{color:var(--muted)}
.price-card{transition:transform .25s ease, box-shadow .25s ease}
.price-card:hover{transform:translateY(-4px); box-shadow:0 30px 60px rgba(13,110,253,.12)}
.pill{font-size:.8rem; padding:.25rem .6rem; border-radius:999px; border:1px solid var(--border); background:#fff}
.select{width:100%; border-radius:12px; border:1px solid var(--border); padding:.65rem .9rem}
.list-check{list-style:none; padding:0; margin:0}
.list-check li{margin:.4rem 0; display:flex; gap:.5rem; align-items:flex-start}
.list-check .ci{color:#198754}
.fade-up{opacity:0; transform:translateY(12px); animation:fadeUp .7s ease forwards}
.fade-up.delay-1{animation-delay:.08s} .fade-up.delay-2{animation-delay:.16s} .fade-up.delay-3{animation-delay:.24s}
@keyframes fadeUp{to{opacity:1; transform:none}}
footer{background:#fff}
.lang-switch .btn{border:1px solid var(--border)}

/* Portfolio */
.portfolio-hero{padding:90px 0 30px}
.gallery{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
@media (max-width:992px){.gallery{grid-template-columns:repeat(2,1fr)}}
@media (max-width:576px){.gallery{grid-template-columns:1fr}}
.gallery figure{position:relative; overflow:hidden; border-radius:16px; border:1px solid var(--border); background:#fff}
.gallery img{width:100%; height:100%; object-fit:cover; display:block; transform:scale(1); transition:transform .35s ease, filter .35s ease}
.gallery figure:hover img{transform:scale(1.04); filter:brightness(1.03)}
.gallery figcaption{position:absolute; inset:auto 0 0 0; padding:8px 12px; font-size:.9rem; color:#fff; background:linear-gradient(180deg, transparent, rgba(0,0,0,.55));}