.hero {position: relative;height: 100vh;max-height: 1040px;color: #fff;overflow: hidden;margin-top: -84px;}
.hero-bg {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;left: 50%;width: 100vw;transform: translateX(-50%);max-width: none;}
.hero__inner {position: relative;z-index: 1;height: 100%;display: grid;align-items: center;}
.hero-title {font-weight: 400;font-size: 74px;line-height: 1.1;margin: 0 0 32px;max-width: 820px;}
.hero-subtitle {font-size: 20px;margin: 0 0 70px;color: rgba(255,255,255,.95);}
.hero__content {margin-top: 90px;}
.hero-stats {display: grid;grid-template-columns: repeat(4, max-content);gap: 135px;padding: 0;list-style: none;}
.hero-stats-row{display: flex;align-items: center;justify-content: space-between;gap: 40px;flex-wrap: nowrap;}
.hero-stats .num {font-size: 54px;font-weight: 400;}
.hero-stats .cap {text-transform: uppercase;letter-spacing: .06em;font-size: 19px;display: block;}
.hero-badge {display: inline-flex;gap: 10px;align-items: center;background: var(--hero-badge);color: #111827;padding: 18px 34px;border-radius: 16px;font-weight: 400;box-shadow: var(--shadow);}
#services {overflow: visible;}
.service-card__link{display:block;height:100%;color:inherit;text-decoration:none;}
.service-card__link:hover{ text-decoration:none; }

.services-slider,
.service-card,
.service-card * {
  touch-action: auto !important;
}
.services-viewport,
.press-viewport {
  touch-action: pan-y !important;
}

.services-viewport {padding-left: 0px !important;overflow-x: auto;overflow-y: hidden;scroll-snap-type: x mandatory;padding: 0 var(--page-pad) 12px;width: 100vw;margin-left: auto;margin-right: calc(50% - 50vw);padding-bottom: 20px;-webkit-overflow-scrolling: touch;overscroll-behavior-x: contain;touch-action: pan-x pan-y;scrollbar-width: none;  -ms-overflow-style: none;}
.services-viewport::-webkit-scrollbar{width: 0;height: 0;display: none;}
.services-slider {display: grid;grid-auto-flow: column;grid-auto-columns: 360px;gap: 28px;overflow: visible;padding-top: 52px;}
.service-card {position: relative;scroll-snap-align: start;min-height: 400px;}
.service-card__body {background: #fff;border: 1px solid #E7F0FA;border-radius: 28px;padding: 64px 32px 28px;text-align: center;transition: transform .2s ease, box-shadow .2s ease;height: 100%;box-shadow: none;}
.service-card:hover .service-card__body {transform: translateY(-4px);border: 1px solid var(--blue);}
.svc-ico {position: absolute;left: 50%;top: -44px;transform: translateX(-50%);width: 88px;height: 88px;border-radius: 50%;background: #CFE9FC;display: grid;place-items: center;color: #2F87C6;font-size: 26px;box-shadow: 0 0 0 8px rgba(207,233,252,.60), 0 6px 16px rgba(47,135,198,.10);z-index: 2;}
.svc-title {margin: 58px 0 78px;font-size: 20px;line-height: 1.35;font-weight: 400;color: #0F172A;}
.svc-price {margin: 0 0 76px;font-size: 36px;line-height: 1.1;font-weight: 400;color: #0F172A;}
.svc-price-inf{display: block;  font-size: 14px;  opacity: .6;  padding-top: 10px;  margin-bottom: -25px;}
.svc-desc {margin: 0;font-size: 16px;line-height: 1.5;color: #1F2A37;display: -webkit-box;-webkit-line-clamp: 5;-webkit-box-orient: vertical;overflow: hidden;}
.svc-hit {position: absolute;inset: 0;z-index: 3;border-radius: 28px;text-indent: -9999px;}
.slider-controls {display: flex;gap: 20px;justify-content: center;margin-top: 12px;}
.slider-prev,.slider-next {border: 1px solid var(--blue);background: none;border-radius: 50px;padding: 15px 15px;cursor: pointer;color: var(--blue);}
.why-head{max-width:52%;}
.why-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px;margin-top:24px;margin-top: -206px;}
.why-card{position:relative;background:#fff;border:1px solid #E7F0FA;border-radius:28px;padding: 40px 30px 20px;box-shadow:0 10px 28px rgba(47,135,198,.08);}
.why-card p{padding-bottom: 20px;}
.why-card h3{margin:0 0 60px;font-size:24px;line-height:1.3;font-weight:400;max-width: 80%;}
.why-card p{margin:0;font-size:16px;line-height:1.55;color:#1F2A37;}
.why-ico{position:absolute;right:30px;top:39px;width:56px;height:56px;border-radius:100px;background:#EAF4FF;display:grid;place-items:center;}
.why-ico img{width:28px;height:28px;display:block}
.why-grid>.why-card:nth-child(1){grid-column:1 / span 4; grid-row:2;}
.why-grid>.why-card:nth-child(2){grid-column:5 / span 4; grid-row:2;margin-top: -70px;}
.why-grid>.why-card:nth-child(3){grid-column:9 / span 4; grid-row:1;}
.why-grid>.why-card:nth-child(4){grid-column:9 / span 4; grid-row:2;}
.logos-grid {display: grid;grid-template-columns: repeat(4, 1fr);gap: 20px;}
.client-logo {max-height: 200px;background: #fff;border-radius: 16px;border: 1px solid var(--border);box-shadow: var(--shadow);z-index: 1;}
.client-logo:hover {border: 1px solid #2f87c6;}
.logos-grid img {padding: 10px 25px;width: 100%;height: 100%;  object-fit: contain;max-height: 180px;}
.products {display: grid;grid-template-columns: 60% 1fr;gap: 36px;align-items: start;}
.product_title_head{display: flex;  justify-content: space-between;  margin-bottom: 35px;  align-items: center;}
.products__left {max-width: 1000px;}
.product-list {list-style: none;margin: 12px 0 0;padding: 0;display: grid;gap: 18px;font-size: 20px;}
.product-item {display: flex;gap: 10px;align-items: center;background: #fff;border: 1px solid var(--border);border-radius: 8px;padding: 18.5px 20px;cursor: pointer;box-shadow: var(--shadow);}
.product-item:hover {border: 1px solid #2f87c6;}
.product-item .pill {background: #eaf4ff;color: #2F87C6;padding: 4px 17px;border-radius: 30px;}
.product-item.is-active {outline: 2px solid #2f87c6;}
.product-panel {display: none;background: #fff;border: 1px solid var(--border);border-radius: 24px;padding: 35px 40px;box-shadow: var(--shadow);}
.product-panel h3 {font-size: 24px;  margin-bottom: 25px;}
.product-panel.is-active {display: block;}
.product-img {border-radius: 12px;margin-bottom: 12px;margin: auto;max-height: 300px;}
.select-row {display: flex;gap: 8px;align-items: center;margin: 8px 0 12px;}
.select {flex: 1;border: 1px solid var(--border);border-radius: 15px;padding: 16px 20px;background: #f7fbff;}
.select-plus {border: 1px solid var(--border);background: #fff;border-radius: 12px;width: 38px;height: 38px;font-weight: 700;cursor: pointer;}
.price_main_row {display: flex;  justify-content: space-between;margin-top: 25px;}
.price.big {margin: 6px 0 10px;}
.price__info {display: block;  font-size: 14px;  opacity: .6;}
.price__value{font-size: 24px;}
.select{position:relative;flex:1;border:1px solid var(--border);border-radius:15px;background:#f7fbff;padding:0;}
.select__btn{width:100%;padding:16px 48px 16px 20px;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer;border-radius:50px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.select__btn::after{content:"";width:10px; height:10px;border-right:2px solid rgba(0,0,0,.5);border-bottom:2px solid rgba(0,0,0,.5);transform:rotate(45deg);position:absolute;right:18px; top:50%;translate:0 -50%;transition:transform .2s ease;}
.select.is-open .select__btn::after{display:none;}
.select__menu{position:absolute;inset:auto 0 0 0;transform:translateY(calc(100% + 6px));background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);list-style:none;margin:0; padding:6px;display:none;max-height:260px;overflow:auto;z-index:5;}
.select.is-open .select__menu{display:block;}
.select__menu li{padding:10px 12px;border-radius:10px;cursor:pointer;}
.select__menu li:hover{background:#eaf4ff;color:#2F87C6;}
.product-img{border-radius:12px;margin:12px auto;max-height:300px;object-fit:contain;display:block;}
.tabs{display:flex;gap:8px;margin-bottom:16px;}
.tab{background:none;border:1px solid var(--border);border-radius:50px;padding:10px 14px;cursor:pointer;font-size:16px;}
.tab:hover {border: 1px solid #2f87c6;}
.tab.is-active{border:2px solid #2f87c6;}
.tab-panel{display:none;}
.tab-panel.is-active{display:block;}
.tab-panels{border-radius:0 12px 12px 12px;}
.buttonrow_press{text-align:end;margin-top:-60px;margin-bottom:20px;}
.btn--press-centre{background:#2F87C6;color:#fff;padding:10px 20px;}
.btn--press-centre:hover{background:#062a52;}
.press-slider,
.press-slider .post-card,
.press-slider .post-card *{touch-action: pan-x pan-y;}
.press-viewport{overflow-x: auto;overflow-y: hidden;scroll-snap-type: x mandatory;padding: 0 var(--page-pad) 12px;width: 100vw;margin-left: auto;margin-right: calc(50% - 50vw);padding-bottom: 20px; -webkit-overflow-scrolling: touch;overscroll-behavior-x: contain;scrollbar-width: none;-ms-overflow-style: none;}
.press-viewport::-webkit-scrollbar{width:0;height:0;display:none;}
.press-slider{display: grid;grid-auto-flow: column;grid-auto-columns: clamp(280px, 35vw, 420px);gap: 20px;overflow: visible;}
.press-slider .post-card{scroll-snap-align: start;}
.press-slider-controls{margin-top: 12px;}
.cards-grid-instructions{display:grid;grid-template-columns: repeat(3, minmax(0,1fr));gap:20px;}

.post-card__link{color:inherit;text-decoration:none!important;}
.post-card__link:hover{text-decoration:none!important;}
.instruction-previe-href{color:inherit;text-decoration:none!important;}

.post-card{position:relative;background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px;}
.post-card:hover{border: 1px solid #2f87c6;}
.post-card img{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:10px;margin-bottom:10px;}
.post-card.no-thumb{min-height:120px;display:flex;flex-direction:column;justify-content:center;gap:.4rem;}
.post-card .date{position: absolute;  left: 22px;  top: 22px;  background: #f3f9ff;  border: 1px solid var(--border);  border-radius: 6px;  padding: 3px 9px;  font-size: 13px;}
.post-card-article{position:relative;display:grid;grid-template-columns: minmax(220px, 220px) 1fr;gap:20px;background:#fff;border:1px solid var(--border);border-radius:25px;padding: 20px;box-shadow:var(--shadow);}
.post-card-article img{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:10px;}
.article-previe{padding:10px 20px;height:auto;display:flex;flex-direction:column;gap:10px;}
.post-card-article .date{position:absolute;left:24px;top:24px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:2px 8px;font-size:13px;}
.instruction-previe{padding:0 20px;}
.post-card h3,
.post-card-article h3{margin:0 0 .4rem;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;}
.post-card p,
.post-card-article p{margin:0;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;}
.banner-usp {background: linear-gradient(120deg, #2F87C5, #1e375a);overflow: visible;}
.banner__inner {display: grid;grid-template-columns: 1.4fr .6fr;color: #fff;gap: 32px;align-items: center;}
.banner__text .tick-list {margin: 14px 0 0;padding-left: 22px;}
.tick-list {padding-inline-start: 15px;font-size: 20px;}
.tick-list li {margin: 8px 0;}
.banner__inner{position:relative; overflow:visible}
.banner__content{position:relative; z-index:1}
.banner__img{position:absolute;right: 20px;bottom:-136px;pointer-events:none;}
.banner__img img{height:560px;width:auto;max-width:none;}
.circle-left {position: relative;overflow: hidden!important;}
.circle-left::before {content: "";position: absolute;right: -350px;top: 47px;overflow: visible;width: 700px;height: 700px;background: url('/local/templates/ibtconsult/assets/svg/circle.svg') no-repeat center/contain;pointer-events: none;}
.circle-right{position:relative; overflow:hidden!important;}
.circle-right::before{content:"";position:absolute;left:-350px;top:250px;width:700px;height:700px;background:url('/local/templates/ibtconsult/assets/svg/circle.svg') no-repeat center/contain;pointer-events:none;}
.site-header--on-hero::before{opacity: 0;pointer-events: none;transition: opacity .35s ease;will-change: opacity;}
.site-header--on-hero.is-hero-bg::before{opacity: 1;}
.about-grid {background: #f2f8ff;}
.about__cards {display: grid;grid-template-columns: .8fr 1.2fr;gap: 32px;align-items: center;}
.about__textcard {margin-right: 30px;}
.about__textcard h2 {margin-bottom: 40px;}
.about__textcard p {font-size:20px;}

@media (max-width: 1440px) and (min-width: 1025px){
.ft-menus {gap: 15px;}
}
@media (max-width: 1440px) {
.hero-title {font-size: 64px;}
.hero-stats {gap: 95px;}
}
@media (max-width: 1320px) {
.hero__inner {grid-template-columns: 1fr;}
.hero-title {font-size: 62px;}
}
@media (max-width: 1280px) {
.hero-stats {gap: 65px;}
}

@media (max-width:1200px){
.banner__img img{height:380px}
.banner__img{right:-32px; bottom:-28px}
.why-grid{grid-template-columns:repeat(6,1fr);}
.why-grid>.why-card{grid-column:1 / span 6 !important; grid-row:auto;}
}

@media (max-width:1024px){
.banner__img{position:static; margin-top:16px}
.banner__img img{height:auto; width:100%}
.cards-grid-instructions{grid-template-columns: repeat(2, minmax(0,1fr));}
}

@media (max-width: 768px) {
.logos-grid {grid-template-columns: repeat(2, 1fr);gap: 10px;}
.client-logo {max-height: 100px; min-height: 100px;}
.products {grid-template-columns: 1fr;}
.hero-stats-row{flex-direction: column;  align-items: flex-start;  gap: 30px;}
.hero-stats .num{font-size: 46px;}
.hero-stats .cap {font-size: 17px;}
.hero-badge{margin-top: 8px;}
.hero__inner {display: block;}
.hero-title {font-size: 43px;}
.hero-subtitle {font-size: 23px;}
.hero-bg {left: 95%;  width: 300vw;}
.hero-stats {grid-template-columns: repeat(2, max-content);gap: 15px 40px;}
.why-head {max-width: 100%;}
.why-grid {display: contents;}
.why-grid>.why-card:nth-child(2) {margin-top: 0px;}
.why-card {margin-bottom: 20px;}
.why-card p{display: none;}
.why-card h3 {margin: 0 0 20px;}
.banner__inner {display: block;}
.banner__content h2 {font-size: 30px;}
.about__cards {display: flex;  flex-wrap: wrap;  flex-direction: column-reverse;}
.tabs {gap: 3px;}
.tab {padding: 10px 9px;  font-size: 14px;}
.btn--press-centre {font-size: 14px;  padding: 10px 10px;}
#products .products.is-accordion{grid-template-columns: 1fr;}
#products .products.is-accordion .products__right{display: none;}
#products .products.is-accordion .product-list{gap: 12px;  font-size: 16px;}
#products .products.is-accordion .product-item{display: block;  padding: 0;  border-radius: 16px;  overflow: hidden;  background: #fff;}
#products .products.is-accordion .product-item__head{width: 100%;  display: flex;  align-items: center;  justify-content: space-between;  gap: 12px;padding: 18px 16px;  border: 0;  background: #fff;  cursor: pointer;  font: inherit;  text-align: left;}
#products .products.is-accordion .product-item__label{display: flex;  align-items: center;  gap: 12px;  min-width: 0;}
#products .products.is-accordion .product-item__head::after{content: "";  width: 10px;  height: 10px;  border-right: 2px solid rgba(0,0,0,.55);  border-bottom: 2px solid rgba(0,0,0,.55);  transform: rotate(45deg);  transition: transform .2s ease;  flex: 0 0 auto;  margin-left: auto;}
#products .products.is-accordion .product-item.is-active .product-item__head::after{transform: rotate(225deg);}
#products .products.is-accordion .product-item__body{overflow: hidden;  max-height: 0;  transition: max-height .35s ease;  border-top: 1px solid var(--border);  background: #fff;}
#products .products.is-accordion .product-panel{display: block !important;  border: 0;  box-shadow: none;  border-radius: 0;  padding: 18px 16px 16px;}
#products .products.is-accordion .product-panel h3{margin: 0 0 14px;  font-size: 20px;}
#products .products.is-accordion .product-img{max-height: 180px;  margin: 10px auto 14px;  display: block;}
#products .products.is-accordion .select__btn{padding: 14px 44px 14px 16px;}
#products .products.is-accordion .price_main_row{margin-top: 14px;}
#products .products.is-accordion .select__menu{position: static;  transform: none;  inset: auto;  margin: 8px 0 0;  max-height: min(320px, 45vh);  overflow: auto;}
.hero-subtitle {margin: 0 0 10px;}
}

@media (max-width:640px){
.why-grid{grid-template-columns:1fr;}
.why-grid>.why-card{grid-column:auto;}
}

@media (max-width: 480px) {
.cards-grid-instructions{grid-template-columns: 1fr;}
.hero {height: auto;padding: 80px 0 40px;}
.hero-badge {position: static;margin-top: 16px;}
.logos-grid {grid-template-columns: repeat(2, 1fr);}
}

@media (min-width: 1280px) {
.services-slider {grid-auto-columns: 420px;}
}
@media (min-width: 769px) and (max-width: 1180px) {
.hero-stats {gap: 50px;}
.hero-stats-row {display: block;margin-top: 30px;}
}