

/* Start:/local/templates/printcompany/styles.css?1787929533121560*/
:root{
    --green:#48a216;
    --green-dark:#357a0f;
    --green-deep:#1d4d0a;
    --green-pale:#a8dd6e;
    --black:#17181a;
    --grey:#5c5d55;
    --grey-light:#8c8d84;
    --bg:#faf9f4;
    --bg-panel:#eef0e6;
    --border:#e1e2d6;
    --white:#ffffff;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html,body{background:var(--bg);}
  body{font-family:'Golos Text',sans-serif; color:var(--black); -webkit-font-smoothing:antialiased;}
  h1,h2{font-family:'Unbounded',sans-serif; letter-spacing:-0.01em;}

  .proto-note{background:var(--bg-panel); color:var(--grey); text-align:center; font-size:12px; padding:8px; letter-spacing:.04em; border-bottom:1px solid var(--border);}

  .page-content{display:none;}
  .page-content.active{display:block;}

  .proto-switcher{
    position:sticky; top:0; z-index:100; background:var(--black); display:flex; align-items:center; gap:6px;
    padding:8px 48px; font-size:12px; flex-wrap:wrap; row-gap:6px;
  }
  .proto-switcher-label{color:var(--grey-light); margin-right:6px; letter-spacing:.06em; text-transform:uppercase; font-size:10.5px;}
  .proto-tab{
    background:none; border:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.65); padding:6px 16px; border-radius:100px;
    font-family:'Golos Text'; font-size:12.5px; cursor:pointer; transition:.18s ease;
  }
  .proto-tab:hover{border-color:rgba(255,255,255,.4); color:#fff;}
  .proto-tab.active{background:var(--green); border-color:var(--green); color:#fff; font-weight:600;}

  .topbar{background:var(--bg); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:50; transition:box-shadow .25s ease;}
  .topbar.scrolled{box-shadow:0 8px 24px rgba(23,24,26,.06);}
  .topbar-utility{display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 48px; border-bottom:1px solid var(--border); background:var(--bg-panel);}
  .topbar-brand-row{display:flex; align-items:center; justify-content:space-between; gap:24px; padding:14px 48px;}
  .nav-divider{width:1px; height:14px; background:var(--border); margin:0 2px; flex-shrink:0;}
  .topbar-contacts{display:flex; align-items:center; gap:14px; font-size:16px; color:var(--grey); white-space:nowrap;}
  .topbar-contacts a{color:var(--grey); text-decoration:none; transition:color .18s; display:flex; align-items:center; gap:5px;}
  .topbar-contacts a:hover{color:var(--black);}
  .topbar-contacts svg{width:18px; height:18px; stroke:var(--grey-light); flex-shrink:0; transition:stroke .18s;}
  .topbar-contacts a:hover svg{stroke:var(--black);}
  .topbar-utility-right{display:flex; align-items:center; gap:14px;}
  .topbar-social{display:flex; align-items:center; gap:10px; flex-shrink:0;}
  .topbar-cta-mobile{display:none;}
  .topbar-social a{
    display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%;
    background:var(--white); color:var(--grey-light); box-shadow:0 2px 8px rgba(23,24,26,.05);
    transition:background-color .25s ease, transform .25s ease, color .25s ease;
  }
  .topbar-social a:hover{background:var(--green); color:var(--white); transform:scale(1.25);}
  .topbar-social svg{width:19px; height:19px; flex-shrink:0;}
  .nav-search{display:flex; align-items:center; gap:9px; background:var(--white); border:1px solid var(--border); border-radius:100px; padding:9px 18px; width:400px; flex-shrink:0; transition:border-color .18s ease, width .2s ease;}
  .nav-search:focus-within{border-color:var(--green); width:480px;}
  .nav-search svg{width:15px; height:15px; stroke:var(--grey-light); flex-shrink:0;}
  .nav-search input{border:none; background:none; outline:none; font-size:14px; color:var(--black); width:100%; font-family:'Golos Text';}
  .nav-search input::placeholder{color:var(--grey-light);}
  .logo{font-family:'Unbounded'; font-weight:800; font-size:20px; color:var(--black); flex-shrink:0; cursor:pointer;}
  .logo span{color:var(--green);}
  .nav-links{display:flex; align-items:center; gap:28px; font-size:17px; color:var(--grey); flex-wrap:nowrap; white-space:nowrap;}
  .nav-item{position:relative; flex-shrink:0;}
  .nav-link{display:flex; align-items:center; gap:4px; color:inherit; text-decoration:none; padding:6px 0; cursor:pointer; white-space:nowrap;}
  .nav-link:hover{color:var(--black);}
  .nav-link svg{width:10px; height:10px; stroke:currentColor; transition:transform .2s ease; flex-shrink:0;}
  .nav-item:hover .nav-link svg{transform:rotate(180deg);}
  .nav-dropdown{
    position:absolute; top:calc(100% + 8px); left:0; background:var(--white); border:1px solid var(--border); border-radius:14px;
    box-shadow:0 24px 50px rgba(23,24,26,.14); padding:14px 18px; min-width:230px; z-index:60;
    opacity:0; visibility:hidden; transform:translateY(6px); transition:opacity .18s ease, transform .18s ease, visibility .18s;
  }
  .nav-item:hover .nav-dropdown{opacity:1; visibility:visible; transform:translateY(0);}
  .nav-dropdown a{display:block; padding:7px 9px; font-size:14.5px; color:var(--grey); text-decoration:none; border-radius:7px; transition:color .15s ease, background .15s ease; white-space:nowrap;}
  .nav-dropdown a:hover{color:var(--black); background:var(--bg-panel);}
  .nav-dropdown.mega{column-count:3; column-gap:24px; min-width:660px; padding:18px 22px;}
  .nav-dropdown.mega a{break-inside:avoid;}
  .nav-link-catalog{
    display:flex; align-items:center; gap:9px; background:var(--green); color:var(--white) !important;
    padding:13px 26px; border-radius:100px; font-weight:700; text-decoration:none; transition:background .2s ease;
  }
  /* ===== Мобильное меню (бургер) — база, включается в адаптиве ===== */
  .mobile-menu-btn{display:none; flex-direction:column; justify-content:center; align-items:center; gap:5px; width:34px; height:34px; background:none; border:none; cursor:pointer; padding:0; flex-shrink:0;}
  .mobile-menu-btn span{display:block; width:22px; height:2px; background:var(--black); border-radius:2px; transition:transform .25s ease, opacity .25s ease;}
  .mobile-menu-btn.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .mobile-menu-btn.active span:nth-child(2){opacity:0;}
  .mobile-menu-btn.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .mobile-nav-overlay{display:none; position:fixed; inset:0; background:rgba(23,24,26,.45); z-index:490; opacity:0; transition:opacity .3s ease;}
  .mobile-nav-overlay.active{display:block; opacity:1;}
  .nav-link-catalog:hover{background:var(--black); color:var(--white) !important;}
  .nav-link-catalog svg:first-child{width:17px; height:17px; stroke:currentColor;}
  .nav-item:hover .nav-link-catalog svg:last-child{transform:rotate(180deg);}
  .nav-links a{color:inherit; text-decoration:none;}
  .nav-links a:hover{color:var(--black);}

  /* ===== кнопка: инверсия + объём + бегущий блик ===== */
  .btn-primary{
    position:relative; overflow:hidden; background:var(--green); color:var(--white); border:none;
    padding:15px 28px; border-radius:100px; font-weight:700; font-size:14px; cursor:pointer;
    font-family:'Golos Text'; transition:transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
    box-shadow:0 4px 14px rgba(72,162,22,.25);
  }
  .btn-primary::before{
    content:''; position:absolute; top:0; left:-60%; width:35%; height:100%;
    background:linear-gradient(120deg, transparent, rgba(255,255,255,.55), transparent);
    transform:skewX(-20deg); transition:left .6s ease;
  }
  .btn-primary:hover{background:var(--black); color:var(--white); transform:translateY(-3px) scale(1.02); box-shadow:0 16px 32px rgba(23,24,26,.28);}
  .btn-primary:hover::before{left:135%;}
  .btn-primary:active{transform:translateY(-1px) scale(.99);}

  .link-ghost{position:relative; color:var(--grey); font-size:14px; text-decoration:none; padding-bottom:2px; display:inline-flex; align-items:center; gap:6px;}
  .link-ghost::after{content:''; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--black); transition:width .28s ease;}
  .link-ghost:hover{color:var(--black);}
  .link-ghost:hover::after{width:calc(100% - 14px);}
  .link-ghost .arrow{transition:transform .28s ease;}
  .link-ghost:hover .arrow{transform:translateX(5px);}

  .live-dot{width:7px; height:7px; border-radius:50%; background:var(--green); position:relative; flex-shrink:0;}
  .live-dot::after{content:''; position:absolute; inset:-4px; border-radius:50%; border:1px solid var(--green); animation:livepulse 2.2s ease-out infinite;}
  @keyframes livepulse{0%{transform:scale(.6); opacity:.8;} 100%{transform:scale(1.9); opacity:0;}}

  .hero-a-grid{position:relative;}
  .hero-a-grid::before{content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(23,24,26,.05) 1px, transparent 1.4px); background-size:16px 16px; -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%, #000, transparent); mask-image:radial-gradient(ellipse 70% 60% at 50% 40%, #000, transparent); pointer-events:none; z-index:0;}
  .hero-a-grid > div{position:relative; z-index:1;}

  .regmark{width:32px; height:32px;}
  .regmark svg{width:100%; height:100%; animation:spin 20s linear infinite;}
  @keyframes spin{to{transform:rotate(360deg);}}

  .hero{display:none; min-height:calc(100vh - 130px); position:relative;}
  .hero.active{display:block;}
  .variant-label{position:absolute; bottom:14px; left:48px; font-size:12px; color:var(--grey-light); z-index:5;}

  /* ================= VARIANT A ================= */
  .hero-a-grid{display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:56px; padding:26px 48px 40px; min-height:calc(100vh - 170px);}
  .eyebrow{font-size:13px; font-weight:600; color:var(--green-dark); letter-spacing:.12em; text-transform:uppercase; margin-bottom:18px; display:flex; align-items:center; gap:10px;}
  .h-a{font-size:54px; line-height:1.08; font-weight:700; margin-bottom:22px; color:var(--black);}
  .h-a b{color:var(--green-dark); font-weight:800;}
  .sub-a{font-size:17px; line-height:1.55; color:var(--grey); max-width:460px; margin-bottom:34px;}
  .cta-row{display:flex; align-items:center; gap:28px;}
  .stats-row{display:flex; gap:8px; margin-top:50px; padding-top:28px; border-top:1px solid var(--border);}
  .stat{padding:8px 14px; margin-left:-14px; border-radius:10px; transition:background .2s ease;}
  .stat:hover{background:var(--bg-panel);}
  .stat b{display:block; font-family:'Unbounded'; font-size:26px; font-weight:700; color:var(--black); transition:color .2s;}
  .stat:hover b{color:var(--green-dark);}
  .stat span{font-size:12.5px; color:var(--grey-light);}

  .photo-wrap{position:relative; perspective:900px;}
  .photo-stage{position:relative; perspective:900px;}
  .photo-duotone{
    position:relative; aspect-ratio:16/10; border-radius:10px; overflow:hidden;
    background:
      radial-gradient(circle at 30% 20%, rgba(72,162,22,.55), transparent 55%),
      radial-gradient(circle at 75% 70%, rgba(29,77,10,.65), transparent 50%),
      linear-gradient(160deg, #dfe6d2 0%, #b9c9a4 60%, #1d4d0a 130%);
    border:1px solid var(--border);
    transform-style:preserve-3d; transition:transform .12s ease-out; will-change:transform;
    box-shadow:0 30px 60px rgba(23,24,26,.14);
  }
  .photo-tag{position:absolute; bottom:16px; left:16px; font-size:11px; color:var(--white); background:rgba(23,24,26,.5); padding:6px 10px; border-radius:4px; z-index:2;}
  .photo-duotone .regmark{position:absolute; top:16px; right:16px; z-index:2; opacity:.9;}
  .regmark svg circle,.regmark svg line{stroke:#ffffff;}
  .regmark svg circle[fill]{fill:#ffffff;}

  .chip{position:absolute; background:var(--white); border-radius:14px; padding:13px 18px; box-shadow:0 16px 34px rgba(23,24,26,.16); transition:transform .2s ease, box-shadow .2s ease; cursor:default; z-index:3;}
  .chip:hover{transform:translateY(-4px) scale(1.03) !important; box-shadow:0 22px 40px rgba(23,24,26,.22);}
  .chip b{display:block; font-family:'Unbounded'; font-size:16px; line-height:1.2;}
  .chip span{font-size:11px; color:var(--grey-light);}
  .chip-1{top:18px; left:-26px; transform:rotate(-4deg);}
  .chip-2{bottom:-18px; right:24px; transform:rotate(3deg);}

  .ink-fade{display:none;}

  .perks{margin-top:14px; display:flex; flex-direction:column; gap:0;}
  .perk{display:flex; align-items:center; gap:14px; padding:14px 4px; border-top:1px solid var(--border); transition:padding-left .2s ease, background .2s ease;}
  .perk:last-child{border-bottom:1px solid var(--border);}
  .perk:hover{padding-left:12px; background:var(--bg-panel);}
  .perk-ico{width:30px; height:30px; border-radius:50%; background:var(--bg-panel); display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:background .2s;}
  .perk:hover .perk-ico{background:var(--green);}
  .perk-ico svg{width:15px; height:15px; stroke:var(--green-dark); transition:stroke .2s;}
  .perk:hover .perk-ico svg{stroke:var(--white);}
  .perk span{font-size:14.5px; color:var(--black); font-weight:500;}

  /* ===== бегущая строка категорий ===== */
  .marquee{overflow:hidden; border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:16px 0; background:var(--bg-panel); -webkit-mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);}
  .marquee-track{display:flex; width:max-content; gap:40px; animation:scrollmq 26s linear infinite; white-space:nowrap;}
  .marquee-track span{font-family:'Unbounded'; font-size:13px; font-weight:600; letter-spacing:.04em; color:var(--grey); display:flex; align-items:center; gap:40px;}
  .marquee-track span::after{content:'•'; color:var(--green); margin-left:40px;}
  @keyframes scrollmq{from{transform:translateX(0);} to{transform:translateX(-50%);}}

  a:focus-visible, button:focus-visible{outline:2px solid var(--green-dark); outline-offset:3px; border-radius:6px;}

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important;}
  }

  /* ================= О ПРОИЗВОДСТВЕ ================= */
  .proof-section{padding:20px 0 50px;}
  .proof-head{padding:0 48px 30px; max-width:640px;}
  .proof-head .cat-h2{margin-top:14px;}

  .proof-row{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; padding:0 48px; margin-bottom:64px;}
  .proof-row.reverse .proof-photo-wrap{order:2;}
  .proof-row.reverse .proof-card{order:1;}
  .proof-row:last-child{margin-bottom:0;}

  .proof-photo-wrap{perspective:900px;}
  .proof-photo{
    position:relative; aspect-ratio:16/11; border-radius:12px; overflow:hidden;
    background:linear-gradient(155deg, #dfe6d2 0%, #b9c9a4 55%, var(--green-deep) 135%);
    border:1px solid var(--border); box-shadow:0 26px 54px rgba(23,24,26,.13);
    transform-style:preserve-3d; transition:transform .12s ease-out; will-change:transform;
  }
  .proof-photo-num{
    position:absolute; right:-18px; bottom:-46px; font-family:'Unbounded'; font-weight:800;
    font-size:200px; line-height:1; color:transparent; -webkit-text-stroke:1.5px rgba(255,255,255,.4);
    pointer-events:none; z-index:1; user-select:none;
  }
  .proof-photo .regmark{position:absolute; top:16px; right:16px; z-index:2; opacity:.85;}
  .proof-photo .regmark svg circle,.proof-photo .regmark svg line{stroke:#ffffff;}
  .proof-photo .regmark svg circle[fill]{fill:#ffffff;}
  .proof-photo-tag{position:absolute; top:16px; left:16px; font-size:11px; color:var(--white); background:rgba(23,24,26,.4); padding:6px 10px; border-radius:4px; z-index:2;}

  .proof-card{padding:8px 12px;}
  .proof-num{font-family:'Unbounded'; font-size:13px; font-weight:600; color:var(--green-dark); letter-spacing:.12em; margin-bottom:16px;}
  .proof-card h3{font-family:'Unbounded'; font-size:27px; font-weight:700; margin-bottom:14px; line-height:1.2;}
  .proof-card p{font-size:15.5px; color:var(--grey); line-height:1.6; max-width:420px;}
  /* ================= КЕЙСЫ ================= */
  .cases-section{padding:20px 0 48px;}
  .cases-head{padding:0 48px 20px; max-width:900px;}
  .cases-carousel{padding:0 48px;}
  .cases-nav{display:flex; align-items:center; gap:16px; margin-bottom:18px;}
  .cases-dots{display:flex; gap:7px; margin-left:6px;}
  .cases-dot{width:6px; height:6px; border-radius:50%; background:var(--border); cursor:pointer; transition:.2s ease;}
  .cases-dot.active{background:var(--green); width:18px; border-radius:4px;}
  .cases-arrow{width:40px; height:40px; border-radius:50%; border:1px solid var(--border); background:var(--white); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.2s ease; flex-shrink:0;}
  .cases-arrow:hover{background:var(--black); border-color:var(--black);}
  .cases-arrow svg{width:16px; height:16px; stroke:var(--black); transition:stroke .2s;}
  .cases-arrow:hover svg{stroke:var(--white);}
  .cases-counter{font-family:'Unbounded'; font-size:13px; color:var(--grey-light);}

  .case-slide{display:grid; grid-template-columns:.85fr 1.15fr; gap:56px; align-items:center;}
  .case-client{display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--green-dark); margin-bottom:14px;}
  .case-text h3{font-family:'Unbounded'; font-size:28px; font-weight:700; margin-bottom:22px; line-height:1.2;}
  .case-block{margin-bottom:16px;}
  .case-block b{display:block; font-size:11.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--grey-light); margin-bottom:5px;}
  .case-block p{font-size:14.5px; color:var(--black); line-height:1.55;}
  .case-text .btn-primary{margin-top:10px;}

  .case-photo-wrap{perspective:900px; position:relative;}
  .case-photo{
    position:relative; aspect-ratio:10/7; border-radius:12px; overflow:hidden; border:1px solid var(--border);
    box-shadow:0 26px 54px rgba(23,24,26,.13); transform-style:preserve-3d; transition:transform .12s ease-out, background .3s ease;
  }
  .case-photo .regmark{position:absolute; top:16px; right:16px; z-index:2; opacity:.85;}
  .case-photo .regmark svg circle,.case-photo .regmark svg line{stroke:#fff;}
  .case-photo .regmark svg circle[fill]{fill:#fff;}
  .case-photo-tag{position:absolute; top:16px; left:16px; font-size:11px; color:#fff; background:rgba(23,24,26,.4); padding:6px 10px; border-radius:4px; z-index:2;}
  .case-photo-wrap .chip{position:absolute; z-index:3;}
  .case-chip-1{top:18px; left:-20px; transform:rotate(-4deg);}
  .case-chip-2{bottom:-16px; right:20px; transform:rotate(3deg);}

  .case-slide{transition:opacity .18s ease;}
  .case-slide.fade{opacity:0;}

  /* модалка кейса */
  .case-modal{position:fixed; inset:0; background:rgba(23,24,26,.62); display:none; align-items:center; justify-content:center; padding:24px; z-index:300;}
  .case-modal.open{display:flex;}
  .case-modal-inner{background:var(--white); border-radius:16px; max-width:920px; width:100%; max-height:88vh; overflow:hidden; display:grid; grid-template-columns:1fr 1fr; position:relative; box-shadow:0 50px 110px rgba(0,0,0,.32);}
  .case-modal-photo{position:relative; overflow:hidden;}
  .case-modal-photo .case-photo-tag{top:20px; left:20px;}
  .case-modal-text{padding:44px; overflow-y:auto;}
  .case-modal-close{position:absolute; top:16px; right:16px; width:36px; height:36px; border-radius:50%; background:var(--white); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:5; transition:.2s ease;}
  .case-modal-close:hover{background:var(--black); border-color:var(--black);}
  .case-modal-close svg{width:15px; height:15px; stroke:var(--black); transition:stroke .2s;}
  .case-modal-close:hover svg{stroke:var(--white);}
  .photo-lightbox{position:fixed; inset:0; background:rgba(23,24,26,.72); display:none; align-items:center; justify-content:center; padding:24px; z-index:500;}
  .photo-lightbox.open{display:flex;}
  .photo-lightbox-inner{position:relative; width:min(560px, 90vw); aspect-ratio:4/5; border-radius:16px; overflow:hidden; box-shadow:0 50px 110px rgba(0,0,0,.32);}
  .photo-lightbox-tag{position:absolute; top:18px; left:18px; font-size:11px; color:#fff; background:rgba(23,24,26,.45); padding:6px 10px; border-radius:4px; z-index:2;}
  .photo-lightbox-close{position:absolute; top:16px; right:16px; width:36px; height:36px; border-radius:50%; background:var(--white); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:5; transition:.2s ease;}
  .photo-lightbox-close:hover{background:var(--black); border-color:var(--black);}
  .photo-lightbox-close svg{width:15px; height:15px; stroke:var(--black); transition:stroke .2s;}
  .photo-lightbox-close:hover svg{stroke:var(--white);}
  .example-photo{cursor:pointer;}

  /* модалка лид-формы */
  .lead-modal{position:fixed; inset:0; background:rgba(23,24,26,.62); display:none; align-items:center; justify-content:center; padding:24px; z-index:300;}
  .lead-modal.open{display:flex;}
  .lead-modal-inner{background:var(--white); border-radius:18px; max-width:460px; width:100%; max-height:90vh; overflow-y:auto; position:relative; padding:44px 36px 36px; box-shadow:0 50px 110px rgba(0,0,0,.32);}
  .lead-modal-close{position:absolute; top:16px; right:16px; width:34px; height:34px; border-radius:50%; background:var(--bg-panel); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; cursor:pointer; z-index:5; transition:.2s ease;}
  .lead-modal-close:hover{background:var(--black); border-color:var(--black);}
  .lead-modal-close svg{width:14px; height:14px; stroke:var(--black); transition:stroke .2s;}
  .lead-modal-close:hover svg{stroke:var(--white);}
  .lead-modal .regmark{position:absolute; top:18px; left:36px; opacity:.7;}
  .lead-modal .regmark svg circle,.lead-modal .regmark svg line{stroke:var(--green-dark);}
  .lead-required-note{font-size:11.5px; color:var(--grey-light); margin-top:-4px;}
  .lead-file-label{
    display:flex; align-items:center; gap:10px; padding:12px 16px; border:1px dashed var(--border); border-radius:12px;
    font-size:13.5px; color:var(--grey); cursor:pointer; transition:border-color .18s ease, color .18s ease;
  }
  .lead-file-label:hover{border-color:var(--green); color:var(--black);}
  .lead-file-label svg{width:17px; height:17px; stroke:var(--grey-light); flex-shrink:0; transition:stroke .18s ease;}
  .lead-file-label:hover svg{stroke:var(--green-dark);}
  .lead-modal-inner h3{font-family:'Unbounded'; font-size:23px; font-weight:700; margin-bottom:10px; line-height:1.25;}
  .lead-modal-inner p.lead-sub{font-size:14px; color:var(--grey); line-height:1.55; margin-bottom:26px;}
  .lead-form{display:flex; flex-direction:column; gap:12px;}
  .lead-form input, .lead-form textarea{
    width:100%; padding:14px 16px; border-radius:12px; border:1px solid var(--border); background:var(--bg);
    font-family:'Golos Text'; font-size:14px; color:var(--black); resize:none; transition:border-color .18s ease;
  }
  .lead-form input:focus, .lead-form textarea:focus{outline:none; border-color:var(--green);}
  .lead-form input::placeholder, .lead-form textarea::placeholder{color:var(--grey-light);}
  .lead-form textarea{min-height:88px; font-family:'Golos Text';}
  .lead-form-consent{display:flex; align-items:flex-start; gap:9px; font-size:12px; color:var(--grey-light); line-height:1.45; margin-top:2px;}
  .lead-form-consent input{width:15px; height:15px; margin-top:1px; flex-shrink:0; accent-color:var(--green);}
  .lead-form .btn-primary{width:100%; justify-content:center; margin-top:6px; box-shadow:none;}
  .lead-form-note{font-size:12px; color:var(--grey-light); text-align:center; margin-top:12px;}
  .lead-success{display:none; text-align:center; padding:20px 0 4px;}
  .lead-success.show{display:block;}
  .lead-success-ico{width:52px; height:52px; border-radius:50%; background:var(--green); display:flex; align-items:center; justify-content:center; margin:0 auto 18px;}
  .lead-success-ico svg{width:22px; height:22px; stroke:var(--white);}
  .lead-success h3{font-family:'Unbounded'; font-size:19px; font-weight:700; margin-bottom:8px;}
  .lead-success p{font-size:14px; color:var(--grey); line-height:1.5;}

  /* модалка юридического документа */
  .legal-modal{position:fixed; inset:0; background:rgba(23,24,26,.62); display:none; align-items:center; justify-content:center; padding:24px; z-index:400;}
  .legal-modal.open{display:flex;}
  .legal-modal-inner{background:var(--white); border-radius:18px; max-width:680px; width:100%; max-height:82vh; overflow-y:auto; position:relative; padding:44px 40px 36px;}
  .legal-modal-close{position:absolute; top:16px; right:16px; width:34px; height:34px; border-radius:50%; background:var(--bg-panel); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.2s ease;}
  .legal-modal-close:hover{background:var(--black); border-color:var(--black);}
  .legal-modal-close svg{width:14px; height:14px; stroke:var(--black); transition:stroke .2s;}
  .legal-modal-close:hover svg{stroke:var(--white);}
  .legal-modal-inner h3{font-family:'Unbounded'; font-size:21px; font-weight:700; margin-bottom:6px;}
  .legal-modal-date{font-size:12px; color:var(--grey-light); margin-bottom:22px;}
  .legal-modal-body h4{font-family:'Unbounded'; font-size:14px; font-weight:700; margin:20px 0 8px;}
  .legal-modal-body p, .legal-modal-body li{font-size:14px; color:var(--grey); line-height:1.65; margin-bottom:8px;}
  .legal-modal-body ul, .legal-modal-body ol{padding-left:20px; margin-bottom:8px;}

  /* cookie-баннер */
  .cookie-banner{position:fixed; left:20px; right:20px; bottom:20px; max-width:520px; background:var(--white); border:1px solid var(--border); border-radius:16px; padding:22px 24px; box-shadow:0 30px 60px rgba(23,24,26,.16); z-index:250; display:none;}
  .cookie-banner.show{display:block;}
  .cookie-banner p{font-size:13.5px; color:var(--grey); line-height:1.55; margin-bottom:16px;}
  .cookie-banner p a{color:var(--black); text-decoration:underline;}
  .cookie-banner-actions{display:flex; gap:12px;}
  .cookie-banner .btn-primary{padding:11px 22px; font-size:13px; box-shadow:none;}
  .cookie-banner-decline{background:none; border:1px solid var(--border); color:var(--grey); padding:11px 20px; border-radius:100px; font-size:13px; cursor:pointer; font-family:'Golos Text'; transition:.2s ease;}
  .cookie-banner-decline:hover{border-color:var(--black); color:var(--black);}

  /* ================= ХЛЕБНЫЕ КРОШКИ ================= */
  .breadcrumbs{padding:20px 48px 0; font-size:13px; color:var(--grey-light); display:flex; align-items:center; gap:8px;}
  .breadcrumbs a{color:var(--grey-light); text-decoration:none; transition:color .18s ease;}
  .breadcrumbs a:hover{color:var(--black);}
  .breadcrumbs .sep{color:var(--border);}
  .breadcrumbs .current{color:var(--grey);}

  /* ================= ШАПКА СТРАНИЦЫ КАТАЛОГА ================= */
  .catalog-head{padding:20px 48px 40px; max-width:760px;}
  .catalog-head h1{font-family:'Unbounded'; font-size:36px; font-weight:800; margin-bottom:14px; color:var(--black);}
  .catalog-head p{font-size:15.5px; color:var(--grey); line-height:1.6;}

  /* ================= СЕТКА КАТЕГОРИЙ ================= */
  .catalog-grid{
    display:grid; grid-template-columns:repeat(4, 1fr); gap:1px; background:var(--border);
    border:1px solid var(--border); border-radius:16px; overflow:hidden; margin:0 48px 56px;
  }
  .catalog-tile{
    display:flex; flex-direction:column; align-items:flex-start; gap:16px; background:var(--bg); padding:28px 24px;
    text-decoration:none; color:inherit; transition:background .2s ease; position:relative; min-height:150px;
  }
  .catalog-tile:hover{background:var(--bg-panel);}
  .catalog-tile-hit{position:absolute; inset:0; z-index:1;}
  .catalog-tile-ico{
    width:46px; height:46px; border-radius:50%; background:var(--bg-panel);
    display:flex; align-items:center; justify-content:center; transition:background .2s ease, transform .2s ease; flex-shrink:0;
  }
  .catalog-tile:hover .catalog-tile-ico{background:var(--green); transform:scale(1.08);}
  .catalog-tile-ico svg{width:21px; height:21px; stroke:var(--green-dark); transition:stroke .2s ease; flex-shrink:0;}
  .catalog-tile:hover .catalog-tile-ico svg{stroke:var(--white);}
  .catalog-tile-name{font-family:'Unbounded'; font-size:15px; font-weight:700; color:var(--black); line-height:1.3; margin-top:auto;}
  .catalog-tile-arrow{
    position:absolute; top:26px; right:22px; width:28px; height:28px; border-radius:50%; background:var(--bg);
    border:1px solid var(--border); display:flex; align-items:center; justify-content:center;
    opacity:0; transform:translate(-4px,4px); transition:.2s ease;
  }
  .catalog-tile:hover .catalog-tile-arrow{opacity:1; transform:translate(0,0); border-color:var(--green); background:var(--white);}
  .catalog-tile-arrow svg{width:12px; height:12px; stroke:var(--black);}
  .catalog-tile.tile-cta{background:var(--bg-panel); border-left:1px dashed var(--border);}
  .catalog-tile.tile-cta:hover{background:var(--green); }
  .catalog-tile.tile-cta:hover .catalog-tile-name{color:var(--white);}
  .catalog-tile.tile-cta:hover .catalog-tile-sub{color:rgba(255,255,255,.75);}
  .catalog-tile.tile-cta .catalog-tile-ico{background:var(--white); border:1px solid var(--border);}
  .catalog-tile-sub{font-size:12.5px; color:var(--grey-light); line-height:1.4; transition:color .2s ease;}

  /* ===== плавающая панель подкатегорий (позиционируется через JS под наведённой плиткой) ===== */
  .category-flyout{
    position:fixed; z-index:70; background:var(--white); border:1px solid var(--border); border-radius:12px;
    box-shadow:0 24px 50px rgba(23,24,26,.16); padding:10px 8px; min-width:220px;
    opacity:0; visibility:hidden; transform:translateY(-6px); transition:opacity .16s ease, transform .16s ease, visibility .16s;
    pointer-events:none;
  }
  .category-flyout.show{opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto;}
  .category-flyout a{display:block; padding:9px 12px; font-size:13.5px; color:var(--grey); text-decoration:none; border-radius:8px; transition:.15s ease;}
  .category-flyout a:hover{background:var(--bg-panel); color:var(--black);}

  /* ================= CTA-БАННЕР (референсы) ================= */
  .cta-band{background:var(--green); padding:48px; position:relative; overflow:hidden;}
  .cta-band-oneline{font-family:'Unbounded'; font-size:22px; font-weight:700; color:var(--black); white-space:nowrap;}
  .cta-band-oneline span{display:inline; font-family:'Golos Text'; font-size:15px; font-weight:400; color:var(--black); margin-left:14px;}
  .cta-band-btn-lg{padding:20px 36px; font-size:15.5px;}
  .cta-band-inner-stack{flex-direction:column; text-align:center; gap:20px;}
  .cta-band-actions{display:flex; align-items:center; justify-content:center; gap:24px; flex-wrap:wrap;}
  .cta-band::after{content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(23,24,26,.08) 1px, transparent 1.4px); background-size:9px 9px; pointer-events:none;}
  .cta-band .regmark{position:absolute; top:24px; right:48px; opacity:.5; z-index:1;}
  .cta-band .regmark svg circle,.cta-band .regmark svg line{stroke:var(--black);}
  .cta-band .regmark svg circle[fill]{fill:var(--black);}
  .cta-band-inner{display:flex; align-items:center; justify-content:center; gap:56px; flex-wrap:wrap; max-width:1240px; margin:0 auto; position:relative; z-index:1;}
  .cta-band-text h2{font-family:'Unbounded'; font-size:32px; font-weight:700; color:var(--black); margin-bottom:12px; line-height:1.2; white-space:nowrap;}
  .cta-band-text p{font-size:15.5px; color:rgba(23,24,26,.72); white-space:nowrap; line-height:1.55;}
  .cta-band-form{display:flex; gap:10px; flex:1; min-width:300px; max-width:460px;}
  .cta-band-form input{flex:1; padding:15px 20px; border-radius:100px; border:none; font-family:'Golos Text'; font-size:14px; background:var(--white); color:var(--black);}
  .cta-band-form input::placeholder{color:var(--grey-light);}
  .cta-band-form input:focus{outline:2px solid var(--black); outline-offset:2px;}
  .cta-band-form button{background:var(--black); color:var(--white); border:none; padding:15px 26px; border-radius:100px; font-weight:700; font-size:13.5px; cursor:pointer; white-space:nowrap; transition:.2s ease; font-family:'Golos Text';}
  .cta-band-form button:hover{background:var(--white); color:var(--black);}

  /* ================= НАШИ ПРЕИМУЩЕСТВА ================= */
  .adv-section{padding:40px 48px 48px;}
  .adv-head{max-width:820px; margin-bottom:20px;}
  .adv-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:1px; background:var(--border); border:1px solid var(--border); border-radius:16px; overflow:hidden;}
  .reviews-section{padding:32px 48px 48px;}
  .reviews-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:1px; background:var(--border); border:1px solid var(--border); border-radius:16px; overflow:hidden;}
  .review-card{display:flex; flex-direction:column; gap:10px;}
  .review-stars{color:var(--green); font-size:15px; letter-spacing:2px;}
  .review-quote{font-size:14px; line-height:1.5; color:var(--black); flex:1;}
  .review-author{display:flex; flex-direction:column; font-size:12.5px;}
  .review-author b{color:var(--black); font-weight:700;}
  .review-author span{color:var(--grey-light);}
  .tech-showcase-section{padding:0 0 8px;}
  .tech-tile{flex:0 0 240px;}
  .example-photo.tech-photo{aspect-ratio:16/9;}
  .tech-tile-label{display:block; margin-top:10px; font-family:'Unbounded'; font-size:13px; font-weight:600; color:var(--black); text-decoration:none; transition:color .15s ease;}
  .tech-tile-label:hover{color:var(--green-dark);}
  .tech-links-strip{padding:20px 48px; display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; background:var(--bg-panel); border-top:1px solid var(--border);}
  .tech-links-label{font-size:12px; color:var(--grey-light); margin-right:4px;}
  .tech-links-strip a{font-size:12.5px; color:var(--grey); text-decoration:none; transition:color .15s ease;}
  .tech-links-strip a:hover{color:var(--green-dark); text-decoration:underline;}
  .adv-card{background:var(--bg); padding:20px 24px; transition:background .2s ease;}
  .adv-card:hover{background:var(--bg-panel);}
  .adv-num{display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:var(--bg-panel); font-family:'Unbounded'; font-size:12px; font-weight:700; color:var(--grey-light); margin-bottom:10px; transition:background .2s ease, color .2s ease;}
  .adv-card:hover .adv-num{background:var(--green); color:var(--white);}
  .adv-card h3{font-family:'Unbounded'; font-size:18px; font-weight:700; margin-bottom:10px; line-height:1.25;}
  .adv-card p{font-size:14px; color:var(--grey); line-height:1.55;}

  /* ================= КЛИЕНТЫ ================= */
  .clients-section{padding:32px 48px 40px;}
  .clients-head{max-width:900px; margin-bottom:24px;}
  .clients-viewport{overflow:hidden;}
  .clients-track{display:flex; gap:16px; transition:transform .6s ease;}
  .client-tile{
    flex:0 0 170px; height:64px; border:1px solid var(--border); border-radius:10px;
    display:flex; align-items:center; justify-content:center; background:var(--bg);
    transition:border-color .2s ease, background .2s ease;
  }
  .client-tile:hover{border-color:var(--green); background:var(--bg-panel);}
  .client-logo{max-width:76%; max-height:58%; width:auto; height:auto; object-fit:contain; filter:grayscale(1) opacity(.6); transition:filter .3s ease;}
  .client-tile:hover .client-logo{filter:grayscale(0) opacity(1);}

  /* ================= ПРОЦЕСС ================= */
  /* ================= ПРИМЕРЫ ПЕЧАТИ ================= */
  .examples-section{padding:10px 48px 50px;}
  .examples-head{max-width:820px; margin-bottom:24px;}
  .examples-viewport{overflow:hidden;}
  .examples-track{display:flex; gap:16px; width:max-content; transition:transform .6s ease;}
  .example-tile{flex:0 0 190px;}
  .example-photo{
    position:relative; aspect-ratio:4/5; border-radius:12px; overflow:hidden; border:1px solid var(--border);
    box-shadow:0 14px 30px rgba(23,24,26,.08); transition:transform .25s ease, box-shadow .25s ease;
  }
  .example-tile:hover .example-photo{transform:translateY(-4px); box-shadow:0 22px 44px rgba(23,24,26,.14);}
  .example-tag{position:absolute; top:10px; left:10px; font-size:10px; color:#fff; background:rgba(23,24,26,.4); padding:5px 8px; border-radius:4px; z-index:2;}
  .example-name{font-family:'Unbounded'; font-size:13.5px; font-weight:700; color:var(--black); margin-top:12px; line-height:1.3;}
  .example-method{font-size:12px; color:var(--grey-light); margin-top:2px;}

  /* ================= ПРОЦЕСС ================= */
  .process-section{padding:32px 48px 48px;}
  .process-head{max-width:800px; margin-bottom:40px;}
  .process-strip{display:flex; align-items:flex-start; position:relative; padding-top:6px;}
  .process-strip::before{content:''; position:absolute; top:25px; left:36px; right:36px; height:1px; background:var(--border); z-index:0;}
  .process-node{position:relative; z-index:1; flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; padding:0 6px;}
  .process-node-circle{
    width:38px; height:38px; border-radius:50%; background:var(--bg); border:2px solid var(--green); color:var(--green-dark);
    font-family:'Unbounded'; font-weight:700; font-size:14px; display:flex; align-items:center; justify-content:center;
    margin-bottom:14px; transition:background .2s ease, color .2s ease;
  }
  .process-node:hover .process-node-circle{background:var(--green); color:var(--white);}
  .process-node h3{font-family:'Unbounded'; font-size:13.5px; font-weight:700; margin-bottom:5px; line-height:1.3;}
  .process-node p{font-size:11.5px; color:var(--grey-light); line-height:1.4; max-width:130px;}

  /* ================= CTA: ТИРАЖ ЗА 3 ДНЯ ================= */
  .cta-speed{padding:44px 48px; background:var(--bg-panel);}
  .cta-speed-inner{display:flex; align-items:center; gap:56px; max-width:1240px; margin:0 auto; flex-wrap:wrap;}
  .cta-speed-num{display:flex; flex-direction:column; align-items:center; flex-shrink:0;}
  .big-num{font-family:'Unbounded'; font-weight:900; font-size:120px; line-height:.85; color:var(--green);}
  .big-num-label{font-family:'Unbounded'; font-size:13px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--grey); margin-top:2px;}
  .cta-speed-text{flex:1; min-width:280px;}
  .cta-speed-text h2{font-family:'Unbounded'; font-size:30px; font-weight:700; margin-bottom:10px; color:var(--black);}
  .cta-speed-text p{font-size:15px; color:var(--grey); margin-bottom:22px; max-width:640px; line-height:1.5;}

  /* ================= О КОМПАНИИ ================= */
  .about-section{padding:32px 48px 48px;}
  .about-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:56px; align-items:center; max-width:1240px; margin:0 auto;}
  .about-photo-wrap{perspective:900px;}
  .about-photo{
    position:relative; aspect-ratio:16/15; border-radius:12px; overflow:hidden; border:1px solid var(--border);
    background:linear-gradient(150deg, #dfe6d2 0%, #b9c9a4 55%, var(--green-deep) 130%);
    box-shadow:0 26px 54px rgba(23,24,26,.13); transform-style:preserve-3d; transition:transform .12s ease-out;
  }
  .about-photo .regmark{position:absolute; top:16px; right:16px; z-index:2; opacity:.85;}
  .about-photo .regmark svg circle,.about-photo .regmark svg line{stroke:#fff;}
  .about-photo .regmark svg circle[fill]{fill:#fff;}
  .about-photo-tag{position:absolute; top:16px; left:16px; font-size:11px; color:#fff; background:rgba(23,24,26,.4); padding:6px 10px; border-radius:4px; z-index:2;}
  .about-quote{font-size:19px; line-height:1.55; color:var(--black); margin:20px 0 24px; position:relative; padding-left:26px;}
  .about-quote::before{content:'“'; position:absolute; left:-4px; top:-10px; font-family:'Unbounded'; font-size:44px; color:var(--green); line-height:1;}
  .about-signature{font-size:13.5px; color:var(--grey); font-weight:600;}
  .about-signature span{display:block; font-weight:400; color:var(--grey-light); font-size:12px; margin-top:2px;}
  .about-stats{display:flex; gap:36px; margin-top:30px; padding-top:24px; border-top:1px solid var(--border);}
  .about-stats .stat b{display:block; font-family:'Unbounded'; font-size:22px; font-weight:700; color:var(--black);}
  .about-stats .stat span{font-size:12px; color:var(--grey-light);}

  /* ================= FAQ ================= */
  /* ================= СВЯЗЬ ЛЮБЫМ СПОСОБОМ ================= */
  .contact-cta-section{background:var(--bg-panel); padding:48px 48px; position:relative; overflow:hidden;}
  .contact-cta-card{
    display:grid; grid-template-columns:.85fr 1.5fr; gap:40px; align-items:center; position:relative;
    max-width:1240px; margin:0 auto;
  }
  .contact-cta-left h2{font-family:'Unbounded'; font-size:24px; font-weight:700; line-height:1.3; margin-bottom:20px;}
  .contact-cta-icons{display:flex; align-items:center; gap:12px;}
  .contact-cta-ico{
    width:46px; height:46px; border-radius:50%; border:1.5px solid var(--green); color:var(--green-dark);
    display:flex; align-items:center; justify-content:center; transition:.2s ease; flex-shrink:0; background:var(--white);
  }
  .contact-cta-ico svg{width:19px; height:19px; flex-shrink:0;}
  .contact-cta-ico:hover{background:var(--green); color:var(--white); transform:scale(1.08);}
  .contact-cta-fields{display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px; margin-bottom:16px;}
  .contact-cta-field label{display:block; font-size:12.5px; color:var(--grey-light); margin-bottom:8px; line-height:1.35; min-height:32px;}
  .contact-cta-field label .req{color:var(--green-dark);}
  .contact-cta-field input{
    width:100%; padding:14px 16px; border-radius:12px; border:1px solid var(--border); background:var(--white);
    font-family:'Golos Text'; font-size:14px; color:var(--black); transition:border-color .18s ease, background .18s ease;
  }
  .contact-cta-field input:focus{outline:none; border-color:var(--green); background:var(--white);}
  .contact-cta-field input::placeholder{color:var(--grey-light);}
  .contact-cta-submit{width:100%; justify-content:center; padding:16px 28px; font-size:15px; margin-bottom:14px;}
  .contact-cta-consent{display:flex; align-items:flex-start; gap:9px; font-size:12px; color:var(--grey-light); line-height:1.45;}
  .contact-cta-consent input{width:15px; height:15px; margin-top:1px; flex-shrink:0; accent-color:var(--green);}
  .contact-cta-consent a{color:var(--grey); text-decoration:underline;}
  .contact-cta-success{display:none; text-align:center; padding:20px 40px; max-width:1240px; margin:0 auto;}
  .contact-cta-success.show{display:block;}
  .contact-cta-success h3{font-family:'Unbounded'; font-size:19px; font-weight:700; margin-bottom:8px;}
  .contact-cta-success p{font-size:14px; color:var(--grey); line-height:1.5;}

  .faq-head{max-width:640px; margin-bottom:24px;}
  .faq-list{border-top:1px solid var(--border); max-width:none;}
  .faq-item{border-bottom:1px solid var(--border);}
  .faq-question{display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 2px; cursor:pointer;}
  .faq-question h3{font-family:'Unbounded'; font-size:15.5px; font-weight:600; color:var(--black);}
  .faq-toggle{width:28px; height:28px; border-radius:50%; background:var(--bg-panel); position:relative; flex-shrink:0; transition:background .2s ease;}
  .faq-toggle::before,.faq-toggle::after{content:''; position:absolute; top:50%; left:50%; background:var(--black); transition:transform .25s ease, background .2s ease;}
  .faq-toggle::before{width:10px; height:1.6px; transform:translate(-50%,-50%);}
  .faq-toggle::after{width:1.6px; height:10px; transform:translate(-50%,-50%);}
  .faq-item.open .faq-toggle{background:var(--green);}
  .faq-item.open .faq-toggle::before,.faq-item.open .faq-toggle::after{background:var(--white);}
  .faq-item.open .faq-toggle::after{transform:translate(-50%,-50%) rotate(90deg) scaleY(0);}
  .faq-answer{max-height:0; overflow:hidden; transition:max-height .3s ease;}
  .faq-answer p{padding:0 2px 22px; font-size:14px; color:var(--grey); line-height:1.6; max-width:680px;}

  /* ================= ФИНАЛЬНЫЙ CTA ================= */
  .final-cta{background:var(--green); padding:48px; text-align:center; position:relative; overflow:hidden;}
  .final-cta::after{content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(23,24,26,.08) 1px, transparent 1.4px); background-size:9px 9px; pointer-events:none;}
  .final-cta-inner{position:relative; z-index:1; max-width:820px; margin:0 auto;}
  .final-cta h2{font-family:'Unbounded'; font-size:34px; font-weight:800; color:var(--black); margin-bottom:14px; line-height:1.2;}
  .final-cta p{font-size:16px; color:rgba(23,24,26,.72); margin-bottom:30px;}
  .final-cta-actions{display:flex; align-items:center; justify-content:center; gap:28px; flex-wrap:wrap;}
  .final-cta .btn-primary{background:var(--black); padding:19px 36px; font-size:16px;}
  .final-cta .btn-primary:hover{background:var(--white); color:var(--black);}
  .final-cta-phone{font-family:'Golos Text'; font-size:16px; font-weight:600; color:var(--black); text-decoration:none;}
  .final-cta-social{display:flex; align-items:center; gap:10px;}
  .final-cta-social a{width:50px; height:50px; border-radius:50%; background:rgba(23,24,26,.12); display:flex; align-items:center; justify-content:center; color:var(--black); transition:.2s ease;}
  .final-cta-social a:hover{background:var(--green); color:var(--white); transform:scale(1.1);}
  .final-cta-social svg{width:23px; height:23px; flex-shrink:0;}
  .cta-band .final-cta-social a:hover, .final-cta .final-cta-social a:hover{background:var(--white); color:var(--black);}
  .final-cta-contact-stack{display:flex; flex-direction:column; align-items:center; gap:3px;}
  .final-cta-contact-stack .final-cta-phone{line-height:1.3;}
  .final-cta-email{font-size:16px; font-weight:600; color:var(--black);}

  /* ================= FAQ ================= */
  .faq-section{padding:32px 48px 48px;}
  .faq-2col-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 56px;}

  /* ================= ФУТЕР ================= */
  .site-footer{background:var(--bg-panel); padding:60px 48px 28px; border-top:1px solid var(--border);}
  .footer-top{display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr 1fr 1fr; gap:28px; padding-bottom:36px; border-bottom:1px solid var(--border); margin-bottom:24px;}
  .footer-brand p{font-size:13.5px; color:var(--grey); line-height:1.55; margin-top:14px; max-width:280px;}
  .footer-col h4{font-family:'Unbounded'; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--grey-light); margin-bottom:16px;}
  .footer-col a{display:block; font-size:14px; color:var(--black); text-decoration:none; margin-bottom:10px; transition:color .18s ease;}
  .footer-col a:hover{color:var(--green-dark);}
  .footer-social{display:flex; gap:12px; margin-top:16px;}
  .footer-social a{
    display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%;
    background:var(--white); color:var(--grey); border:1px solid var(--border);
    transition:background-color .25s ease, transform .25s ease, color .25s ease, border-color .25s ease;
  }
  .footer-social a:hover{background:var(--green); color:var(--white); border-color:var(--green); transform:scale(1.25);}
  .footer-social svg{width:19px; height:19px; flex-shrink:0;}
  .footer-bottom{display:flex; flex-direction:column; gap:10px; font-size:12.5px; color:var(--grey-light); padding-top:4px;}
  .footer-bottom-row{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px;}
  .footer-legal-links{display:flex; gap:18px; flex-wrap:wrap;}
  .footer-bottom a, .footer-bottom button.link-plain{color:var(--grey-light); text-decoration:none; background:none; border:none; font-size:12.5px; font-family:'Golos Text'; cursor:pointer; padding:0;}
  .footer-bottom a:hover, .footer-bottom button.link-plain:hover{color:var(--black);}
  .footer-requisites{color:var(--grey-light); line-height:1.5; max-width:640px;}
  .footer-offer-note{color:var(--grey-light); font-size:11.5px; max-width:720px; line-height:1.5;}

  /* ================= СТРАНИЦА СПИСКА ТОВАРОВ ================= */
  .list-layout{display:grid; grid-template-columns:260px 1fr; gap:36px; padding:8px 48px 70px; align-items:start;}
  .list-sidebar{position:sticky; top:96px;}
  .sidebar-block{margin-bottom:28px;}
  .sidebar-title{font-family:'Unbounded'; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--grey-light); margin-bottom:14px;}
  .sidebar-cats{display:flex; flex-direction:column; gap:2px;}
  .sidebar-cat{
    display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 12px; border-radius:10px;
    font-size:14px; color:var(--grey); text-decoration:none; cursor:pointer; transition:.15s ease; background:none;
    border:none; text-align:left; width:100%; font-family:'Golos Text';
  }
  .sidebar-cat:hover{background:var(--bg-panel); color:var(--black);}
  .sidebar-cat.active{background:var(--green); color:var(--white); font-weight:600;}
  .sidebar-cat-count{font-size:12px; color:var(--grey-light);}
  .sidebar-cat.active .sidebar-cat-count{color:rgba(255,255,255,.75);}

  .filter-group{border-bottom:1px solid var(--border); padding:15px 0;}
  .filter-group:first-child{padding-top:0;}
  .filter-group-head{display:flex; align-items:center; justify-content:space-between; cursor:pointer;}
  .filter-group-head h4{font-family:'Unbounded'; font-size:13.5px; font-weight:700; color:var(--black);}
  .filter-group-toggle{width:20px; height:20px; display:flex; align-items:center; justify-content:center; transition:transform .2s ease; flex-shrink:0;}
  .filter-group-toggle svg{width:11px; height:11px; stroke:var(--grey-light);}
  .filter-group.open .filter-group-toggle{transform:rotate(180deg);}
  .filter-group-body{max-height:0; overflow:hidden; transition:max-height .28s ease;}
  .filter-group-body-inner{padding-top:12px;}
  .filter-option{display:flex; align-items:center; gap:9px; padding:6px 2px; font-size:13.5px; color:var(--grey); cursor:pointer;}
  .filter-option input{width:15px; height:15px; accent-color:var(--green); flex-shrink:0;}
  .filter-option .swatch-dot{width:14px; height:14px; border-radius:50%; border:1px solid var(--border); flex-shrink:0;}
  .filter-range{display:flex; align-items:center; gap:8px;}
  .filter-range input{width:100%; padding:9px 10px; border-radius:8px; border:1px solid var(--border); background:var(--bg); font-size:13px; font-family:'Golos Text'; color:var(--black);}
  .filter-range input:focus{outline:none; border-color:var(--green);}
  .filter-range span{color:var(--grey-light); font-size:12px; flex-shrink:0;}
  .filter-reset{width:100%; padding:12px; border-radius:10px; border:1px solid var(--border); background:none; color:var(--grey); font-size:13px; cursor:pointer; font-family:'Golos Text'; transition:.15s ease;}
  .filter-reset:hover{border-color:var(--black); color:var(--black);}

  .list-toolbar{display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:22px; flex-wrap:wrap;}
  .list-count{font-size:14px; color:var(--grey);}
  .list-count b{color:var(--black);}
  .list-sort{position:relative;}
  .list-sort-btn{display:flex; align-items:center; gap:8px; padding:11px 18px; border-radius:100px; border:1px solid var(--border); background:var(--white); font-size:13.5px; color:var(--black); cursor:pointer; font-family:'Golos Text'; transition:border-color .15s ease;}
  .list-sort-btn:hover{border-color:var(--green);}
  .list-sort-btn svg{width:11px; height:11px; stroke:var(--grey-light); transition:transform .2s ease;}
  .list-sort.open .list-sort-btn svg{transform:rotate(180deg);}
  .list-sort-menu{
    position:absolute; top:calc(100% + 8px); right:0; background:var(--white); border:1px solid var(--border); border-radius:12px;
    box-shadow:0 20px 40px rgba(23,24,26,.14); padding:8px; min-width:200px; z-index:40;
    opacity:0; visibility:hidden; transform:translateY(-6px); transition:.18s ease;
  }
  .list-sort.open .list-sort-menu{opacity:1; visibility:visible; transform:translateY(0);}
  .list-sort-option{display:block; width:100%; text-align:left; padding:9px 12px; border-radius:8px; border:none; background:none; font-size:13.5px; color:var(--grey); cursor:pointer; font-family:'Golos Text';}
  .list-sort-option:hover{background:var(--bg-panel); color:var(--black);}
  .list-sort-option.active{color:var(--green-dark); font-weight:600;}

  .product-grid{display:grid; grid-template-columns:repeat(4, 1fr); gap:20px;}
  .product-card{border:1px solid var(--border); border-radius:16px; background:var(--white); padding:16px; display:flex; flex-direction:column; transition:box-shadow .2s ease, border-color .2s ease;}
  .product-card:hover{box-shadow:0 20px 40px rgba(23,24,26,.1);}
  .product-card.hidden-by-filter{display:none;}
  .product-photo{position:relative; aspect-ratio:1/1; border-radius:12px; overflow:hidden; margin-bottom:14px; border:1px solid var(--border); background:linear-gradient(155deg, #eef0e6 0%, #cfe0bd 55%, var(--green-deep) 130%);}
  .product-badge{position:absolute; top:10px; left:10px; z-index:2; font-size:10.5px; font-weight:700; padding:5px 9px; border-radius:6px; letter-spacing:.02em;}
  .product-badge.hit{background:#ffde59; color:var(--black);}
  .product-badge.sale{background:#e2402f; color:var(--white);}
  .product-badge.new{background:var(--green); color:var(--white);}
  .product-name{font-family:'Unbounded'; font-size:14px; font-weight:700; color:var(--black); line-height:1.3; margin-bottom:6px;}
  .product-sku{font-size:12px; color:var(--grey-light); margin-bottom:10px;}
  .product-swatches{display:flex; align-items:center; gap:5px; margin:0 0 12px; padding:0; list-style:none;}
  .product-swatch{width:16px; height:16px; border-radius:50%; border:1px solid var(--border); flex-shrink:0; background-position:center; background-size:cover; cursor:pointer;}
  .product-swatch.selected{box-shadow:0 0 0 2px var(--green);}
  .product-swatch.notallowed{opacity:.35;}
  .product-swatch-more{font-size:11px; color:var(--grey-light); margin-left:2px;}
  .product-price-row{display:flex; align-items:baseline; gap:8px; margin-bottom:12px; margin-top:auto;}
  .product-price{font-family:'Unbounded'; font-size:17px; font-weight:700; color:var(--black);}
  .product-price-old{font-size:13px; color:var(--grey-light); text-decoration:line-through;}
  .product-order-btn{width:100%; padding:12px; border-radius:10px; background:var(--bg-panel); color:var(--black); border:none; font-size:13.5px; font-weight:600; cursor:pointer; font-family:'Golos Text'; transition:.2s ease;}
  .product-order-btn:hover{background:var(--green); color:var(--white);}

  .list-empty{display:none; padding:60px 20px; text-align:center; color:var(--grey-light); font-size:14px;}
  .list-empty.show{display:block;}
  .list-empty a{color:var(--green-dark); text-decoration:underline;}

  /* ================= КАРТОЧКА ТОВАРА ================= */
  .product-page-layout{display:grid; grid-template-columns:600px 1fr; gap:44px; padding:8px 48px 20px; align-items:start;}
  .product-gallery{position:sticky; top:96px;}
  .product-gallery-main{
    position:relative; aspect-ratio:1/1; border-radius:16px; overflow:hidden; border:1px solid var(--border);
    margin-bottom:12px; background:var(--white);
  }
  .product-gallery-main img{width:100%; height:100%; object-fit:contain; display:block; position:relative; z-index:1;}
  .product-gallery-badge{position:absolute; top:14px; left:14px; z-index:2; font-size:11px; font-weight:700; padding:6px 11px; border-radius:7px; letter-spacing:.02em; background:#e2402f; color:var(--white);}
  .product-gallery-tag{position:absolute; bottom:14px; left:14px; z-index:2; font-size:11px; color:var(--grey-light); background:rgba(255,255,255,.85); padding:6px 10px; border-radius:6px; border:1px solid var(--border);}

  .product-gallery-thumbs-row{display:flex; align-items:center; gap:8px;}
  .product-gallery-thumbs-arrow{
    width:32px; height:32px; border-radius:50%; border:1px solid var(--border); background:var(--white); display:flex;
    align-items:center; justify-content:center; cursor:pointer; flex-shrink:0; transition:border-color .18s ease, color .18s ease; color:var(--black);
  }
  .product-gallery-thumbs-arrow:hover{border-color:var(--green); color:var(--green-dark);}
  .product-gallery-thumbs-arrow svg{width:12px; height:12px; stroke:currentColor; flex-shrink:0;}
  .product-gallery-thumbs-viewport{overflow:hidden; flex:1;}
  .product-gallery-thumbs{display:flex; gap:9px; transition:transform .35s ease;}
  .product-gallery-thumb{
    width:60px; height:60px; border-radius:9px; border:1.5px solid var(--border); overflow:hidden; cursor:pointer;
    flex-shrink:0; background:var(--white); transition:border-color .2s ease;
  }
  .product-gallery-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
  .product-gallery-thumb.active{border-color:var(--green); box-shadow:0 0 0 1px var(--green);}

  .product-info-eyebrow{display:flex; align-items:center; gap:10px; font-size:12.5px; color:var(--grey-light); margin-bottom:8px;}
  .product-info-title{font-family:'Unbounded'; font-size:22px; font-weight:700; line-height:1.28; color:var(--black); margin-bottom:14px;}

  .product-color-block{margin-bottom:14px;}
  .product-color-label{font-size:12.5px; color:var(--grey-light); margin-bottom:8px;}
  .product-color-label b{color:var(--black); font-weight:600;}
  .product-color-row{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
  .product-color-swatch{
    width:42px; height:42px; border-radius:8px; border:1.5px solid var(--border); cursor:pointer; position:relative;
    transition:transform .15s ease, border-color .15s ease; flex-shrink:0; padding:0; overflow:hidden; background:var(--white);
  }
  .product-color-swatch img{width:100%; height:100%; object-fit:cover; display:block;}
  .product-color-swatch:hover{transform:scale(1.06); border-color:var(--green);}
  .product-color-swatch.active{border-color:var(--green); box-shadow:0 0 0 1.5px var(--green);}

  .product-price-block{display:flex; align-items:baseline; gap:12px; margin-bottom:14px;}
  .product-price-current{font-family:'Unbounded'; font-size:25px; font-weight:800; color:var(--black);}
  .product-price-old{font-size:14.5px; color:var(--grey-light); text-decoration:line-through;}

  .product-order-line{
    display:flex; align-items:center; gap:22px; flex-wrap:wrap; margin-bottom:18px;
    padding:14px 18px; border:1px solid var(--border); border-radius:12px; background:var(--bg-panel);
    width:fit-content; max-width:100%;
  }
  .order-line-item{display:flex; flex-direction:row; align-items:center; gap:6px; font-size:11.5px; color:var(--grey-light); white-space:nowrap;}
  .order-line-item b{font-family:'Unbounded'; font-size:14px; color:var(--black); font-weight:700;}
  .order-line-item input{
    width:76px; padding:7px 9px; border-radius:8px; border:1px solid var(--border); background:var(--white);
    font-family:'Golos Text'; font-size:13.5px; color:var(--black); text-align:right; transition:border-color .18s ease;
  }
  .order-line-item input:focus{outline:none; border-color:var(--green);}
  .product-order-line .btn-primary{padding:12px 24px; font-size:13.5px; box-shadow:none; white-space:nowrap;}

  .product-section{margin-bottom:36px;}
  .product-section.compact{margin-bottom:22px;}
  .product-section h2{font-family:'Unbounded'; font-size:19px; font-weight:700; color:var(--black); margin-bottom:16px;}
  .product-section.compact h2{font-size:15px; margin-bottom:10px;}
  .product-description{font-size:14.5px; color:var(--grey); line-height:1.7;}
  .product-description ul{padding-left:20px; margin-top:10px;}
  .product-description li{margin-bottom:6px;}
  .product-below{padding:6px 48px 10px; max-width:900px;}
  .product-below-tabs{display:flex; gap:28px; margin-bottom:22px; border-bottom:1px solid var(--border);}
  .product-below-tab{
    padding:12px 2px; background:none; border:none; font-family:'Golos Text'; font-size:14.5px; color:var(--grey-light);
    cursor:pointer; position:relative; transition:color .18s ease;
  }
  .product-below-tab:hover{color:var(--black);}
  .product-below-tab.active{color:var(--black); font-weight:600;}
  .product-below-tab.active::after{content:''; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--green);}
  .product-below-panel{display:none;}
  .product-below-panel.active{display:block;}

  .specs-table{display:inline-grid; grid-template-columns:max-content max-content; gap:0; border:1px solid var(--border); border-radius:12px; overflow:hidden; max-width:100%;}
  .specs-row{display:contents;}
  .specs-label, .specs-value{padding:9px 14px; font-size:12.5px; border-bottom:1px solid var(--border);}
  .specs-label{color:var(--grey-light); background:var(--bg-panel);}
  .specs-value{color:var(--black); font-weight:500;}
  .specs-row:last-child .specs-label, .specs-row:last-child .specs-value{border-bottom:none;}

  .methods-grid{display:flex; flex-wrap:wrap; gap:10px;}
  .method-btn{
    position:relative; overflow:hidden; display:inline-flex; align-items:center; padding:10px 18px; border-radius:100px;
    border:1.5px solid var(--green); font-family:'Golos Text'; font-size:12.5px; font-weight:600; color:var(--green-dark);
    background:var(--white); text-decoration:none; transition:.2s ease; white-space:nowrap;
  }
  .method-btn::before{
    content:''; position:absolute; top:0; left:-60%; width:35%; height:100%;
    background:linear-gradient(120deg, transparent, rgba(255,255,255,.65), transparent);
    transform:skewX(-20deg); transition:left .6s ease;
  }
  .method-btn:hover{background:var(--green); color:var(--white); border-color:var(--green);}
  .method-btn:hover::before{left:135%;}

  .size-section-inner{display:flex; gap:36px; align-items:flex-start; flex-wrap:wrap;}
  .size-diagram{width:120px; flex-shrink:0;}
  .size-diagram svg{width:100%; height:auto;}
  .size-table-wrap{overflow-x:auto; flex:1; min-width:280px;}
  .size-table-mobile{display:none;}
  .size-table{border-collapse:collapse; font-size:13px; white-space:nowrap;}
  .size-table th, .size-table td{padding:10px 14px; text-align:center; border-bottom:1px solid var(--border);}
  .size-table th{font-family:'Unbounded'; font-size:11.5px; color:var(--grey-light); font-weight:700; text-transform:uppercase;}
  .size-table td:first-child, .size-table th:first-child{text-align:left; color:var(--grey-light); font-weight:600; padding-left:0;}
  .size-note{font-size:12px; color:var(--grey-light); margin-top:14px;}

  .similar-products-grid{display:grid; grid-template-columns:repeat(5, 1fr); gap:20px;}

  /* ================= КОНТАКТЫ ================= */
  .contacts-layout{display:grid; grid-template-columns:.85fr 1.15fr; gap:32px; padding:8px 48px 40px; align-items:stretch;}
  .contacts-info-card, .contacts-form-card{border:1px solid var(--border); border-radius:16px; padding:32px;}
  .contacts-info-card{background:var(--bg-panel);}
  .contacts-form-card{background:var(--white);}
  .contacts-form-card h2{font-family:'Unbounded'; font-size:20px; font-weight:700; margin-bottom:6px;}
  .contacts-form-card .contacts-form-sub{font-size:13.5px; color:var(--grey); margin-bottom:22px; line-height:1.5;}
  .contacts-info-row{display:flex; align-items:flex-start; gap:14px; margin-bottom:20px;}
  .contacts-info-row:last-of-type{margin-bottom:0;}
  .contacts-info-ico{width:38px; height:38px; border-radius:50%; background:var(--white); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
  .contacts-info-ico svg{width:16px; height:16px; stroke:var(--green-dark); flex-shrink:0;}
  .contacts-info-text{font-size:14px; color:var(--black); line-height:1.5; padding-top:6px;}
  .contacts-info-text .label{display:block; font-size:11.5px; color:var(--grey-light); margin-bottom:3px;}
  .contacts-info-text a{color:var(--black); text-decoration:none;}
  .contacts-info-text a:hover{color:var(--green-dark);}
  .contacts-social-row{display:flex; gap:12px; margin-top:24px; padding-top:24px; border-top:1px solid var(--border);}
  .contacts-social-row a{
    display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%;
    background:var(--white); color:var(--grey); border:1px solid var(--border);
    transition:background-color .25s ease, transform .25s ease, color .25s ease, border-color .25s ease;
  }
  .contacts-social-row a:hover{background:var(--green); color:var(--white); border-color:var(--green); transform:scale(1.15);}
  .contacts-social-row svg{width:18px; height:18px; flex-shrink:0;}
  .contacts-requisites{margin-top:24px; padding-top:24px; border-top:1px solid var(--border); font-size:12px; color:var(--grey-light); line-height:1.6;}

  .contacts-map-section{padding:0 48px 60px;}
  .contacts-map-frame{border-radius:16px; overflow:hidden; border:1px solid var(--border); height:420px;}
  .contacts-map-frame iframe{width:100%; height:100%; border:0; display:block;}
  .contacts-map-note{margin-top:14px; font-size:13px; color:var(--grey-light);}

  /* ================= ПАКЕТЫ И ПАПКИ: ПРАЙС-ЛИСТ ================= */
  .bags-page-block{padding:0 48px;}
  .price-block{margin-bottom:34px;}
  .price-block h3{font-family:'Unbounded'; font-size:16px; font-weight:700; margin-bottom:6px;}
  .price-block .price-note{font-size:12.5px; color:var(--grey-light); margin-bottom:16px; line-height:1.5;}

  /* компактная таблица */
  .price-table-wrap{overflow-x:auto; border:1px solid var(--border); border-radius:14px;}
  .price-table{border-collapse:collapse; width:100%; font-size:13px; white-space:nowrap;}
  .price-table th, .price-table td{padding:11px 14px; text-align:center; border-bottom:1px solid var(--border);}
  .price-table tr:last-child td{border-bottom:none;}
  .price-table th{font-family:'Unbounded'; font-size:10.5px; font-weight:700; color:var(--grey-light); text-transform:uppercase; background:var(--bg-panel);}
  .price-table td:first-child, .price-table th:first-child{
    text-align:left; font-weight:600; color:var(--black); position:sticky; left:0; background:var(--white); box-shadow:2px 0 0 var(--border);
  }
  .price-table th:first-child{background:var(--bg-panel);}
  .price-table tbody tr:hover{background:var(--bg-panel);}
  .price-table tbody tr:hover td:first-child{background:#e4e7d9;}
  .price-table .unavail{color:var(--border);}
  .price-table-color-cell{display:flex; align-items:center; justify-content:center; gap:0;}

  .color-legend{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px;}
  .color-legend-item{display:flex; align-items:center; gap:6px; font-size:12px; color:var(--grey);}
  .color-dot{width:14px; height:14px; border-radius:50%; border:1px solid var(--border); flex-shrink:0;}

  /* гибрид: карточки размеров */
  .size-cards-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin-bottom:14px;}
  .size-card{border:1px solid var(--border); border-radius:14px; padding:18px; transition:border-color .18s ease;}
  .size-card:hover{border-color:var(--green);}
  .size-card-dims{font-family:'Unbounded'; font-size:15px; font-weight:700; color:var(--black); margin-bottom:4px;}
  .size-card-price{font-size:13px; color:var(--green-dark); font-weight:600; margin-bottom:12px;}
  .size-card-swatches{display:flex; flex-wrap:wrap; gap:5px;}
  .size-card-swatches .color-dot{cursor:default;}

  .print-price-compact-wrap{overflow-x:auto;}
  .print-price-compact{display:grid; grid-template-columns:1.3fr repeat(4, 1fr); gap:1px; background:var(--border); border:1px solid var(--border); border-radius:14px; overflow:hidden; font-size:12.5px; min-width:520px;}
  .ppc-cell{background:var(--white); padding:10px 12px; text-align:center;}
  .ppc-cell.head{background:var(--bg-panel); font-family:'Unbounded'; font-size:10px; font-weight:700; color:var(--grey-light); text-transform:uppercase;}
  .ppc-cell.label{text-align:left; font-weight:600; color:var(--black);}
  .ppc-more-note{font-size:12px; color:var(--grey-light); margin-top:10px;}

  /* вариант C: карточки-калькуляторы */
  .bag-calc-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:16px;}
  .bag-calc-single-wrap{max-width:680px;}
  .bag-calc-single-wrap .bag-calc-card{flex-direction:row; align-items:stretch;}
  .bag-calc-single-wrap .bag-calc-photo{width:260px; flex-shrink:0; aspect-ratio:unset;}
  .bag-calc-single-wrap .bag-calc-body{padding:24px; flex:1; display:flex; flex-direction:column; justify-content:center;}
  .bag-calc-single-wrap .bag-calc-title{font-size:18px;}
  .bag-calc-single-wrap .bag-calc-subtitle{font-size:13px; margin-bottom:18px;}
  .bag-calc-single-wrap .bag-calc-field{margin-bottom:14px;}
  .bag-calc-single-wrap .bag-calc-fields-row{display:flex; gap:12px;}
  .bag-calc-single-wrap .bag-calc-fields-row .bag-calc-field{flex:1; margin-bottom:14px;}
  .bag-calc-single-wrap .bag-calc-field label{font-size:12px;}
  .bag-calc-single-wrap .bag-calc-field select,
  .bag-calc-single-wrap .bag-calc-color-btn{font-size:13.5px; padding:10px 12px;}
  .bag-calc-single-wrap .bag-calc-result .unit-price{font-size:14px;}
  .bag-calc-single-wrap .bag-calc-result .total{font-size:19px;}
  .bag-calc-single-wrap .bag-calc-order{padding:12px; font-size:13.5px; max-width:220px;}

  /* ряд «калькулятор + характеристики» рядом, как парные панели одной высоты */
  .calc-with-specs{display:flex; align-items:stretch; gap:32px; flex-wrap:wrap;}
  .calc-with-specs .bag-calc-single-wrap{flex:0 0 auto;}
  .calc-specs-panel{
    flex:0 0 auto; width:fit-content; max-width:100%; border:1px solid var(--border); border-radius:14px;
    padding:28px; display:flex; flex-direction:column; justify-content:center; transition:border-color .18s ease;
  }
  .calc-specs-panel:hover{border-color:var(--green);}
  .calc-specs-panel h2{font-family:'Unbounded'; font-size:17px; font-weight:700; margin-bottom:16px; color:var(--black);}
  .calc-specs-panel .specs-table{display:inline-grid; grid-template-columns:max-content max-content; width:auto; max-width:100%; align-self:flex-start;}
  .calc-specs-panel .specs-label{white-space:nowrap;}
  .color-swatch-transparent{background:repeating-linear-gradient(45deg, #fff, #fff 3px, #dcdcdc 3px, #dcdcdc 5px) !important;}
  .bag-calc-card{border:1px solid var(--border); border-radius:14px; overflow:hidden; display:flex; flex-direction:column; transition:border-color .18s ease;}
  .bag-calc-card:hover{border-color:var(--green);}
  .bag-calc-photo{aspect-ratio:1/1; position:relative;}
  .bag-calc-photo-img{width:100%; height:100%; object-fit:cover; position:relative; z-index:1; display:none;}
  .bag-calc-body{padding:14px;}
  .bag-calc-title{font-family:'Unbounded'; font-size:14px; font-weight:700; color:var(--black); margin-bottom:2px;}
  .bag-calc-subtitle{font-size:11px; color:var(--grey-light); margin-bottom:10px;}
  .bag-calc-field{margin-bottom:8px; position:relative;}
  .bag-calc-field label{display:block; font-size:10.5px; color:var(--grey-light); margin-bottom:4px;}
  .bag-calc-field select{
    width:100%; padding:7px 8px; border-radius:8px; border:1px solid var(--border); background:var(--bg);
    font-family:'Golos Text'; font-size:12px; color:var(--black); cursor:pointer; transition:border-color .18s ease;
  }
  .bag-calc-field select:focus{outline:none; border-color:var(--green);}
  .bag-calc-color-btn{
    width:100%; display:flex; align-items:center; gap:7px; padding:7px 8px; border-radius:8px; border:1px solid var(--border);
    background:var(--bg); cursor:pointer; font-family:'Golos Text'; font-size:12px; color:var(--black); text-align:left;
  }
  .bag-calc-color-btn:hover{border-color:var(--green);}
  .bag-calc-color-dot{width:13px; height:13px; border-radius:50%; border:1px solid var(--border); flex-shrink:0;}
  .bag-calc-color-btn-name{flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
  .bag-calc-color-btn-arrow{width:10px; height:10px; stroke:var(--grey-light); flex-shrink:0; transition:transform .18s ease;}
  .bag-calc-color-field.open .bag-calc-color-btn-arrow{transform:rotate(180deg);}
  .bag-calc-color-menu{
    position:absolute; top:calc(100% + 4px); left:0; right:0; background:var(--white); border:1px solid var(--border);
    border-radius:10px; box-shadow:0 16px 32px rgba(23,24,26,.16); padding:6px; max-height:200px; overflow-y:auto; z-index:25;
    opacity:0; visibility:hidden; transform:translateY(-4px); transition:.16s ease;
  }
  .bag-calc-color-field.open .bag-calc-color-menu{opacity:1; visibility:visible; transform:translateY(0);}
  .bag-calc-color-option{
    display:flex; align-items:center; gap:8px; width:100%; padding:6px 7px; border-radius:7px; border:none;
    background:none; font-family:'Golos Text'; font-size:12px; color:var(--black); cursor:pointer; text-align:left;
  }
  .bag-calc-color-option:hover{background:var(--bg-panel);}
  .bag-calc-result{display:flex; align-items:flex-end; justify-content:space-between; margin-top:12px; padding-top:12px; border-top:1px solid var(--border);}
  .bag-calc-result .unit{font-size:10.5px; color:var(--grey-light); margin-bottom:2px;}
  .bag-calc-result .unit-price{font-size:12.5px; font-weight:600; color:var(--black);}
  .bag-calc-result .total-wrap{text-align:right;}
  .bag-calc-result .total{font-family:'Unbounded'; font-size:16px; font-weight:800; color:var(--green-dark);}
  .bag-calc-order{margin-top:12px; padding:10px; font-size:12.5px;}
  .bag-calc-handle-badge{
    position:absolute; top:8px; left:8px; z-index:2; font-size:9.5px; font-weight:700; padding:4px 8px;
    border-radius:6px; background:rgba(23,24,26,.72); color:var(--white); letter-spacing:.01em;
  }

  .advantage-cards-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:18px;}
  .advantage-card{border:1px solid var(--border); border-radius:14px; padding:22px; transition:border-color .18s ease;}
  .advantage-card:hover{border-color:var(--green);}
  .advantage-card:hover .advantage-card-ico{background:var(--green);}
  .advantage-card:hover .advantage-card-ico svg{stroke:var(--white);}

  /* ================= ШЕЛКОГРАФИЯ: ХАБ УСЛУГ ================= */
  .silk-grid{display:grid; grid-template-columns:repeat(5, 1fr); gap:14px; margin:0 48px;}
  .silk-tile{
    border:1px solid var(--border); border-radius:12px; overflow:hidden; display:flex; flex-direction:column;
    transition:border-color .18s ease; cursor:pointer;
  }
  .silk-tile:hover{border-color:var(--green);}
  .silk-tile-photo{aspect-ratio:1/1; position:relative;}
  .silk-tile-eyebrow{position:absolute; top:8px; left:8px; background:rgba(255,255,255,.9); color:var(--green-dark); font-size:10px; font-weight:600; padding:3px 8px; border-radius:20px; z-index:1;}
  .silk-tile-phototag{position:absolute; bottom:8px; left:8px; font-size:9px; line-height:1.3; color:#fff; background:rgba(23,24,26,.5); padding:4px 7px; border-radius:4px; z-index:1;}
  .blog-tile-phototag{position:absolute; bottom:12px; left:12px; font-size:10px; color:#fff; background:rgba(23,24,26,.45); padding:5px 9px; border-radius:4px; z-index:1;}
  .case-tile-phototag{position:absolute; bottom:12px; left:12px; font-size:10px; color:#fff; background:rgba(23,24,26,.45); padding:5px 9px; border-radius:4px; z-index:1;}
  .catalog-link-phototag{position:absolute; bottom:8px; left:8px; font-size:9px; color:#fff; background:rgba(23,24,26,.45); padding:4px 7px; border-radius:4px; z-index:1;}
  .case-thumb-tag{position:absolute; bottom:4px; left:4px; font-size:8px; color:#fff; background:rgba(23,24,26,.5); padding:2px 5px; border-radius:3px; z-index:1;}
  .silk-tile-body{padding:12px 14px 14px; flex:1; display:flex; flex-direction:column;}
  .silk-tile-title{font-family:'Unbounded'; font-size:12.5px; font-weight:700; color:var(--black); line-height:1.3; margin-bottom:6px;}
  .silk-tile-meta{font-size:10.5px; color:var(--grey-light); margin-bottom:10px;}
  .tech-card-desc{font-size:11.5px; line-height:1.4; color:var(--grey-light); margin-bottom:8px;}
  .silk-tile-price-row{margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:8px;}
  .silk-tile-price{display:flex; align-items:baseline; gap:4px;}
  .silk-tile-price .unit{font-size:10px; color:var(--grey-light);}
  .silk-tile-price .amount{font-family:'Unbounded'; font-size:13.5px; font-weight:700; color:var(--black);}
  .silk-tile-more{position:relative; overflow:hidden; border:1px solid var(--border); border-radius:8px; padding:5px 10px; font-size:11px; font-weight:600; color:var(--black); background:var(--white); transition:border-color .18s ease, background .18s ease, color .18s ease; white-space:nowrap;}
  .silk-tile-more::before{content:''; position:absolute; top:0; left:-60%; width:35%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,.6), transparent); transform:skewX(-20deg); transition:left .6s ease;}
  .silk-tile:hover .silk-tile-more{background:var(--green); border-color:var(--green); color:var(--white);}
  .silk-tile:hover .silk-tile-more::before{left:135%;}
  .silk-tile.disabled{cursor:default;}
  .silk-tile.no-photo .silk-tile-body{padding:18px 16px 16px;}
  .silk-tile.no-photo .silk-tile-title{font-size:13px; margin-bottom:16px; min-height:34px;}
  .silk-grid-secondary{margin-top:14px;}
  .silk-row-list{display:flex; flex-direction:column; margin:16px 48px 0; border:1px solid var(--border); border-radius:14px; overflow:hidden;}
  .silk-row-item{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px 20px; border-bottom:1px solid var(--border); cursor:pointer; transition:background .15s ease;}
  .silk-row-item:last-child{border-bottom:none;}
  .silk-row-item:hover{background:#f6f7f2;}
  .silk-row-item.disabled{cursor:default;}
  .silk-row-item.disabled:hover{background:transparent;}
  .silk-row-title{font-size:14px; font-weight:600; color:var(--black);}
  .silk-row-right{display:flex; align-items:center; gap:16px; flex-shrink:0;}
  .silk-row-price{font-family:'Unbounded'; font-size:12.5px; font-weight:700; color:var(--black); white-space:nowrap;}
  .silk-row-price .unit{font-family:'Golos Text'; font-size:10px; font-weight:400; color:var(--grey-light); margin-right:3px;}
  .silk-row-more{font-size:11px; font-weight:600; color:var(--grey-light); white-space:nowrap;}
  .silk-row-item:hover .silk-row-more{color:var(--green);}
  .silk-row-item.disabled .silk-row-more{opacity:.55;}
  .silk-row-item.disabled:hover .silk-row-more{color:var(--grey-light);}

  /* ================= ШЕЛКОГРАФИЯ: КАЛЬКУЛЯТОР НА ДЕТАЛЬНОЙ СТРАНИЦЕ ================= */
  .silk-calc-card{border:1px solid var(--border); border-radius:14px; padding:24px; transition:border-color .18s ease;}
  .silk-calc-card:hover{border-color:var(--green);}
  .silk-calc-fields{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px; margin-bottom:20px;}
  .silk-calc-field label{display:block; font-size:12px; color:var(--grey-light); margin-bottom:6px;}
  .silk-calc-field select{
    width:100%; padding:10px 12px; border-radius:9px; border:1px solid var(--border); background:var(--bg);
    font-family:'Golos Text'; font-size:13.5px; color:var(--black); cursor:pointer; transition:border-color .18s ease;
  }
  .silk-calc-field select:focus{outline:none; border-color:var(--green);}
  .calc-number-input{
    width:100%; padding:10px 12px; border-radius:9px; border:1px solid var(--border); background:var(--bg);
    font-family:'Golos Text'; font-size:13.5px; color:var(--black); transition:border-color .18s ease;
  }
  .calc-number-input:focus{outline:none; border-color:var(--green);}
  .silk-calc-result{display:flex; flex-direction:column; gap:14px; padding-top:18px; border-top:1px solid var(--border);}
  .silk-calc-result-prices{display:flex; flex-direction:column; gap:10px;}
  .silk-calc-result .unit{font-size:11px; color:var(--grey-light); margin-bottom:2px;}
  .silk-calc-result .unit-price{font-family:'Unbounded'; font-size:17px; font-weight:700; color:var(--black);}
  .silk-calc-result .total{font-family:'Unbounded'; font-size:22px; font-weight:700; color:var(--green-dark);}
  .silk-calc-disclaimer{font-size:11.5px; color:var(--grey-light); line-height:1.5; margin-top:14px; padding-top:14px; border-top:1px solid var(--border);}
  .calc-products-grid{display:grid; grid-template-columns:0.45fr 1fr; gap:28px; align-items:stretch; margin-bottom:34px;}
  .calc-products-grid .silk-calc-card{display:flex; flex-direction:column; justify-content:space-between;}
  .silk-calc-fields.silk-calc-fields-col{grid-template-columns:1fr;}
  .silk-calc-fields.silk-calc-fields-4col{grid-template-columns:repeat(4, 1fr);}
  .silk-calc-inline-row{display:flex; align-items:flex-end; gap:16px; flex-wrap:wrap;}
  .silk-calc-inline-row .silk-calc-field{flex:1.3; min-width:170px; margin-bottom:0;}
  .silk-calc-inline-prices{display:flex; gap:16px; flex-shrink:0;}
  .silk-calc-price-box{display:flex; align-items:center; justify-content:space-between; gap:18px; border-radius:10px; padding:11px 18px; min-width:170px;}
  .silk-calc-price-box.unit-box{background:var(--bg-panel);}
  .silk-calc-price-box.total-box{background:rgba(72,162,22,.12); border:1px solid rgba(72,162,22,.35);}
  .silk-calc-price-box .unit{font-size:12px; color:var(--grey-light); margin:0; white-space:nowrap;}
  .silk-calc-price-box .unit-price{font-family:'Unbounded'; font-size:15px; font-weight:700; color:var(--black); white-space:nowrap;}
  .silk-calc-price-box .total{font-family:'Unbounded'; font-size:16.5px; font-weight:700; color:var(--green-dark); white-space:nowrap;}
  .silk-calc-inline-row .btn-primary{flex-shrink:0; white-space:nowrap;}
  .calc-picker-head{margin-bottom:18px;}
  .calc-picker-head h3{font-family:'Unbounded'; font-size:17px; font-weight:700; color:var(--black); white-space:nowrap;}
  .calc-picker-row{display:flex; align-items:center; gap:16px;}
  .calc-picker-cards{display:grid; grid-template-columns:repeat(4, 1fr); gap:16px; flex:1; min-width:0;}
  .calc-picker-card{cursor:pointer;}
  .calc-picker-card-photo{position:relative; aspect-ratio:1/1; border-radius:12px; overflow:hidden; border:1px solid var(--border); margin-bottom:11px; transition:border-color .18s ease;}
  .calc-picker-card:hover .calc-picker-card-photo{border-color:var(--green);}
  .calc-picker-card-photo .product-badge{position:absolute; top:8px; left:8px; z-index:2;}
  .calc-picker-card-name{font-family:'Unbounded'; font-size:12.5px; font-weight:700; color:var(--black); line-height:1.35; margin-bottom:6px; min-height:34px;}
  .calc-picker-card-price{font-family:'Unbounded'; font-size:14.5px; font-weight:700; color:var(--black); margin-bottom:12px;}
  .calc-picker-arrow{width:38px; height:38px; border-radius:50%; border:1px solid var(--border); background:var(--white); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.2s ease; flex-shrink:0;}
  .calc-picker-arrow:hover{background:var(--black); border-color:var(--black);}
  .calc-picker-arrow svg{width:15px; height:15px; stroke:var(--black); transition:stroke .2s;}
  .calc-picker-arrow:hover svg{stroke:var(--white);}
  .calc-picker-cta{margin-top:22px; text-align:center;}
  .silk-features-list{border:1px solid var(--border); border-radius:14px; padding:22px 26px; list-style:none; margin:0;}
  .silk-features-list li{font-size:13.5px; color:var(--black); line-height:1.6; margin-bottom:8px; padding-left:18px; position:relative;}
  .silk-features-list li::before{content:''; position:absolute; left:0; top:9px; width:6px; height:6px; border-radius:50%; background:var(--green);}
  .silk-features-list li:last-child{margin-bottom:0;}
  .info-box{border:1px solid var(--border); border-radius:14px; padding:22px 26px;}
  .req-list{list-style:none; margin:10px 0 0; padding:0;}
  .req-list li{font-size:13.5px; color:var(--black); line-height:1.6; margin-bottom:7px; padding-left:15px; position:relative;}
  .req-list li::before{content:'–'; position:absolute; left:0; color:var(--green-dark); font-weight:700;}
  .req-list li:last-child{margin-bottom:0;}

  /* ================= СТРАНИЦЫ ТЕХНОЛОГИЙ: РАЗВОРОТ ФОТО+ТЕКСТ ================= */
  .tech-intro-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; align-items:center; margin:0 48px 48px;}
  .tech-intro-photo-wrap{perspective:900px;}
  .tech-intro-photo{
    aspect-ratio:4/3.3; border-radius:18px; position:relative; overflow:hidden; transform-style:preserve-3d; transition:transform .1s ease;
  }
  .tech-intro-photo .regmark{position:absolute; top:16px; right:16px; z-index:2; opacity:.85;}
  .tech-intro-photo .regmark svg circle,.tech-intro-photo .regmark svg line{stroke:#fff;}
  .tech-intro-photo .regmark svg circle[fill]{fill:#fff;}
  .tech-intro-photo-tag{position:absolute; top:16px; left:16px; font-size:11px; color:#fff; background:rgba(23,24,26,.4); padding:6px 10px; border-radius:4px; z-index:2;}
  .tech-intro-text h2{font-family:'Unbounded'; font-size:19px; font-weight:700; color:var(--black); margin-bottom:14px;}
  .tech-intro-text p{font-size:14.5px; color:var(--grey); line-height:1.75; margin-bottom:16px;}
  .tech-intro-cta{margin-top:6px; display:flex; align-items:center; gap:14px; flex-wrap:wrap;}
  .tech-intro-cta .cta-note{font-size:12px; color:var(--grey-light);}

  /* ================= ТОВАРНЫЕ СТРАНИЦЫ: ЗАГОЛОВОК + ФОТО СПРАВА ================= */
  .product-head-grid{display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:center; margin:0 48px 40px;}
  .product-head-text h1{font-family:'Unbounded'; font-size:36px; font-weight:800; margin-bottom:14px; color:var(--black);}
  .product-head-text p{font-size:15.5px; color:var(--grey); line-height:1.6;}
  .product-head-photo-wrap{perspective:900px;}
  .catalog-link-cta{display:inline-flex; align-items:center; gap:7px; margin-top:16px; font-size:13.5px; font-weight:600; color:var(--green-dark); text-decoration:none; cursor:pointer;}
  .catalog-link-cta svg{width:15px; height:15px; stroke:currentColor; transition:transform .18s ease;}
  .catalog-link-cta:hover{color:var(--green);}
  .catalog-link-cta:hover svg{transform:translateX(3px);}

  /* ================= ПРАЙС-ИНСТРУМЕНТ (ВКЛАДКИ) ================= */
  .price-tool-tabs{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:18px;}
  .price-tool-tab{
    background:none; border:1px solid var(--border); border-radius:100px; padding:9px 18px; font-family:'Golos Text';
    font-size:13px; color:var(--grey); cursor:pointer; transition:.18s ease;
  }
  .price-tool-tab:hover{border-color:var(--green); color:var(--black);}
  .price-tool-tab.active{background:var(--green); border-color:var(--green); color:#fff; font-weight:600;}
  .price-tool-panel{display:none;}
  .price-tool-panel.active{display:block;}
  .price-tool-note{font-size:12px; color:var(--grey-light); margin-top:14px; line-height:1.6;}

  /* ================= АЛЬТЕРНАТИВНЫЕ МЕТОДЫ ================= */
  .alt-methods-grid{display:grid; grid-template-columns:repeat(2, 1fr); gap:16px;}
  .alt-method-card{
    border:1px solid var(--border); border-radius:14px; padding:20px 22px; cursor:pointer; transition:border-color .18s ease;
    display:flex; align-items:center; justify-content:space-between; gap:14px;
  }
  .alt-method-card:hover{border-color:var(--green);}
  .alt-method-card-title{font-family:'Unbounded'; font-size:14.5px; font-weight:700; color:var(--black); margin-bottom:6px;}
  .alt-method-card-desc{font-size:12.5px; color:var(--grey-light); line-height:1.5;}
  .alt-method-card-arrow{flex-shrink:0; width:32px; height:32px; border-radius:50%; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; transition:.18s ease;}
  .alt-method-card-arrow svg{width:14px; height:14px; stroke:var(--black); transition:stroke .18s ease;}
  .alt-method-card:hover .alt-method-card-arrow{background:var(--green); border-color:var(--green);}
  .alt-method-card:hover .alt-method-card-arrow svg{stroke:#fff;}

  /* ================= ПЛИТКИ КАТАЛОГА (БЕЗ ССЫЛОК) ================= */
  .catalog-link-grid{display:grid; grid-template-columns:repeat(7, 1fr); gap:12px; margin:0 48px;}
  .catalog-link-grid.catalog-link-grid-lg{grid-template-columns:repeat(8, 1fr); gap:10px;}
  .catalog-link-grid-lg .catalog-link-tile{border-radius:10px;}
  .catalog-link-grid-lg .catalog-link-name{padding:10px 6px; font-size:12px;}
  .catalog-link-tile{border:1px solid var(--border); border-radius:12px; overflow:hidden; cursor:pointer; transition:border-color .18s ease;}
  .catalog-link-tile:hover{border-color:var(--green);}
  .catalog-link-photo{aspect-ratio:1/1; position:relative;}
  .catalog-link-name{padding:10px 8px; font-size:12px; font-weight:600; color:var(--black); text-align:center; transition:background .18s ease, color .18s ease;}
  .catalog-link-tile:hover .catalog-link-name{background:var(--green); color:#fff;}

  /* ================= БЛОГ ================= */
  .blog-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; margin:0 48px;}
  .blog-tile{
    border:1px solid var(--border); border-radius:14px; overflow:hidden; display:flex; flex-direction:column;
    transition:border-color .18s ease; cursor:pointer;
  }
  .blog-tile:hover{border-color:var(--green);}
  .blog-tile.disabled{cursor:default;}
  .blog-tile.disabled:hover{border-color:var(--border);}
  .blog-tile-photo{aspect-ratio:16/10; position:relative;}
  .blog-tile-eyebrow{position:absolute; top:10px; left:10px; background:rgba(255,255,255,.9); color:var(--green-dark); font-size:10.5px; font-weight:600; padding:3px 9px; border-radius:20px; z-index:1;}
  .blog-tile-body{padding:18px; flex:1; display:flex; flex-direction:column;}
  .blog-tile-tag{font-size:11px; font-weight:600; color:var(--green-dark); text-transform:uppercase; letter-spacing:.04em; margin-bottom:8px;}
  .blog-tile-title{font-family:'Unbounded'; font-size:14.5px; font-weight:700; color:var(--black); line-height:1.35; margin-bottom:8px;}
  .blog-tile-excerpt{font-size:12.5px; color:var(--grey-light); line-height:1.55; margin-bottom:14px;}
  .blog-tile-meta{margin-top:auto; display:flex; align-items:center; justify-content:space-between; font-size:11px; color:var(--grey-light);}
  .blog-tile-more{color:var(--black); font-weight:600; transition:color .18s ease;}
  .blog-tile:hover .blog-tile-more{color:var(--green-dark);}

  .article-meta{display:flex; align-items:center; gap:14px; font-size:12.5px; color:var(--grey-light); margin-bottom:10px;}
  .article-meta .tag{color:var(--green-dark); font-weight:600; text-transform:uppercase; letter-spacing:.04em; font-size:11px;}
  .article-body{max-width:760px;}
  .article-body h2{font-family:'Unbounded'; font-size:18px; font-weight:700; color:var(--black); margin:32px 0 14px;}
  .article-body h2:first-child{margin-top:0;}
  .article-body p{font-size:14.5px; color:var(--grey); line-height:1.75; margin-bottom:14px;}
  .article-body ul{margin:0 0 16px; padding-left:20px;}
  .article-body li{font-size:14.5px; color:var(--grey); line-height:1.7; margin-bottom:6px;}
  .article-body a{color:var(--green-dark); font-weight:600; text-decoration:none; border-bottom:1px solid var(--border);}
  .article-body a:hover{border-color:var(--green-dark);}
  .article-cover{aspect-ratio:35/12; border-radius:16px; position:relative; margin:0 48px 8px; overflow:hidden;}

  /* ================= КЕЙСЫ ================= */
  .cases-grid{display:grid; grid-template-columns:repeat(2, 1fr); gap:20px; margin:0 48px;}
  .merch-segments-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; margin:0 48px 48px;}
  .merch-segments-grid .case-tile{scroll-margin-top:110px;}
  .merch-seg-card-link{display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:600; color:var(--green-dark); cursor:pointer; transition:gap .18s ease;}
  .merch-seg-card-link:hover{gap:10px;}
  .merch-seg-card-link svg{width:14px; height:14px;}
  .case-tile{border:1px solid var(--border); border-radius:14px; overflow:hidden; display:flex; flex-direction:column; transition:border-color .18s ease;}
  .case-tile:hover{border-color:var(--green);}
  .case-tile-photo{aspect-ratio:16/9; position:relative; cursor:pointer; overflow:hidden; transition:filter .18s ease;}
  .case-tile-photo:hover{filter:brightness(1.05);}
  .case-tile-body{padding:22px;}
  .case-tile-tag{font-size:11px; font-weight:600; color:var(--green-dark); text-transform:uppercase; letter-spacing:.04em; margin-bottom:8px;}
  .case-tile-title{font-family:'Unbounded'; font-size:16px; font-weight:700; color:var(--black); margin-bottom:10px;}
  .case-tile-desc{font-size:13px; color:var(--grey-light); line-height:1.6; margin-bottom:16px;}
  .case-tile-stats{display:flex; gap:24px; border-top:1px solid var(--border); padding-top:14px;}
  .case-tile-stats .stat b{display:block; font-family:'Unbounded'; font-size:17px; color:var(--black);}
  .case-tile-stats .stat span{font-size:11px; color:var(--grey-light);}
  .case-thumbs-row{display:flex; gap:8px; padding:14px 22px 22px;}
  .case-thumb{flex:1; aspect-ratio:1/1; border-radius:9px; position:relative; cursor:pointer; overflow:hidden; transition:transform .18s ease, box-shadow .18s ease;}
  .case-thumb:hover{transform:scale(1.05); box-shadow:0 6px 18px rgba(23,24,26,.18); z-index:1;}

  /* ================= ЛАЙТБОКС ДЛЯ ФОТО КЕЙСА ================= */
  .case-lightbox{position:fixed; inset:0; background:rgba(23,24,26,.72); display:none; align-items:center; justify-content:center; padding:32px; z-index:320;}
  .case-lightbox.open{display:flex;}
  .case-lightbox-inner{position:relative; width:100%; max-width:760px;}
  .case-lightbox-photo{width:100%; aspect-ratio:4/3; border-radius:16px; position:relative; overflow:hidden; box-shadow:0 50px 110px rgba(0,0,0,.4);}
  .case-lightbox-close{position:absolute; top:-46px; right:0; width:36px; height:36px; border-radius:50%; background:rgba(255,255,255,.92); border:none; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.2s ease;}
  .case-lightbox-close:hover{background:var(--white);}
  .case-lightbox-close svg{width:16px; height:16px; stroke:var(--black);}

  /* ================= ВАКАНСИИ ================= */
  .jobs-list{margin:0 48px; display:flex; flex-direction:column; gap:14px;}
  .job-card{border:1px solid var(--border); border-radius:14px; padding:22px 26px; transition:border-color .18s ease;}
  .job-card:hover{border-color:var(--green);}
  .job-card-top{display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:10px;}
  .job-card-title{font-family:'Unbounded'; font-size:16px; font-weight:700; color:var(--black);}
  .job-card-meta{display:flex; gap:10px; flex-wrap:wrap; font-size:11.5px; color:var(--grey-light); margin-top:6px;}
  .job-card-meta span{border:1px solid var(--border); border-radius:20px; padding:3px 10px;}
  .job-card-salary{font-family:'Unbounded'; font-size:16px; font-weight:700; color:var(--green-dark); white-space:nowrap;}
  .job-card-desc{font-size:13.5px; color:var(--grey); line-height:1.65; margin-bottom:12px;}
  .job-card-req{font-size:12.5px; color:var(--grey-light); line-height:1.6;}
  .job-card-req b{color:var(--black); font-weight:600;}
  .job-card-btn{margin-top:14px; border:1px solid var(--border); border-radius:9px; padding:9px 18px; font-size:12.5px; font-weight:600; color:var(--black); background:var(--white); cursor:pointer; transition:border-color .18s ease, background .18s ease, color .18s ease;}
  .job-card-btn:hover{background:var(--green); border-color:var(--green); color:var(--white);}
  .advantage-card-ico{width:42px; height:42px; border-radius:50%; background:var(--bg-panel); display:flex; align-items:center; justify-content:center; margin-bottom:14px; transition:background .18s ease;}
  .advantage-card-ico svg{width:19px; height:19px; stroke:var(--green-dark);}
  .advantage-card h4{font-family:'Unbounded'; font-size:14.5px; font-weight:700; margin-bottom:8px;}
  .advantage-card p{font-size:13px; color:var(--grey); line-height:1.55;}

  .list-pagination{display:flex; flex-direction:column; align-items:center; gap:26px; margin-top:44px;}
  .list-loadmore-btn{padding:15px 32px; font-size:14px;}
  .pagination-row{display:flex; align-items:center; gap:6px; flex-wrap:wrap; justify-content:center;}
  .pagination-arrow{
    width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    border:1px solid var(--border); background:var(--white); cursor:pointer; transition:.2s ease; flex-shrink:0; color:var(--black);
  }
  .pagination-arrow:hover{border-color:var(--green); color:var(--green-dark);}
  .pagination-arrow svg{width:13px; height:13px; stroke:currentColor; flex-shrink:0;}
  .pagination-page{
    min-width:36px; height:36px; padding:0 4px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    font-size:14px; color:var(--grey); cursor:pointer; background:none; border:none; font-family:'Golos Text';
    transition:background .15s ease, color .15s ease; flex-shrink:0;
  }
  .pagination-page:hover{background:var(--bg-panel); color:var(--black);}
  .pagination-page.active{background:var(--green); color:var(--white); font-weight:700; cursor:default;}
  .pagination-ellipsis{color:var(--grey-light); font-size:14px; padding:0 2px;}

  

  /* ================= БЛОК КАТЕГОРИЙ ================= */
  .cat-section{padding-bottom:20px;}
  .cat-section-head{display:flex; align-items:flex-end; justify-content:space-between; gap:40px; padding:56px 48px 40px;}
  .cat-head-left{max-width:920px; flex-shrink:0;}
  .cat-h2{font-size:34px; font-weight:700; line-height:1.2;}
  .cat-h2 b{color:var(--green-dark); font-weight:800;}
  .cat-sub{font-size:15.5px; color:var(--grey); line-height:1.55; margin-top:16px; max-width:600px;}
  .cat-head-right{flex-shrink:0; padding-bottom:6px;}

  .btn-outline{display:inline-flex; align-items:center; gap:8px; padding:13px 24px; border-radius:100px; border:1.5px solid var(--black); font-family:'Golos Text'; font-size:13.5px; font-weight:600; color:var(--black); text-decoration:none; transition:.2s ease; white-space:nowrap;}
  .btn-outline:hover{background:var(--black); color:var(--white);}
  .btn-outline .arrow{transition:transform .25s ease;}
  .btn-outline:hover .arrow{transform:translateX(4px);}
  .btn-outline-green{position:relative; overflow:hidden;}
  .btn-outline-green::before{content:''; position:absolute; top:0; left:-60%; width:35%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,.6), transparent); transform:skewX(-20deg); transition:left .6s ease;}
  .btn-outline-green:hover::before{left:135%;}
  .btn-outline-green:hover{background:var(--green); border-color:var(--green); color:var(--white);}

  .cat-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:28px; padding:0 48px 40px; align-items:start;}

  .cat-macro-nav{display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding:0 48px; margin-bottom:28px;}
  .cat-macro-pills{display:flex; gap:10px; flex-wrap:wrap;}
  .cat-macro-pill{padding:9px 18px; border-radius:100px; border:1px solid var(--border); background:var(--bg); font-size:13.5px; font-weight:600; color:var(--grey); text-decoration:none; transition:.2s ease; cursor:pointer; display:inline-flex; align-items:center; gap:6px;}
  .cat-macro-pill:hover{border-color:var(--green); color:var(--black);}
  .cat-macro-pill.active{background:var(--black); border-color:var(--black); color:var(--white);}
  .cat-macro-num, .cat-macro-pill .cat-go{display:none;}
  .cat-photo-wrap{position:sticky; top:24px;}
  .cat-photo{
    position:relative; border-radius:12px; overflow:hidden;
    background:linear-gradient(155deg, #eef0e6 0%, #cfe0bd 55%, var(--green-deep) 130%);
    border:1px solid var(--border);
    box-shadow:0 30px 60px rgba(23,24,26,.12); transition:background .35s ease, height .25s ease;
  }
  .cat-photo::before{content:''; position:absolute; left:0; right:0; bottom:0; height:60%; background:linear-gradient(to top, rgba(23,24,26,.62), transparent); pointer-events:none;}
  .cat-photo-overlay{position:absolute; left:22px; right:22px; bottom:20px; z-index:1; transition:opacity .18s ease, transform .22s ease;}
  .cat-photo-cat{font-size:11.5px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--green-pale); margin-bottom:6px;}
  .cat-photo-sub{font-family:'Unbounded'; font-weight:700; font-size:clamp(19px,2.2vw,25px); color:var(--white); margin-bottom:8px; letter-spacing:-.01em;}
  .cat-photo-desc{font-size:13px; color:rgba(255,255,255,.82); line-height:1.45; max-width:340px;}
  .cat-photo .regmark{position:absolute; top:16px; right:16px; z-index:2; opacity:.85;}
  .cat-photo .regmark svg circle,.cat-photo .regmark svg line{stroke:#ffffff;}
  .cat-photo .regmark svg circle[fill]{fill:#ffffff;}
  .cat-photo-tag{position:absolute; top:16px; left:16px; font-size:11px; color:var(--white); background:rgba(23,24,26,.4); padding:6px 10px; border-radius:4px; z-index:2;}

  .cat-list{display:flex; flex-direction:column;}
  .cat-row{
    display:flex; align-items:center; gap:16px; padding:22px 14px; border-top:1px solid var(--border);
    cursor:pointer; transition:background .2s ease, padding-left .2s ease, border-color .2s ease;
    border-left:2px solid transparent;
  }
  .cat-list .cat-row:last-child{border-bottom:1px solid var(--border);}
  .cat-row:hover, .cat-row.active{background:var(--bg-panel); padding-left:22px; border-left-color:var(--green);}
  .cat-num{font-family:'Unbounded'; font-size:12px; color:var(--grey-light); width:22px; flex-shrink:0; transition:color .2s;}
  .cat-row:hover .cat-num, .cat-row.active .cat-num{color:var(--green-dark);}
  .cat-body{flex:1; min-width:0;}
  .cat-title{font-family:'Unbounded'; font-size:17px; font-weight:700; margin-bottom:4px;}
  .cat-desc{font-size:13.5px; color:var(--grey); line-height:1.4;}
  .cat-badge{font-size:11.5px; color:var(--grey-light); background:var(--white); border:1px solid var(--border); padding:5px 11px; border-radius:100px; white-space:nowrap; flex-shrink:0;}
  .cat-row:hover .cat-badge, .cat-row.active .cat-badge{border-color:var(--green); color:var(--green-dark);}
  .cat-go{position:relative; overflow:hidden; display:flex; align-items:center; gap:6px; padding:9px 16px; border-radius:100px; border:1px solid var(--border); font-size:12.5px; font-weight:600; color:var(--black); flex-shrink:0; white-space:nowrap; transition:.2s ease;}
  .cat-go::before{content:''; position:absolute; top:0; left:-60%; width:35%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,.55), transparent); transform:skewX(-20deg); transition:left .6s ease;}
  .cat-go svg{width:13px; height:13px; stroke:var(--black); transition:transform .2s, stroke .2s;}
  .cat-row:hover .cat-go, .cat-row.active .cat-go{background:var(--green); border-color:var(--green); color:var(--white);}
  .cat-row:hover .cat-go::before, .cat-row.active .cat-go::before{left:135%;}
  .cat-row:hover .cat-go svg, .cat-row.active .cat-go svg{stroke:var(--white); transform:translateX(2px);}

  .cat-cta{margin:0; background:var(--bg-panel); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:34px 48px;}
  .cat-cta-inner{display:flex; align-items:center; justify-content:center; gap:40px; flex-wrap:wrap; max-width:1240px; margin:0 auto;}
  .cat-cta-text h3{font-family:'Unbounded'; font-size:20px; font-weight:700; margin-bottom:6px;}
  .cat-cta-text p{font-size:14px; color:var(--grey); max-width:380px;}
  .cat-cta-form{display:flex; gap:10px; flex:1; min-width:280px; max-width:440px;}
  .cat-cta-form input{flex:1; padding:14px 18px; border-radius:100px; border:1px solid var(--border); font-family:'Golos Text'; font-size:14px; background:var(--white); color:var(--black);}
  .cat-cta-form input:focus{outline:none; border-color:var(--green);}
  .cat-cta-form input::placeholder{color:var(--grey-light);}
  .cat-cta-form .btn-primary{white-space:nowrap; padding:14px 24px; font-size:13.5px; box-shadow:none;}

  /* ================= АДАПТИВ (перемещено в конец, чтобы всегда побеждать в каскаде) ================= */
  @media (max-width:860px){
    .topbar-utility{
      display:grid; grid-template-columns:1fr auto; grid-template-rows:auto auto; row-gap:6px; column-gap:14px;
      align-items:center; padding:12px 20px;
    }
    .logo{grid-column:1; grid-row:1;}
    .topbar-utility-right{display:contents;}
    .topbar-contacts{
      grid-column:1; grid-row:2; display:flex; flex-direction:column; align-items:flex-start; gap:4px;
      font-size:13.5px; white-space:normal;
    }
    .nav-search{display:none;}
    .nav-divider{display:none;}
    .topbar-cta-mobile{display:block; width:100%; margin-top:8px; padding:11px 16px; font-size:13.5px; text-align:center; box-shadow:none;}
    .topbar-social{grid-column:2; grid-row:1/3; align-self:center; justify-self:end; flex-shrink:0;}
    .topbar-brand-row{padding:12px 20px;}
    .mobile-menu-btn{display:flex;}
    .nav-links{
      display:flex; flex-direction:column; align-items:stretch; flex-wrap:nowrap; gap:0;
      position:fixed; top:0; right:-100%; width:86%; max-width:360px; height:100dvh;
      background:var(--white); padding:88px 22px 32px; overflow-y:auto; white-space:normal;
      box-shadow:-12px 0 40px rgba(23,24,26,.14); transition:right .35s ease; z-index:500;
    }
    .nav-links.mobile-open{right:0;}
    .nav-item{width:100%; flex-shrink:1;}
    .nav-links > .nav-link{padding:14px 2px; border-bottom:1px solid var(--border); font-size:15.5px;}
    .nav-link{width:100%; justify-content:space-between; padding:14px 2px; border-bottom:1px solid var(--border); font-size:15.5px;}
    .nav-link-catalog{background:none !important; color:var(--black) !important; padding:14px 2px; border-radius:0;}
    .nav-dropdown, .nav-dropdown.mega{
      position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; border:none;
      column-count:1; min-width:0; padding:0; max-height:0; overflow:hidden; transition:max-height .3s ease, padding .3s ease;
    }
    .nav-item.mobile-expanded .nav-dropdown{max-height:700px; padding:6px 0 12px 14px;}
    .nav-item.mobile-expanded > .nav-link svg:last-child{transform:rotate(180deg);}
    .topbar-brand-row .btn-primary{display:none;}
    .hero-a-grid{grid-template-columns:1fr; padding:20px 20px 40px;}
    .h-a{font-size:34px;}
    .chip{display:none;}
    .stats-row{flex-wrap:wrap;}
    .cat-grid{grid-template-columns:1fr; padding:0 20px 40px;}
    .cat-macro-nav{padding:0 20px; flex-direction:column; align-items:stretch; gap:16px;}
    .cat-photo-wrap{display:none;}
    .cat-list{display:none;}
    .cat-macro-pills{flex-direction:column; flex-wrap:nowrap; gap:0;}
    .cat-macro-pill{
      width:100%; display:flex; align-items:center; gap:14px; justify-content:flex-start;
      padding:16px 4px; border:none; border-top:1px solid var(--border); border-radius:0;
      background:none; font-size:15.5px; color:var(--black); font-weight:600;
    }
    .cat-macro-pills > *:last-child{border-bottom:1px solid var(--border);}
    .cat-macro-pill.active{background:none; border-color:transparent; color:var(--black);}
    .cat-macro-num{display:block; font-family:'Unbounded'; font-size:12px; color:var(--grey-light); width:22px; flex-shrink:0;}
    .cat-macro-label{flex:1; text-align:left;}
    .cat-macro-pill .cat-go{display:flex; margin-left:auto; flex-shrink:0;}
    .cat-section-head{flex-direction:column; align-items:flex-start; padding:60px 20px 24px;}
    .cat-cta{margin:0; padding:24px 20px;}
    .cat-cta-inner{flex-direction:column; align-items:flex-start;}
    .cat-cta-inner .final-cta-contact-stack{align-self:center; align-items:center;}
    .cat-cta-inner .final-cta-social{align-self:center; justify-content:center;}
    .cat-cta-inner > .btn-primary{align-self:center;}
    .cat-cta-form{width:100%; max-width:100%;}
    .cat-go{display:none;}
    .proof-row, .proof-row.reverse{grid-template-columns:1fr; gap:22px;}
    .proof-row.reverse .proof-photo-wrap, .proof-row.reverse .proof-card{order:initial;}
    .proof-head{padding:0 20px 40px;}
    .proof-row{padding:0 20px; margin-bottom:44px;}
    .proof-photo-num{font-size:120px; bottom:-24px;}
    .cases-head{padding:0 20px 30px;}
    .cases-carousel{padding:0 20px;}
    .case-slide{grid-template-columns:1fr; gap:24px;}
    .case-modal-inner{grid-template-columns:1fr; max-height:92vh;}
    .case-modal-photo{aspect-ratio:16/10;}
    .case-modal-text{padding:26px;}
    .lead-modal-inner{padding:36px 22px 26px;}
    .legal-modal-inner{padding:32px 22px 26px; max-height:88vh;}
    .cookie-banner{left:12px; right:12px; bottom:12px; max-width:none; padding:18px;}
    .cookie-banner-actions{flex-direction:column;}
    .lead-modal .regmark{left:22px;}
    .cta-band{padding:32px 20px;}
    .cta-band-oneline{white-space:normal;}
    .cta-band-oneline span{display:block; margin-left:0; margin-top:6px;}
    .cta-band-text h2, .cta-band-text p{white-space:normal;}
    .cta-band-inner{flex-direction:column; align-items:flex-start;}
    .cta-band-form{width:100%; max-width:100%; flex-direction:column;}
    .cta-band .regmark{display:none;}
    .adv-section{padding:10px 20px 60px;}
    .adv-grid{grid-template-columns:1fr;}
    .reviews-section{padding:10px 20px 60px;}
    .reviews-grid{grid-template-columns:1fr;}
    .tech-links-strip{padding:16px 20px;}
    .clients-section{padding:10px 20px 60px;}
    .clients-viewport{overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 -20px; padding:0 20px; scrollbar-width:none;}
    .clients-viewport::-webkit-scrollbar{display:none;}
    .client-tile{flex:0 0 130px; max-width:none; height:52px;}
    .process-section{padding:10px 20px 60px;}
    .process-strip{flex-direction:column; gap:20px;}
    .process-strip::before{display:none;}
    .process-node{display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:14px; row-gap:2px; text-align:left; padding:0;}
    .process-node-circle{grid-column:1; grid-row:1/3; margin:0;}
    .process-node h3{grid-column:2; grid-row:1; align-self:end;}
    .process-node p{grid-column:2; grid-row:2; max-width:none;}
    .cta-speed{padding:44px 20px;}
    .cta-speed-inner{flex-direction:column; align-items:flex-start; gap:24px;}
    .big-num{font-size:100px;}
    .cta-band-form{width:100%;}
    .about-grid{grid-template-columns:1fr; gap:24px;}
    .about-section{padding:10px 20px 60px;}
    #about{display:none;}
    .faq-section{padding:10px 20px 60px;}
    .faq-2col-grid{grid-template-columns:1fr;}
    .final-cta{padding:56px 20px;}
    .final-cta h2{font-size:26px;}
    .footer-top{grid-template-columns:1fr; gap:24px;}
    .footer-col:not(:last-of-type){display:none;}
    .site-footer{padding:44px 20px 24px;}
    .breadcrumbs{padding:16px 20px 0;}
    .catalog-head{padding:16px 20px 28px;}
    .catalog-head h1{font-size:27px;}
    .catalog-grid{grid-template-columns:repeat(2, 1fr); margin:0 20px 40px;}
    .catalog-tile{padding:22px 18px; min-height:132px;}
    .catalog-tile-name{font-size:14px;}
    .proto-switcher{padding:8px 20px;}
    .examples-section{padding:10px 20px 40px;}
    .contact-cta-section{padding:32px 20px;}
    .contact-cta-card{grid-template-columns:1fr; gap:24px;}
    .contact-cta-fields{grid-template-columns:1fr;}
    .list-layout{grid-template-columns:1fr; padding:8px 20px 50px; gap:24px;}
    .list-sidebar{position:static;}
    .product-grid{grid-template-columns:repeat(2, 1fr); gap:14px;}
    .product-card{padding:12px;}
    .list-pagination{margin-top:32px; gap:20px;}
    .pagination-row{gap:4px;}
    .pagination-arrow{width:32px; height:32px;}
    .pagination-page{min-width:32px; height:32px; font-size:13px;}

    .example-tile{flex:0 0 150px;}

    .product-page-layout{padding:8px 20px 24px; gap:24px;}
    .contacts-layout{grid-template-columns:1fr; padding:8px 20px 32px; gap:20px;}
    .contacts-info-card, .contacts-form-card{padding:24px 20px;}
    .contacts-map-section{padding:0 20px 40px;}
    .contacts-map-frame{height:300px;}
    .bags-page-block{padding:0 20px;}
    .bag-calc-single-wrap .bag-calc-card{flex-direction:column;}
    .bag-calc-single-wrap .bag-calc-photo{width:100%; aspect-ratio:4/3;}
    .bag-calc-single-wrap .bag-calc-fields-row{flex-direction:column; gap:0;}
    .calc-with-specs{flex-direction:column; gap:20px;}
    .calc-specs-panel{padding:22px;}
    .size-cards-grid{grid-template-columns:repeat(2, 1fr); gap:12px;}
    .advantage-cards-grid{grid-template-columns:1fr; gap:14px;}
    .silk-grid{grid-template-columns:1fr; gap:14px; margin:0 20px;}
    .silk-row-list{margin:16px 20px 0;}
    .silk-row-item{padding:13px 16px;}
    .blog-grid{grid-template-columns:1fr; gap:14px; margin:0 20px;}
    .article-cover{margin:0 20px 8px;}
    .cases-grid{grid-template-columns:1fr; gap:14px; margin:0 20px;}
    .merch-segments-grid{grid-template-columns:1fr; gap:14px; margin:0 20px 32px;}
    .jobs-list{margin:0 20px;}
    .tech-intro-grid{grid-template-columns:1fr; gap:24px; margin:0 20px 32px;}
    .product-head-grid{grid-template-columns:1fr; gap:20px; margin:0 20px 28px;}
    .product-head-text h1{font-size:27px;}
    .alt-methods-grid{grid-template-columns:1fr;}
    .catalog-link-grid{grid-template-columns:repeat(3, 1fr); margin:0 20px;}
    .silk-calc-fields{grid-template-columns:1fr;}
    .calc-products-grid{grid-template-columns:1fr;}
    .calc-products-grid-cards{grid-template-columns:1fr 1fr;}
    .silk-calc-result{flex-direction:column; align-items:flex-start;}
    .silk-calc-inline-row{flex-direction:column; align-items:stretch;}
    .silk-calc-inline-row .silk-calc-field{min-width:0;}
    .silk-calc-inline-prices{flex-direction:column; gap:10px;}
    .silk-calc-price-box{width:100%;}
    .silk-calc-inline-row .btn-primary{width:100%; justify-content:center;}
    .calc-picker-head h3{white-space:normal;}
    /* листалка "Выбери товар под нанесение" — на телефоне только 1 карточка вместо 3, без стрелок (общий паттерн для всех товарных страниц) */
    .calc-picker-arrow{display:none;}
    .calc-picker-cards{grid-template-columns:1fr;}
    .calc-picker-card:nth-child(n+2){display:none;}
    .calc-picker-card .btn-primary{display:none;}
    .product-order-line{flex-direction:column; align-items:stretch;}
    .product-order-line .btn-primary{margin-left:0; width:100%;}
    .product-below{padding:6px 20px 10px;}
    .similar-products-grid{grid-template-columns:repeat(2, 1fr); gap:14px;}
    .size-section-inner{gap:20px;}
    .specs-table{width:100%; grid-template-columns:1fr 1fr;}
    .calc-specs-panel .specs-table{width:100%; grid-template-columns:1fr 1.4fr;}
    .calc-specs-panel .specs-label{white-space:normal;}
  }
  @media (max-width:1100px){
    .catalog-grid{grid-template-columns:repeat(3, 1fr);}
    .silk-grid{grid-template-columns:repeat(3, 1fr);}
    .catalog-link-grid{grid-template-columns:repeat(4, 1fr);}
    .catalog-link-grid.catalog-link-grid-lg{grid-template-columns:repeat(4, 1fr);}
    .blog-grid{grid-template-columns:repeat(2, 1fr);}
    .list-layout{grid-template-columns:220px 1fr; gap:24px;}
    .product-grid{grid-template-columns:repeat(3, 1fr);}
    .product-page-layout{grid-template-columns:minmax(0,1fr); gap:32px;}
    .product-info{min-width:0;}
    .product-gallery{position:static; min-width:0;}
    .similar-products-grid{grid-template-columns:repeat(3, 1fr);}
  }
  @media (max-width:520px){
    .catalog-grid{grid-template-columns:1fr;}
    .product-grid{grid-template-columns:1fr;}
    .similar-products-grid{grid-template-columns:1fr;}
  }
  @media (min-width:1600px){
    .product-grid{grid-template-columns:repeat(5, 1fr);}
  }
  /* Восстанавливает 1 колонку для .silk-grid на телефонах — иначе побеждает правило из @media (max-width:1100px) выше по каскаду */
  @media (max-width:860px){
    .silk-grid{grid-template-columns:1fr;}
    .list-layout{grid-template-columns:1fr;}
    .catalog-link-grid{grid-template-columns:repeat(2, 1fr); margin:0 20px;}
    .catalog-link-grid.catalog-link-grid-lg{grid-template-columns:repeat(2, 1fr);}
  }
  @media (max-width:860px){
    .price-tool-tabs{display:grid; grid-template-columns:repeat(2, 1fr); gap:8px;}
    .price-tool-tab{text-align:center; padding:10px 8px;}
    .size-table-wrap{display:none;}
    .size-table-mobile{display:block; border:1px solid var(--border); border-radius:12px; overflow:hidden;}
    .size-table-mobile-row{display:flex; align-items:center; justify-content:space-between; padding:11px 14px; border-bottom:1px solid var(--border); font-size:13.5px;}
    .size-table-mobile-row:last-child{border-bottom:none;}
    .size-table-mobile-qty{color:var(--grey-light);}
    .size-table-mobile-price{font-weight:600; color:var(--black);}
  }

  /* ===== Загрузка своих фото вместо заглушек (хранится в localStorage браузера) ===== */
  .photo-upload-slot{position:relative;}
  .photo-upload-btn, .photo-upload-reset{
    position:absolute; bottom:10px; right:10px; z-index:20;
    width:34px; height:34px; border-radius:50%; background:rgba(23,24,26,.6);
    border:none; display:flex; align-items:center; justify-content:center; cursor:pointer;
    transition:background .2s ease, transform .15s ease; padding:0;
  }
  .photo-upload-btn:hover{background:var(--green); transform:scale(1.06);}
  .photo-upload-btn svg{width:16px; height:16px; stroke:#fff; flex-shrink:0;}
  .photo-upload-reset{right:52px; display:none; background:rgba(23,24,26,.6);}
  .photo-upload-reset:hover{background:#c0392b; transform:scale(1.06);}
  .photo-upload-reset svg{width:14px; height:14px; stroke:#fff; flex-shrink:0;}
  .photo-upload-slot.has-upload .photo-upload-reset{display:flex;}
  .cat-photo.photo-upload-slot .photo-upload-btn, .cat-photo.photo-upload-slot .photo-upload-reset{bottom:auto; top:16px;}
  .cat-photo.photo-upload-slot .photo-upload-btn{right:16px;}
  .cat-photo.photo-upload-slot .photo-upload-reset{right:58px;}

  /* Регмарк на фото — раньше был белым крестиком-заглушкой, невидимым на светлых фото.
     Теперь: сплошной зелёный кружок (виден на любом фоне) с пульсирующей чёрной точкой внутри. */
  .photo-duotone .regmark, .proof-photo .regmark, .case-photo .regmark,
  .about-photo .regmark, .tech-intro-photo .regmark, .cat-photo .regmark{
    background:var(--green); border-radius:50%; opacity:1; box-shadow:0 2px 8px rgba(23,24,26,.22);
  }
  .photo-duotone .regmark svg, .proof-photo .regmark svg, .case-photo .regmark svg,
  .about-photo .regmark svg, .tech-intro-photo .regmark svg, .cat-photo .regmark svg{
    animation:none;
  }
  .photo-duotone .regmark svg circle[fill], .proof-photo .regmark svg circle[fill], .case-photo .regmark svg circle[fill],
  .about-photo .regmark svg circle[fill], .tech-intro-photo .regmark svg circle[fill], .cat-photo .regmark svg circle[fill],
  .photo-duotone .regmark svg line, .proof-photo .regmark svg line, .case-photo .regmark svg line,
  .about-photo .regmark svg line, .tech-intro-photo .regmark svg line, .cat-photo .regmark svg line{
    opacity:0;
  }
  .photo-duotone .regmark svg circle:not([fill]), .proof-photo .regmark svg circle:not([fill]), .case-photo .regmark svg circle:not([fill]),
  .about-photo .regmark svg circle:not([fill]), .tech-intro-photo .regmark svg circle:not([fill]), .cat-photo .regmark svg circle:not([fill]){
    fill:var(--black); opacity:1; transform-box:fill-box; transform-origin:center;
    animation:regmarkPulse 1.7s ease-in-out infinite;
  }
  @keyframes regmarkPulse{0%,100%{transform:scale(1); opacity:1;} 50%{transform:scale(1.6); opacity:.5;}}

/* End */


/* Start:/local/templates/printcompany/components/bitrix/search.title/saerch-title/style.min.css?17876907161827*/
div.title-search-result{border:1px solid #c6c6c6;display:none;overflow:hidden;z-index:205}table.title-search-result{border-collapse:collapse;border:none;width:10%}table.title-search-result th{background-color:#f7f7f7;border-right:1px solid #e8e8e8;color:#949494;font-weight:400;padding:2px 12px 2px 14px;text-align:right;vertical-align:top;white-space:nowrap;width:1%}table.title-search-result td{background-color:#fff;color:#000;font-weight:400;padding-top:2px;padding-bottom:2px;text-align:left;white-space:nowrap}table.title-search-result td.title-search-item{padding-left:8px;padding-right:15px}table.title-search-result td.title-search-item a{padding-left:4px;padding-right:15px;text-decoration:none;color:#000;vertical-align:top;display:block}table.title-search-result td.title-search-item img{vertical-align:top}table.title-search-result td.title-search-item b{color:#cf0000;font-weight:400}table.title-search-result tr.title-search-selected a,table.title-search-result tr.title-search-selected td,table.title-search-result tr.title-search-selected td.title-search-more a{background-color:#fff2be}table.title-search-result td.title-search-more{font-size:11px;font-weight:400;padding-right:15px;padding-left:24px;padding-top:0}table.title-search-result td.title-search-more a{padding-left:12px;padding-right:15px;text-decoration:none;color:#999}table.title-search-result td.title-search-all{padding-left:24px;padding-right:15px}table.title-search-result td.title-search-all a{padding-left:4px;text-decoration:none;color:grey}table.title-search-result td.title-search-separator,table.title-search-result th.title-search-separator{padding-top:0;padding-bottom:0;font-size:4px}div.title-search-fader{display:none;background-image:url(/local/templates/printcompany/components/bitrix/search.title/saerch-title/images/fader.png);background-position:100% 0;background-repeat:repeat-y;position:absolute}
/* End */


/* Start:/local/templates/printcompany/components/bitrix/menu/top/style.min.css?17876867733715*/
#horizontal-multilevel-menu,#horizontal-multilevel-menu ul{margin:0;padding:0;background:#bc262c url(/local/templates/printcompany/components/bitrix/menu/top/images/header_menu_bg.gif) repeat-x;min-height:27px;width:100%;list-style:none;font-size:11px;float:left}#horizontal-multilevel-menu a{display:block;padding:5px 10px;text-decoration:none;text-align:center}#horizontal-multilevel-menu li{float:left}#horizontal-multilevel-menu li a.root-item{color:#fff;font-weight:bold;padding:7px 12px}#horizontal-multilevel-menu li a.root-item-selected{background:#fc8d3d;color:#fff;font-weight:bold;padding:7px 12px}#horizontal-multilevel-menu li:hover a.root-item,#horizontal-multilevel-menu li.jshover a.root-item{background:#e26336;color:#fff}#horizontal-multilevel-menu a.parent{background:url(/local/templates/printcompany/components/bitrix/menu/top/images/arrow.gif) center right no-repeat}#horizontal-multilevel-menu a.denied{background:url(/local/templates/printcompany/components/bitrix/menu/top/images/lock.gif) center right no-repeat}#horizontal-multilevel-menu li:hover,#horizontal-multilevel-menu li.jshover{background:#d6d6d6;color:#fff}#horizontal-multilevel-menu li.item-selected{background:#d6d6d6;color:#fff}#horizontal-multilevel-menu li ul{position:absolute;top:auto;display:none;z-index:500;height:auto;width:135px;background:#f5f5f5;border:1px solid #c1c1c1}#horizontal-multilevel-menu li li{width:100%;border-bottom:1px solid #dedede}#horizontal-multilevel-menu li ul a{text-align:left}#horizontal-multilevel-menu li a,#horizontal-multilevel-menu li:hover li a,#horizontal-multilevel-menu li.jshover li a,#horizontal-multilevel-menu li:hover li:hover li a,#horizontal-multilevel-menu li.jshover li.jshover li a,#horizontal-multilevel-menu li:hover li:hover li:hover li a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover li a,#horizontal-multilevel-menu li:hover li:hover li:hover li:hover li a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover li.jshover li a,#horizontal-multilevel-menu li:hover li:hover li:hover li:hover li:hover li a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover li.jshover li.jshover li a{color:#4f4f4f;font-weight:bold}#horizontal-multilevel-menu li:hover li:hover a,#horizontal-multilevel-menu li.jshover li.jshover a,#horizontal-multilevel-menu li:hover li:hover li:hover a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover a,#horizontal-multilevel-menu li:hover li:hover li:hover li:hover a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover li.jshover a #horizontal-multilevel-menu li:hover li:hover li:hover li:hover li:hover a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover li.jshover li.jshover a #horizontal-multilevel-menu li:hover li:hover li:hover li:hover li:hover li:hover a,#horizontal-multilevel-menu li.jshover li.jshover li.jshover li.jshover li.jshover li.jshover a{color:#4f4f4f}#horizontal-multilevel-menu li ul ul{margin:-27px 0 0 132px}#horizontal-multilevel-menu li:hover ul ul,#horizontal-multilevel-menu li.jshover ul ul,#horizontal-multilevel-menu li:hover ul ul ul,#horizontal-multilevel-menu li.jshover ul ul ul,#horizontal-multilevel-menu li:hover ul ul ul ul,#horizontal-multilevel-menu li.jshover ul ul ul ul,#horizontal-multilevel-menu li:hover ul ul ul ul ul,#horizontal-multilevel-menu li.jshover ul ul ul ul ul{display:none}#horizontal-multilevel-menu li:hover ul,#horizontal-multilevel-menu li.jshover ul,#horizontal-multilevel-menu li li:hover ul,#horizontal-multilevel-menu li li.jshover ul,#horizontal-multilevel-menu li li li:hover ul,#horizontal-multilevel-menu li li li.jshover ul,#horizontal-multilevel-menu li li li li:hover ul,#horizontal-multilevel-menu li li li li.jshover ul,#horizontal-multilevel-menu li li li li li:hover ul,#horizontal-multilevel-menu li li li li li.jshover ul{display:block}div.menu-clear-left{clear:left}
/* End */
/* /local/templates/printcompany/styles.css?1787929533121560 */
/* /local/templates/printcompany/components/bitrix/search.title/saerch-title/style.min.css?17876907161827 */
/* /local/templates/printcompany/components/bitrix/menu/top/style.min.css?17876867733715 */
