@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--yellow:#f4cb00;--ink:#22231f;--muted:#62635d;--line:#dfdfd9;--tint:#f5f5f1;--shell:1180px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.75;background:#fff}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-underline-offset:5px}button,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ad7900;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600;line-height:1.3}h1{font-size:clamp(1.9rem,3.2vw,2.75rem)}h2{font-size:clamp(1.6rem,2.5vw,2.1rem);margin-bottom:22px}h3{font-size:1rem}p{margin-bottom:20px}.shell{width:min(var(--shell),calc(100% - 64px));margin:auto}.skip{position:fixed;top:10px;left:10px;z-index:99;transform:translateY(-160%);background:var(--yellow);padding:10px 16px}.skip:focus{transform:none}.eyebrow{font-size:.85rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;margin-bottom:16px}.header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e8e8e3}.header-inner{min-height:103px;display:flex;align-items:center;gap:36px}.brand{width:204px;flex:0 0 auto}.brand img{width:100%;height:76px;object-fit:contain}.header nav{display:flex;gap:30px;margin-left:auto;font-size:.9rem}.header nav a{text-decoration:none;white-space:nowrap}.header nav a:hover{box-shadow:0 2px var(--yellow)}.header-phone{text-decoration:none;border-left:1px solid var(--line);padding-left:29px;line-height:1.6;font-weight:600;white-space:nowrap}.header-phone span{display:block;font-size:.75rem;font-weight:400;color:var(--muted)}.menu-toggle{display:none}
.hero{position:relative;min-height:520px;background:#252b24;color:#fff;overflow:hidden}.hero-photo{position:absolute;inset:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,22,17,.89) 0%,rgba(15,22,17,.73) 28%,rgba(15,22,17,.10) 66%,rgba(15,22,17,0) 100%)}.hero-inner{position:relative;z-index:1;padding-top:75px;padding-bottom:75px}.hero-copy{max-width:520px}.hero .eyebrow{color:var(--yellow)}.hero h1{margin-bottom:13px;letter-spacing:-.035em}.hero-subline{font-size:1.48rem;line-height:1.55;margin-bottom:21px}.hero-copy>p:not(.hero-subline):not(.eyebrow){font-size:.94rem;color:#f2f3ed}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--yellow);color:#24251e;text-decoration:none;font-size:.9rem;font-weight:600;padding:13px 21px;border:0}.button:hover{background:#ffdd36}.hero .button{margin-top:8px}.overview{padding:44px 0 48px;background:#fff;border-bottom:1px solid var(--line);border-top:5px solid var(--yellow)}.overview-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:23px}.overview h2{font-size:1.5rem;margin:0}.overview p{font-size:.88rem;color:var(--muted);margin:0}.service-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}.service-nav a{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0;font-size:.91rem;text-decoration:none}.service-nav a span{color:#777a68}.service-nav a:hover{color:#716000;border-color:#ba9d00}
.service-section{padding:65px 0 68px;scroll-margin-top:103px}.service-section--tint{background:var(--tint)}.service-layout{display:grid;grid-template-columns:minmax(0, .86fr) minmax(0,1.4fr);gap:64px;align-items:start}.service-copy{position:sticky;top:132px}.service-copy h2:before{content:"";display:block;width:43px;height:4px;background:var(--yellow);margin-bottom:20px}.service-copy p{font-size:.95rem;line-height:1.85;color:#55594f}.service-list{list-style:none;padding:0;margin:22px 0 25px;font-size:.89rem}.service-list li{padding:7px 0 7px 18px;position:relative;border-bottom:1px solid var(--line)}.service-list li:before{content:"";position:absolute;left:0;top:19px;width:5px;height:5px;background:#b99b00}.contact-link{font-size:.85rem;text-decoration:none;border-bottom:1px solid #b3b59d;padding-bottom:4px}.contact-link span{margin-left:12px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.media{text-decoration:none;min-width:0;display:block}.media-image{position:relative;overflow:hidden;display:block;background:#e5e6df}.media-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .3s ease}.media:hover .media-image img{transform:scale(1.035)}.media-caption{display:block;font-size:.76rem;line-height:1.55;margin-top:9px;color:#5b5e54}.video-label,.zoom-label{position:absolute;bottom:10px;right:10px;color:#fff;background:rgba(22,25,20,.88);font-size:.74rem;padding:4px 9px;line-height:1.5}.video-label span{font-size:.7rem;margin-right:5px}.zoom-label{font-size:1.12rem;line-height:1.2;padding:4px 7px}.gallery-more{margin-top:24px;border-top:1px solid #bfc2b4}.gallery-more summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0;font-size:.86rem;font-weight:600;cursor:pointer}.gallery-more summary::-webkit-details-marker{display:none}.more-icon{font-size:1.4rem;font-weight:400}.gallery-more .gallery-grid{padding-top:12px}.when-open,.gallery-more[open] .when-closed{display:none}.gallery-more[open] .when-open{display:inline}.gallery-more[open] .more-icon{transform:rotate(45deg)}.gallery-grid--single{grid-template-columns:1fr}.gallery-grid--single .media img{aspect-ratio:16/10;object-fit:contain;background:#e7e7e0}.statement{background:var(--yellow);padding:37px 0;text-align:center}.statement p{font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.6;margin:0}.statement strong{font-weight:700}.extras{padding:63px 0;border-top:1px solid var(--line)}.extras-layout{display:grid;grid-template-columns:.86fr 1.4fr;gap:64px}.extras-layout>div>p{font-size:.93rem;color:var(--muted)}.extra-list{display:grid;grid-template-columns:1fr 1fr;gap:22px 32px}.extra-list h3{font-size:.93rem;margin-bottom:9px}.extra-list p{font-size:.84rem;line-height:1.9;color:var(--muted);margin:0}.fleet{background:var(--tint);padding:60px 0}.fleet-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:25px}.fleet-heading h2{margin:0}.fleet-heading p:last-child{font-size:.93rem;color:var(--muted);margin:0}.fleet .gallery-grid{grid-template-columns:repeat(3,1fr)}.fleet .media-image img{aspect-ratio:4/3;object-position:center 45%}.contact{background:var(--yellow);padding:58px 0}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.contact h2{font-size:1.8rem}.contact p{font-size:.92rem;margin-bottom:0}.contact .eyebrow{margin-bottom:14px}.contact-details{border-left:1px solid rgba(0,0,0,.2);padding-left:45px}.contact-details a{display:block;width:fit-content}.phone{font-size:clamp(1.2rem,2.3vw,1.9rem);font-weight:600;text-decoration:none}.email{font-size:.94rem;overflow-wrap:anywhere;margin:6px 0 19px}address{font-size:.86rem;font-style:normal}footer{background:#262822;color:#e5e6dc;padding:31px 0}.footer-inner{display:flex;align-items:center;gap:32px}.footer-logo{width:130px;flex:0 0 auto}.footer-inner p{font-size:.73rem;margin:0;color:#b9bcad}.footer-inner>div{margin-left:auto;display:flex;gap:22px;font-size:.77rem}.footer-inner>div a{text-decoration:none}.route-intro{padding:55px 0 20px}.route-intro>a{display:inline-block;margin-bottom:20px;font-size:.86rem}.route-intro .service-nav{margin-bottom:40px}.legal-hero{background:var(--tint);padding:50px 0 30px}.legal-hero .eyebrow{display:none}.legal-copy{max-width:850px;padding:40px 0}.legal-copy h2{font-size:1.25rem;margin:32px 0 15px}.legal-copy p{font-size:.92rem;overflow-wrap:anywhere}.legal-hero p{font-size:.9rem}
.viewer{border:0;background:#171915;color:#fff;width:min(1180px,calc(100% - 40px));max-width:100%;max-height:calc(100dvh - 32px);padding:18px 22px;margin:auto}.viewer::backdrop{background:rgba(8,10,7,.91)}.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.viewer-top p{font-size:.98rem;margin:0;font-weight:600}.viewer-top span{font-size:.79rem;color:#c3c7b8}.viewer button{color:#fff;background:none;border:1px solid #555a4f;min-width:44px;min-height:44px}.viewer-close{font-size:.85rem;padding:6px 15px;white-space:nowrap}.viewer-close span{font-size:1.4rem;margin-left:8px}.viewer-stage{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:14px;margin-top:16px}.viewer-prev,.viewer-next{font-size:2.1rem;line-height:1}.viewer-media{height:min(69dvh,750px);display:flex;justify-content:center;align-items:center;min-width:0}.viewer-media img,.viewer-media video{display:block;max-width:100%;width:auto;max-height:100%;height:auto;object-fit:contain}.viewer-media video{height:100%;width:100%}.viewer-caption{text-align:center;font-size:.87rem;margin:12px 0 0}.viewer button:disabled{opacity:.25;cursor:default}
@media(min-width:1600px){.hero-photo img{object-position:center 56%}.hero{min-height:580px}.hero-inner{padding-top:95px}}
@media(max-width:1060px){.header-inner{gap:22px}.header nav{gap:20px}.header-phone{padding-left:20px;font-size:.87rem}.brand{width:177px}.service-layout,.extras-layout{gap:36px;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr)}.hero-photo img{object-position:62% 50%}.header-inner{min-height:90px}.service-copy{top:115px}.service-section{scroll-margin-top:90px}.contact-inner{gap:35px}.footer-inner{gap:20px}.footer-inner>div{gap:15px}}
@media(max-width:800px){.shell{width:calc(100% - 36px)}.header-inner{min-height:83px;justify-content:space-between;gap:15px}.brand{width:170px}.brand img{height:67px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:2px solid var(--yellow);margin:0;padding:14px 22px;flex-direction:column;gap:0;box-shadow:0 12px 20px #00000010}.header nav.open{display:flex}.header nav a{padding:12px 0}.menu-toggle{display:flex;gap:12px;align-items:center;border:1px solid #d6d8cc;background:#fff;padding:8px 12px;font-size:.86rem;margin-left:auto}.header-phone{display:none}.hero{min-height:460px}.hero-inner{padding:53px 0}.hero-copy{max-width:455px}.hero:after{background:linear-gradient(90deg,#10160ddd,#10160d70 65%,#10160d20)}.hero h1{font-size:2rem}.hero-subline{font-size:1.2rem}.hero-photo img{object-position:58% 50%}.overview{padding:28px 0 32px}.overview-heading{display:block}.overview-heading p{margin-top:10px}.service-nav{gap:0 22px;grid-template-columns:1fr 1fr}.service-nav a{font-size:.81rem;min-height:48px}.service-layout{grid-template-columns:1fr;gap:26px}.service-copy{position:static}.service-copy p{max-width:650px}.service-list{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;font-size:.88rem}.service-section{padding:40px 0;scroll-margin-top:83px}.gallery-grid{gap:21px 17px}.media-caption{font-size:.78rem}.service-copy h2{font-size:1.7rem}.contact-link{display:none}.extras-layout{grid-template-columns:1fr;gap:17px}.extras{padding:40px 0}.fleet-heading{gap:25px}.fleet{padding:40px 0}.fleet .media-image img{aspect-ratio:3/4}.contact{padding:38px 0}.contact-inner{grid-template-columns:1fr;gap:25px}.contact-details{border-left:0;border-top:1px solid #0003;padding:22px 0 0}.contact h2{font-size:1.6rem}.phone{font-size:1.55rem}.footer-inner{flex-wrap:wrap}.footer-inner>div{margin-left:0;width:100%;justify-content:flex-start}.viewer{width:calc(100% - 16px);padding:13px 12px}.viewer-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:5px}.viewer button{min-width:36px}.viewer-close{font-size:0;padding:3px 9px}.viewer-close span{margin:0}.viewer-media{height:65dvh}}
@media(max-width:440px){body{font-size:16px}.hero{min-height:465px}.hero-inner{padding-top:40px;padding-bottom:38px}.hero h1{font-size:1.86rem}.hero .eyebrow{font-size:.73rem}.hero-copy>p:not(.hero-subline):not(.eyebrow){font-size:.85rem;max-width:260px}.hero:after{background:linear-gradient(90deg,#10160de8,#10160d8c 76%,#10160d4d)}.hero-photo img{object-position:59% 50%}.desktop-br{display:none}.service-nav{gap:0 14px}.service-nav a{font-size:.77rem}.overview h2{font-size:1.3rem}.overview p{font-size:.82rem}.service-list{grid-template-columns:1fr;font-size:.87rem}.gallery-grid{gap:18px 12px}.media-image img{aspect-ratio:1/1}.media-caption{font-size:.75rem}.video-label{bottom:6px;right:6px;padding:3px 6px;font-size:.69rem}.gallery-more summary{font-size:.8rem}.service-copy p{font-size:.92rem}.extra-list{grid-template-columns:1fr;gap:22px}.fleet-heading{grid-template-columns:1fr;gap:8px}.fleet .gallery-grid{grid-template-columns:repeat(3,1fr);gap:9px}.fleet .media-caption{display:none}.brand{width:158px}.menu-toggle{padding:7px 10px}.statement{padding:25px 0}.statement p{font-size:1.14rem}.viewer-top p{font-size:.82rem}.viewer-caption{font-size:.78rem}.viewer-media{height:61dvh}.footer-inner p{max-width:155px;font-size:.71rem}}
.route-link{font-size:.8rem;margin-top:9px}
/* Original brand and service hierarchy, with a new gallery presentation. */
@font-face{font-family:rusch;src:url('/assets/fonts/rusch/Rusch.woff') format('woff');font-display:block}
[class^="rusch-"]{font-family:rusch!important;font-style:normal;font-weight:400;line-height:1;display:inline-block;-webkit-font-smoothing:antialiased}
.rusch-Giesskanne:before{content:"\e908"}.rusch-Bagger:before{content:"\e901"}.rusch-Pflaster:before{content:"\e90d"}.rusch-Dusche:before{content:"\e903"}.rusch-Facility:before{content:"\e904"}.rusch-Paket:before{content:"\e90c"}.rusch-Schaufel:before{content:"\e911"}.rusch-Rolle:before{content:"\e90f"}.rusch-Kelle:before{content:"\e909"}
:root{--yellow:#f1c50e;--ink:#1b1b1d;--tint:#f5f8f8;--muted:#5a5e60}
.header{background:var(--yellow);border-bottom:1px solid #0000000e}.header-inner{min-height:94px}.header-phone{border-color:#0003}.header-phone span{color:#36362e;font-size:.78rem}.header nav a:hover{box-shadow:0 2px #222}.header nav{align-items:center}.service-menu{position:relative}.service-menu summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}.service-menu summary::-webkit-details-marker{display:none}.service-menu[open] summary>span{transform:rotate(180deg)}.service-dropdown{position:absolute;top:calc(100% + 25px);left:-26px;width:365px;padding:12px;background:#fff;border-radius:10px;box-shadow:0 16px 50px #0002;border:1px solid #eee}.service-dropdown a{display:flex;align-items:center;gap:14px;padding:10px 14px!important;font-size:.88rem;white-space:normal!important;border-radius:5px;line-height:1.5}.service-dropdown a i{font-size:25px;flex:0 0 31px}.service-dropdown a:hover{background:var(--tint);box-shadow:none!important}.service-dropdown a.all-services{font-size:.8rem;border-bottom:1px solid #eee;margin-bottom:8px;padding-bottom:15px!important;color:var(--muted)}
.hero-copy{max-width:555px}.hero h1{font-size:clamp(1.9rem,3.1vw,2.8rem);letter-spacing:-.025em}.hero-subline{font-size:1.22rem;margin:21px 0 14px;line-height:1.65}.hero-copy>p:not(.hero-subline):not(.eyebrow){font-size:1rem;max-width:520px;line-height:1.85}.hero .eyebrow{font-size:.88rem;letter-spacing:.015em;font-weight:700}.hero-inner{padding:64px 0 69px}.hero:after{background:linear-gradient(90deg,#111914dd,#111914b0 34%,#11191420 73%)}.button{border-radius:6px;padding:14px 22px}.hero .button{margin-top:12px}.overview{padding:60px 0 65px;border:0}.overview-heading{margin-bottom:30px}.overview h2{font-size:1.75rem}.overview p{font-size:.94rem}.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;background:var(--tint);border-radius:8px;padding:30px 25px 23px;transition:background .2s,transform .2s;min-width:0}.service-card>i{font-size:50px;margin-bottom:23px}.service-card h3{font-size:1.17rem;margin:0 0 12px;line-height:1.5;text-wrap:balance}.service-card p{font-size:.92rem;color:#585b5e;line-height:1.8;margin:0 0 20px}.service-card-link{font-size:.81rem;margin-top:auto;display:flex;align-items:center;gap:15px;padding-top:14px;border-top:1px solid #1b1b1d18;width:100%;justify-content:center}.service-card:hover{background:var(--yellow);transform:translateY(-3px)}.service-card:hover p{color:#292b28}.service-card-link>span{font-size:1.15rem}.services-index{padding-bottom:65px}.services-index>.service-cards{margin-top:35px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:.8rem;color:var(--muted);padding:28px 0 35px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.service-intro{background:var(--tint);padding-bottom:45px}.service-intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}.service-title{display:flex;gap:24px;align-items:center;margin-bottom:20px}.service-title i{font-size:53px;flex-shrink:0}.service-title h1{font-size:clamp(1.85rem,3vw,2.5rem);margin:0;line-height:1.3;text-wrap:balance}.service-intro-grid p{font-size:1rem;line-height:1.9;color:#505558;margin-bottom:19px}.service-intro .service-list{margin:0;font-size:.91rem}.service-intro .service-list li{padding:10px 0 10px 19px}.service-intro .service-list li:before{top:21px}.inline-contact{font-size:.86rem;text-decoration:none;border-bottom:1px solid #a69c70;display:inline-flex;gap:15px;padding-bottom:3px}.project-gallery{padding:48px 0 62px}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.gallery-heading .eyebrow{font-size:.76rem;color:var(--muted);margin-bottom:7px}.gallery-heading h2{font-size:1.7rem;margin:0}.gallery-total{font-size:.85rem;margin:0 0 3px;color:var(--muted);white-space:nowrap}
.media{position:relative;border-radius:9px;overflow:hidden;background:#182019;isolation:isolate}.media-image{background:#182019}.media-image img{transition:transform .45s cubic-bezier(.2,.65,.3,1),filter .3s}.media:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#081108bf);z-index:1;pointer-events:none}.media-caption{position:absolute;bottom:15px;left:18px;right:65px;color:#fff;margin:0;font-size:.84rem;line-height:1.55;z-index:2;text-shadow:0 1px 8px #0004}.media:hover .media-image img{transform:scale(1.045);filter:brightness(1.05)}.media:focus-visible{outline-offset:4px}.video-label,.zoom-label{bottom:14px;right:14px;border-radius:30px;background:#fff2;backdrop-filter:blur(12px);border:1px solid #fff4;z-index:3;font-size:.78rem;padding:5px 9px}.zoom-label{font-size:1.15rem;padding:2px 9px}.media:has(.video-label) .media-caption{right:92px}.gallery-grid{gap:14px}.gallery-area--full .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px}.gallery-area--full .media:first-child{grid-column:span 2;grid-row:span 2}.gallery-area--full .media-image{height:100%}.gallery-area--full .media-image img{height:100%;aspect-ratio:16/10;object-fit:cover}.gallery-area--full .media:first-child .media-image img{aspect-ratio:auto;min-height:380px}.gallery-area--full .media:first-child .media-caption{font-size:1rem;bottom:22px;left:24px}.gallery-area--full .gallery-grid--single{grid-template-columns:1fr;max-width:900px;margin:auto}.gallery-area--full .gallery-grid--single .media:first-child{grid-column:auto;grid-row:auto}.gallery-area--full .gallery-grid--single .media-image img{aspect-ratio:16/10;height:auto;max-height:560px;min-height:0;object-fit:contain;background:#171b17}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:first-child{grid-column:span 2;grid-row:span 1}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media-image img{aspect-ratio:16/10;min-height:0}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:last-child{grid-column:span 2}
.more-services{border-top:1px solid var(--line);padding:35px 0 43px}.more-services h2{font-size:1.15rem;margin-bottom:20px}.more-services nav{display:flex;flex-wrap:wrap;gap:10px}.more-services a{display:flex;align-items:center;gap:10px;font-size:.85rem;padding:10px 14px;background:var(--tint);border-radius:5px;text-decoration:none}.more-services a:hover{background:var(--yellow)}.more-services i{font-size:22px}.fleet .gallery-grid{gap:17px}.fleet .media-caption{font-size:.9rem}
.viewer{background:#111514;color:#f4f5f3;width:100%;height:100%;height:100dvh;max-width:100%;max-height:100%;margin:0;padding:21px 30px 18px;border:0;border-radius:0;overflow:hidden;color-scheme:dark}.viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px}.viewer::backdrop{background:#111514}.viewer-top{min-height:50px;gap:14px}.viewer-top p{font-size:1rem;line-height:1.4;margin-bottom:3px}.viewer-top #viewer-count{font-size:.79rem;color:#a4ada6}.viewer-actions{display:flex;gap:10px;flex-shrink:0}.viewer button{display:flex;align-items:center;justify-content:center;width:46px;height:46px;min-width:46px;min-height:46px;border-radius:50%;padding:0;background:#ffffff0c;border:1px solid #ffffff24;color:#fff;transition:background .18s,border-color .18s}.viewer button:hover{background:#ffffff21;border-color:#ffffff5c}.viewer button:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}.viewer button svg{flex-shrink:0}.viewer-stage{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:22px;margin:0;min-height:0}.viewer-media{position:relative;height:100%;min-height:0;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:pan-y pinch-zoom}.viewer-media img,.viewer-media video{max-width:100%;max-height:100%;height:auto;width:auto;object-fit:contain;box-shadow:0 12px 50px #0003;border-radius:4px}.viewer-media video{height:100%;width:100%;box-shadow:none}.viewer-media[aria-busy="true"]:before{content:"Aufnahme wird geladen …";position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);font-size:.85rem;color:#d0d6ce;white-space:nowrap}.viewer-media[aria-busy="true"]>img{opacity:0}.viewer-media>img{animation:reveal .2s ease}.viewer-error{position:absolute;padding:25px;text-align:center;max-width:500px;background:#111514ed;font-size:.95rem}.viewer-error a{display:block;margin-top:15px}.viewer-bottom{min-width:0;display:grid;justify-items:center;gap:12px}.viewer-caption{font-size:.87rem;line-height:1.5;margin:0;color:#e0e5df;text-align:center;max-width:800px}.viewer-thumbnails{max-width:min(850px,100%);display:flex;align-items:center;gap:9px;overflow-x:auto;overflow-y:hidden;padding:5px 4px 7px;scrollbar-width:thin;scrollbar-color:#515952 transparent;overscroll-behavior-x:contain}.viewer .viewer-thumbnails button{flex:0 0 72px;width:72px;height:56px;min-height:56px;min-width:72px;border-radius:5px;border:2px solid transparent;background:none;opacity:.5;position:relative;padding:2px;overflow:hidden}.viewer-thumbnails button img{width:100%;height:100%;object-fit:cover;border-radius:2px}.viewer .viewer-thumbnails button:hover{opacity:1}.viewer .viewer-thumbnails button[aria-current="true"]{border-color:var(--yellow);opacity:1;background:#f1c50e15}.viewer-thumbnails button span{position:absolute;bottom:2px;right:3px;font-size:.62rem;line-height:1.5;background:#000a;padding:0 3px;color:#fff}.viewer .viewer-thumbnails button:focus-visible{outline-offset:0}.viewer button[hidden]{display:none}.viewer button:disabled{opacity:.2}.viewer-close{font-size:1rem}
@keyframes reveal{from{opacity:.3;transform:scale(.993)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-inner{padding-top:80px}.hero{min-height:555px}}
@media(max-width:1060px){.header-inner{gap:20px}.header nav{gap:24px}.service-intro-grid{gap:38px}.service-card{padding:26px 20px 20px}.service-card h3{font-size:1.08rem}.gallery-area--full .media:first-child .media-image img{min-height:330px}}
@media(max-width:800px){.header-inner{min-height:83px}.header nav{background:var(--yellow);align-items:stretch;padding:12px 22px 20px}.header nav a{white-space:normal}.menu-toggle{background:transparent;border-color:#0004}.service-menu summary{padding:12px 0}.service-dropdown{position:static;width:100%;box-shadow:none;border:0;margin:2px 0 12px;padding:8px;border-radius:6px}.service-dropdown a{font-size:.86rem}.hero-inner{padding:48px 0}.hero-copy>p:not(.hero-subline):not(.eyebrow){font-size:.96rem;max-width:490px}.hero-subline{font-size:1.16rem}.overview{padding:37px 0 42px}.overview-heading{margin-bottom:25px}.service-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.service-card{padding:25px 21px 20px}.service-card p{font-size:.9rem}.service-card h3{font-size:1.14rem}.service-card>i{font-size:47px;margin-bottom:19px}.service-intro-grid{grid-template-columns:1fr;gap:25px}.service-intro .service-list{grid-template-columns:1fr 1fr;gap:0 25px}.service-title{gap:20px}.service-title h1{font-size:2rem}.service-title i{font-size:48px}.breadcrumbs{padding:23px 0 29px;font-size:.77rem;gap:7px 10px}.service-intro{padding-bottom:33px}.gallery-area--full .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.gallery-area--full .media:first-child{grid-column:span 2;grid-row:auto}.gallery-area--full .media:first-child .media-image img{aspect-ratio:16/10;min-height:0;height:auto}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:last-child{grid-column:auto}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:first-child{grid-column:auto}.gallery-heading h2{font-size:1.45rem}.gallery-heading{gap:16px}.gallery-total{font-size:.79rem}.project-gallery{padding:33px 0 43px}.media-caption{font-size:.8rem;bottom:12px;left:13px;right:50px}.media:has(.video-label) .media-caption{right:80px}.viewer{padding:16px 15px 12px}.viewer[open]{gap:10px}.viewer-stage{grid-template-columns:40px minmax(0,1fr) 40px;gap:9px}.viewer button{width:40px;height:40px;min-width:40px;min-height:40px}.viewer-media{height:100%}.viewer-top p{font-size:.9rem}.viewer-bottom{gap:9px}.viewer-caption{font-size:.83rem}.viewer-actions{gap:7px}}
@media(max-width:520px){.hero h1{font-size:1.91rem}.hero-copy>p:not(.hero-subline):not(.eyebrow){max-width:100%;font-size:.92rem}.hero .eyebrow{font-size:.75rem}.hero:after{background:linear-gradient(90deg,#111914de,#11191490)}.hero-subline{font-size:1.08rem;margin:16px 0 13px}.hero-copy .button{font-size:.81rem;gap:18px;padding:13px 17px}.hero-inner{padding:38px 0 43px}.overview-heading p{font-size:.88rem}.overview h2{font-size:1.5rem}.service-cards{grid-template-columns:1fr}.service-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:9px 19px;text-align:left;align-items:start;padding:23px 21px}.service-card>i{font-size:45px;grid-row:1 / 3;margin:3px 0 0}.service-card h3{font-size:1.06rem;margin:0;text-wrap:initial}.service-card p{font-size:.9rem;margin:0}.service-card-link{grid-column:2;justify-content:space-between;margin-top:7px;font-size:.8rem;padding-top:10px}.service-intro .service-list{grid-template-columns:1fr;font-size:.89rem}.service-title h1{font-size:1.75rem}.service-title i{font-size:43px}.service-intro-grid p{font-size:.94rem}.gallery-heading{display:block;margin-bottom:22px}.gallery-heading h2{font-size:1.4rem}.gallery-total{margin-top:9px;font-size:.82rem}.gallery-area--full .gallery-grid{gap:11px}.gallery-area--full .media-image img{aspect-ratio:4/5}.gallery-area--full .media-caption{font-size:.76rem;bottom:10px;left:11px;right:10px;padding-top:0}.gallery-area--full .media:has(.video-label) .media-caption{right:11px;bottom:42px}.gallery-area--full .media:first-child .media-caption{font-size:.89rem;bottom:16px;left:16px;right:89px}.gallery-area--full .media:first-child:has(.video-label) .media-caption{bottom:15px;right:90px}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:first-child .media-image img{aspect-ratio:4/5;height:100%}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:first-child .media-caption{font-size:.76rem;bottom:42px;left:11px;right:11px}.gallery-area--full .gallery-grid--single .media:first-child .media-image img{aspect-ratio:4/3}.video-label{bottom:10px;right:10px;padding:4px 7px;font-size:.72rem}.more-services h2{font-size:1.07rem}.more-services a{font-size:.81rem}.viewer{padding:13px 12px max(12px,env(safe-area-inset-bottom));}.viewer-stage{display:flex;justify-content:center}.viewer-media{width:100%;height:100%;padding-bottom:55px}.viewer-media img,.viewer-media video{border-radius:2px}.viewer-prev,.viewer-next{position:absolute;bottom:0;z-index:2}.viewer-prev{left:calc(50% - 51px)}.viewer-next{right:calc(50% - 51px)}.viewer-top p{font-size:.85rem;max-width:235px}.viewer-top #viewer-count{font-size:.74rem}.viewer .viewer-thumbnails button{flex-basis:59px;width:59px;min-width:59px;height:49px;min-height:49px}.viewer-thumbnails{gap:6px;padding-bottom:4px}.viewer-caption{font-size:.81rem}.viewer-top{min-height:48px}.viewer-actions{gap:5px}.viewer-actions button{width:37px;min-width:37px;height:37px;min-height:37px}.viewer-bottom{gap:7px}}
@media(max-height:540px) and (min-width:521px){.viewer{padding:10px 18px}.viewer[open]{gap:6px}.viewer-top{min-height:35px}.viewer-thumbnails{display:none}.viewer-caption{font-size:.8rem}.viewer-top p{font-size:.85rem}.viewer-actions button{height:35px;min-height:35px;width:35px;min-width:35px}}
.viewer{background:rgba(18,28,22,.4)}.viewer::backdrop{background:rgba(16,24,19,.28);backdrop-filter:blur(20px) brightness(.8) saturate(.75);-webkit-backdrop-filter:blur(20px) brightness(.8) saturate(.75)}.viewer-top p,.viewer-caption{text-shadow:0 1px 8px #14231866}.viewer-top #viewer-count{color:#dce2dc}.viewer button{background:#20372c38;border-color:#ffffff47;backdrop-filter:blur(10px)}.viewer button:hover{background:#ffffff29}.viewer .viewer-thumbnails button{background:#15271b24}.viewer-thumbnails{scrollbar-color:#bcc6bd77 transparent}.viewer-media img{box-shadow:0 18px 65px #0b1b1352}
/* Keep the recovered portrait and landscape shots in their own proportions. */
.gallery-area--full .gallery-grid{display:block;columns:3;column-gap:18px}.gallery-area--full .media{break-inside:avoid;margin:0 0 18px;min-height:0}.gallery-area--full .media-image{height:auto}.gallery-area--full .media-image img,.gallery-area--full .media:first-child .media-image img,.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media-image img{width:100%;height:auto;min-height:0;aspect-ratio:auto;object-fit:contain}.gallery-area--full .media:first-child .media-caption{font-size:.86rem;bottom:15px;left:18px}.gallery-area--full .gallery-grid--single{columns:1;max-width:850px}.gallery-area--full .gallery-grid--single .media:first-child .media-image img{max-height:600px;aspect-ratio:auto;object-fit:contain}.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child){columns:2}
@media(max-width:800px){.header nav.open{max-height:calc(100dvh - 83px);overflow-y:auto}}
@media(max-width:800px){.gallery-area--full .gallery-grid{columns:2;column-gap:14px}.gallery-area--full .media{margin-bottom:14px}.gallery-area--full .gallery-grid--single{columns:1}}
@media(max-width:520px){.gallery-area--full .gallery-grid{column-gap:11px}.gallery-area--full .media{margin-bottom:11px}.gallery-area--full .media:first-child .media-caption{font-size:.76rem;bottom:10px;left:11px;right:11px}.gallery-area--full .media:first-child:has(.video-label) .media-caption{bottom:42px;right:11px}.gallery-area--full .gallery-grid--single .media:first-child .media-caption{bottom:15px;right:90px}}
.gallery-area--full .gallery-grid:has(>.media:nth-child(4):last-child) .media:first-child .media-image img{height:auto;aspect-ratio:auto;min-height:0}
.service-intro-grid>div,.service-intro-grid>.service-list,.service-title h1{min-width:0}
@media(max-width:380px){.service-title{display:block}.service-title i{margin-bottom:16px}.service-title h1{font-size:1.65rem}}
/* Hero and navigation matched to the recovered historical entry screenshot. */
.rusch-R:before{content:"\e910"}.rusch-Kontakt:before{content:"\e912"}.rusch-AGB:before{content:"\e900"}
.header-inner{gap:37px;min-height:94px;justify-content:flex-start}.brand{width:175px}.brand img{height:67px}.header nav{margin-left:0;gap:38px;font-size:1rem;font-weight:600;text-transform:uppercase}.header nav>a{display:flex;align-items:center;gap:10px;box-shadow:none!important}.header nav>a>i{font-size:25px}.header nav>a:hover,.service-menu>summary:hover{color:#564c18}.service-menu>summary{gap:8px}.service-dropdown{width:365px;top:calc(100% + 27px);text-transform:none;font-weight:400}.service-dropdown i{font-size:25px}.hero{min-height:100vh;min-height:100svh}.hero-inner{padding-top:clamp(65px,11svh,120px);padding-bottom:95px}.hero-copy{max-width:690px}.hero .eyebrow{font-size:clamp(1rem,1.5vw,1.55rem);font-weight:700;letter-spacing:-.025em;line-height:1.35;margin-bottom:8px}.hero h1{font-size:clamp(2rem,3.35vw,3.35rem);font-weight:600;letter-spacing:-.025em;margin-bottom:46px}.hero-copy>p.hero-description{font-size:clamp(1rem,1.4vw,1.4rem);line-height:1.62;max-width:670px;margin:0 0 50px;color:#fff}.hero .button{font-size:clamp(.95rem,1.18vw,1.2rem);font-weight:700;border-radius:100px;gap:12px;padding:19px 26px;margin:19px 0 0 120px}.hero-photo img{object-position:center center}.hero:after{background:linear-gradient(225deg,#0000 20%,#000000b5 82%)}
@media(max-width:1060px){.header-inner{gap:29px}.header nav{gap:25px;font-size:.9rem}.brand{width:165px}.hero-copy{max-width:640px}.hero .button{margin-left:80px}}
@media(max-width:800px){.header-inner{min-height:83px;gap:15px;justify-content:space-between}.brand{width:158px}.header nav{margin:0;gap:0;font-size:.92rem}.header nav>a{gap:14px}.header nav>a i{font-size:25px}.service-dropdown{width:100%}.hero-inner{padding-top:65px;padding-bottom:65px}.hero-copy{max-width:610px}.hero h1{font-size:2.3rem;margin-bottom:29px}.hero-copy>p.hero-description{font-size:1.1rem;line-height:1.75;margin-bottom:31px}.hero .button{font-size:.94rem;padding:16px 22px;margin:13px 0 0 0}.hero .eyebrow{font-size:1.08rem}.hero:after{background:linear-gradient(110deg,#0009,#0007 80%,#0004)}}
@media(max-width:440px){.hero-inner{padding-top:clamp(43px,8svh,74px);padding-bottom:55px}.hero h1{font-size:2rem;line-height:1.35;margin-bottom:27px}.hero .eyebrow{font-size:1rem;letter-spacing:-.02em}.hero-copy>p.hero-description{font-size:1rem;line-height:1.75}.hero .button{font-size:.83rem;padding:16px 18px;gap:8px}.hero .button svg{width:22px;height:22px;flex-shrink:0}.hero-photo img{object-position:58% center}}
.header nav{font-weight:400}.hero .hero-copy>p.hero-description{font-size:clamp(1rem,1.4vw,1.4rem);line-height:1.62;max-width:670px}
@media(max-width:800px){.hero .hero-copy>p.hero-description{font-size:1.1rem;line-height:1.75}}
@media(max-width:440px){.hero .hero-copy>p.hero-description{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Stable, centered menu indicator and a full-height contact / consent layout. */
.service-menu .menu-chevron{display:block;flex:0 0 20px;transform:rotate(0);transform-origin:50% 50%;transition:transform .18s ease-out}
.service-menu[open] .menu-chevron{transform:rotate(180deg)}
.contact{padding:0;min-height:calc(100svh - 95px);display:grid;scroll-margin-top:95px}
.contact-inner{width:100%;min-height:inherit;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:0;align-items:stretch}
.contact-copy{align-self:center;padding:65px 60px 65px max(32px,calc((100vw - var(--shell))/2));min-width:0}
.contact h1,.contact h2{font-size:clamp(1.85rem,2.5vw,2.6rem);line-height:1.35;max-width:480px;margin-bottom:24px;text-wrap:balance}
.contact .contact-copy>p{font-size:1rem;line-height:1.9;max-width:470px}
.contact .contact-copy>.eyebrow{font-size:.8rem;letter-spacing:.07em;margin-bottom:20px}
.contact-details{border-left:0;border-top:1px solid #0003;padding:28px 0 0;margin-top:34px}
.contact .phone{font-size:clamp(1.7rem,2.4vw,2.2rem);line-height:1.5}
.contact .email{font-size:1.05rem;margin:10px 0 27px;max-width:100%;overflow-wrap:anywhere}
.contact address{font-size:1.03rem;line-height:1.8}
.contact .route-link{font-size:.88rem;margin-top:24px;line-height:1.7}
.map-panel{position:relative;isolation:isolate;display:grid;min-width:0;min-height:560px;overflow:hidden;overflow:clip;background:#e1e5d9}
.map-panel:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(32deg,transparent 38%,#f8f7ee 38% 40%,transparent 40% 72%,#f8f7ee 72% 74%,transparent 74%),linear-gradient(118deg,transparent 32%,#f8f7ee 32% 35%,transparent 35% 75%,#f8f7ee 75% 77%,transparent 77%),linear-gradient(70deg,#cad9c3aa,transparent 65%);filter:blur(3px)}
.map-cover{display:grid;place-items:center;padding:44px 36px}
.map-consent-card{width:100%;max-width:420px;padding:34px 30px;background:#ffffffed;border:1px solid #fff;border-radius:12px;box-shadow:0 20px 65px #39443315;text-align:center}
.map-pin{display:block;margin:0 auto 22px;color:#6d6014}
.contact .map-consent-card>.eyebrow{font-size:.73rem;letter-spacing:.07em;margin:0 0 10px}
.map-consent-card h3{font-size:1.2rem;line-height:1.5;margin:0 0 17px;text-wrap:balance}
.contact .map-consent-card>p:not(.eyebrow){font-size:.83rem;line-height:1.85;margin-bottom:24px;color:#535a4e}
.map-consent-card .button{width:100%;justify-content:center;font-size:.82rem;line-height:1.6;padding:15px 12px;border:0;border-radius:5px}
.map-privacy{display:inline-block;font-size:.76rem;margin-top:17px;color:#555b50}
.map-frame{position:absolute;inset:0;border:0;width:100%;height:100%}
.map-controls{position:absolute;z-index:2;right:16px;bottom:22px}
.map-controls button{border:1px solid #d5d9cc;border-radius:6px;background:#fff;color:#282d24;padding:12px 17px;font-size:.8rem;box-shadow:0 3px 15px #0002}
.map-cover[hidden],.map-controls[hidden],.map-consent-card [hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1060px){.contact-copy{padding:48px 32px}.map-cover{padding:32px 22px}.map-consent-card{padding:28px 22px}}
@media(max-width:800px){.contact{min-height:calc(100svh - 84px);scroll-margin-top:84px}.contact-inner{grid-template-columns:1fr}.contact-copy{padding:48px 24px}.contact h1,.contact h2{max-width:460px}.contact-details{margin-top:28px;padding-top:24px}.map-panel{min-height:520px}.map-cover{padding:36px 24px}.map-consent-card{max-width:450px}.map-controls{right:12px;bottom:18px}}
@media(max-width:440px){.contact-copy{padding:42px 22px}.contact h1,.contact h2{font-size:1.8rem}.contact .phone{font-size:1.75rem}.contact .email{font-size:.98rem}.contact .contact-copy>p{font-size:.94rem}.map-cover{padding:26px 18px}.map-consent-card{padding:28px 23px}.map-consent-card .button{font-size:.77rem}}
