@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Nunito:ital,wght@0,400;0,600;0,700;0,800;1,400&display=swap');

:root {
  --tn-ink: #2c2218;
  --tn-night: #2c2218;
  --tn-cream: #fff8f0;
  --tn-paper: #ffffff;
  --tn-peach: #ffe4c4;
  --tn-mute: #7a6a58;
  --tn-ember: #ff8a00;
  --tn-ember-deep: #e67300;
  --tn-coral: #ff6b4a;
  --tn-sun: #ffc53d;
  --tn-sky: #2ec4b6;
  --tn-ease: cubic-bezier(.22, 1, .36, 1);
  --tn-display: 'Bebas Neue', 'Arial Narrow', Impact, sans-serif;
  --tn-sans: 'Nunito', sans-serif;
  --tn-shadow: 0 18px 40px rgba(255, 138, 0, 0.14);
  --main-color: #ff8a00;
  --bright-color: #ff8a00;
  --brighter-color: #e67300;
  --dark-color: #2c2218;
  --darkter-color: #1f1812;
  --grey-color: #7a6a58;
  --lightgrey-color: #ead9c4;
  --black-color: #2c2218;
  --darkgrey-color: #7a6a58;
  --border-color: #f0dcc4;
  --header-background-color: #fff8f0;
  --header-background-image: none;
  --top-background-color: #fff8f0;
  --headbar-background-color: #fff8f0;
  --header-text-color: #2c2218;
  --header-text-shadow: none;
  --header-text-filter: none;
  --logo-filter: none;
  --logo-max-width: 158px;
  --logo-max-height: 48px;
  --logo-menu-max-width: 132px;
  --logo-menu-max-height: 40px;
  --body-backcolor: #fff8f0;
  --menu-backcolor: transparent;
  --menu-color: #2c2218;
  --menu-bordercolor: transparent;
  --menu-selcolor: #fff8f0;
  --menu-selbackcolor: #ff8a00;
  --menu-submenu-background: #ffffff;
  --menu-submenu-shadow: 0 18px 40px rgba(44, 34, 24, 0.12);
  --breadcrumb-color: #7a6a58;
  --breadcrumb-color-hover: #ff8a00;
  --footer-backcolor: #fff1df;
  --footer-color: #2c2218;
  --footer-colorhover: #ff8a00;
  --powered-backcolor: #ffe8c8;
  --powered-color: #7a6a58;
  --links-color: #2c2218;
  --links-hover-color: #ff8a00;
  --buttons-backcolor: #ff8a00;
  --buttons-color: #ffffff;
  --buttons-bordercolor: #ff8a00;
  --buttons-hoverbackcolor: #ff9d1f;
  --buttons-hovercolor: #ffffff;
  --font-family: 'Nunito', sans-serif;
  --header-font-family: 'Nunito', sans-serif;
}

html { scroll-behavior: smooth; }

body,
#content,
#common-home,
#information-information,
#information-contact {
  font-family: var(--tn-sans);
  color: var(--tn-ink);
  background: var(--tn-cream);
}

body {
  background-image:
    radial-gradient(920px 420px at 92% -8%, rgba(255, 197, 61, 0.28), transparent 60%),
    radial-gradient(720px 360px at -8% 18%, rgba(255, 138, 0, 0.12), transparent 58%);
}

#top,
header,
#menu,
#menu .navbar,
.navbar-header {
  background: rgba(255, 248, 240, 0.9) !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: blur(16px);
}

body.tn-home header,
body:has([data-tn-home]) header {
  padding-top: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: visible;
  background: transparent !important;
  backdrop-filter: none !important;
}

body.tn-home #common-home,
body:has([data-tn-home]) #common-home,
body.tn-home .tn-hero,
body:has([data-tn-home]) .tn-hero {
  margin-top: 0;
}

body.tn-home:not(.tn-header-solid) #top,
body.tn-home:not(.tn-header-solid) header,
body.tn-home:not(.tn-header-solid) #menu,
body.tn-home:not(.tn-header-solid) #menu .navbar,
body.tn-home:not(.tn-header-solid) .navbar-header,
body:has([data-tn-home]):not(.tn-header-solid) #top,
body:has([data-tn-home]):not(.tn-header-solid) header,
body:has([data-tn-home]):not(.tn-header-solid) #menu,
body:has([data-tn-home]):not(.tn-header-solid) #menu .navbar,
body:has([data-tn-home]):not(.tn-header-solid) .navbar-header {
  background: rgba(255, 248, 240, 0.72) !important;
  backdrop-filter: blur(14px);
  border-color: transparent !important;
  box-shadow: none !important;
}

body.tn-home.tn-header-solid #top,
body.tn-home.tn-header-solid header,
body.tn-home.tn-header-solid #menu,
body.tn-home.tn-header-solid #menu .navbar,
body.tn-home.tn-header-solid .navbar-header {
  background: rgba(255, 248, 240, 0.94) !important;
  backdrop-filter: blur(16px);
  box-shadow: 0 8px 24px rgba(255, 138, 0, 0.08) !important;
}

#top { border-bottom: 1px solid rgba(255, 138, 0, 0.12); }

body.tn-home:not(.tn-header-solid) #top,
body:has([data-tn-home]):not(.tn-header-solid) #top {
  border-bottom: 0 !important;
}

#menu .nav > li > a,
#menu .navbar-nav > li > a,
#menu .nav > li > a span,
#tmdheader .nav > li > a {
  font-family: var(--tn-sans);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 13px;
  color: var(--tn-ink) !important;
}

#menu .nav > li > a:hover,
#tmdheader .nav > li > a:hover {
  color: var(--tn-ember) !important;
}

#logo > a > img { filter: none !important; }

#common-home .breadcrumb,
#information-information > .breadcrumb,
#information-contact > .breadcrumb,
#information-information > .row > #content > h1,
#information-contact > .row > #content > h1,
#common-home > h1,
footer .powered .tendeo,
footer .box.information li a[href*="sitemap"],
footer .box.information li a[href*="sitemap"],
footer .subscription-container,
footer .box.contact li a[href*="newsletter"],
footer .box.contact li a[href*="newsletter"],
footer li a[href*="information/sitemap"],
footer li a[href*="account/newsletter"],
footer li a[href*="information/contact"] + li,
footer .box.contact li:nth-child(2),
footer .box.payment-methods,
footer .box.shipping-methods,
.preloader,
#preloader,
.preloader-wrapper {
  display: none !important;
}

#common-home,
#information-information,
#information-contact {
  padding-left: 0;
  padding-right: 0;
}

#common-home > .row,
#information-information > .row,
#information-contact > .row { margin: 0; }

#common-home #content,
#information-information #content,
#information-contact #content {
  padding: 0;
  width: 100%;
}

footer {
  background: #fff1df;
  color: var(--tn-ink);
  border-top: 4px solid var(--tn-ember);
}

footer a,
footer li {
  color: var(--tn-ink);
}

footer a:hover,
footer li a:hover {
  color: var(--tn-ember);
}

footer ul li {
  border-bottom-color: rgba(255, 138, 0, 0.16);
}

footer .box h5 {
  font-family: var(--tn-display);
  letter-spacing: 0.08em;
  font-size: 22px;
  color: var(--tn-ember);
}

footer .box svg,
footer .box .icon,
footer .contact ul li i,
footer .information ul li i {
  fill: var(--tn-ink);
  color: var(--tn-ink);
}

footer .box a:hover svg,
footer .box a:hover .icon,
footer .contact ul li:has(a:hover) svg,
footer .information ul li:has(a:hover) svg {
  fill: var(--tn-ember);
  color: var(--tn-ember);
}

footer .contact ul li:has(a:hover),
footer .information ul li:has(a:hover) {
  background-color: rgba(255, 138, 0, 0.08);
}

footer .powered { background: #ffe8c8; color: var(--tn-mute); }

/* Theme always prints this wrapper; without payment/shipping/social it is only whitespace. */
footer .container-fluid .row .box-container:not(:has(.box)) {
  display: none !important;
}

footer .container-fluid .row > .box.information,
footer .container-fluid .row > .box.contact {
  flex: 1 1 320px;
}

footer .box.information li:has(a[href*="sitemap"]) {
  display: none !important;
}

footer .powered {
  justify-content: center;
}

footer .powered .copyright {
  justify-content: center;
  padding-right: 0;
  text-align: center;
}

.tn-legal {
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
  padding: 20px 0 8px;
  font-family: var(--tn-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--tn-mute);
}

.tn-legal p { margin: 0 0 6px; }

.tn-legal a {
  color: var(--tn-ink);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.tn-legal a:hover { color: var(--tn-ember-deep); }

.tn-legal-inline {
  margin-top: 18px;
  max-width: 42rem;
  font-size: 14px;
  color: var(--tn-mute);
}

.tn {
  font-family: var(--tn-sans);
  color: var(--tn-ink);
  line-height: 1.65;
  position: relative;
}

.tn *,
.tn *::before,
.tn *::after { box-sizing: border-box; }

.tn a { color: inherit; }
.tn img { max-width: 100%; height: auto; display: block; }

.tn-wrap {
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.tn-kicker {
  display: inline-block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--tn-ember);
  margin: 0 0 16px;
}

.tn h1,
.tn h2,
.tn h3 {
  font-family: var(--tn-display);
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 0.88;
  margin: 0 0 18px;
  color: var(--tn-ink) !important;
  text-transform: uppercase;
}

.tn h1 { font-size: clamp(40px, 6vw, 80px); line-height: 0.95; }
.tn h2 { font-size: clamp(34px, 4.5vw, 60px); }
.tn h3 { font-size: clamp(24px, 2.6vw, 34px); }

.tn p { margin: 0 0 14px; }

.tn-lead {
  font-size: clamp(17px, 1.8vw, 21px);
  max-width: 38ch;
  color: var(--tn-mute);
}

.tn-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.tn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 24px;
  font-family: var(--tn-sans);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none !important;
  border-radius: 999px;
  border: 1px solid transparent;
  transition: transform 0.35s var(--tn-ease), background 0.35s var(--tn-ease), box-shadow 0.35s var(--tn-ease);
}

.tn-btn:hover { transform: translateY(-3px); }

.tn-btn-ember {
  background: var(--tn-ember);
  color: #fff !important;
  box-shadow: 0 12px 28px rgba(255, 138, 0, 0.38);
}

.tn-btn-ember:hover { background: #ff9d1f; }

.tn-btn-ghost {
  background: #fff;
  color: var(--tn-ink) !important;
  border-color: rgba(255, 138, 0, 0.35);
}

.tn-btn-ghost:hover {
  background: #fff4e4;
  border-color: var(--tn-ember);
}

.tn-device {
  background: #fff;
  border: 1px solid rgba(255, 138, 0, 0.16);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--tn-shadow);
  margin: 0;
}

.tn-device img {
  width: 100%;
  height: auto;
  display: block;
}

.tn-device-bar {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 28px;
  padding: 0 12px;
  background: #fff4e6;
  border-bottom: 1px solid rgba(255, 138, 0, 0.1);
}

.tn-device-bar i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ead9c4;
}

.tn-device-bar i:nth-child(1) { background: #ff5f57; }
.tn-device-bar i:nth-child(2) { background: #febc2e; }
.tn-device-bar i:nth-child(3) { background: #28c840; }

.tn-device-bar em {
  margin-left: 10px;
  font-style: normal;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--tn-mute);
}

.tn-device-lite { background: #fffdf8; }
.tn-device-lite .tn-device-bar { background: #fff0d8; }

.tn-grain {
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 3;
  opacity: 0.05;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.tn-hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #fff8f0;
}

.tn-hero::before,
.tn-hero::after {
  content: '';
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
}

.tn-hero::before {
  width: 540px;
  height: 540px;
  right: -90px;
  top: -140px;
  background: radial-gradient(circle, rgba(255, 197, 61, 0.46), transparent 68%);
}

.tn-hero::after {
  width: 340px;
  height: 340px;
  left: -80px;
  bottom: 8%;
  background: radial-gradient(circle, rgba(46, 196, 182, 0.2), transparent 70%);
}

.tn-hero-bg,
.tn-platform-bg,
.tn-cta-bg,
.tn-page-hero-bg,
.tn-feature-bleed {
  position: absolute;
  inset: -12%;
  z-index: 0;
  will-change: transform;
}

.tn-hero-bg img,
.tn-platform-bg img,
.tn-cta-bg img,
.tn-page-hero-bg img,
.tn-feature-bleed img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.12) contrast(1.02);
}

.tn-hero-shade,
.tn-platform-shade,
.tn-cta-shade,
.tn-page-hero-shade {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.tn-hero-shade {
  background:
    linear-gradient(90deg, rgba(255, 248, 240, 0.96) 0%, rgba(255, 248, 240, 0.78) 46%, rgba(255, 248, 240, 0.22) 100%),
    linear-gradient(180deg, rgba(255, 197, 61, 0.12) 0%, transparent 42%);
}

.tn-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: center;
  padding: 120px 0 80px;
}

.tn-hero-stack {
  position: relative;
  min-height: 460px;
}

.tn-device-a,
.tn-device-b,
.tn-device-c {
  position: absolute;
  will-change: transform;
}

.tn-device-a {
  width: 78%;
  top: 8%;
  left: 0;
  z-index: 2;
  transform: rotate(-6deg);
}

.tn-device-b {
  width: 62%;
  top: 0;
  right: 0;
  z-index: 3;
  transform: rotate(7deg);
}

.tn-device-c {
  width: 54%;
  bottom: 0;
  left: 18%;
  z-index: 1;
  transform: rotate(3deg);
}

.tn-hero-scroll {
  position: absolute;
  bottom: 24px;
  left: 50%;
  z-index: 4;
  transform: translateX(-50%);
  font-size: 11px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--tn-mute);
}

.tn-hero-scroll::after {
  content: '';
  display: block;
  width: 1px;
  height: 36px;
  margin: 8px auto 0;
  background: linear-gradient(var(--tn-ember), transparent);
}

.tn-band { padding: 88px 0 72px; }
.tn-band-night { background: #fffdf8; }

.tn-band-head { margin-bottom: 36px; }

.tn-carousel {
  position: relative;
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
}

.tn-carousel-viewport {
  overflow: hidden;
  border-radius: 28px;
  box-shadow: var(--tn-shadow);
}

.tn-carousel-track {
  display: flex;
  transition: transform 0.7s var(--tn-ease);
  will-change: transform;
}

.tn-slide {
  min-width: 100%;
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  background: #fff;
}

.tn-slide-media {
  position: relative;
  min-height: 420px;
  overflow: hidden;
}

.tn-slide-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(1.1);
}

.tn-device-float {
  position: absolute;
  width: min(78%, 520px);
  right: 6%;
  bottom: -8%;
  transform: rotate(-4deg);
}

.tn-slide-copy {
  padding: 48px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.tn-idx {
  font-family: var(--tn-display);
  font-size: 28px;
  letter-spacing: 0.12em;
  color: var(--tn-ember);
  margin-bottom: 10px;
}

.tn-carousel-btn {
  position: absolute;
  top: 50%;
  z-index: 4;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: var(--tn-ember);
  cursor: pointer;
  transform: translateY(-50%);
  box-shadow: 0 10px 22px rgba(255, 138, 0, 0.2);
}

.tn-carousel-btn::before {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 auto;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
}

.tn-carousel-prev { left: -8px; }
.tn-carousel-prev::before { transform: rotate(135deg); }
.tn-carousel-next { right: -8px; }
.tn-carousel-next::before { transform: rotate(-45deg); }

.tn-carousel-dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
}

.tn-carousel-dots button {
  width: 28px;
  height: 3px;
  border: 0;
  padding: 0;
  background: rgba(255, 138, 0, 0.22);
  cursor: pointer;
}

.tn-carousel-dots button.is-on { background: var(--tn-ember); }

.tn-sectors {
  padding: 80px 0 40px;
  background: var(--tn-cream);
  overflow: hidden;
}

.tn-marquee {
  margin: 28px 0 36px;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.tn-marquee-track {
  display: flex;
  width: max-content;
  gap: 36px;
  animation: tn-marquee 28s linear infinite;
}

.tn-marquee-track span {
  font-family: var(--tn-display);
  font-size: clamp(28px, 4vw, 48px);
  letter-spacing: 0.04em;
  color: var(--tn-ember);
  text-transform: uppercase;
  white-space: nowrap;
}

@keyframes tn-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.tn-sector-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(220px, 1fr);
  gap: 14px;
  overflow-x: auto;
  padding: 0 20px 28px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.tn-sector-rail::-webkit-scrollbar { display: none; }

.tn-sector {
  position: relative;
  isolation: isolate;
  height: 280px;
  border-radius: 22px;
  overflow: hidden;
  scroll-snap-align: start;
  box-shadow: 0 14px 28px rgba(255, 138, 0, 0.12);
}

.tn-sector img {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.1s var(--tn-ease);
}

.tn-sector:hover img {
  transform: scale(1.08);
}

.tn-sector::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    180deg,
    transparent 28%,
    color-mix(in srgb, var(--tn-ember) 18%, transparent) 58%,
    color-mix(in srgb, var(--tn-ink) 62%, transparent) 100%
  );
  pointer-events: none;
}

.tn-sector span {
  position: absolute;
  left: 16px;
  bottom: 16px;
  z-index: 2;
  font-family: var(--tn-display);
  font-size: 28px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #fff;
  text-shadow: 0 1px 10px rgba(44, 34, 24, 0.45);
}

.tn-platform,
.tn-cta {
  position: relative;
  overflow: hidden;
  padding: 96px 0;
}

.tn-platform-shade {
  background:
    linear-gradient(180deg, rgba(255, 248, 240, 0.88) 0%, rgba(255, 232, 196, 0.62) 42%, rgba(255, 248, 240, 0.92) 100%);
}

.tn-shot-stage {
  margin: 36px 0 40px;
}

.tn-device-wide {
  max-width: 920px;
  margin: 0 auto;
  transform: perspective(1200px) rotateX(6deg);
}

.tn-pills {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.tn-pills-2 {
  grid-template-columns: repeat(2, 1fr);
  margin-top: 40px;
}

.tn-pill {
  padding: 22px 22px 18px;
  border: 1px solid rgba(255, 138, 0, 0.16);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 24px rgba(255, 138, 0, 0.08);
}

.tn-pill strong {
  display: block;
  font-family: var(--tn-display);
  font-size: 28px;
  letter-spacing: 0.06em;
  color: var(--tn-ember);
  margin-bottom: 8px;
}

.tn-cta {
  background: linear-gradient(135deg, #ff8a00 0%, #ffb347 52%, #ff6b4a 100%);
}

.tn-cta-shade {
  background:
    linear-gradient(90deg, rgba(255, 138, 0, 0.28), rgba(255, 107, 74, 0.08));
}

.tn-cta .tn-kicker,
.tn-cta h2,
.tn-cta .tn-lead {
  color: #fff8f0 !important;
}

.tn-cta .tn-lead { color: rgba(255, 248, 240, 0.88) !important; }

.tn-cta .tn-btn-ghost {
  background: transparent;
  color: #fff !important;
  border-color: rgba(255, 248, 240, 0.55);
}

.tn-cta .tn-btn-ghost:hover {
  background: rgba(255, 248, 240, 0.14);
}

.tn-cta .tn-btn-ember {
  background: #fff;
  color: var(--tn-ember) !important;
  box-shadow: 0 12px 28px rgba(44, 34, 24, 0.16);
}

.tn-cta .tn-btn-ember:hover { background: #fff8f0; }

.tn-cta-compact { padding: 80px 0; }

.tn-page-hero {
  position: relative;
  overflow: hidden;
  min-height: 58vh;
  display: flex;
  align-items: flex-end;
  padding: 140px 0 56px;
  background: #fff4e4;
}

.tn-page-hero-shade {
  background:
    linear-gradient(180deg, rgba(255, 248, 240, 0.78) 0%, rgba(255, 232, 196, 0.58) 46%, rgba(255, 248, 240, 0.92) 100%);
}

.tn-feature {
  position: relative;
  padding: 80px 0;
  background: #fffdf8;
  overflow: hidden;
}

.tn-feature-flip { background: #fff8f0; }

.tn-feature-photo .tn-feature-bleed {
  opacity: 0.18;
}

.tn-feature-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
}

.tn-list {
  list-style: none;
  margin: 18px 0 0;
  padding: 0;
}

.tn-list li {
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 138, 0, 0.14);
}

.tn-list li::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 10px;
  border-radius: 50%;
  background: var(--tn-ember);
}

.tn-list-wide { max-width: 640px; }

.tn-about { padding: 72px 0 40px; background: #fffdf8; }

.tn-about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
  margin-bottom: 48px;
}

.tn-about-shot {
  margin: 0;
  border-radius: 24px;
  overflow: hidden;
  min-height: 320px;
  box-shadow: var(--tn-shadow);
}

.tn-about-shot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 320px;
}

.tn-reveal { opacity: 1; transform: none; }

.tn.js-on .tn-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.75s var(--tn-ease), transform 0.75s var(--tn-ease);
}

.tn.js-on .tn-reveal.tn-reveal-left { transform: translateX(-24px); }
.tn.js-on .tn-reveal.tn-reveal-scale { transform: translateY(16px) scale(0.96); }
.tn.js-on .tn-reveal.is-in { opacity: 1; transform: none; }

#information-contact .panel,
#information-contact fieldset,
#information-contact .form-horizontal {
  background: transparent;
  border: 0;
  box-shadow: none;
}

#information-contact h3,
#information-contact .panel-heading,
#information-contact legend {
  font-family: var(--tn-display);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--tn-ember) !important;
}

#information-contact .panel.panel-default {
  background: #fff;
  border: 1px solid rgba(255, 138, 0, 0.16);
  color: var(--tn-ink);
  border-radius: 22px;
  box-shadow: var(--tn-shadow);
}

#information-contact .panel-body,
#information-contact legend,
#information-contact address,
#information-contact strong,
#information-contact label {
  color: var(--tn-ink);
}

#information-contact .form-control,
#information-contact select {
  background: #fff8f0;
  border: 1px solid rgba(255, 138, 0, 0.22);
  color: var(--tn-ink);
  min-height: 48px;
  border-radius: 14px;
  box-shadow: none;
}

#information-contact .btn-primary {
  background: var(--tn-ember);
  border: 0;
  color: #fff;
  font-family: var(--tn-sans);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 999px;
}

#information-contact .tn-contact-shell {
  width: min(980px, calc(100% - 40px));
  margin: 0 auto 80px;
}

#information-contact > .row > #content > h1,
#information-contact .tn-contact-shell > h1 { display: none; }

@media (max-width: 900px) {
  .tn-hero-grid,
  .tn-slide,
  .tn-feature-grid,
  .tn-about-grid,
  .tn-pills,
  .tn-pills-2 {
    grid-template-columns: 1fr;
  }

  .tn-hero-stack { min-height: 340px; }
  .tn-device-a { width: 86%; }
  .tn-device-b { width: 70%; }
  .tn-device-c { display: none; }
  .tn-slide-media { min-height: 280px; }
  .tn-carousel-prev { left: 8px; }
  .tn-carousel-next { right: 8px; }
  .tn-hero { min-height: auto; }
}

#top .lang-switch {
  order: 40;
  margin: 0 14px 0 8px;
  position: relative;
  z-index: 5;
}

#top .lang-switch-track {
  padding: 3px;
  border-radius: 999px;
  background: rgba(255, 248, 240, 0.88);
  border: 1px solid rgba(255, 138, 0, 0.38);
  box-shadow: 0 8px 18px rgba(255, 138, 0, 0.1);
}

#top .lang-switch-track > .lang-switch-btn {
  font-family: var(--tn-sans);
  background-color: transparent;
  color: var(--tn-mute);
  min-width: 38px;
  padding: 7px 10px;
  box-shadow: none;
}

#top .lang-switch-track > .lang-switch-btn:hover {
  background-color: transparent;
  color: var(--tn-ember-deep);
  text-decoration: none;
}

#top .lang-switch-track > .lang-switch-btn.is-active,
#top .lang-switch-track > .lang-switch-btn.is-active:hover,
#top .lang-switch-track > .lang-switch-btn.is-active:focus {
  background-color: var(--tn-ember);
  color: #fff;
}

@media (max-width: 767px) {
  #top .lang-switch {
    margin: 0 8px 0 4px;
  }

  #top .lang-switch-btn {
    min-width: 32px;
    padding: 6px 8px;
    font-size: 11px;
  }

  /* The glass blur on #menu makes it the containing block of the fixed drawer.
     Keep the blur on #top and let the drawer use the full header width. */
  #menu,
  body.tn-home:not(.tn-header-solid) #menu,
  body.tn-home.tn-header-solid #menu,
  body:has([data-tn-home]):not(.tn-header-solid) #menu {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: transparent !important;
    flex: 0 0 0;
    width: 0;
    min-width: 0;
    overflow: visible;
    border: 0;
  }

  #menu .navbar-collapse {
    width: min(320px, 86vw);
    background: #fff8f0 !important;
    box-shadow: 8px 0 28px rgba(42, 24, 8, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .tn-btn,
  .tn-carousel-track,
  .tn-sector img { transition: none !important; }
  .tn-marquee-track { animation: none; }
  .tn.js-on .tn-reveal {
    opacity: 1 !important;
    transform: none !important;
  }
  [data-parallax] { transform: none !important; }
}

/* tendeo tanda1 20261030 */
.tn-hero--clean { min-height: 0; }
.tn-hero--clean .tn-hero-grid { grid-template-columns: 5fr 7fr; gap: 40px; padding: 120px 0 72px; }
.tn-hero--clean .tn-hero-copy h1 { max-width: 13ch; }
.tn-device-main { margin: 0; transform: rotate(-2deg); }
.tn-device-main img { display: block; width: 100%; height: auto; }
.tn-trust { margin-top: 18px; font-size: 14px; letter-spacing: 0.02em; color: var(--tn-mute); }
.tn-card-cta { display: inline-block; margin-top: 10px; font-weight: 800; color: var(--tn-ember) !important; text-decoration: none; }
.tn-card-cta:hover { text-decoration: underline; }
a.tn-sector { display: block; color: inherit; text-decoration: none; }
#cart-container, #cart { display: none !important; }
footer a[href$="/politica-de-envio"], footer a[href$="/politica-de-devoluciones"], footer a[href*="route=account/newsletter"] { display: none !important; }
footer .tn-support-small { font-size: 12px; opacity: 0.8; }
@media (max-width: 991px) {
  .tn-hero--clean .tn-hero-grid { grid-template-columns: 1fr; padding: 96px 0 48px; gap: 28px; }
  .tn-device-main { transform: none; }
}
@media (max-width: 767px) { .tn-marquee { display: none; } }
/* end tendeo tanda1 */

/* tendeo tanda5 20261030: badges de rubros, boton demo Meet, crosslink */
.tn-sector .tn-sector-meta { position: absolute; left: 14px; right: 14px; bottom: 14px; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.tn-sector .tn-sector-meta span { position: static; left: auto; bottom: auto; line-height: 1; }
.tn-sector-badge { display: inline-block; max-width: 100%; padding: 5px 10px; border-radius: 12px; background: rgba(255, 248, 240, 0.92); color: var(--tn-ink); font-family: var(--tn-sans); font-size: 12px; font-weight: 700; line-height: 1.3; letter-spacing: 0.01em; text-transform: none; box-shadow: 0 4px 12px rgba(44, 34, 24, 0.18); }
.tn-btn-demo { white-space: normal; text-align: center; }
.tn-crosslink { margin-top: 18px; font-weight: 600; }
.tn-crosslink a { color: var(--tn-ember) !important; text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 480px) {
  .tn-actions .tn-btn { flex: 1 1 100%; }
  .tn-sector-badge { font-size: 11.5px; }
}

/* tendeo tanda7 20261030: hint "deslizá" + dots del carrusel de rubros */
.tn-swipe-hint { margin-top: 0; margin-bottom: 12px; text-align: right; font-size: 13px; font-weight: 700; letter-spacing: 0.02em; color: var(--tn-ember-deep); }
.tn-swipe-hint[hidden], .tn-rail-dots[hidden] { display: none; }
.tn-swipe-hint span { display: inline-block; animation: tn-nudge 1.4s ease-in-out 0.6s 3; }
@keyframes tn-nudge { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(6px); } }
.tn-rail-dots { display: flex; justify-content: center; flex-wrap: wrap; gap: 4px; margin: -10px auto 8px; padding: 0 20px; }
.tn-rail-dot { width: 28px; height: 28px; padding: 0; border: 0; background: transparent; cursor: pointer; position: relative; }
.tn-rail-dot::before { content: ""; position: absolute; left: 50%; top: 50%; width: 8px; height: 8px; margin: -4px 0 0 -4px; border-radius: 999px; background: rgba(44, 34, 24, 0.22); transition: width 0.25s ease, margin 0.25s ease, background 0.25s ease; }
.tn-rail-dot.is-active::before { width: 22px; margin-left: -11px; background: var(--tn-ember); }
.tn-rail-dot:focus-visible { outline: 2px solid var(--tn-ember); outline-offset: 2px; border-radius: 999px; }
@media (prefers-reduced-motion: reduce) { .tn-swipe-hint span { animation: none; } .tn-rail-dot::before { transition: none; } }

/* tendeo tanda9 20261030: bajada nube en bloque producto */
.tn-platform .tn-platform-lead { color: var(--tn-ink); max-width: 46ch; margin-top: -4px; }

/* tendeo tanda10 20261030: rubros hub en grilla, servicios con iconos y proceso */
.tn-rgrid-sec, .tn-svc-sec { padding: 72px 0 56px; background: var(--tn-cream); }
.tn-steps-sec { padding: 72px 0 64px; background: #fffdf8; }
.tn-rgrid-sec .tn-lead { margin-bottom: 28px; }
.tn-rgrid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.tn-rcard { display: grid; grid-template-columns: 116px 1fr; min-height: 148px; border-radius: 20px; overflow: hidden; background: #fff; color: var(--tn-ink) !important; text-decoration: none !important; border: 1px solid rgba(255, 138, 0, 0.14); box-shadow: 0 10px 24px rgba(255, 138, 0, 0.08); transition: transform 0.35s var(--tn-ease), box-shadow 0.35s var(--tn-ease); }
.tn-rcard-img { position: relative; overflow: hidden; background: var(--tn-peach); }
.tn-rcard-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s var(--tn-ease); }
.tn-rcard-body { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 14px 16px; }
.tn-rcard-body strong { font-family: var(--tn-display); font-weight: 400; font-size: 24px; line-height: 1; letter-spacing: 0.01em; text-transform: uppercase; }
.tn-rcard-txt { font-size: 14px; line-height: 1.35; color: var(--tn-mute); }
.tn-rcard .tn-sector-badge { box-shadow: none; background: var(--tn-cream); border: 1px solid rgba(255, 138, 0, 0.22); font-size: 11.5px; }
.tn-rcard-go { margin-top: auto; font-size: 13px; font-weight: 800; color: var(--tn-ember-deep); }
.tn-rcard-go span { display: inline-block; transition: transform 0.3s var(--tn-ease); }
.tn-rcard:hover, .tn-rcard:focus-visible { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(255, 138, 0, 0.18); }
.tn-rcard:hover .tn-rcard-img img, .tn-rcard:focus-visible .tn-rcard-img img { transform: scale(1.07); }
.tn-rcard:hover .tn-rcard-go span { transform: translateX(4px); }
.tn-rcard-text { grid-template-columns: 1fr; min-height: 0; background: linear-gradient(135deg, var(--tn-ember) 0%, var(--tn-coral) 100%); border: 0; }
.tn-rcard-text .tn-rcard-body { padding: 20px 22px; }
.tn-rcard-text strong, .tn-rcard-text .tn-rcard-txt, .tn-rcard-text .tn-rcard-go { color: #fff; }
.tn-svc-grid > div, .tn-rgrid > div { display: flex; }
.tn-svc-grid > div > a, .tn-rgrid > div > a { flex: 1; }
.tn-svc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 24px; }
.tn-svc { display: flex; flex-direction: column; gap: 8px; padding: 18px 16px; border-radius: 18px; background: #fff; border: 1px solid rgba(255, 138, 0, 0.14); color: var(--tn-ink) !important; text-decoration: none !important; box-shadow: 0 8px 20px rgba(255, 138, 0, 0.07); transition: transform 0.35s var(--tn-ease), box-shadow 0.35s var(--tn-ease); }
.tn-svc strong { font-size: 16px; line-height: 1.2; }
.tn-svc > span:last-child { font-size: 13.5px; line-height: 1.35; color: var(--tn-mute); }
.tn-svc-ico { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 14px; background: var(--tn-cream); color: var(--tn-ember-deep); transition: background 0.3s ease, color 0.3s ease, transform 0.35s var(--tn-ease); }
.tn-svc:hover, .tn-svc:focus-visible { transform: translateY(-4px); box-shadow: 0 16px 32px rgba(255, 138, 0, 0.16); }
.tn-svc:hover .tn-svc-ico { background: var(--tn-ember); color: #fff; transform: rotate(-6deg); }
.tn-steps { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 0; counter-reset: none; }
.tn-step { position: relative; padding: 0 0 26px 64px; }
.tn-step::before { content: ""; position: absolute; left: 21px; top: 44px; bottom: 0; width: 2px; background: linear-gradient(var(--tn-ember), rgba(255, 138, 0, 0.12)); }
.tn-step:last-child::before { display: none; }
.tn-step-n { position: absolute; left: 0; top: 0; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--tn-ember); color: #fff; font-family: var(--tn-display); font-size: 20px; box-shadow: 0 8px 18px rgba(255, 138, 0, 0.3); }
.tn-step strong { display: block; font-family: var(--tn-display); font-weight: 400; font-size: 26px; line-height: 1.1; text-transform: uppercase; padding-top: 8px; }
.tn-step p { margin: 6px 0 0; color: var(--tn-mute); max-width: 42ch; }
.tn-cta-band .tn-lead { color: rgba(255, 248, 240, 0.88) !important; }
.tn [id^="svc-"] { scroll-margin-top: 90px; }
@media (min-width: 700px) {
  .tn-rgrid { grid-template-columns: 1fr 1fr; gap: 18px; }
  .tn-svc-grid { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .tn-steps { grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .tn-step::before { display: none; }
}
@media (min-width: 1100px) {
  .tn-rgrid { grid-template-columns: repeat(4, 1fr); }
  .tn-rcard { grid-template-columns: 1fr; grid-template-rows: 220px 1fr; min-height: 0; }
  .tn-rcard-wide { grid-column: 1 / -1; }
  .tn-rcard-text { grid-template-rows: auto; }
  .tn-rcard-text .tn-rcard-body { flex-direction: row; align-items: center; gap: 24px; padding: 26px 30px; }
  .tn-rcard-text .tn-rcard-go { margin: 0 0 0 auto; }
  .tn-steps { grid-template-columns: repeat(4, 1fr); }
  .tn-step { padding: 64px 0 0; }
  .tn-step::before { display: block; left: 52px; right: -24px; top: 21px; bottom: auto; width: auto; height: 2px; background: linear-gradient(90deg, var(--tn-ember), rgba(255, 138, 0, 0.12)); }
  .tn-step:last-child::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .tn-rcard, .tn-rcard-img img, .tn-svc, .tn-svc-ico, .tn-rcard-go span { transition: none !important; }
  .tn-rcard:hover, .tn-svc:hover { transform: none; }
}

/* tendeo tanda11 20261030: hero mockup, contraste, hover servicios, pills, footer oscuro */
:root { --tn-mute: #4f4338; }
.tn-trust { color: #3a332c; }
.tn-hero--clean .tn-device-main { border-radius: 14px; border: 1px solid rgba(44, 34, 24, 0.12); background: #fff;
  box-shadow: 0 1px 2px rgba(44,34,24,.08), 0 8px 20px rgba(44,34,24,.10), 0 28px 60px rgba(255,138,0,.16); }
.tn-hero--clean .tn-device-main .tn-device-bar { height: 30px; background: linear-gradient(#fff7ec, #ffefdb); border-bottom: 1px solid rgba(44,34,24,.08); }
.tn-hero--clean .tn-device-main .tn-device-bar i { width: 10px; height: 10px; }
@media (min-width: 1100px) {
  .tn-hero--clean .tn-hero-grid { perspective: 1800px; }
  .tn-hero--clean .tn-device-main,
  .tn.js-on .tn-hero--clean .tn-device-main.tn-reveal.is-in { transform: rotateY(-9deg) rotateX(3deg); transform-origin: 30% 50%;
    transition: transform .6s var(--tn-ease), box-shadow .6s var(--tn-ease), opacity .7s var(--tn-ease); }
  .tn-hero--clean .tn-device-main:hover,
  .tn.js-on .tn-hero--clean .tn-device-main.tn-reveal.is-in:hover { transform: none; box-shadow: 0 1px 2px rgba(44,34,24,.08), 0 12px 28px rgba(44,34,24,.12), 0 36px 72px rgba(255,138,0,.18); }
}
.tn-tag { display: inline-block; vertical-align: middle; margin-left: 10px; padding: 3px 10px; border-radius: 999px; background: var(--tn-ember); color: #2c2218;
  font-family: var(--tn-sans); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; line-height: 1.4; align-self: flex-start; }
.tn-tag-new { background: var(--tn-sky); color: #0f2e2b; margin-left: 8px; letter-spacing: .06em; }
.tn-slide-copy { border: 1px solid transparent; border-radius: 18px; transition: transform .35s var(--tn-ease), box-shadow .35s var(--tn-ease), border-color .35s var(--tn-ease); }
.tn-slide-copy .tn-idx { transition: color .35s var(--tn-ease); }
@media (hover: hover) {
  .tn-slide:hover .tn-slide-copy { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(44,34,24,.12); border-color: var(--tn-ember); }
  .tn-slide:hover .tn-idx { color: var(--tn-coral); }
}
footer { background: linear-gradient(180deg, #2c2218 0%, #1f1811 100%); color: #f3e9dc; border-top: 4px solid var(--tn-ember); }
footer a, footer li, footer span { color: #f3e9dc; }
footer a:hover, footer li a:hover { color: var(--tn-sun); }
footer ul li { border-bottom-color: rgba(255,255,255,.08); }
footer .box h5 { color: var(--tn-ember); }
footer .box svg, footer .box .icon, footer .contact ul li i, footer .information ul li i { fill: #f3e9dc; color: #f3e9dc; }
footer .box a:hover svg, footer .box a:hover .icon, footer .contact ul li:has(a:hover) svg, footer .information ul li:has(a:hover) svg { fill: var(--tn-sun); color: var(--tn-sun); }
footer .contact ul li:has(a:hover), footer .information ul li:has(a:hover) { background-color: rgba(255,255,255,.05); }
footer .box.contact ul { color: #f3e9dc !important; }
footer .tn-legal { width: 100%; max-width: none; margin: 0; padding: 18px max(20px, calc((100% - 1240px) / 2)) 12px; background: #17120d; border-top: 1px solid rgba(255,255,255,.08); color: #cbbfb1; }
footer .tn-legal strong { color: #f3e9dc; }
footer .tn-legal a { color: #f3e9dc; }
footer .tn-legal a:hover { color: var(--tn-sun); }
footer .powered { background: #17120d; color: #cbbfb1; padding-bottom: 14px; }
footer .powered span { color: #cbbfb1; }
footer .tn-support-small { font-size: 13px; color: #cbbfb1 !important; }
@media (prefers-reduced-motion: reduce) {
  .tn-hero--clean .tn-device-main, .tn.js-on .tn-hero--clean .tn-device-main.tn-reveal.is-in, .tn-slide-copy { transition: none !important; }
  .tn-slide:hover .tn-slide-copy { transform: none; }
}
.tn-hero--clean .tn-kicker, .tn-sectors .tn-kicker, .tn-band .tn-kicker, .tn-platform .tn-kicker, .tn-idx, .tn-swipe-hint { color: #a84f00; }
@media (hover: hover) { .tn-slide:hover .tn-idx { color: var(--tn-ember); } }
.tn-slide-copy .tn-tag { margin: 0 0 10px; }

/* TANDA 12b: hero de landings apilado en celular + escala tipografica mobile; velo mas firme en desktop */
@media (min-width: 768px) {
  .tn-page-hero-shade {
    background:
      linear-gradient(90deg, rgba(255, 248, 240, 0.94) 0%, rgba(255, 248, 240, 0.9) 58%, rgba(255, 248, 240, 0.55) 100%);
  }
}
@media (max-width: 767px) {
  .tn-page-hero { display: block; min-height: 0; padding: 88px 0 36px; background: var(--tn-cream); }
  .tn-page-hero-bg { position: relative; inset: auto; z-index: 0; height: 220px; margin: 0 16px 24px; border-radius: 20px; overflow: hidden; transform: none !important; will-change: auto; box-shadow: 0 10px 24px rgba(255, 138, 0, 0.12); }
  .tn-page-hero-bg img { height: 100%; }
  .tn-page-hero-shade { display: none; }
  .tn-page-hero .tn-wrap { position: relative; z-index: 2; }
  .tn h1 { font-size: clamp(30px, 8.6vw, 34px); line-height: 1.06; }
  .tn h2 { font-size: clamp(26px, 7.6vw, 30px); line-height: 1.08; }
  .tn p:not([class]), .tn li:not([class]) { font-size: 17px; line-height: 1.55; }
  .tn .tn-lead { font-size: 18px; line-height: 1.55; }
  .tn-rcard-txt, .tn-svc > span:last-child { font-size: 15px; line-height: 1.45; }
}

/* TANDA 13: zoom IA en hero home, duo panel+celular y video en /como-trabajamos */
.tn-hero-visual { position: relative; }
.tn-device-zoom { position: absolute; left: -6%; bottom: -10%; width: 46%; z-index: 2; box-shadow: 0 22px 44px rgba(44, 34, 24, 0.22); }
.tn-zoom-win { overflow: hidden; aspect-ratio: 16 / 10; }
.tn-zoom-win img { width: 100%; height: 100%; object-fit: cover; transform-origin: 28% 58%; animation: tnZoomPan 18s ease-in-out infinite alternate; }
@keyframes tnZoomPan { 0% { transform: scale(1) translate(0, 0); } 100% { transform: scale(1.35) translate(4%, -2%); } }
.tn13-duo { position: relative; padding: 0 9% 8% 0; }
.tn13-phone { position: absolute; right: 0; bottom: 0; width: 26%; border-radius: 22px; border-width: 4px; border-color: #2c2218; }
.tn13-video-sec .tn-wrap { text-align: center; }
.tn13-video { max-width: 960px; margin: 28px auto 0; }
.tn13-video video { display: block; width: 100%; height: auto; background: #fff8f0; }
@media (max-width: 767px) {
  .tn-device-zoom { position: relative; left: auto; bottom: auto; width: 74%; margin: -14% 4% 0 auto; }
  .tn13-phone { width: 30%; }
}
@media (prefers-reduced-motion: reduce) { .tn-zoom-win img { animation: none; transform: scale(1.2); } }

/* TANDA 13c: hero /como-trabajamos sin captura de fondo: crema + captura enmarcada a la derecha (apilada en celular) */
.tn-page-hero--split { align-items: center; padding: 128px 0 64px; background: radial-gradient(circle at 88% 18%, rgba(255, 197, 61, 0.22), transparent 55%), linear-gradient(180deg, #fff8f0 0%, #fff4e4 100%); }
.tn-split-grid { display: grid; grid-template-columns: 5fr 7fr; gap: 48px; align-items: center; }
.tn-split-shot { margin: 0; }
@media (max-width: 767px) {
  .tn-page-hero--split { padding: 88px 0 36px; }
  .tn-split-grid { grid-template-columns: 1fr; gap: 24px; }
  .tn-split-shot { order: -1; }
}

/* TANDA 14: carrusel servicios home - borde/sombra en el viewport (sin lift recortado), menos aire, flechas junto a los dots */
.tn-carousel-viewport { border: 1px solid rgba(255,138,0,.22); border-radius: 24px; box-shadow: 0 1px 2px rgba(44,34,24,.06), 0 14px 34px rgba(44,34,24,.08); transition: box-shadow .35s var(--tn-ease), border-color .35s var(--tn-ease); }
.tn-slide-media { min-height: 360px; }
.tn-slide-copy { padding: 36px 40px; border: 0; border-radius: 0; transform: none; box-shadow: none; transition: none; }
.tn-slide-copy h3 { margin-bottom: 10px; }
.tn-slide-copy p { margin-bottom: 4px; }
.tn-slide-photo { transition: transform .6s var(--tn-ease); }
@media (hover: hover) {
  .tn-slide:hover .tn-slide-copy { transform: none; box-shadow: none; border-color: transparent; }
  .tn-carousel:hover .tn-carousel-viewport { border-color: rgba(255,138,0,.5); box-shadow: 0 2px 4px rgba(44,34,24,.06), 0 22px 48px rgba(44,34,24,.13); }
  .tn-slide:hover .tn-slide-photo { transform: scale(1.03); }
  .tn-carousel-btn:hover { background: var(--tn-ember); color: #2c2218; }
}
.tn-carousel-dots { margin-top: 20px; min-height: 44px; align-items: center; }
.tn-carousel-btn { top: auto; bottom: 0; transform: none; width: 44px; height: 44px; box-shadow: 0 6px 16px rgba(44,34,24,.12); transition: background-color .2s, color .2s; }
.tn-carousel-btn:focus-visible { outline: 2px solid #a84f00; outline-offset: 2px; }
.tn-carousel-prev { left: calc(50% - 168px); }
.tn-carousel-next { right: calc(50% - 168px); }
@media (max-width: 900px) {
  .tn-carousel-viewport { border-radius: 20px; }
  .tn-slide-media { min-height: 220px; }
  .tn-slide-copy { padding: 24px 22px 26px; }
  .tn-carousel-prev { left: calc(50% - 168px); }
  .tn-carousel-next { right: calc(50% - 168px); }
}
@media (prefers-reduced-motion: reduce) {
  .tn-carousel-viewport, .tn-slide-photo, .tn-carousel-btn { transition: none !important; }
  .tn-slide:hover .tn-slide-photo { transform: none; }
}

/* TANDA 15: hero en laptop CSS + lupa sobre balance de cajas (reemplaza zoom IA t13) y franja de logos de clientes */
.tn15-visual { position: relative; padding-bottom: 6%; }
.tn-laptop { margin: 0 4% 0 2%; position: relative; }
.tn-laptop-screen { position: relative; background: linear-gradient(160deg, #3a2d20, #1f1811); border-radius: 16px 16px 6px 6px; padding: 3.4% 3.4% 3.8%;
  box-shadow: 0 1px 0 rgba(255,255,255,.08) inset, 0 18px 40px rgba(44,34,24,.22), 0 36px 70px rgba(255,138,0,.14); }
.tn-laptop-cam { position: absolute; top: 1.4%; left: 50%; width: 6px; height: 6px; margin-left: -3px; border-radius: 50%; background: #5a4838; }
.tn-laptop-glass { position: relative; overflow: hidden; border-radius: 4px; background: #fff; }
.tn-laptop-glass img { display: block; width: 100%; height: auto; }
.tn-laptop-base { position: relative; height: 16px; margin: 0 -7%; border-radius: 2px 2px 16px 16px; background: linear-gradient(180deg, #efe4d6 0%, #d8c7b1 70%, #bfa98f 100%); box-shadow: 0 10px 18px rgba(44,34,24,.18); }
.tn-laptop-base::before { content: ""; position: absolute; top: 0; left: 50%; width: 16%; height: 6px; transform: translateX(-50%); border-radius: 0 0 8px 8px; background: #c4b097; }
.tn-lupa-mark { position: absolute; left: 13.6%; top: 17.4%; width: 30.6%; height: 21.8%; border: 2px solid var(--tn-ember); border-radius: 8px; box-shadow: 0 0 0 4px rgba(255,138,0,.18); animation: tnLupaPulse 3.6s ease-in-out infinite; }
@keyframes tnLupaPulse { 0%, 100% { box-shadow: 0 0 0 3px rgba(255,138,0,.14); } 50% { box-shadow: 0 0 0 7px rgba(255,138,0,.26); } }
.tn-lupa { position: absolute; left: -4%; bottom: -2%; width: 54%; max-width: 360px; margin: 0; z-index: 3; background: #fff; border: 3px solid var(--tn-ember); border-radius: 16px; overflow: hidden;
  box-shadow: 0 22px 44px rgba(44,34,24,.24); }
.tn-lupa-win { overflow: hidden; aspect-ratio: 790 / 268; background: #fff; }
.tn-lupa-win img { display: block; width: 100%; height: 100%; object-fit: cover; transform-origin: 18% 40%; animation: tnLupaZoom 9s ease-in-out infinite alternate; }
@keyframes tnLupaZoom { 0% { transform: scale(1); } 100% { transform: scale(1.1); } }
.tn-lupa-tag { display: flex; align-items: center; gap: 8px; margin: 0; padding: 8px 12px; background: #2c2218; color: #fff8f0; font-family: var(--tn-sans); font-size: 13px; font-weight: 700; letter-spacing: .02em; line-height: 1.3; }
.tn-lupa-tag svg { flex: none; color: var(--tn-sun); }
@media (min-width: 1100px) {
  .tn-hero--clean .tn-hero-grid { perspective: 1800px; }
  .tn-laptop, .tn.js-on .tn-hero--clean .tn-laptop.tn-reveal.is-in { transform: rotateY(-7deg) rotateX(2deg); transform-origin: 30% 50%; transition: transform .6s var(--tn-ease), opacity .7s var(--tn-ease); }
  .tn-laptop:hover, .tn.js-on .tn-hero--clean .tn-laptop.tn-reveal.is-in:hover { transform: none; }
}
@media (max-width: 767px) {
  .tn15-visual { padding-bottom: 0; }
  .tn-laptop { margin: 0 6%; }
  .tn-laptop-screen { border-radius: 12px 12px 4px 4px; }
  .tn-laptop-base { height: 11px; }
  .tn-lupa { position: relative; left: auto; bottom: auto; width: auto; max-width: 420px; margin: 18px auto 0; }
  .tn-lupa-tag { font-size: 14px; }
}
.tn-logos { padding: 28px 0 30px; background: #fff8f0; border-top: 1px solid rgba(44,34,24,.08); border-bottom: 1px solid rgba(44,34,24,.08); overflow: hidden; }
.tn-logos .tn-wrap { text-align: center; }
.tn .tn-logos-h { margin: 0 0 18px; font-family: var(--tn-sans); font-size: clamp(16px, 1.6vw, 19px); font-weight: 700; letter-spacing: .01em; line-height: 1.35; text-transform: none; color: #2c2218; }
.tn-logos-viewport { display: flex; overflow: hidden; max-width: 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%); }
.tn-logos-track { display: flex; flex: none; align-items: center; gap: 56px; margin: 0; padding: 6px 56px 6px 0; list-style: none; animation: tnLogosRun 75s linear infinite; }
.tn-logos-viewport:hover .tn-logos-track, .tn-logos-viewport:focus-within .tn-logos-track { animation-play-state: paused; }
@keyframes tnLogosRun { from { transform: translateX(0); } to { transform: translateX(-100%); } }
.tn-logo { flex: none; margin: 0; padding: 0; list-style: none; }
.tn-logo::before { content: none; }
.tn-logo img { display: block; height: 44px; width: auto; max-width: 170px; object-fit: contain; filter: grayscale(1); opacity: .72; transition: filter .3s ease, opacity .3s ease; }
.tn-logo img:hover, .tn-logo:focus-within img { filter: none; opacity: 1; }
.tn .tn-logos-more { margin: 14px 0 0; font-size: 14px; font-weight: 600; color: #6b4f36; }
@media (max-width: 767px) {
  .tn-logos { padding: 22px 0 24px; }
  .tn-logos-track { gap: 36px; padding-right: 36px; animation-duration: 56s; }
  .tn-logo img { height: 34px; max-width: 130px; }
  .tn .tn-logos-h { font-size: 17px; padding: 0 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .tn-lupa-win img, .tn-lupa-mark { animation: none; }
  .tn-laptop, .tn.js-on .tn-hero--clean .tn-laptop.tn-reveal.is-in { transition: none !important; }
  .tn-logos-viewport { flex-wrap: wrap; justify-content: center; -webkit-mask-image: none; mask-image: none; }
  .tn-logos-track { animation: none; flex-wrap: wrap; justify-content: center; flex: 1 1 100%; gap: 22px 36px; padding: 6px 0; }
  .tn-logos-track[aria-hidden="true"] { display: none; }
}

/* TANDA 16: hero, rubros como chips + fila de confianza (reemplaza las 2 lineas tn-trust del hero) */
.tn-hero-meta { margin-top: 26px; display: flex; flex-direction: column; gap: 16px; }
.tn-rubros { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.tn .tn-rubros-label { font-size: 13px; font-weight: 700; letter-spacing: .02em; color: #6b4f36; margin-right: 2px; }
.tn .tn-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.tn .tn-chips li { margin: 0; padding: 0; list-style: none; }
.tn .tn-chips li::before { content: none; }
.tn a.tn-chip { display: inline-block; padding: 6px 13px; border: 1px solid rgba(255,138,0,.45); border-radius: 999px; background: #fffaf3; color: #2c2218; font-size: 13.5px; font-weight: 600; line-height: 1.3; text-decoration: none; white-space: nowrap; transition: border-color .2s ease, background .2s ease, color .2s ease; }
.tn a.tn-chip:hover, .tn a.tn-chip:focus-visible { border-color: var(--tn-ember); background: #fff1e0; color: #a84f00; }
.tn a.tn-chip:focus-visible { outline: 2px solid var(--tn-ember); outline-offset: 2px; }
.tn .tn-human { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 14px; line-height: 1.45; color: #3a332c; }
.tn-human-ico { flex: none; color: var(--tn-ember); }
@media (max-width: 767px) {
  .tn-hero-meta { margin-top: 24px; gap: 14px; }
  .tn .tn-rubros-label { flex: 1 1 100%; }
  .tn a.tn-chip { font-size: 13px; padding: 6px 12px; }
  .tn .tn-human { align-items: flex-start; }
  .tn-human-ico { margin-top: 1px; }
}

/* TANDA 17: footer, fila Ventas por WhatsApp, Soporte en ghost, focus legible (bootstrap a:focus pintaba #23527c + outline 5px auto al quedar el foco tras un click) */
footer .box.contact li.tn-empty-li { display: none; }
footer .box.contact ul li a.tn-sales-wa[href*="wa.me"] { background: none !important; background-image: none !important; padding: 0 !important; box-shadow: none !important; border-radius: 0 !important; color: #ffb15c !important; font-weight: 700; }
footer .box.contact ul.list-unstyled li.tn-li-show { display: flex !important; }
footer .box.contact ul li a.tn-sales-wa svg { fill: #25D366 !important; color: #25D366 !important; background: none !important; }
footer .box.contact ul li a.tn-sales-wa span { color: #ffb15c !important; }
footer .box.contact ul li a.tn-sales-wa:hover span { text-decoration: underline; }
footer .box.contact li.tn-support-li { margin-top: 10px; }
footer .box.contact ul li a.tn-support-small[href*="wa.me"], footer .box.contact ul li a.tn-support-small[href*="wa.me"]:hover, footer .box.contact ul li a.tn-support-small[href*="wa.me"]:focus { display: inline-block; background: transparent !important; background-image: none !important; border: 1px solid rgba(243,233,220,.32) !important; box-shadow: none !important; color: #cbbfb1 !important; font-size: 12.5px !important; font-weight: 600; padding: 6px 12px !important; border-radius: 999px !important; opacity: 1; }
footer .box.contact ul li a.tn-support-small[href*="wa.me"]:hover { border-color: rgba(243,233,220,.6) !important; color: #f3e9dc !important; }
footer a:focus, footer a:active, footer a:hover { color: #f3e9dc; }
footer a:focus { outline: none; }
footer .box a:focus-visible, footer .box ul li a[href]:focus-visible { outline: 2px solid #ff8a00 !important; outline-offset: 3px; border-radius: 3px; color: #fff !important; }

/* TANDA 18: bloque producto (module 7): sin foto de oficina de fondo; clip "venta sin internet" en .tn-device */
.tn18-platform { background: radial-gradient(120% 80% at 50% 0%, #fff1dc 0%, #fff8f0 55%, #fff8f0 100%); }
.tn18-video { max-width: 960px; transform: none; }
.tn18-video video { display: block; width: 100%; height: auto; aspect-ratio: 1280 / 800; background: #fff8f0; object-fit: cover; }
@media (min-width: 1100px) { .tn18-video { transform: perspective(1400px) rotateX(4deg); } }
@media (max-width: 767px) { .tn18-video { border-radius: 14px; } }

/* TANDA 19: bloque IA (module 10): clip "sistema en uso" en .tn-device debajo del texto */
.tn19-wrap { margin-top: 40px; }
.tn19-video { max-width: 960px; margin: 0 auto; transform: none; }
.tn19-video video { display: block; width: 100%; height: auto; aspect-ratio: 1280 / 800; background: #fff8f0; object-fit: cover; }
@media (max-width: 767px) { .tn19-wrap { margin-top: 28px; } .tn19-video { border-radius: 14px; } }

/* TANDA 18b: clip venta sin internet v6 (tn18b-*): estado offline/sync en la barra del .tn-device, fuera de la pantalla */
.tn18b-video .tn-device-bar { position: relative; }
.tn18b-video .tn-device-bar em { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.tn18b-st { margin-left: auto; flex: 0 0 auto; display: inline-flex; }
.tn18b-st b { display: none; align-items: center; gap: 6px; height: 20px; padding: 0 10px 0 8px; border-radius: 999px; font: 800 11px/1 var(--tn-body, inherit); letter-spacing: .02em; color: #fff; white-space: nowrap; }
.tn18b-st b::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fff; flex: 0 0 auto; }
.tn18b-st[data-st="off"] .tn18b-off { display: inline-flex; background: #b92828; }
.tn18b-st[data-st="sync"] .tn18b-sync { display: inline-flex; background: #1d2330; }
.tn18b-st[data-st="sync"] .tn18b-sync::before { background: none; border: 2px solid #ff8a00; border-right-color: transparent; width: 6px; height: 6px; animation: tn18b-spin .8s linear infinite; }
.tn18b-st[data-st="ok"] .tn18b-ok { display: inline-flex; background: #16803d; }
.tn18b-st[data-st="ok"] .tn18b-ok::before { content: "✓"; width: auto; height: auto; background: none; font-size: 11px; }
@keyframes tn18b-spin { to { transform: rotate(360deg); } }
@media (max-width: 767px) { .tn18b-video .tn-device-bar em { font-size: 9.5px; letter-spacing: .06em; margin-left: 6px; } .tn18b-st b { height: 18px; font-size: 10px; padding: 0 8px 0 6px; } }
@media (prefers-reduced-motion: reduce) { .tn18b-st[data-st="sync"] .tn18b-sync::before { animation: none; } }
/* TANDA 20: navegacion a otros rubros al final de cada landing */
.tn20-more { padding: 64px 0 72px; background: var(--tn-cream); }
.tn20-more h2 { font-family: var(--tn-display); font-weight: 400; text-transform: uppercase; font-size: clamp(30px, 4vw, 44px); line-height: 1.02; margin: 6px 0 26px; color: var(--tn-ink); }
.tn20-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.tn20-card { display: grid; grid-template-columns: 72px 1fr auto; align-items: center; gap: 14px; padding: 10px 16px 10px 10px; border-radius: 18px; background: #fff; color: var(--tn-ink) !important; text-decoration: none !important; border: 1px solid rgba(255, 138, 0, 0.16); box-shadow: 0 8px 20px rgba(255, 138, 0, 0.07); transition: transform 0.3s var(--tn-ease), box-shadow 0.3s var(--tn-ease); }
.tn20-img { display: block; width: 72px; height: 72px; border-radius: 12px; overflow: hidden; background: var(--tn-peach); }
.tn20-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.tn20-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.tn20-body strong { font-family: var(--tn-display); font-weight: 400; font-size: 21px; line-height: 1.05; text-transform: uppercase; letter-spacing: 0.01em; }
.tn20-txt { font-size: 13.5px; line-height: 1.35; color: var(--tn-mute); }
.tn20-go { font-weight: 800; color: var(--tn-ember-deep); transition: transform 0.3s var(--tn-ease); }
.tn20-card:hover, .tn20-card:focus-visible { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(255, 138, 0, 0.16); }
.tn20-card:hover .tn20-go { transform: translateX(4px); }
.tn20-all { margin: 22px 0 0; }
.tn20-all a { font-weight: 800; color: var(--tn-ember-deep) !important; text-decoration: none; }
.tn20-all a:hover { text-decoration: underline; }
@media (max-width: 767px) { .tn20-more { padding: 44px 0 52px; } .tn20-grid { grid-template-columns: 1fr; gap: 10px; } .tn20-card { grid-template-columns: 60px 1fr auto; } .tn20-img { width: 60px; height: 60px; } .tn20-body strong { font-size: 20px; } .tn20-txt { font-size: 14px; } }
@media (prefers-reduced-motion: reduce) { .tn20-card, .tn20-go { transition: none !important; } .tn20-card:hover { transform: none; } }
/* TANDA 22: rubros nombrados + "no ves tu rubro" + pet shops + aire para el boton scroll-top */
.tn22-rubros { margin: 4px 0 18px; }
.tn22-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.tn22-chips .tn-chip { display: inline-block; padding: 7px 14px; border-radius: 999px; background: #fff; border: 1px solid rgba(255, 138, 0, 0.3); color: var(--tn-ink) !important; font-size: 14.5px; font-weight: 600; text-decoration: none !important; }
.tn22-chips .tn-chip:hover, .tn22-chips .tn-chip:focus-visible { border-color: var(--tn-ember); color: var(--tn-ember-deep) !important; }
.tn22-ask { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 0 0 30px; font-size: 16px; line-height: 1.4; color: var(--tn-mute); }
.tn22-ask strong { color: var(--tn-ink); }
.tn22-ask .tn22-ask-btn { margin-left: 4px; }
@media (max-width: 767px) { .tn22-chips { gap: 6px; } .tn22-chips .tn-chip { font-size: 14px; padding: 6px 12px; } .tn22-ask { font-size: 15.5px; } .tn22-ask .tn22-ask-btn { margin: 6px 0 0; width: 100%; text-align: center; } .tn20-more { padding-bottom: 112px; } .tn20-all { text-align: center; } }
/* TANDA 24: portfolio /portfolio + /en/our-work, link desde servicios, webs institucionales con capturas, lightbox */
.tn24-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.tn24-hero { background: var(--tn-cream); padding: 140px 0 28px; }
.tn24-hero h1 { margin: 6px 0 12px; }
.tn24-hero .tn-lead { max-width: 640px; color: var(--tn-mute); }
.tn24-sec { background: var(--tn-cream); padding: 8px 0 72px; }
.tn24-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; }
.tn24-f { padding: 7px 16px; border-radius: 999px; background: #fff; border: 1px solid rgba(255, 138, 0, 0.3); color: var(--tn-ink); font: inherit; font-size: 14.5px; font-weight: 600; cursor: pointer; }
.tn24-f.is-on { background: var(--tn-ember); border-color: var(--tn-ember); color: #fff; }
.tn24-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.tn24-item[hidden] { display: none; }
.tn24-card { display: flex; flex-direction: column; height: 100%; background: #fff; border-radius: 16px; overflow: hidden; text-decoration: none !important; color: var(--tn-ink) !important; box-shadow: 0 1px 0 rgba(44, 34, 24, 0.06), 0 10px 26px rgba(44, 34, 24, 0.08); transition: transform .35s var(--tn-ease), box-shadow .35s var(--tn-ease); }
.tn24-card:hover, .tn24-card:focus-visible { transform: translateY(-3px); box-shadow: 0 16px 34px rgba(44, 34, 24, 0.14); }
.tn24-thumb { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 5; background: #f4ece2; overflow: hidden; }
.tn24-thumb img { width: 100%; height: 100%; object-fit: contain; display: block; }
.tn24-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 14px 14px; }
.tn24-meta strong { font-size: 15px; line-height: 1.25; }
.tn24-tag { flex: none; padding: 3px 9px; border-radius: 999px; font-size: 12px; font-weight: 700; background: var(--tn-peach); color: var(--tn-ember-deep); }
.tn24-tag-catalogo { background: #dff5f2; color: #157a70; }
.tn24-tag-grafica { background: #ece6ff; color: #5b45b0; }
.tn24-more { margin: 30px 0 0; color: var(--tn-mute); font-size: 15.5px; }
.tn24-more a, .tn24-pf-link a { color: var(--tn-ember-deep) !important; font-weight: 700; }
.tn24-pf-link { margin-top: 14px; }
.tn24-lb { position: fixed; inset: 0; z-index: 10050; display: flex; align-items: center; justify-content: center; background: rgba(20, 15, 10, 0.88); padding: 56px 16px 24px; }
.tn24-lb[hidden] { display: none; }
.tn24-lb img { max-width: min(1080px, 100%); max-height: 100%; width: auto; height: auto; border-radius: 10px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); }
.tn24-lb button { position: absolute; border: 0; background: rgba(255, 255, 255, 0.14); color: #fff; width: 46px; height: 46px; border-radius: 50%; font-size: 26px; line-height: 1; cursor: pointer; }
.tn24-lb .tn24-x { top: 12px; right: 12px; }
.tn24-lb .tn24-prev { left: 12px; top: 50%; transform: translateY(-50%); }
.tn24-lb .tn24-next { right: 12px; top: 50%; transform: translateY(-50%); }
.tn24-lb .tn24-cap { position: absolute; left: 0; right: 0; top: 18px; text-align: center; color: #fff; font-size: 14px; padding: 0 70px; }
html.tn24-lock, html.tn24-lock body { overflow: hidden; }
.tn24-webs { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.tn24-web { display: flex; flex-direction: column; height: 100%; background: #fff; border-radius: 14px; overflow: hidden; border: 1px solid rgba(44, 34, 24, 0.1); box-shadow: 0 10px 26px rgba(44, 34, 24, 0.08); text-decoration: none !important; color: var(--tn-ink) !important; transition: transform .35s var(--tn-ease), box-shadow .35s var(--tn-ease); }
.tn24-web:hover, .tn24-web:focus-visible { transform: translateY(-3px); box-shadow: 0 16px 34px rgba(44, 34, 24, 0.14); }
.tn24-bar { display: flex; align-items: center; gap: 6px; padding: 8px 12px; background: #f1ebe3; border-bottom: 1px solid rgba(44, 34, 24, 0.08); }
.tn24-bar i { width: 9px; height: 9px; border-radius: 50%; background: #d9cfc3; }
.tn24-bar em { margin-left: 8px; flex: 1; font-style: normal; font-size: 11.5px; color: var(--tn-mute); background: #fff; border-radius: 6px; padding: 2px 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tn24-shot { display: block; aspect-ratio: 16 / 10; overflow: hidden; }
.tn24-shot img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; }
.tn24-web-body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; flex: 1; }
.tn24-web-body strong { font-size: 16.5px; }
.tn24-web-body > span { color: var(--tn-mute); font-size: 15px; line-height: 1.45; }
.tn24-web-body .tn24-go { margin-top: auto; padding-top: 6px; color: var(--tn-ember-deep); font-weight: 700; }
@media (max-width: 1100px) { .tn24-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .tn24-hero { padding: 112px 0 18px; }
  .tn24-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .tn24-meta { flex-direction: column; align-items: flex-start; gap: 6px; padding: 10px 11px 12px; }
  .tn24-meta strong { font-size: 14px; }
  .tn24-f { font-size: 14px; padding: 6px 13px; }
  .tn24-webs { grid-template-columns: 1fr; gap: 16px; }
  .tn24-sec { padding-bottom: 96px; }
}

/* TANDA 25: ritmo de fondos, reveal sutil, iconos y CTA WhatsApp unificado (20261030) */
.tn section.tn25-soft{background:#fff1e0 !important;}
.tn section.tn25-soft .tn-feature-media img,.tn section.tn25-soft .tn-device{box-shadow:0 18px 40px rgba(44,34,24,.10);}
.tn25-on .tn25-rv{opacity:0;transform:translateY(14px);transition:opacity .55s var(--tn-ease,ease),transform .55s var(--tn-ease,ease);}
.tn25-on .tn25-rv.tn25-in{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){.tn25-on .tn25-rv{opacity:1 !important;transform:none !important;transition:none !important;}}
.tn .tn-svc-ico svg,.tn .tn25-ico svg{stroke:var(--tn-ember-deep,#e67300);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.tn .tn-btn.tn-btn-wa.tn25-wa{min-height:52px;padding:0 26px;gap:10px;background:var(--tn-ember,#ff8a00) !important;color:#2c2218 !important;border-color:var(--tn-ember,#ff8a00) !important;}
.tn .tn-btn.tn-btn-wa.tn25-wa:hover{background:var(--tn-ember-deep,#e67300) !important;border-color:var(--tn-ember-deep,#e67300) !important;}
.tn .tn-cta .tn-btn.tn-btn-wa.tn25-wa{background:#2c2218 !important;border-color:#2c2218 !important;color:#fff8f0 !important;}
.tn .tn-cta .tn-btn.tn-btn-wa.tn25-wa:hover{background:#000 !important;border-color:#000 !important;}
.tn25-wa .tn25-wa-ico{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
/* /TANDA 25 */

/* TANDA 27: hero landing pet shops (solo img tn27-petshop-wide) */
.tn-page-hero-bg img[src*="tn27-petshop-wide"]{object-position:72% 62%;}
@media (max-width:767px){.tn-page-hero-bg img[src*="tn27-petshop-wide"]{object-position:60% 50%;}}
/* /TANDA 27 */