/* V3 bleibt die Grundlage. Gezielte Rundungen und gemeinsame Unterseiten. */
.button{border:0;border-radius:var(--pill)}.button svg{flex-shrink:0}.button:disabled{cursor:wait;opacity:.7}
.card-face,.project-card,.project-image,.person-photo,.customer-image,.offer-photo>img,.floating-card,.product>div,.process-card,.news-image,.service-row-image,.contact-form{border-radius:var(--radius)}
.project-card{overflow:hidden}.project-image{border-bottom-left-radius:0;border-bottom-right-radius:0}.company figure img,.about-story figure>img{border-radius:var(--radius)}
.hero-shade{background:linear-gradient(180deg,rgba(35,40,43,.8) 0px,rgba(35,40,43,.8) 124px,rgba(35,40,43,.08) 45%,rgba(35,40,43,.75) 75%,rgba(35,40,43,.75) 100%)}
.hero-copy{bottom:66px}.hero-context{margin:24px 0 0;font-size:18px;line-height:1.6;max-width:650px;color:#fff}
.header-inner{gap:28px}.desktop-nav{justify-content:center;gap:24px}.desktop-nav a{font-size:15px;white-space:nowrap}.site-header .brand{width:180px}.site-header .button{padding-inline:28px}
.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}.site-header,.header-inner,.mobile-menu{border-radius:0}
/* 04.11.2026: diagonale Zierflächen entfernt, sie erzeugten zusätzliche Grautöne. */.dark-pattern:before,.dark-pattern:after{display:none}
.stats strong{color:var(--brand)}.service-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:48px}.service-card{width:calc((100% - 96px)/3)}
.page-hero{position:relative;isolation:isolate;min-height:560px;padding:160px 0 62px;background:var(--navy);color:#fff;display:flex;align-items:flex-end;overflow:hidden}
.page-hero-image{position:absolute;inset:0;z-index:-2}.page-hero-image img{height:100%;object-fit:cover}.page-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(35,40,43,.88),rgba(35,40,43,.52)),linear-gradient(180deg,rgba(35,40,43,.52) 0,transparent 220px)}
.page-hero .wrap{width:calc(100% - 80px)}.page-hero h1{max-width:1080px}.page-hero>.wrap>p{font-size:20px;max-width:740px;line-height:1.6;margin:25px 0 0}.page-hero--plain{min-height:420px}.page-hero--plain .page-hero-shade{background:none}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;line-height:1.6;margin-bottom:40px;color:#fff}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px;min-height:24px}
.inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px}.inline-actions .button{padding-inline:30px}.offer-photo>img{object-position:center 55%}
.simple-list{display:grid;gap:9px}.simple-list li{padding-left:20px;position:relative;line-height:1.7}.simple-list li:before{content:"";position:absolute;left:0;top:11px;width:5px;height:5px;background:var(--brand);border-radius:50%}
.service-list{padding-top:85px}.service-list .intro-copy{margin-bottom:85px}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding:65px 0;border-top:1px solid var(--line);scroll-margin-top:110px}
.service-row-image{overflow:hidden;background:var(--wash);aspect-ratio:1.4}.service-row-image img{height:100%;object-fit:cover}.service-row-copy>.line-icon{width:62px;height:62px;margin-bottom:18px}.service-row-copy h2{font-size:36px;margin-bottom:24px}.service-row-copy>p{color:var(--body)}.service-row-copy .text-link{margin-top:22px}
.service-row:nth-of-type(even) .service-row-image{order:2}.service-row:nth-of-type(even) .service-row-copy{order:1}
.grill-models{padding:90px 0 5px;scroll-margin-top:110px}.section-intro{color:var(--body);max-width:820px;margin-bottom:48px}.grill-models .product-grid{gap:60px 48px}.grill-models .product>div{height:auto;aspect-ratio:1.6}
.product img,.product:first-child img{object-fit:cover;object-position:center}.product-variant{font-size:14px!important;margin:23px 0 8px!important;color:var(--body)}.product h3{margin:0 0 18px}.grill-actions{margin-top:50px}
.page-dienstleistungen .contact-band,.page-referenzen .contact-band{margin-top:90px;margin-bottom:110px}
.page-dienstleistungen .process{margin-top:110px;scroll-margin-top:110px}
.about-story{padding:90px 0 0}.about-story h2{margin-bottom:32px}.about-story figcaption{font-size:13px;color:var(--body);margin-top:14px;line-height:1.6}.page-unternehmen .people{padding-top:85px}
.history{padding:85px 0;background:var(--wash)}.timeline{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;padding:0;margin:0}.timeline li{border-top:2px solid var(--blue-light);padding-top:30px}.timeline strong{font-size:36px;font-weight:300}.timeline p{color:var(--body);margin-top:18px}
.news{padding:100px 0 0}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.news-image{display:block;overflow:hidden;aspect-ratio:1.55;margin-bottom:25px}.news-image img{height:100%;object-fit:cover;transition:transform .5s var(--ease)}.news-image:hover img{transform:scale(1.04)}.news-card time{font-size:14px;color:var(--body)}.news-card h3{font-size:24px;line-height:1.4;margin:15px 0 20px}.news-card>p{color:var(--body)}.page-unternehmen .contact-band{margin-top:0;margin-bottom:100px}
.gallery{padding:85px 0 0}.gallery .intro-copy{margin-bottom:60px}.gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:42px}.filter-list{display:flex;flex-wrap:wrap;gap:12px}.filter-button{border:1px solid var(--grey);border-radius:var(--pill);padding:11px 20px;background:#fff;color:var(--ink);font-size:15px;line-height:1.5;min-height:48px;transition:background .2s,color .2s}.filter-button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff}.filter-button:hover{border-color:var(--brand)}#gallery-count{font-size:14px;margin:0;white-space:nowrap;color:var(--body)}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px}.gallery-grid .project-image{aspect-ratio:1.5}.gallery-grid .project-copy h3{min-height:0}.gallery-grid .project-card{box-shadow:0 5px 25px #0000000d;border:1px solid var(--line)}
.lightbox{border:0;border-radius:var(--radius);padding:44px 32px 24px;width:min(1280px,calc(100% - 60px));max-height:94svh;overflow:auto;color:var(--ink)}.lightbox::backdrop{background:#15191deb}.lightbox figure>img{width:100%;height:64svh;object-fit:contain}.lightbox figcaption{padding-top:18px;text-align:center}.lightbox h2{font-size:24px;line-height:1.5}.lightbox figcaption p{font-size:15px;margin:5px 0 0;color:var(--body)}.lightbox-close{position:absolute;right:10px;top:7px;width:44px;height:44px;background:#fff;color:var(--ink);border:0;border-radius:50%;font-size:32px;line-height:1}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:20px}.lightbox-controls button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--wash);font-size:24px}.lightbox-open{overflow:hidden}
.jobs-list{padding:90px 0 0}.job-detail{padding:0 0 80px;scroll-margin-top:110px}.job-detail+.job-detail{padding-top:80px;border-top:1px solid var(--line)}.job-heading h2{margin-bottom:16px}.job-heading>p{font-size:22px;color:var(--body);margin-bottom:26px}.job-intro{max-width:820px;color:var(--body);font-size:18px}.job-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin:45px 0}.job-columns h3{font-size:24px;margin-bottom:24px}.job-contact{padding:90px 0}.job-contact h2{margin-bottom:25px}.job-contact .company-grid{gap:100px}.job-contact p{color:#fff}.job-contact .button{margin-top:10px}.job-person{display:flex;align-items:center;gap:30px}.job-person>img{width:180px;border-radius:var(--radius);aspect-ratio:3/4;object-fit:cover}.job-person h3{font-size:24px;margin-bottom:18px}.job-person a{text-decoration:underline;text-underline-offset:5px;font-size:17px;overflow-wrap:anywhere}
.contact-section{padding:95px 0;scroll-margin-top:110px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}.contact-info h2{margin-bottom:35px}.contact-phone{display:block;font-size:30px;font-weight:300;line-height:1.5;margin-bottom:15px}.contact-email{display:inline-block;font-size:18px;font-weight:600;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere;margin-bottom:30px}.contact-info address{font-style:normal;line-height:1.9;margin-bottom:30px}.contact-info>p{color:var(--body)}.contact-person{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.contact-person h3{font-size:24px;margin-bottom:20px}.contact-person p{margin-bottom:10px}.contact-person>a{text-decoration:underline;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center}
.contact-form{background:var(--wash);padding:42px 40px;border:1px solid var(--line);min-width:0}.form-heading h2{font-size:36px;margin-bottom:20px}.form-heading p{color:var(--body);font-size:16px;margin-bottom:35px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-fields label{font-size:16px;font-weight:600;display:flex;flex-direction:column;gap:10px}.form-fields .optional{font-weight:400;color:var(--body);font-size:14px}.form-fields label[for=phone]{grid-column:1/-1}.field-wide{grid-column:1/-1}.form-fields input,.form-fields textarea{font:400 16px/1.6 var(--font);border:1px solid var(--grey);border-radius:var(--radius-small);padding:14px 16px;width:100%;min-width:0;color:var(--ink);background:#fff;min-height:56px}.form-fields textarea{resize:vertical;min-height:170px}.form-fields input:focus,.form-fields textarea:focus{outline:2px solid var(--brand);outline-offset:2px}.form-fields textarea::placeholder{color:var(--body);opacity:1}.privacy-check{display:flex;align-items:flex-start;gap:13px;font-size:14px;line-height:1.7;margin:28px 0 0;color:var(--body)}.privacy-check input{width:20px;height:20px;flex-shrink:0;accent-color:var(--brand);margin:3px 0 0}.privacy-check a{text-decoration:underline;text-underline-offset:3px}.form-required{font-size:13px;color:var(--body);margin:18px 0 24px}.form-feedback{padding:18px 20px;background:#fff;border:1px solid var(--brand);border-radius:var(--radius-small);margin-top:25px;line-height:1.7;font-size:15px;overflow-wrap:anywhere}.form-feedback.is-success{border-left:4px solid var(--brand)}.form-feedback.is-error{border-left:4px solid var(--ink)}.form-note{font-size:14px;margin-top:20px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.legal-content{padding:80px 0 100px}.legal-content>div{max-width:860px}.legal-content h2{font-size:30px;margin:45px 0 22px}.legal-content h2:first-child{margin-top:0}.legal-content address{font-style:normal;margin-bottom:22px}.legal-content a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-cta{display:inline-flex;align-items:center;gap:10px;text-decoration:underline;text-underline-offset:5px;margin-top:20px;min-height:44px;font-size:15px}.footer-cta svg{width:18px;height:18px}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:25px}.footer-bottom{flex-wrap:wrap}.nojs-nav{display:flex;flex-wrap:wrap;gap:18px;padding:130px 40px 25px;background:var(--navy);color:#fff}.nojs-nav a{text-decoration:underline;min-height:44px;display:flex;align-items:center}
@media(max-width:1199px){.service-grid{gap:28px}.service-card{width:calc((100% - 56px)/3)}.contact-layout{gap:55px}.service-row{gap:55px}.contact-form{padding:35px 28px}.job-contact .company-grid{gap:45px}}
@media(max-width:1080px){.desktop-nav{display:none}.menu-toggle:not([hidden]){display:block}.header-inner>.button{margin-left:auto}.header-inner .brand{width:190px}.site-header{height:110px}.site-header.is-fixed{height:90px}}
@media(max-width:980px){.service-grid{gap:24px}.service-card{width:calc((100% - 24px)/2)}.service-row{gap:40px}.news-grid{gap:26px}.timeline{gap:28px}.timeline strong{font-size:30px}.gallery-tools{align-items:flex-start;flex-direction:column;gap:20px}.job-columns{gap:28px}.contact-layout{grid-template-columns:1fr;gap:55px}.contact-info{max-width:700px}.job-contact .company-grid{grid-template-columns:1fr}.job-person{max-width:600px}.service-row-copy h2{font-size:30px}}
@media(max-width:767px){.hero-copy{bottom:60px}.hero-context{font-size:16px;max-width:300px;line-height:1.6;margin-top:20px}.hero-shade{background:linear-gradient(180deg,rgba(35,40,43,.8) 0px,rgba(35,40,43,.8) 124px,rgba(35,40,43,.15) 30%,rgba(35,40,43,.75) 48%,rgba(35,40,43,.75) 100%)}.site-header .brand{width:200px}.site-header{height:108px}.site-header.is-fixed{height:82px}.header-inner{gap:14px}.header-inner>.button{display:none}.service-card{width:100%}.page-hero{min-height:510px;padding:145px 0 50px}.page-hero .wrap{width:calc(100% - 60px)}.page-hero h1{font-size:42px;line-height:1.12;overflow-wrap:break-word}.page-hero>.wrap>p{font-size:17px;margin-top:22px}.page-hero--plain{min-height:340px}.breadcrumbs{font-size:13px;margin-bottom:30px}.page-hero-shade{background:linear-gradient(90deg,rgba(35,40,43,.85),rgba(35,40,43,.62))}
.service-list{padding-top:60px}.service-list .intro-copy{margin-bottom:55px}.service-row{grid-template-columns:1fr;gap:28px;padding:42px 0}.service-row:nth-of-type(even) .service-row-image,.service-row:nth-of-type(even) .service-row-copy{order:initial}.service-row-copy h2{font-size:30px}.service-row-copy>.line-icon{width:55px;height:55px}.service-row-image{aspect-ratio:1.45}.grill-models{padding-top:65px}.grill-models .product-grid{gap:42px}.grill-models .product>div{aspect-ratio:1.45}.grill-actions .button{font-size:15px;padding:17px 24px;line-height:1.6;text-align:center}.page-dienstleistungen .process{margin-top:75px}.inline-actions{gap:22px}.inline-actions .button{padding:18px 28px;min-height:60px}.offer-photo>img{aspect-ratio:1.1}.floating-card{border-radius:var(--radius-small)}
.about-story{padding-top:60px}.about-story h2{font-size:34px}.page-unternehmen .people{padding-top:65px}.history{padding:65px 0}.timeline{grid-template-columns:1fr 1fr;gap:35px 25px}.timeline strong{font-size:32px}.timeline p{font-size:15px}.news{padding-top:65px}.news-grid{grid-template-columns:1fr;gap:45px}.news-card h3{font-size:25px}.page-unternehmen .contact-band{margin-bottom:75px}
.gallery{padding-top:60px}.gallery .intro-copy{margin-bottom:40px}.filter-list{gap:10px}.filter-button{font-size:14px;padding:10px 17px;min-height:46px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-grid .project-image{aspect-ratio:1.35}.page-referenzen .contact-band,.page-dienstleistungen .contact-band{margin-top:65px;margin-bottom:75px}.lightbox{width:calc(100% - 24px);padding:48px 14px 20px}.lightbox figure>img{height:48svh}.lightbox h2{font-size:20px}.lightbox figcaption p{font-size:14px}
.jobs-list{padding-top:60px}.job-detail{padding-bottom:60px}.job-detail+.job-detail{padding-top:60px}.job-heading h2{font-size:34px}.job-heading>p{font-size:19px}.job-intro{font-size:16px}.job-columns{grid-template-columns:1fr;gap:32px;margin:35px 0}.job-columns h3{font-size:24px;margin-bottom:18px}.job-contact{padding:65px 0}.job-contact h2{font-size:34px}.job-person{align-items:flex-start;gap:22px}.job-person>img{width:115px}.job-person h3{font-size:23px}.job-person a{font-size:14px}
.contact-section{padding:60px 0}.contact-info h2{font-size:34px}.contact-phone{font-size:28px}.contact-email{font-size:16px}.contact-form{padding:30px 22px}.form-heading h2{font-size:30px}.form-fields{grid-template-columns:1fr;gap:22px}.form-fields label[for=phone],.field-wide{grid-column:auto}.privacy-check{font-size:13px}.legal-content{padding:55px 0 70px}.legal-content h2{font-size:26px;line-height:1.4}.footer-bottom nav{gap:20px}.nojs-nav{padding-inline:30px}}
@media(max-width:360px){.page-hero .wrap{width:calc(100% - 44px)}.page-hero h1{font-size:36px}.page-hero{min-height:490px}.page-hero>.wrap>p{font-size:16px}.hero-context{font-size:15px}.contact-form{padding:27px 18px}.timeline{grid-template-columns:1fr}.job-person{gap:18px}.job-person>img{width:96px}.job-heading h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.hero-line>span{animation:none}.news-image img,.filter-button{transition:none}.project-image img{transition:none}}

/* Korrekturen 10.10.2026: klare Einstiege und eine reine Bildsammlung. */
body:not(.page-index) .site-header{background:var(--navy)}
.page-hero{min-height:0;padding:204px 0 72px;background:var(--wash);color:var(--ink);display:block;overflow:visible}
.page-hero>.wrap>.page-label{font-size:14px;font-weight:600;line-height:1.5;letter-spacing:.09em;text-transform:uppercase;margin:0 0 24px;color:var(--body)}
.page-hero h1{max-width:1000px;font-size:60px;line-height:1.12}
.page-hero>.wrap>.page-intro{font-size:22px;font-weight:300;line-height:1.65;max-width:850px;margin:28px 0 0}
.page-hero .hero-line{padding-bottom:3px}
.project-copy{display:flex;justify-content:space-between;align-items:center;gap:20px}
.project-copy h3{min-height:0;font-size:23px}
.project-copy>svg{width:22px;height:22px;flex-shrink:0}
.gallery{padding:64px 0 90px}
.gallery-grid{display:block;columns:3;column-gap:30px}
.gallery-grid .gallery-card{display:block;break-inside:avoid;margin:0 0 34px;background:transparent;box-shadow:none;border:0;border-radius:0;overflow:visible}
.gallery-grid .project-image{aspect-ratio:auto;border-radius:var(--radius);overflow:hidden}
.gallery-grid .project-image img{width:100%;height:auto;object-fit:contain}
.gallery-grid .project-copy{padding:16px 2px 0}
.gallery-grid .project-copy h3{font-size:18px;font-weight:400;line-height:1.5}
.gallery-grid .project-copy>svg{width:18px;height:18px}
.lightbox figcaption p:empty{display:none}
.reviews{padding:90px 0;background:var(--wash)}
.page-index .reviews{margin-top:85px}
.reviews-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:48px}
.reviews-heading h2{font-size:42px;margin-bottom:18px}
.reviews-heading p{margin:0;color:var(--body)}
.reviews-heading>.text-link{flex-shrink:0;font-size:15px}
.review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.review{padding-top:24px;border-top:1px solid var(--grey);display:flex;flex-direction:column}
.review-stars{color:var(--brand);font-size:21px;line-height:1;letter-spacing:4px;margin-bottom:26px}
.review blockquote{margin:0 0 28px;flex:1}
.review blockquote p{font-size:17px;line-height:1.85;margin:0;white-space:pre-line}
.review figcaption{display:flex;flex-direction:column;gap:5px;line-height:1.6}
.review figcaption strong{font-size:15px;font-weight:600}
.review figcaption>span{font-size:13px;color:var(--body)}
.grill-logo{width:68px;height:88px;object-fit:contain;flex-shrink:0}
.grill-brand{display:flex;align-items:center;gap:23px;margin-bottom:28px}
.grill-brand>p{margin:0;color:var(--body);font-size:15px;line-height:1.7}
img.line-icon{object-fit:contain}
.card-face img.line-icon{height:96px}
.service-row-copy>img.line-icon{height:82px;width:64px}
.offer{scroll-margin-top:0}
.offer-grid{align-items:center}
.offer-grid h2{font-size:44px}
.floating-card strong{font-size:38px;line-height:1.5;font-weight:400}
.floating-card p{font-size:18px}









.page-index .hero-copy{bottom:76px}
.page-index .hero-copy h1{max-width:calc(100% - 295px);font-size:clamp(42px,4.15vw,60px)}

.opening-hours{margin:30px 0}.opening-hours h3{font-size:20px;font-weight:400;margin-bottom:12px}.opening-hours p{line-height:1.8}.opening-hours strong{font-weight:600}
.footer-hours{font-size:15px;margin:20px 0 0;color:#fff}
.timeline{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px}
.jobs-list{padding:65px 0 90px}
.job-detail,.job-detail+.job-detail{padding:0;border:0;border-top:1px solid var(--grey);scroll-margin-top:110px}
.job-detail:last-child{border-bottom:1px solid var(--grey)}
.job-detail summary{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:30px 0;cursor:pointer;list-style:none}
.job-detail summary::-webkit-details-marker{display:none}
.job-heading{display:flex;flex-direction:column;gap:7px}
.job-title{font-size:28px;font-weight:600;line-height:1.4}
.job-subtitle{font-size:20px;line-height:1.6;color:var(--body)}
.job-detail summary>svg{width:44px;height:44px;flex-shrink:0;transition:transform .25s var(--ease)}
.job-detail[open] summary>svg{transform:rotate(90deg)}
.job-detail summary:hover{color:var(--brand)}
.job-body{padding:12px 0 50px}
.job-columns h3{font-size:21px}
@media(max-width:1199px){.review-grid{grid-template-columns:1fr 1fr;gap:40px}.reviews-heading{align-items:flex-start;flex-direction:column;gap:20px}.gallery-grid{columns:2}.page-index .hero-copy h1{max-width:calc(100% - 245px)}.customer-types{grid-template-columns:1fr}.customer-types li{font-size:21px}}
@media(max-width:980px){.page-hero{padding-top:170px}.page-hero h1{font-size:52px}.page-hero>.wrap>.page-intro{font-size:20px}.timeline{grid-template-columns:repeat(3,minmax(0,1fr))}.page-index .hero-copy{bottom:176px}.page-index .hero-copy h1{max-width:100%;font-size:52px}.offer-grid h2{font-size:36px}}
@media(max-width:767px){.page-hero{min-height:0;padding:154px 0 48px}.page-hero h1{font-size:38px;line-height:1.16}.page-hero>.wrap>.page-label{font-size:13px;margin-bottom:18px}.page-hero>.wrap>.page-intro{font-size:18px;line-height:1.65;margin-top:22px}.gallery{padding:38px 0 58px}.gallery-grid{columns:1}.gallery-grid .gallery-card{margin-bottom:32px}.gallery-grid .project-copy h3{font-size:18px}.reviews{padding:60px 0}.page-index .reviews{margin-top:65px}.reviews-heading{margin-bottom:35px}.reviews-heading h2{font-size:34px}.reviews-heading p{font-size:15px}.review-grid{grid-template-columns:1fr;gap:34px}.review blockquote{margin-bottom:20px}.review-stars{margin-bottom:18px}.grill-brand{gap:18px;margin-bottom:24px}.grill-brand>p{font-size:14px}.grill-logo{width:58px;height:76px}.page-index .hero-copy{bottom:158px}.page-index .hero-copy h1{font-size:42px}.offer-grid h2{font-size:34px}.floating-card p{font-size:16px}.timeline{grid-template-columns:1fr 1fr}.jobs-list{padding:36px 0 60px}.job-detail summary{padding:25px 0;gap:20px}.job-title{font-size:23px}.job-subtitle{font-size:17px}.job-detail summary>svg{width:32px;height:32px}.job-body{padding:10px 0 35px}.job-columns h3{font-size:22px}}
@media(max-width:360px){.page-hero h1{font-size:33px}.page-index .hero-copy h1{font-size:36px}.job-title{font-size:21px}.job-subtitle{font-size:15px}.job-detail summary{gap:12px}.timeline{grid-template-columns:1fr}.page-hero>.wrap>.page-intro{font-size:17px}}

.page-hero .hero-line>span{animation:none}

.footer-grill-logo{width:22px;height:29px;object-fit:contain;flex-shrink:0}

/* Gemeinsame Kanten 12.10.2026: Logo, Seitentitel und Inhalt auf allen Seiten. */
.wrap,.header-inner,.page-hero .wrap{width:calc(100% - 2 * var(--page-gutter));max-width:var(--container)}
.mobile-menu,.nojs-nav{padding-inline:max(var(--page-gutter),calc((100% - var(--container)) / 2))}
@media(max-width:767px){:root{--page-gutter:30px}}
@media(max-width:360px){:root{--page-gutter:25px}}

/* Feinschliff 10.10.2026: klare Hero-Hierarchie und ruhiger Produktzugang. */
.page-index .hero{display:flex;align-items:center;height:100svh;min-height:760px;max-height:1100px;padding:124px 0 64px}
.page-index .hero-shade{background:linear-gradient(180deg,#202528b3 0,#20252880 124px,transparent 42%),linear-gradient(90deg,#202528d9 0,#202528b3 47%,#20252826 100%)}
.page-index .hero-copy{position:relative;bottom:auto}
.page-index .hero-copy h1{max-width:1000px;font-size:clamp(50px,4.8vw,70px);font-weight:650;line-height:1.12;letter-spacing:-.045em;text-shadow:none}
.page-index .hero-line{padding-bottom:5px}
.hero-services{font-size:clamp(20px,2.1vw,28px);line-height:1.45;margin:22px 0 0;text-wrap:pretty}
.page-index .hero-context{max-width:615px;font-size:18px;font-weight:400;line-height:1.75;margin:10px 0 0;text-wrap:pretty}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:30px;margin-top:32px}
.hero-actions .button{min-height:58px;padding:16px 27px}
.hero-actions .text-link{color:#fff;font-size:15px}
.hero-actions a:focus-visible{outline-color:var(--blue-light)}







.reviews-heading h2{margin-bottom:0}
.person-photo--marco{position:relative}
.person-photo--marco img{object-position:center 0%;transform:scale(1.48);transform-origin:50% 24%}
.person:hover .person-photo--marco img{transform:scale(1.51)}
@media(max-width:980px){
  .page-index .hero{min-height:800px}
  .page-index .hero-copy h1{font-size:clamp(46px,6.2vw,60px);max-width:100%}
  .page-index .hero-context{max-width:575px}
}
@media(max-width:767px){
  .page-index .hero{height:auto;min-height:min(700px,90svh);max-height:none;padding:128px 0 64px}
  .page-index .hero-shade{background:linear-gradient(180deg,#202528ad,#2025289e 40%,#202528d9)}
  .page-index .hero-copy h1{font-size:clamp(36px,7vw,50px);line-height:1.15;letter-spacing:-.04em;max-width:590px}
  .hero-services{margin-top:16px}
  .page-index .hero-context{font-size:16px;max-width:460px}
  .hero-actions{align-items:flex-start;gap:15px 25px;margin-top:27px}
  .hero-actions .button{font-size:15px;min-height:55px;padding:15px 23px}
  .hero-actions .text-link{font-size:14px}
  
  
  
  
  
  
}
@media(max-width:360px){
  .page-index .hero-copy h1{font-size:34px}
  
  
  
}

/* Low mobile viewports must show the headline without scrolling past empty video. */
@media(max-width:980px) and (max-height:600px){
  .page-index .hero{height:auto;min-height:100svh;max-height:none;padding:125px 0 42px}
  .page-index .hero-copy h1{font-size:clamp(34px,5vw,46px)}
  .hero-actions{margin-top:24px}
}

/* Feedbackrunde 03.11.2026 (umgesetzt 04.11.2026): ein Grau, farbiges Logo, Partner, Schweizer-Produkte. */
.brand--plate{background:#fff;padding:9px 13px;border-radius:10px;box-sizing:content-box}
.site-header .brand--plate{box-sizing:border-box}
.site-header .brand:focus-visible,.footer .brand--plate:focus-visible{outline-color:#fff}
.footer-grid h3{color:#fff;font-size:14px;font-weight:600;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
.brand-label{color:#fff}
.intro-services .intro-copy{color:var(--body)}
.company-logo{width:min(190px,100%);margin-bottom:24px}
.company-logo img{width:100%;height:auto}
.company .stats{margin-top:30px}
.company .stats>div{padding-top:18px}
@media(min-width:1121px){
  .company .company-grid{align-items:stretch}
  .company figure{position:relative}
  .company figure img{position:absolute;inset:0;height:100%;object-position:center}
}
@media(min-width:768px) and (max-width:1120px){
  .company .company-grid{grid-template-columns:1fr}
  .company figure img{aspect-ratio:3/2}
}
.process-card{background:#4d5b64}
.service-row-image{aspect-ratio:5/4}
#schweisstechnik .service-row-image img{object-position:center 18%}
#maschinenbau .service-row-image img{object-position:center 60%}
#alu-glas{row-gap:56px}
.system-partner{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 16px;margin:28px 0 0;padding-top:24px;border-top:1px solid var(--line);font-size:18px;line-height:1.5;color:var(--ink)}
.system-partner span{font-size:13px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--body)}
.product-details{grid-column:1/-1;order:3;background:var(--wash);border-radius:var(--radius);padding:0 36px;scroll-margin-top:110px}
.product-details summary{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:96px;padding:22px 0;cursor:pointer;list-style:none}
.product-details summary::-webkit-details-marker{display:none}
.product-details-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;font-size:26px;font-weight:300;line-height:1.4}
.product-details-heading img{width:auto;height:34px}
.product-details summary>svg{width:40px;height:40px;flex-shrink:0;transition:transform .25s var(--ease)}
.product-details[open] summary>svg{transform:rotate(90deg)}
.product-details summary:hover{color:var(--grey)}
.product-details-body{padding:4px 0 40px}
.product-details-body>p{color:var(--body);max-width:780px;margin-bottom:36px}
.product-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 30px}
.product-photo{display:block}
.product-photo-image{display:block;overflow:hidden;border-radius:var(--radius-small);aspect-ratio:4/3;background:var(--paper)}
.product-photo-image img{height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.product-photo:hover .product-photo-image img{transform:scale(1.04)}
.product-photo h3{font-size:18px;font-weight:400;line-height:1.5;margin-top:14px}
.button--grill{gap:14px}
.button--grill .button-grill-logo{width:22px;height:29px;object-fit:contain;flex-shrink:0}
.about-photo{background:linear-gradient(var(--wash) 0 50%,var(--paper) 50%)}
.about-photo img{border-radius:var(--radius);aspect-ratio:3/1;object-fit:cover;box-shadow:var(--shadow)}
.partners{padding:24px 0 34px;border-bottom:1px solid var(--line)}
.partner-heading{display:flex;align-items:center;min-height:44px;margin-bottom:14px}
.partner-heading h2{font-size:15px;line-height:1.5;font-weight:400;color:var(--body);margin:0}
.partner-marquee{overflow:hidden}
.partner-track{display:flex}
.partner-set{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;margin:0;padding:0;list-style:none}
.partner{flex:0 0 min(50%,180px);display:flex;align-items:center;justify-content:center;height:80px;padding:0 12px}
.partner img{width:auto;height:auto;max-width:100%;max-height:64px;object-fit:contain}
.partner--schweizer img{max-width:126px;max-height:42px}
.partner--metaltec-suisse img{max-height:72px}
.partner--lehrbetrieb img{max-height:72px}
.partners:not([data-animated]) :is(.partner-set,.partner)[aria-hidden="true"]{display:none}
.partners[data-animated] .partner-track{width:max-content;animation:partner-scroll 32s linear infinite}
.partners[data-animated] .partner-set{flex:none;flex-wrap:nowrap;width:auto}
.partners[data-animated] .partner{flex:none;width:max(144px,12.5vw)}
.partners.wrap[data-animated] .partner{width:clamp(144px,12.5vw,180px)}
@keyframes partner-scroll{to{transform:translateX(-50%)}}
.footer-social{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin:24px 0 6px}
.footer-social a{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:12px 24px 12px 20px;border:1px solid #fff;border-radius:var(--pill);color:#fff;font-size:16px;font-weight:600;line-height:1.5;transition:background .25s ease,color .25s ease}
.footer-social a:hover{background:#fff;color:var(--ink)}
.footer-social svg{width:24px;height:24px;stroke-width:1.8}
.footer-social a:focus-visible{outline-color:#fff}
.footer-top h2{text-wrap:balance}
@media(max-width:980px){.product-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-social{justify-content:flex-start}}
@media(max-width:767px){
  .company-logo{width:min(170px,100%)}
  .service-row-image{aspect-ratio:4/3}
  #alu-glas{row-gap:28px}
  .system-partner{margin-top:24px;padding-top:22px}
  .system-partner{font-size:17px}
  .product-details{padding:0 20px;border-radius:var(--radius-small)}
  .product-details summary{gap:18px;min-height:84px}
  .product-details-heading{font-size:22px;gap:8px 16px}
  .product-details-heading img{height:28px}
  .product-details summary>svg{width:30px;height:30px}
  .product-photos{gap:24px 16px}
  .product-photo h3{font-size:15px;margin-top:10px}
  .about-photo img{aspect-ratio:1.9;object-position:48% center;border-radius:var(--radius-small)}
  .site-header .brand{width:172px}
  .site-header.is-fixed .brand{width:150px}
  .footer-top .brand--plate{width:200px}
  .partners{padding:14px 0 24px}
  .partner-heading{margin-bottom:8px}
  .partner img{max-height:56px}
  .partner--schweizer img{max-width:112px;max-height:36px}
  .partner--metaltec-suisse img,.partner--lehrbetrieb img{max-height:64px}
}
@media(prefers-reduced-motion:reduce){
  .product-photo-image img{transition:none}
}
