@media(min-width:801px){.home .section:nth-of-type(4)>.row>.column:first-child>.media,.home .section:nth-of-type(4)>.row>.column:first-child>div:nth-child(2){display:none}}@media(max-width:800px){.home .section:nth-of-type(4)>.row>.column:last-child{display:none}}
.archive-content{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:64px}.archive-content>*{min-width:0;max-width:100%}.archive-list .project-card{overflow-wrap:anywhere;min-width:0;margin:0 0 48px}.archive-list .project-card img{height:auto;max-height:500px;object-fit:contain;background:var(--wash)}#sidebar h2{font-size:25px;margin-top:32px}.pagination{display:flex;gap:24px}.source-embed{padding:24px;border:1px solid var(--line)}.source-embed>.cc-placeholder{display:none!important}.source-embed:has(iframe:not([hidden]))>.legacy-placeholder{display:none}.source-embed iframe{border:0;max-width:100%;aspect-ratio:16/9;height:auto}.legacy-placeholder a{display:inline-block;margin:10px 20px 0 0}.project-card:not(:has(img)){padding:24px;border-top:1px solid var(--line);background:var(--wash)}
#lfb_form{padding:32px;border:1px solid var(--line);background:var(--wash)}#lfb_form .modal,#lfb_loader,#lfb_floatingSummary,#lfb_close_btn,#lfb_form .lfb_startBtnContainer,#lfb_form #finalText{display:none}#lfb_form[data-stage=initial] #finalSlide,#lfb_form[data-stage=final] [data-stepid='58']{display:none}#lfb_form input:not([type=checkbox]):not([type=hidden]),#lfb_form textarea{display:block;max-width:100%;padding:12px;border:1px solid var(--line);font:inherit;background:white;width:100%}#lfb_form input[type=checkbox]{width:20px;height:20px;accent-color:var(--plum);margin:0 10px 0 0}#lfb_form label{display:inline-block;margin:18px 0 8px}#lfb_form .lfb_itemDes{font-size:14px;color:var(--muted)}#lfb_form #genPrice{font:38px Juana,Georgia,serif;color:var(--plum);margin-bottom:28px}#lfb_btnNext_58,#lfb_btnOrder,#lfb_form .linkPrevious{display:inline-block;padding:12px 20px;background:var(--plum);color:white;text-decoration:none;margin-top:20px}#lfb_form .lfb_summary{overflow:auto}#lfb_form #lfb_summaryDiscountTr{display:none}#lfb_form table{width:100%}.lfb_errorMsg{color:#a02828}@media(max-width:800px){.archive-content{display:block}.source-embed{padding:18px}#lfb_form{padding:22px}#lfb_form table{font-size:12px}#sidebar{margin-top:40px}}

/* CTA headings: full width, centred, balanced line breaks (live squeezes one to 130px on mobile) */
.tr_column_4_4>.tr_text:has(+ .tr_button_module_wrapper){width:100%!important;max-width:800px!important;margin-inline:auto!important}
.tr_column_4_4>.tr_text:has(+ .tr_button_module_wrapper) :is(h2,h3,h4){text-align:center!important;text-wrap:balance}
/* Convernatics Consent in site colours: Rationell, plum #814f7f, near-black text, 3px buttons */
body .cc-dialog,body .cc-placeholder{--cc-accent:#814f7f;--cc-on-accent:#fff;--cc-ink:#060307;--cc-muted:#666;--cc-line:#ddd;--cc-surface:#fff;--cc-soft:#f6f6f6;--cc-radius:4px;--cc-shadow:0 6px 30px rgba(6,3,7,.14);font-family:Rationell,Helvetica,Arial,sans-serif}
body .cc-dialog::backdrop{background:rgba(6,3,7,.45)}
body .cc-dialog h2{font-family:Rationell,Helvetica,Arial,sans-serif;font-weight:500;letter-spacing:0;color:#060307}
body .cc-dialog button,body .cc-placeholder button{border-radius:3px;font-weight:500}
body .cc-dialog input[type=checkbox]{background:#b9b3b9;border-color:#b9b3b9}
body .cc-dialog a,body .cc-placeholder a{color:#814f7f}
.tr_column_4_4>.tr_text:has(+ .tr_button_module_wrapper) :is(h2,h3,h4){line-height:1.3!important}
/* Even vertical rhythm: one section spacing, columns centred by flex instead of Divi's per-column margins */
:root{--tr-space:96px;--tr-gap:48px}
@media(max-width:980px){:root{--tr-space:56px;--tr-gap:32px}}
#main-content .tr_section:not(.tr_section_0):not(:first-child):not(.tr_with_background):not(.tr_with_background+.tr_section){padding-top:var(--tr-space)!important;padding-bottom:0!important}
#main-content .tr_section:last-child{padding-bottom:var(--tr-space)!important}
#main-content .tr_section>.tr_row{padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important}
#main-content .tr_section>.tr_row+.tr_row{margin-top:var(--tr-gap)!important}
#main-content .tr_column{margin-top:0!important;margin-bottom:0!important}
@media(min-width:981px){#main-content .tr_row:has(>.tr_column_1_2,>.tr_column_2_5,>.tr_column_3_5){display:flex;align-items:center}}
@media(max-width:980px){#main-content .tr_column+.tr_column{margin-top:var(--tr-gap)!important}}
#main-content .tr_module:last-child,#main-content .prose>:last-child{margin-bottom:0!important}
#main-content .tr_button_module_wrapper{margin-top:24px!important}
/* Hero team photo: section height follows the photo's aspect ratio so the whole team is visible; space before the next section */
body.visual-page-31 #main-content .tr_section_1.tr_section{padding:0!important;min-height:0!important;aspect-ratio:1800/676;background-size:cover!important;background-position:50% 50%!important}
@media(max-width:767px){body.visual-page-31 #main-content .tr_section_1.tr_section{aspect-ratio:1800/1200}}
body.visual-page-31 #main-content .tr_section_1.tr_section>.tr_row{display:none}
body.visual-page-31 #main-content .tr_section_1.tr_section+.tr_section{padding-top:var(--tr-space)!important}
/* === Header like live (Divi breakpoints measured on textilrestaurierung.at) === */
body #main-header{transition:box-shadow .4s}
body #main-header .container,body #main-header .logo_container{transition:height .4s}
body #main-header #logo{transition:width .4s,max-height .4s}
/* >=1600: compact header, menu in one row */
@media(min-width:1600px){
 body #main-header .container,body #main-header .logo_container{height:74px}
 body #main-header #logo{width:360px;max-height:59px}
 body #tr-top-navigation{padding-left:390px!important;padding-top:30px!important}
 body #page-container{padding-top:74px!important}
 body.tr-scrolled #main-header .container,body.tr-scrolled #main-header .logo_container{height:54px}
 body.tr-scrolled #main-header #logo{width:263px;max-height:43px}
 body.tr-scrolled #tr-top-navigation{padding-top:20px!important}
}
/* 1301-1599: large logo, two menu rows (kept clear of the wordmark) */
@media(min-width:1301px) and (max-width:1599px){
 body #page-container{padding-top:118px!important}
 body.tr-scrolled #main-header .container,body.tr-scrolled #main-header .logo_container{height:88px}
 body.tr-scrolled #main-header #logo{width:429px;max-height:70px}
 body.tr-scrolled #tr-top-navigation{padding-top:20px!important}
}
@media(min-width:1301px){body.tr-scrolled #tr-top-navigation nav>ul>li>a{padding-bottom:20px!important}}
/* 981-1300: burger menu like live (was: no navigation at all) */
@media(min-width:981px) and (max-width:1300px){
 body #main-header .container,body #main-header .logo_container{height:86px}
 body #main-header #logo{width:413px;max-height:68px}
 body #page-container{padding-top:86px!important}
 body #main-header #top-menu-nav{display:none!important}
 body #tr-top-navigation{padding-left:0!important;padding-top:0!important;position:absolute;right:30px;top:0;height:100%;display:flex!important;align-items:center}
 body #main-header .mobile-nav{display:block!important}
 body #main-header .mobile-nav summary{font-size:0;list-style:none;line-height:40px;cursor:pointer}
 body #main-header .mobile-nav summary::-webkit-details-marker{display:none}
 body #main-header .mobile-nav summary::after{content:'a';font:32px ETmodules;color:#814f7f}
 body #main-header .mobile-nav nav{position:fixed;top:86px;left:0;width:100%;background:#fff;border-top:3px solid #814f7f;padding:60px;box-shadow:0 2px 5px rgba(0,0,0,.1)}
 body #main-header .mobile-nav #top-menu{display:block!important;float:none}
 body #main-header .mobile-nav li{display:block;padding:0}
 body #main-header .mobile-nav a{display:block;padding:10px 54px!important;font-size:14px;font-weight:300;color:#060307}
 body.tr-scrolled #main-header .container,body.tr-scrolled #main-header .logo_container{height:76px}
 body.tr-scrolled #main-header #logo{width:370px;max-height:61px}
 body.tr-scrolled #main-header .mobile-nav nav{top:76px}
}
@media(min-width:981px){body.tr-scrolled #main-header{box-shadow:0 0 7px rgba(0,0,0,.1)}}
/* <=980: logo capped like live */
@media(max-width:980px){body #main-header .logo_container a{max-width:263px}}

/* === CTAs: the final CTA keeps section space above the footer === */
body #main-content .tr_section:last-child:not(#tr-a):not(#tr-b){padding-bottom:var(--tr-space)!important}
/* === Subpages spacing (targeted) === */
/* Header-near first section: same breathing room as other section starts */
body:not(.visual-page-31) #main-content .tr_section_0.tr_section:not(#tr-a){padding-top:48px!important}
@media(max-width:980px){body:not(.visual-page-31) #main-content .tr_section_0.tr_section:not(#tr-a){padding-top:32px!important}}
/* Hero button must not touch the next (tinted) section */
/* Language switch above page content (Aerosol/Gold): compact */
#main-content .tr_section_0 .tr_code{min-height:0!important;height:auto!important}
#main-content .tr_section_0 .tr_code .wpml-ls{padding:0!important;margin:0!important}
/* Projekt detail: content starts top, not floating mid-row */
body.single-project #main-content .tr_row:first-child{align-items:flex-start!important}
body.single-project #main-content .prose>:is(h1,h2)+*{margin-top:16px!important}
body.single-project #main-content .tr_image+*,body.single-project #main-content figcaption{margin-top:16px!important}
/* References / category: filter close to grid, even rows, footer distance like other pages */
body.visual-page-171 #main-content .tr_section_1.tr_section:not(#tr-a){padding-top:64px!important}
@media(max-width:980px){body.visual-page-171 #main-content .tr_section_1.tr_section:not(#tr-a){padding-top:40px!important}}
#main-content .project-filter{margin-bottom:32px!important}
#main-content .project-card h2{line-height:1.3!important;margin:0!important}
#main-content .project-card p{margin:6px 0 0!important}
#main-content .project-grid{row-gap:48px!important;align-items:start}
#main-content .project-pagination,#main-content .pagination{padding:0!important;margin-top:48px!important}
#main-content .tr_section:has(.project-pagination,.pagination,.project-grid):last-child:not(#tr-a):not(#tr-b){padding-bottom:96px!important}
@media(max-width:980px){#main-content .tr_section:has(.project-pagination,.pagination,.project-grid):last-child:not(#tr-a):not(#tr-b){padding-bottom:56px!important}}
.archive-content:not(#tr-a){padding:48px 0 96px!important}
@media(max-width:980px){.archive-content:not(#tr-a){padding:32px 0 56px!important}}
.archive-list .project-card:not(#tr-a){margin-bottom:48px!important}
/* Multi-line headings: readable line height */
#main-content :is(h1,h2,h3){line-height:1.25}
/* Footer: cookie link directly under language switch */
.site-footer>[data-cc-open]{padding:4px 12px 16px!important}
.site-footer .language-switch{padding-bottom:0!important}
/* Tinted section must not touch the hero button above */
:is(body.visual-page-155,body.visual-page-175,body.visual-page-98) #main-content .tr_section_1.tr_section{margin-top:48px!important}
@media(max-width:980px){:is(body.visual-page-155,body.visual-page-175,body.visual-page-98) #main-content .tr_section_1.tr_section{margin-top:32px!important}}
/* Tinted section: same inner space at the bottom as at the top; following section starts flush so the content gap stays 96/56 */
:is(body.visual-page-155,body.visual-page-175,body.visual-page-98) #main-content .tr_section_1.tr_section:not(#tr-a){padding-bottom:var(--tr-space)!important}
:is(body.visual-page-155,body.visual-page-175,body.visual-page-98) #main-content .tr_section_1.tr_section+.tr_section:not(#tr-a){padding-top:var(--tr-space)!important}
/* === Kontakt (page 173): visual polish, texts unchanged === */
body.visual-page-173 #main-content .tr_section_0 .tr_row:not(#tr-a){max-width:1152px;width:80%;margin:0 auto;align-items:center}
body.visual-page-173 #main-content .tr_section_0 .prose p{margin:0 0 20px!important}
body.visual-page-173 #main-content .tr_section_0 .prose h1{margin-bottom:24px!important}
body.visual-page-173 #main-content .tr_image_0 img{max-width:440px;width:100%;height:auto;display:block;margin-left:auto}
body.visual-page-173 #main-content .tr_section_1.tr_section:not(#tr-a):not(#tr-b){background:#f6f1f6;margin:0 auto;max-width:1240px;width:86%;border-radius:4px;padding:56px 44px!important}
body.visual-page-173 #main-content .tr_section_1 .tr_row{width:100%!important;max-width:none!important}
body.visual-page-173 #main-content .tr_section_1 h2{margin-bottom:28px!important}
body.visual-page-173 .contact-form:not(#tr-a){grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:0!important}
body.visual-page-173 .contact-form > input:not(#tr-a),body.visual-page-173 .contact-form textarea:not(#tr-a){height:48px;border-radius:24px;background:#fff;padding:10px 22px;font-size:16px}
body.visual-page-173 .contact-form textarea:not(#tr-a){height:200px;border-radius:20px;padding-top:16px;grid-column:1/-1}
body.visual-page-173 .contact-form > input:focus,body.visual-page-173 .contact-form textarea:focus{outline:2px solid #814f7f;outline-offset:1px}
body.visual-page-173 .contact-form button:not(#tr-a){grid-column:1/-1;justify-self:start;opacity:1;height:auto;background:#814f7f;color:#fff;border:2px solid #814f7f;border-radius:20px;font:300 20px/1.7 Rationell,Arial,sans-serif;padding:6px 28px;margin-top:8px;cursor:pointer;transition:background .2s,color .2s}
body.visual-page-173 .contact-form button:hover{background:#fff;color:#814f7f}
body.visual-page-173 #main-content .tr_section_2 .tr_row{align-items:flex-start!important}
body.visual-page-173 #main-content .tr_section_2 .tr_column:first-child{align-self:flex-start!important;justify-content:flex-start!important}
@media(max-width:980px){
 body.visual-page-173 #main-content .tr_section_0 .tr_row:not(#tr-a){width:86%}
 body.visual-page-173 #main-content .tr_image_0 img{max-width:300px;margin:8px 0 0}
 body.visual-page-173 #main-content .tr_section_1.tr_section:not(#tr-a):not(#tr-b){width:92%;padding:36px 20px!important}
 body.visual-page-173 .contact-form:not(#tr-a){grid-template-columns:1fr}
 body.visual-page-173 .contact-form textarea:not(#tr-a){height:180px}
 body.visual-page-173 .contact-form button:not(#tr-a){justify-self:stretch}
 body.visual-page-173 #main-content .tr_section_2 h2{margin-bottom:20px!important}
}
body.visual-page-173 #main-content .tr_section_0 .tr_row.tr_row_0:not(#tr-a):not(#tr-b){margin-left:auto!important;margin-right:auto!important}
/* Kontakt: Lageplan as a framed card matching the form card (same width/inset), heading on top, plan centred */
body.visual-page-173 #main-content .tr_section_2.tr_section:not(#tr-a):not(#tr-b){margin:48px auto 0;max-width:1240px;width:86%;padding:56px 44px!important;background:#fff;border:1px solid #e6dae5;border-radius:4px}
body.visual-page-173 #main-content .tr_section_2 .tr_row:not(#tr-a){display:block!important;width:100%!important;max-width:none!important;margin:0!important}
body.visual-page-173 #main-content .tr_section_2 .tr_column:not(#tr-a){width:100%!important;max-width:none!important;margin:0!important;float:none!important}
body.visual-page-173 #main-content .tr_section_2 h2{margin:0 0 32px!important}
body.visual-page-173 #main-content .tr_section_2 .tr_image_wrap{display:block;text-align:center}
body.visual-page-173 #main-content .tr_section_2 img{display:inline-block;width:auto;max-width:100%;height:auto}
body.visual-page-173 #main-content .tr_section_2+*{margin-top:0}
body.visual-page-173 #main-content .tr_section:last-child:not(#tr-a):not(#tr-b).tr_section_2{margin-bottom:96px}
@media(max-width:980px){
 body.visual-page-173 #main-content .tr_section_2.tr_section:not(#tr-a):not(#tr-b){width:92%;padding:36px 20px!important;margin:32px auto 56px}
 body.visual-page-173 #main-content .tr_section_2 h2{margin-bottom:20px!important}
}
@media(max-width:980px){body.visual-page-173 #main-content .tr_section:last-child:not(#tr-a):not(#tr-b).tr_section_2{margin-bottom:56px}}
body.visual-page-173 #main-content .tr_section_2 a.tr-plan-zoom{display:inline-block;cursor:zoom-in}
/* Kontakt: logo without the image corner rounding (Divi default for photos) */
body.visual-page-173 #main-content .tr_image_0 .tr_image_wrap:not(#tr-a){border-radius:0!important;overflow:visible!important}
/* Kontakt mobile: one 20px gutter, tighter rhythm, logo clear of form card */
@media(max-width:980px){
 body.visual-page-173 #main-content .tr_section_0 .tr_row.tr_row_0:not(#tr-a):not(#tr-b){width:auto!important;margin:0 20px!important}
 body.visual-page-173 #main-content .tr_section_0 .prose h1{margin-bottom:16px!important;padding-bottom:0!important}
 body.visual-page-173 #main-content .tr_section_0 .prose p:not(#tr-a){margin:0 0 16px!important;padding:0!important;line-height:1.6}
 body.visual-page-173 #main-content .tr_section_0 .tr_column:last-child:not(#tr-a){margin:8px 0 40px!important}
 body.visual-page-173 #main-content .tr_image_0 img:not(#tr-a){max-width:220px;margin:0}
 body.visual-page-173 #main-content :is(.tr_section_1,.tr_section_2).tr_section:not(#tr-a):not(#tr-b){width:auto;margin-left:20px;margin-right:20px;padding:28px 20px!important}
 body.visual-page-173 #main-content :is(.tr_section_1,.tr_section_2) h2:not(#tr-a){margin:0 0 20px!important;padding-bottom:0!important}
 body.visual-page-173 .contact-form:not(#tr-a){gap:12px}
 body.visual-page-173 .contact-form > input:not(#tr-a){height:46px;padding:8px 18px}
 body.visual-page-173 .contact-form textarea:not(#tr-a){height:140px;margin:0;padding:14px 18px;resize:none}
 body.visual-page-173 .contact-form button:not(#tr-a){margin-top:4px;font-size:18px}
 body.visual-page-173 #main-content .tr_section_2.tr_section:not(#tr-a):not(#tr-b){margin-top:24px}
}
/* Kontakt mobile: contact text on the same line as card content (40px) ; email rows grouped */
@media(max-width:980px){
 body.visual-page-173 #main-content .tr_section_0 .tr_row.tr_row_0:not(#tr-a):not(#tr-b){margin:0 40px!important}
 body.visual-page-173 #main-content .tr_section_0 .prose p+p:has(a[href^="mailto"]):not(#tr-a){margin-top:-12px!important}
 body.visual-page-173 #main-content .tr_section_0 .prose p:has(a[href^="mailto"]):not(#tr-a){overflow-wrap:anywhere}
}
/* Hero team photo: height and crop exactly like live (Divi: 300px top padding + 4% bottom + divider; 980: 320px; phone: 229px; image anchored top) */
body.visual-page-31 #main-content .tr_section_1.tr_section:not(#tr-a){aspect-ratio:auto!important;height:calc(300px + 8.06vw);background-position:50% 0%!important}
@media(max-width:980px){body.visual-page-31 #main-content .tr_section_1.tr_section:not(#tr-a){height:320px}}
@media(max-width:767px){body.visual-page-31 #main-content .tr_section_1.tr_section:not(#tr-a){height:229px}}
