/* ===== decorative menu ===== */
    .navlinks{
      gap:10px;
      padding:0;
      border:none;
      border-radius:0;
      background:transparent;
      box-shadow:none;
      flex-wrap:wrap;
    }

    .navlinks a{
      position:relative;
      padding:11px 14px 11px 34px;
      border-radius:18px;
      border:1px solid rgba(19,34,24,.08);
      background:rgba(255,255,255,.88);
      box-shadow:0 10px 24px rgba(19,34,24,.05);
      overflow:hidden;
    }

    .navlinks a::before{
      content:"";
      position:absolute;
      left:12px;
      top:50%;
      width:12px;
      height:12px;
      transform:translateY(-50%);
      opacity:.95;
    }

    .navlinks a::after{
      content:"";
      position:absolute;
      right:-12px;
      top:-12px;
      width:38px;
      height:38px;
      border-radius:50%;
      opacity:.08;
      transition:.25s ease;
    }

    .navlinks a:hover::after,
    .navlinks a.active::after{
      transform:scale(1.15);
      opacity:.14;
    }

    .navlinks a.nav-home::before{background:#78d66e;border-radius:50%}
    .navlinks a.nav-home::after{background:#78d66e}

    .navlinks a.nav-avito::before{background:#7bd4ff; clip-path:polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%)}
    .navlinks a.nav-avito::after{background:#7bd4ff}

    .navlinks a.nav-yandex::before{background:#ff8f8f; border-radius:4px}
    .navlinks a.nav-yandex::after{background:#ff8f8f}

    .navlinks a.nav-google::before{background:#ffd36d; clip-path:polygon(50% 0%, 100% 40%, 82% 100%, 18% 100%, 0% 40%)}
    .navlinks a.nav-google::after{background:#ffd36d}

    .navlinks a.nav-smm::before{background:#c5a1ff; border-radius:50% 50% 50% 10%}
    .navlinks a.nav-smm::after{background:#c5a1ff}

    .navlinks a.nav-training::before{background:#8fe5cc; clip-path:polygon(50% 0%, 100% 100%, 0% 100%)}
    .navlinks a.nav-training::after{background:#8fe5cc}

    .navlinks a.nav-business::before{background:#ffa7d1; clip-path:polygon(25% 0%, 100% 0%, 75% 100%, 0% 100%)}
    .navlinks a.nav-business::after{background:#ffa7d1}

    .navlinks a.nav-cases::before{background:#ffc68b; border-radius:6px 2px 6px 2px}
    .navlinks a.nav-cases::after{background:#ffc68b}

    .navlinks a.nav-blog::before{background:#b6f075; clip-path:polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%)}
    .navlinks a.nav-blog::after{background:#b6f075}

    




/* ===== adaptive containers for Darya photo ===== */
    .photo-wrap{
      height:auto !important;
      aspect-ratio: 4 / 5;
      min-height:0;
      background:linear-gradient(180deg, #f4f7f2 0%, #eef4ea 100%);
    }

    .photo-wrap img{
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center center;
    }

    .hero-card{
      min-height:auto;
    }

    .business-photo{
      min-height:0 !important;
      aspect-ratio: 4 / 5;
    }

    .business-photo img{
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center center;
    }

    




/* ===== replace photos in service cards with graphics ===== */
    .service-visual{
      height:170px;
      border-radius:24px;
      overflow:hidden;
      margin-bottom:18px;
      border:1px solid rgba(19,34,24,.08);
      background:linear-gradient(180deg, #fcfefd 0%, #f2f8f1 100%);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
    }

    .service-visual.graphic{
      display:flex;
      align-items:center;
      justify-content:center;
      padding:0;
    }

    .service-visual.graphic svg{
      width:100%;
      height:100%;
      display:block;
    }

    @media (max-width:820px){
      .photo-wrap{
        aspect-ratio: 5 / 6;
      }

      .business-photo{
        aspect-ratio: 5 / 6;
      }
    }


    @media (max-width:1060px){
      .team-grid,
      .business-stack{
        grid-template-columns:1fr;
      }
      .business-photo{
        min-height:430px;
      }
    }

    @media (max-width:720px){
      .deliverables{
        grid-template-columns:1fr;
      }
      .business-photo{
        min-height:360px;
      }
    }


    @media (max-width:1060px){
      .navlinks{display:none}
      .burger{display:inline-block}
      .hero-grid,.page-hero-grid,.split,.contact-wrap{grid-template-columns:1fr}
      .hero-card{min-height:auto}
      .page-side{display:grid; grid-template-columns:1fr 1fr}
      .grid-4{grid-template-columns:repeat(2, minmax(0,1fr))}
    }

    @media (max-width:820px){
      .container{width:min(100% - 22px, var(--max))}
      .hero{padding-top:44px}
      .grid-3,.grid-2{grid-template-columns:1fr}
      .section-head{display:block}
      .section-head p{margin-top:14px}
      .page-side{grid-template-columns:1fr}
      .mini-metrics,.direction-mini,.case-result{grid-template-columns:1fr}
      .photo-wrap{height:280px}
      .hero-card{border-radius:28px; padding:16px}
      .page-title-card{padding:24px; border-radius:26px}
      .card{border-radius:24px; padding:20px}
      .floating-cta{right:12px; bottom:12px}
      .floating-cta a{width:50px; height:50px}
    }

    @media (max-width:560px){
      .nav{min-height:68px}
      .brand span{display:none}
      .nav-actions .btn{display:none}
      .hero-actions .btn,.section-actions .btn{width:100%}
      h1{font-size:44px}
      h2{font-size:34px}
      .grid-4{grid-template-columns:1fr}
      .footer-grid{display:grid}
    }

    




/* ===== more stylish menu override ===== */
    .topbar{
      background:rgba(255,255,255,.74);
      box-shadow:0 18px 54px rgba(19,34,24,.07);
    }

    .nav{
      min-height:86px;
    }

    .navlinks{
      position:relative;
      padding:8px;
      border:1px solid rgba(19,34,24,.08);
      border-radius:28px;
      background:
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.68));
      box-shadow:
        0 18px 46px rgba(19,34,24,.08),
        inset 0 1px 0 rgba(255,255,255,.82);
    }

    .navlinks::before{
      content:"";
      position:absolute;
      inset:5px;
      border-radius:23px;
      border:1px solid rgba(126,217,87,.12);
      pointer-events:none;
    }

    .navlinks a{
      min-height:42px;
      padding:11px 15px 11px 36px;
      border-radius:20px;
      border:1px solid transparent;
      background:transparent;
      box-shadow:none;
      color:#48614e;
      font-weight:850;
      letter-spacing:-.018em;
      isolation:isolate;
    }

    .navlinks a::before{
      left:14px;
      width:11px;
      height:11px;
      box-shadow:
        0 0 0 4px rgba(255,255,255,.72),
        0 8px 16px rgba(19,34,24,.08);
      z-index:1;
    }

    .navlinks a::after{
      right:6px;
      top:50%;
      width:30px;
      height:30px;
      transform:translateY(-50%) scale(.8);
      opacity:0;
      z-index:-1;
    }

    .navlinks a:hover{
      color:#122219;
      background:rgba(255,255,255,.78);
      border-color:rgba(19,34,24,.08);
      transform:translateY(-1px);
      box-shadow:0 10px 22px rgba(19,34,24,.06);
    }

    .navlinks a.active{
      color:#103414;
      background:
        linear-gradient(135deg, rgba(126,217,87,.30), rgba(255,255,255,.92));
      border-color:rgba(126,217,87,.34);
      box-shadow:
        0 14px 30px rgba(126,217,87,.16),
        inset 0 1px 0 rgba(255,255,255,.9);
    }

    .navlinks a.active::before{
      transform:translateY(-50%) scale(1.18);
      box-shadow:
        0 0 0 5px rgba(255,255,255,.86),
        0 0 0 8px rgba(126,217,87,.12),
        0 10px 20px rgba(19,34,24,.08);
    }

    .navlinks a.active::after,
    .navlinks a:hover::after{
      opacity:.18;
      transform:translateY(-50%) scale(1);
    }

    .nav-actions .btn-primary{
      box-shadow:
        0 18px 38px rgba(126,217,87,.28),
        inset 0 1px 0 rgba(255,255,255,.7);
    }

    @media (max-width:1060px){
      .nav{
        min-height:76px;
      }

      .mobile-panel{
        background:rgba(255,255,255,.72);
        backdrop-filter:blur(16px);
      }

      .mobile-links a{
        position:relative;
        overflow:hidden;
        box-shadow:0 10px 24px rgba(19,34,24,.04);
      }

      .mobile-links a::after{
        content:"";
        position:absolute;
        right:-18px;
        top:-18px;
        width:58px;
        height:58px;
        border-radius:50%;
        background:rgba(126,217,87,.10);
      }
    }


    




/* ==== reviews block ==== */
    .reviews-section{
      padding:54px 0;
    }

    .reviews-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0, 1fr));
      gap:16px;
    }

    .review-card{
      position:relative;
      overflow:hidden;
      padding:24px;
      border-radius:28px;
      background:rgba(255,255,255,.86);
      border:1px solid rgba(19,34,24,.08);
      box-shadow:var(--shadow);
      display:flex;
      flex-direction:column;
      min-height:270px;
    }

    .review-card::before{
      content:"“";
      position:absolute;
      right:18px;
      top:-18px;
      font-size:110px;
      line-height:1;
      color:rgba(126,217,87,.16);
      font-family:Georgia, serif;
      pointer-events:none;
    }

    .review-stars{
      color:var(--accent-2);
      letter-spacing:.18em;
      font-size:14px;
      font-weight:950;
      margin-bottom:18px;
    }

    .review-card p{
      color:#405745;
      font-size:16px;
      margin-bottom:22px;
      position:relative;
      z-index:1;
    }

    .review-author{
      margin-top:auto;
      padding-top:18px;
      border-top:1px solid rgba(19,34,24,.08);
    }

    .review-author strong{
      display:block;
      font-size:17px;
      letter-spacing:-.025em;
      margin-bottom:3px;
    }

    .review-author span{
      color:var(--muted);
      font-size:13px;
      font-weight:700;
    }

    .review-accent{
      background:
        radial-gradient(circle at 88% 8%, rgba(126,217,87,.20), transparent 12rem),
        linear-gradient(135deg, rgba(255,255,255,.92), rgba(239,255,232,.88));
      border-color:rgba(126,217,87,.24);
    }

    

/* ==== clickable cases ==== */
    .case-card{
      cursor:pointer;
      transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .case-card:hover{
      transform:translateY(-5px);
      box-shadow:0 28px 80px rgba(19,34,24,.12);
      border-color:rgba(126,217,87,.28);
    }

    .case-open-btn{
      width:max-content;
      margin-top:18px;
      position:relative;
      z-index:2;
    }
