:root{--blue:#1771ad;--blue-dark:#0f5a8a;--blue-light:#e8f4fd;--red:#d0021b;--red-dark:#a8001a;--red-light:#fdf0f1;--white:#ffffff;--off-white:#f9f8f6;--grey-light:#f2f1ef;--grey:#6f6a63;--text:#2d2926;--text-light:#5a5652;--border:#e0ddd8;--shadow:0 4px 24px rgba(26,127,193,0.08);--shadow-hover:0 8px 32px rgba(26,127,193,0.14);--shadow-red:0 4px 24px rgba(208,2,27,0.10);--radius:8px;--radius-lg:14px;--radius-xl:20px;--transition:0.25s ease}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:18px}body{font-family:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--text);background:var(--white);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--blue-dark)}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:0;background:var(--blue-dark);color:#fff;padding:0.875rem 1.5rem;font-weight:600;font-size:1rem;text-decoration:none;z-index:10000;border-radius:0 0 var(--radius) 0;transition:top 0.2s ease}.skip-link:focus,.skip-link:focus-visible{top:0;color:#fff;outline:3px solid #fff;outline-offset:-3px}main:focus{outline:none}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.topbar{background:var(--blue-dark);color:#c9e4f5;font-size:0.8125rem;padding:0.5rem 0;position:sticky;top:0;z-index:101}.topbar-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.topbar a{color:#c9e4f5;text-decoration:none}.topbar a:hover{color:white}.topbar-contact{display:flex;gap:1.5rem;align-items:center}.topbar-contact span{display:flex;align-items:center;gap:0.375rem}.topbar-right{display:flex;align-items:center;gap:1rem}.leichte-sprache-btn{display:inline-flex;align-items:center;gap:0.375rem;padding:0.25rem 0.625rem;background:white;border:1px solid rgba(255,255,255,0.2);border-radius:4px;color:var(--blue-dark) !important;font-size:0.75rem;font-weight:600;text-decoration:none;transition:all var(--transition)}.leichte-sprache-btn img{width:18px;height:18px;display:block}.leichte-sprache-btn:hover{background:#f0f7ff;color:var(--blue) !important}.a11y-controls{display:flex;align-items:center;gap:0.25rem}.a11y-controls span{font-size:0.75rem;margin-right:0.25rem}.a11y-btn{background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.25);color:white;width:1.75rem;height:1.75rem;border-radius:4px;cursor:pointer;font-size:0.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all var(--transition);font-family:inherit}.a11y-btn:hover,.a11y-btn.active{background:rgba(255,255,255,0.3)}header{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:2.3125rem;z-index:100;box-shadow:0 2px 12px rgba(0,0,0,0.06);overflow-x:clip}.header-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:6.5rem;gap:2rem}.logo-wrap{display:flex;align-items:center;gap:0.875rem;text-decoration:none;flex-shrink:0}.logo-wrap img{height:5.25rem;width:auto}.logo-text h1{font-family:'Lora',serif;font-size:1.0625rem;font-weight:600;color:var(--blue-dark);line-height:1.2}.logo-text span{font-size:0.75rem;color:var(--grey);font-weight:400;letter-spacing:0.04em}.logo-badges{display:flex;gap:0.5rem;align-items:center;margin-top:0.25rem}.badge-diakonie,.badge-caritas{color:white;font-size:0.5625rem;font-weight:700;padding:0.125rem 0.4375rem;border-radius:3px;letter-spacing:0.05em}.badge-diakonie{background:var(--blue)}.badge-caritas{background:var(--red)}nav ul{display:flex;list-style:none;gap:0.375rem;align-items:center}nav a{text-decoration:none;color:var(--text);font-size:0.875rem;font-weight:600;padding:0.5rem 0.75rem;border-radius:6px;transition:all var(--transition);letter-spacing:0.01em;white-space:nowrap}nav a:hover{background:var(--blue-light);color:var(--blue)}nav .nav-cta{background:var(--red);color:white !important;padding:0.5rem 1rem;border-radius:6px;font-weight:700;font-size:0.8125rem;display:inline-flex;align-items:center;gap:0.375rem}nav .nav-cta:hover{background:var(--red-dark) !important;color:white !important}nav li{position:relative}.nav-dropdown-toggle{cursor:pointer;display:inline-flex;align-items:center;gap:0.25rem}.nav-dropdown-toggle .dropdown-arrow{width:12px;height:12px;transition:transform 0.2s ease}.nav-dropdown{display:none;position:absolute;top:100%;left:0;background:white;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px rgba(0,0,0,0.1);min-width:220px;padding:0.5rem 0;z-index:110;padding-top:0.75rem}nav li>.nav-dropdown::before{content:'';position:absolute;top:-0.75rem;left:0;right:0;height:0.75rem}nav li:hover>.nav-dropdown,nav li.dropdown-open>.nav-dropdown{display:block}.nav-dropdown a{display:block;padding:0.625rem 1.25rem;font-size:0.8125rem;font-weight:500;color:var(--text);border-radius:0;white-space:nowrap}.nav-dropdown a:hover{background:var(--blue-light);color:var(--blue)}nav li:hover>.nav-dropdown-toggle .dropdown-arrow,nav li.dropdown-open>.nav-dropdown-toggle .dropdown-arrow{transform:rotate(180deg)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:0.5rem;z-index:110}.nav-toggle span{display:block;width:1.5rem;height:2px;background:var(--text);margin:5px 0;transition:all 0.3s;border-radius:2px}.hero{position:relative;min-height:36.25rem;display:flex;align-items:center;overflow:hidden;background:linear-gradient(135deg,var(--blue-dark) 0%,var(--blue) 60%,#2aa0e0 100%)}.hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='80' cy='20' r='40' fill='white' fill-opacity='0.04'/%3E%3Ccircle cx='10' cy='80' r='50' fill='white' fill-opacity='0.03'/%3E%3C/svg%3E") center/cover}.hero-inner{max-width:1200px;margin:0 auto;padding:5rem 2rem;position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:3.75rem;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:0.5rem;background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.25);color:white;font-size:0.8125rem;font-weight:600;padding:0.375rem 0.875rem;border-radius:1.25rem;margin-bottom:1.25rem;letter-spacing:0.04em;text-transform:uppercase}.hero-badge::before{content:'';width:0.5rem;height:0.5rem;background:#4dda82;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.7;transform:scale(1.2)}}.hero h2{font-family:'Lora',serif;font-size:2.875rem;font-weight:600;color:white;line-height:1.15;margin-bottom:1.25rem}.hero h2 em{font-style:italic;color:#7ed4f8}.hero-desc{font-size:1.0625rem;color:rgba(255,255,255,0.85);margin-bottom:2.25rem;line-height:1.7}.hero-actions{display:flex;gap:0.875rem;flex-wrap:wrap}.btn-primary{background:white;color:var(--blue-dark);font-weight:700;font-size:0.9375rem;padding:0.875rem 1.75rem;border-radius:var(--radius);text-decoration:none;transition:all var(--transition);display:inline-flex;align-items:center;gap:0.5rem;box-shadow:0 4px 16px rgba(0,0,0,0.15);border:none;cursor:pointer;font-family:inherit}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.2);color:var(--blue-dark)}.btn-secondary{background:transparent;border:2px solid rgba(255,255,255,0.5);color:white;font-weight:600;font-size:0.9375rem;padding:0.75rem 1.5rem;border-radius:var(--radius);text-decoration:none;transition:all var(--transition);display:inline-flex;align-items:center;gap:0.5rem;cursor:pointer;font-family:inherit}.btn-secondary:hover{border-color:white;background:rgba(255,255,255,0.1);color:white}.btn-outline{background:transparent;border:2px solid var(--blue);color:var(--blue);font-weight:600;font-size:0.9375rem;padding:0.75rem 1.5rem;border-radius:var(--radius);text-decoration:none;transition:all var(--transition);display:inline-flex;align-items:center;gap:0.5rem;cursor:pointer;font-family:inherit}.btn-outline:hover{background:var(--blue);color:white}.btn-white{background:white;color:var(--red);font-weight:700;font-size:0.9375rem;padding:0.875rem 1.75rem;border-radius:var(--radius);text-decoration:none;white-space:nowrap;transition:all var(--transition);display:inline-flex;align-items:center;gap:0.5rem;border:none;cursor:pointer;font-family:inherit}.btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.2);color:var(--red)}.hero-photo-card{background:white;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.25);position:relative}.hero-photo-card img{width:100%;height:21.25rem;object-fit:cover}.photo-caption{padding:1.125rem 1.25rem;display:flex;align-items:center;gap:0.75rem}.photo-caption-icon{width:2.5rem;height:2.5rem;background:var(--blue-light);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.photo-caption-icon svg{width:1.25rem;height:1.25rem;color:var(--blue)}.photo-caption p{font-size:0.8125rem;color:var(--text-light);line-height:1.4}.photo-caption strong{color:var(--text);font-size:0.875rem}.trust-bar{background:var(--off-white);border-bottom:1px solid var(--border);padding:1.5rem 0}.trust-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:0}.trust-item{background:var(--off-white);padding:1.25rem 1.75rem;text-align:center}.trust-icon{display:flex;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 0.5rem;border-radius:50%;background:rgba(26,127,193,0.08);color:var(--blue)}.trust-num{font-family:'Lora',serif;font-size:2rem;font-weight:600;color:var(--blue);line-height:1}.trust-label{font-size:0.8125rem;color:var(--text-light);margin-top:0.25rem}section{padding:5rem 0}.section-inner{max-width:1200px;margin:0 auto;padding:0 2rem}.section-label{font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--blue);margin-bottom:0.625rem;display:flex;align-items:center;gap:0.625rem}.section-label::before{content:'';width:1.5rem;height:2px;background:var(--blue)}.section-title{font-family:'Lora',serif;font-size:2.125rem;font-weight:600;color:var(--text);line-height:1.25;margin-bottom:1rem}.section-desc{font-size:1rem;color:var(--text-light);max-width:37.5rem;margin-bottom:3rem}.services-bg{background:var(--white)}.services-header{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.5rem}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.service-card{background:var(--off-white);border-radius:var(--radius-lg);border:1px solid var(--border);transition:all var(--transition);cursor:pointer;position:relative;overflow:hidden}.service-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transition:transform var(--transition);transform-origin:left}.service-card:hover{background:white;box-shadow:var(--shadow-hover);transform:translateY(-4px);border-color:transparent}.service-card:hover::after{transform:scaleX(1)}.service-card-img{width:100%;height:180px;object-fit:cover;display:block}.service-card-content{padding:1.5rem 1.75rem}.service-icon{width:3.5rem;height:3.5rem;background:var(--blue-light);border-radius:0.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}.service-icon svg{width:1.625rem;height:1.625rem;color:var(--blue)}.service-card h3{font-family:'Lora',serif;font-size:1.1875rem;font-weight:600;margin-bottom:0.625rem;color:var(--text)}.service-card p{font-size:0.875rem;color:var(--text-light);line-height:1.65}.service-link{display:inline-flex;align-items:center;gap:0.375rem;margin-top:1rem;font-size:0.8125rem;font-weight:700;color:var(--blue);text-decoration:none;letter-spacing:0.02em}.service-link::after{content:'';position:absolute;inset:0;z-index:1}.service-link svg{width:1rem;height:1rem;transition:transform var(--transition)}.service-card:hover .service-link svg{transform:translateX(4px)}.service-card.highlight{background:var(--red);border-color:var(--red);color:white}.service-card.highlight::after{background:white}.service-card.highlight .service-icon{background:rgba(255,255,255,0.2)}.service-card.highlight .service-icon svg{color:white}.service-card.highlight h3{color:white}.service-card.highlight p{color:rgba(255,255,255,0.85)}.service-card.highlight .service-link{color:#f8c0c5}.service-card.highlight:hover{background:var(--red-dark);box-shadow:var(--shadow-red)}.engagement-section{background:var(--white)}.engagement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.engagement-card{background:var(--off-white);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden;text-decoration:none;color:inherit;transition:all var(--transition);display:flex;flex-direction:column}.engagement-card:hover{background:white;box-shadow:var(--shadow-hover);transform:translateY(-4px);border-color:transparent}.engagement-img-wrap{width:100%;height:200px;overflow:hidden}.engagement-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}.engagement-logo-wrap{display:flex;align-items:center;justify-content:center;background:white;padding:2rem}.engagement-logo-wrap img{width:auto;height:auto;max-height:120px;max-width:80%;object-fit:contain}.engagement-card-body{padding:1.5rem 1.75rem;flex:1;display:flex;flex-direction:column}.engagement-icon{width:3rem;height:3rem;background:var(--blue-light);border-radius:0.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.engagement-icon svg{width:1.5rem;height:1.5rem;color:var(--blue)}.engagement-card h3{font-family:'Lora',serif;font-size:1.1875rem;font-weight:600;margin-bottom:0.5rem;color:var(--text)}.engagement-card p{font-size:0.9375rem;color:var(--grey);line-height:1.6;flex:1}.engagement-link{display:inline-flex;align-items:center;gap:0.375rem;font-size:0.875rem;font-weight:600;color:var(--blue);margin-top:1rem;transition:gap var(--transition)}.engagement-card:hover .engagement-link{gap:0.625rem}.engagement-card:hover .engagement-link svg{transform:translateX(2px)}.about-section{background:var(--off-white)}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4.5rem;align-items:center}.about-image-wrap{position:relative;border-radius:var(--radius-xl);overflow:visible}.about-image-wrap img{width:100%;border-radius:1rem;object-fit:cover}.about-badge-float{position:absolute;bottom:-1.25rem;right:-1.25rem;background:var(--red);color:white;padding:1.125rem 1.375rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-red);text-align:center}.about-badge-float strong{display:block;font-family:'Lora',serif;font-size:1.75rem;font-weight:600}.about-badge-float span{font-size:0.75rem;opacity:0.9}.values-list{list-style:none;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.values-list li{display:flex;align-items:flex-start;gap:0.875rem;font-size:0.9375rem;color:var(--text-light);line-height:1.55}.values-list li>svg{flex-shrink:0;margin-top:0.15rem}.value-dot{width:1.375rem;height:1.375rem;background:var(--blue-light);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:0.125rem}.value-dot svg{width:0.75rem;height:0.75rem;color:var(--blue)}.about-traeger{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);text-align:center}.about-traeger h4{font-size:0.75rem;font-weight:700;color:var(--grey);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:1rem}.traeger-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem}.traeger-item{display:flex;align-items:center;gap:0.5rem;background:white;padding:0.625rem 1rem;border-radius:var(--radius);border:1px solid var(--border);white-space:nowrap}.traeger-item span{font-size:0.8125rem}.traeger-dot{width:0.5rem;height:0.5rem;border-radius:50%}.traeger-dot.blue{background:var(--blue)}.traeger-dot.red{background:var(--red)}.traeger-item span{font-weight:600;color:var(--blue-dark)}.tagespflege-banner{background:linear-gradient(135deg,rgba(185,28,51,0.88) 0%,rgba(139,20,37,0.92) 100%),url('../img/tagespflege/tagespflege-banner.jpg') center/cover no-repeat;padding:3.75rem 0;position:relative;overflow:hidden}.tagespflege-banner::before{content:'';position:absolute;right:-5rem;top:-5rem;width:18.75rem;height:18.75rem;background:rgba(255,255,255,0.06);border-radius:50%}.tagespflege-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr auto;gap:2.5rem;align-items:center;position:relative;z-index:1}.tagespflege-banner h2{font-family:'Lora',serif;font-size:1.875rem;color:white;margin-bottom:0.625rem}.tagespflege-banner p{color:rgba(255,255,255,0.88);font-size:1rem;max-width:37.5rem}.contact-section{background:var(--white)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.75rem;align-items:start}.nav-search{position:relative;display:flex;align-items:center}.nav-search-toggle{background:transparent;border:0;padding:0.5rem;cursor:pointer;color:var(--text);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background 0.2s,color 0.2s}.nav-search-toggle:hover,.nav-search-toggle:focus-visible{background:var(--off-white);color:var(--blue)}.nav-search-form{position:absolute;right:100%;top:50%;transform:translateY(-50%);display:flex;align-items:center;background:#fff;border:2px solid var(--blue);border-radius:999px;padding:0.25rem 0.25rem 0.25rem 1rem;width:0;max-width:0;opacity:0;pointer-events:none;transition:max-width 0.3s ease,opacity 0.2s ease,width 0.3s ease;z-index:5}.nav-search.is-open .nav-search-form{width:280px;max-width:280px;opacity:1;pointer-events:auto;margin-right:0.5rem}.nav-search-form input{flex:1;border:0;outline:0;background:transparent;font-size:0.9375rem;color:var(--text);min-width:0}.nav-search-form button[type=submit]{background:var(--blue);color:#fff;border:0;border-radius:50%;width:32px;height:32px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}@media (max-width:768px){.nav-search{width:100%;flex-direction:column;align-items:stretch;padding:0.5rem 0}.nav-search-toggle{display:none}.nav-search-form{position:static;transform:none;width:100%;max-width:none;opacity:1;pointer-events:auto;background:#fff;border-color:var(--border)}}.nav-search-suggest{position:absolute;top:100%;right:-2px;margin-top:0.5rem;width:360px;max-width:calc(100vw - 2rem);background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px rgba(0,0,0,0.12);padding:0.25rem;z-index:10;max-height:360px;overflow-y:auto;overflow-x:hidden;display:none;box-sizing:border-box;transform:none}.nav-search.is-open .nav-search-suggest.has-results,.nav-search.is-open .nav-search-suggest.has-status{display:block}.nav-search-suggest-item{display:block;padding:0.625rem 0.875rem;text-decoration:none;color:var(--text);border-radius:6px;font-size:0.875rem;line-height:1.4;transition:background 0.15s;word-break:break-word;overflow-wrap:anywhere;overflow:hidden;max-width:100%;hyphens:auto}.nav-search-suggest-item:hover,.nav-search-suggest-item:focus-visible,.nav-search-suggest-item.is-active{background:var(--off-white);color:var(--blue)}.nav-search-suggest-item strong{display:block;font-family:'Lora',serif;font-weight:600;color:var(--text);word-break:break-word;overflow-wrap:anywhere;white-space:normal}.nav-search-suggest-item span.path{display:block;font-size:0.75rem;color:var(--text-light);margin-top:0.125rem;word-break:break-all}.nav-search-suggest-item mark{background:var(--blue-light,#e8f4fd);color:inherit;padding:0;border-radius:2px}.nav-search-suggest-status{padding:0.625rem 0.875rem;font-size:0.8125rem;color:var(--text-light)}.nav-search-suggest-more{border-top:1px solid var(--border);padding:0.625rem 0.875rem;font-size:0.8125rem;color:var(--blue);text-decoration:none;font-weight:600;display:block;text-align:center}.nav-search-suggest-more:hover,.nav-search-suggest-more:focus-visible{background:var(--off-white)}@media (max-width:768px){.nav-search-suggest{position:static;width:100%;max-width:none;min-width:0;box-shadow:none;border:0;border-top:1px solid var(--border);border-radius:0;margin-top:0.25rem;max-height:280px}.nav-search .nav-search-suggest.has-results,.nav-search .nav-search-suggest.has-status{display:block}}.contact-cards{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.contact-card{display:flex;align-items:center;gap:1rem;padding:1.125rem 1.25rem;background:var(--off-white);border-radius:var(--radius-lg);border:1px solid var(--border);text-decoration:none;transition:all var(--transition)}.contact-card:hover{background:white;box-shadow:var(--shadow);border-color:transparent;transform:translateY(-2px)}.contact-card-icon{width:3rem;height:3rem;background:var(--blue-light);border-radius:0.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-card-icon svg{width:1.25rem;height:1.25rem;color:var(--blue)}.contact-card-text span{display:block;font-size:0.75rem;color:var(--grey);font-weight:600;text-transform:uppercase;letter-spacing:0.08em}.contact-card-text strong{color:var(--text);font-size:1rem}.contact-form-area{background:var(--off-white);border-radius:var(--radius-xl);padding:2.5rem;border:1px solid var(--border)}.contact-form-area h3{font-family:'Lora',serif;font-size:1.375rem;font-weight:600;margin-bottom:0.5rem}.contact-form-area>p{font-size:0.875rem;color:var(--text-light);margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:0.8125rem;font-weight:600;color:var(--text);margin-bottom:0.375rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:0.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);font-size:0.9375rem;font-family:inherit;color:var(--text);background:white;transition:border-color var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,127,193,0.15)}.form-group textarea{resize:vertical;min-height:6.25rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--grey)}.interest-chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:1.5rem}.interest-chip{background:var(--blue-light);color:var(--blue-dark);font-size:0.75rem;font-weight:600;padding:0.25rem 0.75rem;border-radius:1.25rem;cursor:pointer;border:1px solid transparent;transition:all var(--transition);font-family:inherit}.interest-chip:hover,.interest-chip.active{background:var(--blue);color:white}.form-checkbox{display:flex;gap:0.625rem;align-items:flex-start;font-size:0.8125rem;color:var(--grey);line-height:1.5;margin:1rem 0 1.25rem;cursor:pointer}.form-checkbox input[type="checkbox"]{margin-top:0.2rem;width:1rem;height:1rem;flex-shrink:0;accent-color:var(--blue);cursor:pointer}.form-checkbox a{color:var(--blue);font-weight:600}.form-submit{background:var(--blue);color:white;font-weight:700;font-size:0.9375rem;padding:0.875rem 2rem;border-radius:var(--radius);border:none;cursor:pointer;width:100%;transition:all var(--transition);font-family:inherit;display:flex;align-items:center;justify-content:center;gap:0.5rem}.form-submit:hover{background:var(--blue-dark)}.form-privacy{font-size:0.75rem;color:var(--grey);margin-top:0.75rem;text-align:center}.form-privacy a{color:var(--blue)}.map-area{margin-top:2rem;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border)}.map-area iframe{width:100%;height:15rem;border:0}.jobs-section{background:var(--off-white)}.jobs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}.jobs-carousel{position:relative;margin-top:2.5rem;display:flex;align-items:center;gap:1rem}.jobs-carousel-viewport{flex:1;overflow:hidden;border-radius:var(--radius-lg)}.jobs-carousel-track{display:flex;gap:1.5rem;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1);will-change:transform}.jobs-carousel-track>.job-card{flex:0 0 calc((100% - 3rem) / 3);box-sizing:border-box}.carousel-btn{background:white;border:1px solid var(--border);border-radius:50%;width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--blue);transition:all var(--transition);flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,0.06);z-index:2}.carousel-btn:hover{background:var(--blue);color:white;border-color:var(--blue);transform:scale(1.05)}.carousel-btn:disabled{opacity:0.4;cursor:not-allowed;transform:none}.carousel-btn:disabled:hover{background:white;color:var(--blue);border-color:var(--border)}.carousel-dots{display:flex;justify-content:center;gap:0.5rem;margin-top:1.5rem}.carousel-dot{width:0.625rem;height:0.625rem;border-radius:50%;background:var(--border);border:none;cursor:pointer;padding:0;transition:all var(--transition)}.carousel-dot.active{background:var(--blue);width:2rem;border-radius:0.3125rem}.carousel-dot:hover:not(.active){background:var(--grey)}.job-card{background:white;border-radius:var(--radius-lg);padding:2rem 1.5rem;border:1px solid var(--border);transition:all var(--transition);display:flex;flex-direction:column;min-height:280px;min-width:0;overflow:hidden}.job-card>h3{flex:0 0 auto;overflow-wrap:anywhere;word-break:break-word}.job-card>p{flex:1 1 auto;overflow-wrap:anywhere;word-break:break-word}.job-card-meta{margin-top:auto}.job-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px);border-color:transparent}.job-card-tag{display:inline-block;font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;padding:0.25rem 0.625rem;border-radius:0.25rem;margin-bottom:1rem}.job-card-tag.blue{background:var(--blue-light);color:var(--blue)}.job-card-tag.red{background:var(--red-light);color:var(--red)}.job-card-tag.green{background:#e8f5e9;color:#2e7d32}.job-card h3{font-family:'Lora',serif;font-size:1.125rem;font-weight:600;margin-bottom:0.5rem}.job-card p{font-size:0.875rem;color:var(--text-light);line-height:1.6;margin-bottom:1rem}.job-card-meta{display:flex;gap:1rem;font-size:0.75rem;color:var(--grey);margin-bottom:1.25rem}.job-card-meta span{display:flex;align-items:center;gap:0.25rem}.locations-section{background:var(--blue-dark);padding:4rem 0}.locations-section .section-label{color:#a5e0fa}.locations-section .section-label::before{background:#a5e0fa}.locations-section .section-title{color:white}.locations-section .section-desc{color:rgba(255,255,255,0.9)}.locations-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2.5rem}.location-card{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);border-radius:var(--radius-lg);padding:2rem;transition:all var(--transition)}.location-card:hover{background:rgba(255,255,255,0.12)}.location-card-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1.25rem}.location-card-dot{width:0.75rem;height:0.75rem;border-radius:50%}.location-card-dot.blue{background:#7ed4f8}.location-card-dot.red{background:#f8a0a8}.location-card-header strong{color:white;font-size:1.0625rem}.location-card-header .tag{background:rgba(0,0,0,0.35);color:#ffffff;font-size:0.6875rem;font-weight:700;padding:0.125rem 0.5rem;border-radius:0.25rem;text-transform:uppercase;letter-spacing:0.06em}.location-card-details{color:rgba(255,255,255,0.9);font-size:0.9375rem;display:flex;flex-direction:column;gap:0.375rem}.location-card-details a{color:#d5eefe;text-decoration:none;font-weight:600}.location-card-details a:hover{color:white}.location-card.red-accent .location-card-details a{color:#fed4d9}.locations-service-area{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.5rem}.locations-service-area span{background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);color:white;font-size:0.8125rem;font-weight:600;padding:0.375rem 1rem;border-radius:1.5rem;display:flex;align-items:center;gap:0.375rem}footer{background:var(--text);color:rgba(255,255,255,0.65);padding:4rem 0 0;padding-bottom:3rem;font-size:0.9375rem}.footer-inner{max-width:1280px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;column-gap:1.75rem;row-gap:2.5rem}.footer-logo{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem}.footer-logo img{height:2.5rem}.footer-logo-text{font-family:'Lora',serif;font-size:0.9375rem;font-weight:600;color:white;line-height:1.3}.footer-tagline{font-size:0.875rem;line-height:1.6;color:rgba(255,255,255,0.55);margin-bottom:1.25rem;font-style:italic}.trust-badge{display:inline-flex;align-items:center;gap:0.625rem;padding:0.75rem 1rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:var(--radius);font-size:0.8125rem;color:rgba(255,255,255,0.85);line-height:1.4;max-width:100%}.trust-badge svg{flex-shrink:0;color:#7ed4f8}.trust-badge small{display:block;font-size:0.6875rem;color:rgba(255,255,255,0.55);margin-top:0.125rem}.footer-badges{display:flex;gap:0.5rem}.footer-badge{font-size:0.625rem;font-weight:700;padding:0.1875rem 0.5rem;border-radius:3px;letter-spacing:0.06em}.footer-badge.blue{background:var(--blue);color:white}.footer-badge.red{background:var(--red);color:white}footer h3{font-family:'Lora',serif;font-size:1rem;font-weight:600;color:white;margin-bottom:1.25rem;position:relative;padding-bottom:0.75rem}footer h3::after{content:'';position:absolute;bottom:0;left:0;width:1.5rem;height:2px;background:var(--blue)}.captcha-refresh{min-width:44px;min-height:44px;padding:0.625rem;display:inline-flex;align-items:center;justify-content:center}.carousel-dot{min-width:24px;min-height:24px;padding:0.625rem;box-sizing:content-box;background-clip:content-box}.carousel-dot.active{background-clip:content-box}footer ul{list-style:none;display:flex;flex-direction:column;gap:0.625rem}footer ul a{color:rgba(255,255,255,0.65);text-decoration:none;font-size:0.875rem;transition:color var(--transition);display:flex;align-items:center;gap:0.375rem}footer ul a:hover{color:white}footer ul a svg{width:0.875rem;height:0.875rem;opacity:0.5}.footer-bottom{margin-top:3rem;padding:1.5rem 2rem;border-top:1px solid rgba(255,255,255,0.1);max-width:1200px;margin-left:auto;margin-right:auto;display:flex;justify-content:space-between;align-items:center;font-size:0.8125rem;color:rgba(255,255,255,0.6)}.footer-bottom a{color:rgba(255,255,255,0.55);text-decoration:none}.footer-bottom a:hover{color:white}.footer-links{display:flex;gap:1.25rem}.emergency-banner{background:var(--red);color:white;padding:0.625rem 0;text-align:center;font-size:0.875rem;font-weight:700;position:fixed;bottom:0;left:0;right:0;z-index:99;box-shadow:0 -2px 12px rgba(0,0,0,0.15);display:flex;justify-content:center;align-items:center;gap:1.5rem}.emergency-banner a{color:white;text-decoration:none;display:inline-flex;align-items:center;gap:0.375rem}.emergency-banner a:hover{text-decoration:underline;color:white}.emergency-banner .emergency-label{opacity:0.9;font-weight:600;letter-spacing:0.02em}.scroll-to-top{position:fixed;bottom:3.5rem;right:1.5rem;width:2.75rem;height:2.75rem;background:var(--blue);color:white;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,0.2);opacity:0;visibility:hidden;transform:translateY(1rem);transition:all 0.3s ease;z-index:98}.scroll-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{background:var(--blue-dark);transform:translateY(-2px)}.steps-section{background:var(--white)}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;position:relative}.steps-grid::before{content:'';position:absolute;top:2.5rem;left:15%;right:15%;height:2px;background:var(--border);z-index:0}.step-card{text-align:center;position:relative;z-index:1}.step-number{width:3.5rem;height:3.5rem;background:var(--blue);color:white;font-family:'Lora',serif;font-size:1.25rem;font-weight:600;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;box-shadow:0 4px 12px rgba(26,127,193,0.25)}.step-card h3{font-family:'Lora',serif;font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}.step-card p{font-size:0.875rem;color:var(--text-light);line-height:1.6;max-width:18rem;margin:0 auto}.faq-section{background:var(--off-white)}.faq-list{max-width:50rem;display:flex;flex-direction:column;gap:0.75rem}.faq-item{background:white;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition)}.faq-item:hover{box-shadow:var(--shadow)}.faq-question{width:100%;background:none;border:none;padding:1.25rem 1.5rem;font-family:'Lora',serif;font-size:1rem;font-weight:600;color:var(--text);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem}.faq-question svg{flex-shrink:0;transition:transform 0.3s ease;color:var(--blue)}.faq-item.open .faq-question svg{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease}.faq-answer-inner{padding:0 1.5rem 1.25rem;font-size:0.9375rem;color:var(--text-light);line-height:1.7}.faq-item.open .faq-answer{max-height:25rem}.map-images{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.map-image-link{display:block;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,0.15);transition:all var(--transition)}.map-image-link:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.3)}.map-image-link img{width:100%;height:12rem;object-fit:cover}.fade-up{opacity:0;transform:translateY(1.25rem);transition:opacity 0.6s ease,transform 0.6s ease}.fade-up.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}.fade-up{opacity:1;transform:none}html{scroll-behavior:auto}}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem;margin:1.5rem 0 2rem}.gallery-item{position:relative;margin:0;overflow:hidden;border-radius:var(--radius);cursor:pointer;border:1px solid var(--border);background:white;transition:transform var(--transition),box-shadow var(--transition);display:flex;flex-direction:column}.gallery-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.gallery-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;transition:transform 0.4s ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-item figcaption{padding:0.625rem 0.875rem;font-size:0.8125rem;font-weight:600;color:var(--text);text-align:center;background:white;border-top:1px solid var(--border);transition:background var(--transition),color var(--transition)}.gallery-item:hover figcaption{background:var(--blue-light);color:var(--blue-dark)}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,0.92);display:none;align-items:center;justify-content:center;z-index:9999;padding:2rem;animation:lightboxFadeIn 0.25s ease}.lightbox.active{display:flex}@keyframes lightboxFadeIn{from{opacity:0}to{opacity:1}}.lightbox-img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:var(--radius);box-shadow:0 20px 60px rgba(0,0,0,0.5);user-select:none}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:white;width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition);backdrop-filter:blur(8px)}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:rgba(255,255,255,0.25);transform:scale(1.1)}.lightbox-close{top:1.5rem;right:1.5rem}.lightbox-prev{left:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-prev:hover{transform:translateY(-50%) scale(1.1)}.lightbox-next{right:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-next:hover{transform:translateY(-50%) scale(1.1)}.lightbox-counter{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:white;padding:0.5rem 1rem;border-radius:1rem;font-size:0.875rem;font-weight:600;backdrop-filter:blur(8px)}.lightbox-caption{position:absolute;bottom:4.5rem;left:50%;transform:translateX(-50%);color:white;font-size:0.9375rem;text-align:center;background:rgba(0,0,0,0.5);padding:0.5rem 1rem;border-radius:var(--radius);max-width:80%}/* article-update-box */.article-body blockquote{background:#e8f4fd;border-left:4px solid #1771ad;border-radius:6px;padding:1rem 1.25rem;margin:0 0 1.5rem;color:#0f5a8a;font-size:0.9375rem;line-height:1.6}.article-body blockquote strong{color:#0f5a8a}