/* TechCrest — Base tokens */
:root{
  --techcrest-font: "Jost", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  /* Primary: Blue */
  --techcrest-primary-500: #3B82F6;
  --techcrest-primary-600: #2563EB;
  --techcrest-primary-700: #1D4ED8;

  /* Neutrals */
  --techcrest-bg: #FFFFFF;
  --techcrest-surface: #F8FAFC;
  --techcrest-surface-2: #F1F5F9;
  --techcrest-text: #0F172A;
  --techcrest-text-2: #334155;
  --techcrest-muted: #64748B;
  --techcrest-border: #E2E8F0;

  /* Radius & shadow */
  --techcrest-r-sm: 12px;
  --techcrest-r-md: 16px;
  --techcrest-r-lg: 20px;

  --techcrest-shadow-sm: 0 10px 26px rgba(15, 23, 42, 0.08);
  --techcrest-shadow-md: 0 16px 44px rgba(15, 23, 42, 0.12);

  /* Layout */
  --techcrest-section-pad: 96px;

  /* Gradients */
  --techcrest-grad-primary: linear-gradient(135deg, var(--techcrest-primary-600), #7C3AED);
  --techcrest-grad-soft: linear-gradient(135deg, rgba(37,99,235,.14), rgba(124,58,237,.10));
}

/* Base */
html{scroll-behavior:smooth;}
body{
  font-family: var(--techcrest-font);
  background: var(--techcrest-bg);
  color: var(--techcrest-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

/* Skip link */
.techcrest-skip-link{
  position:absolute;
  left:-999px;
  top: 12px;
  background: var(--techcrest-text);
  color:#fff;
  padding: 10px 14px;
  border-radius: 999px;
  z-index: 9999;
}
.techcrest-skip-link:focus{left: 12px;}

/* Typography helpers */
.techcrest-h1{
  font-size: clamp(2.2rem, 3.6vw, 3.6rem);
  line-height: 1.08;
  letter-spacing: -0.02em;
  font-weight: 700;
}
.techcrest-h2{
  font-size: clamp(1.65rem, 2.4vw, 2.5rem);
  line-height: 1.15;
  letter-spacing: -0.02em;
  font-weight: 700;
}
.techcrest-lead{
  font-size: 1.125rem;
  color: var(--techcrest-text-2);
  max-width: 56ch;
}
.techcrest-text-muted{color: var(--techcrest-muted);}

.techcrest-text-gradient{
  background: var(--techcrest-grad-primary);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* Sections */
.techcrest-section{
  padding: var(--techcrest-section-pad) 0;
}
.techcrest-section-head{
  max-width: 800px;
}

/* Kicker */
.techcrest-kicker{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  font-weight: 600;
  color: var(--techcrest-primary-700);
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.16);
  padding: .35rem .75rem;
  border-radius: 999px;
}
.techcrest-kicker-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--techcrest-grad-primary);
  box-shadow: 0 0 0 4px rgba(37,99,235,.18);
}

/* Navbar */
.techcrest-nav{
  padding: 10px 0;
  position: sticky;
  top: 0;
  z-index: 1030;
  background:
    radial-gradient(900px 420px at 18% 10%, rgba(37,99,235,.18), transparent 60%),
    radial-gradient(700px 360px at 82% 30%, rgba(59,130,246,.12), transparent 55%),
    linear-gradient(90deg, rgba(255,255,255,.78), rgba(248,250,252,.72));
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(226,232,240,.9);
}
.techcrest-nav .nav-link{
  font-weight: 600;
  color: var(--techcrest-text-2);
  padding: 10px 12px;
  border-radius: 999px;
}
/* TechCrest: replace Bootstrap dropdown caret with plus/minus */
.techcrest-navbar .dropdown-toggle::after{
  /* remove default caret */
  border: 0 !important;
  margin: 0 !important;
  vertical-align: 0 !important;

  /* draw a plus using 2 gradients */
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: .5rem;

  background:
    linear-gradient(currentColor, currentColor) center/12px 2px no-repeat,
    linear-gradient(currentColor, currentColor) center/2px 12px no-repeat;

  opacity: .9;
  transition: transform .18s ease, opacity .18s ease;
}

/* When dropdown is open -> turn plus into minus (rotate hides vertical stroke) */
.techcrest-navbar .dropdown-toggle.show::after{
  transform: rotate(90deg);
  opacity: 1;
}

/* Optional: slightly bolder on hover */
.techcrest-navbar .dropdown-toggle:hover::after{
  opacity: 1;
}
/* TechCrest header upgrades */
.techcrest-dd { border-radius: 18px; overflow: hidden; }

/* Mega menu */
.techcrest-mega .dropdown-menu{
  max-width: calc(100vw - 1rem);
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.16);
}

.techcrest-mega-inner{
  width: 980px;
  max-width: calc(100% - 2rem);
}

@media (min-width: 992px){
  .techcrest-mega .dropdown-menu{
    left: 50%;
    transform: translateX(-50%);
    top: calc(100% + 10px);
  }
}

.techcrest-mega-title{
  font-weight: 1000;
  letter-spacing: -0.02em;
}

.techcrest-mega-link{
  display:block;
  padding: .4rem 0;
  text-decoration: none;
  color: var(--techcrest-text);
  font-weight: 900;
}
.techcrest-mega-link:hover{ color: var(--techcrest-primary-700); }

.techcrest-mega-aside{
  background: rgba(248,250,252,.9);
  border-left: 1px solid rgba(226,232,240,.95);
}
.techcrest-mega-kicker{ font-weight: 1000; color: var(--techcrest-primary-700); }
.techcrest-mega-promo{ color: var(--techcrest-muted); font-weight: 800; }

/* TechCrest: premium burger icon */
.techcrest-nav-toggle{
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(226,232,240,.95);
  border-radius: 10px;
  padding: .55rem .7rem;
  background: rgba(255,255,255,.72);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}
.techcrest-nav-toggle:focus{ box-shadow: 0 0 0 .25rem rgba(37,99,235,.18); }

.techcrest-burger{
  width: 22px;
  height: 16px;
  display: inline-grid;
  align-content: space-between;
}
.techcrest-burger-line{
  height: 2px;
  border-radius: 999px;
  background: var(--techcrest-text);
  opacity: .92;
  transform-origin: center;
  transition: transform .18s ease, opacity .18s ease, width .18s ease;
}
.techcrest-burger-line:nth-child(1){ width: 22px; }
.techcrest-burger-line:nth-child(2){ width: 16px; }
.techcrest-burger-line:nth-child(3){ width: 22px; }

/* When offcanvas is open, morph into "X" */
.techcrest-nav-toggle[aria-expanded="true"] .techcrest-burger-line:nth-child(1){
  transform: translateY(7px) rotate(45deg);
  width: 22px;
}
.techcrest-nav-toggle[aria-expanded="true"] .techcrest-burger-line:nth-child(2){
  opacity: 0;
  transform: scaleX(.4);
}
.techcrest-nav-toggle[aria-expanded="true"] .techcrest-burger-line:nth-child(3){
  transform: translateY(-7px) rotate(-45deg);
  width: 22px;
}

/* Remove Bootstrap default icon background if present */
.techcrest-nav-toggle .navbar-toggler-icon{ display:none; }


/* Offcanvas */
.techcrest-offcanvas{
  border-left: 1px solid rgba(226,232,240,.95);
  width: min(360px, 92vw);
  border-right: 1px solid rgba(226,232,240,.9);
  background:
    radial-gradient(700px 360px at 18% 12%, rgba(37,99,235,.18), transparent 60%),
    radial-gradient(520px 300px at 85% 40%, rgba(59,130,246,.12), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.20);
}
/* Header separation */
.techcrest-offcanvas .offcanvas-header{
  border-bottom: 1px solid rgba(226,232,240,.9);
}

/* Premium backdrop blur */
.offcanvas-backdrop.show{
  opacity: .38;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
/* Smooth easing for slide in/out */
.offcanvas.offcanvas-start{
  transition: transform .34s cubic-bezier(.2,.8,.2,1);
}
.offcanvas.offcanvas-start.show{
  transform: translateX(0);
}

/* Make accordion in offcanvas match premium feel */
.techcrest-offcanvas .accordion-item{
  background: transparent;
  border: 0;
}
.techcrest-offcanvas .accordion-button{
  border-radius: 16px;
  font-weight: 1000;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(226,232,240,.9);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  padding: .8rem .9rem;
}
.techcrest-offcanvas .accordion-button:not(.collapsed){
  background: rgba(255,255,255,.86);
  border-color: rgba(37,99,235,.20);
}
.techcrest-offcanvas .accordion-body{
  padding: .6rem .9rem .9rem;
}
.techcrest-offcanvas-link,
.techcrest-offcanvas-sub{
  border-radius: 14px;
  padding-left: .6rem;
  padding-right: .6rem;
}

.techcrest-offcanvas-link:hover,
.techcrest-offcanvas-sub:hover{
  background: rgba(37,99,235,.08);
}
.techcrest-offcanvas-title{
  font-weight: 1000;
  letter-spacing: -0.03em;
}
.techcrest-offcanvas-link{
  display:block;
  padding: .7rem .2rem;
  text-decoration:none;
  color: var(--techcrest-text);
  font-weight: 900;
}
.techcrest-offcanvas-link:hover{ color: var(--techcrest-primary-700); }

.techcrest-offcanvas-sub{
  display:block;
  padding: .45rem 0;
  text-decoration:none;
  color: var(--techcrest-text);
  font-weight: 800;
}
.techcrest-offcanvas-sub:hover{ color: var(--techcrest-primary-700); }

.techcrest-nav .nav-link:hover{
  background: rgba(37,99,235,.06);
  color: var(--techcrest-text);
}

.techcrest-brand-mark{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: var(--techcrest-grad-primary);
  box-shadow: var(--techcrest-shadow-sm);
}
.techcrest-brand-text{
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--techcrest-text);
}

/* On scroll state (JS adds .techcrest-nav--scrolled) */
.techcrest-nav--scrolled{
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
  border-bottom: 1px solid rgba(226,232,240,.7);
}

/* Buttons */
.techcrest-btn{
  border-radius: 999px;
  font-weight: 600;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  border: 1px solid transparent;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
  text-decoration:none;
  user-select:none;
}
.techcrest-btn:active{transform: translateY(1px);}

.techcrest-btn-sm{padding: 10px 14px;}
.techcrest-btn-lg{padding: 14px 18px;}

.techcrest-btn-primary{
  color:#fff;
  background: var(--techcrest-grad-primary);
  box-shadow: var(--techcrest-shadow-sm);
}
.techcrest-btn-primary:hover{box-shadow: var(--techcrest-shadow-md);}

.techcrest-btn-outline{
  color: var(--techcrest-text);
  border-color: var(--techcrest-border);
  background: rgba(255,255,255,.7);
}
.techcrest-btn-outline:hover{
  background: rgba(37,99,235,.06);
  border-color: rgba(37,99,235,.24);
}

.techcrest-btn-soft{
  color: var(--techcrest-primary-700);
  background: rgba(37,99,235,.12);
}
.techcrest-btn-soft:hover{background: rgba(37,99,235,.18);}

/* Hero */
.techcrest-hero{
  padding-top: calc(var(--techcrest-section-pad) + 44px);
  padding-bottom: var(--techcrest-section-pad);
  background:
    radial-gradient(900px 450px at 18% 5%, rgba(37,99,235,.18), transparent 55%),
    radial-gradient(760px 380px at 85% 8%, rgba(124,58,237,.14), transparent 55%),
    linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  overflow: hidden;
}

.techcrest-hero-metrics{
  display:flex;
  flex-wrap: wrap;
  gap: 16px;
}
.techcrest-metric{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(226,232,240,.9);
  border-radius: var(--techcrest-r-md);
  padding: 14px 16px;
  min-width: 170px;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05);
}
.techcrest-metric-num{
  font-weight: 700;
  font-size: 1.35rem;
  letter-spacing: -0.02em;
}
.techcrest-metric-sub{
  font-weight: 600;
  font-size: 1rem;
  color: var(--techcrest-muted);
}
.techcrest-metric-label{
  color: var(--techcrest-muted);
  font-weight: 500;
  font-size: .95rem;
}

/* Hero visual */
.techcrest-hero-visual{
  position: relative;
  border-radius: 26px;
  padding: 18px;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(226,232,240,.9);
  box-shadow: var(--techcrest-shadow-md);
  transform-style: preserve-3d;
}

.techcrest-hero-card{
  border-radius: 22px;
  background: var(--techcrest-bg);
  border: 1px solid var(--techcrest-border);
  padding: 22px;
  transform: translateZ(10px);
}

.techcrest-hero-card-top{
  display:flex;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}

.techcrest-chip{
  display:inline-flex;
  align-items:center;
  padding: .35rem .65rem;
  border-radius: 999px;
  font-weight: 600;
  font-size: .85rem;
  background: rgba(37,99,235,.10);
  color: var(--techcrest-primary-700);
  border: 1px solid rgba(37,99,235,.16);
}
.techcrest-chip-ghost{
  background: rgba(15, 23, 42, .04);
  border-color: rgba(15, 23, 42, .08);
  color: var(--techcrest-text-2);
}

.techcrest-hero-card-title{
  font-size: 1.35rem;
}

.techcrest-mini-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.techcrest-mini{
  background: var(--techcrest-surface);
  border: 1px solid var(--techcrest-border);
  border-radius: var(--techcrest-r-md);
  padding: 14px;
  box-shadow: 0 10px 26px rgba(15,23,42,.05);
  transform-style: preserve-3d;
}
.techcrest-mini.wide{grid-column: 1 / -1;}
.techcrest-mini-title{color: var(--techcrest-muted); font-weight: 600; font-size: .9rem;}
.techcrest-mini-value{font-weight: 700; font-size: 1.25rem; letter-spacing: -0.02em;}
.techcrest-mini-note{color: var(--techcrest-primary-700); font-weight: 700; font-size: .95rem;}

.techcrest-status{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 600;
  color: var(--techcrest-text-2);
}
.techcrest-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #22C55E;
  box-shadow: 0 0 0 5px rgba(34,197,94,.18);
}

/* Glows */
.techcrest-glow{
  position:absolute;
  filter: blur(30px);
  opacity: .7;
  pointer-events:none;
  transform: translateZ(-1px);
}
.techcrest-glow-1{
  width: 240px;
  height: 240px;
  top: -60px;
  left: -40px;
  background: rgba(37,99,235,.35);
}
.techcrest-glow-2{
  width: 220px;
  height: 220px;
  bottom: -70px;
  right: -40px;
  background: rgba(124,58,237,.28);
}

/* Scroll reveal (JS) */
[data-techcrest-reveal]{
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .7s ease, transform .7s ease;
}
.techcrest-reveal-in{
  opacity: 1;
  transform: translateY(0);
}

/* 3D pop on scroll (subtle) */
[data-techcrest-3d]{
  transform: perspective(900px) rotateX(8deg) translateY(8px);
  transition: transform .8s ease;
  will-change: transform;
}
.techcrest-3d-in{
  transform: perspective(900px) rotateX(0deg) translateY(0);
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  [data-techcrest-reveal]{opacity:1; transform:none; transition:none;}
  [data-techcrest-3d]{transform:none; transition:none;}
  .techcrest-btn{transition:none;}
  .techcrest-nav{transition:none;}
}

/* TechCrest — Section alt background */
.techcrest-section-alt{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
  border-bottom: 1px solid rgba(226,232,240,.8);
}

/* Feature cards */
.techcrest-h3{
  font-size: 1.25rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.techcrest-feature-card{
  position: relative;
  height: 100%;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  padding: 22px;
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

/* subtle gradient sheen */
.techcrest-feature-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}

/* glow ring */
.techcrest-feature-card::after{
  content:"";
  position:absolute;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  right: -140px;
  top: -140px;
  background: rgba(37,99,235,.18);
  filter: blur(24px);
  opacity: 0;
  transition: opacity .2s ease, transform .2s ease;
  pointer-events:none;
}

.techcrest-feature-icon{
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.16);
  color: var(--techcrest-primary-700);
  box-shadow: 0 12px 26px rgba(37,99,235,.10);
  margin-bottom: 14px;
  transform: translateZ(16px);
}

.techcrest-feature-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-feature-card:hover::before{opacity: 1;}
.techcrest-feature-card:hover::after{
  opacity: 1;
  transform: translateY(10px);
}

/* Make reveal animations feel smoother on cards */
.techcrest-feature-card.techcrest-reveal-in{
  transition-delay: 0s;
}

/* TechCrest — Trusted by */
.techcrest-trusted{
  padding: 70px 0;
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-trusted-head{
  max-width: 820px;
}

/* Marquee container */
.techcrest-marquee{
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.9);
  background: rgba(255,255,255,.75);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08);
}

/* fade edges */
.techcrest-marquee::before,
.techcrest-marquee::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width: 90px;
  z-index: 2;
  pointer-events: none;
}
.techcrest-marquee::before{
  left:0;
  background: linear-gradient(90deg, rgba(255,255,255,.95), rgba(255,255,255,0));
}
.techcrest-marquee::after{
  right:0;
  background: linear-gradient(270deg, rgba(255,255,255,.95), rgba(255,255,255,0));
}

/* Track */
.techcrest-marquee-track{
  display: flex;
  align-items: center;
  gap: 0;
  padding: 22px 0;
  will-change: transform;
  animation: techcrest-marquee 26s linear infinite;
}

/* Each duplicated group */
.techcrest-marquee-group{
  display: flex;
  align-items: center;
  gap: 34px;
  padding: 0 34px;
  flex-shrink: 0;
}

/* Logo style */
.techcrest-brand-logo{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  min-width: 150px;
  padding: 8px 18px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.9);
  background: rgba(248,250,252,.9);
  box-shadow: 0 12px 28px rgba(15,23,42,.06);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.techcrest-brand-logo img{
  display:block;
  max-height: 26px;
  width: auto;
  opacity: .86;
  filter: grayscale(1);
  transition: opacity .18s ease, filter .18s ease, transform .18s ease;
}

.techcrest-brand-logo:hover{
  transform: translateY(-3px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 40px rgba(15,23,42,.10);
}

.techcrest-brand-logo:hover img{
  opacity: 1;
  filter: grayscale(0);
  transform: scale(1.02);
}

@keyframes techcrest-marquee{
  from{ transform: translateX(0); }
  to{ transform: translateX(-50%); }
}

/* Pause on hover (nice premium touch) */
.techcrest-marquee:hover .techcrest-marquee-track{
  animation-play-state: paused;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .techcrest-marquee-track{ animation: none; }
}

/* TechCrest — How it works */
.techcrest-how{
  background:
    radial-gradient(900px 420px at 80% 10%, rgba(37,99,235,.14), transparent 60%),
    linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-how-wrap{
  position: relative;
}

/* Connector line behind cards */
.techcrest-how-line{
  position: absolute;
  left: 0;
  right: 0;
  top: 42px;
  height: 2px;
  background: rgba(226,232,240,.9);
  border-radius: 999px;
  overflow: hidden;
  z-index: 0;
}

/* Animated fill (subtle shimmer) */
.techcrest-how-line-fill{
  display:block;
  height: 100%;
  width: 36%;
  background: var(--techcrest-grad-primary);
  border-radius: 999px;
  opacity: .7;
  animation: techcrest-line-sweep 3.6s ease-in-out infinite;
}

@keyframes techcrest-line-sweep{
  0%{ transform: translateX(-40%); }
  50%{ transform: translateX(160%); }
  100%{ transform: translateX(-40%); }
}

/* Hide connector on small screens */
@media (max-width: 991.98px){
  .techcrest-how-line{ display:none; }
}

/* Step cards */
.techcrest-step-card{
  position: relative;
  z-index: 1;
  height: 100%;
  padding: 24px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

/* Soft sheen */
.techcrest-step-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}

.techcrest-step-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-step-card:hover::before{opacity: 1;}

.techcrest-step-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  transform: translateZ(16px);
}

.techcrest-step-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width: 52px;
  height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.16);
  color: var(--techcrest-primary-700);
  font-weight: 700;
  letter-spacing: .08em;
}

.techcrest-step-node{
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: var(--techcrest-grad-primary);
  box-shadow: 0 0 0 6px rgba(37,99,235,.16);
  position: relative;
}
.techcrest-step-node::after{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius: 999px;
  background: rgba(37,99,235,.12);
  filter: blur(10px);
  opacity: .65;
  animation: techcrest-node-pulse 2.8s ease-in-out infinite;
}
@keyframes techcrest-node-pulse{
  0%,100%{ transform: scale(.85); opacity: .45; }
  50%{ transform: scale(1.25); opacity: .75; }
}

/* List */
.techcrest-step-list{
  padding-left: 1.1rem;
  margin: 0;
  color: var(--techcrest-text-2);
}
.techcrest-step-list li{
  margin-bottom: .45rem;
}
.techcrest-step-list li:last-child{margin-bottom: 0;}

/* Reduce motion support */
@media (prefers-reduced-motion: reduce){
  .techcrest-how-line-fill{ animation: none; }
  .techcrest-step-node::after{ animation: none; }
}

/* TechCrest — Integrations */
.techcrest-integrations{
  background:
    radial-gradient(900px 460px at 20% 10%, rgba(37,99,235,.14), transparent 60%),
    radial-gradient(700px 360px at 90% 15%, rgba(124,58,237,.10), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-integ-meta{
  display:flex;
  flex-wrap: wrap;
  gap: 14px;
}
.techcrest-integ-meta-item{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(226,232,240,.9);
  border-radius: var(--techcrest-r-md);
  padding: 12px 14px;
  box-shadow: 0 12px 28px rgba(15,23,42,.06);
}
.techcrest-integ-meta-num{
  display:block;
  font-weight: 800;
  letter-spacing: -0.02em;
  font-size: 1.2rem;
}
.techcrest-integ-meta-text{
  display:block;
  color: var(--techcrest-muted);
  font-weight: 600;
  font-size: .95rem;
}

.techcrest-integ-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
@media (min-width: 992px){
  .techcrest-integ-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}

/* Integration card */
.techcrest-integ-card{
  position: relative;
  height: 100%;
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  transform-style: preserve-3d;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.techcrest-integ-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-integ-card::after{
  content:"";
  position:absolute;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  right: -150px;
  bottom: -150px;
  background: rgba(37,99,235,.16);
  filter: blur(24px);
  opacity: 0;
  transition: opacity .2s ease, transform .2s ease;
  pointer-events:none;
}

.techcrest-integ-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-integ-card:hover::before{opacity:1;}
.techcrest-integ-card:hover::after{opacity:1; transform: translateY(-10px);}

.techcrest-integ-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  transform: translateZ(14px);
}

.techcrest-integ-icon{
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.16);
  color: var(--techcrest-primary-700);
  box-shadow: 0 12px 26px rgba(37,99,235,.10);
}

.techcrest-integ-pill{
  display:inline-flex;
  align-items:center;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: rgba(15, 23, 42, .04);
  color: var(--techcrest-text-2);
  font-weight: 700;
  font-size: .82rem;
}

/* TechCrest — Pricing */
.techcrest-pricing{
  background:
    radial-gradient(900px 420px at 20% 0%, rgba(37,99,235,.14), transparent 60%),
    linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-link{
  color: var(--techcrest-primary-700);
  font-weight: 700;
  text-decoration: none;
}
.techcrest-link:hover{ text-decoration: underline; }

/* Toggle */
.techcrest-price-toggle-wrap{
  display:flex;
  justify-content:center;
}
.techcrest-price-toggle{
  position: relative;
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 6px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.75);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.techcrest-price-btn{
  position: relative;
  z-index: 1;
  border: 0;
  background: transparent;
  font-weight: 800;
  color: var(--techcrest-text-2);
  padding: 10px 14px;
  border-radius: 999px;
  cursor: pointer;
  display:inline-flex;
  align-items:center;
  gap: 10px;
  transition: color .15s ease;
}
.techcrest-price-btn.is-active{
  color: var(--techcrest-text);
}

.techcrest-price-pill{
  position:absolute;
  top: 6px;
  bottom: 6px;
  left: 6px;
  width: calc(50% - 6px);
  border-radius: 999px;
  background: rgba(37,99,235,.12);
  border: 1px solid rgba(37,99,235,.18);
  box-shadow: 0 14px 34px rgba(37,99,235,.12);
  transition: transform .25s ease;
}

.techcrest-save-badge{
  display:inline-flex;
  align-items:center;
  padding: .25rem .5rem;
  border-radius: 999px;
  font-weight: 800;
  font-size: .78rem;
  color: #0F172A;
  background: rgba(34,197,94,.16);
  border: 1px solid rgba(34,197,94,.22);
}

/* Cards */
.techcrest-price-card{
  position: relative;
  height: 100%;
  padding: 24px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.techcrest-price-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-price-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-price-card:hover::before{opacity:1;}

.techcrest-price-card-pop{
  border-color: rgba(37,99,235,.28);
  box-shadow: 0 18px 54px rgba(37,99,235,.12);
}
.techcrest-price-card-pop::after{
  content:"";
  position:absolute;
  width: 280px;
  height: 280px;
  right: -160px;
  top: -160px;
  border-radius: 999px;
  background: rgba(37,99,235,.18);
  filter: blur(24px);
  opacity: .9;
  pointer-events:none;
}

.techcrest-pop-badge{
  position:absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  padding: .35rem .65rem;
  border-radius: 999px;
  font-weight: 900;
  font-size: .82rem;
  color: #fff;
  background: var(--techcrest-grad-primary);
  box-shadow: 0 14px 34px rgba(37,99,235,.18);
}

.techcrest-price-head{
  transform: translateZ(14px);
}

.techcrest-price-amount{
  display:flex;
  align-items:flex-end;
  gap: 6px;
  margin: 18px 0 14px;
  transform: translateZ(14px);
}
.techcrest-price-currency{
  font-weight: 900;
  color: var(--techcrest-text-2);
  transform: translateY(-6px);
}
.techcrest-price-value{
  font-weight: 900;
  letter-spacing: -0.03em;
  font-size: 2.5rem;
  line-height: 1;
}
.techcrest-price-period{
  color: var(--techcrest-muted);
  font-weight: 700;
  padding-bottom: 2px;
}

/* Feature list */
.techcrest-price-list{
  list-style: none;
  padding: 0;
  margin: 0;
  display:grid;
  gap: 10px;
  color: var(--techcrest-text-2);
  transform: translateZ(10px);
}
.techcrest-price-list li{
  display:flex;
  align-items:flex-start;
  gap: 10px;
  font-weight: 600;
}
.techcrest-check{
  width: 22px;
  height: 22px;
  border-radius: 8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(37,99,235,.12);
  border: 1px solid rgba(37,99,235,.18);
  color: var(--techcrest-primary-700);
  flex: 0 0 auto;
  margin-top: 1px;
}

.techcrest-price-list li.is-muted{
  opacity: .55;
}

@media (prefers-reduced-motion: reduce){
  .techcrest-price-pill{ transition: none; }
}

/* TechCrest — Testimonials */
.techcrest-testimonials{
  background:
    radial-gradient(900px 420px at 80% 5%, rgba(37,99,235,.14), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

/* Proof block */
.techcrest-proof{
  display:flex;
  align-items:center;
  gap: 14px;
  padding: 14px 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.techcrest-avatars{
  display:flex;
  align-items:center;
}
.techcrest-avatar{
  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.9);
  background: linear-gradient(135deg, rgba(37,99,235,.35), rgba(124,58,237,.24));
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.10);
  margin-left: -10px;
}
.techcrest-avatar img{
  width: 100%;
  border-radius: 999px;
}
.techcrest-avatar:first-child{margin-left:0;}
.techcrest-proof-top{
  display:flex;
  align-items:center;
  gap: 10px;
}
.techcrest-stars{
  display:inline-flex;
  gap: 4px;
  color: rgba(37,99,235,.95);
}
.techcrest-proof-score{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Cards */
.techcrest-test-card{
  height: 100%;
  padding: 22px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-test-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-test-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-test-card:hover::before{opacity:1;}

.techcrest-test-quote{
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--techcrest-text);
  line-height: 1.65;
  transform: translateZ(12px);
}

.techcrest-test-person{
  display:flex;
  align-items:center;
  gap: 12px;
  transform: translateZ(14px);
}

.techcrest-test-avatar{
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(37,99,235,.35), rgba(124,58,237,.22));
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.10);
}
.techcrest-test-avatar-2{background: linear-gradient(135deg, rgba(34,197,94,.26), rgba(37,99,235,.25));}
.techcrest-test-avatar-3{background: linear-gradient(135deg, rgba(245,158,11,.26), rgba(37,99,235,.25));}
.techcrest-test-avatar-4{background: linear-gradient(135deg, rgba(99,102,241,.28), rgba(37,99,235,.22));}
.techcrest-test-avatar-5{background: linear-gradient(135deg, rgba(236,72,153,.24), rgba(37,99,235,.22));}
.techcrest-test-avatar-6{background: linear-gradient(135deg, rgba(20,184,166,.24), rgba(37,99,235,.22));}

.techcrest-test-avatar img{
  width: 100%;
  border-radius: 14px;
}
.techcrest-test-name{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Carousel controls */
.techcrest-carousel-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 14px;
}

.techcrest-carousel-btn{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  color: var(--techcrest-text);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.techcrest-carousel-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}

.techcrest-carousel-dots{
  position: static;
  margin: 0;
}
.techcrest-carousel-dots [data-bs-target]{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background-color: rgba(100,116,139,.35);
  opacity: 1;
}
.techcrest-carousel-dots .active{
  background-color: rgba(37,99,235,.9);
}

/* TechCrest — FAQ */
.techcrest-faq{
  background:
    radial-gradient(900px 420px at 18% 5%, rgba(37,99,235,.14), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-faq-side-inner{
  border-radius: var(--techcrest-r-lg);
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

/* Accordion */
.techcrest-accordion .accordion-item{
  border: 0;
  background: transparent;
  margin-bottom: 14px;
}

.techcrest-acc-item{
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.techcrest-acc-btn{
  font-weight: 800;
  color: var(--techcrest-text);
  background: transparent;
  padding: 18px 18px;
  border-radius: 0;
  box-shadow: none;
}

.techcrest-acc-btn:focus{
  border-color: transparent;
  box-shadow: 0 0 0 .25rem rgba(37,99,235,.18);
}

/* Remove default Bootstrap background on open */
.techcrest-accordion .accordion-button:not(.collapsed){
  color: var(--techcrest-text);
  background: rgba(37,99,235,.06);
}

/* Replace default caret with a cleaner one */
.techcrest-accordion .accordion-button::after{
  background-image: none;
  content: "＋";
  font-weight: 900;
  transform: none;
  width: auto;
  height: auto;
  color: rgba(15,23,42,.65);
}
.techcrest-accordion .accordion-button:not(.collapsed)::after{
  content: "—";
  color: rgba(37,99,235,.95);
}

.techcrest-acc-body{
  color: var(--techcrest-text-2);
  padding: 10px 18px 18px;
  line-height: 1.7;
}

/* Smoothen collapse feel a bit */
.techcrest-accordion .accordion-collapse{
  transition: height .25s ease;
}

/* TechCrest — CTA */
.techcrest-cta{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-cta-wrap{
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  padding: 34px;
  border: 1px solid rgba(226,232,240,.35);
  background:
    radial-gradient(900px 440px at 20% 0%, rgba(37,99,235,.35), transparent 60%),
    radial-gradient(760px 420px at 90% 10%, rgba(124,58,237,.24), transparent 62%),
    linear-gradient(180deg, rgba(15,23,42,.92), rgba(15,23,42,.86));
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.22);
  transform-style: preserve-3d;
}

.techcrest-cta-title{
  font-size: clamp(1.7rem, 2.6vw, 2.7rem);
  line-height: 1.12;
  letter-spacing: -0.02em;
  font-weight: 800;
  color: #fff;
}

.techcrest-cta-accent{
  background: var(--techcrest-grad-primary);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.techcrest-cta-lead{
  color: rgba(255,255,255,.82);
  font-size: 1.08rem;
  max-width: 62ch;
}

.techcrest-cta-mini{
  color: rgba(255,255,255,.70);
}

/* Kicker on dark */
.techcrest-kicker-on-dark{
  color: #fff;
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.12);
  z-index: 9999;
}

/* Outline button on dark */
.techcrest-btn-outline-on-dark{
  color: rgba(255,255,255,.90);
  border-color: rgba(255,255,255,.22);
  background: rgba(255,255,255,.06);
}
.techcrest-btn-outline-on-dark:hover{
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.32);
  color: #fff;
}

/* CTA badges */
.techcrest-cta-badges{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
  transform: translateZ(10px);
}
.techcrest-cta-badge{
  display:inline-flex;
  align-items:center;
  padding: .38rem .7rem;
  border-radius: 999px;
  font-weight: 800;
  font-size: .85rem;
  color: rgba(255,255,255,.86);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}

/* Glows */
.techcrest-cta-glow{
  position:absolute;
  filter: blur(36px);
  opacity: .75;
  pointer-events:none;
}
.techcrest-cta-glow-1{
  width: 260px;
  height: 260px;
  left: -90px;
  bottom: -90px;
  background: rgba(37,99,235,.45);
}
.techcrest-cta-glow-2{
  width: 240px;
  height: 240px;
  right: -90px;
  top: -90px;
  background: rgba(124,58,237,.35);
}

/* Responsive padding */
@media (max-width: 575.98px){
  .techcrest-cta-wrap{ padding: 24px; border-radius: 24px; }
}

/* TechCrest — Contact */
.techcrest-contact{
  background:
    radial-gradient(900px 420px at 20% 0%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-contact-cards{
  display:grid;
  gap: 14px;
}

.techcrest-contact-card{
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.techcrest-contact-note{
  padding: 14px 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px dashed rgba(37,99,235,.28);
  background: rgba(37,99,235,.06);
}

.techcrest-contact-formwrap{
  padding: 22px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  transform-style: preserve-3d;
}

/* Inputs */
.techcrest-label{
  font-weight: 700;
  color: var(--techcrest-text);
}

.techcrest-input{
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  padding: 12px 14px;
  font-weight: 600;
}

.techcrest-input:focus{
  border-color: rgba(37,99,235,.35);
  box-shadow: 0 0 0 .25rem rgba(37,99,235,.18);
  background: #fff;
}

/* TechCrest — Footer */
.techcrest-footer{
  padding: 70px 0 34px;
  background:
    radial-gradient(900px 460px at 80% 0%, rgba(37,99,235,.10), transparent 60%),
    linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-footer-text{
  color: var(--techcrest-text-2);
  max-width: 46ch;
}

.techcrest-footer-h{
  font-weight: 900;
  letter-spacing: -0.02em;
  font-size: 1.05rem;
  margin-bottom: 12px;
}

.techcrest-footer-links{
  list-style: none;
  padding: 0;
  margin: 0;
  display:grid;
  gap: 10px;
}

.techcrest-footer-links a{
  text-decoration: none;
  color: var(--techcrest-text-2);
  font-weight: 700;
}
.techcrest-footer-links a:hover{
  color: var(--techcrest-primary-700);
}

.techcrest-footer-social{
  display:flex;
  gap: 10px;
}

.techcrest-social{
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color: var(--techcrest-text);
  font-weight: 900;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.techcrest-social:hover{
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
}

.techcrest-newsletter{
  display:flex;
  gap: 10px;
  align-items:center;
  padding: 10px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}

.techcrest-news-input{
  flex: 1 1 auto;
  border: 0;
  outline: none;
  background: transparent;
  font-weight: 700;
  color: var(--techcrest-text);
  padding: 10px 8px;
}
.techcrest-news-input::placeholder{
  color: rgba(100,116,139,.9);
  font-weight: 600;
}

.techcrest-footer-bottom{
  display:flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items:center;
  justify-content: space-between;
  padding-top: 18px;
  border-top: 1px solid rgba(226,232,240,.85);
}

.techcrest-footer-bottom-links{
  list-style: none;
  padding: 0;
  margin: 0;
  display:flex;
  gap: 14px;
}
.techcrest-footer-bottom-links a{
  text-decoration: none;
  color: var(--techcrest-text-2);
  font-weight: 700;
}
.techcrest-footer-bottom-links a:hover{ color: var(--techcrest-primary-700); }

/* TechCrest — Scroll progress bar */
.techcrest-progress{
  position: fixed;
  left: 0;
  top: 0;
  height: 3px;
  width: 100%;
  z-index: 1100;
  background: transparent;
}
.techcrest-progress-bar{
  display:block;
  height: 100%;
  width: 0%;
  background: var(--techcrest-grad-primary);
  box-shadow: 0 10px 30px rgba(37,99,235,.20);
}

/* TechCrest — Back to top */
.techcrest-top{
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  color: var(--techcrest-text);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease, border-color .2s ease;
  z-index: 1100;
}
.techcrest-top:hover{
  border-color: rgba(37,99,235,.22);
  transform: translateY(6px);
}
.techcrest-top.is-visible{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .techcrest-top{ transition: none; }
}

/* TechCrest — About */
.techcrest-about{
  background:
    radial-gradient(900px 420px at 15% 10%, rgba(37,99,235,.10), transparent 60%),
    radial-gradient(760px 360px at 90% 15%, rgba(124,58,237,.08), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-about-visual{
  position: relative;
  border-radius: 28px;
  padding: 18px;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(226,232,240,.9);
  box-shadow: var(--techcrest-shadow-md);
  overflow: hidden;
  transform-style: preserve-3d;
}

.techcrest-about-card{
  position: relative;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: var(--techcrest-bg);
  box-shadow: 0 18px 52px rgba(15, 23, 42, 0.12);
}

.techcrest-about-card img{
  display:block;
  width: 100%;
  height: auto;
  border-radius: 22px;
  transform: scale(1.02);
}

.techcrest-about-card-main{
  transform: translateZ(10px);
}

.techcrest-about-card-float{
  position: absolute;
  width: min(46%, 280px);
  box-shadow: 0 18px 52px rgba(15, 23, 42, 0.14);
  transform-style: preserve-3d;
}

.techcrest-about-card-1{
  right: 16px;
  top: 18px;
  transform: translateZ(16px);
}
.techcrest-about-card-2{
  left: 16px;
  bottom: 18px;
  transform: translateZ(16px);
}

.techcrest-about-badge{
  position: absolute;
  z-index: 2;
  display:flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.9);
  background: rgba(255,255,255,.75);
  box-shadow: 0 18px 52px rgba(15, 23, 42, 0.12);
  backdrop-filter: blur(10px);
  transform-style: preserve-3d;
}

.techcrest-about-badge-num{
  font-weight: 900;
  letter-spacing: -0.03em;
  font-size: 1.25rem;
}
.techcrest-about-badge-text{
  color: var(--techcrest-muted);
  font-weight: 700;
  font-size: .92rem;
}

.techcrest-about-badge-1{
  left: 50px;
  top: 50px;
  transform: translateZ(20px);
}
.techcrest-about-badge-2{
  right: 50px;
  bottom: 50px;
  transform: translateZ(20px);
}

/* About glows (reuse techcrest-glow class) */
.techcrest-about-glow-1{
  width: 240px;
  height: 240px;
  left: -70px;
  top: -70px;
  background: rgba(37,99,235,.30);
}
.techcrest-about-glow-2{
  width: 220px;
  height: 220px;
  right: -70px;
  bottom: -70px;
  background: rgba(124,58,237,.22);
}

/* Content points */
.techcrest-about-points{
  display:grid;
  gap: 14px;
}

.techcrest-point{
  padding: 16px 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.75);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

/* Mini bullets */
.techcrest-about-mini{
  display:grid;
  gap: 10px;
  color: var(--techcrest-text-2);
  font-weight: 700;
}
.techcrest-about-mini-item{
  display:flex;
  align-items:center;
  gap: 10px;
}
.techcrest-mini-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--techcrest-grad-primary);
  box-shadow: 0 0 0 5px rgba(37,99,235,.14);
}

/* Responsive tweaks */
@media (max-width: 991.98px){
  .techcrest-about-card-float{ width: min(52%, 300px); }
}
@media (max-width: 575.98px){
  .techcrest-about-visual{ padding: 14px; border-radius: 24px; }
  .techcrest-about-card{ border-radius: 18px; }
  .techcrest-about-card-float{ display:none; } /* keeps mobile clean */
}

/* TechCrest — Stats */
.techcrest-stats{
  background:
    radial-gradient(900px 420px at 20% 5%, rgba(37,99,235,.12), transparent 60%),
    radial-gradient(760px 360px at 90% 10%, rgba(124,58,237,.10), transparent 60%),
    linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-stats-wrap{
  position: relative;
  border-radius: 28px;
  padding: 22px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.10);
  overflow: hidden;
  transform-style: preserve-3d;
}

.techcrest-stats-glow{
  position:absolute;
  filter: blur(34px);
  opacity: .72;
  pointer-events:none;
}
.techcrest-stats-glow-1{
  width: 260px;
  height: 260px;
  left: -90px;
  top: -90px;
  background: rgba(37,99,235,.26);
}
.techcrest-stats-glow-2{
  width: 240px;
  height: 240px;
  right: -90px;
  bottom: -90px;
  background: rgba(124,58,237,.20);
}

.techcrest-stat-card{
  height: 100%;
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-stat-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}

.techcrest-stat-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-stat-card:hover::before{opacity:1;}

.techcrest-stat-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  transform: translateZ(14px);
}

.techcrest-stat-icon{
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.16);
  color: var(--techcrest-primary-700);
  box-shadow: 0 12px 26px rgba(37,99,235,.10);
}

.techcrest-stat-pill{
  display:inline-flex;
  align-items:center;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: rgba(15, 23, 42, .04);
  color: var(--techcrest-text-2);
  font-weight: 800;
  font-size: .82rem;
}

.techcrest-stat-value{
  display:flex;
  align-items: baseline;
  gap: 6px;
  margin: 10px 0 10px;
  transform: translateZ(12px);
}
.techcrest-stat-num{
  font-weight: 900;
  letter-spacing: -0.03em;
  font-size: 2.2rem;
  line-height: 1;
}
.techcrest-stat-suffix{
  font-weight: 900;
  color: var(--techcrest-text-2);
}

/* Foot note */
.techcrest-stats-foot-inner{
  border-radius: 18px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 14px 16px;
  color: var(--techcrest-text-2);
  font-weight: 700;
}

/* Responsive */
@media (max-width: 575.98px){
  .techcrest-stats-wrap{ padding: 16px; border-radius: 24px; }
}

/* TechCrest — Blog */
.techcrest-blog{
  background:
    radial-gradient(900px 420px at 80% 5%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-post{
  height: 100%;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-post:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

.techcrest-post-media{
  display:block;
  position: relative;
  overflow: hidden;
  background: rgba(15,23,42,.08);
}

.techcrest-post-media img{
  display:block;
  width: 100%;
  height: 100%;
  transform: scale(1.02);
  transition: transform .35s ease;
}

.techcrest-post:hover .techcrest-post-media img{
  transform: scale(1.08);
}

.techcrest-post-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.0), rgba(15,23,42,.45));
  opacity: .75;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-post:hover .techcrest-post-overlay{ opacity: .9; }

.techcrest-post-body{
  padding: 18px;
  transform: translateZ(10px);
}

.techcrest-post-meta{
  display:flex;
  flex-wrap: wrap;
  align-items:center;
  gap: 10px;
  color: var(--techcrest-muted);
  font-weight: 700;
  font-size: .92rem;
  margin-bottom: 10px;
}

.techcrest-home1-post-tag{
  display:inline-flex;
  align-items:center;
  padding: .28rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
  font-weight: 800;
  font-size: .82rem;
}

.techcrest-post-dot{
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(100,116,139,.55);
}

.techcrest-post-title{
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.25;
  margin-bottom: 10px;
}
.techcrest-post-title a{
  text-decoration: none;
  color: var(--techcrest-text);
}
.techcrest-post-title a:hover{ color: var(--techcrest-primary-700); }

.techcrest-post-excerpt{
  color: var(--techcrest-text-2);
  line-height: 1.65;
  font-weight: 600;
}

/* Featured specifics */
.techcrest-post-featured .techcrest-post-body{ padding: 22px; }
.techcrest-post-featured .techcrest-post-title{ font-size: 1.35rem; }
.techcrest-post-featured .techcrest-post-media img{ aspect-ratio: 16 / 10; object-fit: cover; }

/* Author + CTA */
.techcrest-post-foot{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 16px;
}

.techcrest-post-author{
  display:flex;
  align-items:center;
  gap: 10px;
}
.techcrest-post-avatar{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(37,99,235,.35), rgba(124,58,237,.22));
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.10);
}
.techcrest-post-name{
  display:block;
  font-weight: 900;
}
.techcrest-post-role{
  display:block;
  color: var(--techcrest-muted);
  font-weight: 700;
  font-size: .9rem;
}

.techcrest-post-cta{
  text-decoration:none;
  font-weight: 900;
  color: var(--techcrest-primary-700);
}
.techcrest-post-cta:hover{ text-decoration: underline; }

/* Compact */
.techcrest-post-compact .techcrest-post-title{ font-size: 1.05rem; }
.techcrest-post-compact .techcrest-post-media img{ aspect-ratio: 16/10; object-fit: cover; }

/* Wide */
.techcrest-post-wide{
  border-radius: 24px;
}
.techcrest-post-media-wide img{
  height: 100%;
  width: 100%;
  object-fit: cover;
  aspect-ratio: 4/3;
}
.techcrest-post-body-wide{
  padding: 18px 18px;
}

/* Responsive */
@media (max-width: 575.98px){
  .techcrest-post-foot{ flex-direction: column; align-items:flex-start; }
}

/* TechCrest — Team */
.techcrest-team{
  background:
    radial-gradient(900px 420px at 20% 5%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-member{
  height: 100%;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-member:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

.techcrest-member-media{
  position: relative;
  overflow: hidden;
  background: rgba(15,23,42,.06);
  border-radius: 22px;
}

.techcrest-member-media img{
  display:block;
  width: 100%;
  height: auto;
  border-radius: 22px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-member:hover .techcrest-member-media img{
  transform: scale(1.08);
}

/* Social overlay */
.techcrest-member-social{
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  display:flex;
  gap: 10px;
  justify-content:center;
  padding: 10px;
  border-radius: 999px;
  background: rgba(15,23,42,.60);
  border: 1px solid rgba(255,255,255,.14);
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease;
  backdrop-filter: blur(10px);
}

.techcrest-member:hover .techcrest-member-social{
  opacity: 1;
  transform: translateY(0);
}

.techcrest-social-btn{
  width: 40px;
  height: 40px;
  border-radius: 999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.16);
  color: rgba(255,255,255,.90);
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
  text-decoration:none;
}
.techcrest-social-btn:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.16);
  border-color: rgba(255,255,255,.24);
  color: #fff;
}

.techcrest-member-body{
  padding: 16px 16px 18px;
  transform: translateZ(10px);
}

/* TechCrest — Services */
.techcrest-services{
  background:
    radial-gradient(900px 420px at 20% 5%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-service{
  height: 100%;
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-service::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-service:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-service:hover::before{ opacity: 1; }

.techcrest-service-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  transform: translateZ(12px);
}

.techcrest-service-icon{
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.16);
  color: var(--techcrest-primary-700);
  box-shadow: 0 12px 26px rgba(37,99,235,.10);
}

.techcrest-service-pill{
  display:inline-flex;
  align-items:center;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, .10);
  background: rgba(15, 23, 42, .04);
  color: var(--techcrest-text-2);
  font-weight: 800;
  font-size: .82rem;
}

.techcrest-service-foot{
  margin-top: 14px;
  transform: translateZ(10px);
}

.techcrest-service-link{
  text-decoration:none;
  font-weight: 900;
  color: var(--techcrest-primary-700);
}
.techcrest-service-link:hover{ text-decoration: underline; }
/* TechCrest — Services (Image cards) */
.techcrest-service-img{
  height: 100%;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-service-img::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: var(--techcrest-grad-soft);
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events:none;
}

.techcrest-service-img:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-service-img:hover::before{ opacity: 1; }

.techcrest-service-media{
  display:block;
  position: relative;
  overflow: hidden;
  background: rgba(15,23,42,.08);
  text-decoration: none;
}

.techcrest-service-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}

.techcrest-service-img:hover .techcrest-service-media img{
  transform: scale(1.08);
}

.techcrest-service-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.0), rgba(15,23,42,.52));
  opacity: .85;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-service-img:hover .techcrest-service-overlay{ opacity: .95; }

.techcrest-service-pill-on-media{
  position:absolute;
  left: 14px;
  bottom: 14px;
  z-index: 2;
  border-color: rgba(255,255,255,.18);
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
}

.techcrest-service-body{
  padding: 18px;
  transform: translateZ(10px);
}

.techcrest-service-foot{
  margin-top: 14px;
  transform: translateZ(10px);
}

/* TechCrest — Page Hero (Services) */
.techcrest-page-hero{
  padding: 88px 0 44px;
  background:
    radial-gradient(1000px 520px at 20% 0%, rgba(37,99,235,.14), transparent 60%),
    radial-gradient(900px 460px at 80% 10%, rgba(124,58,237,.10), transparent 60%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-bottom: 1px solid rgba(226,232,240,.85);
}

.techcrest-h1{
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.08;
  font-size: clamp(2rem, 3.2vw, 3.2rem);
}

.techcrest-breadcrumb{
  list-style: none;
  padding: 0;
  margin: 0;
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  color: var(--techcrest-muted);
  font-weight: 800;
}
.techcrest-breadcrumb a{
  color: var(--techcrest-primary-700);
  text-decoration: none;
}
.techcrest-breadcrumb a:hover{ text-decoration: underline; }
.techcrest-breadcrumb li + li::before{
  content: "•";
  margin-right: 10px;
  color: rgba(100,116,139,.7);
}

.techcrest-hero-card{
  position: relative;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  overflow: hidden;
  transform-style: preserve-3d;
}
.techcrest-hero-card-glow{
  position:absolute;
  inset:-30px;
  background: radial-gradient(400px 260px at 30% 20%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}
.techcrest-hero-checklist{
  margin: 0 0 12px;
  padding-left: 18px;
  color: var(--techcrest-text-2);
  font-weight: 700;
  display:grid;
  gap: 8px;
}

/* TechCrest — Process Steps */
.techcrest-process{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}
.techcrest-steps{
  display:grid;
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.08);
}
.techcrest-step{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

/* TechCrest — Service Details */
.techcrest-service-details{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-sd-media{
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-sd-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover;
  transform: scale(1.02);
}
.techcrest-sd-media-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.05), rgba(15,23,42,.45));
  pointer-events:none;
}

.techcrest-sd-card{
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.techcrest-sd-block{
  margin-top: 26px;
}

.techcrest-sd-item{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
.techcrest-sd-item-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Steps */
.techcrest-sd-steps{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.08);
}
.techcrest-sd-step{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
.techcrest-sd-step-kicker{
  color: var(--techcrest-primary-700);
  font-weight: 900;
}
.techcrest-sd-step-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Pricing cards */
.techcrest-sd-price{
  height: 100%;
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
.techcrest-sd-price-featured{
  border-color: rgba(37,99,235,.25);
  box-shadow: 0 22px 58px rgba(37,99,235,.12);
  background: rgba(255,255,255,.92);
}
.techcrest-sd-price-name{
  font-weight: 900;
  color: var(--techcrest-text);
}
.techcrest-sd-price-value{
  font-weight: 900;
  letter-spacing: -0.03em;
  font-size: 1.7rem;
}
.techcrest-sd-list{
  margin: 0 0 14px;
  padding-left: 18px;
  color: var(--techcrest-text-2);
  font-weight: 700;
  display:grid;
  gap: 8px;
}

/* Sticky sidebar */
.techcrest-sd-side{
  position: sticky;
  top: 92px;
}
.techcrest-sd-side-inner{
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-sd-side-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

.techcrest-sd-toc{
  list-style: none;
  padding: 0;
  margin: 0;
  display:grid;
  gap: 10px;
}
.techcrest-sd-toc a{
  text-decoration: none;
  color: var(--techcrest-text-2);
  font-weight: 800;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  display:block;
}
.techcrest-sd-toc a:hover{
  border-color: rgba(37,99,235,.22);
  color: var(--techcrest-primary-700);
}
.techcrest-sd-toc a.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
}

.techcrest-sd-side-box{
  border-radius: 18px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 14px 16px;
}

/* Responsive */
@media (max-width: 991.98px){
  .techcrest-sd-side{ position: static; top: auto; }
  .techcrest-sd-steps{ grid-template-columns: 1fr; }
}

/* TechCrest — Case study preview cards */
.techcrest-case{
  height: 100%;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
}

.techcrest-case:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

.techcrest-case-media{
  display:block;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  background: rgba(15,23,42,.08);
}

.techcrest-case-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-case:hover .techcrest-case-media img{
  transform: scale(1.08);
}

.techcrest-case-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.0), rgba(15,23,42,.58));
  opacity: .85;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-case:hover .techcrest-case-overlay{ opacity: .95; }

.techcrest-case-pill{
  position:absolute;
  left: 14px;
  bottom: 14px;
  z-index: 2;
  display:inline-flex;
  align-items:center;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  font-weight: 900;
  font-size: .82rem;
  backdrop-filter: blur(10px);
}

.techcrest-case-body{
  padding: 18px;
  transform: translateZ(10px);
}

.techcrest-case-meta{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items:center;
  color: var(--techcrest-muted);
  font-weight: 800;
  font-size: .92rem;
}

.techcrest-case-client{
  color: var(--techcrest-text);
  font-weight: 900;
}

.techcrest-case-dot{
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(100,116,139,.55);
}

.techcrest-case-title{
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.25;
  margin: 0;
}
.techcrest-case-title a{
  text-decoration: none;
  color: var(--techcrest-text);
}
.techcrest-case-title a:hover{
  color: var(--techcrest-primary-700);
}

.techcrest-case-foot{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
}

.techcrest-case-kpis{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

.techcrest-kpi{
  display:inline-flex;
  align-items:center;
  padding: .28rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  color: var(--techcrest-text-2);
  font-weight: 900;
  font-size: .82rem;
}

.techcrest-case-link{
  text-decoration:none;
  font-weight: 900;
  color: var(--techcrest-primary-700);
}
.techcrest-case-link:hover{ text-decoration: underline; }

/* TechCrest — Case Studies Page */
.techcrest-cases{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-cases-controls{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.techcrest-cases-filters{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}

.techcrest-chip{
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  border-radius: 999px;
  padding: .42rem .75rem;
  font-weight: 900;
  color: var(--techcrest-text-2);
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.techcrest-chip:hover{
  transform: translateY(-1px);
  border-color: rgba(37,99,235,.22);
}
.techcrest-chip.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
}

.techcrest-cases-search{
  min-width: min(420px, 100%);
}

/* Featured block */
.techcrest-case-featured{
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.techcrest-case-featured-media{
  position: relative;
  display:block;
  height: 100%;
  overflow:hidden;
  background: rgba(15,23,42,.08);
  text-decoration:none;
}

.techcrest-case-featured-media img{
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  display:block;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-case-featured:hover .techcrest-case-featured-media img{
  transform: scale(1.06);
}

.techcrest-case-featured-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.0), rgba(15,23,42,.55));
  pointer-events:none;
  opacity: .9;
}

.techcrest-case-featured-pill{
  position:absolute;
  left: 16px;
  top: 16px;
  display:inline-flex;
  padding: .35rem .7rem;
  border-radius: 999px;
  font-weight: 900;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
}

.techcrest-case-featured-body{
  padding: 18px;
}

/* TechCrest — Case Study Details */
.techcrest-case-details{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-csd-overview{
  position: relative;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  overflow: hidden;
  transform-style: preserve-3d;
}
.techcrest-csd-overview-glow{
  position:absolute;
  inset:-30px;
  background: radial-gradient(420px 260px at 30% 15%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}

.techcrest-csd-dl{ margin: 0; }
.techcrest-csd-dl-row{
  display:flex;
  align-items:baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px dashed rgba(226,232,240,.9);
}
.techcrest-csd-dl-row:last-child{ border-bottom: 0; }
.techcrest-csd-dl dt{
  color: var(--techcrest-muted);
  font-weight: 900;
}
.techcrest-csd-dl dd{
  margin: 0;
  color: var(--techcrest-text);
  font-weight: 900;
  text-align: right;
}

.techcrest-csd-kpis{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* Cover */
.techcrest-csd-media{
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-csd-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover;
  transform: scale(1.02);
}
.techcrest-csd-media-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.05), rgba(15,23,42,.45));
  pointer-events:none;
}

.techcrest-csd-card{
  padding: 18px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.techcrest-csd-block{ margin-top: 26px; }

/* Challenge grid */
.techcrest-csd-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.techcrest-csd-item{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
.techcrest-csd-item-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Solution steps */
.techcrest-csd-solution{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.08);
}
.techcrest-csd-solution-step{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
.techcrest-csd-step-kicker{
  color: var(--techcrest-primary-700);
  font-weight: 900;
}
.techcrest-csd-step-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Gallery */
.techcrest-csd-shot{
  margin: 0;
  overflow:hidden;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-csd-shot img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
}
.techcrest-csd-caption{
  padding: 12px 14px;
  color: var(--techcrest-text-2);
  font-weight: 800;
  border-top: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
}

/* Metrics */
.techcrest-csd-metric{
  height: 100%;
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
.techcrest-csd-metric-value{
  font-weight: 900;
  letter-spacing: -0.03em;
  font-size: 1.8rem;
}
.techcrest-csd-metric-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Quote */
.techcrest-csd-quote{
  margin: 0;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}
.techcrest-csd-quote blockquote{
  font-weight: 800;
  color: var(--techcrest-text);
  line-height: 1.7;
  letter-spacing: -0.01em;
}
.techcrest-csd-quote-by{
  display:flex;
  align-items:center;
  gap: 10px;
}
.techcrest-csd-avatar{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(37,99,235,.35), rgba(124,58,237,.22));
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.10);
}
.techcrest-csd-name{ display:block; font-weight: 900; }
.techcrest-csd-role{ display:block; color: var(--techcrest-muted); font-weight: 800; font-size: .92rem; }

/* CTA box */
.techcrest-csd-cta{
  position: relative;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(37,99,235,.06);
  overflow: hidden;
}
.techcrest-csd-cta-glow{
  position:absolute;
  inset:-30px;
  background: radial-gradient(420px 240px at 30% 20%, rgba(37,99,235,.18), transparent 60%);
  pointer-events:none;
}

/* Sticky sidebar TOC */
.techcrest-csd-side{
  position: sticky;
  top: 92px;
}
.techcrest-csd-side-inner{
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-csd-side-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

.techcrest-csd-toc{
  list-style: none;
  padding: 0;
  margin: 0;
  display:grid;
  gap: 10px;
}
.techcrest-csd-toc a{
  text-decoration: none;
  color: var(--techcrest-text-2);
  font-weight: 900;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  display:block;
}
.techcrest-csd-toc a:hover{
  border-color: rgba(37,99,235,.22);
  color: var(--techcrest-primary-700);
}
.techcrest-csd-toc a.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
}
.techcrest-csd-side-box{
  border-radius: 18px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 14px 16px;
}

@media (max-width: 991.98px){
  .techcrest-csd-side{ position: static; top: auto; }
  .techcrest-csd-grid{ grid-template-columns: 1fr; }
  .techcrest-csd-solution{ grid-template-columns: 1fr; }
}

/* TechCrest — Related Case Studies (bottom row) */
.techcrest-related-case{
  height: 100%;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.techcrest-related-case:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

.techcrest-related-media{
  display:block;
  position: relative;
  overflow: hidden;
  background: rgba(15,23,42,.08);
  text-decoration: none;
}

.techcrest-related-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-related-case:hover .techcrest-related-media img{
  transform: scale(1.08);
}

.techcrest-related-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.0), rgba(15,23,42,.58));
  opacity: .85;
  transition: opacity .2s ease;
  pointer-events:none;
}
.techcrest-related-case:hover .techcrest-related-overlay{ opacity: .95; }

.techcrest-related-pill{
  position:absolute;
  left: 14px;
  bottom: 14px;
  z-index: 2;
  display:inline-flex;
  align-items:center;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  font-weight: 900;
  font-size: .82rem;
  backdrop-filter: blur(10px);
}

.techcrest-related-body{
  padding: 18px;
  transform: translateZ(10px);
}

.techcrest-related-meta{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items:center;
  color: var(--techcrest-muted);
  font-weight: 800;
  font-size: .92rem;
}
.techcrest-related-client{
  color: var(--techcrest-text);
  font-weight: 900;
}
.techcrest-related-dot{
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(100,116,139,.55);
}

.techcrest-related-title{
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.25;
  margin: 0;
}
.techcrest-related-title a{
  text-decoration: none;
  color: var(--techcrest-text);
}
.techcrest-related-title a:hover{
  color: var(--techcrest-primary-700);
}

.techcrest-related-foot{
  margin-top: 14px;
}
.techcrest-related-kpis{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* TechCrest — About page */
.techcrest-about{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-about-media{
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-about-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/11;
  object-fit: cover;
  transform: scale(1.02);
}
.techcrest-about-media-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.04), rgba(15,23,42,.40));
  pointer-events:none;
}

.techcrest-about-card{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
}

.techcrest-about-points{
  display:grid;
  gap: 12px;
  margin-top: 14px;
}
.techcrest-about-point{
  padding: 14px 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.85);
}
.techcrest-about-point-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* MVV cards */
.techcrest-mvv{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-mvv-card{
  height: 100%;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow:hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-mvv-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-mvv-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
}
.techcrest-mvv-body{ padding: 18px; }

/* Timeline */
.techcrest-timeline{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}
.techcrest-timeline-wrap{
  display:grid;
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.08);
}
.techcrest-timeline-item{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

/* TechCrest — Contact page */
.techcrest-contact-quick{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}
.techcrest-contact-label{
  display:inline-block;
  min-width: 64px;
  font-weight: 900;
  color: var(--techcrest-muted);
}
.techcrest-contact-quick a{
  color: var(--techcrest-primary-700);
  text-decoration: none;
  font-weight: 900;
}
.techcrest-contact-quick a:hover{ text-decoration: underline; }

.techcrest-contact-support{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-support-card{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-support-card:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-support-icon{
  width: 48px;
  height: 48px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  margin-bottom: 12px;
}

.techcrest-contact-main{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-contact-card{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
}

.techcrest-consent{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
}

.techcrest-map{
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-map iframe{
  width: 100%;
  height: 340px;
  border: 0;
  display:block;
}

.techcrest-contact-info{
  display:grid;
  gap: 12px;
}
.techcrest-contact-info-row{
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
}
.techcrest-contact-info-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}
.techcrest-contact-info a{
  color: var(--techcrest-primary-700);
  font-weight: 900;
  text-decoration: none;
}
.techcrest-contact-info a:hover{ text-decoration: underline; }

.techcrest-form-alert{
  min-height: 0;
  padding: 0;
  border-radius: 18px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--techcrest-text);
  font-weight: 900;
}
.techcrest-form-alert.is-success{
  padding: 12px 14px;
  border-color: rgba(34,197,94,.25);
  background: rgba(34,197,94,.10);
}
.techcrest-form-alert.is-error{
  padding: 12px 14px;
  border-color: rgba(239,68,68,.25);
  background: rgba(239,68,68,.10);
}

/* TechCrest — Careers page */
.techcrest-careers-culture{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-careers-pill{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-careers-pill:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

/* Jobs */
.techcrest-jobs{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-jobs-controls{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.techcrest-jobs-filters{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}

.techcrest-jobs-search{
  min-width: min(420px, 100%);
}

.techcrest-jobs-list{
  display:grid;
  gap: 14px;
}

.techcrest-job{
  display:grid;
  grid-template-columns: 1.3fr 1fr auto;
  gap: 14px;
  align-items:center;
  padding: 16px 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  transform-style: preserve-3d;
}
.techcrest-job:hover{
  transform: translateY(-4px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  background: rgba(255,255,255,.92);
}

.techcrest-job-tags{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-start;
}

.techcrest-tag{
  display:inline-flex;
  align-items:center;
  padding: .28rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  color: var(--techcrest-text-2);
  font-weight: 900;
  font-size: .82rem;
}

.techcrest-job-actions{
  display:flex;
  gap: 10px;
  justify-content:flex-end;
  flex-wrap: wrap;
}

@media (max-width: 991.98px){
  .techcrest-job{
    grid-template-columns: 1fr;
    align-items: start;
  }
  .techcrest-job-actions{
    justify-content: flex-start;
  }
}

/* Benefits */
.techcrest-careers-benefits{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-benefit{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-benefit:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

/* Hiring steps */
.techcrest-hiring{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}
.techcrest-hiring-steps{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.90);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.08);
}
.techcrest-hiring-step{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}
@media (max-width: 991.98px){
  .techcrest-hiring-steps{ grid-template-columns: 1fr; }
}

/* TechCrest — Job Details page */
.techcrest-job-summary{
  position: relative;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  overflow: hidden;
  transform-style: preserve-3d;
}
.techcrest-job-summary-glow{
  position:absolute;
  inset:-30px;
  background: radial-gradient(420px 260px at 30% 15%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}

.techcrest-job-dl{ margin: 0; }
.techcrest-job-dl-row{
  display:flex;
  align-items:baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px dashed rgba(226,232,240,.9);
}
.techcrest-job-dl-row:last-child{ border-bottom: 0; }
.techcrest-job-dl dt{
  color: var(--techcrest-muted);
  font-weight: 900;
}
.techcrest-job-dl dd{
  margin: 0;
  color: var(--techcrest-text);
  font-weight: 900;
  text-align: right;
}

.techcrest-job-kpis{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

.techcrest-job-details{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-job-block{ margin-top: 26px; }

.techcrest-job-card{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.techcrest-job-list{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.techcrest-job-list-item{
  padding: 16px;
  border-radius: var(--techcrest-r-lg);
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.04);
}
.techcrest-job-list-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Sticky apply sidebar */
.techcrest-job-side{
  position: sticky;
  top: 92px;
}
.techcrest-job-side-inner{
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-job-side-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}
.techcrest-job-side-box{
  border-radius: 18px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 14px 16px;
}
.techcrest-hr{
  margin: 14px 0;
  border: 0;
  height: 1px;
  background: rgba(226,232,240,.95);
}

/* Small UL helpers */
.techcrest-ul{
  margin: 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 8px;
}
.techcrest-ul-sm{ gap: 6px; }
.techcrest-ul li{ color: var(--techcrest-text-2); font-weight: 700; }

/* Related roles cards */
.techcrest-related-job{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-related-job:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}
.techcrest-related-job-kicker{
  display:inline-flex;
  padding: .28rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  font-weight: 900;
  color: var(--techcrest-muted);
}
.techcrest-related-job-title{
  margin: 0;
  font-weight: 900;
  letter-spacing: -0.02em;
}
.techcrest-related-job-title a{
  color: var(--techcrest-text);
  text-decoration: none;
}
.techcrest-related-job-title a:hover{
  color: var(--techcrest-primary-700);
}

@media (max-width: 991.98px){
  .techcrest-job-side{ position: static; top: auto; }
  .techcrest-job-list{ grid-template-columns: 1fr; }
}

/* TechCrest — Apply page */
.techcrest-apply{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-apply-card{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.techcrest-apply-summary{
  position: relative;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  overflow: hidden;
  transform-style: preserve-3d;
}
.techcrest-apply-summary-glow{
  position:absolute;
  inset:-30px;
  background: radial-gradient(420px 260px at 30% 15%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}

/* Sticky sidebar */
.techcrest-apply-side{
  position: sticky;
  top: 92px;
}
.techcrest-apply-side-inner{
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-apply-side-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}
.techcrest-apply-side-box{
  border-radius: 18px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 14px 16px;
}

/* Steps */
.techcrest-apply-steps{
  margin: 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 12px;
}
.techcrest-apply-steps li{
  color: var(--techcrest-text-2);
}
.techcrest-apply-steps strong{
  display:block;
  font-weight: 900;
  color: var(--techcrest-text);
}
.techcrest-apply-steps span{
  display:block;
  color: var(--techcrest-muted);
  font-weight: 800;
  font-size: .95rem;
  margin-top: 2px;
}

/* Upload UI */
.techcrest-upload{
  position: relative;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  overflow: hidden;
}
.techcrest-upload-input{
  position:absolute;
  inset:0;
  opacity:0;
  width:100%;
  height:100%;
  cursor:pointer;
}
.techcrest-upload-drop{
  display:grid;
  place-items:center;
  text-align:center;
  gap: 6px;
  padding: 22px 16px;
  border-radius: 24px;
  cursor:pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-upload-ico{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display:grid;
  place-items:center;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
  font-weight: 900;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}
.techcrest-upload-title{
  font-weight: 900;
  letter-spacing: -0.02em;
  color: var(--techcrest-text);
}
.techcrest-upload-sub{
  color: var(--techcrest-muted);
  font-weight: 800;
  font-size: .95rem;
}

.techcrest-upload-meta{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-top: 1px dashed rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
}
.techcrest-upload-file{
  font-weight: 900;
  color: var(--techcrest-text-2);
  overflow:hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.techcrest-upload-clear{
  flex: 0 0 auto;
}

.techcrest-upload.is-dragover .techcrest-upload-drop{
  transform: translateY(-2px);
  background: rgba(37,99,235,.06);
}

.techcrest-upload.has-file{
  border-color: rgba(34,197,94,.25);
}
.techcrest-upload.has-file .techcrest-upload-ico{
  background: rgba(34,197,94,.10);
  color: rgba(34,197,94,1);
}

.techcrest-upload.is-invalid{
  border-color: rgba(239,68,68,.30);
}
.techcrest-upload-invalid{
  display:none;
  padding: 10px 14px 0;
  color: rgba(239,68,68,1);
  font-weight: 900;
}

/* Success block */
.techcrest-apply-success-inner{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(34,197,94,.25);
  background: rgba(34,197,94,.08);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}
.techcrest-apply-success-badge{
  width: 54px;
  height: 54px;
  border-radius: 22px;
  display:grid;
  place-items:center;
  border: 1px solid rgba(34,197,94,.25);
  background: rgba(255,255,255,.78);
  color: rgba(34,197,94,1);
  font-weight: 900;
  margin-bottom: 10px;
}

@media (max-width: 991.98px){
  .techcrest-apply-side{ position: static; top: auto; }
}

/* TechCrest — Blog page */
.techcrest-blog-featured{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-featured{
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  padding: 18px;
}

.techcrest-featured-media{
  display:block;
  position: relative;
  overflow:hidden;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  text-decoration:none;
}
.techcrest-featured-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-featured:hover .techcrest-featured-media img{ transform: scale(1.07); }

.techcrest-featured-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.02), rgba(15,23,42,.55));
  pointer-events:none;
}

.techcrest-featured-badge{
  position:absolute;
  left: 14px;
  bottom: 14px;
  display:inline-flex;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  font-weight: 900;
  backdrop-filter: blur(10px);
}

.techcrest-mini-pill{
  display:inline-flex;
  padding: .22rem .5rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  font-weight: 900;
  color: var(--techcrest-muted);
}
.techcrest-mini-dot{
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(100,116,139,.55);
  display:inline-block;
  vertical-align: middle;
  margin: 0 10px;
}

.techcrest-featured-title{
  text-decoration:none;
  color: var(--techcrest-text);
  font-weight: 900;
}
.techcrest-featured-title:hover{ color: var(--techcrest-primary-700); }

.techcrest-blog{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-blog-controls{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.techcrest-blog-filters{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.techcrest-blog-search{
  min-width: min(420px, 100%);
}

/* Post card */
.techcrest-post{
  height: 100%;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow:hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-post:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

.techcrest-post-media{
  display:block;
  position: relative;
  text-decoration:none;
  overflow:hidden;
  background: rgba(15,23,42,.06);
}
.techcrest-post-media img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-post:hover .techcrest-post-media img{ transform: scale(1.08); }

.techcrest-post-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.02), rgba(15,23,42,.55));
  pointer-events:none;
}

.techcrest-post-tag{
  position:absolute;
  left: 14px;
  bottom: 14px;
  display:inline-flex;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.55);
  color: rgba(255,255,255,.92);
  font-weight: 900;
  backdrop-filter: blur(10px);
}

.techcrest-post-body{
  padding: 18px;
  transform: translateZ(10px);
}
.techcrest-post-meta{
  color: var(--techcrest-muted);
  font-weight: 800;
}
.techcrest-post-title{
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.25;
}
.techcrest-post-title a{
  color: var(--techcrest-text);
  text-decoration:none;
}
.techcrest-post-title a:hover{ color: var(--techcrest-primary-700); }

/* Pagination */
.techcrest-pagination{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items:center;
}
.techcrest-page{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: .55rem .85rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  text-decoration:none;
  color: var(--techcrest-text);
  font-weight: 900;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-page:hover{
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}
.techcrest-page.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  color: var(--techcrest-primary-700);
}
.techcrest-page.is-disabled{
  opacity: .55;
  pointer-events: none;
}

/* Blog CTA */
.techcrest-blog-cta{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}
.techcrest-blog-cta-wrap{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
}
.techcrest-newsletter-lg .techcrest-news-input{
  min-height: 46px;
}
/* TechCrest — Blog details */
.techcrest-article-body{
  background: var(--techcrest-bg);
}

/* Article hero */
.techcrest-article-hero{
  padding: clamp(44px, 6vw, 74px) 0 22px;
  background: radial-gradient(900px 420px at 15% 15%, rgba(37,99,235,.14), transparent 62%),
              linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-bottom: 1px solid rgba(226,232,240,.8);
}
.techcrest-article-cover{
  margin: 0;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.10);
}
.techcrest-article-cover img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio: 16/12;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-article-cover:hover img{ transform: scale(1.06); }

.techcrest-article-breadcrumb{
  margin-top: 18px;
}

.techcrest-article-meta{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.techcrest-article-author{
  display:flex;
  align-items:center;
  gap: 12px;
}
.techcrest-article-author img{
  width: 56px;
  height: 56px;
  border-radius: 18px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.10);
}

/* Article layout */
.techcrest-article{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
}
.techcrest-article-card{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
}
.techcrest-article-figure{
  margin: 16px 0;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-article-figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit: cover;
}
.techcrest-article-figure figcaption{
  padding: 10px 14px;
  background: rgba(255,255,255,.78);
  border-top: 1px dashed rgba(226,232,240,.95);
}

.techcrest-callout{
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
}

.techcrest-mini-card{
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.04);
}

.techcrest-ol{
  margin: 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 10px;
}
.techcrest-ol li{
  color: var(--techcrest-text-2);
  font-weight: 800;
}
.techcrest-ol strong{
  color: var(--techcrest-text);
}

/* Share buttons */
.techcrest-article-share{
  display:flex;
  gap: 10px;
}
.techcrest-share-btn{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  font-weight: 900;
  color: var(--techcrest-text);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-share-btn:hover{
  transform: translateY(-3px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}

/* Bottom share row */
.techcrest-article-bottom{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px dashed rgba(226,232,240,.95);
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

/* Sticky TOC */
.techcrest-toc{
  position: sticky;
  top: 92px;
}
.techcrest-toc-inner{
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-toc-title{
  font-weight: 900;
  letter-spacing: -0.02em;
}
.techcrest-toc-list{
  list-style: none;
  margin: 0;
  padding: 0;
  display:grid;
  gap: 10px;
}
.techcrest-toc-list a{
  display:flex;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  text-decoration: none;
  color: var(--techcrest-text-2);
  font-weight: 900;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-toc-list a:hover{
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}
.techcrest-toc-list a.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  color: var(--techcrest-primary-700);
}

.techcrest-toc-box{
  border-radius: 18px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 14px 16px;
}

.techcrest-related-posts{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-top: 1px solid rgba(226,232,240,.8);
}

/* Toast */
.techcrest-toast{
  position: fixed;
  left: 50%;
  bottom: 22px;
  transform: translateX(-50%) translateY(14px);
  opacity: 0;
  pointer-events: none;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.90);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.12);
  font-weight: 900;
  color: var(--techcrest-text);
  transition: opacity .2s ease, transform .2s ease;
  z-index: 9999;
}
.techcrest-toast.is-show{
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

@media (max-width: 991.98px){
  .techcrest-toc{ position: static; top: auto; }
}
/* TechCrest — Team page */
.techcrest-team{
  background: linear-gradient(180deg, var(--techcrest-surface), var(--techcrest-bg));
  border-top: 1px solid rgba(226,232,240,.8);
}

.techcrest-team-controls{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.techcrest-team-filters{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.techcrest-team-search{
  min-width: min(420px, 100%);
}

/* Member card */
.techcrest-member{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-member:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12);
  background: rgba(255,255,255,.92);
}

.techcrest-member-top{
  position: relative;
  display:flex;
  justify-content:center;
  margin-bottom: 14px;
}
.techcrest-member-avatar{
  width: 110px;
  height: 110px;
  border-radius: 42px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.12);
  transform: translateZ(18px);
}
.techcrest-member-ring{
  position:absolute;
  inset:auto;
  width: 140px;
  height: 140px;
  border-radius: 52px;
  border: 1px dashed rgba(37,99,235,.28);
  transform: translateZ(6px);
  pointer-events:none;
  opacity: .7;
}

.techcrest-member-body{
  text-align:center;
  transform: translateZ(12px);
}
.techcrest-member-kicker{
  display:inline-flex;
  padding: .28rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  font-weight: 900;
  color: var(--techcrest-muted);
}
.techcrest-member-name{
  font-weight: 900;
  letter-spacing: -0.02em;
}

/* Social icons */
.techcrest-member-social{
  display:flex;
  justify-content:center;
  gap: 10px;
  margin-top: 10px;
}
.techcrest-social-ico{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  display:grid;
  place-items:center;
  color: var(--techcrest-text);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
  text-decoration:none;
}
.techcrest-social-ico:hover{
  transform: translateY(-3px);
  border-color: rgba(37,99,235,.22);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
}

/* Minor helpers (if not already present) */
.techcrest-hr{
  border: 0;
  height: 1px;
  background: rgba(226,232,240,.95);
}

@media (max-width: 575.98px){
  .techcrest-member-avatar{ width: 96px; height: 96px; border-radius: 36px; }
  .techcrest-member-ring{ width: 124px; height: 124px; border-radius: 46px; }
}

/* TechCrest — Auth pages */
.techcrest-auth-body{
  background: radial-gradient(900px 520px at 20% 10%, rgba(37,99,235,.16), transparent 60%),
              radial-gradient(900px 520px at 90% 30%, rgba(37,99,235,.10), transparent 65%),
              linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
}

.techcrest-auth{
  padding: clamp(44px, 6vw, 74px) 0;
}

.techcrest-auth-wrap{
  position: relative;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
}

.techcrest-auth-glow{
  position:absolute;
  inset:-60px;
  pointer-events:none;
}
.techcrest-auth-glow-1{
  background: radial-gradient(520px 320px at 20% 15%, rgba(37,99,235,.16), transparent 60%);
}
.techcrest-auth-glow-2{
  background: radial-gradient(520px 320px at 85% 30%, rgba(37,99,235,.12), transparent 60%);
}

.techcrest-auth-aside{
  background: linear-gradient(180deg, rgba(15,23,42,.92), rgba(15,23,42,.82));
  color: rgba(255,255,255,.92);
}
.techcrest-auth-aside-inner{
  padding: 22px;
  min-height: 100%;
}

.techcrest-auth-title{
  font-weight: 900;
  letter-spacing: -0.03em;
  color: rgba(255,255,255,.96);
}
.techcrest-auth-lead{
  color: rgba(255,255,255,.78);
  font-weight: 800;
}

.techcrest-auth-check{
  margin: 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 10px;
}
.techcrest-auth-check li{
  color: rgba(255,255,255,.78);
  font-weight: 800;
}

.techcrest-auth-brandrow{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 18px;
}
.techcrest-auth-brand{
  display:inline-flex;
  padding: .28rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.82);
  font-weight: 900;
  backdrop-filter: blur(10px);
}

.techcrest-auth-main{
  background: transparent;
}
.techcrest-auth-main-inner{
  padding: 22px;
}

.techcrest-passfield{
  position: relative;
}
.techcrest-passbtn{
  position:absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  display:grid;
  place-items:center;
  color: var(--techcrest-text);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-passbtn:hover{
  transform: translateY(-50%) translateY(-2px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}
.techcrest-passbtn.is-on{
  border-color: rgba(37,99,235,.22);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
}

.techcrest-btn-ico{
  display:inline-flex;
  margin-right: 8px;
  vertical-align: middle;
}

/* Password meter */
.techcrest-passmeter{
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
}
.techcrest-passbar{
  height: 8px;
  border-radius: 999px;
  width: 0%;
  background: rgba(37,99,235,.65);
  flex: 1 1 auto;
}
.techcrest-passlabel{
  flex: 0 0 auto;
  font-weight: 900;
  color: var(--techcrest-muted);
}
.techcrest-passmeter.is-weak .techcrest-passbar{ background: rgba(239,68,68,.75); }
.techcrest-passmeter.is-good .techcrest-passbar{ background: rgba(245,158,11,.75); }
.techcrest-passmeter.is-strong .techcrest-passbar{ background: rgba(34,197,94,.75); }

/* Success block */
.techcrest-auth-success-inner{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(34,197,94,.25);
  background: rgba(34,197,94,.08);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}
.techcrest-auth-success-badge{
  width: 54px;
  height: 54px;
  border-radius: 22px;
  display:grid;
  place-items:center;
  border: 1px solid rgba(34,197,94,.25);
  background: rgba(255,255,255,.78);
  color: rgba(34,197,94,1);
  font-weight: 900;
  margin-bottom: 10px;
}

@media (max-width: 991.98px){
  .techcrest-auth-aside{ border-bottom: 1px solid rgba(255,255,255,.10); }
}

/* TechCrest — Error pages */
.techcrest-error-body{
  background: radial-gradient(900px 520px at 20% 10%, rgba(37,99,235,.16), transparent 60%),
              radial-gradient(900px 520px at 90% 30%, rgba(37,99,235,.10), transparent 65%),
              linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
}

.techcrest-error{
  padding: clamp(44px, 6vw, 74px) 0;
}

.techcrest-error-wrap{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
}

.techcrest-error-glow{
  position:absolute;
  inset:-60px;
  pointer-events:none;
}
.techcrest-error-glow-1{
  background: radial-gradient(520px 320px at 20% 15%, rgba(37,99,235,.16), transparent 60%);
}
.techcrest-error-glow-2{
  background: radial-gradient(520px 320px at 85% 30%, rgba(37,99,235,.12), transparent 60%);
}

/* Animated grid */
.techcrest-error-grid{
  position:absolute;
  inset:-2px;
  background:
    linear-gradient(to right, rgba(37,99,235,.08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(37,99,235,.08) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: radial-gradient(220px 220px at 25% 20%, rgba(0,0,0,.9), transparent 65%),
              radial-gradient(260px 260px at 80% 35%, rgba(0,0,0,.75), transparent 70%),
              linear-gradient(180deg, rgba(0,0,0,.6), rgba(0,0,0,.25));
  opacity: .55;
  animation: techcrestGridFloat 10s ease-in-out infinite;
}
@keyframes techcrestGridFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%{ transform: translate3d(0,-10px,0); }
}

.techcrest-error-badge{
  width: 54px;
  height: 54px;
  border-radius: 22px;
  display:grid;
  place-items:center;
  border: 1px solid rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  color: var(--techcrest-primary-700);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  margin-bottom: 12px;
}

.techcrest-error-code{
  font-size: clamp(64px, 8vw, 96px);
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -0.04em;
  color: rgba(15,23,42,.88);
}

.techcrest-error-actions{
  position: relative;
  z-index: 1;
}

.techcrest-error-search{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}
.techcrest-error-search .techcrest-input{
  flex: 1 1 260px;
}

/* TechCrest — Blog list view */
.techcrest-blog-body{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
}

.techcrest-blog-toolbar{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.techcrest-blog-search{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  flex: 1 1 520px;
}
.techcrest-blog-search .techcrest-input{
  flex: 1 1 260px;
}
.techcrest-blog-view{
  display:flex;
  gap: 10px;
  align-items:center;
}
.techcrest-view-btn{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  color: var(--techcrest-text);
  text-decoration:none;
  font-weight: 900;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-view-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}
.techcrest-view-btn.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  color: var(--techcrest-primary-700);
}
.techcrest-view-ico{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  display:grid;
  place-items:center;
}

/* List items */
.techcrest-blogitem{
  display:grid;
  grid-template-columns: 280px 1fr;
  gap: 16px;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  transform-style: preserve-3d;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-blogitem:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}

.techcrest-blogitem-media{
  position: relative;
  display:block;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
  transform: translateZ(10px);
}
.techcrest-blogitem-media img{
  display:block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 16/11;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-blogitem:hover .techcrest-blogitem-media img{
  transform: scale(1.07);
}
.techcrest-blogitem-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, transparent 30%, rgba(15,23,42,.55));
  opacity: .9;
  pointer-events:none;
}
.techcrest-blogitem-pill{
  position:absolute;
  left: 12px;
  top: 12px;
  padding: .28rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.12);
  color: rgba(255,255,255,.92);
  font-weight: 900;
  backdrop-filter: blur(10px);
}

.techcrest-blogitem-body{
  display:flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  transform: translateZ(6px);
}
.techcrest-blogitem-title{
  font-weight: 1000;
  letter-spacing: -0.03em;
  line-height: 1.2;
}
.techcrest-blogitem-title a{
  color: var(--techcrest-text);
  text-decoration: none;
}
.techcrest-blogitem-title a:hover{
  color: var(--techcrest-primary-700);
}

.techcrest-blogitem-foot{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 6px;
}

/* Tags */
.techcrest-blogitem-tags{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}
.techcrest-tag{
  display:inline-flex;
  padding: .26rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  color: var(--techcrest-muted);
  font-weight: 900;
}

/* Sidebar */
.techcrest-blogside{
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-sidechips{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.techcrest-poplist{
  display:grid;
  gap: 12px;
}
.techcrest-popitem{
  display:flex;
  gap: 12px;
  align-items:center;
  text-decoration:none;
  padding: 10px;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-popitem:hover{
  transform: translateY(-3px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}
.techcrest-popitem img{
  width: 64px;
  height: 54px;
  border-radius: 16px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
}

.techcrest-sidecta{
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
}

/* Pagination */
.techcrest-pagination{
  display:flex;
  gap: 10px;
  align-items:center;
  flex-wrap: wrap;
}
.techcrest-page{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  display:grid;
  place-items:center;
  text-decoration:none;
  font-weight: 1000;
  color: var(--techcrest-text);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-page:hover{
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}
.techcrest-page.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  color: var(--techcrest-primary-700);
}
.techcrest-page.is-dots{
  box-shadow: none;
  background: transparent;
  border-color: transparent;
  width: auto;
  padding: 0 6px;
}

@media (max-width: 991.98px){
  .techcrest-blogitem{ grid-template-columns: 1fr; }
  .techcrest-blogitem-media img{ aspect-ratio: 16/9; height: auto; }
}

/* TechCrest — About v2 */
.techcrest-aboutv2-body{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
}

/* Hero */
.techcrest-aboutv2-hero{
  padding: clamp(52px, 7vw, 86px) 0;
  background:
    radial-gradient(900px 520px at 20% 10%, rgba(37,99,235,.16), transparent 60%),
    radial-gradient(900px 520px at 85% 25%, rgba(37,99,235,.10), transparent 65%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-bottom: 1px solid rgba(226,232,240,.8);
}

.techcrest-aboutv2-collage{
  position: relative;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
  padding: 14px;
}
.techcrest-aboutv2-collage-glow{
  position:absolute;
  inset:-60px;
  background: radial-gradient(520px 320px at 30% 15%, rgba(37,99,235,.14), transparent 60%);
  pointer-events:none;
}
.techcrest-aboutv2-collage-grid{
  display:grid;
  grid-template-columns: 1.2fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
}
.techcrest-aboutv2-shot{
  margin: 0;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}
.techcrest-aboutv2-shot img{
  display:block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.techcrest-aboutv2-shot-1{ grid-row: 1 / span 2; }
.techcrest-aboutv2-shot-2 img{ aspect-ratio: 16/10; }
.techcrest-aboutv2-shot-3 img{ aspect-ratio: 16/10; }

.techcrest-aboutv2-collage-badge{
  margin-top: 12px;
  border-radius: 22px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
  padding: 12px 14px;
}

/* Principle cards */
.techcrest-aboutv2-card{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-aboutv2-card:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-aboutv2-ico{
  width: 48px;
  height: 48px;
  border-radius: 18px;
  border: 1px solid rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  display:grid;
  place-items:center;
  color: var(--techcrest-primary-700);
  margin-bottom: 10px;
}

/* Numbers strip (dark) */
.techcrest-aboutv2-numbers-wrap{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(15,23,42,.88));
  border: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.18);
}
.techcrest-aboutv2-numbers-glow{
  position:absolute;
  inset:-60px;
  background:
    radial-gradient(520px 320px at 25% 15%, rgba(37,99,235,.26), transparent 60%),
    radial-gradient(520px 320px at 80% 35%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}
.techcrest-aboutv2-numbers-title{
  color: rgba(255,255,255,.94);
  font-weight: 1000;
  letter-spacing: -0.03em;
}
.techcrest-aboutv2-num{
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
}
.techcrest-aboutv2-num-big{
  font-weight: 1000;
  font-size: 34px;
  letter-spacing: -0.03em;
  color: rgba(255,255,255,.92);
}
.techcrest-aboutv2-num-label{
  color: rgba(255,255,255,.72);
  font-weight: 900;
}
.techcrest-aboutv2-numbers-mini{
  color: rgba(255,255,255,.62);
}

/* Timeline */
.techcrest-timeline{
  display:grid;
  gap: 14px;
}
.techcrest-tl-item{
  display:grid;
  grid-template-columns: 22px 1fr;
  gap: 12px;
  align-items:start;
}
.techcrest-tl-dot{
  width: 14px;
  height: 14px;
  border-radius: 999px;
  margin-top: 16px;
  background: rgba(37,99,235,.75);
  box-shadow: 0 0 0 6px rgba(37,99,235,.10);
}
.techcrest-tl-card{
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}
.techcrest-tl-year{
  display:inline-flex;
  padding: .26rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  color: var(--techcrest-muted);
  font-weight: 1000;
}

/* Quote */
.techcrest-aboutv2-quote-wrap{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(15,23,42,.88));
  border: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.18);
}
.techcrest-aboutv2-quote-glow{
  position:absolute;
  inset:-60px;
  background: radial-gradient(520px 320px at 30% 20%, rgba(37,99,235,.24), transparent 60%);
  pointer-events:none;
}
.techcrest-aboutv2-quote-title{
  color: rgba(255,255,255,.94);
  font-weight: 1000;
  letter-spacing: -0.03em;
  line-height: 1.2;
}
.techcrest-aboutv2-quote-person{
  display:flex;
  align-items:center;
  gap: 12px;
}
.techcrest-aboutv2-quote-person img{
  width: 54px;
  height: 54px;
  border-radius: 22px;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
}
.techcrest-aboutv2-quote-person p{
  color: rgba(255,255,255,.86);
}
.techcrest-aboutv2-quote-person .techcrest-text-muted{
  color: rgba(255,255,255,.62) !important;
}

/* TechCrest — About v3 */
.techcrest-aboutv3-body{
  background: linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
}

/* Hero */
.techcrest-aboutv3-hero{
  padding: clamp(52px, 7vw, 86px) 0;
  background:
    radial-gradient(900px 520px at 20% 10%, rgba(37,99,235,.16), transparent 60%),
    radial-gradient(900px 520px at 85% 25%, rgba(37,99,235,.10), transparent 65%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-bottom: 1px solid rgba(226,232,240,.8);
}

.techcrest-aboutv3-hero-card{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
}
.techcrest-aboutv3-hero-glow{
  position:absolute;
  inset:-60px;
  background: radial-gradient(520px 320px at 30% 15%, rgba(37,99,235,.14), transparent 60%);
  pointer-events:none;
}
.techcrest-aboutv3-hero-list{
  margin: 0 0 12px 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 8px;
}
.techcrest-aboutv3-hero-logos{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Standards */
.techcrest-aboutv3-standard{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-aboutv3-standard:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-aboutv3-ico{
  width: 48px;
  height: 48px;
  border-radius: 18px;
  border: 1px solid rgba(37,99,235,.25);
  background: rgba(37,99,235,.10);
  display:grid;
  place-items:center;
  color: var(--techcrest-primary-700);
  margin-bottom: 10px;
}
.techcrest-aboutv3-certbar{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.techcrest-aboutv3-cert{
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px dashed rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
}

/* Process (dark strip) */
.techcrest-aboutv3-process-wrap{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(15,23,42,.88));
  border: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.18);
}
.techcrest-aboutv3-process-glow{
  position:absolute;
  inset:-60px;
  background:
    radial-gradient(520px 320px at 25% 15%, rgba(37,99,235,.26), transparent 60%),
    radial-gradient(520px 320px at 80% 35%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}
.techcrest-aboutv3-process-title{
  color: rgba(255,255,255,.94);
  font-weight: 1000;
  letter-spacing: -0.03em;
}
.techcrest-aboutv3-step{
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  height: 100%;
}
.techcrest-aboutv3-stepnum{
  font-weight: 1000;
  letter-spacing: -0.04em;
  color: rgba(255,255,255,.68);
}
.techcrest-aboutv3-step h3{
  color: rgba(255,255,255,.92);
}
.techcrest-aboutv3-steptext{
  color: rgba(255,255,255,.72);
  font-weight: 800;
}
.techcrest-aboutv3-process-mini{
  color: rgba(255,255,255,.62);
}

/* Leadership */
.techcrest-aboutv3-leader{
  height: 100%;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
  text-align: center;
}
.techcrest-aboutv3-leader:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-aboutv3-leaderimg{
  width: 96px;
  height: 96px;
  border-radius: 38px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.12);
  margin-bottom: 10px;
}

/* Culture video */
.techcrest-aboutv3-video{
  position: relative;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  overflow: hidden;
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  background: rgba(15,23,42,.06);
}
.techcrest-aboutv3-video img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
}
.techcrest-aboutv3-play{
  position:absolute;
  left: 16px;
  bottom: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.12);
  color: rgba(255,255,255,.92);
  border-radius: 999px;
  padding: 10px 12px;
  display:inline-flex;
  gap: 10px;
  align-items:center;
  font-weight: 900;
  backdrop-filter: blur(12px);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.techcrest-aboutv3-play:hover{
  transform: translateY(-3px);
  border-color: rgba(37,99,235,.28);
  background: rgba(37,99,235,.18);
}
.techcrest-aboutv3-playico{
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(15,23,42,.35);
  display:grid;
  place-items:center;
}
.techcrest-aboutv3-playtext{
  padding-right: 6px;
}

/* Modal (optional styling) */
.techcrest-modal{
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.96);
}

/* Culture pills */
.techcrest-aboutv3-pill{
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}

/* Gallery */
.techcrest-aboutv3-shot{
  margin: 0;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  overflow: hidden;
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}
.techcrest-aboutv3-shot img{
  display:block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.techcrest-aboutv3-shot-lg img{
  aspect-ratio: 16/11;
}

@media (max-width: 991.98px){
  .techcrest-aboutv3-certbar{ grid-template-columns: 1fr; }
}

/* TechCrest — Home v2 */
.techcrest-home2-hero{
  padding: clamp(54px, 7vw, 92px) 0;
  background:
    radial-gradient(900px 520px at 20% 10%, rgba(37,99,235,.16), transparent 60%),
    radial-gradient(900px 520px at 85% 25%, rgba(37,99,235,.10), transparent 65%),
    linear-gradient(180deg, var(--techcrest-bg), var(--techcrest-surface));
  border-bottom: 1px solid rgba(226,232,240,.8);
}

.techcrest-home2-chips{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}
.techcrest-home2-chip{
  display:inline-flex;
  align-items: baseline;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}
.techcrest-home2-chipbig{ font-weight: 1000; letter-spacing: -0.03em; }
.techcrest-home2-chipsub{ color: var(--techcrest-muted); font-weight: 900; }

.techcrest-home2-trust{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}
.techcrest-home2-brand{
  display:inline-flex;
  padding: .28rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  color: var(--techcrest-muted);
  font-weight: 1000;
}

/* Hero card mock */
.techcrest-home2-heroCard{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
}
.techcrest-home2-heroGlow{
  position:absolute;
  inset:-60px;
  background: radial-gradient(520px 320px at 30% 15%, rgba(37,99,235,.14), transparent 60%);
  pointer-events:none;
}
.techcrest-home2-mock{
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  overflow:hidden;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}
.techcrest-home2-mockTop{
  display:flex;
  gap: 6px;
  padding: 12px;
  border-bottom: 1px solid rgba(226,232,240,.95);
}
.techcrest-home2-mockTop span{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(15,23,42,.18);
}
.techcrest-home2-mockBody{ padding: 12px; }
.techcrest-home2-mockRow{ display:grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.techcrest-home2-mockKpi{
  padding: 10px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
}
.techcrest-home2-mockChart{
  margin-top: 10px;
  height: 110px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background:
    radial-gradient(220px 120px at 30% 40%, rgba(37,99,235,.14), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.06), rgba(15,23,42,.03));
}
.techcrest-home2-mockList{
  margin-top: 10px;
  display:grid;
  gap: 8px;
}
.techcrest-home2-mockList span{
  height: 10px;
  border-radius: 999px;
  background: rgba(15,23,42,.10);
}
/* TechCrest Home v2 — About (elegant, image collage) */
.techcrest-home2-about{ position: relative; }

.techcrest-home2-aboutMedia{
  position: relative;
  margin: 0;
  border-radius: 34px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
  padding: 14px;
}

.techcrest-home2-aboutGlow{
  position:absolute;
  inset:-70px;
  background:
    radial-gradient(560px 340px at 25% 15%, rgba(37,99,235,.16), transparent 60%),
    radial-gradient(560px 340px at 78% 45%, rgba(37,99,235,.10), transparent 60%);
  pointer-events:none;
}

.techcrest-home2-aboutGrid{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
  border-radius: 26px;
  overflow:hidden;
}

.techcrest-home2-aboutImg{
  width:100%;
  height:100%;
  display:block;
  object-fit: cover;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  transform: scale(1.02);
}

.techcrest-home2-aboutImg--a{ grid-column: 1 / 2; grid-row: 1 / 3; aspect-ratio: 4/5; }
.techcrest-home2-aboutImg--b{ grid-column: 2 / 3; grid-row: 1 / 2; aspect-ratio: 4/3; }
.techcrest-home2-aboutImg--c{ grid-column: 2 / 3; grid-row: 2 / 3; aspect-ratio: 4/3; }

.techcrest-home2-aboutCard{
  position:absolute;
  left: 18px;
  bottom: 18px;
  max-width: 320px;
  padding: 12px 14px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.14);
  backdrop-filter: blur(14px);
  box-shadow: 0 22px 60px rgba(0,0,0,.18);
  color: rgba(255,255,255,.96);
}

.techcrest-home2-aboutCardTitle{
  font-weight: 1000;
  letter-spacing: -0.02em;
}

.techcrest-home2-aboutCardText{
  color: rgba(255,255,255,.82);
  font-weight: 800;
}

.techcrest-home2-aboutBadge{
  position:absolute;
  top: 18px;
  right: 18px;
  padding: 10px 12px;
  border-radius: 22px;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(37,99,235,.10);
  backdrop-filter: blur(12px);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.16);
  display:grid;
  gap: 2px;
  text-align: center;
}
.techcrest-home2-aboutBadgeTop{
  font-weight: 1000;
  letter-spacing: -0.03em;
  font-size: 22px;
  color: var(--techcrest-primary-700);
}
.techcrest-home2-aboutBadgeSub{
  font-weight: 900;
  color: var(--techcrest-muted);
  font-size: 12px;
}

.techcrest-home2-aboutPoints{
  display:grid;
  gap: 12px;
}
.techcrest-home2-aboutPoint{
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
}

.techcrest-home2-aboutMini{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.techcrest-home2-aboutMiniItem{
  padding: 12px 14px;
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}
.techcrest-home2-aboutMiniBig{
  font-weight: 1000;
  letter-spacing: -0.03em;
  font-size: 22px;
}
.techcrest-home2-aboutMiniSub{
  color: var(--techcrest-muted);
  font-weight: 900;
  font-size: 12px;
}

@media (max-width: 991.98px){
  .techcrest-home2-aboutCard{ position: static; margin-top: 12px; max-width: none; color: var(--techcrest-text); background: rgba(255,255,255,.78); border-color: rgba(226,232,240,.95); backdrop-filter: none; }
  .techcrest-home2-aboutCardText{ color: var(--techcrest-muted); }
}

/* TechCrest Home v2 — Recent Projects (featured + hover reveal) */
.techcrest-home2-projCard{
  position: relative;
  display:block;
  height: 100%;
  min-height: 340px;
  border-radius: 32px;
  overflow:hidden;
  border: 1px solid rgba(226,232,240,.95);
  background-color: rgba(15,23,42,.06);
  background-image: var(--techcrest-proj-bg);
  background-size: cover;
  background-position: center;
  box-shadow: 0 22px 70px rgba(15, 23, 42, 0.12);
  transform: translateZ(0);
  text-decoration: none;
}

.techcrest-home2-projCard--featured{
  min-height: 360px;
}

.techcrest-home2-projShade{
  position:absolute; inset:0;
  background:
    radial-gradient(620px 320px at 30% 15%, rgba(37,99,235,.18), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.10) 10%, rgba(15,23,42,.74));
}

.techcrest-home2-projTop{
  position:absolute;
  top: 14px;
  left: 14px;
  right: 14px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  z-index: 2;
}

.techcrest-home2-projTag{
  display:inline-flex;
  padding: .3rem .7rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.92);
  font-weight: 1000;
  backdrop-filter: blur(12px);
}

.techcrest-home2-projMeta{
  color: rgba(255,255,255,.80);
  font-weight: 900;
  font-size: 12px;
}

.techcrest-home2-projBottom{
  position:absolute;
  left: 14px;
  right: 58px; /* leave room for arrow */
  bottom: 14px;
  z-index: 2;
  display:grid;
  gap: 6px;
}

.techcrest-home2-projTitle{
  color: rgba(255,255,255,.98);
  font-weight: 1000;
  letter-spacing: -0.02em;
}

.techcrest-home2-projText{
  color: rgba(255,255,255,.82);
  font-weight: 800;
  max-width: 60ch;
}

/* Hover reveal bar */
.techcrest-home2-projReveal{
  position:absolute;
  left: 12px;
  right: 12px;
  bottom: 12px;
  z-index: 3;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(14px);
  padding: 7px 14px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  transform: translateY(120%);
  opacity: 0;
  transition: transform .22s ease, opacity .22s ease, background .22s ease, border-color .22s ease;
}

.techcrest-home2-projRevealText{
  color: rgba(255,255,255,.92);
  font-weight: 1000;
  letter-spacing: -0.01em;
}

.techcrest-home2-projRevealArrow{
  width: 40px;
  height: 40px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.92);
  display:grid;
  place-items:center;
  font-weight: 1000;
}

.techcrest-home2-projCard{
  transform: translateZ(0);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  will-change: transform;
}
.techcrest-home2-projCard:hover{
  transform: scale(1.015);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.16);
}
.techcrest-home2-projCard:hover .techcrest-home2-projReveal{
  transform: translateY(0);
  opacity: 1;
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.26);
}

/* Extra premium hover feel */
.techcrest-home2-projCard::after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(37,99,235,.00);
  transition: background .22s ease;
}
.techcrest-home2-projCard:hover::after{
  background: rgba(37,99,235,.12);
}

/* Make room for reveal on hover by shifting bottom text slightly */
.techcrest-home2-projCard:hover .techcrest-home2-projBottom{
  bottom: 72px;
  transition: bottom .22s ease;
}

/* Problem panels */
.techcrest-home2-panel{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}
.techcrest-home2-panelAccent{
  border-color: rgba(37,99,235,.22);
  background: rgba(37,99,235,.06);
}
.techcrest-home2-list{
  margin: 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 10px;
}

/* Services */
.techcrest-home2-service{
  height: 100%;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-home2-service:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-home2-serviceMedia{
  position: relative;
  display:block;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
  margin-bottom: 12px;
}
.techcrest-home2-serviceMedia img{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}
.techcrest-home2-service:hover .techcrest-home2-serviceMedia img{ transform: scale(1.07); }
.techcrest-home2-serviceOverlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, transparent 25%, rgba(15,23,42,.45));
  opacity: .9;
  pointer-events:none;
}
.techcrest-home2-linkTitle{ color: var(--techcrest-text); text-decoration:none; }
.techcrest-home2-linkTitle:hover{ color: var(--techcrest-primary-700); }

/* Product Tour */
.techcrest-home2-tourSticky{
  position: sticky;
  top: 92px; /* adjust based on your header height */
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}
.techcrest-home2-tourProgress{
  position: relative;
  display:grid;
  gap: 12px;
  padding-left: 6px;
  margin-top: 10px;
}
.techcrest-home2-tourLine{
  position:absolute;
  left: 12px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: rgba(15,23,42,.10);
}
.techcrest-home2-tourDot{
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: rgba(15,23,42,.20);
  box-shadow: 0 0 0 6px rgba(37,99,235,.00);
}
.techcrest-home2-tourDot.is-active{
  background: rgba(37,99,235,.80);
  box-shadow: 0 0 0 6px rgba(37,99,235,.10);
}
.techcrest-home2-tourStage{
  position: relative;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
  padding: 14px;
}
.techcrest-home2-tourStageGlow{
  position:absolute;
  inset:-60px;
  background: radial-gradient(520px 320px at 30% 15%, rgba(37,99,235,.14), transparent 60%);
  pointer-events:none;
}
.techcrest-home2-tourVisual{
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background:
    radial-gradient(360px 180px at 25% 30%, rgba(37,99,235,.16), transparent 60%),
    linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.70));
  overflow:hidden;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}
.techcrest-home2-tourVisualTop{
  display:flex;
  gap: 6px;
  padding: 12px;
  border-bottom: 1px solid rgba(226,232,240,.95);
}
.techcrest-home2-tourVisualTop span{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(15,23,42,.18);
}
.techcrest-home2-tourVisualBody{ padding: 14px; }
.techcrest-home2-tourVisualTag{
  display:inline-flex;
  padding: .26rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
  font-weight: 1000;
}
.techcrest-home2-tourVisualMock{
  height: 140px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background:
    radial-gradient(220px 120px at 35% 40%, rgba(37,99,235,.14), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.06), rgba(15,23,42,.03));
  margin-top: 10px;
}
.techcrest-home2-tourVisualRows{
  margin-top: 10px;
  display:grid;
  gap: 8px;
}
.techcrest-home2-tourVisualRows span{
  height: 10px;
  border-radius: 999px;
  background: rgba(15,23,42,.10);
}

/* Steps (scroll targets) */
.techcrest-home2-tourSteps{
  display:grid;
  gap: 12px;
}
.techcrest-home2-tourStep{
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.techcrest-home2-tourStep.is-active{
  border-color: rgba(37,99,235,.25);
  background: rgba(37,99,235,.06);
}
.techcrest-home2-tourStep:hover{
  transform: translateY(-3px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
}

/* TechCrest Home v2 — Testimonials v2 (split + stacked) */
.techcrest-home2-t2-left{
  height: 100%;
  padding: 22px;
  border-radius: 34px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  position: relative;
  overflow: hidden;
}

.techcrest-home2-t2-left::before{
  content:"";
  position:absolute; inset:-60px;
  background:
    radial-gradient(560px 340px at 20% 15%, rgba(37,99,235,.14), transparent 60%),
    radial-gradient(560px 340px at 85% 45%, rgba(37,99,235,.10), transparent 60%);
  pointer-events:none;
}

.techcrest-home2-t2-rating{
  display:grid;
  gap: 6px;
  padding: 12px 14px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.92);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  position: relative;
  z-index: 1;
}

.techcrest-home2-t2-stars{
  letter-spacing: 2px;
  font-weight: 1000;
  color: var(--techcrest-primary-700);
}

.techcrest-home2-t2-featured{
  margin-top: 14px;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(37,99,235,.08);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  position: relative;
  z-index: 1;
}

.techcrest-home2-t2-quote{
  font-weight: 900;
  color: rgba(15,23,42,.92);
}

.techcrest-home2-t2-person{
  display:flex;
  gap: 12px;
  align-items:center;
}

.techcrest-home2-t2-avatar{
  width: 54px;
  height: 54px;
  border-radius: 22px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}

.techcrest-home2-t2-stack{
  height: 100%;
  display:grid;
  gap: 14px;
}

.techcrest-home2-t2-card{
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.techcrest-home2-t2-card:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}

.techcrest-home2-t2-card--lift{
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 26px 74px rgba(15, 23, 42, 0.12);
}

.techcrest-home2-t2-cardTop{
  display:flex;
  align-items:center;
  gap: 12px;
  margin-bottom: 10px;
}

.techcrest-home2-t2-cardTop img{
  width: 54px;
  height: 54px;
  border-radius: 22px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}

.techcrest-home2-t2-miniStars{
  margin-left: auto;
  font-weight: 1000;
  color: var(--techcrest-primary-700);
  letter-spacing: 2px;
}

/* TechCrest Home v2 — Blog v2 (magazine layout) */
.techcrest-home2-blog2-featureLink{
  position: relative;
  display:block;
  height: 100%;
  min-height: 420px;
  border-radius: 34px;
  overflow:hidden;
  border: 1px solid rgba(226,232,240,.95);
  background-color: rgba(15,23,42,.06);
  background-image: var(--techcrest-blog2-bg);
  background-size: cover;
  background-position: center;
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  text-decoration: none;
}

.techcrest-home2-blog2-shade{
  position:absolute; inset:0;
  background:
    radial-gradient(700px 360px at 20% 10%, rgba(37,99,235,.18), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.08) 15%, rgba(15,23,42,.78));
}

.techcrest-home2-blog2-top{
  position:absolute;
  top: 14px; left: 14px; right: 14px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  z-index: 2;
}

.techcrest-home2-blog2-chip{
  display:inline-flex;
  padding: .3rem .7rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.92);
  font-weight: 1000;
  backdrop-filter: blur(12px);
}

.techcrest-home2-blog2-meta{
  color: rgba(255,255,255,.80);
  font-weight: 900;
  font-size: 12px;
}

.techcrest-home2-blog2-bottom{
  position:absolute;
  left: 14px;
  right: 14px;
  bottom: 16px;
  z-index: 2;
  display:grid;
  gap: 8px;
}

.techcrest-home2-blog2-title{
  color: rgba(255,255,255,.98);
  font-weight: 1000;
  letter-spacing: -0.02em;
}

.techcrest-home2-blog2-text{
  color: rgba(255,255,255,.82);
  font-weight: 800;
  max-width: 62ch;
}

.techcrest-home2-blog2-cta{
  position:absolute;
  right: 14px;
  bottom: 14px;
  z-index: 3;
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.92);
  font-weight: 1000;
  backdrop-filter: blur(14px);
  transform: translateY(0);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.techcrest-home2-blog2-ctaArrow{
  width: 36px;
  height: 36px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  display:grid;
  place-items:center;
}

.techcrest-home2-blog2-featureLink:hover .techcrest-home2-blog2-cta{
  transform: translateY(-3px);
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.26);
}

/* Compact list */
.techcrest-home2-blog2-list{
  display:grid;
  gap: 12px;
}

.techcrest-home2-blog2-itemLink{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 12px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  text-decoration:none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.techcrest-home2-blog2-itemLink:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}

.techcrest-home2-blog2-thumb{
  width: 86px;
  height: 86px;
  border-radius: 26px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  flex: 0 0 auto;
}

.techcrest-home2-blog2-itemBody{
  min-width: 0;
  display:grid;
  gap: 2px;
}

.techcrest-home2-blog2-itemMeta{
  font-weight: 900;
  color: var(--techcrest-muted);
  font-size: 12px;
}

.techcrest-home2-blog2-itemTitle{
  color: var(--techcrest-text);
  letter-spacing: -0.02em;
}

.techcrest-home2-blog2-itemArrow{
  margin-left: auto;
  width: 44px;
  height: 44px;
  border-radius: 18px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.92);
  display:grid;
  place-items:center;
  font-weight: 1000;
  color: var(--techcrest-text);
}

/* TechCrest Home 2 — Redefine section */
.techcrest-home2-redefineMedia{
  position: relative;
  border-radius: 34px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  overflow: hidden;
  padding: 14px;
  min-height: 520px;
}

.techcrest-home2-redefineGlow{
  position:absolute;
  inset:-80px;
  background:
    radial-gradient(560px 360px at 22% 20%, rgba(37,99,235,.16), transparent 60%),
    radial-gradient(560px 360px at 86% 50%, rgba(37,99,235,.12), transparent 60%);
  pointer-events:none;
}

.techcrest-home2-redefineStack{
  position: relative;
  height: 100%;
  min-height: 490px;
}

.techcrest-home2-redefineImg{
  position: absolute;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 22px 70px rgba(15, 23, 42, 0.14);
  object-fit: cover;
  width: 72%;
  height: 72%;
}

.techcrest-home2-redefineImg--back{
  left: 8%;
  top: 10%;
  transform: rotate(-3deg);
}

.techcrest-home2-redefineImg--front{
  right: 6%;
  bottom: 8%;
  width: 78%;
  height: 74%;
  transform: rotate(2deg);
}

/* Rotating years badge */
.techcrest-home2-years{
  position: absolute;
  left: 18px;
  bottom: 18px;
  width: 148px;
  height: 148px;
  border-radius: 999px;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(14px);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.16);
  display: grid;
  place-items: center;
  overflow: hidden;
}

.techcrest-home2-yearsCenter{
  position: absolute;
  inset: 18px;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.85);
  display: grid;
  place-items: center;
  text-align: center;
  z-index: 2;
}

.techcrest-home2-yearsNum{
  font-weight: 1000;
  letter-spacing: -0.04em;
  font-size: 44px;
  line-height: 1;
  color: var(--techcrest-primary-700);
}
.techcrest-home2-yearsLabel{
  margin-top: -2px;
  font-weight: 1000;
  font-size: 12px;
  color: var(--techcrest-muted);
}

/* SVG ring + rotation */
.techcrest-home2-yearsRing{
  position: relative;
  left: 0;
  top: 0;
  width: 160px;
  height: 160px;
  margin: 0 auto;
  transform-origin: 50% 50%;
  animation: techcrestYearsSpin 10s linear infinite;
  z-index: 1;
  opacity: 1;
  display: block;
}

.techcrest-home2-yearsText{
  font-weight: 1000;
  letter-spacing: .22em;
  font-size: 10px;
  fill: rgba(15,23,42,.78);
  text-rendering: geometricPrecision;
}

@keyframes techcrestYearsSpin{
  to { transform: rotate(360deg); }
}

/* Right-side points */
.techcrest-home2-redefinePoints{
  display: grid;
  gap: 12px;
}
.techcrest-home2-redefinePoint{
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
}

/* Mobile adjustments */
@media (max-width: 991.98px){
  .techcrest-home2-redefineMedia{ min-height: 460px; }
  .techcrest-home2-redefineStack{ min-height: 430px; }
  .techcrest-home2-years{ left: 14px; bottom: 14px; width: 132px; height: 132px; }
  .techcrest-home2-yearsRing{ width: 144px; height: 144px; }
}


/* Integrations */
.techcrest-home2-logoWall{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}
.techcrest-home2-logo{
  display:inline-flex;
  padding: .3rem .7rem;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(248,250,252,.9);
  font-weight: 1000;
  color: var(--techcrest-muted);
}
.techcrest-home2-integrCard{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
}

/* Cases */
.techcrest-home2-case{
  height: 100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-home2-case:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-home2-caseMeta{ color: var(--techcrest-muted); }

/* Stats (dark) */
.techcrest-home2-statsWrap{
  position: relative;
  padding: 18px;
  border-radius: 32px;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(15,23,42,.88));
  border: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.18);
}
.techcrest-home2-statsGlow{
  position:absolute;
  inset:-60px;
  background:
    radial-gradient(520px 320px at 25% 15%, rgba(37,99,235,.26), transparent 60%),
    radial-gradient(520px 320px at 80% 35%, rgba(37,99,235,.16), transparent 60%);
  pointer-events:none;
}
.techcrest-home2-statsTitle{
  color: rgba(255,255,255,.94);
  font-weight: 1000;
  letter-spacing: -0.03em;
}
.techcrest-home2-stat{
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
}
.techcrest-home2-statBig{
  font-weight: 1000;
  font-size: 34px;
  letter-spacing: -0.03em;
  color: rgba(255,255,255,.92);
}
.techcrest-home2-statLabel{
  color: rgba(255,255,255,.72);
  font-weight: 900;
}

@media (max-width: 991.98px){
  .techcrest-home2-tourSticky{ position: static; top: auto; }
}

/* TechCrest — Home v3 (image-led) */
.techcrest-home3-hero2{ padding: 0; }

.techcrest-home3-hero2-carousel .carousel-indicators{ margin-bottom: 1.25rem; }

.techcrest-home3-hero2-slide{
  position: relative;
  min-height: 78vh;
  display: grid;
  align-items: center;
  background-image: var(--techcrest-hero2-bg);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.techcrest-home3-hero2-overlay{
  position: absolute;
  inset: 0;
  background:
    radial-gradient(900px 520px at 18% 12%, rgba(37,99,235,.22), transparent 60%),
    linear-gradient(90deg, rgba(15,23,42,.72), rgba(15,23,42,.35) 55%, rgba(15,23,42,.20));
  pointer-events: none;
}

.techcrest-home3-hero2-slide .container{ position: relative; z-index: 2; }

.techcrest-home3-hero2-kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 1000;
  color: #fff;
  opacity: 1;
}
.techcrest-home3-hero2-dot{
  width: 10px; height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 0 0 6px rgba(37,99,235,.22);
}

.techcrest-home3-hero2-h1,
.techcrest-home3-hero2-h2{
  color: #fff !important;
  opacity: 1 !important;
  font-weight: 1000;
  letter-spacing: -0.03em;
}
.techcrest-home3-hero2-h1{ font-size: clamp(2.2rem, 4vw, 3.3rem); }
.techcrest-home3-hero2-h2{ font-size: clamp(2.0rem, 3.4vw, 3.0rem); }

.techcrest-home3-hero2-lead{
  color: #fff !important;
  opacity: 1 !important;
  font-weight: 800;
  max-width: 62ch;
}

/* KPI chips */
.techcrest-home3-hero2-kpis{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.techcrest-home3-hero2-kpi{
  padding: 10px 12px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(14px);
  box-shadow: 0 18px 44px rgba(0,0,0,.18);
}
.techcrest-home3-hero2-kpiBig{
  color:#fff;
  font-weight: 1000;
  letter-spacing: -0.03em;
  font-size: 18px;
}
.techcrest-home3-hero2-kpiSub{
  color: rgba(255,255,255,.82);
  font-weight: 900;
  font-size: 12px;
}

/* Right panel */
.techcrest-home3-hero2-panel{
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(16px);
  box-shadow: 0 26px 70px rgba(0,0,0,.22);
  color: #fff;
}
.techcrest-home3-hero2-panelTitle{
  font-weight: 1000;
  letter-spacing: -0.02em;
  color:#fff;
}
.techcrest-home3-hero2-panelText{
  color: rgba(255,255,255,.82);
  font-weight: 800;
}
.techcrest-home3-hero2-panelList{
  margin: 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 6px;
}
.techcrest-home3-hero2-panelList li{ color: rgba(255,255,255,.88); font-weight: 800; }

/* Chips */
.techcrest-home3-hero2-chips{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-start;
}
.techcrest-home3-hero2-chip{
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.92);
  font-weight: 1000;
  backdrop-filter: blur(14px);
}

/* Proof */
.techcrest-home3-hero2-proof{
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(16px);
  box-shadow: 0 26px 70px rgba(0,0,0,.22);
}
.techcrest-home3-hero2-proofTitle{
  color:#fff;
  font-weight: 1000;
}
.techcrest-home3-hero2-logos{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.techcrest-home3-hero2-logo{
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.90);
  font-weight: 1000;
}

/* TechCrest Home 3 — Hero v2 progress indicators */
.techcrest-home3-hero2-carousel .carousel-indicators{
  gap: 10px;
  margin-bottom: 1.25rem;
}

.techcrest-home3-hero2-carousel .carousel-indicators [data-bs-target]{
  width: 54px;
  height: 6px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.14);
  opacity: 1;
  position: relative;
  overflow: hidden;
  margin: 0;
}

/* Remove Bootstrap default dots sizing/opacity behavior */
.techcrest-home3-hero2-carousel .carousel-indicators .active{
  background: rgba(255,255,255,.16);
}

/* Animated fill */
.techcrest-home3-hero2-carousel .carousel-indicators [data-bs-target]::before{
  content:"";
  position:absolute;
  inset: 0;
  background: rgba(255,255,255,.92);
  transform: translateX(-100%);
}

/* Only active slide shows moving progress */
.techcrest-home3-hero2-carousel .carousel-indicators .active::before{
  animation: techcrestHero2Progress 5.2s linear infinite;
}

@keyframes techcrestHero2Progress{
  from { transform: translateX(-100%); }
  to   { transform: translateX(0%); }
}


@media (max-width: 991.98px){
  .techcrest-home3-hero2-slide{ min-height: 70vh; }
}


/* Mosaic */
/* TechCrest Home 3 — Masonry Project Gallery */
.techcrest-home3-masonry{
  column-gap: 18px;
  columns: 1;
}

/* Responsive masonry columns */
@media (min-width: 576px){
  .techcrest-home3-masonry{ columns: 2; }
}
@media (min-width: 992px){
  .techcrest-home3-masonry{ columns: 3; }
}
@media (min-width: 1200px){
  .techcrest-home3-masonry{ columns: 4; }
}

/* Masonry items */
.techcrest-home3-masonryItem{
  break-inside: avoid;
  margin: 0 0 18px 0;
}

/* Card */
.techcrest-home3-masonryCard{
  position: relative;
  display: block;
  width: 100%;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.95);
  background-color: rgba(15,23,42,.06);
  background-image: var(--tc-masonry-bg);
  background-size: cover;
  background-position: center;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.10);
  text-decoration: none;
  transform: translateZ(0);
}

/* Different heights for variety */
.techcrest-home3-masonryCard{ min-height: 260px; }
.techcrest-home3-masonryItem--tall .techcrest-home3-masonryCard{ min-height: 380px; }
.techcrest-home3-masonryItem--wide .techcrest-home3-masonryCard{ min-height: 300px; }

/* Overlay shade */
.techcrest-home3-masonryShade{
  position: absolute;
  inset: 0;
  background:
    radial-gradient(700px 420px at 20% 10%, rgba(37,99,235,.20), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.10) 25%, rgba(15,23,42,.78));
}

/* Inner content (tilt target to avoid transform conflicts) */
.techcrest-home3-masonryInner{
  position: relative;
  z-index: 2;
  height: 100%;
  padding: 16px;
  display: grid;
  align-content: end;
  gap: 6px;
  transform-style: preserve-3d;
  will-change: transform;
}

.techcrest-home3-masonryMeta{
  color: rgba(255,255,255,.82);
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .01em;
}

.techcrest-home3-masonryTitle{
  color: rgba(255,255,255,.98);
  font-weight: 1000;
  letter-spacing: -0.02em;
  font-size: 24px;
}

/* CTA reveal */
.techcrest-home3-masonryCta{
  margin-top: 10px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.92);
  font-weight: 1000;
  backdrop-filter: blur(14px);
  transform: translateY(10px);
  opacity: 0;
  transition: transform .18s ease, opacity .18s ease, background .18s ease, border-color .18s ease;
}

.techcrest-home3-masonryArrow{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  display: grid;
  place-items: center;
}

/* Hover: lift + show CTA */
.techcrest-home3-masonryCard{
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.techcrest-home3-masonryCard:hover{
  transform: translateY(-6px) scale(1.01);
  border-color: rgba(37,99,235,.22);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.16);
}

.techcrest-home3-masonryCard:hover .techcrest-home3-masonryCta{
  transform: translateY(0);
  opacity: 1;
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.26);
}

/* Safety: prevent horizontal overflow from columns/inner effects */
.techcrest-home3-mosaicGrid{ overflow: hidden; }


/* Spotlight image */
.techcrest-home3-spotlight{
  margin:0;
  border-radius: 32px;
  overflow:hidden;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  background: rgba(15,23,42,.06);
}
.techcrest-home3-spotlight img{
  width:100%; display:block;
  aspect-ratio: 16/11;
  object-fit: cover;
  transform: scale(1.02);
}

/* Industry list */
.techcrest-home3-industryList{ display:grid; gap: 12px; }
.techcrest-home3-industry{
  padding: 16px;
  border-radius: 24px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
}

/* Process steps with images */
.techcrest-home3-step{
  height:100%;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-home3-step:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-home3-step img{
  width:100%;
  border-radius: 22px;
  display:block;
  aspect-ratio: 16/10;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
}

/* Photo testimonials */
.techcrest-home3-testimonials{
  border: 1px solid rgba(226,232,240,.9);
  background: rgba(248,250,252,.9);
}
.techcrest-home3-quote{
  height:100%;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}
.techcrest-home3-quoteHead{
  display:flex;
  align-items:center;
  gap: 12px;
  margin-bottom: 12px;
}
.techcrest-home3-quoteHead img{
  width: 54px; height: 54px;
  border-radius: 22px;
  object-fit: cover;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}

/* Gallery */
.techcrest-home3-shot{
  margin:0;
  border-radius: 28px;
  overflow:hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}
.techcrest-home3-shot img{
  width:100%; display:block;
  object-fit: cover;
  aspect-ratio: 1/1;
}
.techcrest-home3-shot--lg img{ aspect-ratio: 16/11; }

@media (max-width: 991.98px){
  .techcrest-home3-mosaicCard--lg{ grid-column: span 12; }
  .techcrest-home3-mosaicGrid > a:not(.techcrest-home3-mosaicCard--lg):not(.techcrest-home3-mosaicCard--wide){ grid-column: span 12; }
}

/* Home v3 — Pricing */
.techcrest-home3-billingWrap{
  position: relative;
  border-radius: 999px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  padding: 4px;
  overflow: hidden;
}
.techcrest-home3-billingBtn{
  position: relative;
  z-index: 2;
  border: 0;
  background: transparent;
  padding: .6rem 1rem;
  border-radius: 999px;
  font-weight: 1000;
  color: var(--techcrest-muted);
}
.techcrest-home3-billingBtn.is-active{ color: var(--techcrest-text); }
.techcrest-home3-billingPill{
  position:absolute;
  top: 4px; bottom: 4px;
  left: 4px;
  width: calc(50% - 4px);
  border-radius: 999px;
  background: rgba(37,99,235,.12);
  border: 1px solid rgba(37,99,235,.22);
  transform: translateX(0%);
  transition: transform .25s ease;
  z-index: 1;
}

.techcrest-home3-plan{
  height: 100%;
  border-radius: 32px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}
.techcrest-home3-planMedia{
  height: 160px;
  background-image: var(--techcrest-home3-planbg);
  background-size: cover;
  background-position: center;
  position: relative;
}
.techcrest-home3-planMedia::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(15,23,42,.08), rgba(15,23,42,.50));
}
.techcrest-home3-planBody{ padding: 18px; }
.techcrest-home3-plan--featured{
  border-color: rgba(37,99,235,.25);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
}
.techcrest-home3-planTag{
  display:inline-flex;
  padding: .26rem .7rem;
  border-radius: 999px;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(37,99,235,.08);
  color: var(--techcrest-primary-700);
  font-weight: 1000;
}
.techcrest-home3-price{
  font-weight: 1000;
  font-size: 38px;
  letter-spacing: -0.03em;
}
.techcrest-home3-period{
  font-weight: 900;
  font-size: 14px;
  color: var(--techcrest-muted);
}
.techcrest-home3-planList{
  margin: 0 0 14px 0;
  padding-left: 1.1rem;
  display:grid;
  gap: 8px;
}

/* Home v3 — FAQ */
.techcrest-home3-faqMedia{
  position: relative;
  height: 100%;
  min-height: 420px;
  border-radius: 32px;
  overflow:hidden;
  border: 1px solid rgba(226,232,240,.95);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  background: rgba(15,23,42,.06);
}
.techcrest-home3-faqMedia img{
  width:100%; height:100%;
  object-fit: cover;
  display:block;
  transform: scale(1.03);
}
.techcrest-home3-faqShade{
  position:absolute; inset:0;
  background:
    radial-gradient(700px 420px at 20% 10%, rgba(37,99,235,.22), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.10), rgba(15,23,42,.70));
}
.techcrest-home3-faqText{
  position:absolute;
  left: 16px; right: 16px; bottom: 16px;
  color: rgba(255,255,255,.94);
}
.techcrest-home3-faqTitle{
  color: rgba(255,255,255,.96);
  font-weight: 1000;
  letter-spacing: -0.03em;
}
.techcrest-home3-faqLead{
  color: rgba(255,255,255,.78);
  font-weight: 800;
}
.techcrest-home3-accordion .accordion-item{
  border-radius: 22px;
  border: 1px solid rgba(226,232,240,.95);
  overflow: hidden;
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
  margin-bottom: 12px;
}
.techcrest-home3-accordion .accordion-button{
  font-weight: 1000;
}
.techcrest-home3-accordion .accordion-button:focus{
  box-shadow: 0 0 0 .25rem rgba(37,99,235,.18);
}

/* Home v3 — Blog */
.techcrest-home3-post{
  height: 100%;
  padding: 16px;
  border-radius: 28px;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.techcrest-home3-post:hover{
  transform: translateY(-5px);
  border-color: rgba(37,99,235,.22);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.12);
}
.techcrest-home3-postMedia{
  position: relative;
  display:block;
  border-radius: 22px;
  overflow:hidden;
  border: 1px solid rgba(226,232,240,.95);
  background: rgba(15,23,42,.06);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.10);
}
.techcrest-home3-postMedia img{
  width:100%;
  display:block;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.03);
  transition: transform .45s ease;
}
.techcrest-home3-post:hover .techcrest-home3-postMedia img{ transform: scale(1.10); }
.techcrest-home3-postShade{
  position:absolute; inset:0;
  background: linear-gradient(180deg, transparent 25%, rgba(15,23,42,.62));
}
.techcrest-home3-postMeta{
  position:absolute;
  left: 12px; bottom: 12px;
  display:inline-flex;
  padding: .26rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
  color: rgba(255,255,255,.90);
  font-weight: 1000;
  backdrop-filter: blur(12px);
}
.techcrest-home3-postTitle{
  color: var(--techcrest-text);
  text-decoration:none;
}
.techcrest-home3-postTitle:hover{ color: var(--techcrest-primary-700); }





