    :root{
      --blue:#0E2A47;         /* brand deep navy */
      --blue-2:#294767;       /* muted blue */
      --ink:#0b1220;          /* text */
      --muted:#5b6677;        /* secondary text */
      --line:#e6ecf3;         /* borders */
      --panel:#ffffff;        /* cards */
      --page:#ffffff;         /* page background */
      --tint:#F7FAFF;         /* light blue tint sections */
      --accent:#E8652F;       /* brand orange */
      --accent-2:#d25823;     /* hover */
      --radius:16px;
      --shadow:0 10px 22px rgba(14,42,71,.10);
      --space-1:10px; --space-2:16px; --space-3:24px; --space-4:36px; --space-5:56px; --space-6:90px;
    }
    *{box-sizing:border-box}
    html,body{margin:0;padding:0;background:var(--page);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;scroll-behavior:smooth}
    img{max-width:100%;display:block}
    a{color:inherit;text-decoration:none}
    .container{max-width:1120px;margin:0 auto;padding:0 20px}

    /* TYPOGRAPHY */
    .h1{font-size:52px;line-height:1.05;margin:0 0 var(--space-2);font-weight:900;color:var(--blue)}
    .h2{font-size:36px;line-height:1.12;margin:0 0 var(--space-2);font-weight:800;color:var(--blue)}
    .h3{font-size:20px;line-height:1.28;margin:0 0 6px;font-weight:800;color:var(--blue)}
    .lead{font-size:18px;color:var(--ink);opacity:.9}
    .muted{color:var(--muted)}

    /* BUTTONS */
    .btn{display:inline-flex;align-items:center;gap:10px;border:none;background:var(--accent);color:#fff;padding:14px 20px;border-radius:999px;font-weight:800;box-shadow:0 8px 18px rgba(232,101,47,.22);transition:transform .18s ease, box-shadow .18s ease}
    .btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(232,101,47,.30);background:var(--accent-2)}
    .btn.text{background:transparent;color:var(--blue);padding:0;border-radius:0;box-shadow:none}
    .btn-sm{padding:10px 14px;border-radius:999px;font-weight:800}

    /* PROMO BANNER */
    .promo{background:linear-gradient(90deg,#F8FBFF 0%, #FFF6EF 100%);border-bottom:1px solid var(--line)}
    .promo-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;height:48px}
    .promo-copy{color:var(--blue);font-weight:800;font-size:14px}
    .promo-actions{display:flex;align-items:center;gap:10px}
    .promo-commercial{font-weight:800;color:var(--accent)}
    @media (max-width:880px){.promo-inner{flex-direction:column;height:auto;padding:10px 0}}

    /* HEADER */
    header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line)}
    .nav{display:flex;align-items:center;justify-content:space-between;height:72px}
    .brand{display:flex;align-items:center;gap:12px}
    .wordmark{font-weight:900;color:var(--blue)}
    .nav a{color:var(--blue-2);font-weight:700;margin:0 10px}
    .nav a:hover{color:var(--blue)}

    /* Dropdown */
    .nav-items{display:flex;align-items:center;gap:6px}
    .has-dropdown{position:relative}
    .has-dropdown>a{display:inline-flex;align-items:center;gap:6px}
    .caret{border:solid var(--blue-2);border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(45deg);margin-top:-2px}
    .dropdown{position:absolute;top:100%;left:0;min-width:250px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 36px rgba(14,42,71,.14);padding:8px;display:none;z-index:1000}
    .dropdown a{display:block;padding:10px 12px;border-radius:8px;color:var(--blue-2)}
    .dropdown a:hover,.dropdown a:focus{background:#F7FAFF;color:var(--blue);outline:none}
    .has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{display:block}

    .section{padding:var(--space-6) 0}
    .panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}

    /* HERO — white canvas + light gradient blobs */
    .hero{position:relative;padding:var(--space-6) 0 var(--space-5);background:#fff;color:var(--blue);overflow:hidden}
    .hero-wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}
    .trust{display:flex;gap:10px;flex-wrap:wrap;margin:var(--space-2) 0}
    .chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:700;color:var(--blue)}

    .blobs{position:absolute;inset:-10% -10% -10% -10%;pointer-events:none}
    .blob{position:absolute;width:560px;height:560px;border-radius:50%;filter:blur(48px);opacity:.14}
    .blob.b1{left:-160px;top:-160px;background:radial-gradient(circle at 30% 30%, #FFE6D6 0%, #FFD9C4 42%, transparent 70%);animation:float1 18s ease-in-out infinite alternate}
    .blob.b2{right:-180px;top:-20px;background:radial-gradient(circle at 30% 30%, #EAF2FD 0%, #DDEAFB 45%, transparent 70%);animation:float2 22s ease-in-out infinite alternate}
    .blob.b3{left:40%;bottom:-300px;width:720px;height:720px;background:radial-gradient(circle at 30% 30%, #FFE6D6 0%, #FFD9C4 45%, transparent 70%);animation:float3 26s ease-in-out infinite alternate}
    @keyframes float1{from{transform:translate(0,0)}to{transform:translate(60px,40px)}}
    @keyframes float2{from{transform:translate(0,0)}to{transform:translate(-40px,30px)}}
    @keyframes float3{from{transform:translate(0,0)}to{transform:translate(30px,-20px)}}

    /* PREMIUM FORM */
    .form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 22px 18px;box-shadow:0 12px 28px rgba(14,42,71,.10);opacity:0;transform:translateY(8px);animation:formIn .44s ease .15s forwards}
    @keyframes formIn{to{opacity:1;transform:none}}
    .form-title{margin:0 0 4px;font:800 20px/1.2 Inter;color:var(--blue)}
    .form-sub{margin:0 0 14px;font-size:13px;color:var(--muted)}
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .f-group{display:flex;flex-direction:column;gap:8px}
    .f-group label{font:700 13px/1 Inter;color:var(--blue)}
    .f-group input,.f-group select,.f-group textarea{height:48px;padding:12px 14px;border-radius:12px;border:1px solid #dbe4ef;background:#fff;font-size:15px;transition:border-color .2s ease, box-shadow .2s ease, transform .02s ease}
    .f-group textarea{height:auto;resize:vertical;min-height:92px}
    .f-group input:focus,.f-group select:focus,.f-group textarea:focus{border-color:#bfd1ea;box-shadow:0 0 0 4px rgba(41,71,103,.10)}
    .f-group input:hover,.f-group select:hover,.f-group textarea:hover{border-color:#cdd8e7}
    .f-full{grid-column:1 / -1}
    .btn-block{width:100%;margin-top:2px}
    .form-legal{grid-column:1 / -1;margin:4px 0 0;font-size:12px;color:var(--muted)}
    @media (max-width:720px){.form-grid{grid-template-columns:1fr}}

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

    /* CARDS */
    .card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;transition:transform .18s ease, box-shadow .18s ease}
    .card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(14,42,71,.12)}

    /* SERVICES UPGRADE */
    #services{background:var(--tint)}
    .card.service{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
    .card.service .badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#FFF3EC;color:var(--accent);font-weight:800;font-size:12px;width:max-content}

    /* PROCESS — styled steps */
    .process-wrap{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}
    .step{position:relative;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}
    .step::before{content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:6px;border-radius:14px 0 0 14px;background:linear-gradient(180deg,#EAF2FD,#FFE6D6)}
    .step h3{display:flex;align-items:center;gap:10px}
    .step .num{width:28px;height:28px;border-radius:999px;display:inline-grid;place-items:center;background:#F7FAFF;color:var(--blue);font:800 13px/1 Inter;border:1px solid var(--line)}

    /* BEFORE/AFTER */
    .ba{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--line)}
    .ba img{width:100%;height:420px;object-fit:cover}
    .ba .after{position:absolute;inset:0;overflow:hidden}
    .ba .after img{position:absolute;top:0;left:0;width:100%;height:100%}
    .ba .divider{position:absolute;top:0;bottom:0;width:2px;background:#fff;left:50%;box-shadow:0 0 0 2px rgba(14,42,71,.18)}
    .ba input[type=range]{-webkit-appearance:none;appearance:none;width:100%;position:absolute;bottom:12px;left:0;background:transparent}
    .ba input::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:var(--accent);box-shadow:0 4px 12px rgba(232,101,47,.35);border:3px solid #fff}

    /* REVIEWS with avatars */
    .review{display:grid;grid-template-columns:56px 1fr;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
    .review img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
    .review h4{margin:0;font:800 16px/1.2 Inter;color:var(--blue)}
    .review p{margin:6px 0 0;color:var(--ink);opacity:.9}

    /* COMPARE MATRIX */
    #compare .h2{margin-bottom:8px}
    #compare .sub{color:var(--muted);margin:0 0 18px}
    .matrix{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
    .matrix table{width:100%;border-collapse:collapse}
    .matrix th,.matrix td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left}
    .matrix thead th{background:linear-gradient(180deg,#f7faff,#eef4fb);color:var(--blue);font-weight:900}
    .matrix td:first-child{font-weight:800;color:var(--blue)}
    .ok{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#17823b}
    .ok::before{content:"✓";font-weight:900}
    .bad{align-items:center;gap:8px;font-weight:800;color:#b91c1c}
    .bad::before{content:"✕";font-weight:900}
    .matrix tr:nth-child(even) td{background:#fafbfd}
    @media (max-width:720px){.matrix table,.matrix thead,.matrix tbody,.matrix th,.matrix td,.matrix tr{display:block}.matrix thead{display:none}.matrix tr{border-bottom:1px solid var(--line)}.matrix td{display:flex;justify-content:space-between;gap:12px}.matrix td::before{content:attr(data-label);font-weight:900;color:var(--blue)}}

    /* PORTFOLIO / GALLERY */
    .gallery-item{border-radius:14px;overflow:hidden;border:1px solid var(--line);box-shadow:0 6px 14px rgba(14,42,71,.06);transition:transform .2s ease,box-shadow .2s ease}
    .gallery-item:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(14,42,71,.12)}
    .gallery-item img{width:100%;height:260px;object-fit:cover}

    /* TEAM */
    .team-member{text-align:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 6px 14px rgba(14,42,71,.06);transition:transform .2s}
    .team-member:hover{transform:translateY(-4px)}
    .team-member img{width:92px;height:92px;border-radius:50%;margin-bottom:10px;object-fit:cover;border:2px solid var(--line)}
    .team-member h4{margin:6px 0 0;font:800 16px/1.2 Inter;color:var(--blue)}

    /* MINI CTA */
    .mini-cta{background:linear-gradient(90deg,#FFF6EF,#F8FBFF);padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .mini-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}
    .mini-cta span{font-weight:800;color:var(--blue);font-size:18px}

    /* LOGO ROW */
    .logos{display:flex;flex-wrap:wrap;gap:28px;justify-content:center;align-items:center}
    .logos img{height:42px;opacity:.6;transition:opacity .2s}
    .logos img:hover{opacity:1}

    /* REVEAL + stagger */
    .reveal{opacity:0;transform:translateY(10px);transition:opacity .5s ease, transform .5s ease}
    .reveal.visible{opacity:1;transform:none}
    .reveal[data-d="1"]{transition-delay:.05s}
    .reveal[data-d="2"]{transition-delay:.10s}
    .reveal[data-d="3"]{transition-delay:.15s}

    /* STICKY CTA */
    .sticky-cta{position:fixed;left:0;right:0;bottom:-80px;z-index:70;transition:bottom .4s ease}
    .sticky-cta.show{bottom:18px}
    .sticky-cta .inner{max-width:860px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px rgba(14,42,71,.18);display:flex;align-items:center;justify-content:space-between;padding:10px 14px}

    /* ACCESSIBILITY */
    @media (prefers-reduced-motion: reduce){.reveal{transition:none}.blob{animation:none}}

    /* RESPONSIVE */
    @media (max-width: 980px){.hero-wrap{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}.h1{font-size:38px}}
