:root{--blue:#007CB0;--blue-dark:#005181;--blue-deep:#073247;--ink:#12212b;--muted:#61717c;--bg:#f3f7f9;--paper:#fff;--line:#dfe7eb;--dark:#0c202b;--max:1240px;--radius:22px;--shadow:0 18px 60px rgba(12,32,43,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.wrap,.content-wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:999;background:#fff;padding:.7rem 1rem}.topbar{background:#071820;color:#d9edf6;font-size:.82rem}.topbar__inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.topbar__dot{margin:0 .55rem;color:#6caeca}.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(100deg,var(--blue-dark),var(--blue));box-shadow:0 8px 30px rgba(3,44,65,.16)}.nav{min-height:84px;display:flex;align-items:center;gap:1.35rem}.brand{margin-right:auto;display:flex;align-items:center}.brand-logo{width:255px;max-height:58px;object-fit:contain;object-position:left center}.navlinks{display:flex;align-items:center;gap:1.05rem}.nav-link{color:#fff;font-weight:700;padding:1.9rem .05rem 1.55rem;border-bottom:3px solid transparent;opacity:.95}.nav-link:hover,.nav-link.active{border-color:#fff;opacity:1}.nav-cta{margin-left:.45rem;background:#fff;color:var(--blue-dark);padding:.72rem 1rem;border-radius:999px;font-weight:850}.nav-toggle{display:none;background:transparent;border:0;padding:.5rem}.nav-toggle>span:not(.sr-only){display:block;width:27px;height:2px;background:#fff;margin:5px 0}.eyebrow{display:inline-block;color:var(--blue);text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:850}.eyebrow--light{color:#a9def1}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.88rem 1.25rem;background:var(--blue);color:#fff;font-weight:850;transition:.18s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(0,124,176,.22)}.btn--light{background:#fff;color:var(--blue-dark)}.btn--outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}.btn--ghost{background:transparent;color:var(--blue);border:1px solid #9bc8da}.text-link{color:var(--blue-dark);font-weight:850}.home-hero{background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);color:#fff;padding:5.5rem 0 5rem;overflow:hidden}.home-hero__grid{display:grid;grid-template-columns:1.02fr .98fr;gap:4.5rem;align-items:center}.home-hero h1{font-size:clamp(3.2rem,6.2vw,6.1rem);line-height:.93;letter-spacing:-.055em;margin:.75rem 0 1.4rem;font-weight:780}.home-hero h1 strong{font-weight:900}.home-hero__copy>p{font-size:1.15rem;max-width:690px;color:#dbeef6}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.hero-facts{display:flex;gap:2rem;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.2);margin-top:2.2rem;padding-top:1.3rem;font-size:.82rem;color:#d8edf6}.hero-facts span{display:flex;flex-direction:column}.hero-facts strong{font-size:.95rem;color:#fff}.hero-image-frame{position:relative;border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 30px 80px rgba(0,20,35,.32);transform:none}.hero-image-frame:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.25);border-radius:inherit}.hero-image-frame img{display:block;width:100%;aspect-ratio:1.3/1;object-fit:cover}.home-section{padding:5.5rem 0}.section-heading{margin-bottom:1.6rem}.section-heading h2,.catalog-intro h2,.product-copy h2,.request-band h2,.home-cta h2,.home-strengths h2{font-size:clamp(2rem,3vw,3.25rem);line-height:1.04;letter-spacing:-.035em;margin:.5rem 0}.section-heading--split{display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-heading--split>div{max-width:760px}.home-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.home-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 30px rgba(15,45,60,.05);transition:.2s ease}.home-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.home-card>img{width:100%;aspect-ratio:1.35/1;object-fit:cover;background:#eef4f6}.home-card>div{padding:1.25rem}.home-card>div>span{font-size:.72rem;font-weight:900;color:var(--blue);letter-spacing:.12em}.home-card h3{font-size:1.32rem;margin:.35rem 0}.home-card p{color:var(--muted);margin:.4rem 0}.home-strengths{background:var(--dark);color:#fff;padding:5rem 0}.strengths-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:2rem}.strength{border-left:1px solid #31505e;padding-left:1.5rem}.strength>strong{color:#68c8ea}.strength h3{margin:.35rem 0}.strength p{color:#b9ced7}.home-cta{padding:4rem 0}.home-cta__inner{background:#fff;border:1px solid var(--line);border-radius:28px;padding:2.5rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;box-shadow:var(--shadow)}.home-cta__inner>div{max-width:760px}.page-hero{background:linear-gradient(110deg,#eef7fb,#fff);border-bottom:1px solid var(--line);padding:3.8rem 0 3.2rem}.page-hero h1{font-size:clamp(2.6rem,5vw,4.7rem);line-height:1;letter-spacing:-.045em;margin:.55rem 0}.page-content{padding:3.5rem 0 1rem}.catalog-shell{padding:0 0 5rem}.catalog-intro{max-width:820px;margin:0 0 2rem}.catalog-intro--compact{margin-bottom:1.3rem}.catalog-intro p{font-size:1.08rem;color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:3.5rem}.category-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;min-height:154px;transition:.2s ease}.category-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.category-card__media{width:42%;background:#edf4f7}.category-card__media img{width:100%;height:100%;object-fit:cover}.category-card__body{padding:1.1rem;display:flex;flex-direction:column;justify-content:center}.category-card h3{margin:0 0 .55rem;font-size:1.15rem}.category-card span{color:var(--blue);font-weight:800;font-size:.88rem}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.product-card{background:#fff;border-radius:20px;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;min-width:0}.product-card__media{background:#edf4f6;aspect-ratio:1.35/1;overflow:hidden}.product-card__image{width:100%;height:100%;object-fit:cover;transition:.25s ease}.product-card:hover .product-card__image{transform:scale(1.025)}.product-card__body{padding:1.2rem 1.25rem 1.35rem;display:flex;flex-direction:column;flex:1}.product-card__category{color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.product-card h3{font-size:1.25rem;line-height:1.18;margin:.45rem 0}.product-card p{color:var(--muted);font-size:.93rem}.product-card .text-link{margin-top:auto;padding-top:.5rem}.product-detail{padding:2.3rem 0 5rem}.breadcrumb{display:flex;gap:.55rem;color:var(--muted);font-size:.88rem;margin-bottom:1.2rem}.breadcrumb a{color:var(--blue-dark);font-weight:750}.product-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:3rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:28px;padding:1rem;box-shadow:var(--shadow)}.product-hero__media{background:#eef4f6;border-radius:20px;overflow:hidden;min-height:430px;display:grid;place-items:center}.product-hero__image{width:100%;height:100%;max-height:560px;object-fit:contain}.product-hero__copy{padding:2rem 2rem 2rem 0}.product-hero h1{font-size:clamp(2.4rem,4.6vw,4.3rem);letter-spacing:-.045em;line-height:.98;margin:.55rem 0 1.3rem}.product-keyfacts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;color:#304751}.product-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.5rem}.product-copy{display:grid;grid-template-columns:.75fr 1.25fr;gap:4rem;padding:4.5rem 0 2rem}.richtext{color:#334b56;font-size:1.04rem}.richtext p:first-child{margin-top:0}.section-block{padding:3rem 0 1rem}.product-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.product-gallery figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:grid;place-items:center;min-height:220px}.product-gallery img{width:100%;height:100%;max-height:330px;object-fit:contain}.equipment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.equipment-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.equipment-card__media{background:#edf4f6;min-height:180px;display:grid;place-items:center}.equipment-card__media img{width:100%;height:210px;object-fit:contain}.equipment-card__body{padding:1rem 1.1rem}.equipment-card h3{margin:.1rem 0 .55rem}.equipment-card p{color:var(--muted);font-size:.9rem}.request-band{margin-top:4rem;background:linear-gradient(105deg,var(--blue-dark),var(--blue));border-radius:26px;padding:2.2rem 2.5rem;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:2rem}.request-band h2{margin-bottom:0}.site-footer{margin-top:4rem;background:var(--dark);color:#d7e5ec;padding:3.4rem 0 1.2rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:3rem}.footer-logo{width:245px;margin-bottom:.65rem}.site-footer p{color:#b8ced7}.site-footer strong{color:#fff}.footer-bottom{border-top:1px solid #2a4653;margin-top:2.4rem;padding-top:1.1rem;display:flex;justify-content:space-between;color:#8eabb8;font-size:.82rem}
@media(max-width:1050px){.navlinks{gap:.75rem}.nav-link{font-size:.9rem}.nav-cta{display:none}.home-hero__grid{gap:2.5rem}.home-cards{grid-template-columns:1fr 1fr}.strengths-grid{grid-template-columns:1fr 1fr}.product-grid,.category-grid,.equipment-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.topbar__inner{justify-content:center}.topbar__inner>span:first-child{display:none}.nav{min-height:74px}.brand-logo{width:215px}.nav-toggle{display:block}.navlinks{display:none;position:absolute;top:74px;left:0;right:0;background:var(--blue-dark);padding:1rem 20px 1.4rem;flex-direction:column;align-items:stretch;box-shadow:0 18px 35px rgba(0,0,0,.18)}.navlinks.is-open{display:flex}.nav-link{padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.15)}.nav-cta{display:block;text-align:center;margin:.4rem 0 0}.home-hero{padding:4rem 0}.home-hero__grid,.product-hero,.product-copy{grid-template-columns:1fr}.home-hero__visual{order:-1}.hero-image-frame{max-width:650px;margin:auto}.product-hero__copy{padding:1rem}.product-hero__media{min-height:300px}.section-heading--split,.home-cta__inner,.request-band{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.strengths-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.wrap,.content-wrap{width:min(calc(100% - 28px),var(--max))}.home-hero h1{font-size:3.25rem}.hero-facts{gap:1rem}.home-cards,.product-grid,.category-grid,.equipment-grid,.product-gallery,.strengths-grid,.footer-grid{grid-template-columns:1fr}.category-card{min-height:130px}.home-cta__inner,.request-band{padding:1.6rem}.page-hero{padding:2.8rem 0 2.3rem}.footer-bottom{flex-direction:column;gap:.3rem}.product-copy{gap:1rem;padding-top:3rem}}

/* v7 polish */
.topbar{font-size:.86rem}.topbar__inner{min-height:40px}.nav{min-height:96px}.brand-logo{width:315px;max-height:68px}.navlinks{gap:1.15rem}.nav-link{padding:2.15rem .05rem 1.85rem;font-size:.96rem}.nav-cta{padding:.78rem 1.12rem}
.home-solutions{padding:1rem 0 5.5rem}.solution-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.solution-card{background:#fff;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 10px 35px rgba(15,45,60,.06);display:grid;grid-template-columns:.9fr 1.1fr;min-height:330px;transition:.2s ease}.solution-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.solution-card__media{min-height:100%;background:#eaf2f5}.solution-card__media img{width:100%;height:100%;object-fit:cover}.solution-card__body{padding:2rem;display:flex;flex-direction:column;justify-content:center}.solution-card h3{font-size:1.8rem;line-height:1.08;letter-spacing:-.025em;margin:.5rem 0 .75rem}.solution-card p{color:var(--muted);margin:0 0 1rem}.solution-card .text-link{margin-top:auto}
.home-manufacturing{background:linear-gradient(110deg,#052d41,#006a99);color:#fff;padding:5.5rem 0}.manufacturing-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:4rem;align-items:center}.manufacturing-copy h2{font-size:clamp(2.5rem,4vw,4.3rem);line-height:1;letter-spacing:-.04em;margin:.6rem 0 1.2rem}.manufacturing-copy>p{font-size:1.08rem;color:#d5eaf3;max-width:720px}.manufacturing-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0 2.2rem;border-top:1px solid rgba(255,255,255,.2);padding-top:1.3rem}.manufacturing-facts span{display:flex;flex-direction:column;color:#c7e1ec;font-size:.83rem}.manufacturing-facts strong{font-size:1rem;color:#fff}.manufacturing-image{border-radius:28px;overflow:hidden;box-shadow:0 26px 70px rgba(0,20,35,.28);background:#fff}.manufacturing-image img{display:block;width:100%;aspect-ratio:1.28/1;object-fit:cover}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem 1.15rem;margin:0 0 1.4rem}.catalog-toolbar>div{flex:1;max-width:650px}.catalog-toolbar label{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--blue-dark);font-weight:850;margin-bottom:.4rem}.catalog-toolbar input{width:100%;border:1px solid #cbd9df;border-radius:12px;padding:.82rem 1rem;font:inherit;color:var(--ink);background:#fbfdfe;outline:none}.catalog-toolbar input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,124,176,.1)}.catalog-toolbar p{margin:0;color:var(--muted);white-space:nowrap}.catalog-toolbar strong{color:var(--ink);font-size:1.15rem}.catalog-empty{background:#fff;border:1px solid var(--line);border-radius:18px;padding:2rem;text-align:center;color:var(--muted)}
.product-hero{grid-template-columns:1fr 1fr;gap:2.25rem;padding:1.2rem}.product-hero__media{min-height:500px}.product-hero__copy{padding:2.2rem 2.4rem 2.2rem .3rem}.product-hero h1{font-size:clamp(2.5rem,4.4vw,4.5rem);margin:.55rem 0 1.4rem}.product-keyfacts-list{list-style:none;margin:0;padding:1.15rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:.48rem}.product-keyfacts-list li{position:relative;padding-left:1.3rem;color:#304751}.product-keyfacts-list li:before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--blue)}.product-copy{padding:4.5rem 0 2.2rem}.product-gallery{grid-template-columns:repeat(2,1fr)}.product-gallery figure{min-height:300px}.product-gallery img{max-height:460px}.section-lead{color:var(--muted);margin:.5rem 0 0;max-width:720px}.equipment-card__body{padding:1.15rem 1.25rem 1.35rem}.equipment-card h3{font-size:1.15rem}.equipment-card p{line-height:1.5}.related-products{padding-top:4rem}.product-grid--related{grid-template-columns:repeat(3,1fr)}.request-band p{margin:.55rem 0 0;color:#d8edf5;max-width:720px}
@media(max-width:1050px){.brand-logo{width:270px}.solution-card{grid-template-columns:1fr}.solution-card__media{min-height:240px}.manufacturing-grid{gap:2.5rem}.product-hero__media{min-height:400px}}
@media(max-width:850px){.nav{min-height:80px}.brand-logo{width:240px}.navlinks{top:80px}.solution-grid,.manufacturing-grid{grid-template-columns:1fr}.manufacturing-image{max-width:720px}.product-hero__copy{padding:1.2rem}.product-hero__media{min-height:320px}.catalog-toolbar{align-items:stretch;flex-direction:column}.catalog-toolbar>div{max-width:none}.product-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.brand-logo{width:205px}.solution-grid,.product-gallery,.product-grid--related{grid-template-columns:1fr}.solution-card__body{padding:1.5rem}.manufacturing-facts{grid-template-columns:1fr}.product-gallery figure{min-height:220px}}

/* v8 product density / reduced whitespace */
.page-2 .page-hero,.page-3 .page-hero,.page-4 .page-hero,.page-11 .page-hero,.page-12 .page-hero,.page-13 .page-hero,.page-14 .page-hero,.page-15 .page-hero,.page-16 .page-hero,.page-17 .page-hero,.page-18 .page-hero,.page-19 .page-hero,.page-29 .page-hero{display:none}
.page-2 .page-content,.page-3 .page-content,.page-4 .page-content,.page-11 .page-content,.page-12 .page-content,.page-13 .page-content,.page-14 .page-content,.page-15 .page-content,.page-16 .page-content,.page-17 .page-content,.page-18 .page-content,.page-19 .page-content{padding:2rem 0 .25rem}
.page-29 .page-content{padding:.75rem 0 0}
.page-29 .site-footer{margin-top:1.75rem}
.page-29 .product-detail{padding:.55rem 0 2.75rem}
.page-29 .product-detail .content-wrap{width:min(calc(100% - 36px),1380px)}
.page-29 .breadcrumb{margin-bottom:.8rem;font-size:.84rem}
.page-29 .product-hero{gap:1.6rem;border-radius:22px;padding:.8rem;box-shadow:0 12px 38px rgba(12,32,43,.08)}
.page-29 .product-hero__media{min-height:400px;border-radius:16px}
.page-29 .product-hero__copy{padding:1.45rem 1.65rem 1.45rem .25rem}
.page-29 .product-hero h1{font-size:clamp(2.35rem,3.7vw,3.75rem);margin:.4rem 0 1rem}
.page-29 .product-keyfacts-list{padding:.75rem 0;gap:.33rem}
.page-29 .product-keyfacts-list li{font-size:.95rem;line-height:1.38}
.page-29 .product-actions{margin-top:1rem}
.page-29 .product-copy{gap:2.5rem;padding:2.25rem 0 .8rem}
.page-29 .product-copy h2{font-size:clamp(1.9rem,2.8vw,2.75rem)}
.page-29 .section-block{padding:1.75rem 0 .35rem}
.page-29 .section-heading{margin-bottom:1rem}
.page-29 .section-heading h2{font-size:clamp(1.9rem,2.8vw,2.75rem);margin:.35rem 0}
.page-29 .section-lead{margin:.2rem 0 0;font-size:.95rem}
.page-29 .product-gallery{grid-template-columns:repeat(3,1fr);gap:.8rem}
.page-29 .product-gallery figure{min-height:210px;border-radius:14px;background:#f9fcfd}
.page-29 .product-gallery img{max-height:300px}
.page-29 .equipment-group{margin-top:.4rem;padding:1.55rem 0 .2rem;border-top:1px solid var(--line)}
.page-29 .equipment-grid{grid-template-columns:repeat(4,1fr);gap:.8rem}
.page-29 .equipment-card{border-radius:14px;background:#f9fcfd;box-shadow:0 4px 16px rgba(12,32,43,.035)}
.page-29 .equipment-card__media{min-height:140px;background:#eaf2f5}
.page-29 .equipment-card__media img{height:165px;object-fit:cover}
.page-29 .equipment-card__body{padding:.8rem .9rem 1rem}
.page-29 .equipment-card h3{font-size:1.02rem;line-height:1.2;margin:0 0 .4rem}
.page-29 .equipment-card p{font-size:.82rem;line-height:1.38;margin:.25rem 0;color:#4f636d}
.page-29 .related-products{padding-top:2rem}
.page-29 .product-grid--related{gap:.8rem}
.page-29 .request-band{margin-top:2.1rem;border-radius:20px;padding:1.65rem 2rem}
.page-29 .request-band h2{font-size:clamp(1.8rem,2.8vw,2.7rem)}
.page-2 .catalog-shell,.page-3 .catalog-shell,.page-4 .catalog-shell,.page-11 .catalog-shell,.page-12 .catalog-shell,.page-13 .catalog-shell,.page-14 .catalog-shell,.page-15 .catalog-shell,.page-16 .catalog-shell,.page-17 .catalog-shell,.page-18 .catalog-shell,.page-19 .catalog-shell{padding-bottom:3.25rem}
.page-2 .catalog-intro,.page-3 .catalog-intro,.page-4 .catalog-intro,.page-11 .catalog-intro,.page-12 .catalog-intro,.page-13 .catalog-intro,.page-14 .catalog-intro,.page-15 .catalog-intro,.page-16 .catalog-intro,.page-17 .catalog-intro,.page-18 .catalog-intro,.page-19 .catalog-intro{margin-bottom:1.25rem}
.page-2 .category-grid{margin-bottom:2.25rem}
@media(max-width:1180px){.page-29 .equipment-grid{grid-template-columns:repeat(3,1fr)}.page-29 .product-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.page-29 .product-detail .content-wrap{width:min(calc(100% - 30px),1380px)}.page-29 .product-hero{gap:.8rem}.page-29 .product-hero__media{min-height:300px}.page-29 .product-hero__copy{padding:1rem}.page-29 .equipment-grid{grid-template-columns:repeat(2,1fr)}.page-29 .product-copy{gap:1.2rem;padding-top:1.6rem}}
@media(max-width:620px){.page-29 .page-content{padding-top:.35rem}.page-29 .product-detail{padding-top:.35rem}.page-29 .equipment-grid,.page-29 .product-gallery{grid-template-columns:1fr}.page-29 .equipment-card__media img{height:200px}.page-29 .request-band{padding:1.4rem}.page-2 .page-content,.page-3 .page-content,.page-4 .page-content,.page-11 .page-content,.page-12 .page-content,.page-13 .page-content,.page-14 .page-content,.page-15 .page-content,.page-16 .page-content,.page-17 .page-content,.page-18 .page-content,.page-19 .page-content{padding-top:1.15rem}}

/* v9 brand color alignment + blue product-page canvas */
/* Header/navigation uses exactly the same dark tone as the top contact bar. */
.site-header{
  background:#071820;
  box-shadow:0 8px 30px rgba(3,24,32,.20);
}

/* Product overview/category/detail pages use the same blue gradient as the homepage hero. */
.page-2 .page-content,
.page-3 .page-content,
.page-4 .page-content,
.page-11 .page-content,
.page-12 .page-content,
.page-13 .page-content,
.page-14 .page-content,
.page-15 .page-content,
.page-16 .page-content,
.page-17 .page-content,
.page-18 .page-content,
.page-19 .page-content,
.page-29 .page-content{
  background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);
}

/* Keep the product/catalog cards crisp and readable on the blue canvas. */
.page-2 .catalog-intro h2,
.page-3 .catalog-intro h2,
.page-4 .catalog-intro h2,
.page-11 .catalog-intro h2,
.page-12 .catalog-intro h2,
.page-13 .catalog-intro h2,
.page-14 .catalog-intro h2,
.page-15 .catalog-intro h2,
.page-16 .catalog-intro h2,
.page-17 .catalog-intro h2,
.page-18 .catalog-intro h2,
.page-19 .catalog-intro h2{
  color:#fff;
}
.page-2 .catalog-intro p,
.page-3 .catalog-intro p,
.page-4 .catalog-intro p,
.page-11 .catalog-intro p,
.page-12 .catalog-intro p,
.page-13 .catalog-intro p,
.page-14 .catalog-intro p,
.page-15 .catalog-intro p,
.page-16 .catalog-intro p,
.page-17 .catalog-intro p,
.page-18 .catalog-intro p,
.page-19 .catalog-intro p{
  color:#dbeef6;
}
.page-2 .catalog-intro .eyebrow,
.page-3 .catalog-intro .eyebrow,
.page-4 .catalog-intro .eyebrow,
.page-11 .catalog-intro .eyebrow,
.page-12 .catalog-intro .eyebrow,
.page-13 .catalog-intro .eyebrow,
.page-14 .catalog-intro .eyebrow,
.page-15 .catalog-intro .eyebrow,
.page-16 .catalog-intro .eyebrow,
.page-17 .catalog-intro .eyebrow,
.page-18 .catalog-intro .eyebrow,
.page-19 .catalog-intro .eyebrow{
  color:#a9def1;
}

/* Detail page typography outside the white product card switches to light tones. */
.page-29 .breadcrumb{color:#cfe8f2}
.page-29 .breadcrumb a{color:#fff}
.page-29 .section-heading h2,
.page-29 .product-copy h2{color:#fff}
.page-29 .section-heading .eyebrow,
.page-29 .product-copy .eyebrow{color:#a9def1}
.page-29 .section-lead,
.page-29 .product-copy .richtext{color:#dbeef6}
.page-29 .equipment-group{border-top-color:rgba(255,255,255,.22)}
.page-29 .request-band{
  background:#071820;
  box-shadow:0 16px 40px rgba(0,20,35,.20);
}

/* v10 product detail refinement: wider content, dynamic gallery, stronger section rhythm */
.page-29 .product-detail .content-wrap{
  width:min(calc(100% - 32px),1460px);
}
.page-29 .product-hero{
  grid-template-columns:1.05fr .95fr;
  gap:1.45rem;
}
.page-29 .product-hero__media{
  min-height:410px;
}

/* Group product sections on the blue canvas without bringing back large white areas. */
.page-29 .product-section-panel{
  margin-top:1rem;
  padding:1.2rem 1.25rem 1.35rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  background:rgba(2,43,63,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.page-29 .product-section-panel .section-heading{
  margin-bottom:.85rem;
}
.page-29 .product-section-panel .section-heading h2{
  margin:.2rem 0;
}

/* Gallery adapts to the actual image count. A single view no longer looks lost. */
.page-29 .product-gallery{
  gap:.9rem;
}
.page-29 .product-gallery--count-1{
  grid-template-columns:minmax(0,760px);
}
.page-29 .product-gallery--count-1 figure{
  min-height:360px;
}
.page-29 .product-gallery--count-1 img{
  max-height:520px;
}
.page-29 .product-gallery--count-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.page-29 .product-gallery--count-2 figure{
  min-height:280px;
}
.page-29 .product-gallery--count-3,
.page-29 .product-gallery--count-4,
.page-29 .product-gallery--count-5,
.page-29 .product-gallery--count-6{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.page-29 .product-gallery figure{
  border:0;
  box-shadow:0 10px 28px rgba(0,25,40,.16);
}

/* Equipment remains complete but becomes visually denser. */
.page-29 .equipment-group{
  border-top:0;
}
.page-29 .equipment-grid{
  gap:.75rem;
}
.page-29 .equipment-card{
  border:0;
  box-shadow:0 8px 24px rgba(0,25,40,.13);
}
.page-29 .equipment-card__media{
  min-height:128px;
}
.page-29 .equipment-card__media img{
  height:154px;
  object-fit:cover;
}
.page-29 .equipment-card__body{
  padding:.72rem .82rem .85rem;
}
.page-29 .equipment-card h3{
  font-size:.98rem;
  margin:0 0 .32rem;
}
.page-29 .equipment-card p{
  font-size:.79rem;
  line-height:1.32;
  margin:.15rem 0;
}

/* Related products and CTA form a clear closing sequence. */
.page-29 .related-products{
  padding-top:1.2rem;
}
.page-29 .product-grid--related{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.page-29 .request-band{
  margin-top:1.25rem;
  border:1px solid rgba(255,255,255,.14);
}

@media(max-width:1180px){
  .page-29 .product-detail .content-wrap{width:min(calc(100% - 30px),1320px)}
  .page-29 .equipment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-29 .product-gallery--count-3,
  .page-29 .product-gallery--count-4,
  .page-29 .product-gallery--count-5,
  .page-29 .product-gallery--count-6{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .page-29 .product-section-panel{padding:1rem}
  .page-29 .product-gallery--count-1,
  .page-29 .product-gallery--count-2,
  .page-29 .product-gallery--count-3,
  .page-29 .product-gallery--count-4,
  .page-29 .product-gallery--count-5,
  .page-29 .product-gallery--count-6{grid-template-columns:1fr}
  .page-29 .product-gallery--count-1 figure{min-height:260px}
  .page-29 .equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .page-29 .product-detail .content-wrap{width:min(calc(100% - 22px),1460px)}
  .page-29 .equipment-grid{grid-template-columns:1fr}
  .page-29 .equipment-card__media img{height:205px}
}

/* v11: Equipment photos must always be shown completely, without cropping. */
.page-29 .equipment-card__media{
  height:210px;
  min-height:210px;
  padding:.35rem;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eaf2f5;
}
.page-29 .equipment-card__media img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
}
@media(max-width:620px){
  .page-29 .equipment-card__media{
    height:230px;
    min-height:230px;
  }
  .page-29 .equipment-card__media img{
    height:100%;
    object-fit:contain;
  }
}

/* v12: Request form and stronger responsive behavior */
.page-8 .request-hero{
  background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);
  color:#fff;
  border-bottom:0;
  padding:3.2rem 0 2.8rem;
}
.page-8 .request-hero__grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:4rem;
  align-items:end;
}
.page-8 .request-hero h1{
  color:#fff;
  margin:.45rem 0 0;
  font-size:clamp(2.9rem,5.3vw,5.2rem);
}
.page-8 .request-hero p{
  color:#dbeef6;
  font-size:1.08rem;
  max-width:620px;
  margin:0 0 .45rem;
}
.page-8 .page-content{
  background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);
  padding:0 0 4.5rem;
}
.page-8 .page-content > *{
  width:min(calc(100% - 40px),980px);
  margin-inline:auto;
}
.page-8 .frame-type-form_formframework,
.page-8 .form-framework,
.page-8 form{
  background:#fff;
  border-radius:24px;
}
.page-8 .frame-type-form_formframework{
  padding:2rem 2.25rem;
  box-shadow:0 20px 55px rgba(0,20,35,.24);
}
.page-8 form{
  color:var(--ink);
}
.page-8 form label{
  display:block;
  font-weight:800;
  color:#17323e;
  margin-bottom:.38rem;
}
.page-8 form input[type="text"],
.page-8 form input[type="email"],
.page-8 form input[type="tel"],
.page-8 form textarea,
.page-8 form select{
  width:100%;
  border:1px solid #b9ced8;
  border-radius:12px;
  background:#f9fcfd;
  color:#102c38;
  padding:.82rem .95rem;
  font:inherit;
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.page-8 form textarea{resize:vertical;min-height:160px}
.page-8 form input:focus,
.page-8 form textarea:focus,
.page-8 form select:focus{
  border-color:var(--blue);
  background:#fff;
  box-shadow:0 0 0 4px rgba(0,124,176,.12);
}
.page-8 form input[readonly]{
  background:#eaf5f9;
  border-color:#88bdd1;
  color:#0b5e82;
  font-weight:800;
}
.page-8 form .form-group,
.page-8 form .form-element,
.page-8 form .mb-3{
  margin-bottom:1rem;
}
.page-8 form input[type="checkbox"]{
  width:1.15rem;
  height:1.15rem;
  accent-color:var(--blue);
  margin-right:.45rem;
  vertical-align:-.15rem;
}
.page-8 form button[type="submit"],
.page-8 form input[type="submit"]{
  border:0;
  border-radius:999px;
  padding:.9rem 1.35rem;
  background:var(--blue);
  color:#fff;
  font:inherit;
  font-weight:850;
  cursor:pointer;
}
.page-8 form button[type="submit"]:hover,
.page-8 form input[type="submit"]:hover{
  background:#006b98;
}
.page-8 .help-block,
.page-8 .form-text,
.page-8 .invalid-feedback{
  font-size:.84rem;
}
.page-8 .help-block,.page-8 .invalid-feedback{color:#a42525}
.page-8 .page-content:after{
  content:"Mit dem Absenden erklären Sie sich mit der Verarbeitung Ihrer Angaben zur Bearbeitung der Anfrage einverstanden. Hinweise finden Sie in unserer Datenschutzerklärung.";
  display:block;
  width:min(calc(100% - 40px),980px);
  margin:1rem auto 0;
  color:#dbeef6;
  font-size:.82rem;
}

/* Tablet and mobile: preserve hierarchy, avoid squeezed cards and oversized gaps. */
@media(max-width:850px){
  .page-8 .request-hero__grid{grid-template-columns:1fr;gap:1rem;align-items:start}
  .page-8 .request-hero{padding:2.5rem 0 2.2rem}
  .page-8 .frame-type-form_formframework{padding:1.5rem}
  .page-29 .product-hero{grid-template-columns:1fr}
  .page-29 .product-hero__copy{padding:1rem 1.1rem 1.25rem}
  .page-29 .product-hero__media{min-height:0}
  .page-29 .product-hero__image{max-height:none}
  .page-29 .product-section-panel{border-radius:16px}
}
@media(max-width:620px){
  .topbar{font-size:.76rem}
  .topbar__inner{min-height:32px}
  .site-header .nav{min-height:68px}
  .site-header .brand-logo{width:190px;max-height:48px}
  .navlinks{top:68px;padding:.8rem 14px 1.1rem}
  .nav-link{font-size:1rem;padding:.78rem .2rem}
  .nav-cta{padding:.8rem 1rem}
  .home-hero{padding:2.8rem 0 3rem}
  .home-hero h1{font-size:clamp(2.65rem,13vw,3.35rem)}
  .hero-image-frame{border-radius:20px}
  .home-section{padding:3.2rem 0}
  .page-8 .request-hero h1{font-size:2.85rem}
  .page-8 .page-content > *,
  .page-8 .page-content:after{width:min(calc(100% - 24px),980px)}
  .page-8 .frame-type-form_formframework{padding:1.15rem;border-radius:18px}
  .page-29 .product-hero{padding:.55rem;border-radius:18px}
  .page-29 .product-hero h1{font-size:clamp(2.15rem,10.5vw,3rem)}
  .page-29 .product-actions{display:grid;grid-template-columns:1fr;gap:.55rem}
  .page-29 .product-actions .btn{width:100%}
  .page-29 .product-section-panel{padding:.85rem}
  .page-29 .request-band .btn{width:100%}
}

/* v13: clickable privacy notice and clear form confirmation */
.page-8 .page-content:after{
  content:none;
  display:none;
}
.page-8 .request-privacy-note{
  display:block;
  margin:.35rem 0 1.15rem 1.7rem;
  color:#506c78;
  font-size:.86rem;
  line-height:1.45;
}
.page-8 .request-privacy-note a{
  color:#006f9e;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:2px;
}
.page-8 .request-privacy-note a:hover{
  color:#004f72;
}
.page-8 .request-confirmation{
  background:#fff;
  color:#143440;
  border:1px solid rgba(0,124,176,.22);
  border-radius:22px;
  box-shadow:0 18px 48px rgba(0,20,35,.2);
  padding:2rem 2.2rem;
  font-size:1.08rem;
  font-weight:750;
  line-height:1.55;
  position:relative;
  overflow:hidden;
}
.page-8 .request-confirmation:before{
  content:"✓";
  display:inline-grid;
  place-items:center;
  width:2rem;
  height:2rem;
  margin:0 .7rem .15rem 0;
  border-radius:50%;
  background:#0084b7;
  color:#fff;
  font-weight:900;
  vertical-align:middle;
}
.page-8 .request-confirmation a{
  color:#006f9e;
  font-weight:800;
}
@media(max-width:620px){
  .page-8 .request-privacy-note{margin-left:0;font-size:.82rem}
  .page-8 .request-confirmation{padding:1.45rem 1.25rem;border-radius:18px}
}

/* v14: substantive company, service, career and contact pages */
.page-3 .page-hero,.page-4 .page-hero,.page-5 .page-hero,.page-6 .page-hero,.page-7 .page-hero,
.page-20 .page-hero,.page-21 .page-hero,.page-22 .page-hero,.page-23 .page-hero,.page-24 .page-hero,.page-25 .page-hero{
  background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.page-3 .page-hero h1,.page-4 .page-hero h1,.page-5 .page-hero h1,.page-6 .page-hero h1,.page-7 .page-hero h1,
.page-20 .page-hero h1,.page-21 .page-hero h1,.page-22 .page-hero h1,.page-23 .page-hero h1,.page-24 .page-hero h1,.page-25 .page-hero h1{color:#fff}
.page-3 .page-hero .eyebrow,.page-4 .page-hero .eyebrow,.page-5 .page-hero .eyebrow,.page-6 .page-hero .eyebrow,.page-7 .page-hero .eyebrow,
.page-20 .page-hero .eyebrow,.page-21 .page-hero .eyebrow,.page-22 .page-hero .eyebrow,.page-23 .page-hero .eyebrow,.page-24 .page-hero .eyebrow,.page-25 .page-hero .eyebrow{color:#a9def1}
.page-hero--compact{padding:2.1rem 0 1.8rem}
.page-hero--compact h1{margin:.35rem 0 0;font-size:clamp(2.2rem,4vw,4rem)}
.content-landing{padding:2.5rem 0 4.5rem}
.content-landing--blue{background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);color:#fff}
.content-landing--blue h2,.content-landing--blue h3{color:#fff}
.content-landing--blue p{color:#dbeef6}
.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:3.2rem;align-items:center;padding:1.25rem 0 3rem}
.split-feature--reverse .split-feature__copy{order:2}.split-feature--reverse .split-feature__media{order:1}
.split-feature__copy h2{font-size:clamp(2.25rem,4vw,4.5rem);line-height:1.02;margin:.45rem 0 1rem;max-width:12ch}
.split-feature__copy p{font-size:1.06rem;max-width:62ch}
.split-feature__media{border-radius:24px;overflow:hidden;box-shadow:0 22px 60px rgba(0,20,35,.28);background:#fff;min-height:390px}
.split-feature__media img{display:block;width:100%;height:100%;min-height:390px;object-fit:cover}
.split-feature__media--contain{background:#fff;padding:2rem}.split-feature__media--contain img{object-fit:contain;min-height:300px}
.content-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}
.feature-cards{display:grid;gap:1rem;margin-top:1rem}.feature-cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.feature-card{padding:1.35rem 1.4rem;border-radius:18px;background:rgba(2,43,63,.30);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.feature-card>span{display:block;color:#a9def1;font-weight:900;letter-spacing:.08em;margin-bottom:1.5rem}.feature-card h3{margin:.15rem 0 .5rem;font-size:1.25rem}.feature-card p{margin:0;font-size:.94rem}
.section-heading--light{padding-top:.5rem}.section-heading--light h2{color:#fff;max-width:18ch}.section-heading--light p{color:#dbeef6;max-width:74ch;font-size:1.04rem}
.before-after{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.8rem auto 2.2rem}.before-after figure{margin:0;position:relative;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 18px 45px rgba(0,20,35,.20)}.before-after img{display:block;width:100%;height:360px;object-fit:contain;background:#eaf2f5}.before-after figcaption{position:absolute;left:1rem;bottom:1rem;background:#071820;color:#fff;border-radius:999px;padding:.45rem .8rem;font-weight:800}
.content-cta{margin-top:1.35rem;padding:1.5rem 1.6rem;border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#071820;border:1px solid rgba(255,255,255,.14)}.content-cta h2{margin:.25rem 0;font-size:clamp(1.55rem,2.6vw,2.7rem)}.content-cta p{margin:.4rem 0 0}
.link-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.link-panel{display:block;padding:1.5rem;border-radius:20px;background:#fff;color:var(--ink);box-shadow:0 14px 36px rgba(0,20,35,.15);transition:.18s ease}.link-panel:hover{transform:translateY(-3px)}.link-panel>span{color:var(--blue);font-weight:900}.link-panel h3{color:var(--ink);font-size:1.35rem;margin:1.4rem 0 .5rem}.link-panel p{color:var(--muted);min-height:4.4em}.link-panel strong{color:var(--blue-dark)}
.fact-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1.5rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.18)}.fact-row span{color:#dbeef6;font-size:.86rem}.fact-row strong{display:block;color:#fff;font-size:1rem}
.check-list{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.check-list li{position:relative;padding-left:1.4rem;color:#dbeef6}.check-list li:before{content:'✓';position:absolute;left:0;color:#a9def1;font-weight:900}
.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem}.contact-card{padding:1.7rem;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 16px 45px rgba(0,20,35,.18)}.contact-card h2,.contact-card h3{color:var(--ink)}.contact-card p{color:var(--muted)}.contact-card a:not(.btn){color:var(--blue-dark);font-weight:750}.contact-card--primary{background:#071820;color:#fff}.contact-card--primary h2{color:#fff;font-size:clamp(2.3rem,4vw,4rem);margin:.4rem 0 1rem}.contact-card--primary p,.contact-card--primary a:not(.btn){color:#dbeef6}
.route-card{display:grid;grid-template-columns:1.3fr .7fr;gap:1rem;align-items:stretch}.route-card>div{padding:1.8rem;border-radius:22px;background:rgba(2,43,63,.30);border:1px solid rgba(255,255,255,.16)}.route-card h2{font-size:clamp(2rem,3.7vw,3.8rem);margin:.45rem 0 1rem}.route-card__address{display:flex;flex-direction:column;justify-content:center;gap:.55rem;color:#dbeef6}.route-card__address strong{color:#fff;font-size:1.2rem}
@media(max-width:980px){.split-feature,.contact-grid,.route-card{grid-template-columns:1fr}.split-feature--reverse .split-feature__copy,.split-feature--reverse .split-feature__media{order:initial}.feature-cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}.link-panels{grid-template-columns:1fr}.split-feature__media{min-height:300px}.split-feature__media img{min-height:300px}.before-after img{height:300px}}
@media(max-width:680px){.content-landing{padding:1.5rem 0 3rem}.split-feature{gap:1.5rem;padding:.5rem 0 2rem}.feature-cards--3,.feature-cards--4{grid-template-columns:1fr}.before-after{grid-template-columns:1fr}.content-cta{align-items:flex-start;flex-direction:column}.fact-row,.check-list{grid-template-columns:1fr}.page-hero--compact{padding:1.35rem 0 1.15rem}.split-feature__media,.split-feature__media img{min-height:240px}.before-after img{height:250px}}

/* v15: Unternehmen - duplicate page label removed, symmetrical white breathing space */
.page-5{
  --company-white-spacer:4rem;
}
.page-5 .page-hero{
  display:block !important;
  height:var(--company-white-spacer);
  min-height:var(--company-white-spacer);
  padding:0 !important;
  margin:0 !important;
  background:#fff !important;
  border:0 !important;
}
.page-5 .page-hero > .wrap{
  display:none !important;
}
.page-5 .site-footer{
  margin-top:var(--company-white-spacer);
}
@media(max-width:680px){
  .page-5{
    --company-white-spacer:2.75rem;
  }
}

/* v16: Globales Gerbracht-Grunddesign fuer alle bereits aufgebauten Seiten
   Rhythmus: dunkler Header -> weisser Abstand -> blauer Inhalt -> gleicher weisser Abstand -> dunkler Footer.
   Die Startseite bleibt bewusst unveraendert. */

/* Einheitliche Spacer-Hoehe fuer Produkt-, Leistungs-, Unternehmens-, Karriere- und Kontaktseiten. */
.page-2,.page-3,.page-4,.page-5,.page-6,.page-7,
.page-11,.page-12,.page-13,.page-14,.page-15,.page-16,.page-17,.page-18,.page-19,
.page-20,.page-21,.page-22,.page-23,.page-24,.page-25,.page-29{
  --gerbracht-page-spacer:4rem;
  background:#fff;
}

/* Die automatische TYPO3-Seitenkopfzeile wird auf den gestalteten Seiten zur reinen weissen Ruhezone. */
.page-2 .page-hero,.page-3 .page-hero,.page-4 .page-hero,.page-5 .page-hero,.page-6 .page-hero,.page-7 .page-hero,
.page-11 .page-hero,.page-12 .page-hero,.page-13 .page-hero,.page-14 .page-hero,.page-15 .page-hero,.page-16 .page-hero,.page-17 .page-hero,.page-18 .page-hero,.page-19 .page-hero,
.page-20 .page-hero,.page-21 .page-hero,.page-22 .page-hero,.page-23 .page-hero,.page-24 .page-hero,.page-25 .page-hero,.page-29 .page-hero{
  display:block !important;
  height:var(--gerbracht-page-spacer);
  min-height:var(--gerbracht-page-spacer);
  padding:0 !important;
  margin:0 !important;
  background:#fff !important;
  border:0 !important;
}
.page-2 .page-hero > .wrap,.page-3 .page-hero > .wrap,.page-4 .page-hero > .wrap,.page-5 .page-hero > .wrap,.page-6 .page-hero > .wrap,.page-7 .page-hero > .wrap,
.page-11 .page-hero > .wrap,.page-12 .page-hero > .wrap,.page-13 .page-hero > .wrap,.page-14 .page-hero > .wrap,.page-15 .page-hero > .wrap,.page-16 .page-hero > .wrap,.page-17 .page-hero > .wrap,.page-18 .page-hero > .wrap,.page-19 .page-hero > .wrap,
.page-20 .page-hero > .wrap,.page-21 .page-hero > .wrap,.page-22 .page-hero > .wrap,.page-23 .page-hero > .wrap,.page-24 .page-hero > .wrap,.page-25 .page-hero > .wrap,.page-29 .page-hero > .wrap{
  display:none !important;
}

/* Unterer weisser Abstand exakt so hoch wie oben. */
.page-2 .site-footer,.page-3 .site-footer,.page-4 .site-footer,.page-5 .site-footer,.page-6 .site-footer,.page-7 .site-footer,
.page-11 .site-footer,.page-12 .site-footer,.page-13 .site-footer,.page-14 .site-footer,.page-15 .site-footer,.page-16 .site-footer,.page-17 .site-footer,.page-18 .site-footer,.page-19 .site-footer,
.page-20 .site-footer,.page-21 .site-footer,.page-22 .site-footer,.page-23 .site-footer,.page-24 .site-footer,.page-25 .site-footer,.page-29 .site-footer{
  margin-top:var(--gerbracht-page-spacer);
}

/* Anfrage besitzt einen eigenen blauen Hero. Deshalb wird der weisse Abstand davor als eigene Zone erzeugt. */
.page-8{
  --gerbracht-page-spacer:4rem;
  background:#fff;
}
.page-8 #main::before{
  content:"";
  display:block;
  height:var(--gerbracht-page-spacer);
  min-height:var(--gerbracht-page-spacer);
  background:#fff;
}
.page-8 .request-hero{
  margin:0 !important;
}
.page-8 .site-footer{
  margin-top:var(--gerbracht-page-spacer);
}

/* Auf Leistungs- und Inhaltsseiten soll der blaue Bereich ohne graue Zwischenkante beginnen/enden. */
.page-3 .content-landing,.page-4 .content-landing,.page-5 .content-landing,.page-6 .content-landing,.page-7 .content-landing,
.page-20 .content-landing,.page-21 .content-landing,.page-22 .content-landing,.page-23 .content-landing,.page-24 .content-landing,.page-25 .content-landing{
  margin-top:0;
  margin-bottom:0;
}

/* Produkt- und Katalogseiten erhalten denselben klaren Abschluss zum weissen unteren Spacer. */
.page-2 .page-content,.page-11 .page-content,.page-12 .page-content,.page-13 .page-content,.page-14 .page-content,.page-15 .page-content,.page-16 .page-content,.page-17 .page-content,.page-18 .page-content,.page-19 .page-content,.page-29 .page-content,
.page-8 .page-content{
  margin:0;
}

@media(max-width:680px){
  .page-2,.page-3,.page-4,.page-5,.page-6,.page-7,.page-8,
  .page-11,.page-12,.page-13,.page-14,.page-15,.page-16,.page-17,.page-18,.page-19,
  .page-20,.page-21,.page-22,.page-23,.page-24,.page-25,.page-29{
    --gerbracht-page-spacer:2.75rem;
  }
}

/* v17: Kontakt und Karriere fuellen kurze Viewports bis zum Footer.
   Das v16-Grunddesign bleibt erhalten: weisser Abstand oben und unten.
   Nur der blaue Hauptbereich waechst bei kurzen Seiten flexibel mit,
   damit unter dem dunklen Footer kein leerer weisser Restbereich erscheint. */
.page-6,
.page-7{
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}
.page-6 #main,
.page-7 #main{
  flex:1 0 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.page-6 .content-landing,
.page-7 .content-landing{
  flex:1 0 auto;
  width:100%;
}
.page-6 .site-footer,
.page-7 .site-footer{
  flex:0 0 auto;
}

/* v22: Impressum und Datenschutz als zwei eigenstaendige Rechtseiten im Gerbracht-Grunddesign */
.page-26,.page-27{
  --gerbracht-page-spacer:4rem;
  background:#fff;
}
.page-26 .page-hero,.page-27 .page-hero{
  display:block !important;
  height:var(--gerbracht-page-spacer);
  min-height:var(--gerbracht-page-spacer);
  padding:0 !important;
  margin:0 !important;
  background:#fff !important;
  border:0 !important;
}
.page-26 .page-hero>.wrap,.page-27 .page-hero>.wrap{
  display:none !important;
}
.page-26 .site-footer,.page-27 .site-footer{
  margin-top:var(--gerbracht-page-spacer);
}
.legal-landing{
  margin:0;
  padding:3rem 0 4.5rem;
  background:linear-gradient(115deg,#052c40 0%,#006c9d 52%,#008bc2 100%);
}
.legal-card{
  max-width:1040px;
  margin:0 auto;
  padding:clamp(1.7rem,4vw,3.4rem);
  background:#fff;
  color:var(--ink);
  border:1px solid rgba(5,44,64,.08);
  border-radius:26px;
  box-shadow:0 24px 65px rgba(0,20,35,.24);
}
.legal-card h1{
  margin:.45rem 0 1.25rem;
  font-size:clamp(2.5rem,5vw,4.6rem);
  line-height:1;
  letter-spacing:-.045em;
}
.legal-card h2{
  margin:2.2rem 0 .75rem;
  font-size:clamp(1.3rem,2vw,1.75rem);
  line-height:1.2;
}
.legal-card p,.legal-card li{
  color:#405763;
}
.legal-card a{
  color:var(--blue-dark);
  font-weight:750;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.legal-card hr{
  border:0;
  border-top:1px solid var(--line);
  margin:2rem 0;
}
.legal-lead{
  max-width:760px;
  margin:0 0 2.2rem;
  font-size:1.08rem;
}
.legal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.legal-grid>section{
  padding:1.45rem 1.5rem;
  border-radius:18px;
  background:#f3f7f9;
  border:1px solid var(--line);
}
.legal-grid>section h2{
  margin:.1rem 0 .7rem;
}
.legal-meta{
  margin-top:2.6rem;
  padding-top:1rem;
  border-top:1px solid var(--line);
  font-size:.86rem;
  color:var(--muted) !important;
}
@media(max-width:680px){
  .page-26,.page-27{--gerbracht-page-spacer:2.75rem}
  .legal-landing{padding:1.5rem 0 3rem}
  .legal-grid{grid-template-columns:1fr}
  .legal-card{border-radius:20px}
}

/* v23: Unternehmens- und Karriereseiten inhaltlich vervollstaendigt */
.company-values{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:.5rem;
}
.company-value,.process-steps article,.career-areas article,.training-grid article,.application-steps__grid article{
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  background:rgba(2,43,63,.30);
  padding:1.45rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.company-value>span,.process-steps article>span,.career-areas article>span,.training-grid article>span{
  display:block;
  margin-bottom:1.15rem;
  color:#a9def1;
  font-weight:900;
  letter-spacing:.08em;
}
.company-value h3,.process-steps h3,.career-areas h3,.training-grid h3,.application-steps__grid h3{
  margin:.15rem 0 .55rem;
  color:#fff;
}
.company-value p,.process-steps p,.career-areas p,.training-grid p,.application-steps__grid p{
  margin:0;
  color:#dbeef6;
}
.content-cta--company{margin-top:1.25rem}
.process-block{margin-top:2.4rem}
.process-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
  margin-top:1.1rem;
}
.quality-feature{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:2rem;
  align-items:center;
  margin-top:2.5rem;
  padding:1.35rem;
  border-radius:24px;
  background:rgba(2,43,63,.28);
  border:1px solid rgba(255,255,255,.16);
}
.quality-feature__media{
  min-height:280px;
  padding:1.4rem;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border-radius:18px;
  overflow:hidden;
}
.quality-feature__media img{
  display:block;
  max-width:100%;
  max-height:330px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.quality-feature__copy h2{margin:.4rem 0 1rem;font-size:clamp(2rem,3.4vw,3.6rem);color:#fff}
.quality-feature__copy p{color:#dbeef6}
.quality-note{
  margin:1.2rem 0 0;
  padding:1rem 1.1rem;
  border-radius:14px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.15);
}
.career-band,.career-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  margin-top:2rem;
  padding:1.6rem 1.7rem;
  border-radius:22px;
}
.career-band{
  background:rgba(2,43,63,.30);
  border:1px solid rgba(255,255,255,.16);
}
.career-band h2{margin:.35rem 0 .5rem;color:#fff}
.career-band p{margin:0;color:#dbeef6}
.career-status{
  background:#fff;
  color:var(--ink);
  box-shadow:0 16px 45px rgba(0,20,35,.18);
}
.career-status h3{margin:.35rem 0 .45rem;font-size:1.55rem}
.career-status p{margin:0;color:var(--muted);max-width:70ch}
.career-areas,.training-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:1.25rem;
}
.application-steps{margin-top:2.6rem}
.application-steps__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:1rem;
}
.application-steps__grid article>strong{
  display:grid;
  place-items:center;
  width:2rem;
  height:2rem;
  margin-bottom:1rem;
  border-radius:50%;
  background:#fff;
  color:#006c9d;
  font-size:.95rem;
}
@media(max-width:980px){
  .company-values,.process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quality-feature{grid-template-columns:1fr}
}
@media(max-width:680px){
  .company-values,.process-steps,.career-areas,.training-grid,.application-steps__grid{grid-template-columns:1fr}
  .career-band,.career-status{align-items:flex-start;flex-direction:column}
  .career-band .btn,.career-status .btn{width:100%;text-align:center}
  .quality-feature{padding:1rem;border-radius:18px}
  .quality-feature__media{min-height:220px;padding:1rem}
}

/* v23C: browser-based job application form on Stellenangebote */
.page-23 .application-form-shell{
  margin-top:1.1rem;
  padding:1.5rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:rgba(4,48,68,.48);
}
.page-23 .application-form-intro{margin-bottom:1rem;color:#fff}
.page-23 .application-form-intro h2{font-size:clamp(1.8rem,2.8vw,2.6rem);line-height:1.05;margin:.35rem 0 .5rem}
.page-23 .application-form-intro p{margin:.3rem 0;color:#dbeef6;max-width:800px}
.page-23 .application-privacy a{text-decoration:underline;font-weight:800}
.page-23 .application-form-shell .frame-type-form_formframework,
.page-23 .application-form-shell .form-framework,
.page-23 .application-form-shell form{background:#fff;border-radius:20px}
.page-23 .application-form-shell .frame-type-form_formframework{padding:1.7rem 1.9rem;box-shadow:0 18px 45px rgba(0,20,35,.2)}
.page-23 .application-form-shell form{color:var(--ink)}
.page-23 .application-form-shell form label{display:block;font-weight:800;color:#17323e;margin-bottom:.38rem}
.page-23 .application-form-shell form input[type="text"],
.page-23 .application-form-shell form input[type="email"],
.page-23 .application-form-shell form input[type="tel"],
.page-23 .application-form-shell form textarea,
.page-23 .application-form-shell form select{width:100%;border:1px solid #b9ced8;border-radius:12px;background:#f8fbfc;color:#17323e;padding:.78rem .9rem;font:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.page-23 .application-form-shell form textarea{resize:vertical;min-height:115px}
.page-23 .application-form-shell form input:focus,
.page-23 .application-form-shell form textarea:focus,
.page-23 .application-form-shell form select:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(0,124,176,.12)}
.page-23 .application-form-shell form input[readonly]{background:#eaf5f9;border-color:#88bdd1;color:#0b5e82;font-weight:800}
.page-23 .application-form-shell form .form-group,
.page-23 .application-form-shell form .form-element,
.page-23 .application-form-shell form .mb-3{margin-bottom:1rem}
.page-23 .application-form-shell form input[type="checkbox"]{width:1.15rem;height:1.15rem;accent-color:var(--blue);margin-right:.45rem;vertical-align:-.15rem}
.page-23 .application-form-shell form button[type="submit"],
.page-23 .application-form-shell form input[type="submit"]{border:0;border-radius:999px;padding:.9rem 1.35rem;background:var(--blue);color:#fff;font-weight:850;cursor:pointer}
.page-23 .application-form-shell form button[type="submit"]:hover,
.page-23 .application-form-shell form input[type="submit"]:hover{background:#006b98}
@media(max-width:620px){.page-23 .application-form-shell{padding:.8rem}.page-23 .application-form-shell .frame-type-form_formframework{padding:1.1rem;border-radius:17px}}

/* V23D - Ausbildungsbewerbung 2027 */
.page-24 .application-form-shell{
  padding-top:1.2rem;
  padding-bottom:1.2rem;
}
.page-24 .application-form-intro{margin-bottom:1rem;color:#fff}
.page-24 .application-form-intro h2{font-size:clamp(1.8rem,2.8vw,2.6rem);line-height:1.05;margin:.35rem 0 .5rem}
.page-24 .application-form-intro p{margin:.3rem 0;color:#dbeef6;max-width:800px}
.page-24 .application-privacy a{text-decoration:underline;font-weight:800}
.page-24 .application-form-shell .frame-type-form_formframework,
.page-24 .application-form-shell .form-framework,
.page-24 .application-form-shell form{background:#fff;border-radius:20px}
.page-24 .application-form-shell .frame-type-form_formframework{padding:1.7rem 1.9rem;box-shadow:0 18px 45px rgba(0,20,35,.2)}
.page-24 .application-form-shell form{color:var(--ink)}
.page-24 .application-form-shell form label{display:block;font-weight:800;color:#17323e;margin-bottom:.38rem}
.page-24 .application-form-shell form input[type="text"],
.page-24 .application-form-shell form input[type="email"],
.page-24 .application-form-shell form input[type="tel"],
.page-24 .application-form-shell form textarea,
.page-24 .application-form-shell form select{width:100%;border:1px solid #b9ced8;border-radius:12px;background:#f8fbfc;color:#17323e;padding:.78rem .9rem;font:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.page-24 .application-form-shell form textarea{resize:vertical;min-height:115px}
.page-24 .application-form-shell form input:focus,
.page-24 .application-form-shell form textarea:focus,
.page-24 .application-form-shell form select:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(0,124,176,.12)}
.page-24 .application-form-shell form input[readonly]{background:#eaf5f9;border-color:#88bdd1;color:#0b5e82;font-weight:800}
.page-24 .application-form-shell form .form-group,
.page-24 .application-form-shell form .form-element,
.page-24 .application-form-shell form .mb-3{margin-bottom:1rem}
.page-24 .application-form-shell form input[type="checkbox"]{width:1.15rem;height:1.15rem;accent-color:var(--blue);margin-right:.45rem;vertical-align:-.15rem}
.page-24 .application-form-shell form button[type="submit"],
.page-24 .application-form-shell form input[type="submit"]{border:0;border-radius:999px;padding:.9rem 1.35rem;background:var(--blue);color:#fff;font-weight:850;cursor:pointer}
.page-24 .application-form-shell form button[type="submit"]:hover,
.page-24 .application-form-shell form input[type="submit"]:hover{background:#006b98}
@media(max-width:620px){.page-24 .application-form-shell{padding:.8rem}.page-24 .application-form-shell .frame-type-form_formframework{padding:1.1rem;border-radius:17px}}

/* v24: Karriere-Feinschliff und letzte Layout-Korrekturen */
/* Die bereits freigegebenen Unternehmensseiten bekommen ruhigere Headline-Umbrueche. */
.page-20 .split-feature__copy h2,
.page-21 .split-feature__copy h2{
  max-width:15ch;
  font-size:clamp(2.2rem,3.65vw,4.15rem);
}

/* Auf der allgemeinen Karriere-Seite steht die echte Fertigung im Vordergrund.
   Das IHK-Signet bleibt sichtbar, aber als kompakte Auszeichnung statt als Hauptmotiv. */
.page-6 .career-hero__visual{
  position:relative;
  min-width:0;
}
.page-6 .career-hero__photo{
  min-height:390px;
}
.page-6 .career-hero__photo img{
  min-height:390px;
  object-fit:cover;
}
.page-6 .career-hero__badge{
  position:absolute;
  right:1rem;
  bottom:1rem;
  width:min(215px,44%);
  padding:.55rem .65rem;
  background:#fff;
  border-radius:14px;
  box-shadow:0 12px 30px rgba(0,20,35,.24);
}
.page-6 .career-hero__badge img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.page-6 .career-band__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:.7rem;
}

/* Auch die kurze Anfahrt-Seite fuellt den Viewport wie Kontakt/Karriere,
   damit unter dem Footer kein ungewollter weisser Restbereich erscheint. */
.page-25{
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}
.page-25 #main{
  flex:1 0 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.page-25 .content-landing{
  flex:1 0 auto;
  width:100%;
}
.page-25 .site-footer{
  flex:0 0 auto;
}

@media(max-width:980px){
  .page-6 .career-hero__photo,
  .page-6 .career-hero__photo img{min-height:320px}
  .page-6 .career-hero__badge{width:min(190px,42%)}
}
@media(max-width:680px){
  .page-20 .split-feature__copy h2,
  .page-21 .split-feature__copy h2{max-width:none}
  .page-6 .career-hero__photo,
  .page-6 .career-hero__photo img{min-height:250px}
  .page-6 .career-hero__badge{right:.7rem;bottom:.7rem;width:min(165px,48%);padding:.4rem .5rem;border-radius:11px}
  .page-6 .career-band__actions{width:100%;justify-content:stretch}
  .page-6 .career-band__actions .btn{flex:1 1 100%;text-align:center}
}
