﻿:root{--ink:#1e2926;--muted:#66736d;--paper:#f5f0e7;--surface:#fffdf7;--line:#d8cebd;--clay:#a85d3b;--leaf:#536b43;--sage:#dce3d2;--sand:#d9b978;--dark:#17201d;--shadow:0 22px 58px rgba(30,41,38,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.58}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:15px clamp(18px,4vw,58px);background:rgba(245,240,231,.94);border-bottom:1px solid rgba(216,206,189,.85);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:center;gap:12px;min-width:220px}.brand-mark{display:grid;place-items:center;width:48px;height:48px;background:var(--dark);color:#fff;font-family:Barlow,Arial,sans-serif;font-weight:800}.brand strong,h1,h2,h3{font-family:Barlow,Arial,sans-serif;line-height:1.05}.brand strong{display:block;font-size:1.1rem}.brand small{display:block;color:var(--muted);font-size:.78rem}.main-nav{display:flex;gap:clamp(16px,2.4vw,32px);align-items:center;font-weight:800;color:#43524d}.main-nav a[aria-current=page],.main-nav a:hover,.header-call:hover,.header-mail:hover,footer a:hover{color:var(--clay)}.header-contact{display:grid;justify-items:end;gap:2px;line-height:1.15}.header-call{font-weight:900;white-space:nowrap}.header-mail{color:var(--muted);font-size:.88rem;font-weight:800;white-space:nowrap}.home-hero{position:relative;min-height:calc(100vh - 79px);display:grid;align-items:end;padding:clamp(28px,5vw,68px);overflow:hidden}.home-hero__media{position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,32,29,.9),rgba(23,32,29,.58) 45%,rgba(23,32,29,.16)),url("https://images.unsplash.com/photo-1503387762-592deb58ef4e?auto=format&fit=crop&w=2200&q=84") center/cover}.home-hero__content{position:relative;max-width:880px;padding-bottom:clamp(40px,8vw,96px);color:#fff}.eyebrow{margin:0 0 14px;color:var(--clay);font-size:.82rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.home-hero .eyebrow,.page-hero .eyebrow{color:var(--sand)}h1{margin:0;max-width:930px;font-size:clamp(3rem,7.4vw,7rem);letter-spacing:0}.home-hero p:not(.eyebrow),.page-hero p:not(.eyebrow){max-width:720px;color:rgba(255,255,255,.84);font-size:clamp(1.05rem,1.7vw,1.28rem)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 20px;border:2px solid transparent;font-weight:900}.btn-primary{background:var(--sand);color:var(--dark)}.btn-light{border-color:rgba(255,255,255,.52);color:#fff}.btn-secondary{margin-top:18px;background:var(--dark);color:#fff}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.intro-grid article{padding:clamp(28px,5vw,58px);border-right:1px solid var(--line)}.intro-grid article:last-child{border-right:0}.intro-grid span{color:var(--leaf);font-weight:900}h2{margin:0;font-size:clamp(2rem,4vw,4.2rem)}.intro-grid h2{margin-top:38px;font-size:clamp(1.7rem,2.6vw,2.4rem)}p{color:var(--muted)}.highlight,.preview-section,.split-section,.service-detail,.reference-grid,.contact-band{padding:clamp(64px,9vw,118px) clamp(18px,5vw,68px)}.highlight{display:grid;grid-template-columns:.9fr 1.05fr auto;gap:clamp(24px,4vw,54px);align-items:start;background:var(--sage)}.highlight p:not(.eyebrow){margin:0;max-width:720px;color:#3e4d48}.text-link{align-self:end;color:var(--dark);font-weight:900;border-bottom:2px solid var(--clay)}.section-heading{max-width:1180px;margin:0 auto 28px;display:grid;grid-template-columns:minmax(180px,.36fr) 1fr;gap:28px}.preview-list{max-width:1180px;margin:0 auto;display:grid;border-top:1px solid var(--line)}.preview-list a{padding:22px 0;border-bottom:1px solid var(--line);font-family:Barlow,Arial,sans-serif;font-size:clamp(1.45rem,3vw,2.5rem);font-weight:800}.preview-list a:hover{color:var(--leaf)}.split-section{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(28px,6vw,84px);align-items:center;background:var(--surface)}.split-image{min-height:480px;background:linear-gradient(rgba(23,32,29,.08),rgba(23,32,29,.08)),url("assets/home-referenzen-ftbau.jpg") 57% center/cover}.page-hero{min-height:560px;display:grid;align-content:end;padding:clamp(34px,6vw,78px);color:#fff}.services-hero{background:linear-gradient(90deg,rgba(23,32,29,.9),rgba(23,32,29,.54)),url("assets/leistungen-hero-ftbau.jpg") center 46%/cover}.references-hero{background:linear-gradient(90deg,rgba(23,32,29,.86),rgba(23,32,29,.46)),url("assets/referenzen-hero-ftbau.jpg") center 46%/cover}.service-detail{display:grid;grid-template-columns:.42fr 1fr;gap:clamp(28px,6vw,80px);border-bottom:1px solid var(--line);background:var(--paper)}.service-detail.featured{background:var(--surface);border-top:1px solid var(--line)}.service-detail p{margin-top:0;max-width:820px;font-size:1.06rem}.service-detail ul{margin:24px 0 0;padding:0;display:grid;gap:10px;list-style:none}.service-detail li{position:relative;padding-left:26px;color:#3f4d48;font-weight:700}.service-detail li:before{content:"";position:absolute;left:0;top:.72em;width:10px;height:10px;background:var(--leaf)}.reference-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.reference-card{display:grid;background:var(--surface);border:1px solid var(--line)}.reference-card>div:last-child{padding:26px}.reference-card h2{font-size:clamp(1.6rem,2.8vw,2.7rem)}.ref-image{min-height:330px;background-size:cover;background-position:center}.ref-1{background-image:url("https://images.unsplash.com/photo-1600566752355-35792bedcfea?auto=format&fit=crop&w=1200&q=82")}.ref-2{background-image:url("https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=1200&q=82")}.ref-3{background-image:url("https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=1200&q=82")}.ref-4{background-image:url("https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1200&q=82")}.contact-band{display:grid;grid-template-columns:1fr minmax(300px,470px);gap:clamp(28px,6vw,90px);background:var(--dark);color:#fff}.contact-band p{max-width:660px;color:rgba(255,255,255,.72)}.contact-links{display:grid;gap:14px;align-self:start;padding:28px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.contact-links a{font-size:1.05rem;font-weight:900}.contact-links span{color:rgba(255,255,255,.62)}footer{display:flex;justify-content:space-between;gap:18px;padding:28px clamp(18px,5vw,68px);color:var(--muted)}footer nav{display:flex;gap:18px;font-weight:800}@media (max-width:980px){.main-nav{display:none}.intro-grid,.highlight,.section-heading,.split-section,.service-detail,.reference-grid,.contact-band{grid-template-columns:1fr}.intro-grid article{border-right:0;border-bottom:1px solid var(--line)}.highlight .text-link{justify-self:start}}@media (max-width:620px){.header-contact{display:none}.brand{min-width:0}h1{font-size:3rem}.home-hero{min-height:720px;padding:24px 18px}.page-hero{min-height:520px}.split-image,.ref-image{min-height:280px}footer{display:grid}}
.material-callout{margin:26px 0;padding:24px;background:var(--sage);border-left:6px solid var(--leaf)}.material-callout h3{margin:0 0 10px;font-size:clamp(1.35rem,2.2vw,2rem)}.material-callout p{margin:0}
.promise-section{padding:clamp(64px,9vw,118px) clamp(18px,5vw,68px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,6vw,84px);background:var(--surface);border-bottom:1px solid var(--line)}.promise-section h2{max-width:620px}.promise-list{display:grid;gap:14px}.promise-list article{padding:24px;border:1px solid var(--line);background:#fbf8ef}.promise-list strong{display:block;font-family:Barlow,Arial,sans-serif;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.05;color:var(--dark)}.promise-list p{margin:10px 0 0}.contact-band h2:after{content:"";display:block;width:72px;height:5px;margin-top:22px;background:var(--sand)}@media (max-width:980px){.promise-section{grid-template-columns:1fr}}
.brand{min-width:auto}.brand-logo{display:block;width:auto;height:64px;max-width:220px;object-fit:contain;background:#fff;padding:6px 10px;border:1px solid rgba(216,206,189,.9)}@media (max-width:620px){.brand-logo{height:52px;max-width:180px;padding:5px 8px}}
.brand-logo{background:transparent;border:0;padding:0;height:70px;max-width:230px}@media (max-width:620px){.brand-logo{height:56px;max-width:185px}}
.home-hero__media{background:linear-gradient(90deg,rgba(23,32,29,.92),rgba(23,32,29,.62) 42%,rgba(23,32,29,.2)),url("assets/home-hero-ftbau.jpg") 58% center/cover}
.home-hero h1{font-size:clamp(2.35rem,5.3vw,5.6rem);max-width:1080px}
.hero-statement{display:inline-block;margin:22px 0 0;padding-left:18px;border-left:5px solid var(--sand);color:#fff!important;font-family:Barlow,Arial,sans-serif;font-size:clamp(1.45rem,2.6vw,2.5rem)!important;font-weight:800;line-height:1.08}.home-hero h1{font-size:clamp(2.55rem,5.8vw,6.1rem);max-width:1050px}
.hero-statement{display:block;max-width:760px;margin:24px 0 0;padding-left:0;border-left:0;color:rgba(255,255,255,.86)!important;font-family:Inter,Arial,sans-serif;font-size:clamp(1.08rem,1.7vw,1.35rem)!important;font-weight:600;line-height:1.5}.home-hero h1{font-size:clamp(3rem,7.4vw,7rem);max-width:930px}
.ref-2{background-image:url("assets/referenz-imst-holzterrasse.jpg")}
.ref-1{background-image:url("assets/referenz-simon-keller-buero.jpg")}
.project-slider{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--dark)}.slider-track{height:100%;display:flex;transition:transform .32s ease}.slider-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:42px;height:42px;border:0;background:rgba(23,32,29,.78);color:#fff;font-size:2rem;line-height:1;cursor:pointer}.slider-prev{left:12px}.slider-next{right:12px}.slider-btn:hover{background:var(--clay)}.slider-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:8px;z-index:2}.slider-dots button{width:10px;height:10px;padding:0;border:1px solid rgba(255,255,255,.85);background:rgba(255,255,255,.35);cursor:pointer}.slider-dots button.is-active{background:var(--sand);border-color:var(--sand)}
.legal-hero{background:linear-gradient(90deg,rgba(23,32,29,.9),rgba(23,32,29,.58)),url("assets/referenzen-hero-ftbau.jpg") center 46%/cover}.legal-content{max-width:980px;margin:0 auto;padding:clamp(54px,8vw,96px) clamp(18px,5vw,40px);background:var(--surface)}.legal-content .legal-company{margin:0 0 32px;color:var(--leaf);font-weight:900}.legal-content h2{margin:42px 0 14px;padding-top:28px;border-top:1px solid var(--line);font-size:clamp(1.45rem,2.4vw,2rem)}.legal-content h2:first-of-type{margin-top:20px}.legal-content p{margin:0 0 12px;color:#3f4d48;font-size:1rem;line-height:1.72}
.service-detail.tone-light{background:var(--surface)}.service-detail.tone-dark{background:var(--paper)}
.legal-content a{color:var(--leaf);font-weight:800;text-decoration:underline;text-decoration-color:rgba(83,107,67,.35);text-underline-offset:3px}.legal-note{margin:24px 0!important;padding:18px 20px;border-left:5px solid var(--sand);background:#f4ead2;color:var(--ink)!important}
.nav-toggle{display:none;place-items:center;width:44px;height:44px;padding:10px;border:1px solid var(--line);background:transparent;color:var(--dark);cursor:pointer}.nav-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}.nav-toggle span+span{margin-top:5px}.nav-toggle.is-open span:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:last-child{transform:translateY(-7px) rotate(-45deg)}@media (max-width:980px){.site-header{flex-wrap:wrap}.nav-toggle{display:grid;margin-left:auto}.main-nav{order:4;width:100%}.main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:10px;border-top:1px solid var(--line)}.main-nav.is-open a{padding:11px 2px}}@media (max-width:620px){.site-header{gap:12px}.nav-toggle{flex:0 0 44px}}
