*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color:#6b8e6b;--secondary-color:#8db38d;--accent-color:#a8c9a8;--accent-warm:#d4b89a;--accent-earth:#c4a982;--accent-sky:#b8d4d4;--text-dark:#2d3436;--text-medium:#5a6c7d;--text-light:#8a9ba8;--text-white:#fff;--bg-white:#fff;--bg-light:#f7f9f7;--bg-warm:#fefbf8;--bg-section:#f5f7f5;--bg-nature:#fafbfa;--border-color:#e1e8e1;--border-light:#f0f4f0;--border-dark:#d5ddd5;--shadow:0 2px 12px rgba(107,142,107,.08);--shadow-hover:0 4px 20px rgba(107,142,107,.12);--shadow-card:0 1px 8px rgba(45,52,54,.06);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,PingFang TC,Hiragino Sans GB,Microsoft YaHei UI Light,Microsoft YaHei UI,微软雅黑 UI,STHeiti Light,STXihei,华文细黑,Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;color:var(--text-dark);line-height:1.8;background-color:var(--bg-light);font-weight:350;letter-spacing:.02em}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1 1;padding-top:180px;padding-left:1rem;padding-right:1rem}@media (max-width:768px){.main-content{padding-top:140px;padding-left:.75rem;padding-right:.75rem}}@media (min-width:1200px){.main-content{padding-left:2rem;padding-right:2rem}}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;background:none;font-family:inherit}.footer{background:linear-gradient(135deg,var(--primary-color) 0,#5a7a5a 100%);color:var(--bg-white);margin-top:4rem;border-top:3px solid var(--accent-color)}.footer-container{max-width:1200px;margin:0 auto;padding:2rem 2rem 1rem}.footer-content{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.footer-section{width:100%}.footer-main h3{margin-bottom:.75rem;color:var(--accent-sky);font-weight:500;font-size:1.25rem}.footer-main p{color:hsla(0,0%,100%,.7);line-height:1.6;margin-bottom:1rem;font-size:.9rem}.footer-links-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.5rem 1.5rem;gap:.5rem 1.5rem;margin-top:1rem}.footer-links-column{display:flex;flex-direction:column;gap:.5rem}.footer-links-column a{color:hsla(0,0%,100%,.8);text-decoration:none;font-size:.9rem;transition:color .2s}.footer-links-column a:hover{color:var(--accent-color)}.footer-legal{border-top:1px solid hsla(0,0%,100%,.1);padding-top:1rem;margin-top:.5rem}.footer-legal-links{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.footer-legal-links a{color:hsla(0,0%,100%,.7);text-decoration:none;font-size:.85rem;transition:color .2s}.footer-legal-links a:hover{color:var(--accent-color)}.footer-separator{color:hsla(0,0%,100%,.4);font-size:.85rem}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.1);padding-top:1rem;text-align:center;color:hsla(0,0%,100%,.6);font-size:.85rem}@media (max-width:768px){.footer-container{padding:1.5rem 1rem 1rem}.footer-content{gap:1rem;margin-bottom:1rem}.footer-main h3{font-size:1.1rem;margin-bottom:.5rem}.footer-main p{font-size:.85rem;margin-bottom:.75rem}.footer-links-grid{grid-template-columns:repeat(2,1fr);gap:.4rem 1rem;margin-top:.75rem}.footer-links-column{gap:.4rem}.footer-links-column a{font-size:.85rem}.footer-legal{padding-top:.75rem;margin-top:.25rem}.footer-legal-links{gap:.75rem}.footer-bottom,.footer-legal-links a,.footer-separator{font-size:.8rem}.footer-bottom{padding-top:.75rem}}.header{position:fixed;top:0;left:0;right:0;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-card);z-index:1000;border-bottom:1px solid var(--border-light)}.header-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;justify-content:space-between}.header-container,.logo{display:flex;align-items:center}.logo{font-size:1.5rem;font-weight:600;color:var(--primary-color);gap:.75rem;letter-spacing:.05em;height:40px}.logo-image{height:40px;width:auto;object-fit:contain;flex-shrink:0}.logo-text{letter-spacing:.1em;white-space:nowrap}.header-right{display:flex;align-items:center;gap:1.5rem}.language-switcher{display:flex;gap:.25rem;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.25rem;background:var(--bg-light)}.lang-btn{padding:.5rem 1rem;font-size:.875rem;border-radius:var(--radius-sm);transition:all .2s;color:var(--text-light);font-weight:500}.lang-btn:hover{background:var(--bg-white)}.lang-btn.active{background:var(--primary-color);color:var(--bg-white);box-shadow:var(--shadow-card)}.menu-toggle{display:none;flex-direction:column;gap:4px;width:24px;height:24px;padding:0}.menu-toggle span{width:100%;height:2px;background:var(--text-dark);transition:all .3s}.nav{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);box-shadow:0 2px 8px rgba(107,142,107,.15)}.nav-list{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;list-style:none;gap:2rem}.nav-list li a{display:block;padding:1rem 0;color:var(--bg-white);font-weight:500;transition:opacity .2s;border-bottom:3px solid transparent}.nav-list li a.active,.nav-list li a:hover{opacity:.9;border-bottom-color:var(--accent-color)}.nav-recruitment-banner{background:var(--accent-color);padding:.5rem 2rem;animation:blink 4s ease-in-out infinite}.recruitment-banner-link{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;color:var(--text-white);font-weight:500;font-size:.875rem;text-decoration:none;transition:opacity .2s ease}.recruitment-banner-link:hover{opacity:.9}.recruitment-icon{font-size:1rem}.recruitment-text{flex:1 1}.recruitment-arrow{font-size:1rem}@keyframes blink{0%,to{opacity:1}50%{opacity:.85}}@media (max-width:768px){.header-container{padding:.75rem 1rem}.logo{font-size:1rem;flex-shrink:0;height:32px;gap:.5rem}.logo-image{height:32px;width:auto}.logo-text{letter-spacing:.05em;white-space:nowrap;font-size:.9rem}.header-right{gap:.75rem;flex-shrink:0}.language-switcher{gap:.15rem;padding:.15rem;order:-1}.lang-btn{padding:.4rem .7rem;font-size:.75rem}.menu-toggle{display:flex}.nav{max-height:0;overflow:hidden;transition:max-height .3s ease-out}.nav.open{max-height:500px}.nav-list{flex-direction:column;gap:0;padding:1rem 2rem}.nav-list li a{padding:.75rem 0;border-bottom:1px solid hsla(0,0%,100%,.1)}.nav-recruitment-banner{padding:.5rem 1rem}.recruitment-banner-link{font-size:.8125rem;gap:.4rem}}