/* Homepage layout. body.tt-redesign #page-container #main-content is expanded by build_home.py to the scoped main-content selector. */
body.tt-redesign #page-container #main-content { --home-width:1200px; --home-gutter:max(20px, calc((100vw - 1200px)/2)); color:#000; overflow:hidden; }
body.tt-redesign #page-container #main-content *, body.tt-redesign #page-container #main-content *::before, body.tt-redesign #page-container #main-content *::after { box-sizing:border-box; }
body.tt-redesign #page-container #et-main-area { padding-top:96px!important; }
body.tt-redesign #page-container #main-content .et_pb_section { padding:0!important; background-color:#fff!important; }
body.tt-redesign #page-container #main-content .et_pb_row { width:calc(100% - 40px)!important; max-width:1200px!important; padding:0!important; margin:0 auto!important; }
body.tt-redesign #page-container #main-content .et_pb_row::after { display:none; }
body.tt-redesign #page-container #main-content .et_pb_column { float:none!important; margin:0!important; padding:0!important; min-width:0; min-height:0!important; }
body.tt-redesign #page-container #main-content .et_pb_module { margin:0!important; padding:0; max-width:none!important; }
body.tt-redesign #page-container #main-content .et_pb_text_inner, body.tt-redesign #page-container #main-content .et_pb_text { color:#000!important; font:18px/1.5 var(--ttr-font-copy)!important; }
body.tt-redesign #page-container #main-content .et_pb_text, body.tt-redesign #page-container #main-content .et_pb_text_inner { text-align:left!important; }
body.tt-redesign #page-container #main-content .et_pb_row { min-height:0!important; }
body.tt-redesign #page-container #main-content .et_pb_row, body.tt-redesign #page-container #main-content .et_pb_column, body.tt-redesign #page-container #main-content .et_pb_text { background:transparent!important; box-shadow:none!important; border:0!important; border-radius:0!important; transform:none!important; }
body.tt-redesign #page-container #main-content h1, body.tt-redesign #page-container #main-content h2, body.tt-redesign #page-container #main-content h3 { text-align:inherit!important; }
body.tt-redesign #page-container #main-content .et_pb_column { text-align:left!important; }
body.tt-redesign #page-container #main-content h1, body.tt-redesign #page-container #main-content h2, body.tt-redesign #page-container #main-content h3, body.tt-redesign #page-container #main-content p { padding:0!important; margin:0; letter-spacing:0!important; }
body.tt-redesign #page-container #main-content h1, body.tt-redesign #page-container #main-content h2, body.tt-redesign #page-container #main-content h3 { font-family:var(--ttr-font-head)!important; font-weight:400!important; color:#000!important; }
body.tt-redesign #page-container #main-content h2 { font-size:48px!important; line-height:1.2!important; }
body.tt-redesign #page-container #main-content h3 { font-size:24px!important; line-height:1.4!important; }
body.tt-redesign #page-container #main-content .et_pb_button { display:inline-flex!important; align-items:center; justify-content:center; min-height:42px; border-radius:0!important; font:16px/1.1 var(--ttr-font-head)!important; padding:12px 24px!important; letter-spacing:0!important; }
body.tt-redesign #page-container #main-content .et_pb_button:focus-visible, body.tt-redesign #page-container #main-content button:focus-visible, body.tt-redesign #page-container #main-content a:focus-visible { outline:3px solid #b112b5; outline-offset:5px; }
body.tt-redesign #page-container #main-content .et_pb_button.tt-btn-magenta { background:#b112b5!important; }
body.tt-redesign #page-container #main-content .et_pb_button.tt-btn-green { background:#009c1d!important; }
body.tt-redesign #page-container #main-content .et_pb_button:hover { filter:brightness(.92); }
/* Hero uses the original Figma photograph and its separate lighting layers. */
body.tt-redesign #page-container #main-content .tt-home-hero { display:block!important; position:relative; isolation:isolate; height:783px; min-height:783px!important; overflow:hidden; background-color:#151515!important; background-image:url('tt-home-assets/hero.webp')!important; background-size:cover!important; background-position:center!important; background-repeat:no-repeat!important; background-blend-mode:normal!important; }
body.tt-redesign #page-container #main-content .tt-home-hero::before { content:''; position:absolute; z-index:-1; inset:0 0 auto; height:98px; background:url('tt-home-assets/hero-top.webp') center/100% 100%; mix-blend-mode:darken; pointer-events:none; }
body.tt-redesign #page-container #main-content .tt-home-hero::after { content:''; position:absolute; z-index:-1; left:calc(50% + 489.5px); top:113px; width:1095px; height:1180px; background:url('tt-home-assets/hero-glow.webp') center/100% 100%; transform:translateX(140px) scaleX(-1); filter:blur(68.5px); mix-blend-mode:multiply; pointer-events:none; }
body.tt-redesign #page-container #main-content .tt-home-hero > .et_pb_row { display:block!important; height:auto!important; padding-top:234px!important; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_column:first-child { width:100%!important; display:grid; grid-template-columns:174px auto; column-gap:30px; justify-content:start; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_column:first-child { align-content:start!important; align-items:start!important; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_column_empty { display:none; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text { grid-column:1/-1; }
body.tt-redesign #page-container #main-content .tt-home-hero h1 { color:#fff!important; font-size:56px!important; line-height:1.1!important; width:531px; max-width:100%; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text:nth-child(2) { margin-top:25.2px!important; margin-bottom:37px!important; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text p { color:#fff!important; font-size:18px!important; line-height:27px!important; }
body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_button_module_wrapper { display:block!important; position:static!important; transform:none!important; margin:0!important; }
body.tt-redesign #page-container #main-content .tt-home-hero .tt-btn-green { width:174px!important; min-width:0!important; }
body.tt-redesign #page-container #main-content .tt-home-hero .tt-link-plan { width:auto!important; min-width:0!important; padding:0!important; border:0!important; background:none!important; color:white!important; text-decoration:underline; line-height:24px!important; min-height:42px; }
/* Trust strip, then the three approach cards. */
body.tt-redesign #page-container #main-content .tt-reviews-bar { height:71px; min-height:71px; background:#f4f4f4!important; }
body.tt-redesign #page-container #main-content .tt-reviews-bar .et_pb_row { display:flex!important; align-items:center!important; justify-content:space-between; height:71px; gap:20px; }
body.tt-redesign #page-container #main-content .tt-reviews-bar .et_pb_column { display:block!important; width:auto!important; flex:none!important; }
body.tt-redesign #page-container #main-content .tt-reviews-bar .et_pb_text_inner { display:flex; align-items:center; gap:10px; white-space:nowrap; font-size:16px!important; line-height:19.2px!important; }
body.tt-redesign #page-container #main-content .tt-reviews-bar .tt-stars { display:block; width:110px; height:22px; }
body.tt-redesign #page-container #main-content .tt-check-wrap { position:relative; display:inline-flex; width:15.5px; height:15.5px; margin-right:4px; }
body.tt-redesign #page-container #main-content .tt-check-wrap .tt-check-circle { width:15.5px; height:15.5px; }
body.tt-redesign #page-container #main-content .tt-check-wrap .tt-check-mark { position:absolute; left:2.325px; top:3.875px; width:10.85px; height:7.75px; }
body.tt-redesign #page-container #main-content .tt-home-proces { padding:116px 0 51px!important; }
body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:first-child .et_pb_column, body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:first-child .et_pb_column { display:flex; flex-direction:column; gap:16px; width:100%!important; }
body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:first-child .et_pb_text:first-child p, body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:first-child .et_pb_text:first-child p, body.tt-redesign #page-container #main-content .tt-home-cases .tt-section-heading > p:first-child, body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_text:first-child p { font:16px/24px var(--ttr-font-head)!important; }
body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:nth-child(2) { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32.5px; margin-top:42px!important; }
body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:nth-child(2) .et_pb_column { display:block!important; width:auto!important; }
body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_image { margin-bottom:24px!important; }
body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_image_wrap { display:block!important; aspect-ratio:379/277; height:auto!important; width:100%!important; position:relative; overflow:hidden; border-radius:20px 0 0 0!important; }
body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_image img { position:absolute; max-width:none!important; width:136.62%!important; height:104.33%!important; left:-18.31%; top:-4.33%; object-fit:fill!important; border-radius:0!important; }
body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_column:nth-child(2) .et_pb_image img { width:134.73%!important; height:102.89%!important; left:-17.36%; top:-2.89%; }
body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_column:nth-child(3) .et_pb_image img { width:100%!important; height:100%!important; left:0; top:0; object-fit:cover!important; }
body.tt-redesign #page-container #main-content .tt-home-proces h3 { margin-bottom:8px; }
body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:last-child { margin-top:34px!important; }
/* Services: image and gradient are separate layers, with a fixed reading column. */
body.tt-redesign #page-container #main-content .tt-home-diensten { padding:109px 0 108px!important; scroll-margin-top:116px; }
body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(2), body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(3) { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:41px; margin-top:21px!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(3) { margin-top:48px!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile { position:relative; isolation:isolate; display:block!important; width:auto!important; min-height:402px!important; padding:61px 24px 62px 274px!important; border-radius:70px 0 0 0!important; overflow:hidden; background-color:#040408!important; background-image:linear-gradient(90deg,rgba(136,27,81,0),#561f4f 49.519%,#23234d 75.481%,#040408)!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile::before { content:''; position:absolute; z-index:-1; inset:0 auto 0 0; width:287px; opacity:1!important; background:url('tt-home-assets/service-vehicle.webp') -72px 0/536px 402px no-repeat; border-radius:70px 0 0 0; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile::after { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(136,27,81,0),#561f4f 49.519%,#23234d 75.481%,#040408); }
body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(2) .tt-dienst-tile:nth-child(2) { padding-left:286px!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(2) .tt-dienst-tile:nth-child(2)::before { background-image:url('tt-home-assets/service-business.webp'); background-size:1109.4px 553.15px; background-position:-194.5px -100.86px; }
body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(3) .tt-dienst-tile:first-child::before { background-image:url('tt-home-assets/service-window.webp'); background-size:536px 402px; background-position:-167px 0; }
body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(3) .tt-dienst-tile:last-child { padding-left:286px!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(3) .tt-dienst-tile:last-child::before { background-image:url('tt-home-assets/service-interior.webp'); background-size:cover; background-position:center; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile .et_pb_text { margin:0!important; padding:0!important; min-height:0!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile .et_pb_text_inner { display:flex; flex-direction:column; color:white!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile h3 { font:32px/1.3 var(--ttr-font-head)!important; color:white!important; white-space:nowrap; margin:0 0 9.4px!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile p { color:white!important; font:18px/27px var(--ttr-font-head)!important; max-width:260px; margin:0!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile p:first-of-type { min-height:81px; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-bullets { list-style:none!important; padding:0 0 0 22px!important; margin:9px 0 42px!important; background:url('tt-home-assets/bullets.svg') 0 8px/6px 56px no-repeat; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-bullets li { padding:0!important; margin:0!important; font:16px/24px var(--ttr-font-copy)!important; color:#fff!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-bullets li::before, body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-bullets li::marker { content:none!important; }
body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile a { color:#fff!important; font:16px/24px var(--ttr-font-head)!important; text-decoration:underline; white-space:nowrap; }
/* Cases: native scroll snapping, with real controls rather than a static second column. */
body.tt-redesign #page-container #main-content .tt-home-cases { position:relative; isolation:isolate; padding:100px 0 74px!important; background:#f5f5f5!important; overflow:hidden; }
body.tt-redesign #page-container #main-content .tt-home-cases::before { content:''; position:absolute; z-index:-1; width:747px; height:894px; left:-94px; top:370px; background:url('tt-home-assets/cases-decoration.svg') no-repeat; }
body.tt-redesign #page-container #main-content .tt-home-cases > .et_pb_code, body.tt-redesign #page-container #main-content .tt-home-logos > .et_pb_code { width:100%!important; }
body.tt-redesign #page-container #main-content .tt-section-heading { width:calc(100% - 40px); max-width:1200px; margin:auto; }
body.tt-redesign #page-container #main-content .tt-section-heading h2 { margin:24px 0!important; }
body.tt-redesign #page-container #main-content .tt-case-track { display:flex; align-items:stretch; gap:54px; padding:0 var(--home-gutter); margin-top:39px; overflow-x:auto; scrollbar-width:none; scroll-snap-type:x mandatory; scroll-padding-inline:var(--home-gutter); overscroll-behavior-x:contain; }
body.tt-redesign #page-container #main-content .tt-case-track::-webkit-scrollbar { display:none; }
body.tt-redesign #page-container #main-content .tt-case-slide { flex:0 0 min(1195px,calc(100vw - 40px)); min-width:0; scroll-snap-align:start; }
body.tt-redesign #page-container #main-content .tt-case-image { position:relative; display:block; overflow:hidden; border-radius:70px 0 0 0; aspect-ratio:1195/568; }
body.tt-redesign #page-container #main-content .tt-case-image img { display:block; position:absolute; top:0; width:100%; height:100%; object-fit:cover; }
body.tt-redesign #page-container #main-content .tt-case-slide:first-child .tt-case-image img { width:100.33%; height:211.09%; left:-.36%; top:-55.55%; object-fit:fill; }
body.tt-redesign #page-container #main-content .tt-case-copy { display:grid; grid-template-columns:250px minmax(0,626px); column-gap:42.5px; row-gap:46px; margin-top:57px; }
body.tt-redesign #page-container #main-content .tt-case-copy h3 { font-size:32px!important; line-height:42px!important; grid-column:1; grid-row:1; white-space:nowrap; }
body.tt-redesign #page-container #main-content .tt-case-copy .tt-case-tag { grid-column:1; grid-row:2; justify-self:start; font:14px/18px var(--ttr-font-copy)!important; height:28px; padding:5px 10px!important; margin:0!important; border-radius:10px 0 0 0!important; color:white!important; background:linear-gradient(10deg,#881b51 3.49%,#23234d 57.32%,#040408 98.44%)!important; }
body.tt-redesign #page-container #main-content .tt-case-copy > p { grid-column:2; grid-row:1/3; font:18px/27px var(--ttr-font-copy); }
body.tt-redesign #page-container #main-content .tt-case-controls { max-width:1200px; width:calc(100% - 40px); margin:39px auto 0; display:flex; flex-direction:column; gap:21px; }
body.tt-redesign #page-container #main-content .tt-case-arrows { display:flex; gap:20px; }
body.tt-redesign #page-container #main-content .tt-case-controls button { appearance:none; padding:0; border:0; background:none; cursor:pointer; min-height:30px; display:flex; align-items:center; justify-content:center; }
body.tt-redesign #page-container #main-content .tt-case-arrows button { width:40px; }
body.tt-redesign #page-container #main-content .tt-case-arrows button:first-child img { transform:scaleX(-1); }
body.tt-redesign #page-container #main-content .tt-case-dots { display:flex; gap:10px; }
body.tt-redesign #page-container #main-content .tt-case-dots button { width:15px; height:15px; min-height:15px; background:url('tt-home-assets/dot.svg') center no-repeat; }
body.tt-redesign #page-container #main-content .tt-case-dots button[aria-current=true] { background-image:url('tt-home-assets/dot-active.svg'); }
body.tt-redesign #page-container #main-content .tt-home-strategie { padding:103px 0 39px!important; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_row { display:grid; grid-template-columns:minmax(0,536px) minmax(0,572px); column-gap:92px; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_column { width:auto!important; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_column:first-child { padding-top:17px!important; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_text:nth-child(2) { margin-top:24px!important; max-width:514px!important; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_text:nth-child(3) { margin-top:24px!important; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_button_module_wrapper { margin-top:31px!important; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_image_wrap { display:block; aspect-ratio:572/376; border-radius:20px 0 0 0; overflow:hidden; }
body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_image img { display:block; width:100%!important; height:100%!important; aspect-ratio:572/376; object-fit:cover; border-radius:0!important; }
/* Reviews keep the site's real review content and existing Slick component. */
body.tt-redesign #page-container #main-content .tt-home-reviews { padding:100px 0 20px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews > .et_pb_row:nth-child(2) { display:grid!important; grid-template-columns:270px minmax(0,1fr); gap:44px; margin-top:80px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .et_pb_column { width:auto!important; padding:0!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-badge { padding-top:40px!important; text-align:center; }
body.tt-redesign #page-container #main-content .tt-reviews-badge .et_pb_text_inner { text-align:center!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-badge h3 { font-size:24px!important; line-height:31.2px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-badge-stars { margin-top:17px!important; margin-bottom:17px!important; line-height:0!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-badge-stars img { width:200px!important; height:40px!important; max-height:none!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-badge p { font-size:16px!important; line-height:24px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-google-logo { display:block; margin-left:auto!important; margin-right:auto!important; width:166px!important; height:56px!important; object-fit:contain; margin-top:17px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews { margin:0!important; padding:0!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-list { margin:0!important; overflow:hidden; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-track { display:flex; align-items:stretch; }
body.tt-redesign #page-container #main-content .tt-home-reviews .tt-review { box-sizing:border-box; flex:none; width:270px; height:auto; min-height:266px; padding:26px 29px!important; margin:0 22px 0 0!important; background:#f5f5f5!important; border:0!important; border-radius:10px!important; box-shadow:none!important; color:#000!important; }
body.tt-redesign #page-container #main-content .tt-review-person { display:flex; align-items:center; gap:12px; height:36px; margin-bottom:10px; }
body.tt-redesign #page-container #main-content .tt-review-avatar { display:flex; align-items:center; justify-content:center; flex:0 0 34px; height:34px; border-radius:50%; color:white; background:#6c3295; font:16px/1 var(--ttr-font-copy); }
body.tt-redesign #page-container #main-content .tt-review-person b { font:16px/1.3 var(--ttr-font-head); }
body.tt-redesign #page-container #main-content .tt-review-stars { display:block!important; position:static!important; padding:0!important; margin:0 0 10px!important; height:21.4px; line-height:0; }
body.tt-redesign #page-container #main-content .tt-review-stars img { display:block; position:static!important; max-width:none!important; filter:none!important; width:107px!important; height:21.4px!important; margin:0!important; }
body.tt-redesign #page-container #main-content .tt-review > p:first-of-type { display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; font:16px/24px var(--ttr-font-copy)!important; min-height:96px; margin:0!important; }
body.tt-redesign #page-container #main-content .tt-review.tt-review-expanded > p:first-of-type { display:block; }
body.tt-redesign #page-container #main-content .tt-review-more { display:inline-block; border:0; padding:0; background:none; color:#000; cursor:pointer; font:14px/21px var(--ttr-font-copy); margin-top:16px; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-arrow { position:absolute!important; top:50%!important; transform:translateY(-50%)!important; display:flex!important; align-items:center; justify-content:center; width:24px!important; height:36px!important; margin:0!important; padding:0!important; border:0; background:none; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-arrow::before { display:none!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-arrow img { width:8.364px!important; height:14.728px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-prev { left:-30px!important; }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-prev img { transform:scaleX(-1); }
body.tt-redesign #page-container #main-content .tt-home-reviews .slick-next { right:-10px!important; }
/* Real logo assets, with horizontal touch scrolling on small screens. */
body.tt-redesign #page-container #main-content .tt-home-logos { height:264px; display:flex; align-items:center; overflow:hidden; }
body.tt-redesign #page-container #main-content .tt-logo-strip { display:flex; align-items:center; gap:166px; width:100%; padding:0 56.5px; overflow-x:auto; scrollbar-width:none; }
body.tt-redesign #page-container #main-content .tt-logo-strip::-webkit-scrollbar { display:none; }
body.tt-redesign #page-container #main-content .tt-logo-strip img { display:block; flex:none; max-width:none; }
@media (any-pointer:fine) {
 body.tt-redesign #page-container #main-content .tt-case-track,
 body.tt-redesign #page-container #main-content .tt-logo-strip { cursor:grab; user-select:none; -webkit-user-select:none; }
}
body.tt-redesign #page-container #main-content .is-mouse-dragging { cursor:grabbing; scroll-snap-type:none; scroll-behavior:auto!important; }
body.tt-redesign #page-container #main-content .is-mouse-dragging * { cursor:grabbing; }
/* Closing call to action is offset from the left edge, like the Figma frame. */
body.tt-redesign #page-container #main-content .tt-home-cta { isolation:isolate; position:relative; min-height:495px; padding:149px 0 100px!important; background:white!important; }
body.tt-redesign #page-container #main-content .tt-home-cta::before { content:''; z-index:-2; position:absolute; left:max(20px,calc((100vw - 1400px)/2)); right:0; top:0; bottom:0; border-radius:60px 0 0 0; background:linear-gradient(#0006,#0006),url('tt-home-assets/cta.webp') center/cover no-repeat!important; }
body.tt-redesign #page-container #main-content .tt-home-cta::after { content:''; z-index:-1; position:absolute; left:max(20px,calc((100vw - 1400px)/2)); right:0; top:0; bottom:0; border-radius:60px 0 0 0; background:linear-gradient(90deg,#b112b500,#b112b5); mix-blend-mode:multiply; pointer-events:none; }
body.tt-redesign #page-container #main-content .tt-home-cta .tt-cta-card { background:none!important; padding:0!important; border-radius:0!important; display:flex; flex-wrap:wrap; column-gap:16px; width:100%!important; }
body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_text { flex-basis:100%; }
body.tt-redesign #page-container #main-content .tt-home-cta h2, body.tt-redesign #page-container #main-content .tt-home-cta p { color:white!important; }
body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_text:nth-child(2) { margin-top:24px!important; margin-bottom:40px!important; }
body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_button { line-height:24px!important; min-height:48px; }
body.tt-redesign #page-container #main-content .tt-home-cta .tt-cta-btn-outline { background:transparent!important; border:1px solid white!important; color:white!important; }
body.tt-redesign #page-container #main-content .tt-cta-mobile { display:none!important; }
/* Footer rules affect only the redesigned homepage. */
body.tt-redesign #page-container footer #tt-prefooter { display:none!important; }
body.tt-redesign #page-container footer #tt-footer { background:#1d1d1d!important; padding:89px 0 88px!important; color:white; }
body.tt-redesign #page-container footer #tt-footer .et_pb_row { width:calc(100% - 40px)!important; max-width:1200px!important; padding:0!important; }
body.tt-redesign #page-container footer #tt-footer .et_pb_row:first-child { display:grid; grid-template-columns:161px repeat(5,minmax(0,1fr)); gap:40px; margin:0 auto!important; }
body.tt-redesign #page-container footer #tt-footer .et_pb_row::after { display:none!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-links a[href$="/event-en-promotie/"], body.tt-redesign #page-container footer #tt-footer .tt-footer-links a[href$="/tinttotaal-ontwerp-dtp/"] { display:none; }
body.tt-redesign #page-container footer #tt-footer .et_pb_column { float:none!important; width:auto!important; margin:0!important; order:0!important; }
body.tt-redesign #page-container footer #tt-footer .et_pb_module { margin:0!important; }
body.tt-redesign #page-container footer #tt-footer h4 { color:white!important; font:16px/24px var(--ttr-font-head)!important; margin:0 0 16px!important; padding:0!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-links a, body.tt-redesign #page-container footer #tt-footer .tt-footer-links p { display:block; color:white!important; font:16px/24px var(--ttr-font-copy)!important; margin:0!important; padding:8px 0!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-links a::before, body.tt-redesign #page-container footer #tt-footer .tt-footer-links a::after { display:none!important; }
body.tt-redesign #page-container footer .tt-footer-logo img { width:163px; height:auto; filter:brightness(0) invert(1); }
body.tt-redesign #page-container footer #tt-footer .tt-footer-links .tt-footer-socials { padding:0!important; height:24px; display:flex!important; align-items:center; gap:12px; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-socials a { padding:0!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-socials a:nth-of-type(n+2) { margin:0!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-socials img { width:24px; height:24px; object-fit:contain; }
body.tt-redesign #page-container footer #tt-footer .et_pb_row:nth-child(2) { border-top:1px solid #fff; padding-top:22px!important; margin-top:49px!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright { display:flex; align-items:center; gap:24px; justify-content:space-between; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright p, body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright a { margin:0; padding:0!important; color:white!important; font:16px/24px var(--ttr-font-copy)!important; }
body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright img { display:block; width:110px; height:63px; object-fit:contain; }
@media (min-width:981px) and (max-width:1300px) {
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile { padding-left:45%!important; padding-right:18px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile h3 { font-size:26px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile p { font-size:16px!important; line-height:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_row { column-gap:40px; }
 body.tt-redesign #page-container #main-content .tt-home-reviews > .et_pb_row:nth-child(2) { grid-template-columns:220px minmax(0,1fr); }
 body.tt-redesign #page-container footer #tt-footer .et_pb_row:first-child { grid-template-columns:140px repeat(5,minmax(0,1fr)); gap:20px; }
 body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright { gap:16px; flex-wrap:wrap; }
}
@media (max-width:980px) {
 body.tt-redesign #page-container #et-main-area { padding-top:72px!important; }
 body.tt-redesign #page-container #main-content h2 { font-size:28px!important; line-height:1.2!important; }
 body.tt-redesign #page-container #main-content .et_pb_text_inner, body.tt-redesign #page-container #main-content .et_pb_text { font-size:16px!important; line-height:24px!important; }
 body.tt-redesign #page-container #main-content .et_pb_button { width:100%; min-height:37px; padding:8px 20px!important; line-height:20.8px!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero { height:556px; min-height:556px!important; background-image:linear-gradient(#0006,#0006),url('tt-home-assets/hero.webp')!important; background-size:cover!important; background-position:center!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero::after { display:none; }
 body.tt-redesign #page-container #main-content .tt-home-hero > .et_pb_row { padding-top:127px!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_column:first-child { display:flex!important; flex-direction:column; align-items:stretch!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .tt-btn-green { width:100%!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero h1 { width:100%; max-width:620px; font-size:36px!important; line-height:1.2!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text:nth-child(2) { margin-top:23.4px!important; margin-bottom:78px!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text p { font-size:16px!important; line-height:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_button_module_wrapper:last-child { margin-top:22px!important; text-align:center!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .tt-link-plan { min-height:24px; width:auto; }
 body.tt-redesign #page-container #main-content .tt-reviews-bar { background:#151515!important; }
 body.tt-redesign #page-container #main-content .tt-reviews-bar .et_pb_row { justify-content:center!important; }
 body.tt-redesign #page-container #main-content .tt-reviews-bar .et_pb_column:not(:first-child) { display:none!important; }
 body.tt-redesign #page-container #main-content .tt-reviews-bar .et_pb_text_inner { color:white!important; }
 body.tt-redesign #page-container #main-content .tt-home-proces { padding:78px 0 112px!important; }
 body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:first-child .et_pb_column, body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:first-child .et_pb_column { gap:14px; }
 body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:first-child .et_pb_text:last-child, body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:first-child .et_pb_text:last-child { margin-top:10px!important; }
 body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:nth-child(2) { grid-template-columns:1fr; gap:47px; margin-top:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_image_wrap { aspect-ratio:353/258; }
 body.tt-redesign #page-container #main-content .tt-home-proces h3 { font-size:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-proces > .et_pb_row:last-child { margin-top:40px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten { padding:70px 0!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(2), body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(3) { grid-template-columns:1fr; gap:40px; margin-top:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(3) { margin-top:40px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row .tt-dienst-tile { padding:130px 20px 32px!important; min-height:421px!important; border-radius:70px 0 0 0!important; background:#040408!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(2) .tt-dienst-tile:nth-child(2), body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(3) .tt-dienst-tile:last-child { padding-left:20px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row .tt-dienst-tile::before { width:100%; height:229px; bottom:auto; background-image:url('tt-home-assets/service-vehicle.webp')!important; background-size:112.94% 130.58%!important; background-position:-2.79px -69.7px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .et_pb_row:nth-child(2) .tt-dienst-tile:last-child::before { background-image:url('tt-home-assets/service-business.webp')!important; background-size:257.22% 197.7%!important; background-position:-93.83px -162.86px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile::after { top:81px; background:linear-gradient(180deg,#881b5100,#561f4f 38.47%,#23234d 75.481%,#040408); }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile h3 { font-size:24px!important; line-height:31.2px!important; margin-bottom:19.8px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile p { font-size:16px!important; line-height:24px!important; max-width:none; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile p:first-of-type { min-height:48px; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-bullets { margin:24px 0 40px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cases { padding:70px 0!important; }
 body.tt-redesign #page-container #main-content .tt-home-cases::before { display:none; }
 body.tt-redesign #page-container #main-content .tt-section-heading h2 { margin:14px 0 24px!important; }
 body.tt-redesign #page-container #main-content .tt-section-heading > p:last-child { font-size:16px; line-height:24px; }
 body.tt-redesign #page-container #main-content .tt-case-track { gap:40px; margin-top:24px; }
 body.tt-redesign #page-container #main-content .tt-case-image { aspect-ratio:353/253; }
 body.tt-redesign #page-container #main-content .tt-case-slide:first-child .tt-case-image img { height:140.17%; top:-19.96%; }
 body.tt-redesign #page-container #main-content .tt-case-copy { display:flex; flex-direction:column; gap:0; margin-top:24px; }
 body.tt-redesign #page-container #main-content .tt-case-copy h3 { font-size:24px!important; line-height:33.6px!important; }
 body.tt-redesign #page-container #main-content .tt-case-copy h3 { white-space:normal; }
 body.tt-redesign #page-container #main-content .tt-case-copy .tt-case-tag { align-self:flex-start; margin-top:14.4px!important; }
 body.tt-redesign #page-container #main-content .tt-case-copy > p { font-size:16px; line-height:24px; margin-top:24px!important; }
 body.tt-redesign #page-container #main-content .tt-case-controls { flex-direction:row-reverse; align-items:center; justify-content:space-between; gap:20px; margin-top:28px; }
 body.tt-redesign #page-container #main-content .tt-home-strategie { padding:70px 0!important; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_row { display:flex; flex-direction:column; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_column:first-child { display:contents; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_text { order:0; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_text:nth-child(2) { margin-top:14px!important; max-width:none!important; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_text:nth-child(3) { margin-top:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_column:last-child { order:1; margin-top:40px!important; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_image_wrap, body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_image img { aspect-ratio:353/225; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_button_module_wrapper { order:2; margin-top:40px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews { padding:66px 0 24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews > .et_pb_row:nth-child(2) { display:flex!important; flex-direction:column-reverse; gap:41px; margin-top:52.4px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-slider { margin-left:23px!important; width:calc(100vw - 43px)!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-badge { padding:0!important; }
 body.tt-redesign #page-container #main-content .tt-reviews-badge .et_pb_text_inner { text-align:center!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-badge h3 { font-size:16px!important; line-height:20.8px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-badge-stars { margin:10px 0 8px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-badge-stars img { width:115.842px!important; height:23.168px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-reviews-badge p { font-size:16px!important; line-height:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .tt-google-logo { width:96.016px!important; height:32.48px!important; margin-top:13px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .slick-next { right:12px!important; }
 body.tt-redesign #page-container #main-content .tt-home-reviews .slick-prev { left:-30px!important; }
 body.tt-redesign #page-container #main-content .tt-home-logos { height:150px; }
 body.tt-redesign #page-container #main-content .tt-logo-strip { padding:0 56.5px; gap:166px; }
 body.tt-redesign #page-container #main-content .tt-home-cta { min-height:545px; padding:145px 0 70px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta::before, body.tt-redesign #page-container #main-content .tt-home-cta::after { top:50px; left:20px; }
 body.tt-redesign #page-container #main-content .tt-home-cta::before { background-position:center,32.52% center!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta > .et_pb_row { width:calc(100% - 50px)!important; margin-left:40px!important; margin-right:10px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_text:nth-child(2) { margin:24px 0 16px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_button_module_wrapper { width:calc(100% - 30px); margin-bottom:16px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_button_module_wrapper:has(.tt-cta-desktop) { display:none!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_code { width:calc(100% - 30px); margin-bottom:24px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta .et_pb_button { min-height:37px; line-height:20.8px!important; }
 body.tt-redesign #page-container #main-content .tt-cta-desktop { display:none!important; }
 body.tt-redesign #page-container #main-content .tt-cta-mobile { display:inline-flex!important; }
 body.tt-redesign #page-container footer #tt-footer { padding:51px 0 25px!important; }
 body.tt-redesign #page-container footer #tt-footer .et_pb_row:first-child { grid-template-columns:minmax(0,1.135fr) minmax(0,1fr); column-gap:37px; row-gap:46px; }
 body.tt-redesign #page-container footer .tt-footer-logo { display:none; }
 body.tt-redesign #page-container footer #tt-footer h4 { margin-bottom:3px!important; }
 body.tt-redesign #page-container footer #tt-footer .et_pb_row:nth-child(2) { margin-top:46px!important; padding-top:19px!important; }
 body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright { display:flex; flex-direction:column; align-items:flex-start; gap:19px; position:relative; }
 body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright p:first-child { order:8; margin-top:26px; }
 body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright p { text-align:left!important; width:auto!important; }
 body.tt-redesign #page-container footer #tt-footer .tt-footer-copyright p:last-child { position:absolute; left:calc(50% + 18px); top:-265px; }
}
@media (min-width:600px) and (max-width:980px) {
 body.tt-redesign #page-container #main-content .tt-home-hero { background-size:cover!important; background-position:center!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text:nth-child(2) { margin-bottom:40px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(2), body.tt-redesign #page-container #main-content .tt-home-diensten > .et_pb_row:nth-child(3) { grid-template-columns:1fr 1fr; gap:24px; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile h3 { font-size:22px!important; }
 body.tt-redesign #page-container #main-content .tt-home-proces .et_pb_image_wrap { aspect-ratio:2/1; }
 body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_image_wrap, body.tt-redesign #page-container #main-content .tt-home-strategie .et_pb_image img { aspect-ratio:2/1; }
}
@media (max-width:374px) {
 body.tt-redesign #page-container #main-content .tt-home-hero h1 { font-size:32px!important; }
 body.tt-redesign #page-container #main-content .tt-home-hero .et_pb_text:nth-child(2) { margin-bottom:54px!important; }
 body.tt-redesign #page-container #main-content .tt-home-diensten .tt-dienst-tile h3 { font-size:23px!important; }
 body.tt-redesign #page-container #main-content .tt-home-cta { padding-top:125px!important; }
 body.tt-redesign #page-container footer #tt-footer .et_pb_row:first-child { column-gap:20px; }
 body.tt-redesign #page-container footer #tt-footer .tt-footer-links p { overflow-wrap:anywhere; }
}
@media (prefers-reduced-motion:reduce) { body.tt-redesign #page-container #main-content * { scroll-behavior:auto!important; } }

@media (min-width:1301px) {
 body.tt-redesign #page-container #main-content .tt-home-proces { min-height:823px; }
 body.tt-redesign #page-container #main-content .tt-home-diensten { min-height:1240px; }
 body.tt-redesign #page-container #main-content .tt-home-cases { min-height:1216px; }
 body.tt-redesign #page-container #main-content .tt-home-reviews { min-height:524px; }
}
@media (max-width:599px) {
 body.tt-redesign #page-container #main-content .tt-home-proces { min-height:1678px; }
 body.tt-redesign #page-container #main-content .tt-home-diensten { min-height:2170px; }
 body.tt-redesign #page-container #main-content .tt-home-cases { min-height:872px; }
 body.tt-redesign #page-container #main-content .tt-home-strategie { min-height:708px; }
 body.tt-redesign #page-container #main-content .tt-home-reviews { min-height:611px; }
}

@media (max-width:980px) {
 body.tt-redesign #page-container footer #tt-footer .et_pb_row:first-child > .et_pb_column:nth-of-type(3), body.tt-redesign #page-container footer #tt-footer .et_pb_row:first-child > .et_pb_column:nth-of-type(4) { min-height:212px; }
 body.tt-redesign #page-container #main-content .tt-home-reviews:not(.tt-inner-reviews) { padding-bottom:21.6px!important; }
}

/* Continuous logo strip; the native scroll area remains draggable. */
body.tt-redesign #page-container #main-content .tt-home-logos { position:relative; }
body.tt-redesign #page-container #main-content .tt-logo-strip { scroll-behavior:auto; overflow-anchor:none; }
body.tt-redesign #page-container #main-content .tt-logo-motion-toggle { position:absolute; right:20px; bottom:16px; display:grid; place-items:center; width:36px; height:36px; padding:0; border:1px solid #dedede; border-radius:50%; background:#fff; color:#303030; cursor:pointer; }
body.tt-redesign #page-container #main-content .tt-logo-motion-toggle:hover { border-color:#303030; }
body.tt-redesign #page-container #main-content .tt-logo-motion-toggle svg { width:14px; height:14px; fill:currentColor; }
body.tt-redesign #page-container #main-content .tt-logo-motion-toggle:focus-visible, body.tt-redesign #page-container #main-content .tt-logo-strip:focus-visible { outline:2px solid #b71368; outline-offset:-3px; }
@media (prefers-reduced-motion:reduce) {
 body.tt-redesign #page-container #main-content .tt-logo-clone, body.tt-redesign #page-container #main-content .tt-logo-motion-toggle { display:none!important; }
}
