:root{--ggsolutions-primary:#000000;--ggsolutions-primary-dark:#2b2b2b;--ggsolutions-secondary:#ebe9eb;--ggsolutions-text:#43454b;--ggsolutions-text-light:#6d6d6d;--ggsolutions-green:#c5e833}.gg-contact-container *{margin:0;padding:0;box-sizing:border-box}.gg-contact-container{max-width:1200px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:0 8px 32px rgb(0 0 0 / .08);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;border:1px solid var(--ggsolutions-secondary)}.gg-contact-container .gg-contact-header{background:linear-gradient(135deg,var(--ggsolutions-primary) 0%,var(--ggsolutions-primary-dark) 100%);color:#fff;text-align:center;padding:50px 30px;position:relative;overflow:hidden}.gg-contact-container .gg-contact-header::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c5e833' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;opacity:1}.gg-contact-container .gg-contact-title{font-size:2.5em;font-weight:700;color:#fff;margin-bottom:12px;position:relative;z-index:1;letter-spacing:1px}.gg-contact-container .gg-contact-subtitle{font-size:1.2em;font-weight:400;opacity:.9;position:relative;z-index:1;color:var(--ggsolutions-green);font-weight:500}.gg-contact-container .gg-contact-content{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:600px}.gg-contact-container .gg-contact-info{padding:50px 40px;background:var(--ggsolutions-secondary);display:flex;flex-direction:column;gap:40px}.gg-contact-container .contact-section{background:#fff;padding:30px;border-radius:16px;box-shadow:0 4px 20px rgb(0 0 0 / .08);border-left:4px solid var(--ggsolutions-green);animation:ggContactFadeInUp 0.6s ease-out}.gg-contact-container .contact-section:nth-child(2){animation-delay:0.2s}.gg-contact-container .section-title{display:flex;align-items:center;gap:12px;font-size:1.3em;font-weight:700;color:var(--ggsolutions-primary);margin-bottom:20px;border-bottom:2px solid var(--ggsolutions-secondary);padding-bottom:12px}.gg-contact-container .section-icon{width:24px;height:24px;color:var(--ggsolutions-green);flex-shrink:0}.gg-contact-container .info-content{line-height:1.7;color:var(--ggsolutions-text)}.gg-contact-container .info-content p{margin-bottom:8px}.gg-contact-container .info-content strong{color:var(--ggsolutions-primary);font-weight:600}.gg-contact-container .contact-item{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:12px;background:var(--ggsolutions-secondary);border-radius:10px;transition:all 0.3s ease}.gg-contact-container .contact-item:hover{background:var(--ggsolutions-green);transform:translateX(8px)}.gg-contact-container .contact-icon{width:20px;height:20px;color:var(--ggsolutions-primary);flex-shrink:0}.gg-contact-container .contact-item a{color:var(--ggsolutions-text);text-decoration:none;font-weight:600;transition:color 0.3s ease}.gg-contact-container .contact-item:hover a{color:var(--ggsolutions-primary)}.gg-contact-container .contact-item:hover .contact-icon{color:var(--ggsolutions-primary)}.gg-contact-container .gg-contact-interactive{padding:50px 40px;background:#fff;display:flex;flex-direction:column;gap:40px}.gg-contact-container .contact-form-section{flex:1}.gg-contact-container .form-title{font-size:1.4em;font-weight:700;color:var(--ggsolutions-primary);margin-bottom:20px;padding-bottom:10px;border-bottom:3px solid var(--ggsolutions-green);display:inline-block}.gg-contact-container .contact-form-wrapper{background:var(--ggsolutions-secondary);padding:30px;border-radius:12px;border:1px solid rgb(197 232 51 / .3)}.gg-contact-container .contact-form-wrapper .wpcf7-form{display:flex;flex-direction:column;gap:16px}.gg-contact-container .contact-form-wrapper .form-row{margin:0}.gg-contact-container .contact-form-wrapper label{display:block;font-size:13px;font-weight:600;color:var(--ggsolutions-text);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.gg-contact-container .contact-form-wrapper .form-field{width:100%!important;padding:12px 16px!important;border:1px solid #e1e5e9!important;border-radius:6px!important;background:#ffffff!important;font-size:15px!important;font-family:inherit!important;transition:all 0.2s ease!important;box-shadow:none!important;color:var(--ggsolutions-text)!important;line-height:1.4!important}.gg-contact-container .contact-form-wrapper .form-field:focus{border-color:var(--ggsolutions-green)!important;outline:none!important;box-shadow:0 0 0 3px rgb(197 232 51 / .1)!important}.gg-contact-container .contact-form-wrapper textarea.form-field{min-height:90px!important;resize:vertical!important;font-family:inherit!important}.gg-contact-container .contact-form-wrapper .form-privacy{margin:8px 0 0 0!important;padding:12px 16px;background:#f8f9fa;border-radius:6px;border-left:3px solid var(--ggsolutions-green)}.gg-contact-container .contact-form-wrapper .form-privacy label{display:flex!important;align-items:flex-start!important;gap:10px!important;font-size:13px!important;font-weight:500!important;color:var(--ggsolutions-text)!important;margin:0!important;text-transform:none!important;letter-spacing:normal!important;line-height:1.4!important}.gg-contact-container .contact-form-wrapper .form-privacy input[type="checkbox"]{margin:0!important;flex-shrink:0!important;margin-top:2px!important;accent-color:var(--ggsolutions-green)!important}.gg-contact-container .contact-form-wrapper .form-privacy a{color:var(--ggsolutions-green);text-decoration:none;font-weight:600}.gg-contact-container .contact-form-wrapper .form-privacy a:hover{text-decoration:underline}.gg-contact-container .contact-form-wrapper .form-submit{margin:16px 0 0 0!important}.gg-contact-container .contact-form-wrapper .submit-btn{background:var(--ggsolutions-primary)!important;color:#ffffff!important;border:none!important;padding:14px 32px!important;font-size:0!important;font-weight:600!important;border-radius:6px!important;cursor:pointer!important;transition:all 0.2s ease!important;text-transform:uppercase!important;letter-spacing:0.5px!important;width:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.gg-contact-container .contact-form-wrapper .submit-btn::before{content:"Nachricht senden"!important;font-size:14px!important;text-transform:uppercase!important;letter-spacing:0.5px!important}.gg-contact-container .contact-form-wrapper .submit-btn:hover{background:var(--ggsolutions-primary-dark)!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px rgb(0 0 0 / .15)!important}.gg-contact-container .contact-form-wrapper .submit-btn:active{transform:translateY(0)!important;box-shadow:0 2px 4px rgb(0 0 0 / .1)!important}.gg-contact-container .gg-contact-map-full-width{background:var(--ggsolutions-secondary);padding:50px 40px;border-top:3px solid var(--ggsolutions-green)}.gg-contact-container .map-header{text-align:center;margin-bottom:30px}.gg-contact-container .map-title{font-size:1.8em;font-weight:700;color:var(--ggsolutions-primary);margin-bottom:8px;letter-spacing:.5px}.gg-contact-container .map-subtitle{font-size:1.1em;color:var(--ggsolutions-text-light);font-weight:500;margin:0}.gg-contact-container .map-wrapper-full{max-width:1200px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 15px 50px rgb(0 0 0 / .15);border:4px solid #fff;transition:all 0.4s cubic-bezier(.4,0,.2,1);position:relative}.gg-contact-container .map-wrapper-full::before{content:'';position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;background:linear-gradient(45deg,var(--ggsolutions-green),var(--ggsolutions-primary),var(--ggsolutions-green));border-radius:24px;z-index:-1;opacity:0;transition:opacity 0.4s ease}.gg-contact-container .map-wrapper-full:hover{transform:translateY(-8px);box-shadow:0 25px 60px rgb(0 0 0 / .2)}.gg-contact-container .map-wrapper-full:hover::before{opacity:1}.gg-contact-container .map-wrapper-full iframe{display:block;border:none;border-radius:16px;transition:filter 0.3s ease}.gg-contact-container .map-wrapper-full:hover iframe{filter:contrast(1.1) saturate(1.1)}.gg-contact-container .wpcf7-response-output{border:none!important;padding:12px 16px!important;border-radius:6px!important;margin:16px 0 0 0!important;font-weight:500!important;font-size:14px!important}.gg-contact-container .wpcf7-mail-sent-ok{background:#d4edda!important;color:#155724!important;border-left:3px solid #28a745!important}.gg-contact-container .wpcf7-validation-errors,.gg-contact-container .wpcf7-mail-sent-ng{background:#f8d7da!important;color:#721c24!important;border-left:3px solid #dc3545!important}.gg-contact-container .wpcf7-spam-blocked{background:#fff3cd!important;color:#856404!important;border-left:3px solid #ffc107!important}.gg-contact-container .wpcf7-form .wpcf7-not-valid{border-color:#dc3545!important;box-shadow:0 0 0 3px rgb(220 53 69 / .1)!important}.gg-contact-container .wpcf7-form .wpcf7-not-valid-tip{color:#dc3545!important;font-size:12px!important;margin-top:4px!important;font-weight:500!important}.gg-contact-container .wpcf7-form.submitting .submit-btn{opacity:0.7!important;pointer-events:none!important}.gg-contact-container .wpcf7-form.submitting .submit-btn::before{content:"Wird gesendet..."!important;animation:ggContactLoadingDots 1.5s infinite!important}@keyframes ggContactLoadingDots{0%,20%{content:"Wird gesendet."!important}40%{content:"Wird gesendet.."!important}60%,100%{content:"Wird gesendet..."!important}}@keyframes ggContactFadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.gg-contact-container .gg-contact-content{grid-template-columns:1fr}.gg-contact-container .gg-contact-info{padding:40px 30px}.gg-contact-container .gg-contact-interactive{padding:40px 30px}.gg-contact-container .gg-contact-map-full-width{padding:40px 30px}.gg-contact-container .map-wrapper-full{border-radius:16px}}@media (max-width:768px){.gg-contact-container .gg-contact-header{padding:40px 20px}.gg-contact-container .gg-contact-title{font-size:2em}.gg-contact-container .gg-contact-info,.gg-contact-container .gg-contact-interactive{padding:30px 20px}.gg-contact-container .gg-contact-map-full-width{padding:30px 20px}.gg-contact-container .contact-section{padding:20px}.gg-contact-container .contact-form-wrapper{padding:20px}.gg-contact-container .section-title{font-size:1.2em}.gg-contact-container .map-title{font-size:1.6em}.gg-contact-container .map-subtitle{font-size:1em}.gg-contact-container .map-wrapper-full iframe{height:350px}.gg-contact-container .contact-form-wrapper .form-field{padding:14px!important;font-size:16px!important}.gg-contact-container .contact-form-wrapper .submit-btn{width:100%!important;padding:16px 32px!important}.gg-contact-container .contact-form-wrapper .form-privacy{padding:16px}.gg-contact-container .contact-form-wrapper .form-privacy label{font-size:14px!important}}@media (max-width:480px){.gg-contact-container{margin:0 10px;border-radius:12px}.gg-contact-container .gg-contact-header{padding:30px 15px}.gg-contact-container .gg-contact-title{font-size:1.8em}.gg-contact-container .gg-contact-info,.gg-contact-container .gg-contact-interactive{padding:20px 15px;gap:30px}.gg-contact-container .gg-contact-map-full-width{padding:30px 15px}.gg-contact-container .contact-section{padding:15px}.gg-contact-container .section-title{font-size:1.1em;flex-direction:column;gap:8px;text-align:center}.gg-contact-container .contact-item{padding:10px;flex-direction:column;text-align:center;gap:8px}.gg-contact-container .contact-item:hover{transform:translateY(-4px);background:var(--ggsolutions-green)}.gg-contact-container .map-title{font-size:1.4em}.gg-contact-container .map-wrapper-full{border-radius:12px;border-width:2px}.gg-contact-container .map-wrapper-full iframe{height:300px;border-radius:10px}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.contact-section{animation:fadeInUp 0.6s ease-out}.contact-section:nth-child(2){animation-delay:0.2s}.wpcf7-response-output{border:none!important;padding:15px 20px!important;border-radius:8px!important;margin-top:20px!important;font-weight:600!important}.wpcf7-mail-sent-ok{background:var(--ggsolutions-green)!important;color:var(--ggsolutions-primary)!important}.wpcf7-validation-errors{background:#ff6b6b!important;color:#ffffff!important}.contact-form-wrapper .form-row{margin-bottom:20px}.contact-form-wrapper .form-row:last-child{margin-bottom:0}.contact-form-wrapper .form-field{width:100%!important;padding:15px 20px!important;border:2px solid transparent!important;border-radius:10px!important;background:#ffffff!important;font-size:16px!important;font-family:inherit!important;transition:all 0.3s ease!important;box-shadow:0 2px 8px rgb(0 0 0 / .05)!important}.contact-form-wrapper .submit-btn{background:var(--ggsolutions-green)!important;color:var(--ggsolutions-primary)!important;border:none!important;padding:16px 32px!important;font-size:16px!important;font-weight:700!important;border-radius:10px!important;cursor:pointer!important;transition:all 0.3s cubic-bezier(.4,0,.2,1)!important;text-transform:uppercase!important;letter-spacing:0.5px!important}.contact-form-wrapper .submit-btn:hover{background:#b8d42e!important;transform:translateY(-3px)!important;box-shadow:0 8px 25px rgb(197 232 51 / .4)!important}.contact-form-wrapper .form-privacy{font-size:14px;color:var(--ggsolutions-text-light)}.contact-form-wrapper .form-privacy a{color:var(--ggsolutions-green);text-decoration:none;font-weight:600}.contact-form-wrapper .form-privacy a:hover{text-decoration:underline}