/* Three review directions. Sonne is the current recommended default. */
:root{--ink:#23292d;--paper:#fbfaf6;--forest:#2c3236;--gold:#f2c43c;--muted:#b9c0c3;--line:#dcdedb;--darkline:#d8dcd9;--canvas:#fbfaf6;--hero-text:#23292d;--hero-muted:#596368;--accent-text:#805b00;--cta:#f2c43c;--cta-text:#23292d;--soft:#f0f0ea;--card:#fff;--border:#d8dcd9;--secondary:#5e686c;--dark:#23292d;--dark-panel:#30383d;--dark-muted:#c4cccf;--dark-accent:#f2c43c;--header-line:#d8dcd9;--logo-filter:none;--logo-blend:multiply}
:root[data-theme="kueste"]{--canvas:#f5f9fa;--paper:#f5f9fa;--ink:#193743;--hero-text:#193743;--hero-muted:#516773;--accent-text:#116c7a;--cta:#116c7a;--cta-text:#fff;--gold:#116c7a;--soft:#e6eef1;--border:#cbdadd;--forest:#193743;--dark:#193743;--dark-panel:#234956;--dark-accent:#9adce1;--secondary:#516773;--header-line:#cbdadd}
:root[data-theme="atelier"]{--canvas:#24272a;--paper:#f9f6f0;--ink:#292b2d;--hero-text:#f9f6f0;--hero-muted:#c6c7c6;--accent-text:#efaa87;--cta:#efaa87;--cta-text:#292b2d;--gold:#efaa87;--soft:#eee8df;--border:#d7d1c8;--forest:#34302e;--dark:#27292b;--dark-panel:#353230;--dark-accent:#efaa87;--secondary:#686761;--header-line:#505254;--logo-filter:invert(1);--logo-blend:screen}
body{background:var(--canvas);color:var(--hero-text)}.header{border-color:var(--header-line)}.header .brand img{filter:var(--logo-filter);mix-blend-mode:var(--logo-blend)}.header .brand-sub{color:var(--hero-muted)}nav a:not(.nav-cta){color:var(--hero-text)}nav a:hover{color:var(--accent-text)}.nav-cta{border-color:var(--hero-text);color:var(--hero-text)}.nav-cta:hover{background:var(--cta);color:var(--cta-text);border-color:var(--cta)}.menu-toggle{color:var(--hero-text)}.hero .eyebrow{color:var(--hero-muted)}.hero h1>span{color:var(--accent-text)}.hero-intro,.hero-link{color:var(--hero-muted)}.dot{background:var(--cta)}.button-gold{background:var(--cta);color:var(--cta-text)}.button:hover{background:var(--cta);filter:brightness(.94)}.text-link:hover{color:var(--accent-text)}.hero-foot{border-color:var(--header-line);color:var(--hero-muted)}.hero-foot strong{color:var(--hero-text)}.hero-photo:after{background:linear-gradient(180deg,#14181d55,transparent 30%,transparent 62%,#14181dd9)}.hero-photo .art-top,.hero-photo .art-bottom,.hero-photo .art-bottom strong{color:#fff}.hero-photo .art-bottom a{border-color:#e6e8e8}.section-light .eyebrow,.heading-row>p,.about-copy>p:not(.lead):not(.eyebrow),.service>p,.service-label,.photo-grid figcaption>span,.steps p,.faq details>p{color:var(--secondary)}.service{background:var(--card);border-color:var(--border)}.service.featured{background:var(--forest);border-color:var(--forest);color:#fbfaf6}.service.featured>p{color:var(--dark-muted)}.service li{border-color:var(--border)}.service li:before{color:var(--accent-text)}.service-icon{color:var(--dark-accent)}.tag{border-color:#697478;color:var(--dark-accent)}.featured li{border-color:#5d686c}.featured li:before{color:var(--dark-accent)}.service-svg{stroke:var(--secondary)}.photo-gallery>.eyebrow{border-color:var(--border)}.photo-open{background:var(--dark)}.photo-open span{background:var(--paper);color:var(--ink)}.energy-section{background:var(--dark);color:#fbfaf6}.energy-copy>p:not(.eyebrow){color:var(--dark-muted)}.energy-tabs button{border-color:#829095;color:#fbfaf6}.energy-tabs button.active{background:var(--dark-accent);color:var(--dark);border-color:var(--dark-accent)}.energy-note{background:var(--dark-panel);border-color:#748085}.note-icon,.energy-note .eyebrow,.energy-note .text-link{color:var(--dark-accent)}.energy-note>p:not(.eyebrow){color:var(--dark-muted)}.about-copy .lead{color:var(--ink)}.workshop-photo:after{background:linear-gradient(transparent 45%,#1c222ae6)}.business{background:var(--soft)}.business .eyebrow,.business>p{color:var(--secondary)}.circle-link{border-color:var(--secondary)}.circle-link:hover{background:var(--border)}.steps li,.faq,.faq-list,.faq details{border-color:var(--border)}.steps li>span{color:var(--secondary)}.contact{background:var(--dark);color:#fbfaf6}.contact .eyebrow,.contact-copy>p:not(.eyebrow){color:var(--dark-muted)}.contact h2 em{color:var(--dark-accent)}.contact-email{color:#fbfaf6;border-color:#7a888d}.inquiry{background:var(--dark-panel);border-color:#657277}.inquiry label{color:#fbfaf6}.inquiry label span,.form-note{color:var(--dark-muted)}.inquiry input,.inquiry select,.inquiry textarea{background:var(--dark);color:#fbfaf6;border-color:#7c898d}.inquiry input::placeholder,.inquiry textarea::placeholder{color:#bac4c7}.inquiry .button{background:var(--dark-accent);color:var(--dark)}#form-status{color:var(--dark-accent)}.copy-button{color:#fbfaf6}footer{background:#171c20;color:#fbfaf6}.footer-top>p span,.back-top,.footer-bottom{color:#bcc5c9}.footer-bottom{border-color:#536069}.footer-bottom button{color:#d1d8da}.draft-label{color:#a4b0b5}.legal-note{color:var(--secondary);border-color:var(--border)}.photo-viewer{background:var(--dark);color:#fbfaf6}.photo-viewer::backdrop{background:#0e141be8}.skip{background:var(--cta);color:var(--cta-text)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-color:var(--accent-text)}.contact :focus-visible,.energy-section :focus-visible{outline-color:var(--dark-accent)}
@media(max-width:760px){nav{background:var(--canvas);border-color:var(--header-line)}}

.service-detail-links,.related-services{display:flex;flex-wrap:wrap;gap:20px 35px;padding-top:25px;font-size:14px}.service-detail-links a,.related-services a{border-bottom:1px solid var(--secondary);padding-bottom:4px}.service-overview{margin-top:50px;padding-top:32px;border-top:1px solid var(--border)}.service-overview>h3{font-size:30px}.extra-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 35px}.extra-services p{font-size:14px;color:var(--secondary);margin-bottom:8px}.extra-services strong{display:block;color:var(--ink);font-size:17px;margin-bottom:9px}.related-services{padding:28px 5.5% 45px}.detail-hero{max-width:1100px;margin:auto;padding:45px 6% 70px}.breadcrumb{display:inline-block;font-size:13px;color:var(--hero-muted);margin-bottom:40px}.detail-hero h1{font-size:clamp(44px,6vw,78px);max-width:860px}.detail-hero>p:not(.eyebrow){max-width:720px;color:var(--hero-muted);font-size:18px}.detail-content{padding:55px 6%}.detail-image{display:block;max-width:1050px;width:100%;height:auto;max-height:580px;object-fit:cover;margin:0 auto 50px}.detail-text{max-width:760px;margin:auto}.detail-text section{margin-bottom:40px}.detail-text h2{font-size:clamp(27px,3vw,39px);letter-spacing:-.03em}.detail-text p{color:var(--secondary);font-size:17px}.detail-text aside{border-top:1px solid var(--border);padding-top:35px;margin-top:50px}@media(max-width:760px){.extra-services{grid-template-columns:1fr;gap:18px}.service-detail-links{flex-direction:column;align-items:flex-start}.detail-hero{padding-top:30px}.detail-hero h1{font-size:45px}.detail-content{padding-top:35px}.detail-text p{font-size:16px}}

@media(max-width:760px){.about-visual.workshop-photo{width:100%;min-width:0;aspect-ratio:auto}.detail-hero~.header .nav-cta{font-size:12px}}

/* Expanded Bott section and refreshed photographs, 01 October 2026. */
.hero-project-image{object-position:48% center}.bott-section{padding:80px max(5.5%,calc((100vw - 1424px)/2));background:var(--soft);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6%;align-items:center}.bott-visual{position:relative;overflow:hidden;align-self:stretch;min-height:650px}.bott-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.bott-visual:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#14181dcc)}.bott-visual>p{position:absolute;left:28px;bottom:15px;right:20px;z-index:1;font-size:10px;letter-spacing:.15em;color:white}.bott-copy h2{font-size:clamp(38px,4vw,58px)}.bott-intro{font-size:16px;color:var(--secondary)}.bott-offers{margin:27px 0}.bott-offers>div{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:17px 0;border-top:1px solid var(--border)}.bott-offers h3{font-size:20px;margin:0 0 7px}.bott-offers p{grid-column:1;font-size:14px;color:var(--secondary);margin:0}.bott-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center}.bott-actions .button{font-size:12px}.bott-actions .text-link{font-size:12px}.header nav{gap:22px}.workshop-photo>img{object-position:center 56%}@media(max-width:1050px){.header nav{gap:13px;font-size:11px}.header .nav-cta{padding:11px 12px;gap:10px}.bott-section{gap:5%;padding-top:60px;padding-bottom:60px}.bott-visual{min-height:600px}}@media(max-width:760px){.bott-section{display:flex;flex-direction:column;padding:55px 6%;gap:35px}.bott-copy{order:0}.bott-visual{order:1;width:100%;min-height:0;aspect-ratio:3/4}.bott-copy h2{font-size:43px}.header nav{font-size:14px}.hero-project-image{object-position:48% center}.bott-actions{align-items:flex-start;flex-direction:column}}

/* Shared image columns keep the workshop and Bott sections aligned. */
.about,.bott-section{padding:80px max(5.5%,calc((100vw - 1424px)/2));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,96px);align-items:center}
.about .workshop-photo,.bott-section .bott-visual{width:100%;min-width:0;min-height:0;height:auto;aspect-ratio:3/4;align-self:center}
.about .workshop-photo>img,.bott-section .bott-visual>img{width:100%;height:100%;object-fit:cover}
.bott-visual>p{left:32px;bottom:32px;margin:0}
@media(max-width:900px){.about,.bott-section{padding:55px 6%;grid-template-columns:minmax(0,1fr);gap:32px}.about .workshop-photo,.bott-section .bott-visual{order:0;aspect-ratio:3/4}.about-copy,.bott-copy{order:1}.bott-visual>p{left:25px;bottom:25px}}

/* Descriptive labels replace decorative section numbering. */
.service-label{font-size:9px;letter-spacing:.12em}.steps li{padding:24px 0 0}

/* The planned Campus belongs to the same site as the existing services. */
.campus-preview{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:75px max(5.5%,calc((100vw - 1424px)/2));background:var(--soft)}
.campus-preview p:not(.eyebrow){font-size:15px;color:var(--secondary);max-width:550px}
.campus-preview .button{margin:12px 0 20px;font-size:12px}
.campus-preview .text-link{display:flex;width:fit-content;font-size:12px}
@media(max-width:760px){.campus-preview{grid-template-columns:1fr;gap:5px;padding:55px 6%}.campus-preview h2{font-size:40px}.campus-preview .button{padding:16px;line-height:1.6}}

/* Carpet felt service and material sales, without illustrative imagery. */
.filz-section{padding:80px max(5.5%,calc((100vw - 1424px)/2));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,96px);align-items:center;background:var(--soft)}
.filz-heading h2{font-size:clamp(38px,4vw,58px)}
.filz-copy>p:not(.eyebrow){color:var(--secondary);font-size:16px}
.filz-offers{margin:25px 0}
.filz-offers>div{border-top:1px solid var(--border);padding:17px 0 0;margin-top:17px}
.filz-offers h3{font-size:21px;margin:0 0 9px}
.filz-offers p{font-size:14px;color:var(--secondary);margin-bottom:0}
.filz-copy .button{font-size:12px}
.filz-copy .text-link{display:flex;width:fit-content;font-size:12px;margin-top:18px}
[data-theme="sommer"] .filz-heading h2{color:var(--sea)}
@media(max-width:900px){.filz-section{padding:55px 6%;grid-template-columns:minmax(0,1fr);gap:32px}.filz-heading h2{font-size:43px}}

.filz-visual{margin:0;min-width:0;width:100%}.filz-visual img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 45%}.filz-visual figcaption{font-size:11px;color:var(--secondary);margin-top:9px}[data-theme="sommer"] .filz-visual img{border-radius:24px 110px 24px 24px}
