*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #8BC34A;--color-primary-dark: #689F38;--color-primary-light: #DCEDC8;--color-secondary: #4CAF50;--color-accent: #FFC107;--color-text: #2E7D32;--color-text-light: #2f7a3b;--color-background: #ffffff;--color-surface: #F1F8E9;--color-border: #C8E6C9;--color-text-secondary: #205729;--color-link: #1B5E20;--color-link-hover: #0F3D14;--color-instagram: #E1306C;--color-facebook: #1877F2;--font-family: "Roboto", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-family-heading: "Roboto Slab", "Roboto", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-family-brand: "Roboto", "Roboto Slab", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--hero-title-font-weight: 300;--hero-title-line-height: 1.15;--hero-title-letter-spacing: .5px;--hero-highlight-color: var(--color-primary);--hero-highlight-font-weight: 300;--btn-font-family: var(--font-family-heading);--btn-font-weight: 500;--btn-letter-spacing: .3px;--btn-line-height: 1.25;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--container-max-width: 1200px;--border-radius: .5rem;--border-radius-lg: 1rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1)}html,body{margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text);background-color:var(--color-background)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button,input[type=button],input[type=submit],input[type=reset]{font-family:var(--font-family);font-size:inherit;font-weight:400;line-height:1.15}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);letter-spacing:.5px}h1,h2{font-weight:500}h3,h4,h5,h6{font-weight:var(--btn-font-weight)}.header__title,.nav__title,.hero__title .hero__highlight,.logo-text{font-family:var(--font-family-brand);font-weight:300;letter-spacing:.75px}blockquote,.quote,.testimonial-quote{font-family:var(--font-family-heading);font-weight:var(--btn-font-weight);font-style:normal}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-link);color:#fff;padding:8px 16px;z-index:1000;border-radius:0 0 4px;text-decoration:none;transition:top .2s ease}.skip-link:focus{top:0}:focus-visible{outline:2px solid rgba(255,193,7,.9);outline-offset:2px;border-radius:4px;box-shadow:0 0 0 2px var(--color-background),0 0 0 4px #ffc1078c,0 2px 4px #00000014;transition:outline-color .12s ease,box-shadow .12s ease}img{max-width:100%;height:auto}.language-switcher{display:inline-flex;gap:4px}.language-switcher .language-option{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid #d1d5db;padding:4px 10px;font:inherit;font-size:.8rem;letter-spacing:.5px;cursor:pointer;border-radius:6px;line-height:1.2;color:#374151;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.language-switcher .language-option:hover{background:#f3f4f6}.language-switcher .language-option.is-active-language,.language-switcher .language-option[aria-pressed=true],.language-switcher .language-option[aria-checked=true]{background:var(--color-accent);color:#1f2937;border-color:#ffc107b3;font-weight:var(--btn-font-weight);box-shadow:0 0 0 1px #ffc107d9 inset,0 1px 3px #0000001f}.language-switcher .language-option__icon{font-size:1rem;line-height:1;transform:translateY(-1px)}.language-switcher .language-option__label{line-height:1.2;white-space:nowrap}.language-switcher .language-option:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-bg, #fff),0 0 0 4px #ffc1078c,0 2px 4px #00000014}.language-switcher--dropdown{position:relative;display:inline-block}.language-switcher--dropdown .language-trigger{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:4px 10px;font:inherit;font-size:.8rem;cursor:pointer;letter-spacing:.5px;display:inline-flex;align-items:center;gap:6px}.language-switcher--dropdown .language-trigger:after{content:"";border:4px solid transparent;border-top-color:#6b7280;margin-left:4px;transform:translateY(2px)}.language-switcher--dropdown[aria-expanded=true] .language-trigger:after{transform:rotate(180deg) translateY(-2px)}.language-switcher--dropdown .language-menu{position:absolute;top:110%;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:4px;box-shadow:0 4px 12px #0000001f,0 2px 4px #0000000f;min-width:120px;display:flex;flex-direction:column;z-index:60;animation:fadeInScale .14s ease}.language-switcher--dropdown .language-menu .language-option{border:0;background:transparent;border-radius:6px;text-align:left;padding:6px 8px;font-size:.8rem;letter-spacing:.5px;width:100%}.language-switcher--dropdown .language-menu .language-option:hover{background:#f3f4f6}.language-switcher--dropdown .language-menu .language-option.is-active-language{background:var(--color-accent);color:#111827;font-weight:600}@keyframes fadeInScale{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}a{color:var(--color-link);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-link-hover)}.cookie-consent{position:fixed;left:50%;bottom:var(--spacing-lg);transform:translate(-50%);max-width:min(520px,calc(100% - 2 * var(--spacing-lg)));background:#fffffff5;border:1px solid rgba(17,24,39,.08);border-radius:var(--border-radius-lg);box-shadow:0 24px 50px -24px #0f172a80,0 10px 18px -12px #0f172a40;z-index:1200;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.cookie-consent__content{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);animation:cookie-banner-in .22s ease-out}.cookie-consent__content h3{font-family:var(--font-family-heading);font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:var(--spacing-sm)}.cookie-consent__content p{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.5}.cookie-consent__options{display:grid;gap:var(--spacing-sm)}.cookie-option{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text)}.cookie-option input[type=checkbox]{margin-top:3px;accent-color:var(--color-primary)}.cookie-consent__buttons{display:flex;gap:var(--spacing-sm)}.cookie-consent__buttons .btn{flex:1 1 0;justify-content:center}.cookie-consent__note{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cookie-consent__note a{color:var(--color-link);text-decoration:underline;font-weight:600;text-underline-offset:4px}.cookie-consent__note a:hover{color:var(--color-link-hover)}@media (max-width: 768px){.cookie-consent{left:var(--spacing-md);right:var(--spacing-md);transform:none;max-width:none}.cookie-consent__buttons{flex-direction:column}.cookie-consent__buttons .btn{width:100%}}@keyframes cookie-banner-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-lg)}.btn{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:500;font-family:var(--font-family-heading);letter-spacing:.3px;line-height:1.25;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.btn--primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;box-shadow:0 4px 8px #8bc34a4d;transition:all .3s ease}.btn--primary:hover{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%);color:#fff;transform:translateY(-2px);box-shadow:0 6px 12px #8bc34a66}.btn--secondary{background-color:transparent;color:var(--color-link);border:2px solid var(--color-link);transition:all .3s ease}.btn--secondary:hover{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;border-color:var(--color-secondary);transform:translateY(-2px);box-shadow:0 4px 8px #8bc34a4d}.section-header{text-align:center;margin-bottom:var(--spacing-3xl)}.section-title{font-size:var(--font-size-3xl);font-weight:var(--btn-font-weight);font-family:var(--font-family-heading);color:var(--color-text);margin-bottom:var(--spacing-md)}.section-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.header{background-color:var(--color-background);box-shadow:var(--shadow-sm);position:fixed;top:0;left:0;right:0;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2}.header__content{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) 0}.header__brand{display:flex;align-items:center;gap:var(--spacing-sm)}.header__logo{height:40px;width:auto;filter:drop-shadow(2px 2px 4px rgba(139,195,74,.3))}.header__title{font-size:var(--font-size-xl);font-weight:300;font-family:var(--font-family-brand);color:var(--color-link);text-decoration:none}.nav{display:flex;align-items:center;gap:var(--spacing-lg)}.nav__brand{display:flex;align-items:center;gap:var(--spacing-sm)}.nav__logo{height:40px;width:auto;filter:drop-shadow(2px 2px 4px rgba(139,195,74,.3))}.nav__title{font-size:var(--font-size-xl);font-weight:300;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav__menu{display:flex;list-style:none;gap:var(--spacing-lg);align-items:center}.nav__link{color:var(--color-text);font-weight:300;transition:color .2s ease}.nav__link:hover{color:var(--color-primary)}.nav__link[aria-current=page],.nav__link.nav__link--current{color:var(--color-primary);font-weight:var(--btn-font-weight)}.language-switcher{position:relative;display:inline-block}.current-language{background:var(--color-primary);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);cursor:pointer;font-size:var(--font-size-sm);font-weight:300;transition:all .2s ease}.current-language:hover{background:var(--color-primary-dark)}.language-dropdown{position:absolute;top:100%;right:0;background:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);min-width:120px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;z-index:1000}.language-switcher:hover .language-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.language-option{display:block;width:100%;background:none;border:none;padding:var(--spacing-sm) var(--spacing-md);text-align:left;cursor:pointer;transition:background-color .2s ease;font-size:var(--font-size-sm);color:var(--color-text)}.language-option:hover{background-color:var(--color-background-light)}.language-option:first-child{border-radius:var(--border-radius) var(--border-radius) 0 0}.language-option:last-child{border-radius:0 0 var(--border-radius) var(--border-radius)}.nav__link--cta{background-color:var(--color-primary);color:#fff!important;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius)}.nav__link--cta:hover{background-color:var(--color-primary-dark);color:#fff!important}.nav__toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;gap:4px}.nav__toggle span{width:25px;height:3px;background-color:var(--color-text);transition:all .3s ease}.hero{padding:calc(80px + var(--spacing-3xl)) 0 var(--spacing-3xl);background:linear-gradient(135deg,var(--color-primary-light) 0%,#E8F5E8 50%,#F1F8E9 100%);position:relative}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="20" height="20" patternUnits="userSpaceOnUse"><path d="M 20 0 L 0 0 0 20" fill="none" stroke="%23C8E6C9" stroke-width="0.5" opacity="0.3"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:.3;z-index:1}.hero__container{position:relative;z-index:2}.hero__container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-3xl);align-items:center}.hero__title{font-size:var(--font-size-4xl);font-weight:var(--hero-title-font-weight);line-height:var(--hero-title-line-height);letter-spacing:var(--hero-title-letter-spacing);margin-bottom:var(--spacing-lg);color:var(--color-text)}.hero__highlight{color:var(--hero-highlight-color);font-weight:var(--hero-highlight-font-weight)}.hero__description{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);line-height:1.7}.hero__actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.hero__image img{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.services{padding:var(--spacing-3xl) 0;background-color:var(--color-surface)}.services__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-xl)}.service-card{background-color:var(--color-background);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:all .3s ease;border:1px solid var(--color-border);position:relative;overflow:hidden;display:flex;flex-direction:column}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-secondary) 100%);opacity:0;transition:opacity .3s ease}.service-card:hover{transform:translateY(-8px);box-shadow:0 12px 24px #8bc34a33;border-color:var(--color-primary-light)}.service-card:hover:before{opacity:1}.service-card--hidden.show{display:block;animation:fadeInUp .6s ease forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.service-card__icon{width:60px;height:60px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);box-shadow:0 4px 8px #8bc34a4d;transition:transform .2s ease,box-shadow .2s ease}.service-card:hover .service-card__icon{transform:translateY(-2px);box-shadow:0 6px 12px #8bc34a66}.service-card__icon img{width:30px;height:30px;filter:brightness(0) invert(1)}.service-card__badge{position:absolute;top:-12px;left:var(--spacing-lg);background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-primary) 100%);color:#fff;font-size:var(--font-size-sm);font-weight:var(--btn-font-weight);padding:calc(var(--spacing-xs) * .75) var(--spacing-md);border-radius:999px;box-shadow:0 4px 12px #0000002e;letter-spacing:.35px;text-transform:uppercase}.service-card__badge--new{background:linear-gradient(135deg,var(--color-accent) 0%,#ff9800 100%);color:#1f2937}.service-card--highlight{border:2px solid var(--color-accent);box-shadow:0 16px 32px #8bc34a33}.service-card__title{font-size:var(--font-size-xl);font-weight:300;color:var(--color-text);margin-bottom:var(--spacing-md)}.service-card__description{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);line-height:1.6}.service-card__link{color:var(--color-link);font-weight:500;font-weight:var(--btn-font-weight);transition:color .2s ease;margin-top:auto;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}.service-card__link:hover{color:var(--color-link-hover)}.about{padding:var(--spacing-3xl) 0}.about__content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-3xl);align-items:center}.about__title{font-size:var(--font-size-3xl);font-weight:300;color:var(--color-text);margin-bottom:var(--spacing-lg)}.about__description{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);line-height:1.7}.about__features{display:flex;flex-direction:column;gap:var(--spacing-lg)}.feature--banner{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xl);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-primary-light);background:linear-gradient(135deg,#8bc34a1f,#4caf5014);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;width:100%}.about__leitbild-banner{margin-top:var(--spacing-2xl)}.feature--banner:hover,.feature--banner:focus-visible{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.feature--banner__content h3{margin:0 0 var(--spacing-xs) 0;font-weight:400;color:var(--color-primary-dark)}.feature--banner__content p{margin:0;color:var(--color-text)}.feature--banner__cta{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);border-radius:999px;background:var(--color-background);color:var(--color-primary-dark);font-weight:var(--btn-font-weight);letter-spacing:.3px;box-shadow:var(--shadow-sm);transition:background .2s ease,color .2s ease,box-shadow .2s ease}.feature--banner:hover .feature--banner__cta,.feature--banner:focus-visible .feature--banner__cta{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-md)}@media (max-width: 768px){.feature--banner{flex-direction:column;align-items:flex-start;gap:var(--spacing-lg)}.feature--banner__cta{width:100%}}.feature h3{color:var(--color-text);font-weight:300;margin-bottom:var(--spacing-xs)}.feature p{color:var(--color-text-secondary)}.about__image img{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.contact{padding:var(--spacing-3xl) 0;background-color:var(--color-surface)}.contact__content{display:block}.contact__info{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.contact-item{background:var(--color-background);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);border:1px solid var(--color-border);position:relative;overflow:hidden;transition:all .3s ease;box-shadow:var(--shadow-sm)}.contact-item:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.contact-item:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-light)}.contact-item:hover:before{transform:scaleX(1)}.contact-item h3{color:var(--color-primary);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:300;display:flex;align-items:center;gap:var(--spacing-xs)}.contact-item p{margin:0;color:var(--color-text);line-height:1.6}.contact-item a:hover{color:var(--color-secondary)}.contact-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-detail{display:flex;flex-direction:column;gap:var(--spacing-xs)}.contact-detail strong{font-size:var(--font-size-sm);font-weight:300;color:var(--color-link)}.contact-detail a{color:var(--color-text);text-decoration:none;font-weight:300}.contact-detail a:hover{color:var(--color-primary)}.opening-hours{display:flex;flex-direction:column;gap:2px}.opening-hours-row{display:flex;justify-content:space-between;align-items:center;padding:3px 0;border-bottom:1px solid rgba(139,195,74,.1)}.opening-hours-row:last-child{border-bottom:none}.opening-hours-row .day{font-weight:300;color:var(--color-text);min-width:30px;flex:0 0 30px}.opening-hours-row .time{font-weight:300;color:var(--color-text);text-align:right}.opening-hours-row .time.closed{color:var(--color-text-muted);font-style:italic}.social-links{display:flex;flex-wrap:wrap;flex-direction:row;gap:var(--spacing-sm)}.social-links a:not(.btn){padding:var(--spacing-xs) 0;border-bottom:1px solid transparent;transition:all .2s ease}.social-links a:not(.btn):hover{border-bottom-color:var(--color-primary-light)}.social-links .btn{font-size:var(--font-size-sm);padding:calc(var(--spacing-xs) + 2px) var(--spacing-md);line-height:1.2}.social-links .btn.btn--secondary:hover{transform:translateY(-2px);box-shadow:0 4px 8px #8bc34a40}.quick-contact{border-top:2px solid var(--color-border);padding-top:var(--spacing-lg)}.quick-contact-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-top:var(--spacing-md)}.quick-contact-buttons .btn{flex:1;min-width:150px;justify-content:center;font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md)}.quick-contact-buttons .btn--primary,.quick-contact-buttons .btn--primary:hover{color:#fff!important}.quick-contact-buttons .btn--secondary{color:var(--color-link)}.quick-contact-buttons .btn--secondary:hover{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff!important;border-color:var(--color-secondary)}.contact-form-container{background-color:var(--color-background);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:2px solid var(--color-primary-light);overflow:hidden;transform:translateY(20px);opacity:0;visibility:hidden;max-height:0;transition:all .4s cubic-bezier(.4,0,.2,1);margin-top:var(--spacing-xl)}.contact-form-container.show{transform:translateY(0);opacity:1;visibility:visible;max-height:2000px}.contact-form-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:#fff;padding:var(--spacing-lg);position:relative}.contact-form-header h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:500}.contact-form-header p{margin:0;opacity:.9;font-size:var(--font-size-base)}.close-form{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-form:hover{background:#ffffff4d;transform:scale(1.1)}.contact-form{padding:var(--spacing-xl);background-color:var(--color-background)}.captcha-input-group{display:flex;gap:var(--spacing-sm);align-items:center}.captcha-input-group input{flex:1;min-width:0}@media (max-width: 480px){.captcha-input-group{gap:var(--spacing-xs);width:100%;max-width:100%}.captcha-input-group input{flex:1;min-width:0;width:calc(100% - 50px)}.captcha-input-group .btn--small{flex:0 0 45px;padding:8px;min-width:45px;max-width:45px;font-size:14px;border-radius:4px;overflow:hidden}.contact-details{gap:var(--spacing-xs)}.contact-detail strong{font-size:var(--font-size-xs)}.opening-hours-row{padding:2px 0}.opening-hours-row .day{min-width:25px;flex:0 0 25px;font-size:var(--font-size-sm)}.opening-hours-row .time{font-size:var(--font-size-sm)}}.btn--small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);min-width:auto}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.form-actions .btn{flex:1}@keyframes slideInUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.contact-form-container.show .contact-form{animation:slideInUp .5s ease .2s both}@media (max-width: 768px){.contact__content{display:block}.contact-info-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.contact-item{padding:var(--spacing-md)}.contact-item h3{font-size:var(--font-size-base)}.quick-contact-buttons{flex-direction:column}.quick-contact-buttons .btn{flex:none;width:100%}.form-actions{flex-direction:column}.contact-form-container{margin-top:var(--spacing-md)}.contact-form,.contact-form-header{padding:var(--spacing-md)}}@media (max-width: 480px){.contact-info-grid{grid-template-columns:1fr}}.contact-item h3{color:var(--color-text);font-weight:300;margin-bottom:var(--spacing-sm)}.contact-item p{color:var(--color-text)}.social-links .social-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);flex:1 1 100%;justify-content:center}.social-links .social-icon svg{display:block}.social-links .social-link:hover .social-icon svg{transform:scale(1.08);transition:transform .2s ease}.social-link[data-platform=instagram]{background:linear-gradient(45deg,#f58529,#feda77 18%,#dd2a7b 40%,#8134af,#515bd4);color:#fff;border:none;box-shadow:0 2px 6px #0000002e}.social-link[data-platform=instagram] .social-icon svg{stroke:currentColor}.social-link[data-platform=instagram]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000047}.social-link[data-platform=facebook]{background:var(--color-facebook);color:#fff;border:none;box-shadow:0 2px 6px #0000002e}.social-link[data-platform=facebook] .social-icon svg{fill:currentColor;stroke:none}.social-link[data-platform=facebook]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000047}@media (prefers-reduced-motion: reduce){.social-links .social-link,.social-links .social-link:hover,.social-links .social-link:focus{transition:none!important;transform:none!important}.social-links .social-link .social-icon svg{transition:none!important;transform:none!important}}.contact-form{background-color:var(--color-background);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-text)}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8bc34a1a}.form-group select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);background-color:var(--color-background);transition:border-color .2s ease}.char-counter{display:block;text-align:right;color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.char-counter.warning{color:var(--color-accent)}.char-counter.error{color:#ef4444}.captcha-group{background-color:var(--color-primary-light);padding:var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-primary)}.captcha-group label{font-weight:300;color:var(--color-text)}#captcha-question{font-weight:300;color:var(--color-primary);font-size:var(--font-size-lg)}.checkbox-group{margin:var(--spacing-lg) 0}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;line-height:1.5;font-size:var(--font-size-sm);color:var(--color-text);position:relative}.checkbox-label span:last-child{flex:1;white-space:normal}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;width:0;height:0;margin:0;padding:0}.checkmark{display:block;position:relative;width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;border:2px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-background);transition:all .3s ease;flex-shrink:0!important;flex-grow:0!important;margin:0;box-sizing:border-box}.checkbox-label:hover .checkmark{border-color:var(--color-primary);box-shadow:0 0 0 3px #8bc34a1a}.checkbox-label input:checked~.checkmark{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-color:var(--color-primary);box-shadow:0 2px 4px #8bc34a4d}.checkmark:after{content:"";position:absolute;display:none;left:6px;top:3px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-label input:checked~.checkmark:after{display:block}.checkbox-label a{color:var(--color-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.checkbox-label a:hover{color:var(--color-secondary);text-decoration:underline}.form-info{background-color:var(--color-surface);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);margin:var(--spacing-md) 0;border-left:3px solid var(--color-primary)}.form-info small{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.btn-loading,.btn.loading .btn-text{display:none}.btn.loading .btn-loading{display:inline}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-group.error input,.form-group.error textarea,.form-group.error select{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-group.success input,.form-group.success textarea,.form-group.success select{border-color:var(--color-accent);box-shadow:0 0 0 3px #10b9811a}.error-message{color:#ef4444;font-size:var(--font-size-sm);margin-top:var(--spacing-xs);display:block}.rate-limit-banner{background-color:#fef3c7;border:1px solid #f59e0b;color:#92400e;padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-lg);text-align:center}.rate-limit-banner.hidden{display:none}.footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);flex-wrap:wrap}.footer__legal{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:center}.btn{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:500;font-family:var(--font-family-heading);letter-spacing:.25px;line-height:1.1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;border:none;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.footer__legal a{color:var(--color-link);transition:color .2s ease;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px;padding:var(--spacing-xs) 0}.footer__legal a:hover,.footer__legal a:focus-visible{color:var(--color-link-hover)}@media (max-width: 768px){.nav__menu{display:none;position:absolute;top:100%;left:0;right:0;background-color:var(--color-background);flex-direction:column;padding:var(--spacing-lg);box-shadow:var(--shadow-md);border-top:3px solid var(--color-primary)}.nav__menu.active,.nav__toggle{display:flex}.header__content{position:relative}.header__title{font-size:var(--font-size-lg)}.header__logo{height:32px}.hero__container,.about__content,.contact__content{grid-template-columns:1fr;gap:var(--spacing-xl)}.hero__title{font-size:var(--font-size-3xl)}.services__grid{grid-template-columns:1fr}.hero__actions{justify-content:center}.footer__bottom{flex-direction:column;gap:var(--spacing-md);text-align:center}.footer__legal{justify-content:center}}@media (max-width: 480px){.container{padding:0 var(--spacing-md)}.hero__title,.section-title{font-size:var(--font-size-2xl)}.hero__actions{flex-direction:column;align-items:center}.btn{width:100%;justify-content:center}}.hero__highlight{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative}.hero__highlight:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:2px;opacity:.7}.section-title{position:relative}.section-title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:2px}.scroll-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border:none;border-radius:50%;color:#fff;cursor:pointer;opacity:0;transform:translateY(20px);transition:all .3s ease;z-index:1000;box-shadow:0 4px 12px #8bc34a4d}.scroll-to-top.show{opacity:1;transform:translateY(0)}.scroll-to-top:hover{transform:translateY(-4px);box-shadow:0 6px 16px #8bc34a66}.consent-indicator{position:fixed;right:1.5rem;bottom:1.5rem;display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .75rem;border-radius:999px;border:none;background:#0f172ae0;color:#f8fafc;font-size:.78rem;font-weight:500;letter-spacing:.15px;line-height:1.2;box-shadow:0 10px 20px #0f172a29,0 2px 5px #0f172a1f;cursor:pointer;z-index:1200;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,opacity .2s ease;max-width:calc(100% - 3rem)}.consent-indicator--collapsed{padding:.55rem;gap:0;justify-content:center;min-width:2.75rem;min-height:2.75rem;border-radius:999px}.consent-indicator:hover{transform:translateY(-2px);box-shadow:0 16px 30px #0f172a3d,0 4px 12px #0f172a2e}.consent-indicator:active{transform:translateY(0);box-shadow:0 8px 18px #0f172a38}.consent-indicator__dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 3px #ffffff24;transition:background .2s ease}.consent-indicator--collapsed .consent-indicator__dot{width:10px;height:10px;box-shadow:0 0 0 2px #fff3}.consent-indicator[data-state=pending]{background:#1e40afe6}.consent-indicator[data-state=pending] .consent-indicator__dot{background:#60a5fa}.consent-indicator[data-state=active]{background:#166534eb}.consent-indicator[data-state=active] .consent-indicator__dot{background:#22c55e}.consent-indicator[data-state=limited]{background:#92400ee6}.consent-indicator[data-state=limited] .consent-indicator__dot{background:#f59e0b}.consent-indicator[data-state=declined]{background:#7f1d1deb}.consent-indicator[data-state=declined] .consent-indicator__dot{background:#ef4444}.consent-indicator__label{white-space:nowrap;line-height:1.1}.consent-indicator--collapsed .consent-indicator__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}@media (max-width: 640px){.consent-indicator{right:.75rem;left:.75rem;bottom:.85rem;justify-content:center;padding:.45rem .65rem}.consent-indicator--collapsed{left:auto;min-width:2.5rem;min-height:2.5rem;right:.75rem}.consent-indicator__label{font-size:.75rem}}
