:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f8faf7;min-width:320px;margin:0}.page{isolation:isolate;color:#1f2933;--contact-fade:0;background:linear-gradient(#f8faf7 0%,#edf3eb 40%,#f7f7f2 100%);min-height:100vh;position:relative}.page:before{content:"";z-index:-2;pointer-events:none;opacity:var(--contact-fade);background-color:#f7f7f2;background-image:url(/assets/siwy-work_bg_pattern-WP1boUaV.png);background-repeat:repeat;background-size:300px;transition:opacity .24s linear;position:fixed;inset:0}main{z-index:2;padding-top:0;position:relative}.site-header{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8faf7eb;border-bottom:1px solid #d9e3d5;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,3vw,3rem);transition:background-color .22s,border-color .22s;display:flex;position:sticky;top:0}.site-header.is-top{background:0 0;border-bottom-color:#0000}.site-header.is-scrolled{background:#f8faf7;border-bottom-color:#d9e3d5}.site-header.is-pv-visible{background:#fff;border-bottom-color:#d4ddd1}.brand-logo{width:clamp(240px,26vw,340px);height:auto;transition:width .26s;display:block}.brand-logo.is-compact{width:clamp(120px,13vw,170px)}.site-nav{display:block}.menu-toggle{display:none}.nav-list{gap:clamp(.8rem,2vw,1.5rem);margin:0;padding:0;list-style:none;display:flex}.nav-list a{letter-spacing:.02em;color:#1f2933;font-weight:700;text-decoration:none}.nav-list a:hover{color:#0f766e}.nav-list a.is-active{text-underline-offset:.22em;text-decoration:underline;text-decoration-thickness:2px}.hero{z-index:-1;pointer-events:none;border-radius:0;min-height:100vh;margin:0;position:fixed;inset:0;overflow:hidden}.hero-image{object-fit:cover;width:100%;height:100%;opacity:calc(1 - var(--contact-fade));transition:opacity .24s linear;display:block}.intro-section{color:#fff;width:min(50%,760px);min-height:calc(100svh - 88px);box-shadow:none;background:0 0;border:0;border-radius:1rem;flex-direction:column;justify-content:flex-end;margin:0 0 1rem clamp(1rem,3vw,3rem);padding:clamp(1.3rem,3vw,2rem) clamp(1.3rem,3vw,2rem) clamp(5.2rem,14vw,9rem);display:flex}.intro-section p{color:#004b77;background:#cdcd6f;margin:0;padding:10px;font-size:clamp(.95rem,2vw,1.2rem)}.intro-section .intro-subtitle{letter-spacing:.015em;margin-bottom:.4rem;font-size:clamp(1.1rem,2.6vw,1.7rem);font-weight:700}.intro-section h1{color:#004b77;background:#cdcd6f;margin:.25rem 0 0;padding:10px;font-size:clamp(1.8rem,5vw,3.8rem);line-height:1.1}.service-section{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#ffffffe6;border:1px solid #dbe5d6eb;border-radius:1rem;width:min(50%,760px);min-height:100vh;margin:0 0 0 clamp(1rem,3vw,3rem);padding:clamp(1.3rem,3vw,2rem);box-shadow:0 6px 18px #2b3a2814}#pv,#ev,#batteriespeicher,#smarthome{scroll-margin-top:calc(clamp(5rem,10vw,8rem) + 2em)}.contact-section{z-index:3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#ffffffeb;border:1px solid #dbe5d6eb;border-radius:1rem;width:min(50%,760px);min-height:100vh;margin:0;padding:clamp(1.3rem,3vw,2rem);position:relative;box-shadow:0 6px 18px #2b3a2814}.service-section+.service-section,.service-section+.contact-section{margin-top:1rem}.contact-row{z-index:3;align-items:flex-start;gap:1rem;margin:1rem 0 2.2rem clamp(1rem,3vw,3rem);display:flex;position:relative}.service-section:last-of-type{margin-bottom:1rem}.service-section h2,.contact-section h2{margin-top:0;margin-bottom:.5rem;font-size:clamp(1.35rem,3vw,2rem)}.service-section p{color:#334155;margin:0;font-size:clamp(1.03rem,1.4vw,1.18rem);line-height:2}.pv-cta{color:#004b77;cursor:pointer;background:#cdcd6f;border:0;border-radius:999px;width:fit-content;margin-top:1rem;margin-left:auto;padding:.7rem 1.2rem;font-size:1.2em;font-weight:700;display:block}.pv-cta:hover{filter:brightness(.96)}.contact-form{flex-direction:column;gap:1rem;display:flex}.contact-map{background:#fff;border:1px solid #d9e3d5;border-radius:.9rem;flex:1;width:min(32vw,460px);margin:0;overflow:hidden;box-shadow:0 6px 16px #0f172a14}.contact-map img{width:100%;height:auto;display:block}.contact-section>p{color:#334155;margin:0 0 1rem;font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.8}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.form-grid label{color:#1f2933;flex-direction:column;gap:.35rem;font-weight:600;display:flex}.form-grid input,.form-grid textarea{font:inherit;color:#0f172a;background:#fff;border:1px solid #c7d6c0;border-radius:.6rem;padding:.65rem .75rem}.form-grid textarea{resize:vertical}.full-width{grid-column:1/-1}.contact-form button{color:#fff;cursor:pointer;background:#0f766e;border:0;border-radius:999px;align-self:flex-start;align-items:center;gap:.55rem;padding:.7rem 1.2rem;font-size:1.2em;font-weight:700;display:inline-flex}.contact-form button:hover{background:#0c5f59}.contact-form button:disabled{opacity:.85;cursor:wait}.button-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite button-spin}.form-feedback{margin:0;font-weight:600}.form-feedback.success{color:#0f766e}.form-feedback.error{color:#b42318}@keyframes button-spin{to{transform:rotate(360deg)}}.site-footer{z-index:3;background-color:#103b33;background-image:linear-gradient(#103b33e6,#103b33e6),url(/assets/siwy-work_bg_pattern-WP1boUaV.png);background-repeat:repeat;background-size:300px;flex-wrap:wrap;justify-content:center;gap:1.2rem;padding:1.3rem 1rem;display:flex;position:relative}.site-footer a{color:#e5f5ea;font-weight:600;text-decoration:none}.footer-link{color:#e5f5ea;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.site-footer a:hover,.footer-link:hover{text-decoration:underline}.mobile-actions{display:none}.mobile-action-button{color:#fff;font:inherit;background:#0f766e;border:0;border-radius:999px;font-weight:700;text-decoration:none}.mobile-action-button img{filter:brightness(0)invert();width:.95rem;height:.95rem}.modal-overlay{z-index:40;background:#06110c94;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #dbe5d6;border-radius:1rem;width:min(760px,100%);max-height:85vh;padding:clamp(1.1rem,2vw,1.6rem);overflow:auto;box-shadow:0 14px 36px #0f172a40}.modal-card h2{margin:0 0 .7rem}.modal-card p{color:#334155;margin:0;line-height:1.6}.upload-form{gap:.8rem;display:grid}.upload-form label{color:#1f2933;flex-direction:column;gap:.35rem;font-weight:600;display:flex}.upload-form input[type=file]{color:#0f172a;background:#fff;border:1px solid #c7d6c0;border-radius:.6rem;padding:.45rem .55rem}.upload-submit{color:#fff;cursor:pointer;background:#0f766e;border:0;border-radius:999px;justify-self:start;align-items:center;gap:.5rem;padding:.65rem 1.1rem;font-weight:700;display:inline-flex}.upload-submit:hover{background:#0c5f59}.upload-submit:disabled{opacity:.85;cursor:wait}.modal-close{color:#004b77;cursor:pointer;background:#cdcd6f;border:0;border-radius:999px;margin-top:1rem;padding:.65rem 1rem;font-weight:700}@media (width<=1100px){.site-header{flex-wrap:wrap;align-items:center;gap:.8rem}.menu-toggle{cursor:pointer;background:#ffffffe6;border:1px solid #b7c8b2;border-radius:.6rem;flex-direction:column;justify-content:center;align-items:center;gap:.28rem;width:2.8rem;height:2.8rem;display:inline-flex}.menu-toggle span{background:#1f2933;border-radius:1px;width:1.2rem;height:2px;transition:transform .18s,opacity .18s;display:block}.menu-toggle.is-open span:first-child{transform:translateY(6px)rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.site-nav{width:100%;display:none}.site-nav.is-open{display:block}.nav-list{background:#fffffff5;border:1px solid #d9e3d5;border-radius:.8rem;flex-direction:column;gap:.6rem;width:100%;padding:.8rem;box-shadow:0 8px 16px #0f172a14}.nav-list a{padding:.45rem .25rem;display:block}.contact-row{flex-direction:column}.contact-section{width:calc(100% - 2rem)}.contact-map{width:calc(100% - 2rem);max-width:520px}}@media (width<=760px){.hero-image{object-position:83% center}.site-header{padding-top:.8rem;padding-bottom:.8rem}.brand{width:100%}.brand-logo{width:clamp(180px,48vw,240px)}.brand-logo.is-compact{width:clamp(130px,34vw,170px)}main{padding-top:0}.service-section{width:calc(100% - 2rem);margin-left:1rem}.contact-section{min-height:auto}.intro-section{width:calc(100% - 2rem);margin-left:1rem}.form-grid{grid-template-columns:1fr}.contact-map{max-width:calc(100% - 2rem)}.contact-form button{width:100%}.mobile-actions{left:.7rem;right:.7rem;bottom:calc(.7rem + env(safe-area-inset-bottom));z-index:30;opacity:0;pointer-events:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;transition:opacity .18s,transform .22s;display:grid;position:fixed;transform:translateY(120%)}.mobile-actions.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-action-button{justify-content:center;align-items:center;gap:.35rem;min-height:2.8rem;padding:.55rem .45rem;font-size:.82rem;display:inline-flex;box-shadow:0 8px 18px #0f172a40}}
