@import url('https://fonts.googleapis.com/css2?family=Karla:wght@400;500;600;700&family=Rubik:wght@400;500;600;700&display=swap');
:root{--blue:#005aa9;--gray:#54595f;--ink:#292c29;--line:#dfe4e9;--pale:#f3f6f8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font-family:Karla,Arial,sans-serif;font-size:17px;line-height:1.6}a{color:inherit}button,input,textarea{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3{font-family:Rubik,Arial,sans-serif;line-height:1.12;font-weight:500;letter-spacing:-.035em;margin:0}h1{font-size:clamp(38px,4.6vw,66px)}h2{font-size:clamp(30px,3.1vw,44px)}h3{font-size:25px}p{margin:0 0 22px}small{font-size:14px}.wrap{width:min(1160px,calc(100% - 72px));margin:auto}.preview{padding:9px 20px;background:#e9edf1;color:var(--gray);font-size:13px;text-align:center}.preview a{margin-left:14px;color:var(--blue);font-weight:700}.recruit-strip{background:var(--blue);color:white;font-size:14px}.recruit-strip .wrap{min-height:40px;display:flex;justify-content:space-between;align-items:center;gap:16px}.recruit-strip a{text-decoration:none;font-weight:700}.header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav{display:flex;align-items:center;justify-content:space-between;min-height:96px;gap:30px}.logo{flex-shrink:0;display:flex;align-items:center;text-decoration:none;gap:12px}.logo img{width:170px;height:72px;object-fit:contain}.nav-links{display:flex;align-items:center;gap:27px}.nav-links a{text-decoration:none;font-size:15px;font-weight:700}.nav-links a:hover,.nav-links a[aria-current]{color:var(--blue)}.button,.nav-links a.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 23px;border:1px solid var(--blue);border-radius:3px;background:var(--blue);color:white;font-weight:700;text-decoration:none;font-size:16px;cursor:pointer}.button:hover{background:#004780}.button.secondary{background:transparent;color:var(--blue)}.button.secondary:hover{background:#eef4f9}.menu{display:none;background:white;border:1px solid var(--line);padding:10px 15px;min-height:44px;color:var(--ink)}.hero{background:var(--pale)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:550px}.hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:62px 48px 62px 0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);margin-bottom:24px}.hero h1{margin-bottom:26px}.hero h1 span{color:var(--blue)}.hero .intro{color:var(--gray);font-size:19px;max-width:490px;line-height:1.55;margin-bottom:30px}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero-image{position:relative;min-width:0}.hero-image img{width:100%;height:100%;object-fit:cover;min-height:550px}.caption{position:absolute;bottom:18px;left:18px;background:white;padding:8px 13px;font-size:12px;color:var(--gray)}.trust{border-bottom:1px solid var(--line)}.trust .wrap{display:flex;justify-content:space-between;gap:24px;padding-top:23px;padding-bottom:23px;font-size:14px;font-weight:700}.trust b{color:var(--blue);font-weight:500;margin-right:9px}.section{padding:84px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head p{max-width:400px;color:var(--gray);margin:0}.section h2{max-width:640px}.section h2+.lead{margin-top:22px;max-width:750px;color:var(--gray);font-size:18px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service{border-top:3px solid var(--blue);background:var(--pale);padding:30px;min-width:0}.service .number{font-size:12px;font-weight:700;color:var(--blue);letter-spacing:.08em}.service h3{margin:18px 0}.service p{font-size:16px;color:var(--gray)}.textlink{color:var(--blue);font-weight:700;text-decoration:none;font-size:15px}.textlink:hover{text-decoration:underline}.projects{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px}.project{margin:0}.project img{height:260px;width:100%;object-fit:cover;background:var(--pale)}.project figcaption{padding:17px 0;border-bottom:1px solid var(--line);font-size:16px;font-weight:700}.project figcaption small{display:block;color:var(--gray);font-weight:400;margin-top:3px}.soft{background:var(--pale)}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about p{color:var(--gray);font-size:18px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:24px}.principle{border-top:1px solid var(--line);padding-top:20px}.principle strong{display:block;font-size:17px;color:var(--ink);margin-bottom:8px}.principle p{font-size:15px}.career-callout{background:var(--blue);color:white}.career-grid{display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:80px;padding-top:62px;padding-bottom:62px}.career-callout .eyebrow{color:white;opacity:.8;margin-bottom:17px}.career-callout p{opacity:.9;margin:21px 0 0;font-size:18px;max-width:650px}.career-callout .button{background:white;color:var(--blue);border-color:white;width:100%}.career-callout small{display:block;margin-top:14px;opacity:.85}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-details{border-left:3px solid var(--blue);padding-left:28px}.contact-details p{margin-bottom:16px}.contact-details a{color:var(--blue);text-decoration:none;font-weight:700}.footer{background:var(--ink);color:white;padding:30px 0}.footer .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px}.footer a{opacity:.8;text-decoration:none;margin-left:22px}.career-intro{background:var(--pale);padding:66px 0 72px}.career-intro .intro{max-width:760px;color:var(--gray);font-size:20px;margin-top:25px}.career-intro h1{max-width:900px}.job{border:1px solid var(--line);padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:34px;background:white}.job .location{color:var(--gray);font-size:14px;margin-top:10px}.tasks{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.task{border-top:3px solid var(--blue);padding-top:22px}.task .icon{width:42px;height:42px;color:var(--blue);margin-bottom:20px}.task p{color:var(--gray);font-size:16px;margin-top:18px}.open-details{border-left:3px solid var(--blue);padding:24px 30px;background:white}.open-details h3{margin-bottom:18px}.open-details ul{padding-left:20px;color:var(--gray)}.open-details .draft-note{font-size:14px;color:var(--blue);margin-bottom:0}.application{display:grid;grid-template-columns:1fr 1fr;gap:90px}.application h2{margin-bottom:24px}.application .steps{counter-reset:step}.step{display:flex;gap:18px;border-top:1px solid var(--line);padding:18px 0;color:var(--gray);font-size:16px}.step b{color:var(--blue);font-weight:500}.form{background:var(--pale);padding:30px}.form label{display:block;margin-bottom:17px;font-size:15px;font-weight:700}.form input,.form textarea{display:block;width:100%;background:white;border:1px solid #bac3cd;border-radius:2px;padding:12px;margin-top:7px;font-weight:400;min-width:0}.form textarea{min-height:115px;resize:vertical}.form .button{width:100%}.form .privacy{font-size:13px;color:var(--gray);margin:15px 0}.preview-result{padding:18px;background:white;border-left:3px solid var(--blue);margin-top:15px;font-size:15px}.preview-result[hidden]{display:none}.review{background:#edf2f5;border-top:1px solid var(--line);padding:30px 0}.review h2{font-size:22px;letter-spacing:0;margin-bottom:13px}.review p{font-size:15px;color:var(--gray);margin:0}.review a{color:var(--blue)}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;z-index:100;background:white;padding:10px}.review-field{width:100%;min-height:90px;padding:15px;border:1px solid var(--line);font:inherit;color:var(--gray);resize:vertical}.review-field-label{display:block;margin-top:18px;font-size:14px;color:var(--blue)}
@media(max-width:1000px){.wrap{width:calc(100% - 44px)}.nav-links{gap:18px}.nav-links a{font-size:14px}.hero-copy{padding-right:26px}.hero-grid{min-height:500px}.hero-image img{min-height:500px}.about{gap:48px}.career-grid,.contact-grid,.application{gap:45px}.service{padding:24px}.projects{gap:16px}.project img{height:230px}}
@media(max-width:760px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 36px)}.preview{font-size:12px;padding:8px 12px}.preview a{margin-left:10px}.recruit-strip .wrap{min-height:46px;font-size:12px;gap:12px}.recruit-strip .detail{display:none}.nav{min-height:82px;gap:15px}.logo img{width:150px;height:64px}.menu{display:block}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:22px;align-items:stretch;flex-direction:column;border-bottom:1px solid var(--line);gap:0}.nav-links.open{display:flex}.nav-links a{padding:13px;font-size:16px}.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding:42px 0}.hero .intro{font-size:18px}.hero-image img{height:330px;min-height:0}.hero h1{font-size:42px}.hero-image{margin-left:-18px;margin-right:-18px}.trust .wrap{flex-direction:column;gap:8px;padding-top:18px;padding-bottom:18px}.section{padding:54px 0}.section-head{display:block}.section-head p{margin-top:22px}.services,.projects,.about,.tasks,.application,.contact-grid,.career-grid{grid-template-columns:1fr;gap:28px}.project img{height:250px}.principles{gap:20px}.career-grid{padding-top:42px;padding-bottom:42px}.career-grid h2{font-size:36px}.contact-grid{gap:28px}.footer .wrap{align-items:flex-start;flex-direction:column}.footer a{margin-left:0;margin-right:20px}.career-intro{padding:43px 0}.career-intro h1{font-size:40px}.job{align-items:flex-start;flex-direction:column;padding:24px}.job .button{width:100%}.form{padding:22px}.tasks{gap:32px}.open-details{padding:24px}.actions .button{padding:12px 18px;font-size:15px}.application{gap:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Zweiter Entwurf: Firmenfarben, Materialwirkung und gezielte Bewegung. */
.hero{background:linear-gradient(115deg,#edf3f8 0%,#fff 62%)}.hero-copy{position:relative}.hero-copy:before{content:"";position:absolute;left:-20px;top:46px;width:76px;height:4px;background:var(--blue)}.hero-image{overflow:hidden;background:var(--gray)}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.15s ease;pointer-events:none}.hero-slide:first-child{position:relative}.hero-slide.active{opacity:1}.hero-slide img{height:100%;min-height:550px;object-fit:cover}.hero-controls{position:absolute;right:18px;bottom:18px;z-index:2;display:flex;gap:5px}.hero-controls button{border:1px solid #ddd;background:white;color:var(--blue);width:40px;height:40px;border-radius:3px;cursor:pointer;font-size:16px}.hero-controls button:hover{background:#e7f1fa}.caption{z-index:2;max-width:calc(100% - 160px)}.trust{background:var(--blue);color:white;border:0}.trust b{color:white;opacity:.65}.service{background:linear-gradient(150deg,#f3f6f8,#e6edf3);transition:transform .25s ease,box-shadow .25s ease}.service:hover{transform:translateY(-5px);box-shadow:0 12px 28px #292c2912}.service:nth-child(2){background:var(--blue);color:white;border-top-color:#292c29}.service:nth-child(2) p,.service:nth-child(2) .number,.service:nth-child(2) .textlink{color:white}.service:nth-child(3){background:var(--ink);color:white}.service:nth-child(3) p{color:#e2e7ed}.service:nth-child(3) .number,.service:nth-child(3) .textlink{color:#fff}.soft{background:linear-gradient(130deg,#edf3f8,#f5f6f6)}.project{overflow:hidden}.project img{transition:transform .55s ease}.project:hover img{transform:scale(1.035)}.career-callout{position:relative;overflow:hidden;background:linear-gradient(110deg,#005aa9 0%,#005aa9 65%,#292c29 100%)}.career-callout:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(125deg,transparent,transparent 60px,#ffffff08 60px,#ffffff08 61px);pointer-events:none}.career-grid{position:relative;z-index:1}.reveal{opacity:1}.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.motion-ready .reveal.visible{opacity:1;transform:none}.gallery-intro{background:linear-gradient(125deg,var(--ink),#414953);color:white;padding:64px 0}.gallery-intro .eyebrow{color:white;opacity:.7}.gallery-intro p{max-width:750px;color:#e3e8ec;margin:24px 0 0;font-size:19px}.gallery-nav{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.gallery-nav a{border:1px solid #ffffff70;padding:10px 19px;border-radius:3px;text-decoration:none;font-size:15px}.gallery-nav a:hover{background:var(--blue)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.gallery-item{margin:0;min-width:0}.gallery-item button{display:block;width:100%;padding:0;border:0;background:var(--gray);cursor:zoom-in;overflow:hidden}.gallery-item img{width:100%;height:260px;object-fit:cover;transition:transform .5s ease}.gallery-item button:hover img{transform:scale(1.035)}.gallery-item figcaption{font-size:15px;padding:12px 0;border-bottom:1px solid var(--line)}.gallery-item:first-child{grid-column:span 2}.gallery-item:first-child img{height:360px}.gallery-item:nth-child(2) img{height:360px}.gallery-section:nth-of-type(even){background:var(--pale)}.lightbox{border:0;border-radius:4px;padding:0;width:min(1100px,calc(100% - 30px));max-height:calc(100vh - 30px);background:#292c29;color:white}.lightbox::backdrop{background:#000c}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 18px;font-size:15px}.lightbox img{width:100%;height:min(68vh,730px);object-fit:contain;background:#1d201e}.lightbox-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 18px}.lightbox button{border:1px solid #ffffff70;border-radius:3px;background:transparent;color:white;min-height:44px;padding:8px 16px;cursor:pointer}.lightbox button:hover{background:var(--blue)}
@media(max-width:760px){.hero-copy:before{left:0;top:24px;width:45px;height:3px}.hero-slide img{min-height:0;height:330px}.hero-controls button{width:44px;height:44px}.caption{font-size:11px;left:12px;bottom:18px}.gallery-intro{padding:42px 0}.gallery-grid{grid-template-columns:1fr;gap:24px}.gallery-item:first-child{grid-column:auto}.gallery-item img,.gallery-item:first-child img,.gallery-item:nth-child(2) img{height:270px}.lightbox-bar{align-items:flex-start}.lightbox img{height:55vh}.gallery-nav{gap:9px}.gallery-nav a{padding:10px 13px}.lightbox-controls{flex-wrap:wrap}.lightbox-controls span{order:3;width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none;transition:none}.hero-slide,.project img,.gallery-item img,.service{transition:none}.service:hover,.project:hover img,.gallery-item button:hover img{transform:none}}

/* Abstimmung 13.10.: Bilder ohne sichtbare Beschriftung, dezente mittige Steuerung */
.caption,figcaption,#hero-caption,#lightbox-title{display:none!important}
.hero-controls{left:50%;right:auto;transform:translateX(-50%);align-items:center;justify-content:center;gap:10px;bottom:20px}
.hero-controls button{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;width:48px;height:48px;border-radius:14px;border:1px solid #ffffff80;background:#1c2c3c60;color:#fff;backdrop-filter:blur(8px);box-shadow:0 2px 12px #0002}
.hero-controls button:hover{background:#005aa9a6}.hero-controls button:focus-visible{outline-color:#fff}
.lightbox-controls{justify-content:center}.lightbox button{border-radius:12px}.benefits .service:nth-child(4){background:#f3f6f8;color:var(--ink)}

#zirkelbach,#zirkelbach .e-con{display:block;gap:0;min-height:0;--container-default-padding-top:0;--container-default-padding-right:0;--container-default-padding-bottom:0;--container-default-padding-left:0}#zirkelbach{padding:0;width:100%;max-width:none;color:#292c29;font:17px/1.6 Karla,Arial,sans-serif}#zirkelbach .elementor-widget{margin:0;max-width:none;min-width:0}#zirkelbach .elementor-widget-heading h1,#zirkelbach .elementor-widget-heading h2,#zirkelbach .elementor-widget-heading h3{color:inherit;font-family:Rubik,Arial,sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.035em}#zirkelbach h1{font-size:clamp(38px,4.6vw,66px)}#zirkelbach h2{font-size:clamp(30px,3.1vw,44px)}#zirkelbach h3{font-size:25px}#zirkelbach .wrap{width:min(1160px,calc(100% - 72px));margin:auto}#zirkelbach .hero-grid,#zirkelbach .services,#zirkelbach .projects,#zirkelbach .about,#zirkelbach .principles,#zirkelbach .career-grid,#zirkelbach .contact-grid,#zirkelbach .tasks,#zirkelbach .application,#zirkelbach .gallery-grid{display:grid}#zirkelbach .hero-copy,#zirkelbach .section-head,#zirkelbach .job,#zirkelbach .step{display:flex}#zirkelbach .hero-copy{padding:62px 48px 62px 0}#zirkelbach .section{padding:84px 0}#zirkelbach .service{padding:30px}#zirkelbach .career-grid{padding-top:62px;padding-bottom:62px}#zirkelbach .hero h1{margin-bottom:26px}#zirkelbach .hero h1 span{color:#005aa9}#zirkelbach .eyebrow p{margin-bottom:24px}#zirkelbach .form{padding:30px;background:#f3f6f8}#zirkelbach .elementor-form-fields-wrapper{display:flex;gap:15px;margin:0}#zirkelbach .elementor-field-group{width:100%;padding:0}#zirkelbach .elementor-field-label{font-weight:700;font-size:15px}#zirkelbach .elementor-field{background:white;border:1px solid #bac3cd;padding:12px;min-height:48px}#zirkelbach .elementor-button{background:#005aa9;color:white;border-radius:3px;min-height:48px;font:700 16px Karla,Arial,sans-serif}#zirkelbach .gallery-intro{padding:64px 0}#zirkelbach .hero-slide:first-child{height:100%}
@media(max-width:760px){#zirkelbach .wrap{width:calc(100% - 36px)}#zirkelbach .hero-grid,#zirkelbach .services,#zirkelbach .projects,#zirkelbach .about,#zirkelbach .career-grid,#zirkelbach .contact-grid,#zirkelbach .tasks,#zirkelbach .application,#zirkelbach .gallery-grid{grid-template-columns:1fr;gap:28px}#zirkelbach .hero-copy{padding:42px 0}#zirkelbach .section{padding:54px 0}#zirkelbach .section-head{display:block}#zirkelbach .career-grid{padding-top:42px;padding-bottom:42px}#zirkelbach h1{font-size:42px}#zirkelbach .gallery-intro{padding:42px 0}}

#zirkelbach .actions,#zirkelbach .trust .wrap,#zirkelbach .recruit-strip .wrap{display:flex}#zirkelbach .recruit-strip .wrap{justify-content:space-between;align-items:center}#zirkelbach .actions>.elementor-widget{width:auto}#zirkelbach>.elementor-widget-html:has(.header){position:sticky;top:0;z-index:10}#zirkelbach .header{position:static}

#zirkelbach .trust .wrap>.elementor-widget,#zirkelbach .recruit-strip .wrap>.elementor-widget{width:auto;text-align:left}#zirkelbach .step>.elementor-widget:first-child{width:auto}#zirkelbach .location .elementor-widget-container p{margin:0}

#zirkelbach .actions,#zirkelbach .section-head,#zirkelbach .job,#zirkelbach .step,#zirkelbach .trust .wrap,#zirkelbach .recruit-strip .wrap{flex-direction:row;align-items:center}#zirkelbach .actions{gap:14px}#zirkelbach .section-head{gap:30px;align-items:flex-end}#zirkelbach .job{padding:30px;gap:30px;justify-content:space-between}#zirkelbach .job>.elementor-widget-html{width:auto}#zirkelbach .step{padding:18px 0;gap:18px}#zirkelbach .trust .wrap{padding:23px 0}#zirkelbach .career-intro{padding:66px 0 72px}#zirkelbach .hero-copy{align-items:flex-start}#zirkelbach .open-details{padding:24px 30px}@media(max-width:760px){#zirkelbach .section-head{display:block}#zirkelbach .trust .wrap,#zirkelbach .job{flex-direction:column;align-items:flex-start}#zirkelbach .career-intro{padding:43px 0}#zirkelbach .job{padding:24px}#zirkelbach .job>.elementor-widget-html{width:100%}}

#zirkelbach .services,#zirkelbach .projects,#zirkelbach .principles{gap:24px}#zirkelbach .about{gap:90px}#zirkelbach .career-grid{gap:80px}#zirkelbach .contact-grid{gap:100px}#zirkelbach .application{gap:90px}#zirkelbach .tasks{gap:32px}#zirkelbach .gallery-grid{gap:22px}#zirkelbach .service h3{margin:18px 0}#zirkelbach .section-head>.e-con{width:auto;flex:1}#zirkelbach .section-head>.elementor-widget-text-editor{width:400px;flex-shrink:0}#zirkelbach .job>.e-con{width:auto;flex:1}@media(max-width:760px){#zirkelbach .services,#zirkelbach .projects,#zirkelbach .about,#zirkelbach .career-grid,#zirkelbach .contact-grid,#zirkelbach .application,#zirkelbach .gallery-grid{gap:28px}#zirkelbach .section-head>.elementor-widget-text-editor{width:100%}}

#zirkelbach .step>.elementor-widget-html:last-child{flex:1;width:auto}#zirkelbach .menu{border-radius:3px}@media(max-width:760px){#zirkelbach .form{padding:22px}}

#zirkelbach .wrap.section>.contact-grid{margin-top:35px}#zirkelbach .contact-grid h2{margin-bottom:22px}#zirkelbach .contact-map{margin-top:45px}#zirkelbach>.elementor-widget-template:has(.header){position:sticky;top:0;z-index:10}

.services.benefits,#zirkelbach .services.benefits{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.services.benefits,#zirkelbach .services.benefits{grid-template-columns:1fr}}

body.admin-bar #zirkelbach>.elementor-widget-html:has(.header),body.admin-bar #zirkelbach>.elementor-widget-template:has(.header){top:32px}@media(max-width:782px){body.admin-bar #zirkelbach>.elementor-widget-html:has(.header),body.admin-bar #zirkelbach>.elementor-widget-template:has(.header){top:46px}}
