@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Instrument+Sans:wght@400;500;600&family=Noto+Sans+SC:wght@300;400;500&display=swap";:root{--bg: #faf9f7;--bg-alt: #f4f2ee;--text: #1c1a17;--text-m: #7a7570;--accent: #e85520;--border: #d9d4cd;--font-display: "Bebas Neue", "Noto Sans SC", sans-serif;--font-ui: "Instrument Sans", "Noto Sans SC", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-ui);color:var(--text);background:var(--bg);line-height:1.7;font-size:clamp(14px,1.5vw,17px);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button{cursor:pointer;border:none;background:none;font-family:inherit}.container{max-width:none;padding:0 clamp(32px,8vw,120px);margin:0 auto}.section{padding:clamp(80px,10vw,140px) 0}.fs-xl{font-family:var(--font-display);font-size:clamp(56px,10vw,128px);font-weight:400;line-height:.9;letter-spacing:4px;text-transform:uppercase}.fs-lg{font-family:var(--font-display);font-size:clamp(28px,5vw,60px);font-weight:400;line-height:.95;letter-spacing:3px;text-transform:uppercase}.fs-md{font-family:var(--font-ui);font-size:clamp(18px,2.2vw,24px);font-weight:400;line-height:1.5}.fs-sm{font-family:var(--font-ui);font-size:clamp(14px,1.5vw,17px);font-weight:400;line-height:1.7}.fs-xs{font-family:var(--font-ui);font-size:clamp(10px,1.2vw,13px);font-weight:400;line-height:1.5}@keyframes fadeUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideLeft{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.reveal{opacity:0;transition:opacity .7s ease,transform .7s ease}.reveal.from-bottom{transform:translateY(40px)}.reveal.from-left{transform:translate(-40px)}.reveal.from-right{transform:translate(40px)}.reveal.from-scale{transform:scale(.95)}.reveal.visible{opacity:1;transform:none}.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--bg);padding:0 24px;height:52px;font-family:var(--font-ui);font-size:var(--fs-sm, clamp(14px, 1.5vw, 17px));font-weight:400;border:1px solid var(--accent);border-radius:2px;transition:all .2s;cursor:pointer;white-space:nowrap;letter-spacing:1px}.btn-primary:hover{background:var(--text);color:var(--bg);border-color:var(--text);transform:scale(1.03)}.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text);padding:0 24px;height:52px;font-family:var(--font-ui);font-size:var(--fs-sm, clamp(14px, 1.5vw, 17px));font-weight:400;border:1px solid var(--border);border-radius:2px;transition:all .2s;cursor:pointer;letter-spacing:1px}.btn-ghost:hover{background:var(--border);color:var(--text);border-color:var(--text);transform:scale(1.03)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg-alt)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-m)}.app{min-height:100vh}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:clamp(14px,1.5vw,17px);color:#ffffff8c;margin-bottom:16px;flex-wrap:wrap}.breadcrumb a{color:#ffffffa6;text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:#fffffff2}.breadcrumb span:last-child{color:#ffffffd9}.breadcrumb-sep{color:#ffffff4d;font-size:clamp(10px,1.2vw,13px)}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.nav-container{max-width:none;padding:0 clamp(32px,6vw,80px);height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{display:flex;align-items:center;gap:10px;cursor:pointer;flex-shrink:0}.nav-logo{width:36px;height:36px;background:var(--accent);color:var(--bg);border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:clamp(10px,1.2vw,13px);font-weight:400;transition:transform .2s}.nav-logo:hover{transform:scale(1.05)}.logo-hd{color:var(--bg)}.logo-gl{color:var(--text-m)}.nav-brand-text{display:flex;flex-direction:column;gap:2px}.brand-cn{font-family:var(--font-ui);font-size:clamp(12px,1.2vw,15px);font-weight:400;color:var(--text);line-height:1.2;letter-spacing:.3px;white-space:nowrap}.brand-en{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);letter-spacing:2px;text-transform:uppercase;font-family:var(--font-ui)}.nav-links{display:flex;align-items:center;gap:2px}.nav-link{background:none;border:none;cursor:pointer;padding:8px 14px;border-radius:2px;color:var(--text);font-family:var(--font-ui);position:relative;transition:all .2s}.nav-link:hover{color:var(--text);background:var(--bg-alt)}.nav-link.active{color:var(--text)}.link-cn{font-size:clamp(14px,1.5vw,17px);font-weight:400;line-height:1.2;letter-spacing:.5px}.link-en{font-size:clamp(10px,1.2vw,13px);color:inherit;opacity:.5;letter-spacing:1px;text-transform:uppercase;font-family:var(--font-ui)}.btn-nav{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:var(--bg);padding:0 16px;height:36px;border-radius:2px;font-family:var(--font-ui);font-size:clamp(14px,1.5vw,17px);font-weight:400;letter-spacing:.5px;transition:all .2s;cursor:pointer}.btn-nav:hover{background:var(--text);color:var(--bg);transform:scale(1.03)}.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.nav-hamburger span{display:block;width:20px;height:1.5px;background:var(--text);border-radius:1px;transition:all .3s}.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.nav-hamburger.open span:nth-child(2){opacity:0}.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}@media(max-width:900px){.nav-hamburger{display:flex}.nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:12px;gap:4px}.nav-links.open{display:flex}.nav-link{width:100%;flex-direction:row;gap:10px;padding:10px 14px;border-radius:2px;border:1px solid transparent;transition:all .2s}.nav-link:hover{border-color:var(--border);background:var(--bg-alt)}.link-en{display:none}}.hero{position:relative;min-height:80vh;min-height:80svh;display:flex;align-items:center;overflow:hidden;background:var(--bg-alt);padding-top:64px}.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg-img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(18,28,48,.5) 0%,rgba(18,28,48,.28) 22%,rgba(18,28,48,.1) 48%,rgba(18,28,48,.03) 72%,transparent 88%)}.hero-grain{position:absolute;inset:0;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");pointer-events:none;z-index:1}.hero-content{position:relative;z-index:2;width:100%}.hero-inner{max-width:760px}.hero-tag{display:flex;align-items:center;gap:16px;font-family:var(--font-ui);font-size:clamp(14px,1.5vw,17px);letter-spacing:4px;text-transform:uppercase;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.35);margin-bottom:28px}.tag-line{display:block;width:40px;height:2px;background:#fff;flex-shrink:0}.hero-title{font-family:var(--font-display);font-size:clamp(42px,7.5vw,96px);font-weight:400;color:#fff;line-height:.9;letter-spacing:4px;text-transform:uppercase;text-shadow:0 2px 16px rgba(0,0,0,.35);margin-bottom:28px}.hero-stats{display:flex;align-items:center;gap:40px;margin-bottom:52px}.stat-item{display:flex;flex-direction:column;gap:8px}.stat-num{font-family:var(--font-display);font-size:clamp(28px,5vw,60px);font-weight:400;color:#fff;line-height:1;letter-spacing:3px;text-shadow:0 1px 8px rgba(0,0,0,.3)}.stat-plus,.stat-unit{font-size:.45em;color:var(--accent);vertical-align:super}.stat-label{font-family:var(--font-ui);font-size:clamp(10px,1.2vw,13px);color:#ffffffc7;text-transform:uppercase;max-width:140px;line-height:1.4;text-shadow:0 1px 8px rgba(0,0,0,.55)}.stat-divider{width:1px;height:52px;background:#ffffff26;flex-shrink:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .btn-ghost{color:#fff;border-color:#ffffff4d}.hero-actions .btn-ghost:hover{color:#fff;border-color:#fff;background:#ffffff14}.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translate(-50%);z-index:2;cursor:pointer;padding:16px}.scroll-indicator{width:1px;height:60px;background:linear-gradient(to bottom,var(--accent),transparent);animation:scroll-pulse 2.2s ease-in-out infinite}@keyframes scroll-pulse{0%{transform:scaleY(0);transform-origin:top;opacity:0}30%{transform:scaleY(1);transform-origin:top;opacity:1}60%{transform:scaleY(1);transform-origin:bottom;opacity:1}to{transform:scaleY(0);transform-origin:bottom;opacity:0}}@media(max-width:900px){.hero-stats{gap:28px}}@media(max-width:640px){.hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stat-divider{display:none}.hero-actions{flex-direction:column}.hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%;justify-content:center}}.about{background:var(--bg-alt);padding:clamp(40px,6vw,80px) 0}.about .container{max-width:none;padding:0 clamp(40px,8vw,120px)}.about-content{padding:12px 0}.about-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,72px);align-items:start}.about-text{padding-top:0}.section-tag{font-size:clamp(10px,1.2vw,13px);letter-spacing:3px;margin-bottom:20px}.section-title{font-size:clamp(28px,5vw,60px);letter-spacing:-1px;margin-bottom:24px;font-family:var(--font-display);font-weight:400;color:var(--text);line-height:1.05;text-transform:uppercase}.text-accent{color:var(--accent)}.about-lead{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);margin-bottom:20px;line-height:1.85}.about-body{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);margin-bottom:40px;line-height:1.85}.about-body strong{color:var(--accent);font-weight:400}.about-values{display:grid;grid-template-columns:1fr 1fr;gap:12px}.value-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg);border:1px solid var(--border);border-radius:4px;border-left:4px solid var(--accent);transition:all .2s ease}.value-card:hover{background:var(--bg-alt);border-color:var(--text);border-left-color:var(--accent)}.value-title{font-family:var(--font-ui);font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--text);margin-bottom:6px;letter-spacing:0}@media(max-width:900px){.about-row{grid-template-columns:1fr;gap:40px}.about-values{grid-template-columns:1fr}}.about-adv-section{margin-top:clamp(32px,5vw,56px)}.about-adv-section .section-header{text-align:left;margin-bottom:40px}.about-adv-section .section-tag{color:var(--accent)}.about-adv-section .section-title{color:var(--text);font-family:var(--font-display);font-weight:400;line-height:1.1;letter-spacing:-1px;margin-bottom:0}.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:36px}.adv-card{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:28px 24px;transition:border-color .2s ease,transform .2s ease;position:relative}.adv-card:hover{border-color:var(--accent);transform:translateY(-4px)}.adv-icon{font-size:28px;color:var(--accent);font-family:var(--font-display);flex-shrink:0}.adv-header{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.adv-title{font-family:var(--font-display);font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin-bottom:4px;letter-spacing:-.3px}.adv-title-en{font-family:var(--font-display);font-size:clamp(10px,1.2vw,13px);font-weight:400;color:var(--accent);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}.adv-desc{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);line-height:1.8}@media(max-width:900px){.adv-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.adv-grid{grid-template-columns:1fr}}.services{background:var(--bg-alt);padding:clamp(40px,6vw,80px) 0}.services-header{margin-bottom:clamp(36px,5vw,56px)}.services-title-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.services-title-row .section-title{margin-bottom:0}.services-title-row .btn-primary{flex-shrink:0;height:44px;padding:0 28px;font-size:clamp(13px,1.4vw,15px)}.services .section-tag{color:var(--accent);display:block;font-family:var(--font-ui);font-size:clamp(10px,1.2vw,13px);font-weight:400;letter-spacing:4px;text-transform:uppercase;margin-bottom:20px}.services .section-title{color:var(--text);font-size:clamp(28px,5vw,60px);letter-spacing:1px;text-transform:uppercase;line-height:1}.services-list{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px)}.service-card{display:flex;flex-direction:column;background:var(--bg);border-radius:4px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #00000014}.service-card-img{position:relative;overflow:hidden;height:clamp(180px,22vw,260px)}.service-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.service-card:hover .service-card-img img{transform:scale(1.04)}.service-card-content{display:flex;flex-direction:column;padding:clamp(20px,3vw,32px)}.service-card-meta{display:flex;align-items:center;gap:12px;margin-bottom:10px}.service-card-num-label{font-family:var(--font-display);font-size:clamp(10px,1.1vw,12px);font-weight:400;color:var(--accent);letter-spacing:2px}.service-card-en{font-family:var(--font-ui);font-size:clamp(10px,1.1vw,12px);color:var(--text-m);letter-spacing:2px;text-transform:uppercase}.service-card-title{font-family:var(--font-display);font-size:clamp(20px,3.5vw,40px);font-weight:400;color:var(--text);letter-spacing:2px;text-transform:uppercase;margin-bottom:16px;line-height:1.1}.service-card-points{list-style:none;display:grid;grid-template-columns:1fr;gap:8px}.service-card-point{display:flex;align-items:flex-start;gap:10px;font-family:var(--font-ui);font-size:clamp(13px,1.4vw,15px);color:var(--text);line-height:1.6}.point-dash{width:14px;height:1px;background:var(--accent);flex-shrink:0;margin-top:9px}@media(max-width:768px){.services-list{grid-template-columns:1fr;gap:20px}.service-card{flex-direction:column}.service-card-img{height:220px}.service-card-title{letter-spacing:1px}}.home-news{background:var(--bg-alt);padding:clamp(40px,6vw,80px) 0}.home-news .container{max-width:none;padding:0 clamp(40px,8vw,120px)}.home-news .cases-entry{border-radius:0;margin:0 clamp(-40px,-8vw,-120px)}.nf-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;margin-bottom:48px}.nf-col-header{margin-bottom:36px}.news-list{display:flex;flex-direction:column;gap:14px}.news-card{display:block;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:24px 26px;text-decoration:none;transition:border-color .2s ease,transform .2s ease;cursor:pointer}.news-card:hover{border-color:var(--text);transform:translate(6px)}.news-meta{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.news-tag{background:--accent;color:var(--accent);font-family:var(--font-display);font-size:clamp(10px,1.2vw,13px);font-weight:400;letter-spacing:1.5px;padding:3px 10px;border-radius:2px;text-transform:uppercase}.news-date{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);font-family:var(--font-display)}.news-title{font-family:var(--font-ui);font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);line-height:1.4;margin-bottom:8px;letter-spacing:-.2px}.news-excerpt{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);line-height:1.75;margin-bottom:10px}.news-link{font-family:var(--font-display);font-size:clamp(10px,1.2vw,13px);font-weight:400;color:var(--accent)}.view-more-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--accent);text-decoration:none;margin-top:12px;transition:gap .2s}.view-more-link:hover{gap:10px}.empty-hint{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);padding:28px 0;text-align:center;font-style:italic}.faq-list{display:flex;flex-direction:column;gap:10px}.faq-item{background:var(--bg);border:1px solid var(--border);border-radius:4px;overflow:hidden;cursor:pointer;transition:all .2s ease}.faq-item:hover{border-color:var(--text)}.faq-item.open{border-color:var(--accent)}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--text);gap:16px;user-select:none;font-family:var(--font-ui)}.faq-arrow{color:var(--accent);flex-shrink:0;font-size:clamp(10px,1.2vw,13px);display:flex;align-items:center}.faq-answer{padding:14px 20px 18px;font-size:clamp(14px,1.5vw,17px);color:var(--text-m);line-height:1.8;border-top:1px solid var(--border)}.cases-entry{display:flex;align-items:center;justify-content:space-between;background:var(--text);border-radius:8px;padding:36px 48px;gap:32px}.cases-entry-text{display:flex;align-items:center;gap:24px}.cases-entry-icon{font-size:32px;flex-shrink:0}.cases-entry-text h3{font-family:var(--font-display);font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin-bottom:6px;letter-spacing:-.5px}.cases-entry-text p{font-size:clamp(14px,1.5vw,17px);color:--text-m}.cases-entry .btn-primary{height:52px;padding:0 36px;font-size:clamp(14px,1.5vw,17px)}@media(max-width:900px){.nf-grid{grid-template-columns:1fr;gap:56px}}@media(max-width:600px){.cases-entry{flex-direction:column;text-align:center;padding:32px 24px}.cases-entry-text{flex-direction:column;text-align:center}.cases-entry .btn-primary{width:100%;justify-content:center;height:52px}}.contact{background:var(--bg);padding:clamp(40px,6vw,80px) 0}.contact .container{max-width:none;padding:0 clamp(40px,8vw,120px)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,64px);align-items:start}.contact-lead{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);line-height:1.8;margin-bottom:28px}.contact-cards{display:flex;flex-direction:column;gap:10px}.contact-card{display:flex;align-items:center;gap:14px;background:var(--bg);padding:16px 18px;border:1px solid var(--border);border-radius:4px;border-left:3px solid var(--accent);transition:all .2s ease;text-decoration:none;color:inherit}.contact-card:hover{background:var(--bg-alt);border-color:var(--text)}.contact-card-icon{font-size:22px;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.contact-card-label{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);margin-bottom:2px;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px}.contact-card-value{font-family:var(--font-ui);font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--text);letter-spacing:0}.contact-card-sub{font-size:clamp(10px,1.2vw,13px);color:var(--accent);font-weight:400;font-family:var(--font-display)}.contact-form-wrap{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:clamp(24px,4vw,40px)}.form-title{font-family:var(--font-display);font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--text);margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border);letter-spacing:-.2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group{margin-bottom:16px;display:flex;flex-direction:column;gap:5px}.form-group label{font-size:clamp(10px,1.2vw,13px);font-weight:400;color:var(--text);font-family:var(--font-display);letter-spacing:.2px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid var(--border);border-radius:4px;font-size:clamp(14px,1.5vw,17px);font-family:var(--font-ui);color:var(--text);background:var(--bg);transition:border-color .2s;outline:none;width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-m)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group textarea{resize:vertical;min-height:80px}.form-submit{width:100%;justify-content:center;padding:15px;font-size:clamp(14px,1.5vw,17px);border-radius:4px;height:52px}.contact-success{text-align:center;padding:48px 24px;display:flex;flex-direction:column;align-items:center;gap:14px}.success-icon{font-size:44px}.contact-success h3{font-family:var(--font-display);font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text)}.contact-success p{color:var(--text-m);font-size:clamp(14px,1.5vw,17px);max-width:260px}@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}@media(max-width:480px){.form-row{grid-template-columns:1fr}.contact-form-wrap{padding:20px}}.footer{background:var(--text);color:var(--bg);padding:80px 0 0}.footer>.container,.footer>div.container{max-width:none;padding:0 clamp(40px,8vw,120px)}.footer-top{display:grid;grid-template-columns:2fr 1fr 1.2fr 1.4fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--border)}.footer-brand{display:flex;flex-direction:column;gap:10px}.footer-logo{width:38px;height:38px;background:var(--accent);border-radius:4px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:400;font-size:clamp(10px,1.2vw,13px);color:var(--bg);letter-spacing:-.5px}.footer-cn{font-family:var(--font-display);font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--bg);letter-spacing:.2px}.footer-en{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);font-family:var(--font-display);letter-spacing:.5px}.footer-desc{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);line-height:1.7;margin-top:4px}.footer-tag{display:inline-block;background:var(--accent);color:var(--bg);font-size:clamp(10px,1.2vw,13px);font-weight:400;padding:4px 10px;border-radius:2px;letter-spacing:1px;text-transform:uppercase;margin-top:12px}.footer-heading{font-family:var(--font-ui);font-size:clamp(10px,1.2vw,13px);font-weight:400;letter-spacing:2px;text-transform:uppercase;color:var(--bg);margin-bottom:16px}.footer-nav,.footer-services{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px}.footer-nav li button,.footer-services li{background:none;border:none;color:var(--text-m);font-size:clamp(14px,1.5vw,17px);cursor:pointer;padding:0;transition:color .2s;text-align:left;font-family:var(--font-ui)}.footer-nav li button:hover,.footer-services li:hover{color:var(--bg)}.footer-services li{padding-left:12px;position:relative}.footer-services li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:4px;background:var(--accent);border-radius:50%;opacity:.6}.footer-contact-item{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:clamp(10px,1.2vw,13px)}.footer-contact-item a{color:var(--text-m);text-decoration:none;transition:color .2s;font-family:var(--font-ui)}.footer-contact-item a:hover{color:var(--bg)}.footer-bottom{padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.footer-bottom p{font-size:clamp(10px,1.2vw,13px);color:var(--text-m)}.footer-bottom-links{display:flex;gap:20px}.footer-bottom-links a{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);transition:color .2s}.footer-bottom-links a:hover{color:var(--bg)}@media(max-width:900px){.footer-top{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1 / -1}}@media(max-width:640px){.footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}}.back-to-top{position:fixed;bottom:32px;right:32px;width:48px;height:48px;background:var(--accent);color:var(--bg);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;box-shadow:0 4px 16px #e8552059;z-index:999}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--text);color:var(--bg);transform:translateY(-4px);box-shadow:0 8px 24px #e8552066}@media(max-width:600px){.back-to-top{bottom:20px;right:20px;width:44px;height:44px}}.blog-list-page{min-height:100vh;background:var(--bg-alt)}.page-hero{background:var(--text);padding:72px 0 56px;text-align:center}.page-hero .section-tag{background:#ffffff1f;color:#fffc}.page-title{font-size:clamp(28px,5vw,60px);font-weight:400;color:#fff;margin-bottom:12px}.page-subtitle{font-size:clamp(14px,1.5vw,17px);color:#fff9}.loading,.empty-state{text-align:center;padding:80px 0;color:var(--text-m);font-size:clamp(14px,1.5vw,17px)}.empty-hint{font-size:clamp(14px,1.5vw,17px);margin-top:8px;color:var(--text-m)}.empty-hint code{background:var(--accent);padding:2px 8px;border-radius:4px;font-size:clamp(10px,1.2vw,13px)}.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:28px;max-width:1200px;margin:0 auto}.post-card{display:block;text-decoration:none}.post-card-inner{background:var(--bg);border:1px solid var(--accent);border-radius:16px;padding:28px;height:100%;transition:all .25s;box-shadow:0 2px 8px #0000000a}.post-card:hover .post-card-inner{transform:translateY(-4px);box-shadow:0 12px 32px #0000001a;border-color:#e855204d}.post-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}.post-tag{background:#e8552014;color:var(--accent);font-size:clamp(10px,1.2vw,13px);font-weight:400;letter-spacing:.5px;padding:3px 10px;border-radius:20px;text-transform:uppercase}.post-date{font-size:clamp(10px,1.2vw,13px);color:var(--text-m)}.post-title{font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);line-height:1.4;margin-bottom:10px}.post-excerpt{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);line-height:1.7;margin-bottom:20px}.post-footer{display:flex;justify-content:flex-end}.post-read{font-size:clamp(10px,1.2vw,13px);font-weight:400;color:var(--accent)}@media(max-width:600px){.posts-grid{grid-template-columns:1fr}}.blog-post-page{min-height:100vh;background:var(--bg-alt)}.blog-post-page .page-hero{background:var(--text);padding:100px 24px 48px;text-align:center}.hero-back-link{display:inline-block;font-size:clamp(14px,1.5vw,17px);color:#fff9;margin-bottom:24px;text-decoration:none;transition:color .2s}.hero-back-link:hover{color:#fff}.hero-meta{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px}.blog-post-page .hero-tag{background:#e8552033;color:var(--accent);font-size:clamp(10px,1.2vw,13px);font-weight:400;padding:4px 12px;border-radius:20px;text-transform:uppercase}.hero-date{font-size:clamp(14px,1.5vw,17px);color:#fff9}.blog-post-page .page-title{font-size:clamp(28px,5vw,60px);font-weight:400;color:#fff;max-width:800px;margin:0 auto;line-height:1.3}.blog-post-page .page-content{padding:48px 24px 80px;max-width:800px;margin:0 auto}.back-link{display:inline-block;font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--accent);margin-bottom:32px;text-decoration:none}.back-link:hover{text-decoration:underline}.post-article{background:var(--bg);border:1px solid var(--accent);border-radius:16px;padding:48px 56px}.post-article h1{font-size:clamp(28px,5vw,60px);font-weight:400;color:var(--text);margin-bottom:24px;border-bottom:2px solid var(--accent);padding-bottom:16px}.post-article h2{font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin:32px 0 16px}.post-article h3{font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin:24px 0 12px}.post-article p{font-size:clamp(14px,1.5vw,17px);color:var(--text);line-height:1.8;margin-bottom:18px}.post-article ul,.post-article ol{margin:0 0 18px 24px}.post-article li{font-size:clamp(14px,1.5vw,17px);color:var(--text);line-height:1.8;margin-bottom:6px}.post-article blockquote{border-left:4px solid var(--accent);padding:12px 20px;background:#e855200d;margin:24px 0;border-radius:0 8px 8px 0}.post-article blockquote p{color:var(--text-m);margin:0}.post-article code{background:var(--bg-alt);padding:2px 8px;border-radius:4px;font-size:clamp(14px,1.5vw,17px)}.post-article pre{background:var(--text);color:var(--border);padding:20px;border-radius:8px;overflow-x:auto;margin:24px 0}.post-article pre code{background:none;padding:0;color:inherit}.post-article a{color:var(--accent);text-decoration:underline}.post-article strong{font-weight:400;color:var(--text)}@media(max-width:600px){.post-article{padding:24px}.post-article h1{font-size:clamp(18px,2.2vw,24px)}}.cases-list-page{min-height:100vh;background:var(--bg-alt)}.cases-list-page .page-hero{background:var(--text)}.page-content{padding:56px 24px 80px}.cases-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:32px;max-width:1200px;margin:0 auto}.case-card{display:block;text-decoration:none;border-radius:16px;overflow:hidden;background:var(--bg);border:1px solid var(--accent);transition:all .25s;box-shadow:0 2px 8px #0000000a}.case-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px #0000001f;border-color:#e855204d}.case-thumb{width:100%;height:220px;overflow:hidden;background:var(--bg-alt)}.case-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.case-card:hover .case-thumb img{transform:scale(1.05)}.case-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:clamp(56px,10vw,128px);background:var(--bg-alt)}.case-info{padding:24px}.case-tag{display:inline-block;background:#e8552014;color:var(--accent);font-size:clamp(10px,1.2vw,13px);font-weight:400;letter-spacing:.5px;padding:3px 10px;border-radius:20px;text-transform:uppercase;margin-bottom:10px}.case-title{font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin-bottom:8px;line-height:1.35}.case-excerpt{font-size:clamp(14px,1.5vw,17px);color:var(--text-m);line-height:1.7;margin-bottom:16px}.case-read{font-size:clamp(10px,1.2vw,13px);font-weight:400;color:var(--accent)}@media(max-width:600px){.cases-grid{grid-template-columns:1fr}}.case-detail-page{min-height:100vh;background:var(--bg-alt)}.case-detail-page .page-hero{background:var(--text);padding:100px 24px 48px;text-align:center}.case-detail-page .hero-back-link{display:inline-block;font-size:clamp(14px,1.5vw,17px);color:#fff9;margin-bottom:24px;text-decoration:none;transition:color .2s}.case-detail-page .hero-back-link:hover{color:#fff}.case-detail-page .hero-meta{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px}.case-detail-page .hero-tag{background:#e8552033;color:var(--accent);font-size:clamp(10px,1.2vw,13px);font-weight:400;padding:4px 12px;border-radius:20px;text-transform:uppercase}.case-detail-page .hero-date{font-size:clamp(14px,1.5vw,17px);color:#fff9}.case-detail-page .page-title{font-size:clamp(28px,5vw,60px);font-weight:400;color:#fff;max-width:900px;margin:0 auto;line-height:1.3}.case-detail-page .page-content{padding:48px 24px 80px;max-width:1000px;margin:0 auto}.case-article{background:var(--bg);border:1px solid var(--accent);border-radius:16px;padding:48px 56px;margin-bottom:48px}.case-article h1{font-size:clamp(28px,5vw,60px);font-weight:400;color:var(--text);margin-bottom:16px}.case-article h2{font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin:28px 0 14px}.case-article h3{font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--text);margin:20px 0 10px}.case-article p{font-size:clamp(14px,1.5vw,17px);color:var(--text);line-height:1.8;margin-bottom:16px}.case-article ul,.case-article ol{margin:0 0 16px 24px}.case-article li{font-size:clamp(14px,1.5vw,17px);color:var(--text);line-height:1.8;margin-bottom:6px}.case-article blockquote{border-left:4px solid var(--accent);padding:12px 20px;background:#e855200d;margin:24px 0;border-radius:0 8px 8px 0}.case-article blockquote p{color:var(--text-m);margin:0}.case-photos-section{background:var(--bg);border:1px solid var(--accent);border-radius:16px;padding:40px 48px;margin-top:0}.photos-title{font-size:clamp(18px,2.2vw,24px);font-weight:400;color:var(--text);margin-bottom:24px;display:flex;align-items:center;gap:8px}.case-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.case-photo-item{border-radius:10px;overflow:hidden;cursor:pointer;border:1px solid var(--accent);transition:all .2s}.case-photo-item:hover{transform:scale(1.02);box-shadow:0 6px 20px #0000001f;border-color:#e855204d}.case-photo-item img{width:100%;height:160px;object-fit:cover}.photo-caption{font-size:clamp(10px,1.2vw,13px);color:var(--text-m);padding:8px 10px;background:var(--bg-alt);margin:0;text-align:center}.lightbox{position:fixed;inset:0;background:#000000eb;display:flex;align-items:center;justify-content:center;z-index:9999}.lightbox img{max-width:90vw;max-height:85vh;border-radius:8px;object-fit:contain}.lightbox-close{position:fixed;top:20px;right:24px;background:none;border:none;color:#fff;font-size:28px;cursor:pointer;z-index:10001}.lightbox-prev,.lightbox-next{position:fixed;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;font-size:40px;cursor:pointer;padding:12px 16px;border-radius:8px;z-index:10001;transition:background .2s}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-prev:hover,.lightbox-next:hover{background:#fff3}.lightbox-counter{position:fixed;bottom:24px;left:50%;transform:translate(-50%);color:#fff9;font-size:clamp(14px,1.5vw,17px)}.not-found{text-align:center;padding:80px 0}.not-found h2{font-size:clamp(18px,2.2vw,24px);color:var(--text);margin-bottom:12px}.not-found p{color:var(--text-m);margin-bottom:24px}@media(max-width:600px){.case-article,.case-photos-section{padding:24px}.case-photos-grid{grid-template-columns:repeat(2,1fr)}}.skip-link[data-astro-cid-37fxchfa]{position:absolute;top:-100px;left:16px;background:var(--accent,#e85520);color:#fff;padding:8px 16px;border-radius:4px;z-index:9999;font-size:14px;text-decoration:none}.skip-link[data-astro-cid-37fxchfa]:focus{top:16px}.lang-switch[data-astro-cid-5blmo7yk]{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border:1px solid var(--accent);border-radius:4px;color:var(--accent);font-size:13px;font-weight:500;text-decoration:none;transition:all .2s ease;white-space:nowrap;margin-left:4px}.lang-switch[data-astro-cid-5blmo7yk]:hover{background:var(--accent);color:#fff}@media(max-width:768px){.lang-switch[data-astro-cid-5blmo7yk]{margin-left:0;margin-top:8px;width:fit-content}}
