/* =========================================================
   homuta2026.css — Homuta Holdings 2026 Redesign
   Override layer: bootstrap.min.css + mega_menu.css
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;900&family=Inter:wght@300;400;500;600;700;800;900&display=swap');

:root {
  --h-navy:     #06090f;
  --h-navy-mid: #0c1322;
  --h-blue:     #2563eb;
  --h-blue-glow: rgba(37,99,235,.45);
  --h-cyan:     #00d4ff;
  --h-cyan-10:  rgba(0,212,255,.10);
  --h-cyan-20:  rgba(0,212,255,.20);
  --h-white:    #ffffff;
  --h-off:      #f5f6f8;
  --h-text:     #1a1f2e;
  --h-muted:    #6b7280;
  --h-border:   #e0e3ea;
  --h-font:     'Noto Sans JP','Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --h-mono:     'Inter','Consolas',monospace;
  --h-ease:     cubic-bezier(.22,1,.36,1);
}

/* ===== GLOBAL ===== */

body.bg-demo {
  font-family: var(--h-font) !important;
  background: var(--h-white) !important;
  color: var(--h-text);
  font-size: 15px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

::selection {
  background: var(--h-cyan-20);
  color: var(--h-navy);
}

/* ===== NAVIGATION ===== */

.mega-menu > section.menu-list-items {
  background: var(--h-navy) !important;
  padding: 0 36px !important;
  border-bottom: 1px solid rgba(255,255,255,.04) !important;
  box-shadow: none !important;
}

.mega-menu .menu-logo a {
  color: var(--h-white) !important;
}
.mega-menu .menu-logo a span {
  font-family: var(--h-font) !important;
  font-weight: 600 !important;
  letter-spacing: .02em;
}
.mega-menu .menu-logo img {
  filter: brightness(0) invert(1);
  opacity: .85;
}

.mega-menu .menu-links > li > a {
  color: rgba(255,255,255,.55) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: .04em;
  transition: color .3s;
}
.mega-menu .menu-links > li > a:hover,
.mega-menu .menu-links > li.active > a {
  color: var(--h-white) !important;
}

.mega-menu .drop-down {
  background: var(--h-navy) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  border-top: 2px solid var(--h-blue) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,.55) !important;
}
.mega-menu .drop-down h4 {
  color: var(--h-cyan) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.mega-menu .drop-down ul li a {
  color: rgba(255,255,255,.5) !important;
  font-size: 13px !important;
}
.mega-menu .drop-down ul li a:hover {
  color: var(--h-white) !important;
}
.mega-menu .menu-social-bar li a i {
  color: rgba(255,255,255,.2) !important;
}
.mega-menu .menu-social-bar li a i:hover {
  color: var(--h-white) !important;
}

/* ===== HERO / CAROUSEL ===== */

#homepage-carousel { margin: 0; }

#homepage-carousel .carousel-inner .item {
  height: 100vh !important;
  min-height: 600px !important;
}

.header-image {
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  text-align: center !important;
}

.header-image::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    180deg,
    rgba(6,9,15,.95) 0%,
    rgba(6,9,15,.7) 50%,
    rgba(6,9,15,.9) 100%
  ) !important;
  z-index: 1 !important;
}

.header-image::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px) !important;
  background-size: 72px 72px !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.headline {
  position: relative !important;
  z-index: 10 !important;
  padding: 0 !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100vh !important;
}

.headline .container {
  padding: 0 15px !important;
}

.box {
  margin: 0 auto !important;
  padding: 0 20px !important;
  text-align: center !important;
  max-width: 900px !important;
}

.box h1 {
  font-family: var(--h-font) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: -.04em !important;
  text-shadow: none !important;
  color: var(--h-white) !important;
  padding-bottom: 0 !important;
  margin-bottom: 8px !important;
}

.box h1 font,
.box h1 font span,
.box h1 span font {
  color: var(--h-white) !important;
  text-shadow: none !important;
}

.box h1 span[style*="36px"],
.box h1 span[style*="24px"] {
  font-size: clamp(40px, 7vw, 72px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
}

.box h1 font:not(:has(span)) {
  font-size: clamp(40px, 7vw, 72px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
}

.box h1 span[style*="18px"] {
  font-size: clamp(15px, 2vw, 19px) !important;
  font-weight: 300 !important;
  letter-spacing: .06em !important;
  color: rgba(255,255,255,.45) !important;
  line-height: 2 !important;
  display: block !important;
  margin-top: 16px !important;
}

.big_carousel_headline .box .btn-primary.editable {
  background: var(--h-white) !important;
  color: var(--h-navy) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 16px 44px !important;
  font-family: var(--h-font) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  transition: all .4s var(--h-ease) !important;
  margin-top: 40px !important;
  display: inline-block !important;
}
.big_carousel_headline .box .btn-primary.editable:hover {
  background: var(--h-cyan) !important;
  color: var(--h-navy) !important;
  transform: translateY(-2px);
}
.big_carousel_headline .box .btn-primary.editable .fa {
  display: none !important;
}

/* Carousel controls */
#homepage-carousel .carousel-control {
  background-image: none !important;
  background: none !important;
  width: 80px !important;
  z-index: 20 !important;
  opacity: .3 !important;
  transition: opacity .3s;
}
#homepage-carousel .carousel-control:hover { opacity: .8 !important; }

#homepage-carousel .carousel-indicators {
  z-index: 20;
  bottom: 48px;
}
#homepage-carousel .carousel-indicators li {
  width: 32px !important;
  height: 2px !important;
  border-radius: 0 !important;
  border: none !important;
  background: rgba(255,255,255,.2) !important;
  margin: 0 5px !important;
  transition: all .5s var(--h-ease);
}
#homepage-carousel .carousel-indicators li.active {
  width: 56px !important;
  background: var(--h-white) !important;
}

/* Glow orbs on carousel */
.carousel-inner .item::before {
  content: '' !important;
  position: absolute !important;
  width: 600px !important; height: 600px !important;
  border-radius: 50% !important;
  right: -10% !important; top: -20% !important;
  background: radial-gradient(circle, rgba(37,99,235,.07) 0%, transparent 65%) !important;
  z-index: 3 !important;
  pointer-events: none !important;
}
.carousel-inner .item::after {
  content: '' !important;
  position: absolute !important;
  width: 400px !important; height: 400px !important;
  border-radius: 50% !important;
  left: -5% !important; bottom: -15% !important;
  background: radial-gradient(circle, rgba(0,212,255,.05) 0%, transparent 65%) !important;
  z-index: 3 !important;
  pointer-events: none !important;
}

/* ===== AI SECTION ===== */

.hmt-ai-banner {
  background: var(--h-navy);
  position: relative;
  overflow: hidden;
  padding: 120px 0;
}
.hmt-ai-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px);
  background-size: 56px 56px;
  pointer-events: none;
}
.hmt-ai-banner::after {
  content: '';
  position: absolute;
  right: -15%; top: -30%;
  width: 700px; height: 700px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,212,255,.05), transparent 70%);
  pointer-events: none;
}

.hmt-ai-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--h-cyan-10);
  border: 1px solid var(--h-cyan-20);
  color: var(--h-cyan);
  font-family: var(--h-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  padding: 7px 18px;
  border-radius: 100px;
  margin-bottom: 28px;
}

.hmt-ai-title {
  font-family: var(--h-font) !important;
  font-size: 42px;
  font-weight: 800;
  color: var(--h-white);
  letter-spacing: -.03em;
  line-height: 1.12;
  margin-bottom: 20px;
}

.hmt-ai-desc {
  font-size: 15px;
  color: rgba(255,255,255,.4);
  line-height: 1.9;
  max-width: 400px;
  margin-bottom: 40px;
}

.hmt-ai-card {
  position: relative;
  z-index: 1;
  border: 1px solid rgba(255,255,255,.05);
  border-radius: 8px;
  padding: 32px 28px;
  margin-bottom: 20px;
  transition: all .4s var(--h-ease);
  background: rgba(255,255,255,.01);
}
.hmt-ai-card:hover {
  border-color: rgba(0,212,255,.25);
  background: rgba(0,212,255,.03);
  transform: translateY(-3px);
}
.hmt-ai-card-num {
  font-family: var(--h-mono);
  font-size: 52px;
  font-weight: 900;
  color: rgba(0,212,255,.08);
  line-height: 1;
  letter-spacing: -.06em;
  margin-bottom: 4px;
}
.hmt-ai-card-tag {
  display: inline-block;
  background: var(--h-cyan-10);
  color: var(--h-cyan);
  font-family: var(--h-mono);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 3px;
  margin-bottom: 16px;
}
.hmt-ai-card h4 {
  font-family: var(--h-font) !important;
  font-size: 17px;
  font-weight: 700;
  color: var(--h-white);
  margin: 0 0 10px;
  line-height: 1.4;
}
.hmt-ai-card p {
  font-size: 13px;
  color: rgba(255,255,255,.4);
  line-height: 1.85;
  margin: 0;
}

.hmt-ai-cta {
  display: inline-block;
  background: var(--h-blue);
  color: var(--h-white) !important;
  padding: 15px 36px;
  border-radius: 0;
  font-family: var(--h-font);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none !important;
  box-shadow: 0 4px 32px var(--h-blue-glow);
  transition: all .4s var(--h-ease);
}
.hmt-ai-cta:hover {
  background: #1d4ed8;
  color: var(--h-white) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 40px var(--h-blue-glow);
  text-decoration: none !important;
}

/* ===== BUSINESS SECTION ===== */

.hmt_content2 {
  background: var(--h-off) !important;
  padding: 100px 0 80px !important;
}

.hmt_title1 {
  font-family: var(--h-font) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--h-navy) !important;
  letter-spacing: -.01em !important;
  margin-bottom: 48px !important;
  border-bottom: none !important;
  text-align: center !important;
}
.hmt_title1 .hmt_icon {
  color: var(--h-blue) !important;
}

.hmt_content2 > .container > .row,
.hmt_content2 > .container {
  display: flex !important;
  flex-wrap: wrap !important;
}
.hmt_content2 > .container > .editable {
  width: 100% !important;
  flex: 0 0 100% !important;
}

.hmt_content2 .col-sm-4,
.hmt_content2 .col-md-4,
.hmt_content2 .col-lg-4 {
  display: flex !important;
}

.hmt_content2 .thumbnail {
  background: var(--h-white) !important;
  border: 1px solid var(--h-border) !important;
  border-radius: 8px !important;
  overflow: hidden;
  transition: all .4s var(--h-ease);
  box-shadow: none !important;
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}
.hmt_content2 .thumbnail:hover {
  border-color: transparent !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.08) !important;
  transform: translateY(-6px);
}
.hmt_content2 .thumbnail::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: var(--h-blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .4s var(--h-ease);
  z-index: 2;
}
.hmt_content2 .thumbnail:hover::after {
  transform: scaleX(1);
}

.hmt_content2 .thumbnail img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
}

.hmt_content2 .thumbnail .caption {
  padding: 28px 24px !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}
.hmt_content2 .thumbnail .caption > center:last-child {
  margin-top: auto !important;
  padding-top: 20px !important;
}
.hmt_content2 .thumbnail .caption h4 {
  font-family: var(--h-font) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--h-navy) !important;
}
.hmt_content2 .thumbnail .caption p {
  font-size: 14px !important;
  color: var(--h-muted) !important;
  line-height: 1.8 !important;
}

.hmt_content2 .btn-primary.banner {
  background: transparent !important;
  border: 1.5px solid var(--h-navy) !important;
  color: var(--h-navy) !important;
  border-radius: 0 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  font-family: var(--h-font) !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  padding: 10px 28px !important;
  box-shadow: none !important;
  transition: all .3s var(--h-ease) !important;
}
.hmt_content2 .btn-primary.banner:hover {
  background: var(--h-navy) !important;
  color: var(--h-white) !important;
}

/* ===== NEWS / JOBS ===== */

.hmt_content {
  padding: 80px 0 60px !important;
  background: var(--h-white) !important;
}

.hmt_content .hmt_title1 {
  text-align: left !important;
}

#news_list .list-group-item,
#jobs_list .list-group-item {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--h-border) !important;
  border-radius: 0 !important;
  padding: 18px 0 !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 24px !important;
  color: var(--h-text) !important;
  transition: all .25s;
}
#news_list .list-group-item:hover,
#jobs_list .list-group-item:hover {
  background: var(--h-off) !important;
  padding-left: 16px !important;
}

.hmt_Listdate {
  font-family: var(--h-mono) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--h-muted) !important;
  min-width: 90px !important;
}
.hmtListContent {
  font-size: 14px !important;
  color: var(--h-text) !important;
}

/* ===== FOOTER ===== */

.footer {
  background: var(--h-navy) !important;
  padding: 72px 0 40px !important;
}
.footer h3 {
  font-family: var(--h-font) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,.6) !important;
  text-transform: uppercase !important;
  letter-spacing: .16em !important;
  margin-bottom: 20px !important;
}
.footer ul { list-style: none !important; padding: 0 !important; }
.footer ul li { margin-bottom: 10px !important; }
.footer ul li a {
  color: rgba(255,255,255,.3) !important;
  font-size: 13px !important;
  font-family: var(--h-font) !important;
  text-decoration: none !important;
  transition: color .3s !important;
}
.footer ul li a:hover { color: var(--h-white) !important; }

.footer .social {
  color: rgba(255,255,255,.2) !important;
  font-size: 22px !important;
  margin-right: 14px !important;
  transition: color .3s, transform .3s !important;
}
.footer .social:hover {
  color: var(--h-white) !important;
  transform: scale(1.1) !important;
}

.footer-bottom {
  background: rgba(0,0,0,.3) !important;
  padding: 16px 0 !important;
  border-top: 1px solid rgba(255,255,255,.04) !important;
}
#Copyright {
  color: rgba(255,255,255,.18) !important;
  font-size: 11px !important;
  font-family: var(--h-font) !important;
}

/* ===== INSIDE PAGE — BREADCRUMB ===== */

.hmt_content4 {
  background: var(--h-navy) !important;
  padding: 0 !important;
  margin: 0 !important;
}
.hmt_content4 .breadcrumb {
  background: transparent !important;
  margin: 0 !important;
  padding: 14px 36px !important;
  border-radius: 0 !important;
  font-size: 12px !important;
  font-family: var(--h-font) !important;
  letter-spacing: .02em !important;
}
.hmt_content4 .breadcrumb > li,
.hmt_content4 .breadcrumb > li > a {
  color: rgba(255,255,255,.35) !important;
  font-size: 12px !important;
}
.hmt_content4 .breadcrumb > li > a:hover {
  color: var(--h-cyan) !important;
  text-decoration: none !important;
}
.hmt_content4 .breadcrumb > .active {
  color: rgba(255,255,255,.55) !important;
}
.hmt_content4 .breadcrumb > li + li::before {
  color: rgba(255,255,255,.2) !important;
}

/* ===== INSIDE PAGE — HERO HEADER ===== */

.header-inside {
  background: var(--h-navy) !important;
  min-height: 200px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  overflow: hidden !important;
  border: none !important;
  margin: 0 !important;
  padding: 48px 0 !important;
}
.header-inside::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    135deg,
    rgba(6,9,15,.96) 0%,
    rgba(12,19,34,.85) 100%
  ) !important;
  z-index: 1 !important;
}
.header-inside::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image:
    linear-gradient(rgba(255,255,255,.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.015) 1px, transparent 1px) !important;
  background-size: 56px 56px !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.header-inside.editable[data-background] {
  background-size: cover !important;
  background-position: center !important;
  min-height: 300px !important;
}

.headline-inside {
  position: relative !important;
  z-index: 10 !important;
  width: 100% !important;
  text-align: center !important;
}
.headline-inside .box2 {
  text-align: center !important;
}
.headline-inside .box2 h1,
#inside_top_title {
  font-family: var(--h-font) !important;
  font-size: clamp(28px, 5vw, 44px) !important;
  font-weight: 800 !important;
  color: var(--h-white) !important;
  letter-spacing: -.03em !important;
  line-height: 1.15 !important;
  text-shadow: none !important;
  margin: 0 !important;
}

/* ===== INSIDE PAGE — CONTENT SECTIONS ===== */

.hmt_content2 h2.hmt_title1 {
  text-align: left !important;
  font-size: 24px !important;
  margin-bottom: 28px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--h-border) !important;
  position: relative !important;
}

.hmt_content2 .container.editable {
  margin-bottom: 48px !important;
}

.hmt_content2 .container.editable p,
.hmt_content2 .container.editable div[class*="col-"] {
  font-size: 15px !important;
  line-height: 2 !important;
  color: var(--h-text) !important;
}

.hmt_content2 .container.editable ul {
  padding-left: 0 !important;
  list-style: none !important;
}
.hmt_content2 .container.editable ul li {
  position: relative !important;
  padding-left: 20px !important;
  margin-bottom: 10px !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  color: var(--h-text) !important;
}
.hmt_content2 .container.editable ul li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 10px !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: var(--h-blue) !important;
}

.hmt_content2 .container.editable ul li strong {
  color: var(--h-navy) !important;
  font-weight: 700 !important;
}

/* ===== INSIDE PAGE — CAROUSEL (SUBPAGE) ===== */

#content-carousel {
  margin: 0 !important;
}
#content-carousel .carousel-inner .item {
  min-height: 320px !important;
}
#content-carousel .header-image {
  min-height: 320px !important;
}
#content-carousel .carousel-control {
  background-image: none !important;
  background: none !important;
  z-index: 20 !important;
  opacity: .3 !important;
}
#content-carousel .carousel-control:hover { opacity: .8 !important; }
#content-carousel .carousel-indicators li {
  width: 24px !important;
  height: 2px !important;
  border-radius: 0 !important;
  border: none !important;
  background: rgba(255,255,255,.2) !important;
}
#content-carousel .carousel-indicators li.active {
  width: 40px !important;
  background: var(--h-white) !important;
}

/* ===== COMPANY INFO TABLES ===== */

.about,
.about table,
#no-more-tables {
  font-family: var(--h-font) !important;
}

.about .table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin-bottom: 32px !important;
}
.about .table td {
  padding: 16px 20px !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: var(--h-text) !important;
  border-color: var(--h-border) !important;
  vertical-align: top !important;
}
.about .table td.about-active {
  font-weight: 700 !important;
  color: var(--h-navy) !important;
  background: rgba(37,99,235,.04) !important;
  white-space: nowrap !important;
  min-width: 120px !important;
}
.about .table-striped > tbody > tr:nth-of-type(odd) {
  background: rgba(37,99,235,.02) !important;
}
.about .table-striped > tbody > tr:nth-of-type(even) {
  background: var(--h-white) !important;
}

.about h4 {
  font-family: var(--h-font) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--h-blue) !important;
  margin: 24px 0 16px !important;
}

.about address {
  font-style: normal !important;
  color: var(--h-text) !important;
  margin-bottom: 16px !important;
}

.about .map_overlay + map iframe,
.about map iframe {
  border-radius: 6px !important;
  margin-top: 8px !important;
}

/* ===== CONTACT FORM ===== */

#form_send_mail .form-control {
  font-family: var(--h-font) !important;
  font-size: 14px !important;
  border: 1px solid var(--h-border) !important;
  border-radius: 4px !important;
  padding: 12px 16px !important;
  color: var(--h-text) !important;
  background: var(--h-white) !important;
  transition: border-color .3s !important;
  box-shadow: none !important;
}
#form_send_mail .form-control:focus {
  border-color: var(--h-blue) !important;
  box-shadow: 0 0 0 3px rgba(37,99,235,.1) !important;
}

#form_send_mail .well {
  background: var(--h-white) !important;
  border: 1px solid var(--h-border) !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.04) !important;
  padding: 48px !important;
}

#form_send_mail label.bigicon {
  font-family: var(--h-font) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--h-navy) !important;
}
#form_send_mail label .fa-asterisk {
  color: #ef4444 !important;
}

#form_send_mail .btn-hom,
#submit_message {
  background: var(--h-blue) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 16px 48px !important;
  font-family: var(--h-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  color: var(--h-white) !important;
  box-shadow: 0 4px 24px var(--h-blue-glow) !important;
  transition: all .4s var(--h-ease) !important;
}
#form_send_mail .btn-hom:hover,
#submit_message:hover {
  background: #1d4ed8 !important;
  box-shadow: 0 8px 32px var(--h-blue-glow) !important;
  transform: translateY(-2px) !important;
}

/* ===== BLOG / TOPICS LIST ===== */

.blog_list_item,
.blog_list_table {
  font-family: var(--h-font) !important;
}

/* ===== JOBS LIST ===== */

.jobs_list_item {
  font-family: var(--h-font) !important;
}

/* ===== PRIVACY / TERMS TEXT ===== */

.hmt_content2 .container.editable h3 {
  font-family: var(--h-font) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--h-navy) !important;
  margin: 32px 0 16px !important;
}

.hmt_content2 .container.editable h4 {
  font-family: var(--h-font) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: var(--h-navy) !important;
}

/* ===== ALERT STYLES ===== */

.alert-success {
  background: rgba(34,197,94,.08) !important;
  border: 1px solid rgba(34,197,94,.25) !important;
  color: #166534 !important;
  border-radius: 6px !important;
  font-family: var(--h-font) !important;
}
.alert-danger {
  background: rgba(239,68,68,.08) !important;
  border: 1px solid rgba(239,68,68,.25) !important;
  color: #991b1b !important;
  border-radius: 6px !important;
  font-family: var(--h-font) !important;
}

/* ===== VISUAL COMPONENTS — Service Cards ===== */

.hmt-svc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 28px;
  margin: 48px 0 32px;
}
.hmt-svc-card {
  background: var(--h-white);
  border: 1px solid var(--h-border);
  border-radius: 10px;
  padding: 36px 28px 32px;
  position: relative;
  transition: all .4s var(--h-ease);
  overflow: hidden;
}
.hmt-svc-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--h-blue), var(--h-cyan));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .4s var(--h-ease);
}
.hmt-svc-card:hover {
  border-color: transparent;
  box-shadow: 0 16px 48px rgba(0,0,0,.08);
  transform: translateY(-4px);
}
.hmt-svc-card:hover::before { transform: scaleX(1); }

.hmt-svc-icon {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(37,99,235,.08), rgba(0,212,255,.08));
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  font-size: 22px;
  color: var(--h-blue);
}
.hmt-svc-card h4 {
  font-family: var(--h-font) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--h-navy) !important;
  margin: 0 0 10px !important;
  line-height: 1.4 !important;
}
.hmt-svc-card p {
  font-size: 14px !important;
  color: var(--h-muted) !important;
  line-height: 1.85 !important;
  margin: 0 !important;
}
.hmt-svc-card .hmt-svc-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 18px;
  font-size: 13px;
  font-weight: 600;
  color: var(--h-blue);
  text-decoration: none;
  transition: gap .3s var(--h-ease);
}
.hmt-svc-card .hmt-svc-link:hover {
  gap: 10px;
  text-decoration: none;
  color: var(--h-blue);
}

/* ===== VISUAL COMPONENTS — Process Flow ===== */

.hmt-flow {
  display: flex;
  align-items: flex-start;
  gap: 0;
  margin: 56px 0 48px;
  counter-reset: flow-step;
  flex-wrap: wrap;
  justify-content: center;
}
.hmt-flow-step {
  flex: 1 1 140px;
  max-width: 200px;
  text-align: center;
  position: relative;
  padding: 0 8px;
  counter-increment: flow-step;
}
.hmt-flow-step + .hmt-flow-step::before {
  content: '';
  position: absolute;
  left: -16px;
  top: 28px;
  width: 0; height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 10px solid var(--h-blue);
  opacity: .3;
}
.hmt-flow-num {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--h-navy);
  color: var(--h-cyan);
  font-family: var(--h-mono);
  font-size: 18px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 14px;
  position: relative;
  z-index: 1;
}
.hmt-flow-step h5 {
  font-family: var(--h-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--h-navy) !important;
  margin: 0 0 6px !important;
}
.hmt-flow-step p {
  font-size: 12px !important;
  color: var(--h-muted) !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* ===== VISUAL COMPONENTS — Stat Grid ===== */

.hmt-stats {
  display: flex;
  gap: 40px;
  margin: 48px 0;
  justify-content: center;
  flex-wrap: wrap;
}
.hmt-stat {
  text-align: center;
  min-width: 120px;
}
.hmt-stat-num {
  font-family: var(--h-mono);
  font-size: 44px;
  font-weight: 900;
  color: var(--h-blue);
  line-height: 1;
  margin-bottom: 6px;
  letter-spacing: -.03em;
}
.hmt-stat-label {
  font-size: 12px;
  color: var(--h-muted);
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
}

/* ===== VISUAL COMPONENTS — Section Variants ===== */

.hmt-section {
  padding: 80px 0;
}
.hmt-section-dark {
  background: var(--h-navy);
  padding: 80px 0;
  position: relative;
  overflow: hidden;
}
.hmt-section-dark::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px);
  background-size: 56px 56px;
  pointer-events: none;
}
.hmt-section-dark h2,
.hmt-section-dark h3 {
  color: var(--h-white) !important;
}
.hmt-section-dark p {
  color: rgba(255,255,255,.45) !important;
}
.hmt-section-dark .hmt-svc-card {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.06);
}
.hmt-section-dark .hmt-svc-card:hover {
  background: rgba(0,212,255,.04);
  border-color: rgba(0,212,255,.15);
}
.hmt-section-dark .hmt-svc-card h4 { color: var(--h-white) !important; }
.hmt-section-dark .hmt-svc-card p { color: rgba(255,255,255,.4) !important; }
.hmt-section-dark .hmt-svc-icon {
  background: rgba(0,212,255,.08);
  color: var(--h-cyan);
}
.hmt-section-dark .hmt-flow-num {
  background: rgba(0,212,255,.1);
  border: 1px solid rgba(0,212,255,.2);
}
.hmt-section-dark .hmt-flow-step h5 { color: var(--h-white) !important; }
.hmt-section-dark .hmt-flow-step p { color: rgba(255,255,255,.35) !important; }
.hmt-section-dark .hmt-flow-step + .hmt-flow-step::before {
  border-left-color: var(--h-cyan);
  opacity: .2;
}

/* ===== VISUAL COMPONENTS — Section Titles ===== */

.hmt-sec-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--h-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--h-blue);
  margin-bottom: 16px;
}
.hmt-section-dark .hmt-sec-label {
  color: var(--h-cyan);
}
.hmt-sec-title {
  font-family: var(--h-font) !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  color: var(--h-navy) !important;
  letter-spacing: -.02em !important;
  line-height: 1.25 !important;
  margin-bottom: 16px !important;
  border-bottom: none !important;
  text-align: left !important;
}
.hmt-section-dark .hmt-sec-title { color: var(--h-white) !important; }

.hmt-sec-desc {
  font-size: 15px;
  color: var(--h-muted);
  line-height: 1.9;
  max-width: 640px;
  margin-bottom: 0;
}
.hmt-section-dark .hmt-sec-desc { color: rgba(255,255,255,.4); }

/* ===== VISUAL COMPONENTS — Feature List ===== */

.hmt-feat-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 32px 0 !important;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
}
.hmt-feat-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 20px;
  border-radius: 8px;
  border: 1px solid var(--h-border);
  background: var(--h-white);
  transition: all .3s var(--h-ease);
}
.hmt-feat-item:hover {
  border-color: rgba(37,99,235,.2);
  background: rgba(37,99,235,.02);
}
.hmt-feat-item::before { display: none !important; }
.hmt-feat-item .fa {
  color: var(--h-blue);
  font-size: 16px;
  margin-top: 3px;
  flex-shrink: 0;
}
.hmt-feat-item span {
  font-size: 14px;
  font-weight: 600;
  color: var(--h-navy);
  line-height: 1.5;
}
.hmt-section-dark .hmt-feat-item {
  background: rgba(255,255,255,.02);
  border-color: rgba(255,255,255,.06);
}
.hmt-section-dark .hmt-feat-item:hover {
  border-color: rgba(0,212,255,.2);
  background: rgba(0,212,255,.03);
}
.hmt-section-dark .hmt-feat-item .fa { color: var(--h-cyan); }
.hmt-section-dark .hmt-feat-item span { color: var(--h-white); }

/* ===== VISUAL COMPONENTS — Two Column ===== */

.hmt-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
  margin: 48px 0;
}

/* ===== VISUAL COMPONENTS — CTA Banner ===== */

.hmt-cta-banner {
  background: linear-gradient(135deg, var(--h-blue), #1d4ed8);
  border-radius: 12px;
  padding: 48px;
  text-align: center;
  margin: 48px 0 0;
  position: relative;
  overflow: hidden;
}
.hmt-cta-banner::before {
  content: '';
  position: absolute;
  right: -10%; top: -30%;
  width: 300px; height: 300px;
  border-radius: 50%;
  background: rgba(255,255,255,.05);
  pointer-events: none;
}
.hmt-cta-banner h3 {
  font-family: var(--h-font) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--h-white) !important;
  margin: 0 0 8px !important;
}
.hmt-cta-banner p {
  color: rgba(255,255,255,.6) !important;
  font-size: 14px !important;
  margin: 0 0 24px !important;
}
.hmt-cta-btn {
  display: inline-block;
  background: var(--h-white);
  color: var(--h-navy) !important;
  padding: 14px 40px;
  font-family: var(--h-font);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none !important;
  border-radius: 0;
  transition: all .4s var(--h-ease);
}
.hmt-cta-btn:hover {
  background: var(--h-cyan);
  color: var(--h-navy) !important;
  text-decoration: none !important;
  transform: translateY(-2px);
}

/* ===== VISUAL COMPONENTS — Tech Badges ===== */

.hmt-tech-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 20px 0;
}
.hmt-tech-badge {
  display: inline-block;
  padding: 6px 16px;
  border: 1px solid var(--h-border);
  border-radius: 100px;
  font-family: var(--h-mono);
  font-size: 12px;
  font-weight: 600;
  color: var(--h-navy);
  background: var(--h-white);
  transition: all .25s;
}
.hmt-tech-badge:hover {
  border-color: var(--h-blue);
  color: var(--h-blue);
  background: rgba(37,99,235,.04);
}
.hmt-section-dark .hmt-tech-badge {
  border-color: rgba(255,255,255,.1);
  background: rgba(255,255,255,.03);
  color: rgba(255,255,255,.6);
}
.hmt-section-dark .hmt-tech-badge:hover {
  border-color: var(--h-cyan);
  color: var(--h-cyan);
}

/* ===== VISUAL COMPONENTS — Track Record / Cases ===== */

.hmt-cases {
  margin: 48px 0 32px;
}
.hmt-case-group-title {
  font-family: var(--h-font) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--h-blue) !important;
  margin: 40px 0 16px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid var(--h-border) !important;
  display: flex;
  align-items: center;
  gap: 10px;
}
.hmt-case-group-title .fa {
  font-size: 14px;
}
.hmt-section-dark .hmt-case-group-title {
  color: var(--h-cyan) !important;
  border-bottom-color: rgba(255,255,255,.08) !important;
}

.hmt-case {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 18px 20px;
  border-radius: 8px;
  border: 1px solid var(--h-border);
  background: var(--h-white);
  margin-bottom: 10px;
  transition: all .3s var(--h-ease);
}
.hmt-case:hover {
  border-color: rgba(37,99,235,.15);
  box-shadow: 0 4px 16px rgba(0,0,0,.04);
}
.hmt-case-badge {
  flex-shrink: 0;
  display: inline-block;
  padding: 4px 10px;
  border-radius: 4px;
  font-family: var(--h-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .04em;
  white-space: nowrap;
  min-width: 60px;
  text-align: center;
}
.hmt-case-badge-aws {
  background: rgba(255,153,0,.08);
  color: #c27800;
  border: 1px solid rgba(255,153,0,.15);
}
.hmt-case-badge-azure {
  background: rgba(0,120,212,.08);
  color: #0078d4;
  border: 1px solid rgba(0,120,212,.15);
}
.hmt-case-badge-multi {
  background: rgba(37,99,235,.06);
  color: var(--h-blue);
  border: 1px solid rgba(37,99,235,.12);
}
.hmt-case-badge-other {
  background: rgba(107,114,128,.06);
  color: var(--h-muted);
  border: 1px solid rgba(107,114,128,.12);
}
.hmt-case-body {
  flex: 1;
}
.hmt-case-title {
  font-family: var(--h-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--h-navy) !important;
  margin: 0 0 4px !important;
  line-height: 1.4 !important;
}
.hmt-case-desc {
  font-size: 13px !important;
  color: var(--h-muted) !important;
  line-height: 1.7 !important;
  margin: 0 !important;
}
.hmt-case-tag {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 3px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .03em;
  margin-top: 6px;
  background: rgba(37,99,235,.06);
  color: var(--h-blue);
}

.hmt-section-dark .hmt-case {
  background: rgba(255,255,255,.02);
  border-color: rgba(255,255,255,.06);
}
.hmt-section-dark .hmt-case:hover {
  border-color: rgba(0,212,255,.15);
  box-shadow: 0 4px 16px rgba(0,0,0,.2);
}
.hmt-section-dark .hmt-case-title { color: var(--h-white) !important; }
.hmt-section-dark .hmt-case-desc { color: rgba(255,255,255,.4) !important; }

/* ===== VISUAL COMPONENTS — Migration Matrix ===== */

.hmt-mig-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin: 32px 0;
}
.hmt-mig-card {
  background: var(--h-white);
  border: 1px solid var(--h-border);
  border-radius: 8px;
  padding: 24px 20px;
  text-align: center;
  transition: all .3s var(--h-ease);
  position: relative;
}
.hmt-mig-card:hover {
  border-color: rgba(37,99,235,.2);
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
  transform: translateY(-3px);
}
.hmt-mig-from {
  font-family: var(--h-mono);
  font-size: 14px;
  font-weight: 700;
  color: var(--h-muted);
  margin-bottom: 4px;
}
.hmt-mig-arrow {
  color: var(--h-blue);
  font-size: 18px;
  margin: 6px 0;
  display: block;
}
.hmt-mig-to {
  font-family: var(--h-mono);
  font-size: 16px;
  font-weight: 800;
  color: var(--h-navy);
}
.hmt-mig-label {
  display: inline-block;
  margin-top: 10px;
  font-size: 11px;
  font-weight: 600;
  color: var(--h-blue);
  background: rgba(37,99,235,.06);
  padding: 3px 10px;
  border-radius: 3px;
}
.hmt-section-dark .hmt-mig-card {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.07);
}
.hmt-section-dark .hmt-mig-card:hover {
  border-color: rgba(0,212,255,.2);
}
.hmt-section-dark .hmt-mig-from { color: rgba(255,255,255,.4); }
.hmt-section-dark .hmt-mig-arrow { color: var(--h-cyan); }
.hmt-section-dark .hmt-mig-to { color: var(--h-white); }
.hmt-section-dark .hmt-mig-label {
  background: rgba(0,212,255,.1);
  color: var(--h-cyan);
}

/* ===== VISUAL COMPONENTS — Quote Block ===== */

.hmt-quote {
  border-left: 3px solid var(--h-blue);
  padding: 20px 28px;
  margin: 32px 0;
  background: rgba(37,99,235,.03);
  border-radius: 0 8px 8px 0;
}
.hmt-quote p {
  font-size: 15px !important;
  color: var(--h-navy) !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
  margin: 0 !important;
}

/* ===== RESPONSIVE — VISUAL COMPONENTS ===== */

@media (max-width: 991px) {
  .hmt-two-col { grid-template-columns: 1fr; gap: 40px; }
  .hmt-sec-title { font-size: 26px !important; }
  .hmt-svc-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
}

@media (max-width: 767px) {
  .hmt-flow { gap: 0; }
  .hmt-flow-step { flex: 1 1 100%; max-width: 100%; padding: 12px 0; }
  .hmt-flow-step + .hmt-flow-step::before { display: none; }
  .hmt-section, .hmt-section-dark { padding: 56px 0; }
  .hmt-sec-title { font-size: 24px !important; }
  .hmt-stat-num { font-size: 36px; }
  .hmt-cta-banner { padding: 32px 20px; }
  .hmt-two-col { grid-template-columns: 1fr; gap: 32px; }
  .hmt-feat-list { grid-template-columns: 1fr; }
}

/* ===== CAROUSEL CONTROLS (Modern) ===== */

#homepage-carousel .carousel-indicators {
  bottom: 32px !important;
  z-index: 20 !important;
}
#homepage-carousel .carousel-indicators li {
  width: 40px !important;
  height: 3px !important;
  border-radius: 2px !important;
  border: none !important;
  background: rgba(255,255,255,.3) !important;
  margin: 0 4px !important;
  transition: all .3s ease !important;
}
#homepage-carousel .carousel-indicators li.active {
  width: 56px !important;
  background: var(--h-white) !important;
}
#homepage-carousel .carousel-control {
  background: none !important;
  width: 56px !important;
  opacity: .5 !important;
  z-index: 20 !important;
}
#homepage-carousel .carousel-control:hover { opacity: 1 !important; }
#homepage-carousel .carousel-control .glyphicon {
  font-size: 28px !important;
  text-shadow: none !important;
}
.box .btn-primary {
  background: var(--h-blue) !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 32px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  margin-top: 20px !important;
  transition: all .3s ease !important;
}
.box .btn-primary:hover {
  background: var(--h-cyan) !important;
  color: var(--h-navy) !important;
  transform: translateY(-2px) !important;
}

/* ===== FOOTER (Modern Dark) ===== */

.footer {
  background: var(--h-navy) !important;
  color: rgba(255,255,255,.7) !important;
  padding: 64px 0 32px !important;
}
.footer h3 {
  color: var(--h-white) !important;
  font-family: var(--h-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  margin-bottom: 16px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid var(--h-blue) !important;
  display: inline-block !important;
}
.footer ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
}
.footer ul li { margin-bottom: 8px !important; }
.footer ul li a {
  color: rgba(255,255,255,.6) !important;
  font-size: 13px !important;
  text-decoration: none !important;
  transition: color .2s ease !important;
}
.footer ul li a:hover { color: var(--h-cyan) !important; }
.footer .social {
  color: rgba(255,255,255,.4) !important;
  transition: color .2s ease !important;
  margin-right: 8px !important;
}
.footer .social:hover { color: var(--h-white) !important; }

.footer-bottom {
  background: rgba(0,0,0,.3) !important;
  padding: 18px 0 !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  color: rgba(255,255,255,.4) !important;
}
.footer-bottom p {
  margin: 0 !important;
  font-size: 12px !important;
  color: rgba(255,255,255,.4) !important;
}
.footer-bottom .nav-pills > li > a {
  color: rgba(255,255,255,.4) !important;
  font-size: 12px !important;
  padding: 0 12px !important;
  background: none !important;
}
.footer-bottom .nav-pills > li > a:hover {
  color: var(--h-white) !important;
  background: none !important;
}

/* ===== OLD SECTION OVERRIDES (hmt_content, hmt_title, etc.) ===== */

.hmt_content,
.hmt_content2 {
  padding: 72px 0 56px !important;
  background: var(--h-white) !important;
}

.hmt_title1 {
  font-family: var(--h-font) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: var(--h-navy) !important;
  margin-bottom: 40px !important;
  text-align: center !important;
}

.hmt_icon {
  color: var(--h-blue) !important;
  margin-right: 8px !important;
}

.thumbnail {
  background: var(--h-white) !important;
  border: 1px solid var(--h-border) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: all .3s var(--h-ease) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.05) !important;
  margin-bottom: 24px !important;
}
.thumbnail:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,.1) !important;
  transform: translateY(-4px) !important;
}
.thumbnail img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
}
.thumbnail .caption {
  padding: 24px !important;
}
.thumbnail .caption h4 {
  font-family: var(--h-font) !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  color: var(--h-navy) !important;
}
.thumbnail .caption p {
  color: var(--h-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}
.thumbnail .btn-primary.banner {
  background: var(--h-blue) !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 10px 24px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  transition: all .3s ease !important;
}
.thumbnail .btn-primary.banner:hover {
  background: var(--h-cyan) !important;
  color: var(--h-navy) !important;
}

/* ===== SERVICE LINK in svc-card ===== */

.hmt-svc-link {
  display: inline-block;
  color: var(--h-blue);
  font-weight: 600;
  font-size: 14px;
  margin-top: 16px;
  text-decoration: none;
  transition: color .2s ease;
}
.hmt-svc-link:hover {
  color: var(--h-cyan);
  text-decoration: none;
}

/* ===== INNER PAGE HEADER (Dark override for all) ===== */

.header-inside {
  background: linear-gradient(135deg, var(--h-navy) 0%, #0c1322 60%, #131b36 100%) !important;
  min-height: 200px !important;
  display: flex !important;
  align-items: center !important;
  padding: 48px 0 !important;
  position: relative !important;
}
.header-inside::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-image:
    linear-gradient(rgba(255,255,255,.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px) !important;
  background-size: 48px 48px !important;
  pointer-events: none !important;
}
.headline-inside {
  color: var(--h-white) !important;
}
.headline-inside h1,
.headline-inside h2 {
  color: var(--h-white) !important;
  font-family: var(--h-font) !important;
  font-weight: 800 !important;
}

/* ===== SPACING RESETS ===== */

section.container.editable {
  padding: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

section[style*="padding-bottom: 80px"] {
  padding-bottom: 0px !important;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 991px) {
  .hmt_content2 { padding: 72px 0 56px !important; }
  .hmt-ai-banner { padding: 80px 0; }
  .hmt-ai-title { font-size: 32px; }
  .header-inside { min-height: 160px !important; padding: 36px 0 !important; }
  #form_send_mail .well { padding: 32px !important; }
}

@media (max-width: 767px) {
  .mega-menu > section.menu-list-items { padding: 0 12px !important; }

  .headline { min-height: 100vh !important; }
  .box { padding: 0 16px !important; }

  .hmt_content2 { padding: 56px 0 40px !important; }
  .hmt_title1 { font-size: 22px !important; }
  .hmt_content { padding: 56px 0 40px !important; }
  .hmt-ai-banner { padding: 56px 0; }
  .hmt-ai-title { font-size: 28px; }
  .footer { padding: 48px 0 24px !important; }

  .header-inside { min-height: 120px !important; padding: 28px 0 !important; }
  .hmt_content4 .breadcrumb { padding: 10px 16px !important; font-size: 11px !important; }
  #content-carousel .carousel-inner .item { min-height: 220px !important; }
  #content-carousel .header-image { min-height: 220px !important; }
  #form_send_mail .well { padding: 20px !important; }
  .about .table td { padding: 10px 12px !important; font-size: 13px !important; }
}
