@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--color-primary:#1a3d2e;--color-secondary:#0a1f17;--color-accent:#c17f24;--color-accent-hover:#d4922e;--color-surface:#f8f9fa;--color-white:#ffffff;--color-text:#1a1a2e;--color-text-light:#6b7280;--color-border:#e5e7eb;--font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-mono:'JetBrains Mono','Fira Code',monospace;--max-width:1200px;--header-height:72px;--space-xs:0.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;}body{font-family:var(--font-sans);color:var(--color-text);line-height:1.6;background:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}img{max-width:100%;height:auto;display:block;}a{color:var(--color-accent);text-decoration:none;transition:color 0.2s ease;}a:hover{color:var(--color-accent-hover);}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:700;line-height:1.2;color:var(--color-primary);}h1{font-size:clamp(2rem,4vw,3rem);}h2{font-size:clamp(1.5rem,3vw,2.25rem);}h3{font-size:clamp(1.25rem,2.5vw,1.5rem);}p{margin-bottom:1rem;}p:last-child{margin-bottom:0;}.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;}.user-logged-in .admin-link{display:block;}.admin-link{display:none;}
.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-md);}.section{padding:var(--space-3xl) 0;}.section--surface{background:var(--color-surface);}.section--dark{background:var(--color-secondary);color:var(--color-white);}.section--dark h2,.section--dark h3{color:var(--color-white);}.grid{display:grid;gap:var(--space-lg);}.grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}.grid--3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}.grid--4{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}.section__header{text-align:center;margin-bottom:var(--space-2xl);}.section__header p{color:var(--color-text-light);font-size:1.125rem;max-width:600px;margin:var(--space-sm) auto 0;}.main-content{min-height:calc(100vh - var(--header-height) - 300px);}@media (max-width:768px){.section{padding:var(--space-2xl) 0;}.grid--3,.grid--4{grid-template-columns:1fr;}}.grid .views-element-container,.grid .views-element-container > div{display:contents;}
.site-header{background:var(--color-primary);position:sticky;top:0;z-index:100;height:var(--header-height);}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:100%;}.site-logo{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-white);font-size:1.25rem;font-weight:700;text-decoration:none;}.site-logo:hover{color:var(--color-white);}.site-logo svg{width:36px;height:36px;}.site-logo__img{height:44px;width:auto;}.main-nav{display:flex;align-items:center;gap:var(--space-lg);}.main-nav ul{display:flex;list-style:none;gap:var(--space-md);}.main-nav ul a{color:rgba(255,255,255,0.85);font-size:0.9375rem;font-weight:500;padding:var(--space-xs) 0;border-bottom:2px solid transparent;transition:all 0.2s ease;}.main-nav ul a:hover,.main-nav ul a.is-active{color:var(--color-white);border-bottom-color:var(--color-accent);}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--space-xs);}.nav-toggle svg{width:24px;height:24px;color:var(--color-white);}.btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:0.625rem 1.25rem;border-radius:4px;font-size:0.9375rem;font-weight:600;text-decoration:none;transition:all 0.2s ease;border:none;cursor:pointer;}.btn--primary{background:var(--color-accent);color:var(--color-white);}.btn--primary:hover{background:var(--color-accent-hover);color:var(--color-white);}.btn--outline{background:transparent;color:var(--color-white);border:2px solid var(--color-accent);}.btn--outline:hover{background:var(--color-accent);color:var(--color-white);}.btn--large{padding:0.875rem 2rem;font-size:1.0625rem;}.hero{background:var(--color-secondary);color:var(--color-white);padding:var(--space-3xl) 0;min-height:60vh;display:flex;align-items:center;}.hero__content{max-width:700px;}.hero__title{color:var(--color-white);margin-bottom:var(--space-md);font-size:clamp(2.25rem,5vw,3.5rem);}.hero__subtitle{font-size:clamp(1.0625rem,2vw,1.25rem);color:rgba(255,255,255,0.8);margin-bottom:var(--space-xl);line-height:1.7;}.hero__actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;}.card{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;padding:var(--space-lg);transition:border-color 0.2s ease;}.card:hover{border-color:var(--color-accent);}.card__icon{width:48px;height:44px;color:var(--color-accent);margin-bottom:var(--space-sm);}.card__title{font-size:1.125rem;margin-bottom:var(--space-xs);}.card__title a{color:var(--color-primary);text-decoration:none;}.card__title a:hover{color:var(--color-accent);}.card__text{color:var(--color-text-light);font-size:0.9375rem;line-height:1.6;}.usp{text-align:center;padding:var(--space-lg);}.usp__number{font-size:2.5rem;font-weight:700;color:var(--color-accent);margin-bottom:var(--space-xs);}.usp__title{font-size:1.125rem;margin-bottom:var(--space-xs);}.usp__text{color:var(--color-text-light);font-size:0.9375rem;}.cta-banner{text-align:center;padding:var(--space-3xl) 0;}.cta-banner h2{margin-bottom:var(--space-sm);}.cta-banner p{font-size:1.125rem;margin-bottom:var(--space-xl);opacity:0.8;}.site-footer{background:var(--color-primary);color:rgba(255,255,255,0.8);padding:var(--space-2xl) 0 var(--space-lg);}.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--space-2xl);margin-bottom:var(--space-2xl);}.footer__title{color:var(--color-white);font-size:1rem;font-weight:600;margin-bottom:var(--space-sm);}.footer__text{font-size:0.875rem;line-height:1.7;}.footer__text a{color:var(--color-accent);}.footer__text a:hover{color:var(--color-accent-hover);}.footer__nav{list-style:none;}.footer__nav li{margin-bottom:var(--space-xs);}.footer__nav a{color:rgba(255,255,255,0.7);font-size:0.875rem;}.footer__nav a:hover{color:var(--color-white);}.footer__bottom{border-top:1px solid rgba(255,255,255,0.15);padding-top:var(--space-lg);display:flex;justify-content:space-between;align-items:center;font-size:0.8125rem;color:rgba(255,255,255,0.5);}.footer__legal span{margin-right:var(--space-md);}.webform-submission-form .form-item{margin-bottom:var(--space-md);}.webform-submission-form label{display:block;font-weight:500;margin-bottom:var(--space-xs);font-size:0.9375rem;}.webform-submission-form input[type=text],.webform-submission-form input[type=email],.webform-submission-form textarea{width:100%;padding:0.75rem 1rem;border:1px solid var(--color-border);border-radius:4px;font-family:var(--font-sans);font-size:1rem;transition:border-color 0.2s ease;}.webform-submission-form input:focus,.webform-submission-form textarea:focus{outline:none;border-color:var(--color-accent);}.webform-submission-form .form-submit{background:var(--color-accent);color:var(--color-white);padding:0.75rem 2rem;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:background 0.2s ease;}.webform-submission-form .form-submit:hover{background:var(--color-accent-hover);}@media (max-width:768px){.nav-toggle{display:block;}.main-nav ul{display:none;position:absolute;top:var(--header-height);left:0;right:0;background:var(--color-primary);flex-direction:column;padding:var(--space-md);border-top:1px solid rgba(255,255,255,0.1);}.main-nav ul.is-open{display:flex;}.main-nav .btn{display:none;}.hero{min-height:auto;padding:var(--space-2xl) 0;}.footer__grid{grid-template-columns:1fr;gap:var(--space-lg);}.footer__bottom{flex-direction:column;gap:var(--space-sm);text-align:center;}}
.node-page .node__content{max-width:800px;}.node-page .node__content h2{margin-top:var(--space-xl);margin-bottom:var(--space-sm);}.node-page .node__content ul,.node-page .node__content ol{margin-bottom:var(--space-md);padding-left:var(--space-lg);}.node-page .node__content li{margin-bottom:var(--space-xs);}.node--type-dienst.node--view-mode-full .node__content{max-width:800px;}.dienst-icon{width:64px;height:64px;color:var(--color-accent);margin-bottom:var(--space-md);}.page-node-type-page .contact-info{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);margin-top:var(--space-lg);}.contact-info__details h3{margin-bottom:var(--space-sm);}.contact-info__details p{margin-bottom:var(--space-xs);font-size:0.9375rem;}.contact-info__details a{color:var(--color-accent);}.messages{max-width:var(--max-width);margin:var(--space-sm) auto;padding:var(--space-sm) var(--space-md);border-radius:4px;}.messages--status{background:#d4edda;border:1px solid #c3e6cb;color:#155724;}.messages--error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;}.tabs{max-width:var(--max-width);margin:var(--space-sm) auto;}@media (max-width:768px){.page-node-type-page .contact-info{grid-template-columns:1fr;}}.page-intro{font-size:1.125rem;color:var(--color-text-light,#555);margin-bottom:var(--space-xl);max-width:700px;}.contact-grid{display:grid;grid-template-columns:1fr 320px;gap:var(--space-2xl);align-items:start;}.contact-form h2,.contact-info-sidebar h2{font-size:1.25rem;margin-bottom:var(--space-lg);color:var(--color-primary);}.contact-form .form-item{margin-bottom:var(--space-md);}.contact-form label{display:block;font-weight:600;margin-bottom:var(--space-xs);font-size:0.9375rem;}.contact-form input[type="text"],.contact-form input[type="email"],.contact-form textarea,.contact-form select{width:100%;padding:0.75rem 1rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;font-family:inherit;background:#fff;transition:border-color 0.2s;}.contact-form input[type="text"]:focus,.contact-form input[type="email"]:focus,.contact-form textarea:focus,.contact-form select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px rgba(193,127,36,0.15);}.contact-form textarea{min-height:160px;resize:vertical;}.contact-form .form-actions{margin-top:var(--space-lg);}.contact-form .form-submit,.contact-form button[type="submit"]{display:inline-block;padding:0.875rem 2rem;background:var(--color-accent);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:background 0.2s;}.contact-form .form-submit:hover,.contact-form button[type="submit"]:hover{background:#a86b1e;}.contact-form .description{font-size:0.8125rem;color:#777;margin-top:0.25rem;}.contact-form .form-item--name-mail .description{display:none;}.contact-info-sidebar{background:var(--color-surface);padding:var(--space-lg);border-radius:6px;border:1px solid #e8e8e8;}.contact-details p{margin-bottom:var(--space-md);line-height:1.7;}.contact-details strong{display:block;font-size:0.8125rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-primary);margin-bottom:0.125rem;}.contact-details a{color:var(--color-accent);text-decoration:none;}.contact-details a:hover{text-decoration:underline;}@media (max-width:768px){.contact-grid{grid-template-columns:1fr;gap:var(--space-xl);}}
