:root{
  --cri-eservice-accent:#f6ede8;
  --cri-eservice-soft:#f6f8f7;
  --cri-eservice-border:rgba(14,53,49,.10);
  --cri-eservice-text:#4d635f;
}

.cri-eservice-page *{box-sizing:border-box;}

.cri-eservice-breadcrumb{
  min-height:520px;
  background-image:linear-gradient(180deg, rgba(14,53,49,.76) 0%, rgba(14,53,49,.88) 100%), url("https://images.unsplash.com/photo-1520607162513-77705c0f0d4a?auto=format&fit=crop&w=1600&q=80");
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.cri-eservice-breadcrumb .breadcrumb__overlay::after,
.cri-eservice-breadcrumb.breadcrumb__overlay::after{background:transparent;}
.cri-eservice-breadcrumb__content{padding-top:18px;}
.cri-eservice-breadcrumb__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 18px;
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.14);
  font-size:14px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:24px;
}
.cri-eservice-breadcrumb__text{
  max-width:860px;
  margin:18px auto 20px;
  color:rgba(255,255,255,.82);
  font-size:18px;
  line-height:1.85;
}

.cri-eservice-overview{
  position:relative;
  margin-top:-82px;
  z-index:5;
}
.cri-eservice-overview__panel{
  background:linear-gradient(135deg, var(--tp-theme-2) 0%, #174742 100%);
  border-radius:30px;
  padding:32px;
  box-shadow:0 26px 70px rgba(14,53,49,.16);
}
.cri-eservice-overview__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.cri-eservice-overview__item{
  min-height:185px;
  border-radius:24px;
  padding:24px 20px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.09);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.cri-eservice-overview__icon{
  width:58px;
  height:58px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  background:rgba(230,120,80,.14);
  color:var(--tp-theme-1);
  font-size:22px;
  margin-bottom:18px;
}
.cri-eservice-overview__item strong{
  font-size:40px;
  line-height:1;
  color:#fff;
  margin-bottom:10px;
}
.cri-eservice-overview__item p{
  margin:0;
  color:rgba(255,255,255,.84);
  line-height:1.75;
}

.cri-eservice-section--soft{background:var(--cri-eservice-soft);}
.cri-eservice-heading .tp-section-title{
  font-size:42px;
  line-height:1.2;
  font-weight:700;
}
.cri-eservice-lead{
  margin-bottom:40px;
  color:var(--cri-eservice-text);
  line-height:1.85;
  font-size:17px;
}

.cri-eservice-action-card,
.cri-eservice-note-card,
.cri-eservice-process-card,
.cri-eservice-feature-card,
.cri-eservice-faq,
.cri-eservice-support,
.cri-eservice-cta__box{
  border-radius:30px;
  background:#fff;
  border:1px solid var(--cri-eservice-border);
  box-shadow:0 18px 50px rgba(14,53,49,.06);
  min-width:0;
}

.cri-eservice-action-card{
  padding:34px;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.cri-eservice-action-card--primary{
  background:linear-gradient(135deg, rgba(14,53,49,.98), rgba(23,71,66,.98));
  color:#fff;
}
.cri-eservice-action-card__badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 16px;
  border-radius:999px;
  background:var(--cri-eservice-accent);
  color:var(--tp-theme-2);
  font-size:13px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:20px;
}
.cri-eservice-action-card__badge--soft{background:#eef4f3;}
.cri-eservice-action-card--primary .cri-eservice-action-card__badge{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
}
.cri-eservice-action-card h3{
  font-size:34px;
  line-height:1.18;
  margin-bottom:14px;
  color:inherit;
  width:100%;
}
.cri-eservice-action-card p{
  margin:0 0 20px;
  line-height:1.85;
  color:inherit;
  width:100%;
}
.cri-eservice-action-card:not(.cri-eservice-action-card--primary) p{color:var(--cri-eservice-text);}
.cri-eservice-checklist{
  margin:0 0 28px;
  padding:0;
  list-style:none;
  display:grid;
  gap:14px;
  width:100%;
}
.cri-eservice-checklist li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  line-height:1.7;
}
.cri-eservice-checklist i{margin-top:4px;color:var(--tp-theme-1);}
.cri-eservice-action-card__buttons{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:16px;
  width:100%;
  margin-top:auto;
}
.cri-eservice-link-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  color:inherit;
}
.cri-eservice-mini-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:24px;
  width:100%;
}
.cri-eservice-mini-points span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:#f3f6f5;
  color:var(--tp-theme-2);
  font-size:13px;
  font-weight:700;
}
.cri-eservice-side-stack{display:grid;gap:24px;height:100%;}

.cri-eservice-note-card{
  display:flex;
  gap:18px;
  padding:28px;
  align-items:flex-start;
  min-width:0;
}
.cri-eservice-note-card__icon{
  width:64px;
  height:64px;
  flex:0 0 64px;
  border-radius:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--cri-eservice-accent);
  color:var(--tp-theme-1);
  font-size:24px;
}
.cri-eservice-note-card__content{min-width:0;flex:1 1 auto;}
.cri-eservice-note-card__content h4{
  font-size:24px;
  color:var(--tp-theme-2);
  margin-bottom:12px;
}
.cri-eservice-note-card__content p{
  margin:0 0 14px;
  color:var(--cri-eservice-text);
  line-height:1.85;
}
.cri-eservice-note-card__content a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  color:var(--tp-theme-1);
}

.cri-eservice-process-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}
.cri-eservice-process-card{
  position:relative;
  padding:28px 24px;
  overflow:hidden;
  height:100%;
}
.cri-eservice-process-card__step{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:68px;
  height:68px;
  border-radius:18px;
  background:var(--cri-eservice-accent);
  color:var(--tp-theme-2);
  font-size:24px;
  font-weight:800;
  margin-bottom:18px;
}
.cri-eservice-process-card h3{
  font-size:24px;
  color:var(--tp-theme-2);
  margin-bottom:12px;
}
.cri-eservice-process-card p{color:var(--cri-eservice-text);line-height:1.85;margin:0;}

.cri-eservice-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.cri-eservice-feature-card{
  padding:30px 28px;
  height:100%;
}
.cri-eservice-feature-card__icon{
  width:62px;
  height:62px;
  border-radius:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--cri-eservice-accent);
  color:var(--tp-theme-1);
  font-size:23px;
  margin-bottom:18px;
}
.cri-eservice-feature-card h3{
  font-size:24px;
  color:var(--tp-theme-2);
  margin-bottom:12px;
}
.cri-eservice-feature-card p{margin:0;color:var(--cri-eservice-text);line-height:1.85;}

.cri-eservice-faq{padding:34px;height:100%;}
.cri-eservice-faq__list{display:grid;gap:16px;}
.cri-eservice-faq__item{
  border:1px solid var(--cri-eservice-border);
  border-radius:22px;
  background:#fff;
  overflow:hidden;
}
.cri-eservice-faq__item summary{
  list-style:none;
  cursor:pointer;
  padding:20px 24px;
  font-size:18px;
  font-weight:700;
  color:var(--tp-theme-2);
  position:relative;
  padding-right:56px;
}
.cri-eservice-faq__item summary::-webkit-details-marker{display:none;}
.cri-eservice-faq__item summary::after{
  content:"+";
  position:absolute;
  right:24px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--cri-eservice-accent);
  color:var(--tp-theme-2);
  font-size:18px;
  font-weight:800;
}
.cri-eservice-faq__item[open] summary::after{content:"–";}
.cri-eservice-faq__body{padding:0 24px 22px;}
.cri-eservice-faq__body p{margin:0;color:var(--cri-eservice-text);line-height:1.85;}

.cri-eservice-support{
  height:100%;
  padding:34px;
  background:linear-gradient(135deg, #0f2741, #0b5f8f 58%, #1aa3d9 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
}
.cri-eservice-support::before{
  content:"";
  position:absolute;
  right:-60px;
  top:-60px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
}
.cri-eservice-support > *{position:relative;z-index:1;}
.cri-eservice-support__label{
  display:inline-flex;
  align-items:center;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  font-size:12px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.cri-eservice-support__top h3{
  font-size:30px;
  line-height:1.2;
  margin-bottom:12px;
  color:#fff;
}
.cri-eservice-support__top p{color:rgba(255,255,255,.86);line-height:1.85;margin:0 0 24px;}
.cri-eservice-support__list{
  margin:0 0 28px;
  padding:0;
  list-style:none;
  display:grid;
  gap:14px;
}
.cri-eservice-support__list li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  line-height:1.75;
  color:#fff;
}
.cri-eservice-support__list i{margin-top:4px;color:#ffd6c7;}
.cri-eservice-support__contact{
  display:grid;
  gap:14px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.14);
}
.cri-eservice-support__contact span{
  display:block;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:rgba(255,255,255,.7);
  margin-bottom:5px;
}
.cri-eservice-support__contact a{color:#fff;font-weight:700;}

.cri-eservice-cta__box{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:20px;
  align-items:center;
  padding:38px 40px;
}
.cri-eservice-cta__content p{margin:16px 0 0;color:var(--cri-eservice-text);line-height:1.85;}
.cri-eservice-cta__actions{display:flex;gap:16px;justify-content:flex-end;flex-wrap:wrap;}

.cri-eservice-page .tp-btn.tp-btn-border{
  background:transparent;
  color:var(--tp-theme-2);
  border:1px solid var(--cri-eservice-border);
  padding:0 26px;
}
.cri-eservice-page .cri-eservice-action-card--primary .tp-btn.tp-btn-border{color:#fff;border-color:rgba(255,255,255,.24);}
.cri-eservice-page .cri-eservice-cta__box .tp-btn.tp-btn-border{color:var(--tp-theme-2);}
.cri-eservice-page .cri-eservice-action-card *,
.cri-eservice-page .cri-eservice-note-card *,
.cri-eservice-page .cri-eservice-process-card *,
.cri-eservice-page .cri-eservice-feature-card *,
.cri-eservice-page .cri-eservice-faq *,
.cri-eservice-page .cri-eservice-support *,
.cri-eservice-page .cri-eservice-cta__box *{
  max-width:100%;
  word-break:normal;
}

@media (max-width: 1399px){
  .cri-eservice-overview__grid,
  .cri-eservice-process-grid,
  .cri-eservice-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cri-eservice-heading .tp-section-title{font-size:36px;}
}
@media (max-width: 1199px){
  .cri-eservice-overview{margin-top:40px;}
  .cri-eservice-cta__box{grid-template-columns:1fr;}
  .cri-eservice-cta__actions{justify-content:flex-start;}
}
@media (max-width: 991px){
  .cri-eservice-breadcrumb{min-height:460px;}
  .cri-eservice-breadcrumb__text{font-size:16px;}
  .cri-eservice-heading .tp-section-title{font-size:32px;}
  .cri-eservice-process-grid,
  .cri-eservice-feature-grid{grid-template-columns:1fr 1fr;}
  .cri-eservice-action-card h3{font-size:30px;}
}
@media (max-width: 767px){
  .cri-eservice-overview__grid,
  .cri-eservice-process-grid,
  .cri-eservice-feature-grid{grid-template-columns:1fr;}
  .cri-eservice-overview__panel,
  .cri-eservice-action-card,
  .cri-eservice-note-card,
  .cri-eservice-process-card,
  .cri-eservice-feature-card,
  .cri-eservice-faq,
  .cri-eservice-support,
  .cri-eservice-cta__box{padding-left:20px;padding-right:20px;}
  .cri-eservice-overview__panel{padding-top:24px;padding-bottom:24px;}
  .cri-eservice-overview__item strong{font-size:34px;}
  .cri-eservice-heading .tp-section-title{font-size:28px;}
  .cri-eservice-action-card h3,
  .cri-eservice-support__top h3{font-size:26px;}
  .cri-eservice-faq__item summary{font-size:17px;padding-left:18px;padding-right:52px;}
  .cri-eservice-faq__body{padding-left:18px;padding-right:18px;}
  .cri-eservice-note-card{flex-direction:column;}
  .cri-eservice-action-card__buttons,
  .cri-eservice-cta__actions{flex-direction:column;align-items:flex-start;}
}

.cri-eservice-card-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
  font-weight:800;
  color:var(--tp-theme-1);
}
.cri-eservice-card-link i{transition:transform .25s ease;}
.cri-eservice-feature-card:hover .cri-eservice-card-link i{transform:translateX(4px);}

/* =========================================================
   FIX: E-SERVICE CARDS TEXT / STEP LAYOUT
   This part only fixes the broken cards shown in the screenshot.
   ========================================================= */
.cri-eservice-page .cri-eservice-feature-grid,
.cri-eservice-page .cri-eservice-process-grid{
  align-items:stretch !important;
}

.cri-eservice-page .cri-eservice-feature-card,
.cri-eservice-page .cri-eservice-process-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:0 !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:245px !important;
  height:100% !important;
  padding:32px 28px !important;
  overflow:hidden !important;
  writing-mode:horizontal-tb !important;
  text-orientation:mixed !important;
}

.cri-eservice-page .cri-eservice-feature-card > *,
.cri-eservice-page .cri-eservice-process-card > *{
  position:relative !important;
  inset:auto !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  float:none !important;
  clear:none !important;
  transform:none !important;
  writing-mode:horizontal-tb !important;
  text-orientation:mixed !important;
}

.cri-eservice-page .cri-eservice-feature-card__icon,
.cri-eservice-page .cri-eservice-process-card__step{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:64px !important;
  height:64px !important;
  min-width:64px !important;
  min-height:64px !important;
  margin:0 0 20px 0 !important;
  border-radius:18px !important;
  line-height:1 !important;
  white-space:nowrap !important;
  text-align:center !important;
}

.cri-eservice-page .cri-eservice-feature-card h3,
.cri-eservice-page .cri-eservice-process-card h3{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 12px 0 !important;
  padding:0 !important;
  color:var(--tp-theme-2) !important;
  font-size:24px !important;
  line-height:1.28 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  text-align:left !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}

.cri-eservice-page .cri-eservice-feature-card p,
.cri-eservice-page .cri-eservice-process-card p{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--cri-eservice-text) !important;
  font-size:15px !important;
  line-height:1.8 !important;
  font-weight:400 !important;
  text-align:left !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}

.cri-eservice-page .cri-eservice-card-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  width:auto !important;
  max-width:100% !important;
  margin:18px 0 0 !important;
  padding:0 !important;
  color:var(--tp-theme-1) !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  text-align:left !important;
  text-decoration:none !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}

.cri-eservice-page .cri-eservice-card-link i{
  flex:0 0 auto !important;
  margin:0 !important;
  font-size:12px !important;
  line-height:1 !important;
}

.cri-eservice-page .cri-eservice-feature-card:hover,
.cri-eservice-page .cri-eservice-process-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 24px 60px rgba(14,53,49,.09) !important;
}

.cri-eservice-page .cri-eservice-feature-card:hover .cri-eservice-card-link i{
  transform:translateX(4px) !important;
}

@media (min-width: 1400px){
  .cri-eservice-page .cri-eservice-feature-card,
  .cri-eservice-page .cri-eservice-process-card{
    min-height:270px !important;
  }
}

@media (max-width: 1399px){
  .cri-eservice-page .cri-eservice-feature-card,
  .cri-eservice-page .cri-eservice-process-card{
    min-height:240px !important;
  }
}

@media (max-width: 767px){
  .cri-eservice-page .cri-eservice-feature-card,
  .cri-eservice-page .cri-eservice-process-card{
    min-height:auto !important;
    padding:24px 20px !important;
  }

  .cri-eservice-page .cri-eservice-feature-card h3,
  .cri-eservice-page .cri-eservice-process-card h3{
    font-size:22px !important;
  }

  .cri-eservice-page .cri-eservice-feature-card p,
  .cri-eservice-page .cri-eservice-process-card p{
    font-size:15px !important;
  }
}
