/* Telegram Mini Apps: scoped styles, shared header/footer and hero retained. */
.itcbp-tg-page{color:#111827}.itcbp-tg-page .itcbp-programs-hero{background:#f5f7fb}.itcbp-tg-subtitle{font-size:clamp(21px,2.2vw,29px);line-height:1.35;margin:12px 0}.itcbp-tg-chips{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.itcbp-tg-chips span{border-radius:30px;background:#fff;padding:9px 15px;font-weight:600;box-shadow:0 4px 15px #10243e0c}.itcbp-tg-section{padding:72px 0}.itcbp-tg-section--soft{background:#f4f7fb}.itcbp-tg-heading{margin-bottom:28px}.itcbp-tg-heading h2{font-size:clamp(27px,3vw,39px);font-weight:750;margin:8px 0}.itcbp-tg-heading p{font-size:17px;color:#526070}.itcbp-tg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.itcbp-tg-card{background:#fff;border:1px solid #e8edf4;border-radius:19px;box-shadow:0 10px 30px #11213c0b;overflow:hidden;display:flex;flex-direction:column}.itcbp-tg-card__image{height:205px;background:linear-gradient(140deg,#e3f4ff,#f0f2f8);display:flex;align-items:center;justify-content:center}.itcbp-tg-card__image img{width:100%;height:100%;object-fit:contain;padding:15px}.itcbp-tg-placeholder{font-size:75px;color:#219cda}.itcbp-tg-card__body{padding:23px;display:flex;flex:1;flex-direction:column}.itcbp-tg-tag{font-size:12px;color:#ff5b25;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.itcbp-tg-card h3{font-size:23px;margin:12px 0}.itcbp-tg-card h3 a{color:#101827;text-decoration:none}.itcbp-tg-card p,.itcbp-tg-card li{color:#526070}.itcbp-tg-card ul,.itcbp-tg-aside ul{list-style:none;padding:0;margin:12px 0 24px}.itcbp-tg-card li,.itcbp-tg-aside li{padding:5px 0}.itcbp-tg-card li:before,.itcbp-tg-aside li:before{content:'✓';color:#fa5b22;margin-right:9px;font-weight:800}.itcbp-tg-card__bottom{margin-top:auto;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.itcbp-tg-card__bottom a{color:#0875d1;font-weight:700}.itcbp-tg-flow{display:flex;align-items:center;gap:14px}.itcbp-tg-flow>div{flex:1;background:#fff;border:1px solid #e6edf4;border-radius:17px;padding:24px;text-align:center}.itcbp-tg-flow b{display:block;font-size:19px}.itcbp-tg-flow small{display:block;color:#687489;margin-top:10px}.itcbp-tg-flow>span{font-size:25px;color:#0095f2}.itcbp-tg-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;counter-reset:step}.itcbp-tg-steps>div{padding:20px;background:#f5f8fc;border-radius:16px}.itcbp-tg-steps>div:before{counter-increment:step;content:counter(step);display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;color:white;border-radius:50%;background:#138eed}.itcbp-tg-steps h3{font-size:17px;margin:16px 0 8px}.itcbp-tg-steps p{font-size:14px;color:#586779}.itcbp-tg-contact{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff;border-radius:19px;padding:35px}.itcbp-tg-contact h2{font-size:32px}.itcbp-tg-contact p{color:#586779}.itcbp-tg-single-image img{max-width:100%;height:auto;object-fit:contain;border-radius:20px}.itcbp-tg-single-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:45px}.itcbp-tg-aside{padding:28px;border-radius:20px;background:#f3f7fc;align-self:start}.itcbp-tg-aside .itcbp-hero-btn{display:inline-flex}.itcbp-tg-price{font-size:25px;font-weight:800}.itcbp-tg-rich{line-height:1.8}.itcbp-tg-rich img{max-width:100%;height:auto}@media(max-width:990px){.itcbp-tg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.itcbp-tg-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.itcbp-tg-single-layout{grid-template-columns:1fr}}@media(max-width:650px){.itcbp-tg-grid,.itcbp-tg-steps{grid-template-columns:1fr}.itcbp-tg-section{padding:44px 0}.itcbp-tg-flow{flex-direction:column}.itcbp-tg-flow>div{width:100%}.itcbp-tg-contact{flex-direction:column;align-items:start}.itcbp-tg-card__image{height:180px}}


/* Interactive solution cards (mouse, keyboard and touch safe). */
@media (hover: hover) and (pointer: fine) {
  .itcbp-tg-card {
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
    will-change: transform;
  }
  .itcbp-tg-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 20px 44px rgba(17, 33, 60, .16);
    border-color: #bddff6;
  }
  .itcbp-tg-card__image {
    overflow: hidden;
    transition: background .3s ease;
  }
  .itcbp-tg-card:hover .itcbp-tg-card__image {
    background: linear-gradient(140deg, #d5efff, #e9f2ff);
  }
  .itcbp-tg-card__image img,
  .itcbp-tg-placeholder {
    transition: transform .35s cubic-bezier(.2,.7,.2,1);
  }
  .itcbp-tg-card:hover .itcbp-tg-card__image img,
  .itcbp-tg-card:hover .itcbp-tg-placeholder {
    transform: scale(1.09) rotate(-3deg);
  }
  .itcbp-tg-card__bottom a {
    display: inline-block;
    transition: transform .25s ease, color .25s ease;
  }
  .itcbp-tg-card:hover .itcbp-tg-card__bottom a {
    transform: translateX(5px);
    color: #ff5b25;
  }
}
.itcbp-tg-card:focus-within {
  outline: 2px solid #168fe7;
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  .itcbp-tg-card,
  .itcbp-tg-card__image,
  .itcbp-tg-card__image img,
  .itcbp-tg-placeholder,
  .itcbp-tg-card__bottom a {
    transition: none !important;
    transform: none !important;
  }
}

/* Contact forms */
.itcbp-tg-contact>div:first-child{flex:1}.itcbp-tg-form{flex:1;min-width:260px;display:grid;gap:12px}.itcbp-tg-form label{font-size:14px;font-weight:650;display:grid;gap:5px}.itcbp-tg-form input,.itcbp-tg-form textarea{width:100%;border:1px solid #d5dde8;border-radius:10px;padding:12px 14px;font:inherit;background:#fff;color:#101827}.itcbp-tg-form input:focus,.itcbp-tg-form textarea:focus{outline:2px solid #1284df;outline-offset:1px}.itcbp-tg-form button{border:0;cursor:pointer;justify-self:start}.itcbp-tg-success{color:#086b3c;font-weight:700}.itcbp-tg-error{color:#b42318;font-weight:700}@media(min-width:780px){.itcbp-tg-contact{align-items:start}}

/* Individual solution sections */
.itcbp-tg-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}.itcbp-tg-detail-item{border:1px solid #e7edf5;border-radius:17px;background:#fff;padding:25px;box-shadow:0 6px 25px #15263c08}.itcbp-tg-detail-index{color:#ff5b25;font-weight:800;font-size:18px}.itcbp-tg-detail-item p{margin:12px 0 0;color:#435064;line-height:1.6}.itcbp-tg-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.itcbp-tg-gallery a{background:white;border:1px solid #e1e8f2;border-radius:16px;padding:15px;display:flex;justify-content:center;align-items:center;transition:transform .2s}.itcbp-tg-gallery a:hover{transform:translateY(-4px)}.itcbp-tg-gallery img{max-width:100%;max-height:420px;width:auto;height:auto;object-fit:contain}@media(max-width:750px){.itcbp-tg-detail-grid,.itcbp-tg-gallery{grid-template-columns:1fr}}

/* Gallery image viewer */
body.itcbp-tg-lightbox-open{overflow:hidden}
.itcbp-tg-lightbox[hidden]{display:none!important}
.itcbp-tg-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(9,16,29,.92);display:flex;align-items:center;justify-content:center;padding:65px 72px 42px;color:#fff}
.itcbp-tg-lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:100%;max-height:100%;gap:12px}
.itcbp-tg-lightbox img{display:block;max-width:100%;max-height:calc(100vh - 145px);object-fit:contain;border-radius:12px}
.itcbp-tg-lightbox figcaption{font-size:14px;color:#d7e2ed}
.itcbp-tg-lightbox button{position:absolute;display:flex;align-items:center;justify-content:center;border:1px solid #ffffff55;color:#fff;background:#ffffff18;border-radius:50%;width:46px;height:46px;cursor:pointer;font-size:35px;line-height:1}
.itcbp-tg-lightbox button:hover{background:#ffffff38}
.itcbp-tg-lightbox button:focus-visible{outline:3px solid #5abbff;outline-offset:3px}
.itcbp-tg-lightbox__close{top:20px;right:24px}
.itcbp-tg-lightbox__prev{left:18px;top:50%}
.itcbp-tg-lightbox__next{right:18px;top:50%}
.itcbp-tg-lightbox button[hidden]{display:none!important}
@media(max-width:650px){.itcbp-tg-lightbox{padding:65px 15px 85px}.itcbp-tg-lightbox img{max-height:calc(100vh - 180px)}.itcbp-tg-lightbox__prev,.itcbp-tg-lightbox__next{top:auto;bottom:14px}.itcbp-tg-lightbox__prev{left:calc(50% - 62px)}.itcbp-tg-lightbox__next{right:calc(50% - 62px)}}

/* Distinct layouts for the reusable Mini App detail sections. */
.itcbp-tg-section--steps .itcbp-tg-detail-grid{display:flex;flex-wrap:wrap;gap:16px;counter-reset:tg-step}
.itcbp-tg-section--steps .itcbp-tg-detail-item{flex:1 1 185px;position:relative;border-top:3px solid #2196ee;padding-top:24px}
.itcbp-tg-section--steps .itcbp-tg-detail-index{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#168bea;color:#fff}
.itcbp-tg-section--steps .itcbp-tg-detail-item:not(:last-child)::after{content:'›';position:absolute;right:-15px;top:45%;font-size:30px;color:#168bea;z-index:2}
.itcbp-tg-section--bas_data .itcbp-tg-detail-grid{position:relative;gap:14px}
.itcbp-tg-section--bas_data .itcbp-tg-detail-item{border-left:4px solid #1f9ae6;box-shadow:0 8px 22px #13344b09}
.itcbp-tg-section--bas_data .itcbp-tg-detail-index{color:#1284d8}
.itcbp-tg-section--bas_data h2::after{content:'Telegram Mini App  ↔  Захищений API  ↔  BAS';display:block;margin-top:14px;font-size:14px;font-weight:600;letter-spacing:.01em;color:#41738f}
.itcbp-tg-section--benefits .itcbp-tg-detail-item{position:relative;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.itcbp-tg-section--benefits .itcbp-tg-detail-index{display:inline-flex;border-radius:50%;background:#e8f7ee;width:38px;height:38px;align-items:center;justify-content:center;font-size:0}
.itcbp-tg-section--benefits .itcbp-tg-detail-index::after{content:'✓';color:#168457;font-size:21px}
@media(hover:hover) and (pointer:fine){.itcbp-tg-section--benefits .itcbp-tg-detail-item:hover{transform:translateY(-5px);box-shadow:0 15px 32px #10243e18;border-color:#b8dfd1}}
@media(max-width:750px){.itcbp-tg-section--steps .itcbp-tg-detail-grid{display:grid;grid-template-columns:1fr}.itcbp-tg-section--steps .itcbp-tg-detail-item::after{display:none}}
@media(prefers-reduced-motion:reduce){.itcbp-tg-section--benefits .itcbp-tg-detail-item{transition:none}.itcbp-tg-section--benefits .itcbp-tg-detail-item:hover{transform:none}}
