/* =========================================================
   V31 — Light AI products + detailed portfolio showcase
   ========================================================= */

/* Ready AI products: a clean, white section with readable contrast. */
.ibtdi_ai_products{
  color:#12213a!important;
  background:#ffffff!important;
  border-top:1px solid #edf1f6;
  border-bottom:1px solid #edf1f6;
}
.ibtdi_ai_products:before{display:none!important;}
.ibtdi_ai_products h2,
.ibtdi_ai_products h3{color:#10213b!important;}
.ibtdi_ai_products .section_title_two p{color:#607087!important;}
.ibtdi_ai_products .ibtdi_section_label{
  color:#2459a6!important;
  background:#edf5ff!important;
  border-color:#cfe1f8!important;
}
.ibtdi_ai_products .ibtdi_dark_btn{
  color:#ffffff!important;
  background:#10213b!important;
  border:1px solid #10213b!important;
  box-shadow:0 12px 28px rgba(16,33,59,.14)!important;
}
.ibtdi_ai_products .ibtdi_dark_btn:hover{
  color:#ffffff!important;
  background:#1c4d95!important;
  border-color:#1c4d95!important;
}
.ibtdi_ai_products .ibtdi_product_card{
  position:relative;
  overflow:hidden;
  min-height:286px;
  padding:28px;
  background:#ffffff!important;
  border:1px solid #e1e8f1!important;
  border-radius:26px!important;
  box-shadow:0 12px 30px rgba(18,33,58,.075)!important;
}
.ibtdi_ai_products .ibtdi_product_card:before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:4px;
  background:linear-gradient(90deg,#205cc0,#5c8fe4);
  opacity:.85;
}
.ibtdi_ai_products .ibtdi_product_card:after{display:none!important;}
.ibtdi_ai_products .ibtdi_product_card:hover{
  transform:translateY(-6px);
  border-color:#bdd1ec!important;
  background:#ffffff!important;
  box-shadow:0 22px 46px rgba(18,33,58,.13)!important;
}
.ibtdi_ai_products .ibtdi_product_card p{
  min-height:0;
  color:#63728a!important;
}
.ibtdi_ai_products .ibtdi_product_card li{color:#43536b!important;}
.ibtdi_ai_products .ibtdi_product_card li:before{color:#1a8a69!important;}
.ibtdi_ai_products .product_badge{
  color:#2355a3!important;
  background:#edf5ff!important;
  border-color:#d4e4fa!important;
}

/* Portfolio replaces the former Google Reviews section. */
.ibtdi_portfolio_showcase{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  color:#12213a;
  background:linear-gradient(180deg,#f7f9fc 0%,#ffffff 100%);
}
.ibtdi_portfolio_showcase:before,
.ibtdi_portfolio_showcase:after{
  content:"";
  position:absolute;
  z-index:-1;
  border-radius:999px;
  filter:blur(2px);
  pointer-events:none;
}
.ibtdi_portfolio_showcase:before{
  width:420px;
  height:420px;
  top:-260px;
  right:-120px;
  background:radial-gradient(circle,rgba(55,112,220,.11) 0%,rgba(55,112,220,0) 72%);
}
.ibtdi_portfolio_showcase:after{
  width:360px;
  height:360px;
  bottom:-250px;
  left:-150px;
  background:radial-gradient(circle,rgba(38,178,161,.08) 0%,rgba(38,178,161,0) 72%);
}
.ibtdi_portfolio_showcase .section_title_two h2{color:#10213b!important;}
.ibtdi_portfolio_showcase .section_title_two p{color:#62718a!important;max-width:740px;}
.ibtdi_portfolio_showcase .ibtdi_section_label{
  color:#2459a6!important;
  background:#edf5ff!important;
  border-color:#cfe1f8!important;
}
.portfolio_intro{margin-bottom:40px;}
.portfolio_intro_cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:0 21px;
  border:1px solid #d3e1f1;
  border-radius:999px;
  color:#163f7c!important;
  background:#ffffff;
  font-weight:800;
  box-shadow:0 10px 24px rgba(18,33,58,.055);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
}
.portfolio_intro_cta:hover{
  transform:translateY(-3px);
  border-color:#9fbce3;
  color:#163f7c!important;
  background:#f8fbff;
  box-shadow:0 16px 30px rgba(18,33,58,.10);
}
.portfolio_case{
  --case-accent:#205cc0;
  --case-soft:#edf5ff;
  height:100%;
  position:relative;
  padding:26px;
  overflow:hidden;
  border:1px solid #e1e8f1;
  border-radius:26px;
  background:#ffffff;
  box-shadow:0 12px 30px rgba(18,33,58,.07);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.portfolio_case:before{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  left:-90px;
  bottom:-105px;
  border-radius:50%;
  background:radial-gradient(circle,var(--case-soft) 0%,rgba(255,255,255,0) 70%);
  pointer-events:none;
}
.portfolio_case:hover{
  transform:translateY(-7px);
  border-color:color-mix(in srgb,var(--case-accent) 30%,#dce5f0);
  box-shadow:0 22px 48px rgba(18,33,58,.12);
}
.portfolio_case--blue{--case-accent:#2463c7;--case-soft:#e8f1ff;}
.portfolio_case--violet{--case-accent:#7350b6;--case-soft:#f0eafe;}
.portfolio_case--teal{--case-accent:#168b7c;--case-soft:#e4f7f3;}
.portfolio_case--orange{--case-accent:#c47323;--case-soft:#fff1df;}
.portfolio_case--rose{--case-accent:#bb4f7b;--case-soft:#fcebf2;}
.portfolio_case--navy{--case-accent:#25415d;--case-soft:#eaf0f5;}
.portfolio_case_top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:22px;
}
.portfolio_index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:14px;
  color:var(--case-accent);
  background:var(--case-soft);
  font-size:14px;
  font-weight:900;
  letter-spacing:.4px;
}
.portfolio_type{
  color:var(--case-accent);
  font-size:13px;
  font-weight:800;
}
.portfolio_case h3{
  margin:0 0 12px;
  color:#12213a!important;
  font-size:22px;
  line-height:1.42;
}
.portfolio_case > p{
  min-height:92px;
  margin:0;
  color:#617087;
  font-size:15px;
  line-height:1.9;
}
.portfolio_case_meta{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:22px 0 18px;
}
.portfolio_case_meta div{
  min-width:0;
  padding:13px 12px;
  border:1px solid #edf1f5;
  border-radius:14px;
  background:#fbfcfe;
}
.portfolio_case_meta span{
  display:block;
  margin-bottom:5px;
  color:#7a8799;
  font-size:11px;
  font-weight:700;
}
.portfolio_case_meta strong{
  display:block;
  color:#304158;
  font-size:12px;
  font-weight:800;
  line-height:1.55;
}
.portfolio_deliverables{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.portfolio_deliverables li{
  position:relative;
  padding-right:22px;
  color:#4c5d74;
  font-size:13px;
  line-height:1.65;
}
.portfolio_deliverables li:before{
  content:"";
  position:absolute;
  top:.58em;
  right:0;
  width:9px;
  height:9px;
  border:2px solid var(--case-accent);
  border-radius:50%;
  background:#ffffff;
}
.portfolio_tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:22px;
}
.portfolio_tags span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border:1px solid color-mix(in srgb,var(--case-accent) 18%,#e3e9f1);
  border-radius:999px;
  color:var(--case-accent);
  background:color-mix(in srgb,var(--case-soft) 58%,#ffffff);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08px;
  direction:ltr;
}
.portfolio_note{
  display:flex;
  align-items:flex-start;
  gap:14px;
  max-width:930px;
  margin:38px auto 0;
  padding:20px 22px;
  border:1px solid #dce8f5;
  border-radius:20px;
  color:#40536e;
  background:rgba(244,249,255,.92);
}
.portfolio_note_icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:11px;
  color:#2459a6;
  background:#e8f2ff;
  font-size:16px;
}
.portfolio_note p{margin:0;font-size:14px;line-height:1.9;}

@media (max-width:991px){
  .portfolio_intro{margin-bottom:32px;}
  .portfolio_intro_cta{margin-top:0;}
}
@media (max-width:575px){
  .ibtdi_ai_products .ibtdi_product_card,
  .portfolio_case{padding:22px;border-radius:22px;}
  .ibtdi_ai_products .ibtdi_product_card{min-height:0;}
  .portfolio_case > p{min-height:0;}
  .portfolio_case_meta{grid-template-columns:1fr;}
  .portfolio_note{padding:17px;gap:11px;border-radius:17px;}
  .portfolio_note p{font-size:13px;}
  .portfolio_intro_cta{width:100%;}
}
