/*
 * TB Shops child theme styles
 *
 * Global foundation and structural overrides only. Component typography,
 * spacing, colors, and responsive values belong in the Elementor templates.
 */

/* Design tokens */
:root {
  --tb-sky-50:#F0F9FD;
  --tb-sky-100:#DDF2FB;
  --tb-sky-400:#42B6E3;
  --tb-sky-500:#219DCE;
  --tb-sky-600:#1780AB;
  --tb-ink-100:#E9EAEC;
  --tb-ink-200:#D5D7DA;
  --tb-ink-500:#6A6D71;
  --tb-ink-700:#414142;
  --tb-ink-800:#2E2E30;
  --tb-ink-900:#1F1F21;

  --tb-card:#FFFFFF;
  --tb-line:#E2E8EE;
  --tb-ok:#2E9E63;
  --tb-shadow:0 18px 40px -18px rgba(11,62,82,.28)
}

html {
  scroll-behavior:smooth
}

body {
  font-family:"Schibsted Grotesk",sans-serif;
  background:var(--TBBackground);
  color:var(--tb-ink-800)
}

::selection {
  background:var(--tb-sky-400);
  color:#fff
}

.tbshops-site-header,.tbshops-site-footer,#site-header.site-header,#site-footer.site-footer {
  display:none!important
}

/* Header and navigation structure */
.elementor-location-header {
  position:sticky;
  top:0;
  z-index:40
}

.elementor-location-header .elementor-widget-nav-menu a,.elementor-location-footer a,.tb-link {
  background-image:linear-gradient(currentColor,currentColor);
  background-size:0% 1.5px;
  background-repeat:no-repeat;
  background-position:left 100%;
  transition:background-size .25s ease;
  padding-bottom:2px
}

.elementor-location-header .elementor-widget-nav-menu a:hover,.elementor-location-footer a:hover,.tb-link:hover {
  background-size:100% 1.5px
}

.tb-font-display,.tb-h1 h1,.tb-h2 h2,.tb-heading h1,.tb-heading h2,.tb-heading h3 {
  font-family:"Sora",sans-serif!important;
  letter-spacing:0!important
}

.tb-font-mono,.tb-kicker,.tb-meta,.tb-status,.tb-small-meta {
  font-family:"IBM Plex Mono",monospace!important;
  letter-spacing:.14em;
  text-transform:uppercase
}

.tb-kicker {
  font-size:12px;
  color:var(--tb-sky-600);
  font-weight:500
}

.tb-topbar {
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  letter-spacing:.14em;
  background:var(--tb-ink-900);
  color:rgba(255,255,255,.75)
}

/* Shared card primitives */
.tb-card,.tb-shop-card {
  background:#fff;
  border:1px solid var(--tb-line);
  border-radius:16px;
  overflow:hidden
}

.tb-shop-card {
  transition:transform .25s ease,box-shadow .25s ease
}

.tb-shop-card:hover {
  transform:translateY(-4px);
  box-shadow:var(--tb-shadow)
}

.tb-shop-card .elementor-widget-image {
  aspect-ratio:3/2;
  overflow:hidden;
  background:var(--tb-ink-100)
}

.tb-shop-card .elementor-widget-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s ease
}

.tb-shop-card:hover .elementor-widget-image img {
  transform:scale(1.04)
}

.tb-status {
  display:inline-flex!important;
  align-items:center!important;
  gap:7px;
  white-space:nowrap;
  width:auto!important
}

.tb-status:before {
  flex:0 0 6px;
  margin:0!important;
  vertical-align:middle!important
}

.tb-status p {
  display:inline!important;
  margin:0!important;
  line-height:1.2!important
}

.elementor-loop-container>.e-loop-item {
  height:100%
}

.elementor-loop-container>.e-loop-item>.elementor-element-webshop-card,.elementor-loop-container>.e-loop-item>.tb-shop-card {
  height:100%
}

.elementor-element-webshop-card .elementor-element-webshop-image {
  aspect-ratio:590/400;
  overflow:hidden;
  background:var(--tb-ink-100)
}

.elementor-element-webshop-card .elementor-element-webshop-image a {
  display:block!important;
  width:100%;
  height:100%
}

.elementor-element-webshop-card .elementor-element-webshop-image img {
  display:block;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center top
}

.elementor-element-webshop-card .elementor-element-webshop-body,.tb-shop-card .elementor-element-webshop-body {
  flex-grow:1
}

.elementor-element-webshop-card .elementor-element-webshop-open,.tb-shop-card .elementor-element-webshop-open {
  margin-top:auto!important
}

.elementor-element-webshop-open .elementor-button {
  padding:0!important
}

.elementor-element-webshop-open.elementor-widget-button.tb-link {
  background-image:none!important
}

.elementor-element-webshop-open.elementor-widget-button.tb-link .elementor-button-text {
  background-image:linear-gradient(currentColor,currentColor);
  background-repeat:no-repeat;
  background-position:left 100%;
  background-size:0 1px;
  padding-bottom:2px;
  transition:background-size .25s ease
}

.elementor-element-webshop-open.elementor-widget-button.tb-link:hover .elementor-button-text {
  background-size:100% 1px
}

.tb-update-row {
  border-top:1px solid var(--tb-line);
  padding:28px 0
}

.tb-update-row:last-child {
  border-bottom:1px solid var(--tb-line)
}

.tb-meta {
  font-size:11px;
  color:var(--tb-ink-500)
}

.tb-status {
  font-size:11px;
  color:var(--tb-ink-700)
}

.tb-status:before {
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:99px;
  background:var(--tb-ok);
  margin-right:7px;
  vertical-align:1px
}

.tb-stamp {
  border:1.5px solid var(--tb-sky-500);
  color:var(--tb-sky-600);
  transform:rotate(-3deg);
  letter-spacing:.12em;
  background:var(--TBBackground);
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  border-radius:6px;
  padding:4px 10px;
  display:inline-block
}

.tb-ticker {
  background:var(--tb-ink-800);
  color:rgba(255,255,255,.9);
  overflow:hidden
}

.tb-ticker-track {
  display:flex;
  width:max-content;
  animation:tbTicker 36s linear infinite;
  font-family:"IBM Plex Mono",monospace;
  font-size:13px;
  letter-spacing:.18em;
  padding:14px 0;
  color:rgba(255,255,255,.9)!important
}

.tb-ticker-track span {
  margin:0 24px;
  white-space:nowrap;
  color:inherit!important
}

.tb-triangle {
  color:var(--tb-sky-400)!important;
  font-size:10px;
  margin:0 24px
}

@keyframes tbTicker {
  from {
    transform:translateX(0)
  }

to {
    transform:translateX(-50%)
  }
}

.tb-dark-cta {
  background:var(--tb-ink-800);
  color:#fff;
  position:relative;
  overflow:hidden
}

.tb-dark-cta:after {
  content:"▲";
  position:absolute;
  right:-40px;
  bottom:-110px;
  color:rgba(66,182,227,.10);
  font-size:280px;
  line-height:1
}

.tb-dark-cta>* {
  position:relative;
  z-index:1
}

.tb-logo-tile {
  background:#fff;
  border-radius:12px;
  padding:8px 10px;
  display:inline-flex;
  align-items:center;
  width:max-content
}

.tb-footer {
  background:var(--tb-ink-900);
  color:#fff
}

.tb-footer .elementor-widget-text-editor {
  color:rgba(255,255,255,.6)
}

.tb-footer-wordmark p {
  display:flex;
  align-items:center;
  gap:10px;
  margin:0!important;
  line-height:1
}

.tb-footer-wordmark .tb-footer-mark {
  color:var(--tb-sky-400);
  font-size:18px;
  line-height:1
}

.tb-footer-wordmark strong {
  color:#fff;
  font-family:"Sora",sans-serif;
  font-size:20px;
  font-weight:800;
  letter-spacing:0
}

.tb-footer-wordmark .tb-footer-accent {
  color:var(--tb-sky-400)
}

.tb-footer-nav-links p,.tb-footer-contact-links p {
  margin:0 0 12px!important
}

.tb-footer-nav-links p:last-child,.tb-footer-contact-links p:last-child {
  margin-bottom:0!important
}

.tb-footer-nav-links a {
  color:#fff!important
}

.tb-footer-contact-links,.tb-footer-contact-links a {
  color:rgba(255,255,255,.85)!important
}

.tb-footer-nav-links a,.tb-footer-contact-links a {
  display:inline;
  background-image:linear-gradient(currentColor,currentColor)!important;
  background-repeat:no-repeat!important;
  background-position:left 100%!important;
  background-size:0 1px!important;
  padding-bottom:2px;
  transition:background-size .25s ease
}

.tb-footer-nav-links a:hover,.tb-footer-contact-links a:hover {
  background-size:100% 1px!important;
  color:var(--tb-sky-400)!important
}

.tb-footer-bottom p {
  margin:0!important
}

@media(max-width:767px) {
  .tb-footer-main {
    grid-template-columns:1fr!important
  }

.tb-footer-bottom {
    align-items:flex-start!important
  }

.tb-footer-bottom>.elementor-element {
    width:100%!important
  }

.tb-footer-bottom .elementor-widget-text-editor {
    text-align:left!important
  }
}

/* Forms */
.tb-form .elementor-field-group label {
  font-weight:500;
  font-size:14px;
  margin-bottom:8px
}

/* Forms */
.tb-form input,/* Forms */
.tb-form textarea,/* Forms */
.tb-form select {
  background:var(--TBBackground)!important;
  border:1px solid var(--tb-line)!important;
  border-radius:12px!important;
  padding:14px 16px!important;
  font-size:15px!important;
  color:var(--tb-ink-800)!important
}

/* Forms */
.tb-form input:focus,/* Forms */
.tb-form textarea:focus,/* Forms */
.tb-form select:focus {
  border-color:var(--tb-sky-500)!important;
  box-shadow:none!important;
  outline:2px solid rgba(33,157,206,.18)!important
}

/* Forms */
.tb-form button {
  border-radius:999px!important;
  background:var(--tb-sky-600)!important;
  color:#fff!important;
  font-weight:700!important;
  padding:14px 30px!important
}

.tb-prose .elementor-widget-theme-post-content {
  font-size:17px;
  line-height:1.8;
  color:var(--tb-ink-500)
}

.tb-prose h2,.tb-prose h3 {
  font-family:"Sora",sans-serif;
  color:var(--tb-ink-800)
}

.tb-prose p:first-child {
  font-size:21px;
  line-height:1.7;
  color:var(--tb-ink-800);
  font-weight:500
}

.tb-hero-graphic {
  background:var(--tb-ink-800);
  border-radius:16px;
  min-height:260px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.6);
  font-family:"IBM Plex Mono",monospace;
  letter-spacing:.2em;
  text-align:center
}

.tb-hero-graphic:before {
  content:"▲";
  display:block;
  color:var(--tb-sky-400);
  font-size:70px;
  line-height:1;
  margin-bottom:16px
}

.elementor-widget-button.tb-link {
  background-image:none!important
}

.elementor-widget-button.tb-link .elementor-button-text {
  background-image:linear-gradient(currentColor,currentColor);
  background-repeat:no-repeat;
  background-position:left 100%;
  background-size:0 1px;
  padding-bottom:2px;
  transition:background-size .25s ease
}

.elementor-widget-button.tb-link:hover .elementor-button-text {
  background-size:100% 1px
}

.elementor-element-topbar .elementor-widget-text-editor p {
  margin:0!important
}

.elementor-element-topbar .elementor-widget-text-editor,.elementor-element-topbar .elementor-widget-text-editor p {
  line-height:1.5!important
}

.elementor-element-topbar a {
  color:var(--tb-sky-400)!important;
  text-decoration:none
}

.elementor-element-topbar a:hover {
  color:#fff!important
}

.tb-home-title {
  max-width:82%;
  margin:0;
  font-family:"Sora",sans-serif;
  font-size:78px;
  font-weight:800;
  line-height:1.04;
  letter-spacing:0;
  color:var(--tb-ink-800)
}

.tb-momentum-swoosh {
  position:relative;
  display:inline-block;
  color:var(--tb-sky-500)
}

.tb-momentum-swoosh:after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-.16em;
  height:.28em;
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 14' preserveAspectRatio='none'%3E%3Cpath d='M2 11 C 60 13 150 10 198 2' fill='none' stroke='%23414142' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E")
}

@media(max-width:1024px) {
  .tb-home-title {
    font-size:58px
  }
}

@media(max-width:767px) {
  .tb-home-title {
    max-width:100%;
    font-size:42px
  }
}

.elementor-location-header .elementor-widget-nav-menu a,
.elementor-location-header .elementor-nav-menu--main .elementor-item {
  
background-image:none!important;
  
background-size:0 1px!important;
  
padding:0!important;
  
margin:0!important;
  
border:0!important;
  
line-height:1.2!important;
  
font-family:"Schibsted Grotesk",sans-serif!important;
  
font-size:15px!important;
  
font-weight:500!important;
  
color:var(--tb-sky-600)!important;
  
transition:color .2s ease!important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu {
  
display:flex!important;
  
align-items:center!important;
  
gap:36px!important;
}

.elementor-location-header .elementor-nav-menu--dropdown:before {
  font-size:24px!important
}

.elementor-location-header .elementor-nav-menu--main .elementor-item:before,
.elementor-location-header .elementor-nav-menu--main .elementor-item:after {
  
display:none!important;
  
content:none!important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-location-header .elementor-nav-menu--main .current-menu-item > .elementor-item {
  
color:var(--tb-ink-800)!important;
  
transform:none!important;
}

.elementor-location-header .elementor-button {
  
min-height:0!important;
  
padding:12px 24px!important;
  
line-height:1.2!important;
  
box-shadow:none!important;
}

.elementor-location-header [data-id="main-header"]>.e-con-inner {
  
min-height:74px!important;
}

@media(max-width:767px) {
  /* Header and navigation structure */
.elementor-location-header {
    position:relative
  }

.tb-hide-mobile {
    display:none!important
  }

.tb-ticker-track {
    animation:none
  }

.tb-shop-card:hover {
    transform:none
  }

.tb-mobile-stack {
    width:100%!important
  }

.tb-h1 h1 {
    font-size:42px!important
  }

.elementor-element-shop-title.tb-h1 h1 {
    font-size:clamp(30px,9vw,34px)!important
  }

.tb-h2 h2 {
    font-size:34px!important
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }

.tb-ticker-track {
    animation:none
  }

.tb-shop-card,.tb-shop-card img,.tb-link {
    transition:none
  }
}

.elementor-location-header .elementor-nav-menu--main .elementor-item {
  
position:relative!important;
  
color:var(--tb-ink-800)!important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item:after {
  
display:block!important;
  
content:""!important;
  
position:absolute!important;
  
left:0!important;
  
right:0!important;
  
bottom:-8px!important;
  
height:1px!important;
  
background:currentColor!important;
  
transform:scaleX(0)!important;
  
transform-origin:left center!important;
  
transition:transform .22s ease!important;
  
opacity:1!important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-location-header .elementor-nav-menu--main .current-menu-item > .elementor-item {
  
color:var(--tb-sky-600)!important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item:hover:after,
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active:after,
.elementor-location-header .elementor-nav-menu--main .current-menu-item > .elementor-item:after {
  
transform:scaleX(1)!important;
}

/* Rich text and content */
.tb-page-prose {
  color:var(--tb-ink-700)
}

/* Rich text and content */
.tb-page-prose h1,/* Rich text and content */
.tb-page-prose h2,/* Rich text and content */
.tb-page-prose h3,/* Rich text and content */
.tb-page-prose h4 {
  font-family:"Sora",sans-serif!important;
  color:var(--tb-ink-800)!important;
  letter-spacing:0!important;
  line-height:1.2!important
}

/* Rich text and content */
.tb-page-prose h1 {
  font-size:34px!important;
  margin:0 0 24px!important
}

/* Rich text and content */
.tb-page-prose h2 {
  font-size:28px!important;
  margin:48px 0 18px!important
}

/* Rich text and content */
.tb-page-prose h3 {
  font-size:22px!important;
  margin:36px 0 14px!important
}

/* Rich text and content */
.tb-page-prose h4 {
  font-size:18px!important;
  margin:28px 0 12px!important
}

/* Rich text and content */
.tb-page-prose p {
  margin:0 0 1.35em!important
}

/* Rich text and content */
.tb-page-prose ul,/* Rich text and content */
.tb-page-prose ol {
  margin:0 0 1.5em!important;
  padding-left:1.4em!important
}

/* Rich text and content */
.tb-page-prose li {
  margin:.45em 0!important
}

/* Rich text and content */
.tb-page-prose a {
  color:var(--tb-sky-600)!important;
  text-decoration-thickness:1px;
  text-underline-offset:3px
}

/* Rich text and content */
.tb-page-prose strong {
  color:var(--tb-ink-800)
}

/* Rich text and content */
.tb-page-prose table {
  display:block;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  border-collapse:collapse;
  margin:28px 0
}

/* Rich text and content */
.tb-page-prose th,/* Rich text and content */
.tb-page-prose td {
  border:1px solid var(--tb-line);
  padding:12px 14px;
  text-align:left;
  vertical-align:top
}

/* Rich text and content */
.tb-page-prose hr {
  border:0;
  border-top:1px solid var(--tb-line);
  margin:40px 0
}

/* Rich text and content */
.tb-page-prose .elementor-widget-container>:first-child {
  margin-top:0!important
}

/* Rich text and content */
.tb-page-prose .elementor-widget-container>:last-child {
  margin-bottom:0!important
}

@media(max-width:767px) {
  /* Rich text and content */
.tb-page-prose h1 {
    font-size:29px!important
  }

/* Rich text and content */
.tb-page-prose h2 {
    font-size:24px!important
  }

/* Rich text and content */
.tb-page-prose h3 {
    font-size:20px!important
  }
}

.tb-contact-direct .elementor-widget-heading,.tb-contact-direct .elementor-widget-text-editor {
  margin:0!important
}

.tb-contact-direct .elementor-widget-text-editor p {
  margin:0!important
}

.tb-contact-direct a {
  color:#FFFFFF!important;
  background-image:linear-gradient(currentColor,currentColor)!important;
  background-repeat:no-repeat!important;
  background-position:left 100%!important;
  background-size:0 1px!important;
  text-decoration:none!important;
  padding-bottom:2px
}

.tb-contact-direct a:hover {
  color:var(--tb-sky-400)!important;
  background-size:100% 1px!important
}

.tb-acquisition-note {
  position:relative!important
}

.tb-acquisition-stamp {
  position:absolute!important;
  top:-15px!important;
  right:24px!important;
  width:auto!important;
  z-index:2
}

.elementor-element-contact-direct .elementor-widget-heading,.elementor-element-contact-direct .elementor-widget-text-editor {
  margin:0!important
}

.elementor-element-contact-direct .elementor-widget-text-editor p {
  margin:0!important
}

.elementor-element-contact-direct a {
  color:#FFFFFF!important;
  background-image:linear-gradient(currentColor,currentColor)!important;
  background-repeat:no-repeat!important;
  background-position:left 100%!important;
  background-size:0 1px!important;
  text-decoration:none!important;
  padding-bottom:2px
}

.elementor-element-contact-direct a:hover {
  color:var(--tb-sky-400)!important;
  background-size:100% 1px!important
}

.elementor-element-contact-acquisition {
  position:relative!important
}

.elementor-element-contact-stamp-wrap {
  position:absolute!important;
  top:-15px!important;
  right:24px!important;
  width:auto!important;
  z-index:2
}

/* Blog archive list */
.elementor-element-update-row {
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr) max-content!important;
  align-items:baseline!important;
  column-gap:32px!important
}

/* Blog archive list */
.elementor-element-update-row>.elementor-element {
  width:auto!important;
  min-width:0
}

.elementor-element-update-main {
  padding:0!important
}

.elementor-element-update-title h3 {
  margin:0!important
}

.elementor-element-update-excerpt .elementor-widget-container {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden
}

.elementor-element-update-read {
  align-self:baseline!important
}

.elementor-element-update-read .elementor-button {
  padding:0!important;
  white-space:nowrap!important;
  background:transparent!important
}

.elementor-element-update-read .elementor-button-text {
  white-space:nowrap!important
}

.elementor-element-updates-loop .elementor-pagination {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin-top:44px
}

.elementor-element-updates-loop .page-numbers {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 12px;
  border:1px solid var(--tb-line);
  border-radius:999px;
  background:#fff;
  color:var(--tb-ink-700);
  font-family:"IBM Plex Mono",monospace;
  font-size:12px;
  line-height:1;
  text-decoration:none;
  transition:border-color .2s,color .2s,background-color .2s
}

.elementor-element-updates-loop .page-numbers:hover {
  border-color:var(--tb-sky-500);
  color:var(--tb-sky-600)
}

.elementor-element-updates-loop .page-numbers.current {
  border-color:var(--tb-ink-800);
  background:var(--tb-ink-800);
  color:#fff
}

/* Single post layout */
.elementor-element-single-breadcrumb p {
  margin:0!important
}

/* Single post layout */
.elementor-element-single-breadcrumb a {
  color:var(--tb-ink-500);
  text-decoration:none
}

/* Single post layout */
.elementor-element-single-breadcrumb span {
  color:var(--tb-sky-400);
  padding:0 9px;
  font-size:10px
}

.elementor-element-single-meta .elementor-post-info__terms-list,.elementor-element-single-meta .elementor-post-info {
  justify-content:center!important
}

.elementor-element-single-meta .elementor-post-info__item {
  font-family:"IBM Plex Mono",monospace!important;
  font-size:12px!important;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--tb-ink-500)!important
}

.elementor-element-single-content h2,.elementor-element-single-content h3 {
  font-family:"Sora",sans-serif!important;
  color:var(--tb-ink-800)!important;
  letter-spacing:0!important
}

.elementor-element-single-content h2 {
  font-size:30px!important;
  line-height:1.25!important;
  margin:44px 0 18px!important
}

.elementor-element-single-content h3 {
  font-size:23px!important;
  line-height:1.3!important;
  margin:36px 0 14px!important
}

.elementor-element-single-content p {
  margin:0 0 1.45em!important
}

.elementor-element-single-content p:first-child {
  font-size:21px;
  line-height:1.7;
  color:var(--tb-ink-800);
  font-weight:500
}

.elementor-element-single-content a {
  color:var(--tb-sky-600)
}

.elementor-element-single-content img {
  max-width:100%;
  height:auto;
  border-radius:10px
}

.elementor-element-single-post-nav .elementor-post-navigation__link a {
  font-family:"Sora",sans-serif;
  color:var(--tb-ink-800)
}

.elementor-element-single-post-nav .post-navigation__prev--label,.elementor-element-single-post-nav .post-navigation__next--label {
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  letter-spacing:.14em;
  color:var(--tb-ink-500)
}

@media(max-width:767px) {
  /* Blog archive list */
.elementor-element-update-row {
    grid-template-columns:1fr!important;
    align-items:start!important;
    row-gap:10px!important
  }

.elementor-element-update-read {
    display:none!important
  }

.elementor-element-single-content p:first-child {
    font-size:19px
  }
}

/* Rich text and content */
.tb-page-prose {
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere
}

/* Rich text and content */
.tb-page-prose * {
  max-width:100%;
  box-sizing:border-box
}

/* Rich text and content */
.tb-page-prose pre {
  white-space:pre-wrap;
  overflow-wrap:anywhere
}

.elementor-element-contact-direct .elementor-widget-text-editor,.elementor-element-contact-direct .elementor-widget-text-editor p,.elementor-element-contact-direct .elementor-widget-text-editor a {
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.5!important
}

.elementor-element-hero-contact .elementor-button:hover {
  color:#1780AB!important;
  border-color:#1780AB!important;
  background-color:transparent!important
}

/* Design tokens */
:root {

  --tb-cyan-dark:#1689B8;
  --tb-ink:#111827;

  --tb-muted:#607085;

  --tb-surface:#FFFFFF;
  --tb-soft:#EEF6FA;
  --tb-line:#E2E8F0;
  --tb-lime:#D7F44A;
  --tb-coral:#FF6B5F
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth
}

body {
  font-family:"Plus Jakarta Sans",Arial,sans-serif;
  color:var(--tb-ink);
  background:var(--TBBackground);
  letter-spacing:0
}

a {
  color:var(--tb-cyan-dark)
}

a:focus-visible,button:focus-visible,[role="button"]:focus-visible {
  outline:3px solid rgba(64,176,224,.55);
  outline-offset:4px
}

.elementor-page main,.elementor-page .site-main {
  overflow:hidden
}

.tbshops-site-header {
  position:sticky;
  top:0;
  z-index:100;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:26px;
  padding:12px clamp(18px,4vw,54px);
  background:rgba(248,250,252,.9);
  backdrop-filter:saturate(180%) blur(16px);
  border-bottom:1px solid rgba(226,232,240,.85)
}

.tbshops-brand {
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--TBCharcoal);
  font-weight:800;
  text-decoration:none;
  font-size:21px;
  white-space:nowrap
}

.tbshops-brand span {
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:8px;
  background:var(--TBPrimaryCyan);
  color:#fff
}

.tbshops-brand-image img {
  display:block;
  width:auto;
  height:54px;
  max-width:210px;
  object-fit:contain
}

.tbshops-site-header nav {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  flex-wrap:wrap
}

.tbshops-site-header nav a {
  min-height:44px;
  display:inline-flex;
  align-items:center;
  padding:0 14px;
  border-radius:999px;
  color:var(--tb-ink);
  font-weight:800;
  font-size:14px;
  text-decoration:none
}

.tbshops-site-header nav a:hover {
  background:#fff;
  color:var(--tb-cyan-dark)
}

.tbshops-header-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  background:var(--tb-ink);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  box-shadow:0 12px 28px rgba(17,24,39,.16)
}

.tbshops-header-cta:hover {
  background:var(--tb-cyan-dark);
  color:#fff
}

.tbshops-section {
  position:relative;
  padding:88px 24px
}

.tbshops-hero {
  position:relative;
  padding:112px 24px 82px;
  background:radial-gradient(circle at 88% 8%,rgba(215,244,74,.35),transparent 24%),linear-gradient(135deg,#fff 0%,#f8fbfd 45%,var(--tb-soft) 100%);
  isolation:isolate
}

.tbshops-hero:before {
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:10px;
  background:linear-gradient(90deg,var(--TBPrimaryCyan),var(--tb-lime),var(--tb-coral));
  z-index:-1
}

.tbshops-kicker .elementor-heading-title {
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--tb-cyan-dark);
  font-size:13px!important;
  font-weight:800!important;
  text-transform:uppercase;
  letter-spacing:.08em
}

.tbshops-kicker .elementor-heading-title:before {
  content:"";
  width:34px;
  height:2px;
  background:var(--TBPrimaryCyan)
}

.tbshops-hero-title .elementor-heading-title {
  max-width:980px;
  font-size:clamp(44px,6.4vw,88px)!important;
  line-height:.98!important;
  color:var(--tb-ink);
  letter-spacing:0
}

.tbshops-lead {
  max-width:770px
}

.tbshops-lead p {
  font-size:20px;
  line-height:1.75;
  color:var(--tb-muted);
  margin:0
}

.tbshops-section-title .elementor-heading-title {
  font-size:clamp(32px,4vw,54px)!important;
  line-height:1.08!important;
  color:var(--tb-ink);
  letter-spacing:0
}

.tbshops-section-copy {
  max-width:780px
}

.tbshops-section-copy p {
  color:var(--tb-muted);
  font-size:17px;
  line-height:1.75;
  margin:0
}

.tbshops-soft {
  background:linear-gradient(180deg,var(--tb-soft),#fff)
}

.tbshops-dark {
  background:var(--tb-ink);
  color:#fff
}

.tbshops-dark .elementor-heading-title,.tbshops-dark p {
  color:#fff
}

.tbshops-dark p {
  opacity:.82
}

.tbshops-button-primary .elementor-button,.tbshops-button-secondary .elementor-button {
  border-radius:999px;
  padding:16px 24px;
  font-weight:800;
  transition:transform .2s ease,background .2s ease,color .2s ease
}

.tbshops-button-primary .elementor-button {
  background:var(--TBPrimaryCyan);
  color:#fff
}

.tbshops-button-primary .elementor-button:hover {
  background:var(--tb-cyan-dark);
  color:#fff;
  transform:translateY(-2px)
}

.tbshops-button-secondary .elementor-button {
  background:#fff;
  color:var(--tb-ink);
  border:1px solid var(--tb-line)
}

.tbshops-button-secondary .elementor-button:hover {
  border-color:var(--TBPrimaryCyan);
  color:var(--tb-cyan-dark);
  transform:translateY(-2px)
}

.tbshops-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin:26px 0 0
}

.tbshops-card {
  position:relative;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 22px 60px rgba(15,23,42,.08);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease
}

.tbshops-card:hover {
  transform:translateY(-5px);
  border-color:rgba(64,176,224,.45);
  box-shadow:0 32px 80px rgba(15,23,42,.13)
}

.tbshops-card-media {
  display:block;
  aspect-ratio:16/10;
  background:var(--tb-soft);
  overflow:hidden
}

.tbshops-card-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .3s ease
}

.tbshops-card:hover .tbshops-card-media img {
  transform:scale(1.045)
}

.tbshops-card-placeholder {
  height:100%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--tb-soft),#fff)
}

.tbshops-card-placeholder span {
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:8px;
  background:var(--TBPrimaryCyan);
  color:#fff;
  font-weight:800
}

.tbshops-card-body {
  padding:22px
}

.tbshops-card-label {
  margin:0 0 10px!important;
  color:var(--tb-cyan-dark)!important;
  font-size:12px!important;
  font-weight:800!important;
  text-transform:uppercase;
  letter-spacing:.08em
}

.tbshops-card-body h3 {
  font-size:21px;
  line-height:1.22;
  margin:0 0 10px
}

.tbshops-card-body h3 a {
  color:var(--tb-ink);
  text-decoration:none
}

.tbshops-card-body p {
  color:var(--tb-muted);
  font-size:15px;
  line-height:1.65;
  margin:0
}

.tbshops-card-body time {
  display:block;
  color:var(--tb-muted);
  font-size:13px;
  font-weight:800;
  margin-bottom:10px
}

.tbshops-card-link {
  display:inline-flex;
  margin-top:18px;
  color:var(--tb-cyan-dark);
  font-weight:800
}

.tbshops-site-footer {
  display:grid;
  grid-template-columns:1fr auto;
  gap:34px;
  padding:54px clamp(18px,4vw,54px);
  background:#fff;
  border-top:1px solid var(--tb-line)
}

.tbshops-footer-main p {
  max-width:460px;
  margin:16px 0 0;
  color:var(--tb-muted);
  line-height:1.65
}

.tbshops-footer-logo img {
  height:58px
}

.tbshops-site-footer nav {
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap:16px 24px;
  flex-wrap:wrap;
  max-width:620px
}

.tbshops-site-footer nav a {
  color:var(--tb-ink);
  font-weight:800;
  text-decoration:none
}

.tbshops-site-footer nav a:hover {
  color:var(--tb-cyan-dark)
}

@media (max-width:980px) {
  .tbshops-site-header {
    grid-template-columns:1fr auto
  }

.tbshops-site-header nav {
    grid-column:1/-1;
    justify-content:flex-start
  }

.tbshops-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media (max-width:640px) {
  .tbshops-site-header {
    display:flex;
    align-items:flex-start;
    flex-direction:column;
    gap:12px
  }

.tbshops-brand-image img {
    height:46px;
    max-width:180px
  }

.tbshops-site-header nav {
    gap:6px
  }

.tbshops-site-header nav a {
    padding:0 10px
  }

.tbshops-header-cta {
    display:none
  }

.tbshops-section {
    padding:58px 18px
  }

.tbshops-hero {
    padding:72px 18px 54px
  }

.tbshops-lead p {
    font-size:17px
  }

.tbshops-grid {
    grid-template-columns:1fr;
    gap:18px
  }

.tbshops-card-body {
    padding:19px
  }

.tbshops-site-footer {
    grid-template-columns:1fr;
    padding:42px 18px
  }

.tbshops-site-footer nav {
    justify-content:flex-start
  }
}

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

/* Editable homepage approach rows. Content lives in Elementor containers; layout stays centralized. */
.elementor-element-approach-row-portfolio,
.elementor-element-approach-row-service,
.elementor-element-approach-row-checkout,
.elementor-element-approach-row-logistics {
  
border-top: 1px solid var(--tb-line);
  
padding: 32px 0;
}

.elementor-element-approach-row-logistics {
  
border-bottom: 1px solid var(--tb-line);
}

.tb-feature-label {
  
flex: 0 0 140px;
  
margin: 0;
  
font-family: "IBM Plex Mono", monospace;
  
font-size: 11px;
  
font-weight: 700;
  
letter-spacing: .18em;
  
line-height: 1.4;
  
color: var(--tb-sky-600);
}

.tb-feature-title {
  
flex: 1 1 0;
  
margin: 0;
}

.tb-feature-title .elementor-heading-title {
  
margin: 0;
  
font-family: Sora, sans-serif;
  
font-size: 21px;
  
font-weight: 700;
  
line-height: 1.3;
  
color: var(--tb-ink-800);
}

.tb-feature-description {
  
flex: 1.4 1 0;
  
margin: 0;
}

.tb-feature-description p {
  
margin: 0;
  
color: var(--tb-ink-500);
  
font-size: 15px;
  
line-height: 1.65;
}

@media (max-width: 767px) {
  
.elementor-element-approach-row-portfolio,
.elementor-element-approach-row-service,
.elementor-element-approach-row-checkout,
.elementor-element-approach-row-logistics {
    
flex-direction: column;
    
gap: 8px;
  }

.tb-feature-label,
.tb-feature-title,
.tb-feature-description {
    
flex: none;
    
width: 100%;
  }
}

#site-header.site-header,#site-footer.site-footer {
  display:none!important
}

.tbshops-site-header .tbshops-brand-image img {
  height:40px!important;
  width:auto!important;
  max-width:150px!important
}

.tbshops-site-footer .tbshops-brand-image img {
  height:32px!important;
  width:auto!important;
  max-width:120px!important
}

@media (max-width: 767px) {
  
body:has(.elementor-location-header .elementor-menu-toggle.elementor-active) {
     overflow:hidden;
  }

/* Header and navigation structure */
.elementor-location-header {
     position:relative!important;
     z-index:1000!important;
  }

.elementor-location-header [data-id="main-header"] > .e-con-inner {
     min-height:72px!important;
     padding:12px 20px!important;
  }

.elementor-location-header [data-id="nav-logo"] {
     width:auto!important;
     max-width:calc(100% - 58px)!important;
  }

.elementor-location-header [data-id="nav-logo"] img {
     width:auto!important;
     height:48px!important;
     max-width:180px!important;
  }

.elementor-location-header [data-id="primary-nav"] {
     width:auto!important;
     margin-left:auto!important;
  }

.elementor-location-header .elementor-menu-toggle {
     position:relative!important;
     z-index:1003!important;
     width:40px!important;
     height:40px!important;
     padding:9px!important;
     border:1px solid var(--tb-line)!important;
     border-radius:4px!important;
     color:var(--tb-ink-800)!important;
     background:#fff!important;
  }

.elementor-location-header .elementor-menu-toggle svg {
     width:22px!important;
     height:22px!important;
  }

.elementor-location-header .elementor-nav-menu--dropdown {
     display:block!important;
     position:fixed!important;
     inset:0 0 0 auto!important;
     z-index:1002!important;
     width:min(320px,85vw)!important;
     max-width:320px!important;
     min-height:100dvh!important;
     height:100dvh!important;
     max-height:100dvh!important;
     margin:0!important;
     padding:76px 24px 28px!important;
     overflow-y:auto!important;
     overscroll-behavior:contain!important;
     background:#1F1F21!important;
     box-shadow:-18px 0 48px rgba(17,24,39,.24)!important;
     transform:translate3d(105%,0,0)!important;
     opacity:0!important;
     visibility:hidden!important;
     pointer-events:none!important;
     will-change:transform,opacity!important;
     transition:transform 420ms cubic-bezier(.22,1,.36,1),opacity 220ms ease,visibility 0s linear 420ms!important;
  }

.elementor-location-header .elementor-nav-menu--dropdown:before {
     content:"▲ TB SHOPS";
     display:block;
     padding:0 0 22px;
     border-bottom:1px solid rgba(255,255,255,.14);
     color:#42B6E3;
     font-family:"IBM Plex Mono",monospace;
     font-size:12px;
     font-weight:600;
     letter-spacing:.08em;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown {
     transform:translate3d(0,0,0)!important;
     opacity:1!important;
     visibility:visible!important;
     pointer-events:auto!important;
     transition-delay:0s!important;
  }

.elementor-location-header:after {
     content:"";
     position:fixed;
     inset:0;
     z-index:999;
     background:rgba(31,31,33,.6);
     backdrop-filter:blur(4px);
     opacity:0;
     pointer-events:none;
     transition:opacity 260ms ease,backdrop-filter 260ms ease;
  }

.elementor-location-header:has(.elementor-menu-toggle.elementor-active):after {
     opacity:1;
     pointer-events:auto;
  }

.elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu {
     display:flex!important;
     flex-direction:column!important;
     gap:0!important;
     padding:16px 0 0!important;
  }

.elementor-location-header .elementor-nav-menu--dropdown li {
     width:100%!important;
     border-bottom:1px solid rgba(255,255,255,.14)!important;
  }

.elementor-location-header .elementor-nav-menu--dropdown li {
     opacity:0;
     transform:translate3d(14px,0,0);
     transition:opacity 240ms ease,transform 420ms cubic-bezier(.22,1,.36,1);
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown li {
     opacity:1;
     transform:translate3d(0,0,0);
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown li:nth-child(1) {
     transition-delay:80ms;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown li:nth-child(2) {
     transition-delay:120ms;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown li:nth-child(3) {
     transition-delay:160ms;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown li:nth-child(4) {
     transition-delay:200ms;
  }

.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item {
     display:flex!important;
     align-items:center!important;
     min-height:58px!important;
     padding:0!important;
     color:#fff!important;
     font-family:"Sora",sans-serif!important;
     font-size:16px!important;
     font-weight:400!important;
     background:none!important;
  }

.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item:hover,
.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active {
     color:#42B6E3!important;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active {
     position:fixed!important;
     top:20px!important;
     right:20px!important;
     color:#fff!important;
     border-color:transparent!important;
     background:transparent!important;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close,
.elementor-location-header .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close svg,
.elementor-location-header .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close path {
     color:#fff!important;
     fill:#fff!important;
     stroke:#fff!important;
     opacity:1!important;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open {
     display:none!important;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close {
     display:block!important;
  }

.elementor-location-header .tb-mobile-contact-link {
     display:flex!important;
     align-items:center!important;
     justify-content:center!important;
     min-height:48px!important;
     padding:14px 20px!important;
     border-radius:999px!important;
     background:#42B6E3!important;
     color:#1F1F21!important;
     font-family:"Sora",sans-serif!important;
     font-size:13px!important;
     font-weight:600!important;
     line-height:1.2!important;
     text-decoration:none!important;
     opacity:0;
     transform:translate3d(0,8px,0);
     transition:opacity 240ms ease 260ms,transform 420ms cubic-bezier(.22,1,.36,1) 260ms!important;
  }

.elementor-location-header .elementor-nav-menu--dropdown .tb-mobile-contact-link {
     padding:14px 20px!important;
     background:#42B6E3!important;
     color:#1F1F21!important;
  }

.elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown .tb-mobile-contact-link {
     opacity:1;
     transform:translate3d(0,0,0);
  }

.tbshops-hero-title .elementor-heading-title,.tbshops-lead,.tbshops-section-copy,/* Rich text and content */
.tb-page-prose {
     max-width:100%!important;
     width:100%!important;
  }

.tbshops-hero,.tbshops-section {
     padding-left:20px!important;
     padding-right:20px!important;
  }

.tbshops-grid {
     width:100%!important;
  }

.tb-shop-hero-grid,.tb-shop-details,.elementor-element-shop-hero-grid {
     grid-template-columns:minmax(0,1fr)!important;
     width:100%!important;
  }

.tb-shop-hero-grid > .e-con,.tb-shop-details > .e-con,.tb-shop-single-hero .e-con-inner > .e-con {
     width:100%!important;
     max-width:none!important;
  }

.tb-shop-single-content,.tb-shop-single-hero {
     width:100%!important;
  }

.elementor-element-single-more,.elementor-element-single-cta {
     width:100%!important;
  }

.elementor-element-single-cta-title .elementor-heading-title,.elementor-element-single-cta-text,.elementor-element-single-more .elementor-heading-title {
     color:#fff!important;
  }

.elementor-element-single-cta-button .elementor-button {
     background:#42B6E3!important;
     color:#1F1F21!important;
     border-radius:999px!important;
  }

/* Blog archive list */
.elementor-element-update-row {
     cursor:pointer!important;
  }

html body .elementor-element-update-read {
     display:block!important;
     margin-top:4px!important;
  }

html body .tbshops-hero-title .elementor-heading-title,html body .tbshops-lead,html body .tbshops-section-copy,html body /* Rich text and content */
.tb-page-prose {
     max-width:100%!important;
     width:100%!important;
  }

.elementor-element-update-read .elementor-button {
     padding:0!important;
  }
}

@media (prefers-reduced-motion: reduce) {
  
.elementor-location-header .elementor-nav-menu--dropdown,
.elementor-location-header .elementor-nav-menu--dropdown li,
.elementor-location-header .tb-mobile-contact-link,
.elementor-location-header:after {
     transition:none!important;
  }
}

/* Webshop ticker */
.tb-webshop-ticker {
  width:100%;
  overflow:hidden
}

/* Webshop ticker */
.tb-webshop-ticker__track {
  display:flex;
  width:max-content;
  animation:tbWebshopTicker var(--tb-ticker-duration,36s) linear infinite;
  will-change:transform
}

/* Webshop ticker */
.tb-webshop-ticker__group {
  display:flex;
  flex:none;
  align-items:center;
  gap:42px;
  padding-right:42px
}

/* Webshop ticker */
.tb-webshop-ticker__link {
  color:#fff;
  text-decoration:none;
  white-space:nowrap;
  font-family:"IBM Plex Mono",monospace;
  font-size:11px;
  font-weight:500;
  letter-spacing:.16em;
  line-height:1
}

/* Webshop ticker */
.tb-webshop-ticker__link:hover {
  color:#42b6e3
}

/* Webshop ticker */
.tb-webshop-ticker__separator {
  color:#42b6e3;
  font-size:7px;
  line-height:1
}

.tb-webshop-ticker:hover .tb-webshop-ticker__track {
  animation-play-state:paused
}

@keyframes tbWebshopTicker {
  to {
    transform:translateX(-50%)
  }
}

@media (min-width:1025px) {
  .tb-shop-hero-grid,.elementor-element-shop-hero-grid {
    grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr)!important
  }
}

.tb-shop-details {
  grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr)!important
}

.tb-shop-single-featured {
  aspect-ratio:21/9;
  overflow:hidden;
  border:1px solid var(--tb-line);
  border-radius:8px;
  background:var(--tb-ink-100)
}

.tb-shop-single-featured img {
  display:block;
  width:100%;
  height:100%!important;
  object-fit:cover
}

.elementor-element-shop-fiche {
  position:relative;
  align-self:start!important;
  height:max-content!important;
  align-content:start
}

.tb-shop-stamp {
  position:absolute!important;
  top:-13px;
  right:24px;
  z-index:2;
  width:auto!important;
  padding:5px 12px;
  border:1.5px solid #219dce;
  border-radius:4px;
  background:var(--TBBackground);
  transform:rotate(-3deg)
}

.tb-shop-fiche .elementor-heading-title {
  overflow-wrap:anywhere
}

.elementor-element-shop-status-value .tb-status-dot {
  color:#2E9E63
}

.tb-shop-single-content .wp-block-buttons {
  display:none
}

.tb-internal-breadcrumb .elementor-heading-title,.tb-shop-single-hero .elementor-heading-title {
  letter-spacing:0
}

.tb-webshop-sector-filter .e-filter {
  scrollbar-width:thin
}

.elementor-element-single-media {
  display:block!important;
  width:100%!important;
  padding:0 20px!important;
  box-sizing:border-box
}

.elementor-element-single-more {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:24px!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:42px 20px!important;
  border-top:1px solid #E2E8EE!important;
  background:#F7FAFC!important
}

.elementor-element-single-post-nav {
  width:auto!important;
  max-width:1152px!important;
  margin:0 auto!important
}

.elementor-element-single-overview {
  width:auto!important;
  justify-self:end!important
}

.elementor-element-single-cta {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:40px!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:80px max(20px,calc((100% - 1152px)/2))!important;
  background:#2E2E30!important
}

.elementor-element-single-cta-copy {
  display:block!important;
  width:auto!important;
  max-width:720px!important;
  padding:0!important
}

.elementor-element-single-cta-title,.elementor-element-single-cta-text {
  width:auto!important;
  max-width:720px!important
}

.elementor-element-single-cta-button {
  width:auto!important;
  justify-self:end!important
}

@media(max-width:767px) {
  .elementor-element-single-more,.elementor-element-single-cta {
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    padding:42px 20px!important
  }

.elementor-element-single-overview,.elementor-element-single-cta-button {
    align-self:flex-start!important
  }
}

@media(max-width:767px) {
  .tb-shop-hero-grid,.tb-shop-details {
    grid-template-columns:minmax(0,1fr)!important
  }

.tb-shop-single-featured {
    aspect-ratio:3/2
  }

.tb-webshop-sector-filter .e-filter {
    padding-bottom:6px
  }
}

@media(prefers-reduced-motion:reduce) {
  /* Webshop ticker */
.tb-webshop-ticker__track {
    animation:none;
    transform:none
  }

/* Webshop ticker */
.tb-webshop-ticker__group[aria-hidden="true"] {
    display:none
  }
}
