@layer reset,base,components,responsive;
@font-face{font-family:Barlow;src:url('/fonts/barlow-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('/fonts/barlow-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('/fonts/barlow-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('/fonts/barlow-800.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@layer reset{*{box-sizing:border-box}body,h1,h2,h3,p,figure,dl,dd{margin:0}img,svg{max-inline-size:100%}img{display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}}
@layer base{
:root{--ink:#111827;--dark:#111827;--muted:#4B5563;--red:#D32F2F;--orange:var(--red);--paper:#FFF;--line:#D1D5DB;--tint:#F3F4F6;--concrete:#EAECEF;--container:1320px;--mono:'IBM Plex Mono','Courier New',monospace;color-scheme:light;font-family:Barlow,Arial,Helvetica,sans-serif;font-synthesis:none;color:var(--ink);background:var(--paper)}
html{scroll-behavior:smooth;scroll-padding-top:110px}body{font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--red)}h1,h2,h3{font-weight:700;line-height:1.04;letter-spacing:-.035em;text-wrap:balance}h1{font-weight:800;font-size:clamp(2.7rem,5vw,4.6rem)}h2{font-size:clamp(2rem,3.7vw,3.4rem)}h3{font-size:1.45rem;letter-spacing:-.02em;line-height:1.15}p{max-inline-size:76ch}p+p{margin-block-start:1rem}li+li{margin-block-start:.5rem}strong{font-weight:700}small,.muted{color:var(--muted)}small{font-size:.8rem}:focus-visible{outline:3px solid var(--red);outline-offset:5px}::selection{background:#f8c8c5;color:var(--ink)}.container{inline-size:min(var(--container),calc(100% - 80px));margin-inline:auto}.section{padding-block:80px;border-block-end:1px solid var(--line)}.section-tinted,.section-muted{background:var(--tint)}.technical-label,.eyebrow,.index{display:block;font-family:var(--mono);font-size:.64rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;line-height:1.6}.technical-label,.eyebrow{color:var(--muted);margin-block-end:19px}.index{margin-block-end:28px;color:var(--red)}.line-icon{display:block;flex-shrink:0;color:var(--red)}.arrow-icon{display:inline-block;vertical-align:middle;flex-shrink:0}.skip-link{position:fixed;inset:8px auto auto 8px;z-index:100;padding:12px;background:white;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.anchor-marker{display:block;scroll-margin-top:110px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-block-size:50px;padding:14px 22px;border:1px solid var(--ink);background:white;color:var(--ink);font-size:.9rem;line-height:1.25;font-weight:600;text-decoration:none;border-radius:0;transition:background .15s,color .15s}.button-primary{background:var(--red);border-color:var(--red);color:white}.button-primary:hover{background:#B82121;border-color:#B82121;color:white}.button-secondary:hover{background:var(--ink);color:white}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:var(--red);border-color:var(--red);color:white}.text-link{font-size:.87rem;font-weight:600}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block-start:30px}.hero-actions .button{flex-grow:0}.section-heading{margin-block-end:38px;max-inline-size:900px}.section-heading>p:not(.technical-label):not(.eyebrow){margin-block-start:25px;color:var(--muted)}.split-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;max-inline-size:none;align-items:end}.split-heading>p{color:var(--muted);font-size:1rem;max-inline-size:58ch}.content-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.content-grid h2+p,.content-grid h3+p{margin-block-start:22px}.content-grid p{color:var(--muted)}
}
@layer components{
.topbar{background:var(--tint);border-block-end:1px solid var(--line);padding-block:8px;font-family:var(--mono);font-size:.59rem;line-height:1.5}.topbar .container{display:flex;justify-content:space-between;gap:15px}.topbar a{text-decoration:none;white-space:nowrap}.topbar-hours{color:var(--muted)}.site-header{position:sticky;inset-block-start:0;z-index:30;background:#fff;border-block-end:1px solid var(--line)}.header-inner{min-block-size:94px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:inline-flex;flex-shrink:0;text-decoration:none}.brand-logo{inline-size:230px;block-size:auto}.primary-nav{display:flex;align-items:center;gap:26px}.primary-nav>a{white-space:nowrap;font-size:.84rem;font-weight:600;text-decoration:none}.primary-nav>a[aria-current=page]{color:var(--red);text-decoration:underline;text-decoration-thickness:2px}.primary-nav .nav-calculator{padding-inline-start:24px;border-inline-start:1px solid var(--line)}.primary-nav .button{font-size:.85rem}.menu-toggle{border:1px solid var(--ink);padding:10px 15px;background:#fff;font-weight:600;min-block-size:46px}.hero{background:var(--tint);border-block-end:1px solid var(--line)}.hero-layout{display:grid;grid-template-columns:1fr 1fr;border-inline:1px solid var(--line)}.hero-copy{padding:48px 46px 36px;background:linear-gradient(90deg,transparent calc(100% - 1px),#eaecef 1px),linear-gradient(transparent calc(100% - 1px),#eaecef 1px);background-size:80px 80px;min-inline-size:0;display:flex;flex-direction:column;align-items:flex-start}.hero-eyebrow{color:var(--red);font-size:.6rem;margin-block-end:28px}.hero-copy h1{font-size:clamp(3.1rem,4.65vw,4.75rem);line-height:.99;letter-spacing:-.045em;max-inline-size:15ch}.hero-lead{font-size:1.12rem;line-height:1.55;margin-block-start:27px;color:var(--muted);max-inline-size:51ch}.hero-tags{display:flex;flex-wrap:wrap;gap:8px 17px;list-style:none;padding:0;margin:25px 0 0}.hero-tags li{font-size:.79rem;font-weight:600;margin:0;display:flex;align-items:center;gap:6px}.hero-tags li:before{content:"";inline-size:5px;block-size:5px;background:var(--red)}.hero-copy .hero-actions{margin-block-start:28px;gap:10px}.hero-copy .button{font-size:.84rem;padding:14px 17px;gap:15px}.hero-spec{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);inline-size:100%;margin-block-start:36px}.hero-spec>div{padding:18px 10px 18px 0}.hero-spec>div+div{border-inline-start:1px solid var(--line);padding-inline-start:18px}.hero-spec dt{font-family:var(--mono);font-size:.57rem;text-transform:uppercase;color:var(--muted);margin-block-end:7px}.hero-spec dd{font-family:var(--mono);font-size:.65rem;line-height:1.7}.hero-note{font-size:.72rem;line-height:1.5;margin-block-start:18px;color:var(--muted)}.hero-tools{min-inline-size:0;border-inline-start:1px solid var(--line);background:#fff}.hero-photo{position:relative;background:var(--concrete)}.hero-photo picture,.hero-photo img{display:block;inline-size:100%;block-size:260px}.hero-photo img{object-fit:cover;object-position:center 53%}.hero-photo figcaption{display:flex;justify-content:space-between;padding:10px 22px;background:var(--concrete);font-family:var(--mono);font-size:.54rem;text-transform:uppercase;letter-spacing:.06em;border-block:1px solid var(--line);gap:15px}.hero-photo figcaption span:last-child{color:var(--muted)}.service-strip{background:#fff;border-block-end:1px solid var(--line)}.strip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-inline-start:1px solid var(--line)}.strip-grid p{padding:24px 26px;border-inline-end:1px solid var(--line);margin:0}.strip-grid .technical-label{margin-block-end:7px;color:var(--red);font-size:.57rem}.strip-grid strong{font-size:1.05rem}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-inline-start:1px solid var(--line);border-block:1px solid var(--line)}.service-card{padding:31px;display:flex;flex-direction:column;text-decoration:none;background:white;border-inline-end:1px solid var(--line);min-inline-size:0;transition:background .15s}.service-card:hover{color:var(--ink);background:var(--tint)}.service-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-block-end:35px}.service-card-top .technical-label{margin:0;font-size:.57rem}.service-card p{font-size:.97rem;line-height:1.6;color:var(--muted);margin:23px 0 28px}.service-card .text-link{margin-block-start:auto}.card{padding:30px;background:white;border:1px solid var(--line);min-inline-size:0}.card p{margin-block-start:20px;color:var(--muted);font-size:.95rem}.card a:not(.button){display:inline-block;margin-block-start:20px;font-size:.86rem;font-weight:600}.link-list{display:grid;margin-block-start:25px;list-style:none;padding:0}.link-list a{display:block;padding-block:17px;border-block-end:1px solid var(--line);font-size:.95rem;font-weight:600;text-decoration:none}.link-list li{margin:0}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:45px 0 0;border-inline-start:1px solid var(--line)}.steps li{margin:0;padding:20px 26px 15px;border-inline-end:1px solid var(--line);border-block-start:1px solid var(--line)}.step-top{display:flex;align-items:center;justify-content:space-between;margin-block-end:25px}.step-top span{font-family:var(--mono);font-size:3.1rem;line-height:1;color:var(--red);letter-spacing:-.08em}.step-top .line-icon{color:var(--ink);inline-size:26px}.steps h3{font-size:1.2rem}.steps p{font-size:.93rem;line-height:1.6;margin-block-start:17px;color:var(--muted)}.process-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;border-block-start:1px solid var(--line);padding-block-start:25px;margin-block-start:30px}.process-footer .technical-label{margin:0}.process-footer a{font-size:.86rem;font-weight:600}.location-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.location-card{padding:25px;background:#fff;border:1px solid var(--line);min-inline-size:0}.location-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-block-end:20px}.location-card-top .technical-label{margin:0;font-size:.58rem}.postal-code{font:600 .8rem var(--mono);color:var(--red)}.location-card h3{font-size:1.55rem;margin-block-end:15px}.location-card h3 a{text-decoration:none}.contact-hours{font-family:var(--mono);font-size:.68rem;color:var(--muted)}.location-contact{display:flex;flex-wrap:wrap;gap:15px;border-block-end:1px solid var(--line);padding-block:18px;margin-block-end:18px;font-size:.8rem}.location-cta{font-size:.85rem;font-weight:600;text-decoration:none}.plz-check{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#fff;border:1px solid var(--line);padding:32px;margin-block:35px}.plz-check .technical-label{color:var(--red);margin-block-end:10px}.plz-check h3{font-size:1.7rem}.plz-check label{font-size:.8rem;display:block;margin-block-end:7px;font-weight:600}.plz-input-row{display:flex;gap:10px}.plz-input-row input{font-family:var(--mono);min-inline-size:0}.plz-input-row .button{flex-shrink:0;font-size:.8rem}.plz-check form>p{font-size:.82rem;margin-block-start:10px}.plz-check form>a{display:inline-block;margin-block-start:10px}.region-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-block-start:30px}.region-footer p{font-size:.8rem;text-align:end;color:var(--muted)}details{border-block-end:1px solid var(--line);padding-block:19px}summary{cursor:pointer;font-weight:600;font-size:1rem;line-height:1.5;padding-inline-end:15px}details p{padding-block-start:15px;font-size:.95rem}details[open] summary{color:var(--red)}.faq h2{margin-block-end:26px}.contact-band{background:var(--tint);border-block-end:1px solid var(--line);padding-block:60px;border-block-start:3px solid var(--red)}.contact-band .container{display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-band h2{font-size:clamp(2.2rem,4vw,3.5rem)}.contact-band p:not(.technical-label){margin-block-start:20px;color:var(--muted)}.contact-band-actions{display:grid;justify-items:center;gap:22px;flex-shrink:0}.contact-band-actions>a:not(.button){font-family:var(--mono);font-size:.85rem;font-weight:600}.site-footer{padding-block:55px 22px;background:#fff;font-size:.9rem}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:65px}.footer-brand .brand-logo{inline-size:215px}.footer-grid>div>p:not(.contact-hours){margin-block:23px;font-size:.87rem;color:var(--muted);max-inline-size:40ch}.footer-grid>div>.contact-hours{margin-block-start:18px}.footer-phone{font-family:var(--mono);font-size:.95rem;font-weight:600}.footer-grid nav{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-grid nav strong{margin-block-end:12px}.footer-grid nav a{text-decoration:none;font-size:.85rem}.footer-areas{margin-block-start:35px;padding-block-start:25px;border-block-start:1px solid var(--line)}.footer-areas strong{font-size:.85rem}.footer-areas nav{display:flex;flex-wrap:wrap;gap:12px 25px;margin-block-start:15px}.footer-areas a{font-size:.8rem}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-block-start:1px solid var(--line);padding-block-start:24px;margin-block-start:30px;font-family:var(--mono);font-size:.6rem;line-height:1.8}.footer-bottom nav{display:flex;gap:22px}.mobile-contact-bar{display:none}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-family:var(--mono);font-size:.59rem;padding-block:18px;color:var(--muted)}.page-hero{background:var(--tint);padding-block:45px 60px;border-block-end:1px solid var(--line)}.page-hero-copy{max-inline-size:1000px}.page-hero-copy h1{max-inline-size:24ch}.page-hero-copy .hero-lead{max-inline-size:75ch;font-size:1.1rem}.prose{max-inline-size:860px;margin-inline:auto}.prose h2{font-size:2.35rem;margin-block:45px 23px}.prose h2:first-child{margin-block-start:0}.prose h3{margin-block:28px 18px}.prose ul,.prose ol{margin-block:20px}.prose>p,.prose li{color:var(--muted)}.notice{padding:20px 23px;border-inline-start:3px solid var(--red);background:var(--tint);margin-block:25px;font-size:.94rem}.notice p{margin:0}.notice p+*{margin-block-start:18px}.table-wrap{overflow:auto;max-inline-size:100%;border:1px solid var(--line);margin-block:27px}.table-wrap table{border-collapse:collapse;inline-size:100%;text-align:start;font-size:.88rem;line-height:1.55}caption{font-size:.78rem;text-align:start;font-weight:600;padding:17px;background:var(--tint);border-block-end:1px solid var(--line)}th,td{padding:15px 18px;vertical-align:top;border-block-end:1px solid var(--line);min-inline-size:120px}th{background:var(--tint);font-weight:600}tbody tr:last-child td,tbody tr:last-child th{border-block-end:0}.table-wrap th[scope=row]{font-family:var(--mono);font-size:.76rem}.grid,.cards,.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.section>.container>h2{margin-block-end:28px}.section>.container>p{margin-block:18px}.section>.container>.content-grid{margin-block-start:28px}.section>.container>.content-grid:has(>.card:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.field{display:flex;flex-direction:column;gap:7px;min-inline-size:0}.field label{font-size:.86rem;font-weight:600}.span-2{grid-column:1/-1}input,select,textarea{padding:12px 13px;background:#fff;border:1px solid #9CA3AF;border-radius:0;color:var(--ink);inline-size:100%;min-block-size:48px;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:var(--red)}input:user-invalid,textarea:user-invalid{border-color:var(--red)}input[type=radio],input[type=checkbox]{inline-size:20px;min-block-size:20px;accent-color:var(--red);flex-shrink:0}textarea{resize:vertical;min-block-size:120px}fieldset{border:0;padding:0;margin:0;min-inline-size:0}legend{font-size:.86rem;font-weight:600;margin-block-end:8px}.radio-row,.radio-options{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.radio-row input{margin:0}.radio-row label{display:flex;align-items:center;min-block-size:44px;font-size:.85rem;margin-inline-end:10px}.contact-grid>aside{position:sticky;inset-block-start:125px}.contact-grid h2{font-size:2.1rem;margin-block-end:20px}.contact-number{display:inline-block;font:600 1.5rem var(--mono);margin-block-start:15px}.contact-grid>aside>.notice{font-size:.85rem}.contact-grid>aside>p{font-size:.96rem}#inquiry-form{margin-block-start:25px}#inquiry-form>.muted{font-size:.78rem;margin-block:22px}.honeypot{display:none}.result{border:1px solid var(--line);border-block-start:3px solid var(--red);background:var(--tint);padding:25px;margin-block-start:28px}.result textarea{margin-block-start:10px}.result label{display:block;margin-block-start:22px;font-size:.85rem}.result .hero-actions .button{font-size:.8rem;padding:12px 14px}.inquiry-summary{white-space:pre-wrap;overflow-wrap:anywhere}.calculator-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}.calculator-teaser{padding:30px;background:var(--tint);border:1px solid var(--line)}.calculator-teaser p{margin-block:23px}.calculator-teaser small{display:block;margin-block-start:15px}
/* Engineering configurator */
.configurator{padding:32px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px #11182708;min-inline-size:0}.hero-tools .configurator{border:0;box-shadow:none;padding:25px 29px}.configurator-head{display:flex;justify-content:space-between;align-items:center;gap:18px;border-block-end:1px solid var(--line);padding-block-end:19px;margin-block-end:13px}.configurator-head .technical-label{font-size:.54rem;margin-block-end:7px}.configurator-head h2{font-size:1.65rem;letter-spacing:-.025em;line-height:1.1}.configurator-code{font:600 1.3rem var(--mono);color:var(--red)}.dimension-row{padding-block:9px;border-block-end:1px solid var(--concrete)}.dimension-label{display:flex;align-items:center;justify-content:space-between;gap:12px}.dimension-label>label{font-weight:600;font-size:.85rem}.dimension-value{display:flex;align-items:center;border:1px solid var(--line);background:var(--tint);inline-size:105px;min-inline-size:105px}.dimension-value input{inline-size:70px;min-inline-size:0;min-block-size:37px;border:0;padding:6px 9px;background:transparent;font:400 .85rem var(--mono)}.dimension-value span{font:400 .65rem var(--mono);color:var(--muted);padding-inline-end:8px}.dimension-range{--slider-track-size:3px;--slider-thumb-size:17px;appearance:none;inline-size:100%;block-size:28px;min-block-size:28px;margin:0;padding:0;border:0;background:transparent;cursor:pointer;accent-color:var(--red)}.dimension-range::-webkit-slider-runnable-track{height:var(--slider-track-size);background:linear-gradient(to right,var(--red) var(--range-progress,0%),#D1D5DB var(--range-progress,0%));border:0}.dimension-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;inline-size:var(--slider-thumb-size);block-size:var(--slider-thumb-size);margin-block-start:calc((var(--slider-track-size) - var(--slider-thumb-size))/2);background:#fff;border:2px solid var(--red);border-radius:0}.dimension-range::-moz-range-track{block-size:var(--slider-track-size);background:var(--line);border:0}.dimension-range::-moz-range-progress{block-size:var(--slider-track-size);background:var(--red)}.dimension-range::-moz-range-thumb{inline-size:var(--slider-thumb-size);block-size:var(--slider-thumb-size);background:#fff;border:2px solid var(--red);border-radius:0}.dimension-range:focus-visible{outline:2px solid var(--red);outline-offset:2px}.configurator-hint{font-size:.67rem;color:var(--muted);line-height:1.5;margin-block-start:9px}.configurator-calculate{font-size:.72rem;min-block-size:36px;padding:8px 14px;margin-block-start:12px}.configurator-result{padding-block-start:18px}.configurator-result>.technical-label{font-size:.56rem;margin-block-end:4px}.configurator-result output{display:block;font:600 2.8rem/1.2 var(--mono);letter-spacing:-.055em;color:var(--red);overflow-wrap:anywhere}.configurator-caveat{font-size:.65rem;color:var(--muted);line-height:1.5;margin-block:10px 17px}.configurator-result .button{inline-size:100%;font-size:.85rem;min-block-size:48px}.configurator noscript p{font-size:.85rem}.configurator-compact .configurator-calculate{margin-block-start:8px;min-block-size:30px;padding:5px 10px;font-size:.66rem}.configurator-compact .configurator-result{padding-block-start:13px}.configurator-compact .configurator-result output{font-size:2.45rem}.configurator-compact .configurator-caveat{margin-block:6px 12px;font-size:.6rem}.configurator-compact .configurator-hint{font-size:.61rem}.configurator-compact .configurator-head{padding-block-end:15px;margin-block-end:7px}
/* DIN catalogue */
.technical-catalog{background:var(--tint)}.catalog-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-block-end:25px}.catalog-toolbar h2{max-inline-size:18ch}.catalog-toolbar .technical-label{margin-block-end:17px;color:var(--red)}.catalog-filter{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);background:#fff;flex-shrink:0}.catalog-filter button{padding:11px 15px;border:0;border-inline-end:1px solid var(--line);background:white;color:var(--ink);font-size:.77rem;font-weight:600;min-block-size:44px}.catalog-filter button:last-child{border-inline-end:0}.catalog-filter button[aria-pressed=true]{background:var(--red);color:#fff}.class-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-inline-start:1px solid var(--line);border-block-start:1px solid var(--line);margin-block:32px 24px;background:white}.class-card{padding:26px 23px;border-inline-end:1px solid var(--line);border-block-end:1px solid var(--line);min-inline-size:0}.class-card>.technical-label{font-size:.58rem;margin-block-end:13px}.class-code{font:600 clamp(1.8rem,2.7vw,2.5rem)/1.2 var(--mono);letter-spacing:-.06em;color:var(--red)}.class-card>p:not(.technical-label){font-size:.85rem;line-height:1.5;margin-block-start:18px;min-block-size:64px;color:var(--muted)}.spec-pairs{margin-block-start:22px}.spec-pairs>div{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;border-block-start:1px solid var(--line);padding-block:10px;font-size:.63rem;line-height:1.6}.spec-pairs dt{color:var(--muted)}.spec-pairs dd{font-family:var(--mono);text-align:end;overflow-wrap:anywhere}.technical-catalog .notice{background:white;font-size:.85rem;border:1px solid var(--line);border-inline-start:3px solid var(--red);max-inline-size:none}.technical-catalog>.container>p{font-size:.92rem;color:var(--muted)}.technical-catalog .table-wrap{background:#fff}.spec-table th[scope=row]{font-weight:600;color:var(--red);font-size:1.1rem}.spec-table td{font-family:var(--mono);font-size:.7rem}.catalog-filter:not(:has(button:nth-child(4))){max-inline-size:100%}
/* Service area pages */
.local-summary{background:#fff;border-block-end:1px solid var(--line)}.local-summary-grid{display:grid;grid-template-columns:1fr 1.3fr 1.3fr}.local-summary-grid>div{padding:23px 25px;border-inline-start:1px solid var(--line);display:grid;gap:5px}.local-summary-grid>div:last-child{border-inline-end:1px solid var(--line)}.local-summary span{font:400 .58rem var(--mono);text-transform:uppercase;color:var(--muted)}.local-summary strong{font-family:var(--mono);font-size:.85rem;color:var(--ink)}.local-summary-grid>div:first-child strong{color:var(--red)}.local-subheading{margin-block-start:28px}.district-list{display:flex;flex-wrap:wrap;list-style:none;gap:8px;padding:0;margin-block:23px}.district-list li{font-size:.78rem;padding:7px 10px;border:1px solid var(--line);background:var(--tint);margin:0}.local-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.local-services article{border-block-start:2px solid var(--red);padding-block-start:22px}.local-services h3{font-size:1.25rem}.local-services p{font-size:.94rem;margin-block:18px;color:var(--muted)}.local-services a{font-size:.83rem;font-weight:600}.local-reading{max-inline-size:85ch}.local-reading p{color:var(--muted)}.local-faq{max-inline-size:900px}.local-sources{font-size:.8rem;margin-block-start:30px}.local-sources summary,.local-sources p{font-size:.82rem}.local-sources p{overflow-wrap:anywhere;max-inline-size:100ch}.grouped-places{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:30px}.grouped-places h3{font-size:1.3rem}.grouped-places .eyebrow{font-size:.58rem}.location-search{max-inline-size:550px;margin-block:30px 20px}.location-search label{display:block;font-size:.87rem;font-weight:600;margin-block-end:7px}.location-search p{font-size:.8rem;margin-block-start:8px}.location-search input{font-family:var(--mono);font-size:.85rem}.local-table{max-block-size:min(600px,80vh);overscroll-behavior:contain}.local-table thead{position:sticky;inset-block-start:0;z-index:2}.local-table tbody th{position:sticky;inset-inline-start:0;background:var(--tint);z-index:1}.region-list{display:grid}.region-list a{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-block:20px;border-block-end:1px solid var(--line);text-decoration:none;font-size:1.35rem;font-weight:600}.region-list a span{font-family:var(--mono);font-size:.65rem;font-weight:400}
}
@layer responsive{
@media(max-width:1250px){.primary-nav{gap:18px}.primary-nav>a{font-size:.78rem}.primary-nav .button{font-size:.78rem;padding-inline:17px}.primary-nav .nav-calculator{padding-inline-start:17px}.brand-logo{inline-size:210px}.header-inner{gap:25px}.hero-copy{padding-inline:35px}.hero-copy h1{font-size:4.5vw}.hero-copy .button{font-size:.75rem;padding-inline:13px;gap:10px}.catalog-toolbar{align-items:flex-start;flex-direction:column;gap:24px}.class-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.split-heading{gap:50px}}
@media(max-width:1100px){.container{inline-size:calc(100% - 56px)}.header-inner{min-block-size:82px;flex-wrap:wrap;padding-block:14px}.primary-nav{flex-basis:100%;flex-wrap:wrap;padding-block-end:10px}.js .menu-toggle{display:inline-flex;gap:15px;align-items:center}.js .primary-nav:not(.is-open){display:none}.js .primary-nav{max-block-size:calc(100dvh - 160px);overflow-y:auto;overscroll-behavior:contain;gap:0;padding:8px 0}.js .primary-nav>a{inline-size:100%;padding:13px 10px;font-size:1rem}.js .primary-nav .nav-calculator{border-inline-start:0;padding-inline-start:10px}.js .primary-nav .nav-cta{margin-block-start:10px}.hero-copy{padding:37px 29px}.hero-copy h1{font-size:clamp(2.8rem,4.65vw,3.5rem)}.hero-copy .hero-actions{flex-direction:column;inline-size:100%}.hero-copy .button{inline-size:100%;font-size:.85rem}.hero-spec{grid-template-columns:1fr}.hero-spec>div+div{border-inline-start:0;border-block-start:1px solid var(--line);padding-inline-start:0}.hero-spec>div{padding-block:13px}.hero-tools .configurator{padding-inline:24px}.hero-photo picture,.hero-photo img{block-size:235px}.hero-lead{font-size:1rem}.content-grid,.contact-grid{gap:40px}.local-services{grid-template-columns:1fr 1fr}.footer-grid{gap:40px}.class-grid{grid-template-columns:1fr 1fr}.service-card{padding:27px}.steps li{padding-inline:20px}.step-top span{font-size:2.6rem}}
@media(min-width:1101px){.menu-toggle{display:none!important}.primary-nav{display:flex!important}}
@media(max-width:800px){.section{padding-block:60px}.container{inline-size:calc(100% - 40px)}.hero-layout{grid-template-columns:1fr}.hero-copy{padding:42px 33px}.hero-copy h1{font-size:clamp(3rem,7vw,4.6rem);max-inline-size:19ch}.hero-copy .hero-actions{flex-direction:row}.hero-copy .button{inline-size:auto}.hero-spec{grid-template-columns:1fr 1fr}.hero-spec>div+div{border-block-start:0;border-inline-start:1px solid var(--line);padding-inline-start:18px}.hero-copy .hero-lead{max-inline-size:65ch}.hero-tools{border-inline-start:0;border-block-start:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.hero-photo picture,.hero-photo img{block-size:100%;min-block-size:100%;object-position:60% center}.hero-photo{display:flex;flex-direction:column}.hero-photo picture{flex:1}.hero-photo figcaption{flex-wrap:wrap;padding:12px;font-size:.5rem;gap:5px;border-block-end:0}.hero-tools .configurator{border-inline-start:1px solid var(--line);padding:24px}.hero-tools .configurator-head h2{font-size:1.4rem}.hero-tools .configurator-code{font-size:1.1rem}.hero-tools .configurator-head .technical-label{font-size:.49rem}.service-grid{grid-template-columns:1fr}.service-card{border-block-end:1px solid var(--line);min-block-size:0}.service-card:last-child{border-block-end:0}.service-card h3 br{display:none}.service-card-top{margin-block-end:22px}.service-card p{margin-block:20px 25px}.service-card .text-link{margin:0}.split-heading,.content-grid,.contact-grid,.calculator-layout{grid-template-columns:1fr;gap:30px}.split-heading>p{max-inline-size:75ch}.service-strip .strip-grid p{padding:19px 16px}.strip-grid strong{font-size:.9rem}.strip-grid .technical-label{font-size:.5rem}.location-cards{grid-template-columns:1fr 1fr}.plz-check{padding:25px;gap:25px;grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.steps li{padding-block:23px}.steps li:nth-child(n+3){border-block-start:1px solid var(--line)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div{grid-column:1/-1}.contact-grid>aside{position:static}.contact-band .container{align-items:flex-start}.contact-band h2{font-size:2.8rem}.contact-band-actions{padding-block-start:35px}.page-hero{padding-block:35px 45px}.page-hero-copy h1{font-size:clamp(2.5rem,6vw,3.6rem)}.grouped-places{grid-template-columns:1fr 1fr}.grid,.cards,.card-grid,.section>.container>.content-grid:has(>.card:nth-child(3)){grid-template-columns:1fr}.local-summary-grid>div{padding:20px 14px}.local-summary strong{font-size:.72rem}.local-summary span{font-size:.52rem}}
@media(max-width:650px){.hero-tools{display:block}.hero-photo picture,.hero-photo img{block-size:245px;min-block-size:0}.hero-tools .configurator{border-inline-start:0}.hero-tools .configurator-head h2{font-size:1.6rem}.hero-tools .configurator-head .technical-label{font-size:.57rem}.hero-tools .configurator-code{font-size:1.3rem}.hero-tools .configurator{padding:25px 27px}.hero-photo figcaption{flex-direction:row;justify-content:space-between;padding:11px 20px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.contact-band .container{flex-direction:column;gap:25px}.contact-band-actions{padding:0;justify-items:start;inline-size:100%}.contact-band-actions .button{inline-size:100%}.process-footer,.region-footer{align-items:flex-start;flex-direction:column;gap:20px}.region-footer p{text-align:start}.table-wrap:has(.spec-table),.table-wrap:has(.responsive-table){overflow:visible;border:0;max-block-size:none}.spec-table,.responsive-table,.spec-table tbody,.responsive-table tbody{display:block;inline-size:100%;min-inline-size:0}.spec-table thead,.responsive-table thead{position:absolute!important;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%)}.spec-table tr,.responsive-table tr{display:block;border:1px solid var(--line);background:#fff;margin-block-end:16px}.spec-table th[scope=row],.responsive-table th[scope=row]{display:block;position:static;font:600 1.4rem var(--mono);color:var(--red);padding:16px;border-block-end:1px solid var(--line);min-inline-size:0;max-inline-size:none}.spec-table td,.responsive-table td{display:grid;grid-template-columns:minmax(85px,.75fr) minmax(0,1.25fr);gap:16px;padding:13px 16px;min-inline-size:0;max-inline-size:none;overflow-wrap:anywhere;font-size:.8rem;border-block-end:1px solid var(--concrete)}.spec-table td:before,.responsive-table td:before{content:attr(data-label);font-family:Barlow,Arial,sans-serif;font-size:.75rem;color:var(--muted);font-weight:600}.spec-table caption,.responsive-table caption{display:block;margin-block-end:16px;border:1px solid var(--line);background:var(--concrete)}.local-table tbody th{position:static}}
@media(max-width:500px){html{scroll-padding-top:90px}.container{inline-size:calc(100% - 32px)}body{font-size:16px}.topbar .container{gap:12px;align-items:center}.topbar{font-size:.52rem;padding-block:7px}.topbar span:first-child{max-inline-size:180px}.topbar-hours{display:none}.header-inner{min-block-size:77px;padding-block:12px;gap:12px}.brand-logo{inline-size:190px}.menu-toggle{font-size:.8rem;padding:9px 12px;min-block-size:43px}.hero-layout{inline-size:100%;border-inline:0}.hero-copy{padding:35px 20px 28px}.hero-eyebrow{font-size:.54rem;margin-block-end:23px}.hero-copy h1{font-size:clamp(2.45rem,10.3vw,3.25rem);max-inline-size:19ch;line-height:1}.hero-lead{font-size:1.03rem;margin-block-start:23px}.hero-tags{gap:8px 14px;margin-block-start:23px}.hero-tags li{font-size:.76rem}.hero-copy .hero-actions{inline-size:100%;margin-block-start:25px}.hero-copy .button{flex:1 1 100%;font-size:.85rem;justify-content:space-between;padding:14px 17px}.hero-spec{margin-block-start:27px}.hero-spec dt{font-size:.49rem}.hero-spec dd{font-size:.59rem}.hero-spec>div{padding-inline-end:8px}.hero-spec>div+div{padding-inline-start:12px}.hero-note{font-size:.68rem}.hero-photo picture,.hero-photo img{block-size:225px}.hero-tools .configurator{padding:24px 20px}.section{padding-block:46px}.section-heading{margin-block-end:28px}.section-heading .technical-label{margin-block-end:17px}.section-heading h2{font-size:2.15rem}.strip-grid{grid-template-columns:1fr;border-inline:0}.service-strip .strip-grid p{padding:16px 0;border-inline-end:0;border-block-end:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.service-strip .strip-grid p:last-child{border-block-end:0}.strip-grid .technical-label{margin:0;font-size:.53rem}.strip-grid strong{font-size:.83rem;text-align:end}.service-card{padding:24px}.service-card h3{font-size:1.5rem}.service-card p{font-size:.95rem}.steps{grid-template-columns:1fr;border-inline-start:0;margin-block-start:30px}.steps li{border-inline-end:0;padding:23px 0}.step-top{margin-block-end:18px}.step-top span{font-size:3rem}.steps h3{font-size:1.3rem}.steps p{font-size:.95rem}.process-footer{margin-block-start:10px;padding-block-start:21px}.location-cards,.grouped-places,.local-services{grid-template-columns:1fr}.location-card{padding:24px}.location-card h3{font-size:1.7rem}.plz-check{padding:23px 20px}.plz-input-row{flex-wrap:wrap;gap:10px}.plz-input-row input{flex:1 1 100%}.plz-input-row .button{inline-size:100%;justify-content:space-between}.plz-check h3{font-size:1.65rem}.region-footer .button{inline-size:100%}.catalog-toolbar{gap:23px}.catalog-toolbar h2{font-size:2.2rem}.catalog-filter{display:grid;grid-template-columns:1fr 1fr;inline-size:100%}.catalog-filter button{font-size:.74rem;padding:12px 10px;border-block-end:1px solid var(--line)}.class-grid{grid-template-columns:1fr}.class-card{padding:25px}.class-code{font-size:2.4rem}.class-card>p:not(.technical-label){min-block-size:0;font-size:.92rem}.spec-pairs>div{font-size:.72rem;grid-template-columns:1fr 1fr}.spec-pairs{margin-block-start:20px}.technical-catalog .notice{font-size:.82rem;padding:18px}.technical-catalog>.container>p{font-size:.89rem}.contact-band{padding-block:43px}.contact-band h2{font-size:2.5rem}.contact-band p:not(.technical-label){font-size:.96rem}.site-footer{padding-block:40px 85px}.footer-grid{gap:33px 24px}.footer-grid nav strong{font-size:.85rem}.footer-grid nav a{font-size:.8rem}.footer-grid .contact-hours{font-size:.64rem}.footer-bottom{flex-wrap:wrap;gap:17px;font-size:.56rem}.footer-bottom>span{inline-size:100%}.footer-bottom nav{gap:18px}.footer-areas nav{gap:12px 20px}.mobile-contact-bar{display:grid;grid-template-columns:1fr 1.15fr;position:fixed;inset:auto 0 0;z-index:40;background:#fff;border-block-start:1px solid var(--line);padding-block-end:env(safe-area-inset-bottom)}.mobile-contact-bar a{display:flex;align-items:center;justify-content:center;min-block-size:54px;text-decoration:none;font-size:.9rem;font-weight:600}.mobile-contact-bar a:last-child{background:var(--red);color:white}.breadcrumbs{font-size:.52rem;padding-block:14px;gap:8px}.page-hero-copy h1{font-size:2.55rem;overflow-wrap:anywhere;max-inline-size:100%}.page-hero-copy .hero-lead{font-size:1rem}.page-hero{padding-block:30px 36px}.page-hero-copy .hero-actions{margin-block-start:24px}.page-hero-copy .hero-actions .button{inline-size:100%;justify-content:space-between}.local-summary-grid{grid-template-columns:1fr}.local-summary-grid>div{padding:15px 0;border-inline:0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-block-end:1px solid var(--line)}.local-summary-grid>div:last-child{border-inline:0;border-block-end:0}.local-summary strong{font-size:.73rem}.local-summary span{font-size:.54rem}.notice{padding:18px}.card{padding:24px}.contact-grid h2{font-size:1.9rem}.contact-number{font-size:1.25rem}.configurator{padding:24px 20px}.configurator-head h2{font-size:1.6rem}.configurator-result output{font-size:2.7rem}.configurator-caveat{font-size:.7rem}.configurator-hint{font-size:.7rem}.dimension-label>label{font-size:.9rem}.dimension-value input{font-size:.9rem}.dimension-range{min-block-size:36px;block-size:36px}.prose h2{font-size:1.95rem;margin-block-start:35px}.result{padding:22px}.result .hero-actions .button{inline-size:100%}.local-sources p{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(forced-colors:active){.button,.dimension-range::-webkit-slider-thumb{border:2px solid CanvasText}.hero-copy{background:Canvas}.class-card{border:1px solid CanvasText}.dimension-range{appearance:auto}}
}

@layer components {
/* Conversion paths retain native links, form controls and a readable local draft. */
.button-whatsapp{background:#fff;border-color:var(--ink);border-inline-start:4px solid var(--red);color:var(--ink);text-align:start}
.button-whatsapp:hover{background:var(--tint);color:var(--red)}
.inquiry-actions{display:grid;gap:12px;margin-block-start:24px}
.inquiry-actions .button{inline-size:100%;min-inline-size:0;justify-content:space-between;gap:14px;overflow-wrap:anywhere}
.inquiry-actions .button-secondary{font-weight:600}
.contact-grid aside>.notice{margin-block-start:24px}
.result .hero-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-block:24px}
.result .hero-actions .button{inline-size:100%;min-inline-size:0;justify-content:space-between;overflow-wrap:anywhere}
.copy-feedback:not(:empty),#copy-status:not(:empty){border-inline-start:3px solid var(--red);padding:12px;background:var(--tint);font-size:.9rem}
.reserve-control{padding-block:18px}
.reserve-control>label{display:block;font-size:.9rem;font-weight:600;margin-block-end:8px}
.reserve-control select{inline-size:100%;min-block-size:48px;padding:10px;border:1px solid #767676;background:#fff;color:var(--ink);font-size:1rem;border-radius:0}
.reserve-result{background:var(--tint);border:1px solid var(--line);border-inline-start:3px solid var(--red);padding:18px;margin-block-start:18px}
.reserve-result .technical-label{font-size:.62rem;margin-block-end:8px;line-height:1.6}
.reserve-result output{font-size:2.45rem}
.contact-band-actions{max-inline-size:440px}
.contact-band-actions .button-whatsapp{font-size:.86rem}
}
@layer responsive {
@media(max-width:650px){.contact-band-actions{max-inline-size:none}.reserve-result{padding:15px}.reserve-result output{font-size:2.15rem}}
@media(max-width:500px){.mobile-contact-bar a{gap:10px}.inquiry-actions .button,.result .hero-actions .button{font-size:.86rem;padding:14px 16px}.contact-grid aside>.button,.contact-grid aside p>.button{inline-size:100%;min-inline-size:0}.reserve-control select{font-size:1rem}}
}

@layer components {
.class-card{display:flex;flex-direction:column}
.class-card .class-use{display:block;margin-block-start:8px;color:var(--ink);font:600 1rem/1.25 Barlow,Arial,sans-serif;letter-spacing:normal;overflow-wrap:anywhere}
.class-card-actions{display:grid;gap:12px;margin-block-start:auto;padding-block-start:16px}
.class-card-actions .button{gap:8px;padding-inline:10px;font-size:.83rem;justify-content:space-between}
.class-card-actions .text-link{overflow-wrap:anywhere}
.technical-catalog [id]{scroll-margin-block-start:18px}
#wu-beton h3{margin-block-end:12px}
[data-calculator-grade]{margin-block:16px}
}
@layer responsive {
@media(min-width:1251px){#specification-catalog .class-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
}

@layer components {
  .home-shortcut {
    display: grid;
    gap: 4px;
    min-block-size: 44px;
    inline-size: 100%;
    align-content: center;
    text-decoration: none;
  }
  .home-shortcut strong { text-decoration: underline; text-underline-offset: .18em; }
  .home-shortcut > span { color: var(--muted); font-size: .86rem; }
  .location-hours { display: grid; gap: 6px; }
  .location-hours p { margin: 0; text-align: start; }
  .location-hours .location-contact { margin: 0; }
}
@layer responsive {
  @media (max-width: 500px) {
    .home-shortcut strong { text-align: start; }
  }
}
