:root {
  --tnc-orange: #f36a21;
  --tnc-orange-dark: #d94d08;
  --tnc-orange-soft: #fff1e8;
  --tnc-ink: #171717;
  --tnc-muted: #6f6a65;
  --tnc-paper: #fffdf9;
  --tnc-paper-alt: #f6f2ec;
  --tnc-line: rgba(23, 23, 23, 0.13);
  --tnc-white: #ffffff;
  --tnc-shadow: 0 24px 70px rgba(45, 27, 12, 0.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--tnc-paper);
  color: var(--tnc-ink);
  font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  overflow-x: hidden;
}
body.tnc-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
sub { font-size: .62em; }
.tnc-shell { width: min(1240px, calc(100% - 48px)); margin-inline: auto; }
.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.skip-link:focus { clip: auto !important; width: auto; height: auto; margin: 12px; padding: 10px 14px; background: var(--tnc-ink); color: #fff; z-index: 10000; }

/* Elementor reset */
.tnc-elementor-content { width: 100%; overflow: hidden; }
.tnc-elementor-content > .elementor { width: 100%; }
.elementor-page .site-main, .elementor-page .entry-content { margin: 0; padding: 0; max-width: none; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.tnc-section > .elementor-container,
.tnc-hero > .elementor-container,
.tnc-contact > .elementor-container,
.tnc-elementor-header > .elementor-container,
.tnc-elementor-footer > .elementor-container,
.tnc-elementor-footer-bottom > .elementor-container { width: min(1240px, calc(100% - 48px)); }

/* Global header */
.tnc-elementor-header,
.tnc-fallback-header {
  position: fixed !important;
  inset: 0 0 auto !important;
  z-index: 9999;
  padding: 14px 0 !important;
  background: rgba(255,253,249,.74);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid transparent;
  transition: padding .25s ease, background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tnc-elementor-header.tnc-is-scrolled,
.tnc-fallback-header.tnc-is-scrolled {
  padding: 8px 0 !important;
  background: rgba(255,253,249,.96);
  border-color: var(--tnc-line);
  box-shadow: 0 12px 34px rgba(35,25,17,.08);
}
.elementor-editor-active .tnc-elementor-header { position: relative !important; inset:auto !important; }
.tnc-elementor-header > .elementor-container { align-items: center; }
.tnc-elementor-header .elementor-column > .elementor-element-populated,
.tnc-elementor-header .elementor-widget-wrap,
.tnc-header-main-col > .elementor-element-populated { padding: 0 !important; }
.tnc-header-main-col,
.tnc-header-main-col .elementor-widget-container,
.tnc-header-main-col .elementor-widget { width: 100%; }
.tnc-editable-header-inner,
.tnc-fallback-header-inner {
  display: grid;
  grid-template-columns: minmax(170px, 285px) minmax(0, 1fr);
  align-items: center;
  gap: clamp(18px, 3vw, 44px);
  width: 100%;
}
.tnc-editable-logo,
.tnc-brand-image { display:inline-flex; align-items:center; min-width:0; }
.tnc-editable-logo img,
.tnc-brand-image img {
  display:block;
  width:245px;
  max-width:100%;
  height:auto;
  max-height:68px;
  object-fit:contain;
  object-position:left center;
}
.tnc-brand { display:inline-flex; align-items:center; white-space:nowrap; line-height:1; }
.tnc-brand-main { font-family:"Barlow",sans-serif; font-size:24px; font-weight:800; letter-spacing:-.06em; }
.tnc-brand-n { display:inline-grid; place-items:center; width:24px; height:24px; margin:0 6px; border-radius:50%; background:var(--tnc-orange); color:#fff; font-family:"Barlow",sans-serif; font-size:13px; font-weight:700; font-style:italic; }
.tnc-primary-nav,
.tnc-editable-nav {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:28px;
  min-width:0;
  font-size:13px;
  font-weight:750;
  letter-spacing:.01em;
}
.tnc-primary-nav > a:not(.tnc-header-wa) { position:relative; white-space:nowrap; }
.tnc-primary-nav > a:not(.tnc-header-wa)::after {
  content:"";
  position:absolute;
  left:0;
  bottom:-7px;
  width:100%;
  height:2px;
  border-radius:99px;
  background:var(--tnc-orange);
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .25s ease;
}
.tnc-primary-nav > a:not(.tnc-header-wa):hover::after { transform:scaleX(1); transform-origin:left; }
.tnc-header-wa {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:46px;
  padding:0 20px;
  border-radius:999px;
  background:#25d366;
  color:#fff;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  box-shadow:0 10px 24px rgba(37,211,102,.22);
  transition:transform .2s ease, filter .2s ease, box-shadow .2s ease;
}
.tnc-header-wa:hover { transform:translateY(-2px); filter:brightness(.94); box-shadow:0 14px 30px rgba(37,211,102,.3); color:#fff; }
.tnc-whatsapp-icon { width:19px; height:19px; flex:0 0 auto; }
.tnc-menu-toggle { display:none; border:0; background:transparent; padding:10px; cursor:pointer; }
.tnc-menu-toggle > span:not(.screen-reader-text) { display:block; width:25px; height:2px; margin:5px; border-radius:2px; background:var(--tnc-ink); transition:.2s ease; }
.tnc-floating-wa {
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:10000;
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:54px;
  padding:0 20px;
  border-radius:999px;
  background:linear-gradient(135deg,#25d366,#128c3f);
  color:#fff;
  font-size:13px;
  font-weight:800;
  box-shadow:0 16px 38px rgba(18,140,63,.35);
  transition:transform .2s ease, box-shadow .2s ease;
}
.tnc-floating-wa:hover { transform:translateY(-3px) scale(1.02); box-shadow:0 20px 44px rgba(18,140,63,.43); color:#fff; }
.elementor-editor-active .tnc-floating-wa { position:absolute; right:10px; bottom:-80px; }

/* Shared typography */
.tnc-hero-heading .elementor-heading-title,
.tnc-section-heading .elementor-heading-title,
.tnc-large-copy .elementor-heading-title,
.tnc-metric-number .elementor-heading-title,
.tnc-experience-title .elementor-heading-title,
.tnc-product-title .elementor-heading-title,
.tnc-stat-number .elementor-heading-title {
  font-family: "Barlow", sans-serif;
  color: var(--tnc-ink);
}
.tnc-hero-heading .elementor-heading-title { font-size: clamp(3.4rem, 6.3vw, 6.7rem); line-height: .98; font-weight: 700; letter-spacing: -.062em; }
.tnc-section-heading .elementor-heading-title { font-size: clamp(3rem, 5vw, 5.35rem); line-height: .98; font-weight: 700; letter-spacing: -.058em; }
.tnc-large-copy .elementor-heading-title { font-size: clamp(1.8rem, 3vw, 3rem); line-height: 1.14; font-weight: 500; letter-spacing: -.04em; }
.tnc-accent { color: var(--tnc-orange); }
.tnc-dark-accent { color: var(--tnc-ink); }
.tnc-heading-light .elementor-heading-title { color: #fff; }
.tnc-section-number { margin: 0; color: var(--tnc-orange-dark); font-family:"Barlow",sans-serif; font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.tnc-section-number-light { color: rgba(255,255,255,.7); }
.tnc-section-number-widget { margin-bottom: 24px !important; }
.tnc-section-side-copy { color: var(--tnc-muted); font-size: 15px; }
.tnc-body-copy { color: var(--tnc-muted); font-size: 17px; }

/* Buttons */
.tnc-button-primary .elementor-button,
.tnc-button-ghost .elementor-button,
.tnc-product-button .elementor-button {
  min-height: 55px; padding: 18px 28px; border-radius: 999px;
  font-family:"Barlow",sans-serif; font-size:14px; font-weight:800; letter-spacing:.02em;
  transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.tnc-button-primary .elementor-button { background:var(--tnc-orange); color:#fff; box-shadow:0 12px 30px rgba(243,106,33,.24); }
.tnc-button-primary .elementor-button:hover { transform:translateY(-3px); background:var(--tnc-orange-dark); }
.tnc-button-ghost .elementor-button { background:rgba(255,255,255,.55); color:var(--tnc-ink); border:1px solid var(--tnc-line); }
.tnc-button-ghost .elementor-button:hover { transform:translateY(-3px); border-color:var(--tnc-orange); color:var(--tnc-orange-dark); }
.tnc-button-row > .elementor-container { margin: 0; }
.tnc-button-row .elementor-column > .elementor-element-populated { padding: 0 10px 0 0; }

/* Hero */
.tnc-hero {
  position:relative;
  min-height:820px;
  padding:145px 0 78px !important;
  background:
    radial-gradient(circle at 85% 18%, rgba(243,106,33,.13), transparent 29%),
    linear-gradient(135deg,#fffdf9 0%,#fff9f2 52%,#f7efe5 100%);
  overflow:hidden;
}
.tnc-hero::before {
  content:"";
  position:absolute;
  left:43.5%;
  top:108px;
  bottom:70px;
  width:1px;
  background:linear-gradient(transparent,rgba(23,23,23,.12),transparent);
}
.tnc-hero::after {
  content:"";
  position:absolute;
  width:560px;
  height:560px;
  border-radius:50%;
  right:-240px;
  top:20px;
  background:rgba(243,106,33,.08);
}
.tnc-hero > .elementor-container { min-height:610px; align-items:center; position:relative; z-index:2; }
.tnc-hero-content > .elementor-element-populated {
  justify-content:center;
  padding:10px 38px 10px 0 !important;
}
.tnc-eyebrow { display:inline-flex; align-items:center; gap:10px; color:var(--tnc-orange-dark); font-family:"Barlow",sans-serif; font-size:11px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.tnc-eyebrow span { width:34px; height:1px; background:currentColor; }
.tnc-eyebrow-widget { margin-bottom:23px !important; }
.tnc-hero-heading { margin-bottom:24px !important; max-width:590px; }
.tnc-hero-heading .elementor-heading-title { font-size:clamp(3.15rem,5.1vw,5.15rem); line-height:1.005; letter-spacing:-.057em; text-wrap:balance; }
.tnc-hero-lead { max-width:560px; margin-bottom:29px !important; color:var(--tnc-muted); font-size:clamp(1rem,1.35vw,1.16rem); line-height:1.68; }
.tnc-button-row { max-width:570px; margin-bottom:36px; }
.tnc-button-row > .elementor-container { align-items:stretch; }
.tnc-button-row .elementor-column > .elementor-element-populated { height:100%; padding:0 10px 0 0 !important; }
.tnc-button-row .elementor-widget,
.tnc-button-row .elementor-widget-container,
.tnc-button-row .tnc-wa-widget-wrap { height:100%; }
.tnc-button-row .tnc-wa-widget,
.tnc-button-row .elementor-button { width:100%; min-height:56px; }
.tnc-hero-stats { max-width:590px; border-top:1px solid var(--tnc-line); }
.tnc-hero-stats > .elementor-container { margin:0; }
.tnc-stat-col > .elementor-element-populated { padding:21px 18px 0 0 !important; }
.tnc-stat-col + .tnc-stat-col > .elementor-element-populated { padding-left:18px !important; border-left:1px solid var(--tnc-line); }
.tnc-stat-number { margin:0 0 8px !important; }
.tnc-stat-number .elementor-heading-title { font-size:clamp(1.45rem,2vw,2rem); line-height:1; letter-spacing:-.04em; }
.tnc-stat-label { color:var(--tnc-muted); font-size:10px; font-weight:700; line-height:1.42; text-transform:uppercase; letter-spacing:.075em; }
.tnc-hero-image-col { position:relative; min-height:610px; }
.tnc-hero-image-col > .elementor-element-populated { justify-content:center; align-items:center; position:relative; padding:0 0 0 26px !important; }
.tnc-hero-image-col::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:4% -5% 4% 4%;
  border-radius:42px;
  background:var(--tnc-orange);
  transform:rotate(2.4deg);
  box-shadow:0 38px 100px rgba(243,106,33,.25);
}
.tnc-hero-image-col::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:8% 0 0 10%;
  border:1px solid rgba(255,255,255,.62);
  border-radius:36px;
  pointer-events:none;
}
.tnc-hero-product { position:relative; z-index:3; width:100%; }
.tnc-hero-product .elementor-widget-container { overflow:hidden; border-radius:34px; background:#161616; box-shadow:0 34px 80px rgba(31,19,10,.28); }
.tnc-hero-product img {
  display:block;
  width:100%;
  height:clamp(510px,42vw,610px);
  object-fit:cover;
  object-position:center;
  filter:contrast(1.035) saturate(1.03);
  transform:none;
  mix-blend-mode:normal;
}
.tnc-hero-badge {
  position:absolute;
  z-index:4;
  right:-12px;
  bottom:48px;
  width:158px;
  padding:17px 18px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:18px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(16px);
  box-shadow:var(--tnc-shadow);
  font-family:"Barlow",sans-serif;
  font-size:15px;
  font-weight:700;
  line-height:1.25;
}
.tnc-hero-badge span { display:block; margin-bottom:10px; color:var(--tnc-orange); font-size:11px; letter-spacing:.12em; }

/* Ticker */
.tnc-ticker { overflow:hidden; background:var(--tnc-ink); color:#fff; }
.tnc-ticker > .elementor-container { max-width:none !important; width:100% !important; }
.tnc-ticker .elementor-column > .elementor-element-populated { padding:0 !important; }
.tnc-ticker-track { display:flex; align-items:center; width:max-content; min-height:78px; animation:tncTicker 25s linear infinite; }
.tnc-ticker-track span { padding:0 36px; font-family:"Barlow",sans-serif; font-size:16px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; }
.tnc-ticker-track i { width:8px; height:8px; border-radius:50%; background:var(--tnc-orange); }
@keyframes tncTicker { to { transform:translateX(-50%); } }

/* Shared section spacing */
.tnc-section { position:relative; padding:clamp(105px,10vw,160px) 0 !important; }
.tnc-section > .elementor-container { align-items:center; }
.tnc-problem > .elementor-container, .tnc-solution > .elementor-container, .tnc-technical > .elementor-container, .tnc-contact > .elementor-container { align-items:center; }
.tnc-section-intro { margin-bottom:55px; }
.tnc-section-intro > .elementor-container { align-items:flex-end; }
.tnc-section-heading { max-width:760px; }

/* Problem */
.tnc-problem { background:var(--tnc-paper-alt); }
.tnc-problem-right > .elementor-element-populated { padding-left:40px !important; }
.tnc-large-copy { margin-bottom:32px !important; }
.tnc-number-list { margin:0 0 45px; padding:0; list-style:none; border-top:1px solid var(--tnc-line); }
.tnc-number-list li { display:grid; grid-template-columns:58px 1fr; padding:22px 0; border-bottom:1px solid var(--tnc-line); font-weight:600; }
.tnc-number-list span { color:var(--tnc-orange); font-family:"Barlow",sans-serif; font-size:12px; font-weight:800; letter-spacing:.12em; }
.tnc-problem-note { display:grid; grid-template-columns:170px 1fr; align-items:center; gap:28px; padding:28px; border-radius:18px; background:var(--tnc-orange); color:#fff; }
.tnc-problem-note strong { font-family:"Barlow",sans-serif; font-size:2rem; line-height:.92; letter-spacing:-.04em; }
.tnc-problem-note p { margin:0; color:rgba(255,255,255,.8); }

/* Solution */
.tnc-solution-image-col { position:relative; min-height:540px; }
.tnc-solution-image-col::before { content:""; position:absolute; inset:10% 7%; border:2px solid var(--tnc-orange); border-radius:40% 60% 55% 45% / 45% 45% 55% 55%; transform:rotate(-6deg); }
.tnc-solution-image-col > .elementor-element-populated { justify-content:center; position:relative; }
.tnc-solution-image { position:relative; z-index:2; }
.tnc-solution-image img { width:min(430px,85%); margin:auto; mix-blend-mode:multiply; filter:drop-shadow(0 30px 36px rgba(30,16,5,.18)); }
.tnc-solution-caption { position:absolute; z-index:3; left:25px; bottom:25px; margin:0; padding:12px 17px; border-radius:999px; background:var(--tnc-ink); color:#fff; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tnc-solution-content > .elementor-element-populated { padding-left:70px !important; }
.tnc-feature-lines { margin-top:35px; border-top:1px solid var(--tnc-line); }
.tnc-feature-lines > div { display:grid; grid-template-columns:55px 1fr; gap:15px; padding:22px 0; border-bottom:1px solid var(--tnc-line); }
.tnc-feature-lines span { color:var(--tnc-orange); font-family:"Barlow",sans-serif; font-size:12px; font-weight:800; letter-spacing:.12em; }
.tnc-feature-lines strong { font-family:"Barlow",sans-serif; font-size:1.2rem; line-height:1.25; }

/* Metrics */
.tnc-metrics { background:var(--tnc-paper); }
.tnc-metric-grid > .elementor-container { align-items:stretch; }
.tnc-metric-card > .elementor-element-populated { min-height:275px; padding:28px !important; border:1px solid var(--tnc-line); border-radius:20px; background:#fff; transition:.25s ease; }
.tnc-metric-card:hover > .elementor-element-populated { transform:translateY(-8px); border-color:rgba(243,106,33,.45); box-shadow:var(--tnc-shadow); }
.tnc-card-index { margin:0; color:var(--tnc-orange); font-family:"Barlow",sans-serif; font-size:12px; font-weight:800; letter-spacing:.13em; }
.tnc-card-index-widget { margin-bottom:auto !important; }
.tnc-metric-number { margin:55px 0 12px !important; }
.tnc-metric-number .elementor-heading-title { font-size:clamp(2.6rem,4vw,4.3rem); line-height:.9; letter-spacing:-.06em; }
.tnc-metric-label { color:var(--tnc-muted); font-size:13px; }

/* Experience */
.tnc-experience { background:var(--tnc-ink); color:#fff; }
.tnc-experience-grid { margin-top:55px; border-top:1px solid rgba(255,255,255,.28); border-bottom:1px solid rgba(255,255,255,.28); }
.tnc-experience-grid > .elementor-container { align-items:stretch; }
.tnc-experience-card > .elementor-element-populated { min-height:330px; padding:34px 28px !important; border-left:1px solid rgba(255,255,255,.18); }
.tnc-experience-card:first-child > .elementor-element-populated { border-left:0; }
.tnc-experience-title { margin-top:auto !important; margin-bottom:16px !important; }
.tnc-experience-title .elementor-heading-title { color:#fff; font-size:2rem; line-height:1.02; letter-spacing:-.04em; }
.tnc-experience-copy { color:rgba(255,255,255,.58); font-size:13px; }

/* Products */
.tnc-products { background:var(--tnc-paper); }
.tnc-product-grid > .elementor-container { align-items:stretch; }
.tnc-product-card > .elementor-element-populated { position:relative; min-height:520px; padding:18px 18px 26px !important; border-radius:22px; background:#fff; box-shadow:0 10px 40px rgba(45,27,12,.08); overflow:hidden; transition:.25s ease; }
.tnc-product-card:hover > .elementor-element-populated { transform:translateY(-8px); box-shadow:var(--tnc-shadow); }
.tnc-product-image { min-height:285px; display:flex; align-items:center; justify-content:center; border-radius:17px; background:var(--tnc-paper-alt); overflow:hidden; }
.tnc-product-image img { width:85%; max-height:250px; object-fit:contain; mix-blend-mode:multiply; transition:transform .35s ease; }
.tnc-product-card:hover .tnc-product-image img { transform:scale(1.06) rotate(-2deg); }
.tnc-product-index { position:absolute; top:29px; left:30px; z-index:3; display:grid; place-items:center; width:42px; height:42px; margin:0; border-radius:50%; background:var(--tnc-orange); color:#fff; font-family:"Barlow",sans-serif; font-size:12px; font-weight:800; }
.tnc-product-index-widget { margin:0 !important; }
.tnc-product-title { margin:24px 8px 5px !important; }
.tnc-product-title .elementor-heading-title { font-size:2.25rem; letter-spacing:-.035em; }
.tnc-product-copy { margin:0 8px 20px !important; color:var(--tnc-muted); }
.tnc-product-button { margin-top:auto; }
.tnc-product-button .elementor-button { width:100%; justify-content:space-between; padding:18px 8px 0; border-top:1px solid var(--tnc-line); border-radius:0; background:transparent; color:var(--tnc-ink); text-align:left; text-transform:uppercase; letter-spacing:.08em; font-size:12px; }
.tnc-product-button .elementor-button:hover { color:var(--tnc-orange); }

/* Technical */
.tnc-technical { background:var(--tnc-paper-alt); }
.tnc-technical-left > .elementor-element-populated { padding-right:75px !important; }
.tnc-technical-list { border-top:1px solid var(--tnc-line); }
.tnc-technical-list > div { display:grid; grid-template-columns:65px 1fr; padding:28px 0; border-bottom:1px solid var(--tnc-line); }
.tnc-technical-list > div > span { grid-row:span 2; color:var(--tnc-orange); font-family:"Barlow",sans-serif; font-size:12px; font-weight:800; letter-spacing:.12em; }
.tnc-technical-list strong { font-family:"Barlow",sans-serif; font-size:1.55rem; line-height:1.2; }
.tnc-technical-list p { margin:8px 0 0; color:var(--tnc-muted); font-size:14px; }

/* Showcase */
.tnc-showcase { background: linear-gradient(180deg, var(--tnc-paper-alt) 0%, #fff 100%); }
.tnc-showcase-cards > .elementor-container { align-items: stretch; }
.tnc-showcase-card > .elementor-element-populated {
  padding: 20px !important;
  border-radius: 34px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(23,23,23,.08);
  box-shadow: var(--tnc-shadow);
}
.tnc-showcase-image { margin-bottom: 18px !important; }
.tnc-showcase-image img {
  width: 100%;
  aspect-ratio: 5 / 4;
  object-fit: cover;
  border-radius: 24px;
}
.tnc-showcase-caption-widget {
  color: var(--tnc-ink);
  font-family: "Barlow", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -.01em;
}

/* Elementor WhatsApp button */
.tnc-wa-widget-wrap { line-height:1; }
.tnc-wa-widget {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:56px;
  padding:0 25px;
  border:1px solid transparent;
  border-radius:999px;
  font-family:"Barlow",sans-serif;
  font-size:14px;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
  box-shadow:0 12px 30px rgba(20,20,20,.12);
  transition:transform .2s ease, filter .2s ease, box-shadow .2s ease;
}
.tnc-wa-widget:hover { transform:translateY(-3px); filter:brightness(.96); color:inherit; box-shadow:0 17px 36px rgba(20,20,20,.18); }
.tnc-wa-green { background:#25d366; color:#fff; }
.tnc-wa-orange { background:var(--tnc-orange); color:#fff; }
.tnc-wa-dark { background:var(--tnc-ink); color:#fff; }
.tnc-wa-outline { background:transparent; color:var(--tnc-ink); border-color:var(--tnc-line); box-shadow:none; }
.tnc-contact-left .tnc-wa-widget-wrap { margin-top:28px; }
.tnc-contact-left .tnc-wa-widget { min-width:220px; }

/* Contact */
.tnc-contact { position:relative; padding:clamp(110px,11vw,170px) 0 !important; background:var(--tnc-orange); color:#fff; overflow:hidden; }
.tnc-contact::before { content:""; position:absolute; width:700px; height:700px; right:-210px; top:-240px; border-radius:50%; border:1px solid rgba(255,255,255,.2); box-shadow:0 0 0 90px rgba(255,255,255,.04),0 0 0 180px rgba(255,255,255,.025); }
.tnc-contact > .elementor-container { align-items:center; position:relative; }
.tnc-contact-left > .elementor-element-populated { padding-right:65px !important; }
.tnc-contact-copy { max-width:500px; color:rgba(255,255,255,.8); }
.tnc-contact-details { display:grid; gap:16px; margin-top:42px; }
.tnc-contact-details a,.tnc-contact-details div { display:block; color:#fff; font-family:"Barlow",sans-serif; font-size:1.25rem; font-weight:700; }
.tnc-contact-details span { display:block; margin-bottom:3px; color:rgba(255,255,255,.58); font-family:"Manrope",sans-serif; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.tnc-lead-form { padding:clamp(28px,4vw,50px); border:1px solid rgba(255,255,255,.26); border-radius:26px; background:rgba(24,24,24,.94); box-shadow:0 40px 90px rgba(83,30,0,.28); }
.tnc-form-row { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.tnc-lead-form label { display:block; margin-bottom:17px; color:rgba(255,255,255,.7); font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.tnc-lead-form input,.tnc-lead-form select,.tnc-lead-form textarea { width:100%; margin-top:8px; padding:14px 15px; border:1px solid rgba(255,255,255,.18); border-radius:12px; outline:0; background:rgba(255,255,255,.055); color:#fff; font-size:14px; font-weight:500; letter-spacing:0; text-transform:none; transition:.2s ease; }
.tnc-lead-form input::placeholder,.tnc-lead-form textarea::placeholder { color:rgba(255,255,255,.4); }
.tnc-lead-form select option { color:var(--tnc-ink); }
.tnc-lead-form input:focus,.tnc-lead-form select:focus,.tnc-lead-form textarea:focus { border-color:var(--tnc-orange); background:rgba(255,255,255,.09); }
.tnc-lead-form textarea { resize:vertical; }
.tnc-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:55px; padding:0 28px; border:0; border-radius:999px; font-family:"Barlow",sans-serif; font-size:14px; font-weight:800; cursor:pointer; transition:.2s ease; }
.tnc-button-light { width:100%; background:#fff; color:var(--tnc-ink); }
.tnc-button-light:hover { transform:translateY(-3px); background:#ffe7d8; }
.tnc-form-note { margin:14px 0 0; color:rgba(255,255,255,.45); font-size:11px; text-align:center; }

/* Footer */
.tnc-elementor-footer,
.tnc-elementor-footer-bottom,
.tnc-fallback-footer { background:var(--tnc-ink); color:#fff; }
.tnc-elementor-footer { padding:72px 0 50px !important; }
.tnc-elementor-footer .elementor-column > .elementor-element-populated { padding:0 20px !important; }
.tnc-elementor-footer .elementor-column:first-child > .elementor-element-populated { padding-left:0 !important; }
.tnc-brand-footer img { width:min(360px,100%); max-height:76px; object-fit:contain; object-position:left center; }
.tnc-footer-brand p { max-width:390px; margin:22px 0 0; color:rgba(255,255,255,.52); }
.tnc-footer-links { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.tnc-footer-links > span { margin-bottom:10px; color:rgba(255,255,255,.4); font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.tnc-footer-links a,.tnc-footer-links p { margin:0; color:rgba(255,255,255,.72); font-size:13px; }
.tnc-footer-links a:hover { color:var(--tnc-orange); }
.tnc-elementor-footer-bottom { padding:0 0 25px !important; }
.tnc-elementor-footer-bottom .elementor-column > .elementor-element-populated { padding:0 !important; }
.tnc-footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:24px; border-top:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.38); font-size:11px; text-transform:uppercase; letter-spacing:.11em; }
.tnc-fallback-footer { padding:72px 0 25px; }
.tnc-fallback-footer-grid { display:grid; grid-template-columns:1.6fr .7fr 1fr; gap:60px; padding-bottom:55px; }

/* Standard content */
.tnc-default-content { min-height:70vh; padding-top:170px; padding-bottom:100px; }
.tnc-default-content h1 { font-family:"Barlow",sans-serif; font-size:clamp(3rem,6vw,6rem); line-height:1; }

/* Motion */
.tnc-animate { opacity:0; transform:translateY(30px); transition:opacity .75s ease, transform .75s cubic-bezier(.2,.8,.2,1); }
.tnc-animate.tnc-visible { opacity:1; transform:none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

@media (max-width:1180px) {
  .tnc-section > .elementor-container,
  .tnc-hero > .elementor-container,
  .tnc-contact > .elementor-container,
  .tnc-elementor-header > .elementor-container,
  .tnc-elementor-footer > .elementor-container,
  .tnc-elementor-footer-bottom > .elementor-container { width:min(100% - 42px,1080px); }
  .tnc-editable-header-inner,.tnc-fallback-header-inner { grid-template-columns:minmax(165px,225px) minmax(0,1fr); gap:22px; }
  .tnc-editable-logo img,.tnc-brand-image img { max-width:225px; }
  .tnc-primary-nav,.tnc-editable-nav { gap:18px; font-size:12px; }
  .tnc-header-wa { padding-inline:16px; }
  .tnc-hero { min-height:760px; padding-top:135px !important; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(3rem,4.7vw,4.55rem); }
  .tnc-hero-image-col { min-height:555px; }
  .tnc-hero-product img { height:clamp(470px,46vw,555px); }
  .tnc-experience-card > .elementor-element-populated { min-height:350px; }
}

@media (max-width:1024px) {
  .tnc-section > .elementor-container,
  .tnc-hero > .elementor-container,
  .tnc-contact > .elementor-container,
  .tnc-elementor-header > .elementor-container,
  .tnc-elementor-footer > .elementor-container,
  .tnc-elementor-footer-bottom > .elementor-container { width:min(100% - 38px,940px); }
  .tnc-elementor-header,.tnc-fallback-header { padding:10px 0 !important; background:rgba(255,253,249,.96); border-color:var(--tnc-line); box-shadow:0 8px 28px rgba(35,25,17,.07); }
  .tnc-editable-header-inner,.tnc-fallback-header-inner { grid-template-columns:minmax(150px,215px) auto; }
  .tnc-editable-logo img,.tnc-brand-image img { max-width:210px; max-height:58px; }
  .tnc-menu-toggle { display:block; position:relative; z-index:10002; justify-self:end; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(2) { opacity:0; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
  .tnc-primary-nav,
  .tnc-editable-nav {
    position:fixed;
    inset:0;
    z-index:10001;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:24px !important;
    padding:105px 28px 46px;
    background:rgba(255,253,249,.985);
    backdrop-filter:blur(20px);
    transform:translateX(100%);
    opacity:0;
    visibility:hidden;
    transition:transform .3s ease,opacity .3s ease,visibility .3s ease;
    font-size:clamp(1.2rem,3vw,1.55rem);
  }
  .tnc-primary-nav.tnc-is-open { transform:none; opacity:1; visibility:visible; }
  .tnc-primary-nav > a:not(.tnc-header-wa)::after { bottom:-5px; }
  .tnc-header-wa { min-width:230px; min-height:52px; font-size:14px; }
  .tnc-hero { min-height:720px; padding-top:126px !important; }
  .tnc-hero::before { left:44%; }
  .tnc-hero-content > .elementor-element-populated { padding-right:28px !important; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.75rem,5vw,4rem); }
  .tnc-hero-lead { font-size:1rem; }
  .tnc-hero-image-col { min-height:500px; }
  .tnc-hero-image-col > .elementor-element-populated { padding-left:18px !important; }
  .tnc-hero-product img { height:490px; }
  .tnc-hero-badge { right:-5px; bottom:38px; }
  .tnc-metric-grid > .elementor-container,
  .tnc-experience-grid > .elementor-container,
  .tnc-product-grid > .elementor-container { flex-wrap:wrap; }
  .tnc-metric-card,.tnc-experience-card,.tnc-product-card { width:50% !important; }
  .tnc-experience-card:nth-child(3) > .elementor-element-populated { border-left:0; }
  .tnc-experience-card:nth-child(n+3) > .elementor-element-populated { border-top:1px solid rgba(255,255,255,.18); }
  .tnc-product-card { margin-bottom:18px; }
  .tnc-product-card > .elementor-element-populated { min-height:500px; }
}

@media (max-width:860px) {
  .tnc-section > .elementor-container,
  .tnc-hero > .elementor-container,
  .tnc-contact > .elementor-container,
  .tnc-elementor-header > .elementor-container,
  .tnc-elementor-footer > .elementor-container,
  .tnc-elementor-footer-bottom > .elementor-container { width:min(100% - 34px,760px); }
  .tnc-hero { min-height:auto; padding:128px 0 74px !important; }
  .tnc-hero::before { display:none; }
  .tnc-hero > .elementor-container,
  .tnc-problem > .elementor-container,
  .tnc-solution > .elementor-container,
  .tnc-technical > .elementor-container,
  .tnc-contact > .elementor-container { flex-direction:column; }
  .tnc-hero-content,.tnc-hero-image-col,
  .tnc-problem-left,.tnc-problem-right,
  .tnc-solution-image-col,.tnc-solution-content,
  .tnc-technical-left,.tnc-technical-right,
  .tnc-contact-left,.tnc-contact-right { width:100% !important; }
  .tnc-hero-content > .elementor-element-populated,
  .tnc-problem-right > .elementor-element-populated,
  .tnc-solution-content > .elementor-element-populated,
  .tnc-technical-left > .elementor-element-populated,
  .tnc-contact-left > .elementor-element-populated { padding-left:8px !important; padding-right:8px !important; }
  .tnc-hero-heading { max-width:680px; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(3.1rem,8vw,5rem); }
  .tnc-hero-lead,.tnc-button-row,.tnc-hero-stats { max-width:650px; }
  .tnc-hero-image-col { min-height:540px; margin-top:50px; }
  .tnc-hero-image-col > .elementor-element-populated { padding:0 8px !important; }
  .tnc-hero-image-col::before { inset:2% 0 2% 4%; }
  .tnc-hero-image-col::after { inset:7% 4% 0 9%; }
  .tnc-hero-product img { height:520px; }
  .tnc-hero-badge { right:4px; bottom:38px; }
  .tnc-section { padding:88px 0 !important; }
  .tnc-problem-right { margin-top:42px; }
  .tnc-solution-image-col { min-height:450px; margin-bottom:52px; }
  .tnc-solution-content > .elementor-element-populated { padding-top:0 !important; }
  .tnc-section-intro > .elementor-container { flex-direction:column; align-items:flex-start; }
  .tnc-section-intro .elementor-column { width:100% !important; }
  .tnc-section-side-copy { margin-top:14px; max-width:620px; }
  .tnc-technical-right,.tnc-contact-right { margin-top:50px; }
  .tnc-showcase-card > .elementor-element-populated { padding:15px !important; }
  .tnc-elementor-footer > .elementor-container { flex-wrap:wrap; }
  .tnc-elementor-footer .elementor-column { width:50% !important; }
  .tnc-elementor-footer .elementor-column:first-child { width:100% !important; margin-bottom:35px; }
  .tnc-fallback-footer-grid { grid-template-columns:1fr 1fr; }
  .tnc-fallback-footer-grid > div:first-child { grid-column:1/-1; }
}

@media (max-width:767px) {
  .tnc-section > .elementor-container,
  .tnc-hero > .elementor-container,
  .tnc-contact > .elementor-container,
  .tnc-elementor-header > .elementor-container,
  .tnc-elementor-footer > .elementor-container,
  .tnc-elementor-footer-bottom > .elementor-container { width:calc(100% - 28px); }
  .tnc-editable-header-inner,.tnc-fallback-header-inner { grid-template-columns:minmax(130px,180px) auto; gap:12px; }
  .tnc-editable-logo img,.tnc-brand-image img { max-width:175px; max-height:50px; }
  .tnc-hero { padding-top:116px !important; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.8rem,12vw,4.25rem); }
  .tnc-section-heading .elementor-heading-title { font-size:clamp(2.55rem,11vw,3.8rem); }
  .tnc-button-row > .elementor-container { flex-direction:column; }
  .tnc-button-row .elementor-column { width:100% !important; }
  .tnc-button-row .elementor-column > .elementor-element-populated { padding-right:0 !important; }
  .tnc-button-row .elementor-column + .elementor-column { margin-top:10px; }
  .tnc-button-primary .elementor-button,.tnc-button-ghost .elementor-button,.tnc-button-row .tnc-wa-widget { width:100%; }
  .tnc-hero-image-col { min-height:455px; }
  .tnc-hero-product img { height:440px; }
  .tnc-hero-badge { width:138px; padding:14px; font-size:13px; }
  .tnc-metric-card,.tnc-experience-card,.tnc-product-card,.tnc-showcase-card { width:100% !important; }
  .tnc-experience-card > .elementor-element-populated { min-height:270px; border-left:0; border-top:1px solid rgba(255,255,255,.18); }
  .tnc-experience-card:first-child > .elementor-element-populated { border-top:0; }
  .tnc-showcase-card + .tnc-showcase-card { margin-top:20px; }
  .tnc-showcase-image img { aspect-ratio:4 / 5; }
  .tnc-form-row { grid-template-columns:1fr; gap:0; }
  .tnc-contact-left .tnc-wa-widget { width:100%; }
  .tnc-elementor-footer .elementor-column { width:100% !important; margin-bottom:30px; }
  .tnc-footer-bottom { flex-direction:column; }
  .tnc-fallback-footer-grid { grid-template-columns:1fr; }
  .tnc-fallback-footer-grid > div:first-child { grid-column:auto; }
}

@media (max-width:560px) {
  .tnc-editable-logo img,.tnc-brand-image img { max-width:155px; max-height:44px; }
  .tnc-floating-wa { right:14px; bottom:14px; width:54px; height:54px; min-height:54px; padding:0; justify-content:center; }
  .tnc-floating-wa span { display:none; }
  .tnc-floating-wa .tnc-whatsapp-icon { width:24px; height:24px; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.55rem,13vw,3.65rem); }
  .tnc-hero-stats > .elementor-container { flex-wrap:wrap; }
  .tnc-stat-col { width:33.333% !important; }
  .tnc-stat-col > .elementor-element-populated { padding-right:7px !important; }
  .tnc-stat-col + .tnc-stat-col > .elementor-element-populated { padding-left:8px !important; }
  .tnc-stat-number .elementor-heading-title { font-size:1.35rem; }
  .tnc-stat-label { font-size:8px; letter-spacing:.045em; }
  .tnc-hero-image-col { min-height:385px; }
  .tnc-hero-image-col::before { inset:3% 0 2% 4%; border-radius:28px; }
  .tnc-hero-image-col::after { inset:8% 4% 0 10%; border-radius:24px; }
  .tnc-hero-product .elementor-widget-container { border-radius:25px; }
  .tnc-hero-product img { height:370px; }
  .tnc-hero-badge { right:0; bottom:24px; width:126px; }
  .tnc-problem-note { grid-template-columns:1fr; }
  .tnc-solution-image-col { min-height:365px; }
  .tnc-technical-list > div { grid-template-columns:45px 1fr; }
  .tnc-lead-form { border-radius:20px; }
  .tnc-footer-brand img,.tnc-brand-footer img { max-width:260px; max-height:60px; }
}


/* ==========================================================
   Elementor editing + alignment refinements (v2.2)
   ========================================================== */
.tnc-elementor-header > .elementor-container {
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:22px;
}
.tnc-header-brand-col { width:24% !important; }
.tnc-header-nav-col { width:58% !important; }
.tnc-header-wa-col { width:18% !important; }
.tnc-header-brand-col > .elementor-element-populated,
.tnc-header-nav-col > .elementor-element-populated,
.tnc-header-wa-col > .elementor-element-populated {
  padding:0 !important;
  align-items:center;
  justify-content:center;
}
.tnc-header-brand-col > .elementor-element-populated { align-items:flex-start; }
.tnc-header-nav-col > .elementor-element-populated,
.tnc-header-wa-col > .elementor-element-populated { align-items:flex-end; }
.tnc-header-logo-widget,
.tnc-header-menu-widget,
.tnc-header-whatsapp-widget { width:100%; margin:0 !important; }
.tnc-header-logo-widget .elementor-widget-container { display:flex; align-items:center; justify-content:flex-start; }
.tnc-editable-logo { display:block; width:100%; line-height:0; }
.tnc-editable-logo a { display:inline-block; line-height:0; }
.tnc-editable-logo img { display:block; height:auto; max-height:none; object-fit:contain; object-position:left center; }
.tnc-header-menu-widget .elementor-widget-container,
.tnc-editable-menu-wrap { display:flex; align-items:center; justify-content:flex-end; width:100%; }
.tnc-header-whatsapp-widget .elementor-widget-container,
.tnc-header-whatsapp-widget .tnc-wa-widget-wrap { display:flex; justify-content:flex-end; width:100%; }
.tnc-primary-nav { gap:24px; }
.tnc-primary-nav > a:not(.tnc-nav-cta) { color:var(--tnc-ink); }
.tnc-primary-nav > a:not(.tnc-nav-cta)::after { bottom:-6px; }
.tnc-nav-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 19px;
  border-radius:999px;
  background:var(--tnc-ink);
  color:#fff !important;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  transition:transform .2s ease, background .2s ease;
}
.tnc-nav-cta:hover { transform:translateY(-2px); background:var(--tnc-orange); }
.tnc-header-wa-col .tnc-wa-widget {
  min-height:44px;
  width:100%;
  padding:0 14px;
  font-size:12px;
  box-shadow:0 10px 24px rgba(37,211,102,.24);
}
.tnc-whatsapp-header .tnc-header-wa { width:100%; }

/* Make the first-fold visual dominant while keeping copy readable. */
.tnc-hero > .elementor-container { align-items:center; }
.tnc-hero-content > .elementor-element-populated {
  justify-content:center;
  padding:12px 28px 12px 0 !important;
}
.tnc-hero-heading { max-width:560px; }
.tnc-hero-heading .elementor-heading-title {
  font-size:clamp(3.05rem,4.8vw,5rem);
  line-height:1.01;
  text-wrap:balance;
}
.tnc-hero-lead,.tnc-button-row,.tnc-hero-stats { max-width:555px; }
.tnc-hero-image-col { min-height:630px; }
.tnc-hero-image-col > .elementor-element-populated { padding:0 0 0 18px !important; }
.tnc-hero-image-col::before { inset:2% -4% 2% 3%; }
.tnc-hero-image-col::after { inset:6% 0 1% 8%; }
.tnc-hero-product .elementor-widget-container { border-radius:38px; }
.tnc-hero-product img {
  width:100%;
  height:clamp(550px,45vw,650px);
  object-fit:cover;
  object-position:center center;
}
.tnc-hero-badge { right:-10px; bottom:34px; }

/* Consistent vertical alignment throughout the homepage. */
.tnc-problem > .elementor-container,
.tnc-solution > .elementor-container,
.tnc-technical > .elementor-container,
.tnc-contact > .elementor-container { align-items:center; }
.tnc-problem-left > .elementor-element-populated,
.tnc-solution-content > .elementor-element-populated,
.tnc-technical-left > .elementor-element-populated,
.tnc-contact-left > .elementor-element-populated { justify-content:center; }
.tnc-section-intro > .elementor-container { align-items:flex-end; }
.tnc-product-grid > .elementor-container,
.tnc-metric-grid > .elementor-container,
.tnc-experience-grid > .elementor-container,
.tnc-showcase-cards > .elementor-container { align-items:stretch; }
.tnc-product-card > .elementor-element-populated,
.tnc-metric-card > .elementor-element-populated,
.tnc-experience-card > .elementor-element-populated,
.tnc-showcase-card > .elementor-element-populated { height:100%; }
.tnc-product-image img { width:100%; height:235px; object-fit:contain; }
.tnc-showcase-image img { aspect-ratio:16 / 11; object-fit:cover; object-position:center; }

/* Custom Elementor WhatsApp widget. */
.tnc-wa-widget-wrap { width:100%; }
.tnc-wa-widget { color:#fff; }
.tnc-wa-widget svg { display:block; width:20px; height:20px; }
.tnc-whatsapp-inline .tnc-wa-widget { background:#25d366; color:#fff; }
.tnc-whatsapp-floating { width:auto; }
.tnc-whatsapp-floating .tnc-floating-wa { position:fixed; }
.elementor-editor-active .tnc-whatsapp-floating .tnc-floating-wa { position:relative; right:auto; bottom:auto; }

@media (max-width:1180px) {
  .tnc-elementor-header > .elementor-container { gap:16px; }
  .tnc-header-brand-col { width:23% !important; }
  .tnc-header-nav-col { width:59% !important; }
  .tnc-header-wa-col { width:18% !important; }
  .tnc-primary-nav { gap:16px !important; font-size:12px; }
  .tnc-nav-cta { padding-inline:15px; }
  .tnc-header-wa-col .tnc-wa-widget { padding-inline:10px; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.9rem,4.55vw,4.55rem); }
  .tnc-hero-image-col { min-height:565px; }
  .tnc-hero-product img { height:clamp(500px,45vw,580px); }
}

@media (max-width:1024px) {
  .tnc-elementor-header > .elementor-container { gap:10px; }
  .tnc-header-brand-col { width:68% !important; }
  .tnc-header-nav-col { width:32% !important; }
  .tnc-header-wa-col { display:none !important; }
  .tnc-header-nav-col > .elementor-element-populated { align-items:flex-end; }
  .tnc-editable-menu-wrap { justify-content:flex-end; }
  .tnc-primary-nav { font-size:clamp(1.15rem,3vw,1.45rem); }
  .tnc-nav-cta { min-width:220px; min-height:52px; font-size:14px; }
  .tnc-hero-content > .elementor-element-populated { padding-right:20px !important; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.75rem,5vw,4rem); }
  .tnc-hero-image-col { min-height:520px; }
  .tnc-hero-product img { height:510px; }
}

@media (max-width:860px) {
  .tnc-hero-content > .elementor-element-populated { padding:0 8px !important; }
  .tnc-hero-heading,.tnc-hero-lead,.tnc-button-row,.tnc-hero-stats { max-width:690px; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(3rem,8.4vw,4.8rem); }
  .tnc-hero-image-col { min-height:520px; margin-top:42px; }
  .tnc-hero-image-col > .elementor-element-populated { padding:0 5px !important; }
  .tnc-hero-product img { height:500px; }
  .tnc-problem-right > .elementor-element-populated,
  .tnc-solution-content > .elementor-element-populated,
  .tnc-technical-left > .elementor-element-populated,
  .tnc-contact-left > .elementor-element-populated { padding-left:8px !important; padding-right:8px !important; }
}

@media (max-width:767px) {
  .tnc-header-brand-col { width:72% !important; }
  .tnc-header-nav-col { width:28% !important; }
  .tnc-header-logo-widget .elementor-widget-container { justify-content:flex-start; }
  .tnc-hero { padding-top:112px !important; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.65rem,12vw,4rem); }
  .tnc-hero-image-col { min-height:430px; margin-top:35px; }
  .tnc-hero-product .elementor-widget-container { border-radius:27px; }
  .tnc-hero-product img { height:415px; }
  .tnc-hero-badge { right:0; bottom:20px; }
  .tnc-product-image img { height:220px; }
  .tnc-showcase-image img { aspect-ratio:4 / 3; }
}

@media (max-width:480px) {
  .tnc-elementor-header > .elementor-container { width:calc(100% - 22px); }
  .tnc-header-brand-col { width:75% !important; }
  .tnc-header-nav-col { width:25% !important; }
  .tnc-hero-heading .elementor-heading-title { font-size:clamp(2.42rem,12.8vw,3.45rem); }
  .tnc-hero-lead { font-size:.97rem; line-height:1.58; }
  .tnc-hero-image-col { min-height:345px; }
  .tnc-hero-product img { height:335px; }
  .tnc-hero-badge { width:118px; padding:12px; font-size:12px; }
  .tnc-stat-number .elementor-heading-title { font-size:1.23rem; }
  .tnc-stat-label { font-size:7.5px; }
}


/* ==========================================================
   Mobile menu reliability fix (v3.2)
   The menu is portaled to <body> on tablet/mobile by main.js,
   avoiding clipping and backdrop-filter containing-block issues.
   ========================================================== */
.tnc-menu-close { display:none; }
.tnc-mobile-menu-portal { display:contents; }

@media (max-width:1024px) {
  body.tnc-menu-open { overflow:hidden !important; overscroll-behavior:none; touch-action:none; }
  body.tnc-menu-open .tnc-floating-wa,
  body.tnc-menu-open .tnc-whatsapp-floating .tnc-floating-wa { opacity:0; visibility:hidden; pointer-events:none; }

  .tnc-elementor-header,
  .tnc-fallback-header {
    z-index:10030 !important;
    overflow:visible !important;
  }
  body.tnc-menu-open .tnc-elementor-header,
  body.tnc-menu-open .tnc-fallback-header {
    background:rgba(255,253,249,.98) !important;
    border-color:var(--tnc-line) !important;
    box-shadow:0 8px 28px rgba(35,25,17,.08) !important;
  }
  .tnc-elementor-header > .elementor-container,
  .tnc-elementor-header .elementor-column,
  .tnc-elementor-header .elementor-widget-wrap,
  .tnc-elementor-header .elementor-widget-container,
  .tnc-header-nav-col,
  .tnc-header-nav-col > .elementor-element-populated,
  .tnc-header-menu-widget,
  .tnc-editable-menu-wrap {
    overflow:visible !important;
  }

  .tnc-elementor-header > .elementor-container {
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }
  .tnc-header-brand-col {
    flex:1 1 auto !important;
    width:auto !important;
    max-width:calc(100% - 62px) !important;
    min-width:0 !important;
  }
  .tnc-header-nav-col {
    flex:0 0 52px !important;
    width:52px !important;
    max-width:52px !important;
    min-width:52px !important;
    position:relative !important;
    z-index:10040 !important;
  }
  .tnc-header-wa-col { display:none !important; }
  .tnc-header-menu-widget,
  .tnc-header-menu-widget .elementor-widget-container,
  .tnc-editable-menu-wrap {
    width:52px !important;
    min-width:52px !important;
    height:52px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }
  .tnc-floating-whatsapp-widget {
    position:absolute !important;
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  .tnc-menu-toggle {
    display:inline-flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    position:relative !important;
    z-index:10050 !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    margin:0 !important;
    padding:0 !important;
    border:1px solid rgba(23,23,23,.10) !important;
    border-radius:14px !important;
    background:#fff !important;
    color:var(--tnc-ink) !important;
    box-shadow:0 8px 24px rgba(35,25,17,.11) !important;
    cursor:pointer !important;
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
  }
  .tnc-menu-toggle:focus-visible {
    outline:3px solid rgba(243,106,33,.36) !important;
    outline-offset:2px !important;
  }
  .tnc-menu-toggle > span:not(.screen-reader-text) {
    position:absolute !important;
    left:11px !important;
    width:24px !important;
    height:2px !important;
    margin:0 !important;
    border-radius:99px !important;
    background:currentColor !important;
    transition:top .22s ease, transform .22s ease, opacity .18s ease !important;
  }
  .tnc-menu-toggle > span:nth-child(1) { top:15px !important; }
  .tnc-menu-toggle > span:nth-child(2) { top:22px !important; }
  .tnc-menu-toggle > span:nth-child(3) { top:29px !important; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(1) { top:22px !important; transform:rotate(45deg) !important; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(2) { opacity:0 !important; transform:scaleX(.35) !important; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(3) { top:22px !important; transform:rotate(-45deg) !important; }

  .tnc-mobile-menu-portal {
    display:block !important;
    position:relative !important;
    z-index:10020 !important;
    width:0 !important;
    height:0 !important;
  }
  .tnc-mobile-menu-portal .tnc-primary-nav,
  body > .tnc-primary-nav {
    position:fixed !important;
    inset:0 !important;
    z-index:10020 !important;
    width:100vw !important;
    height:100vh !important;
    height:100dvh !important;
    min-height:100vh !important;
    min-height:100dvh !important;
    margin:0 !important;
    padding:clamp(108px,16vh,150px) 24px 48px !important;
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:4px !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    background:rgba(255,253,249,.995) !important;
    background-image:radial-gradient(circle at 12% 12%,rgba(243,106,33,.10),transparent 34%) !important;
    backdrop-filter:none !important;
    transform:translate3d(100%,0,0) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:transform .32s cubic-bezier(.22,.8,.2,1), opacity .22s ease, visibility .32s ease !important;
    -webkit-overflow-scrolling:touch;
  }
  .tnc-mobile-menu-portal .tnc-primary-nav.tnc-is-open,
  body > .tnc-primary-nav.tnc-is-open {
    transform:translate3d(0,0,0) !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  .tnc-mobile-menu-portal .tnc-primary-nav > a,
  body > .tnc-primary-nav > a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:min(100%,360px) !important;
    min-height:54px !important;
    padding:12px 18px !important;
    border-bottom:1px solid rgba(23,23,23,.08) !important;
    color:var(--tnc-ink) !important;
    font-family:"Barlow",sans-serif !important;
    font-size:clamp(1.18rem,4.6vw,1.45rem) !important;
    font-weight:750 !important;
    line-height:1.15 !important;
    text-align:center !important;
    white-space:normal !important;
  }
  .tnc-mobile-menu-portal .tnc-primary-nav > a::after,
  body > .tnc-primary-nav > a::after { display:none !important; }
  .tnc-mobile-menu-portal .tnc-primary-nav .tnc-nav-cta,
  .tnc-mobile-menu-portal .tnc-primary-nav .tnc-header-wa,
  body > .tnc-primary-nav .tnc-nav-cta,
  body > .tnc-primary-nav .tnc-header-wa {
    width:min(100%,320px) !important;
    min-height:54px !important;
    margin-top:18px !important;
    padding:0 24px !important;
    border:0 !important;
    border-radius:999px !important;
    color:#fff !important;
    font-size:15px !important;
  }

  .tnc-menu-close {
    display:grid !important;
    place-items:center !important;
    position:absolute !important;
    top:82px !important;
    right:20px !important;
    width:42px !important;
    height:42px !important;
    padding:0 !important;
    border:1px solid rgba(23,23,23,.10) !important;
    border-radius:50% !important;
    background:#fff !important;
    color:var(--tnc-ink) !important;
    box-shadow:0 8px 24px rgba(35,25,17,.10) !important;
    cursor:pointer !important;
  }
  .tnc-menu-close span {
    position:absolute !important;
    width:19px !important;
    height:2px !important;
    border-radius:99px !important;
    background:currentColor !important;
  }
  .tnc-menu-close span:first-child { transform:rotate(45deg) !important; }
  .tnc-menu-close span:last-child { transform:rotate(-45deg) !important; }

  .admin-bar .tnc-mobile-menu-portal .tnc-primary-nav,
  .admin-bar body > .tnc-primary-nav {
    padding-top:calc(clamp(108px,16vh,150px) + 32px) !important;
  }
  .admin-bar .tnc-menu-close { top:114px !important; }
}

@media (max-width:782px) {
  .admin-bar .tnc-mobile-menu-portal .tnc-primary-nav,
  .admin-bar body > .tnc-primary-nav {
    padding-top:calc(clamp(108px,16vh,150px) + 46px) !important;
  }
  .admin-bar .tnc-menu-close { top:128px !important; }
}

@media (max-width:480px) {
  .tnc-editable-logo img,
  .tnc-brand-image img {
    width:auto !important;
    max-width:min(185px,calc(100vw - 96px)) !important;
    max-height:52px !important;
  }
  .tnc-mobile-menu-portal .tnc-primary-nav,
  body > .tnc-primary-nav {
    padding-left:18px !important;
    padding-right:18px !important;
  }
}


/* ==========================================================
   Header alignment + compact responsive spacing (v3.3)
   Keeps the hamburger in the top-right corner on every
   Elementor header structure and reduces excessive section gaps.
   ========================================================== */
@media (max-width:1024px) {
  .tnc-elementor-header,
  .tnc-fallback-header {
    min-height:72px !important;
    padding:7px 0 !important;
  }
  .tnc-elementor-header.tnc-is-scrolled,
  .tnc-fallback-header.tnc-is-scrolled {
    min-height:66px !important;
    padding:5px 0 !important;
  }

  .tnc-elementor-header > .elementor-container,
  .tnc-fallback-header-inner {
    position:relative !important;
    min-height:58px !important;
    width:calc(100% - 28px) !important;
    margin-inline:auto !important;
    padding:0 58px 0 0 !important;
    display:flex !important;
    flex-flow:row nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:0 !important;
  }

  .tnc-elementor-header .tnc-header-brand-col {
    position:relative !important;
    flex:1 1 auto !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
  }
  .tnc-elementor-header .tnc-header-brand-col > .elementor-element-populated,
  .tnc-elementor-header .tnc-header-logo-widget,
  .tnc-elementor-header .tnc-header-logo-widget .elementor-widget-container,
  .tnc-elementor-header .tnc-editable-logo {
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
  }
  .tnc-elementor-header .tnc-editable-logo img,
  .tnc-elementor-header .tnc-brand-image img,
  .tnc-fallback-header .tnc-brand-image img {
    width:auto !important;
    height:auto !important;
    max-width:min(255px,calc(100vw - 100px)) !important;
    max-height:54px !important;
    object-fit:contain !important;
    object-position:left center !important;
  }

  .tnc-elementor-header .tnc-header-nav-col {
    position:absolute !important;
    top:50% !important;
    right:0 !important;
    transform:translateY(-50%) !important;
    z-index:10040 !important;
    flex:0 0 48px !important;
    width:48px !important;
    max-width:48px !important;
    min-width:48px !important;
    height:48px !important;
    margin:0 !important;
  }
  .tnc-elementor-header .tnc-header-nav-col > .elementor-element-populated,
  .tnc-elementor-header .tnc-header-menu-widget,
  .tnc-elementor-header .tnc-header-menu-widget .elementor-widget-container,
  .tnc-elementor-header .tnc-editable-menu-wrap {
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .tnc-fallback-header .tnc-menu-toggle {
    position:absolute !important;
    top:50% !important;
    right:0 !important;
    transform:translateY(-50%) !important;
  }
  .tnc-menu-toggle {
    display:inline-flex !important;
    position:relative !important;
    top:auto !important;
    right:auto !important;
    flex:0 0 48px !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .tnc-menu-toggle > span:not(.screen-reader-text) {
    left:9px !important;
    width:30px !important;
    height:2px !important;
  }
  .tnc-menu-toggle > span:nth-child(1) { top:14px !important; }
  .tnc-menu-toggle > span:nth-child(2) { top:23px !important; }
  .tnc-menu-toggle > span:nth-child(3) { top:32px !important; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(1) { top:23px !important; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(3) { top:23px !important; }

  /* Compact tablet spacing. */
  .tnc-section { padding:72px 0 !important; }
  .tnc-section-intro { margin-bottom:38px !important; }
  .tnc-section-number-widget { margin-bottom:16px !important; }
  .tnc-contact { padding:76px 0 !important; }
  .tnc-elementor-footer { padding:56px 0 38px !important; }
}

@media (max-width:767px) {
  .tnc-elementor-header,
  .tnc-fallback-header {
    min-height:68px !important;
    padding:5px 0 !important;
  }
  .tnc-elementor-header > .elementor-container,
  .tnc-fallback-header-inner {
    width:calc(100% - 24px) !important;
    min-height:58px !important;
    padding-right:54px !important;
  }
  .tnc-elementor-header .tnc-editable-logo img,
  .tnc-elementor-header .tnc-brand-image img,
  .tnc-fallback-header .tnc-brand-image img {
    max-width:min(245px,calc(100vw - 92px)) !important;
    max-height:50px !important;
  }

  .tnc-hero {
    min-height:0 !important;
    padding:88px 0 48px !important;
  }
  .tnc-hero > .elementor-container { min-height:0 !important; }
  .tnc-hero-content > .elementor-element-populated { padding:0 2px !important; }
  .tnc-eyebrow-widget { margin-bottom:16px !important; }
  .tnc-hero-heading { margin-bottom:18px !important; }
  .tnc-hero-lead { margin-bottom:22px !important; }
  .tnc-button-row { margin-bottom:28px !important; }
  .tnc-hero-image-col {
    min-height:380px !important;
    margin-top:26px !important;
  }
  .tnc-hero-product img { height:365px !important; }

  .tnc-section { padding:56px 0 !important; }
  .tnc-section-intro { margin-bottom:30px !important; }
  .tnc-section-number-widget { margin-bottom:13px !important; }
  .tnc-problem-right,
  .tnc-contact-right { margin-top:32px !important; }
  .tnc-solution-image-col { margin-bottom:34px !important; }
  .tnc-contact { padding:58px 0 !important; }
  .tnc-elementor-footer { padding:48px 0 28px !important; }
  .tnc-elementor-footer-bottom { padding-bottom:18px !important; }
}

@media (max-width:480px) {
  .tnc-elementor-header > .elementor-container,
  .tnc-fallback-header-inner {
    width:calc(100% - 20px) !important;
    padding-right:50px !important;
  }
  .tnc-elementor-header .tnc-editable-logo img,
  .tnc-elementor-header .tnc-brand-image img,
  .tnc-fallback-header .tnc-brand-image img {
    max-width:min(230px,calc(100vw - 82px)) !important;
    max-height:47px !important;
  }
  .tnc-elementor-header .tnc-header-nav-col {
    right:0 !important;
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    height:44px !important;
  }
  .tnc-elementor-header .tnc-header-nav-col > .elementor-element-populated,
  .tnc-elementor-header .tnc-header-menu-widget,
  .tnc-elementor-header .tnc-header-menu-widget .elementor-widget-container,
  .tnc-elementor-header .tnc-editable-menu-wrap,
  .tnc-menu-toggle {
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
  }
  .tnc-menu-toggle > span:not(.screen-reader-text) {
    left:8px !important;
    width:28px !important;
  }
  .tnc-menu-toggle > span:nth-child(1) { top:12px !important; }
  .tnc-menu-toggle > span:nth-child(2) { top:21px !important; }
  .tnc-menu-toggle > span:nth-child(3) { top:30px !important; }
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(1),
  .tnc-menu-toggle[aria-expanded="true"] > span:nth-child(3) { top:21px !important; }

  .tnc-hero { padding:82px 0 42px !important; }
  .tnc-hero-image-col { min-height:330px !important; margin-top:22px !important; }
  .tnc-hero-product img { height:315px !important; }
  .tnc-section { padding:48px 0 !important; }
  .tnc-section-intro { margin-bottom:26px !important; }
  .tnc-contact { padding:50px 0 !important; }
}
