/* ===================================================
   TECHNOVATION INTERNATIONAL MACHINES LIMITED
   Global WordPress / Elementor CSS
   Paste into: Appearance > Customize > Additional CSS
   =================================================== */

/* 1. GOOGLE FONTS */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800;900&family=Barlow:wght@300;400;500;600&family=Rajdhani:wght@400;500;600;700&display=swap');

/* 2. CSS DESIGN TOKENS */
:root {
  --timl-blue:   #003087;
  --timl-dark:   #001540;
  --timl-navy:   #00204a;
  --timl-orange: #f47920;
  --timl-amber:  #ffaa00;
  --timl-lblue:  #e6edf8;
  --timl-bg:     #f4f6fb;
  --timl-text:   #0d1b2a;
  --timl-muted:  #4a5c72;
  --timl-border: #dde4ef;
  --timl-H: 'Barlow Condensed', sans-serif;
  --timl-S: 'Rajdhani', sans-serif;
  --timl-B: 'Barlow', sans-serif;
  --timl-r: 8px;
  --timl-ease: 0.3s ease;
  --timl-shadow: 0 8px 40px rgba(0,48,135,.12);
}

/* 3. GLOBAL BODY / BASE */
body { font-family: var(--timl-B); color: var(--timl-text); }
img { max-width: 100%; }
a { transition: var(--timl-ease); }

/* 4. TYPOGRAPHY HELPERS — use these as Elementor CSS classes */
.timl-label {
  font-family: var(--timl-S);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--timl-orange);
  margin-bottom: 10px;
  display: block;
}
.timl-h1 {
  font-family: var(--timl-H);
  font-size: clamp(40px, 6vw, 80px);
  font-weight: 900;
  line-height: 1.0;
  text-transform: uppercase;
}
.timl-h2 {
  font-family: var(--timl-H);
  font-size: clamp(28px, 4vw, 52px);
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
}
.timl-accent { color: var(--timl-orange); }
.timl-muted  { color: var(--timl-muted);  }

/* 5. BUTTONS */
.timl-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--timl-S);
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .5px;
  padding: 13px 30px;
  border-radius: var(--timl-r);
  transition: var(--timl-ease);
  white-space: nowrap;
  text-decoration: none;
  border: 2px solid transparent;
  cursor: pointer;
}
.timl-btn-orange { background: var(--timl-orange); color: #fff; border-color: var(--timl-orange); }
.timl-btn-orange:hover { background: var(--timl-blue); border-color: var(--timl-blue); color: #fff; }
.timl-btn-blue { background: var(--timl-blue); color: #fff; border-color: var(--timl-blue); }
.timl-btn-blue:hover { background: var(--timl-orange); border-color: var(--timl-orange); color: #fff; }
.timl-btn-ghost { border-color: rgba(255,255,255,.6); color: #fff; background: transparent; }
.timl-btn-ghost:hover { background: rgba(255,255,255,.1); border-color: #fff; }
.timl-btn-wa { background: #25D366; color: #fff; border-color: #25D366; }
.timl-btn-wa:hover { background: #1da850; }
.timl-btn-sm { padding: 9px 18px; font-size: 13px; }

/* Elementor button override for brand style */
.elementor-button.elementor-size-sm  { font-family: var(--timl-S); font-weight: 700; letter-spacing: .5px; }
.elementor-button.elementor-size-md  { font-family: var(--timl-S); font-weight: 700; letter-spacing: .5px; }
.elementor-button.elementor-size-lg  { font-family: var(--timl-S); font-weight: 700; letter-spacing: .5px; }

/* 6. TOP BAR */
.timl-topbar { background: var(--timl-navy); padding: 7px 0; }
.timl-topbar .timl-tb-wrap { max-width: 1300px; margin: 0 auto; padding: 0 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
.timl-topbar a, .timl-topbar span { font-size: 12.5px; color: rgba(255,255,255,.65); display: inline-flex; align-items: center; gap: 6px; margin-right: 20px; text-decoration: none; }
.timl-topbar a:hover { color: var(--timl-orange); }

/* 7. NAVIGATION — WordPress menu + Custom Dropdown */
.e-header .elementor-nav-menu--main .elementor-item {
  font-family: var(--timl-S) !important;
  font-weight: 600 !important;
  font-size: 14.5px !important;
  color: var(--timl-text) !important;
}
.e-header .elementor-nav-menu--main .elementor-item:hover { color: var(--timl-orange) !important; }

/* WordPress default menu styling for Hello Elementor */
.site-header .main-navigation ul { display: flex; list-style: none; gap: 0; margin: 0; padding: 0; }
.site-header .main-navigation li { position: relative; }
.site-header .main-navigation li a { font-family: var(--timl-S); font-weight: 600; font-size: 14.5px; color: var(--timl-text); padding: 10px 13px; display: block; transition: var(--timl-ease); white-space: nowrap; text-decoration: none; }
.site-header .main-navigation li a:hover { color: var(--timl-orange); }

/* Dropdown */
.site-header .main-navigation ul ul { position: absolute; top: 100%; left: 0; background: #fff; min-width: 270px; box-shadow: 0 16px 48px rgba(0,48,135,.14); border-top: 3px solid var(--timl-orange); border-radius: 0 0 8px 8px; opacity: 0; visibility: hidden; transform: translateY(-8px); transition: var(--timl-ease); z-index: 888; }
.site-header .main-navigation li:hover > ul { opacity: 1; visibility: visible; transform: translateY(0); }
.site-header .main-navigation ul ul li a { padding: 10px 20px; font-size: 13.5px; color: var(--timl-muted); border-bottom: 1px solid var(--timl-border); }
.site-header .main-navigation ul ul li:last-child a { border-bottom: none; }
.site-header .main-navigation ul ul li a:hover { color: var(--timl-orange); background: var(--timl-lblue); padding-left: 26px; }
/* Sub-sub menu */
.site-header .main-navigation ul ul ul { top: 0; left: 100%; }

/* 8. HERO SECTION */
.timl-hero { position: relative; min-height: 80vh; display: flex; align-items: center; }
.timl-hero-overlay { position: absolute; inset: 0; background: linear-gradient(108deg, rgba(0,21,64,.88) 0%, rgba(0,21,64,.55) 46%, rgba(0,21,64,.18) 100%); }
.timl-hero-eyebrow { display: inline-flex; align-items: center; gap: 10px; background: var(--timl-orange); color: #fff; font-family: var(--timl-S); font-size: 12px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; padding: 5px 16px; border-radius: 3px; margin-bottom: 20px; }
.timl-stat-bar { background: rgba(0,20,58,.9); }
.timl-stat-bar .timl-stat-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.timl-stat-item { padding: 20px; text-align: center; border-right: 1px solid rgba(255,255,255,.08); }
.timl-stat-item:last-child { border-right: none; }
.timl-stat-n { font-family: var(--timl-H); font-size: 44px; font-weight: 900; color: var(--timl-orange); line-height: 1; }
.timl-stat-l { font-size: 11px; color: rgba(255,255,255,.65); text-transform: uppercase; letter-spacing: .5px; margin-top: 4px; }

/* 9. USP STRIP */
.timl-usp { background: var(--timl-orange); padding: 22px 0; }
.timl-usp .timl-usp-inner { max-width: 1300px; margin: 0 auto; padding: 0 28px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 14px; }
.timl-usp-item { display: flex; align-items: center; gap: 10px; color: #fff; font-family: var(--timl-S); font-size: 15px; font-weight: 600; }
.timl-usp-item svg { width: 20px; height: 20px; fill: #fff; opacity: .9; flex-shrink: 0; }

/* 10. SECTION HELPERS */
.timl-section { padding: 88px 0; }
.timl-section-gray { background: var(--timl-bg); }
.timl-section-dark { background: var(--timl-dark); }
.timl-sec-head { margin-bottom: 48px; }
.timl-sec-head.center { text-align: center; }

/* 11. PRODUCT CARDS */
.timl-prod-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(295px, 1fr)); gap: 26px; }
.timl-prod-card { background: #fff; border-radius: 14px; overflow: hidden; border: 1px solid var(--timl-border); box-shadow: 0 4px 20px rgba(0,48,135,.07); transition: var(--timl-ease); }
.timl-prod-card:hover { transform: translateY(-6px); box-shadow: 0 16px 48px rgba(0,48,135,.15); }
.timl-pc-img { height: 224px; overflow: hidden; position: relative; background: #eef1f9; }
.timl-pc-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.timl-prod-card:hover .timl-pc-img img { transform: scale(1.06); }
.timl-pc-badge { position: absolute; top: 14px; left: 14px; background: var(--timl-orange); color: #fff; font-family: var(--timl-S); font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; padding: 4px 10px; border-radius: 3px; }
.timl-pc-body { padding: 20px 22px; }
.timl-pc-cat { font-size: 11px; color: var(--timl-orange); font-family: var(--timl-S); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 7px; }
.timl-pc-title { font-family: var(--timl-H); font-size: 19px; font-weight: 800; text-transform: uppercase; color: var(--timl-text); line-height: 1.15; margin-bottom: 9px; }
.timl-pc-desc { font-size: 13.5px; color: var(--timl-muted); line-height: 1.65; margin-bottom: 14px; }
.timl-pc-foot { display: flex; gap: 9px; align-items: center; padding-top: 13px; border-top: 1px solid var(--timl-border); }
.timl-cat-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin: 32px 0 36px; }
.timl-c-tab { font-family: var(--timl-S); font-size: 13.5px; font-weight: 700; padding: 8px 20px; border-radius: 4px; border: 2px solid var(--timl-border); background: #fff; color: var(--timl-muted); transition: var(--timl-ease); cursor: pointer; }
.timl-c-tab:hover, .timl-c-tab.on { border-color: var(--timl-blue); background: var(--timl-blue); color: #fff; }
.hidden { display: none !important; }

/* 12. SERVICE CARDS */
.timl-svc-card { background: #fff; border-radius: 14px; padding: 34px 28px; border: 1px solid var(--timl-border); box-shadow: 0 4px 20px rgba(0,48,135,.06); transition: var(--timl-ease); position: relative; overflow: hidden; }
.timl-svc-card::before { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: var(--timl-orange); transform: scaleX(0); transition: var(--timl-ease); transform-origin: left; }
.timl-svc-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(244,121,32,.13); }
.timl-svc-card:hover::before { transform: scaleX(1); }
.timl-svc-icon { width: 62px; height: 62px; background: var(--timl-lblue); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 26px; margin-bottom: 20px; }
.timl-svc-title { font-family: var(--timl-H); font-size: 21px; font-weight: 800; text-transform: uppercase; color: var(--timl-text); margin-bottom: 10px; }
.timl-svc-desc { font-size: 14.5px; color: var(--timl-muted); line-height: 1.72; }

/* 13. WHY US CARDS */
.timl-why-card { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.09); border-radius: 14px; padding: 28px 22px; text-align: center; transition: var(--timl-ease); }
.timl-why-card:hover { background: rgba(255,255,255,.09); border-color: var(--timl-orange); transform: translateY(-4px); }
.timl-why-n { font-family: var(--timl-H); font-size: 50px; font-weight: 900; color: var(--timl-orange); line-height: 1; }
.timl-why-title { font-family: var(--timl-S); font-size: 15px; font-weight: 700; color: #fff; margin: 10px 0 8px; text-transform: uppercase; }
.timl-why-desc { font-size: 13px; color: rgba(255,255,255,.6); line-height: 1.65; }

/* 14. REVIEW CARDS */
.timl-rev-card { background: #fff; border-radius: 14px; padding: 26px; border: 1px solid var(--timl-border); box-shadow: 0 4px 20px rgba(0,48,135,.07); }
.timl-rev-stars { color: #fbbc04; font-size: 17px; letter-spacing: 2px; margin-bottom: 12px; }
.timl-rev-text { font-size: 14px; color: var(--timl-muted); line-height: 1.75; font-style: italic; margin-bottom: 16px; }
.timl-rev-author { display: flex; align-items: center; gap: 12px; }
.timl-rev-av { width: 42px; height: 42px; border-radius: 50%; background: var(--timl-blue); color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--timl-H); font-size: 17px; font-weight: 700; flex-shrink: 0; }
.timl-rev-name { font-family: var(--timl-S); font-size: 15px; font-weight: 700; color: var(--timl-text); }
.timl-rev-loc { font-size: 12px; color: #aab; }

/* 15. KNOWLEDGE BASE */
.timl-kb-wrap { position: relative; max-width: 640px; margin: 28px 0 32px; }
.timl-kb-input { width: 100%; padding: 15px 50px 15px 20px; font-size: 15px; font-family: var(--timl-B); border: 2px solid var(--timl-border); border-radius: var(--timl-r); outline: none; transition: var(--timl-ease); background: #fff; }
.timl-kb-input:focus { border-color: var(--timl-blue); }
.timl-kb-ico { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 18px; pointer-events: none; color: var(--timl-muted); }
.timl-kb-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 12px; }
.timl-kb-item { background: #fff; border: 1px solid var(--timl-border); border-radius: var(--timl-r); padding: 14px 18px; display: flex; align-items: flex-start; gap: 12px; cursor: pointer; transition: var(--timl-ease); }
.timl-kb-item:hover { border-color: var(--timl-orange); background: #fff8f2; }
.timl-kb-num { font-family: var(--timl-H); font-size: 15px; font-weight: 900; color: var(--timl-orange); min-width: 30px; flex-shrink: 0; }
.timl-kb-q { font-size: 13.5px; color: var(--timl-text); line-height: 1.55; }
.timl-kb-hidden { display: none !important; }

/* 16. CATALOG GRID */
.timl-cat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin-top: 24px; }
.timl-cat-btn { background: var(--timl-bg); border: 1.5px solid var(--timl-border); border-radius: var(--timl-r); padding: 14px 16px; text-align: left; transition: var(--timl-ease); font-family: var(--timl-S); font-size: 14px; font-weight: 600; color: var(--timl-text); display: flex; align-items: center; gap: 10px; cursor: pointer; width: 100%; }
.timl-cat-btn:hover { border-color: var(--timl-orange); background: #fff8f2; color: var(--timl-orange); }
.timl-cat-btn.featured { background: var(--timl-blue); border-color: var(--timl-blue); color: #fff; }
.timl-cat-btn.featured:hover { background: var(--timl-orange); border-color: var(--timl-orange); }

/* 17. CTA BAND */
.timl-cta-band { background: linear-gradient(135deg, var(--timl-dark) 0%, var(--timl-blue) 60%, #1a52c2 100%); padding: 80px 0; text-align: center; }
.timl-cta-band .timl-h2 { color: #fff; }
.timl-cta-band .timl-sub { color: rgba(255,255,255,.75); margin: 14px auto 36px; }
.timl-cta-actions { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; }

/* 18. CONTACT FORM */
.timl-c-info-item { display: flex; gap: 16px; margin-bottom: 26px; align-items: flex-start; }
.timl-c-info-icon { width: 46px; height: 46px; border-radius: 10px; background: var(--timl-lblue); display: flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; }
.timl-c-info-text h4 { font-family: var(--timl-S); font-size: 15px; font-weight: 700; color: var(--timl-text); margin-bottom: 4px; }
.timl-c-info-text p, .timl-c-info-text a { font-size: 14px; color: var(--timl-muted); line-height: 1.6; }
.timl-c-info-text a:hover { color: var(--timl-orange); }
.timl-form-box { background: #fff; border-radius: 16px; padding: 40px; box-shadow: var(--timl-shadow); border: 1px solid var(--timl-border); }

/* Contact Form 7 styling */
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=tel],
.wpcf7 input[type=url],
.wpcf7 input[type=file],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  padding: 11px 14px;
  border: 1.5px solid var(--timl-border);
  border-radius: var(--timl-r);
  font-size: 14.5px;
  font-family: var(--timl-B);
  outline: none;
  transition: var(--timl-ease);
  background: #fafbff;
  margin-bottom: 12px;
}
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus { border-color: var(--timl-blue); }
.wpcf7 label { display: block; font-size: 12px; font-weight: 700; color: var(--timl-text); margin-bottom: 4px; font-family: var(--timl-S); letter-spacing: .5px; text-transform: uppercase; }
.wpcf7 input[type=submit] {
  width: 100%;
  background: var(--timl-orange);
  color: #fff;
  border: none;
  border-radius: var(--timl-r);
  font-family: var(--timl-S);
  font-size: 16px;
  font-weight: 700;
  padding: 14px;
  transition: var(--timl-ease);
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
}
.wpcf7 input[type=submit]:hover { background: var(--timl-dark); }
.wpcf7-response-output { border-radius: var(--timl-r) !important; margin-top: 14px !important; font-size: 13px !important; }

/* 19. MODAL */
.timl-modal-bg { position: fixed; inset: 0; background: rgba(0,0,0,.6); z-index: 9999; display: none; align-items: center; justify-content: center; padding: 20px; }
.timl-modal-bg.open { display: flex; }
.timl-modal { background: #fff; border-radius: 16px; padding: 40px; max-width: 460px; width: 100%; box-shadow: 0 28px 80px rgba(0,0,0,.35); position: relative; animation: timlMIn .3s ease; }
@keyframes timlMIn { from { opacity: 0; transform: scale(.92); } to { opacity: 1; transform: scale(1); } }
.timl-modal-close { position: absolute; top: 14px; right: 18px; font-size: 22px; color: #aab; cursor: pointer; transition: var(--timl-ease); background: none; border: none; }
.timl-modal-close:hover { color: var(--timl-orange); }
.timl-modal-title { font-family: var(--timl-H); font-size: 24px; font-weight: 800; text-transform: uppercase; color: var(--timl-dark); margin-bottom: 6px; }
.timl-modal-sub { font-size: 13px; color: var(--timl-muted); margin-bottom: 22px; }
.timl-modal .timl-f-group { margin-bottom: 12px; }
.timl-modal label { display: block; font-size: 12px; font-weight: 700; color: var(--timl-text); margin-bottom: 4px; font-family: var(--timl-S); letter-spacing: .5px; text-transform: uppercase; }
.timl-modal input { width: 100%; padding: 11px 14px; border: 1.5px solid var(--timl-border); border-radius: var(--timl-r); font-size: 14.5px; font-family: var(--timl-B); outline: none; transition: var(--timl-ease); background: #fafbff; }
.timl-modal input:focus { border-color: var(--timl-blue); }
.timl-modal-submit { width: 100%; margin-top: 8px; background: var(--timl-orange); color: #fff; border: none; border-radius: var(--timl-r); font-family: var(--timl-S); font-size: 16px; font-weight: 700; padding: 14px; transition: var(--timl-ease); letter-spacing: 1px; text-transform: uppercase; cursor: pointer; }
.timl-modal-submit:hover { background: var(--timl-dark); }

/* 20. WHATSAPP FLOAT */
.timl-wa-float { position: fixed; bottom: 28px; right: 28px; width: 62px; height: 62px; border-radius: 50%; background: #25D366; display: flex; align-items: center; justify-content: center; z-index: 9998; box-shadow: 0 6px 28px rgba(37,211,102,.45); transition: var(--timl-ease); }
.timl-wa-float:hover { transform: scale(1.1); }
.timl-wa-float svg { width: 30px; height: 30px; fill: #fff; }
.timl-wa-pulse { position: absolute; inset: -5px; border-radius: 50%; border: 2px solid #25D366; opacity: 0; animation: timlWaPulse 2s ease-out infinite; }
@keyframes timlWaPulse { 0% { opacity: .7; transform: scale(1); } 100% { opacity: 0; transform: scale(1.45); } }

/* 21. SCROLL UP */
.timl-scroll-up { position: fixed; bottom: 104px; right: 30px; width: 44px; height: 44px; border-radius: 50%; background: var(--timl-blue); color: #fff; border: none; font-size: 18px; display: none; align-items: center; justify-content: center; box-shadow: 0 4px 16px rgba(0,48,135,.3); z-index: 9997; transition: var(--timl-ease); cursor: pointer; }
.timl-scroll-up:hover { background: var(--timl-orange); }
.timl-scroll-up.show { display: flex; }

/* 22. FOOTER */
.timl-footer { background: #080f1e; color: rgba(255,255,255,.65); }
.timl-footer-col-h { font-family: var(--timl-H); font-size: 16px; font-weight: 700; color: #fff; text-transform: uppercase; margin-bottom: 18px; padding-bottom: 8px; border-bottom: 2px solid var(--timl-orange); }
.timl-footer a { color: rgba(255,255,255,.65); text-decoration: none; transition: var(--timl-ease); }
.timl-footer a:hover { color: var(--timl-orange); }
.timl-cert { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: 3px; padding: 4px 11px; font-family: var(--timl-S); font-size: 11px; font-weight: 700; color: rgba(255,255,255,.6); display: inline-block; margin: 3px; }
.timl-footer-bottom { border-top: 1px solid rgba(255,255,255,.07); padding: 18px 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; font-size: 12.5px; }
.timl-footer-bottom a { color: var(--timl-orange); }

/* 23. CAREER PAGE */
.timl-role-card { background: #fff; border: 1px solid var(--timl-border); border-radius: 12px; padding: 24px; transition: var(--timl-ease); cursor: pointer; }
.timl-role-card:hover { border-color: var(--timl-orange); transform: translateY(-3px); box-shadow: 0 8px 28px rgba(244,121,32,.13); }
.timl-role-card.active { border-color: var(--timl-blue); background: var(--timl-lblue); }
.timl-role-title { font-family: var(--timl-H); font-size: 18px; font-weight: 800; text-transform: uppercase; color: var(--timl-text); margin-bottom: 6px; }
.timl-role-dept { font-size: 12px; color: var(--timl-orange); font-family: var(--timl-S); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 10px; }
.timl-role-desc { font-size: 13px; color: var(--timl-muted); line-height: 1.6; }
.timl-role-tag { display: inline-block; margin-top: 12px; margin-right: 4px; background: var(--timl-bg); border: 1px solid var(--timl-border); border-radius: 20px; padding: 3px 12px; font-size: 11px; font-family: var(--timl-S); font-weight: 700; color: var(--timl-muted); }

/* 24. AFTER-SALES */
.timl-amc-card { border-radius: 14px; padding: 36px 32px; border: 2px solid var(--timl-border); transition: var(--timl-ease); position: relative; }
.timl-amc-card.featured { background: linear-gradient(135deg, var(--timl-blue), #1a52c2); border-color: var(--timl-blue); color: #fff; }
.timl-amc-popular { position: absolute; top: -1px; right: 24px; background: var(--timl-orange); color: #fff; font-family: var(--timl-S); font-size: 11px; font-weight: 700; letter-spacing: 1px; padding: 5px 14px; border-radius: 0 0 6px 6px; text-transform: uppercase; }
.timl-amc-title { font-family: var(--timl-H); font-size: 26px; font-weight: 900; text-transform: uppercase; color: var(--timl-dark); margin-bottom: 8px; }
.timl-amc-card.featured .timl-amc-title { color: #fff; }
.timl-process-step { display: flex; gap: 20px; margin-bottom: 32px; align-items: flex-start; }
.timl-step-num { background: var(--timl-orange); color: #fff; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: var(--timl-H); font-size: 20px; font-weight: 900; flex-shrink: 0; }

/* 25. ELEMENTOR HEADING OVERRIDES */
.elementor-widget-heading .elementor-heading-title {
  font-family: var(--timl-H);
  font-weight: 900;
  text-transform: uppercase;
  line-height: 1.05;
}
.elementor-widget-heading .elementor-heading-title.orange { color: var(--timl-orange); }
.elementor-widget-text-editor { font-family: var(--timl-B); color: var(--timl-muted); line-height: 1.75; }

/* 26. MARQUEE */
.timl-marquee-wrap { overflow: hidden; }
.timl-marquee-inner { display: flex; gap: 56px; width: max-content; animation: timlScroll 28s linear infinite; align-items: center; }
.timl-marquee-inner img { height: 44px; width: auto; filter: grayscale(1); opacity: .55; transition: var(--timl-ease); }
.timl-marquee-inner img:hover { filter: none; opacity: 1; }
@keyframes timlScroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* 27. RESPONSIVE */
@media (max-width: 1060px) {
  .timl-stat-bar .timl-stat-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 768px) {
  .timl-topbar .timl-tb-left { display: none; }
  .timl-stat-bar .timl-stat-grid { grid-template-columns: repeat(2,1fr); }
  .timl-kb-grid { grid-template-columns: 1fr; }
  .timl-cat-grid { grid-template-columns: 1fr 1fr; }
  .timl-footer-bottom { flex-direction: column; text-align: center; }
}
@media (max-width: 480px) {
  .timl-cat-grid { grid-template-columns: 1fr; }
}
