*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none}.nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f0ebe3e6;border-bottom:1px solid #344e4114;position:fixed;top:0;left:0;right:0}.nav-inner{justify-content:space-between;align-items:center;max-width:1200px;height:72px;margin:0 auto;padding:0 40px;display:flex}.logo{align-items:center;gap:4px;display:flex}.logo img{object-fit:contain;width:auto;height:auto;max-height:28px;margin:0;padding:0}.logo-mark{background:var(--green-mid);border-radius:2px;width:10px;height:10px;display:inline-block;transform:rotate(45deg)}.logo-text{font-family:var(--font-display);letter-spacing:2px;color:var(--green-deep);font-size:18px;font-weight:700}.nav-links{gap:36px;display:flex}.nav-links a{letter-spacing:1px;color:var(--text-secondary);padding-bottom:4px;font-size:13px;font-weight:500;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--green-mid);width:0;height:1.5px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-links a:hover{color:var(--green-deep)}.nav-links a:hover:after{width:100%}.nav-links a.nav-active{color:var(--green-deep);font-weight:600}.nav-links a.nav-active:after{width:100%}.mobile-menu-btn{cursor:pointer;color:var(--green-deep);background:0 0;border:none;padding:8px;display:none}.mobile-menu-btn svg{display:block}.sidebar-overlay{z-index:200;opacity:0;visibility:hidden;background:#00000080;transition:all .3s;position:fixed;inset:0}.sidebar-overlay.active{opacity:1;visibility:visible}.mobile-sidebar{background:var(--surface);z-index:201;width:150px;height:100vh;transition:right .3s;position:fixed;top:0;right:-300px;overflow-y:auto;box-shadow:-5px 0 20px #0000001a}.mobile-sidebar.open{right:0}.sidebar-header{border-bottom:1px solid #344e411a;justify-content:space-between;align-items:center;padding:20px;display:flex}.sidebar-close-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;padding:4px}.sidebar-close-btn svg{display:block}.sidebar-nav{flex-direction:column;padding:10px 0;display:flex}.sidebar-nav a{color:var(--text-primary);border-bottom:1px solid #344e410f;padding:16px 20px;font-size:16px;transition:all .2s;display:block}.sidebar-nav a:hover,.sidebar-nav a.active{color:var(--green-mid);background:#344e410a}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:60px;max-width:1200px;min-height:100vh;margin:0 auto;padding:140px 40px 80px;display:grid}.hero-tag{font-family:var(--font-display);letter-spacing:5px;color:var(--green-soft);margin-bottom:20px;font-size:11px}.hero-title{font-family:var(--font-display);color:var(--green-deep);letter-spacing:1px;margin-bottom:20px;font-size:48px;font-weight:700;line-height:1.3}.hero-desc{color:var(--text-secondary);max-width:500px;margin-bottom:40px;font-size:18px;line-height:1.8}.btn{background:var(--green-mid);color:var(--white);letter-spacing:2px;cursor:pointer;border:none;border-radius:4px;padding:14px 36px;font-size:14px;font-weight:500;transition:background .2s;display:inline-block}.btn:hover{background:var(--green-deep)}.btn-outline{color:var(--green-mid);border:1.5px solid var(--green-mid);background:0 0}.btn-outline:hover{background:var(--green-mid);color:var(--white)}.hero-visual{border-radius:8px;height:420px;position:relative;overflow:hidden}.hero-img{object-fit:cover;width:100%;height:100%;display:block}.hv-label{font-family:var(--font-display);color:var(--white);letter-spacing:3px;background:#344e4199;border-radius:3px;padding:4px 12px;font-size:11px;position:absolute;bottom:20px;right:24px}.home-preview{max-width:1200px;margin:0 auto;padding:40px 40px 80px}.preview-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.preview-card{background:var(--surface);border:1px solid #344e410f;border-radius:8px;transition:transform .2s,box-shadow .2s;overflow:hidden}.preview-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #344e4114}.more-link{text-align:center;margin-top:40px}.more-link a{color:var(--green-mid);letter-spacing:1px;font-size:14px;font-weight:500;transition:color .2s}.more-link a:hover{color:var(--green-deep)}.page-banner{text-align:center;max-width:1200px;margin:0 auto;padding:140px 40px 60px}.page-banner-title{font-family:var(--font-display);color:var(--green-deep);letter-spacing:2px;margin-top:16px;font-size:44px;font-weight:700;line-height:1.25}.page-banner .section-line{margin:20px auto 0}.page-banner-desc{color:var(--text-secondary);max-width:520px;margin-top:20px;margin-left:auto;margin-right:auto;font-size:15px;line-height:1.8}.category-filter{max-width:1200px;margin:0 auto;padding:40px 40px 20px}.category-filter-inner{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.cf-label{font-family:var(--font-display);color:var(--green-deep);letter-spacing:1px;font-size:13px;font-weight:600}.cf-tags{flex-wrap:wrap;gap:10px;display:flex}.cf-tag{background:var(--surface);border:1.5px solid var(--green-pale);color:var(--text-secondary);cursor:pointer;letter-spacing:.5px;border-radius:24px;padding:8px 18px;font-size:13px;font-weight:500;transition:all .2s}.cf-tag:hover{background:var(--green-pale);color:var(--green-deep);border-color:var(--green-soft)}.cf-tag--active{background:var(--green-mid);color:var(--white);border-color:var(--green-mid)}.cf-tag--active:hover{background:var(--green-deep);border-color:var(--green-deep)}.no-products{text-align:center;color:var(--text-muted);padding:80px 40px;font-size:15px}.faq-section{max-width:900px;margin:0 auto;padding:60px 40px 80px}.faq-container{flex-direction:column;gap:12px;display:flex}.faq-item{background:var(--surface);border:1.5px solid var(--green-pale);border-radius:8px;transition:all .2s;overflow:hidden}.faq-item:hover{border-color:var(--green-soft)}.faq-item--expanded{border-color:var(--green-mid);box-shadow:0 4px 12px #5881571a}.faq-question{cursor:pointer;text-align:left;width:100%;color:var(--green-deep);letter-spacing:.5px;background:0 0;border:none;justify-content:space-between;align-items:center;padding:20px 24px;font-size:15px;font-weight:600;line-height:1.6;display:flex}.fq-text{flex:1;padding-right:16px}.fq-icon{background:var(--green-pale);width:32px;height:32px;color:var(--green-mid);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:300;transition:all .2s;display:flex}.faq-item--expanded .fq-icon{background:var(--green-mid);color:var(--white)}.faq-answer{padding:0 24px 20px;animation:.3s ease-out faqSlideDown}.faq-answer p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.8}@keyframes faqSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.news-section{max-width:1200px;margin:0 auto;padding:60px 40px 80px}.news-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:28px;display:grid}.news-card{background:var(--surface);border:1.5px solid var(--green-pale);border-radius:8px;transition:all .3s;overflow:hidden}.news-card:hover{border-color:var(--green-soft);transform:translateY(-4px);box-shadow:0 8px 24px #344e411a}.news-cover{width:100%;height:220px;overflow:hidden}.news-cover img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.news-card:hover .news-cover img{transform:scale(1.05)}.news-cover--placeholder{background:linear-gradient(135deg, var(--green-mid) 0%, var(--green-soft) 100%);justify-content:center;align-items:center;display:flex}.news-cover--placeholder span{font-family:var(--font-display);color:var(--white);letter-spacing:2px;font-size:18px;font-weight:600}.news-content{padding:24px}.news-meta{color:var(--text-muted);align-items:center;gap:12px;margin-bottom:12px;font-size:12px;display:flex}.news-category{background:var(--green-pale);color:var(--green-deep);border-radius:12px;padding:3px 10px;font-weight:500}.news-date{letter-spacing:.5px}.news-readtime{margin-left:auto}.news-title{font-family:var(--font-display);color:var(--green-deep);margin-bottom:12px;font-size:18px;font-weight:700;line-height:1.4}.news-summary{color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.7}.news-readmore{color:var(--green-mid);cursor:pointer;letter-spacing:.5px;background:0 0;border:none;font-size:13px;font-weight:600;transition:color .2s}.news-readmore:hover{color:var(--green-deep)}.team-section{max-width:1200px;margin:0 auto;padding:80px 40px 100px}.team-grid{grid-template-columns:repeat(4,1fr);gap:32px;display:grid}.team-card{text-align:center;background:var(--surface);border:1.5px solid var(--green-pale);border-radius:12px;padding:32px 24px;transition:all .3s}.team-card:hover{border-color:var(--green-soft);transform:translateY(-6px);box-shadow:0 8px 24px #344e411a}.team-avatar{border:3px solid var(--green-pale);border-radius:50%;width:120px;height:120px;margin:0 auto 20px;overflow:hidden}.team-avatar img{object-fit:cover;width:100%;height:100%}.team-name{font-family:var(--font-display);color:var(--green-deep);margin-bottom:8px;font-size:18px;font-weight:700}.team-role{color:var(--green-mid);letter-spacing:1px;margin-bottom:16px;font-size:13px;font-weight:600;display:block}.team-bio{color:var(--text-secondary);font-size:14px;line-height:1.7}@media (width<=900px){.team-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (width<=600px){.team-grid{grid-template-columns:1fr}}.section-header{text-align:center;margin-bottom:60px}.section-tag{font-family:var(--font-display);letter-spacing:4px;color:var(--green-soft);font-size:11px}.section-title{font-family:var(--font-display);color:var(--green-deep);letter-spacing:1px;margin-top:12px;font-size:36px;font-weight:600}.section-line{background:var(--green-mid);width:40px;height:2px;margin:20px auto 0}.products{max-width:1200px;margin:0 auto;padding:80px 40px 100px}.product-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.product-card{background:var(--surface);border:1px solid #344e410f;border-radius:8px;transition:transform .2s,box-shadow .2s;overflow:hidden}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #344e4114}.product-visual{height:220px;position:relative;overflow:hidden}.pv-img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.product-card:hover .pv-img,.preview-card:hover .pv-img{transform:scale(1.05)}.pv-label{font-family:var(--font-display);color:var(--green-mid);opacity:.15;font-size:28px;font-weight:700;position:absolute;bottom:14px;left:16px}.product-info{padding:24px}.product-info h3{color:var(--green-deep);margin-bottom:8px;font-size:18px;font-weight:600}.product-info p{color:var(--text-secondary);margin-bottom:14px;font-size:14px;line-height:1.7}.product-badge{color:var(--green-mid);letter-spacing:1px;background:#5881571a;border-radius:20px;margin-right:6px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.product-card--full{grid-template-columns:1fr 1fr;display:grid}.product-card--full .product-visual{height:100%;min-height:280px}.product-features{flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.product-detail{border-top:1px solid var(--green-pale);margin-bottom:24px;padding:16px 0}.pd-item{justify-content:space-between;padding:6px 0;display:flex}.pd-label{color:var(--text-muted);letter-spacing:1px;font-size:12px}.pd-value{color:var(--text-primary);font-size:13px;font-weight:500}.process{max-width:1200px;margin:0 auto;padding:80px 40px 100px}.process-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.process-step{background:var(--surface);border:1px solid #344e410f;border-radius:8px;padding:32px 24px;position:relative}.ps-num{font-family:var(--font-display);color:var(--green-mid);opacity:.12;margin-bottom:12px;font-size:40px;font-weight:700;display:block}.process-step h4{color:var(--green-deep);margin-bottom:8px;font-size:16px;font-weight:600}.process-step p{color:var(--text-secondary);font-size:13px;line-height:1.6}.about{background:var(--surface);padding:80px 0}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:80px;max-width:1200px;margin:0 auto;padding:0 40px;display:grid}.about-visual{border-radius:8px;height:360px;position:relative;overflow:hidden}.about-img{object-fit:cover;width:100%;height:100%;display:block}.about-content .section-tag{display:block}.about-content .section-title{text-align:left}.about-content .section-line{margin:20px 0 0}.about-heading{font-family:var(--font-display);color:var(--green-deep);margin-bottom:20px;font-size:24px;font-weight:600;line-height:1.4}.about-text{color:var(--text-secondary);margin-top:16px;font-size:15px;line-height:1.9}.about-stats{gap:48px;margin-top:40px;display:flex}.stat{flex-direction:column;display:flex}.stat-num{font-family:var(--font-display);color:var(--green-mid);font-size:36px;font-weight:700;line-height:1}.stat-label{color:var(--text-muted);letter-spacing:1px;margin-top:8px;font-size:13px}.stats-section{max-width:1200px;margin:0 auto;padding:60px 40px 80px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.stat-card{background:var(--surface);text-align:center;border:1px solid #344e410f;border-radius:8px;padding:28px 24px}.stat-card .stat-num{margin-bottom:4px;font-size:36px;display:block}.stat-card .stat-label{margin-bottom:8px;font-size:13px;display:block}.stat-desc{color:var(--text-muted);font-size:12px;line-height:1.5}.philosophy{max-width:1200px;margin:0 auto;padding:80px 40px 100px}.philosophy-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.phi-card{background:var(--surface);text-align:center;border:1px solid #344e410f;border-radius:8px;padding:36px 28px}.phi-icon{border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 20px;display:flex}.phi-icon--1{background:#a3b18a40}.phi-icon--2{background:#58815726}.phi-icon--3{background:#344e411a}.phi-card h4{color:var(--green-deep);margin-bottom:10px;font-size:18px;font-weight:600}.phi-card p{color:var(--text-secondary);font-size:14px;line-height:1.7}.contact{max-width:1200px;margin:0 auto;padding:60px 40px 100px}.contact-info h3{color:var(--green-deep);margin-bottom:12px;font-size:20px;font-weight:600}.contact-info p{color:var(--text-secondary);margin-bottom:28px;font-size:15px;line-height:1.8}.contact-grid{grid-template-columns:1fr 1fr;gap:60px;display:grid}.contact-item{flex-direction:column;margin-bottom:20px;display:flex}.ci-label{letter-spacing:2px;color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:11px}.ci-value{color:var(--text-primary);font-size:15px;font-weight:500}.contact-form{flex-direction:column;gap:16px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form input,.contact-form textarea,.form-select{background:var(--surface);border:1px solid var(--green-pale);width:100%;font-family:var(--font-body);color:var(--text-primary);appearance:none;border-radius:4px;outline:none;padding:14px 16px;font-size:14px;transition:border-color .2s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted)}.contact-form input:focus,.contact-form textarea:focus,.form-select:focus{border-color:var(--green-mid)}.contact-form textarea{resize:vertical}.form-select{cursor:pointer;color:var(--text-muted)}.form-select:focus{color:var(--text-primary)}.contact-form .btn{align-self:flex-start;margin-top:8px}.footer{background:var(--green-deep);padding:40px 0}.footer-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1200px;margin:0 auto;padding:0 40px;display:flex}.footer-brand{align-items:center;gap:4px;display:flex}.footer-brand img{object-fit:contain;width:auto;height:auto;max-height:24px;margin:0;padding:0}.footer-brand .logo-mark{background:var(--green-soft)}.footer-brand .logo-text{color:var(--bg);font-size:16px}.footer-social{align-items:center;gap:16px;display:flex}.social-link{color:var(--green-soft);background:#ffffff1a;border:1px solid #a3b18a4d;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.social-link:hover{border-color:var(--green-soft);color:var(--bg);background:#fff3;transform:translateY(-2px)}.social-icon{background:var(--green-soft);width:20px;height:20px;color:var(--green-deep);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.footer-copy{color:var(--green-soft);letter-spacing:1px;font-size:13px}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--green-deep);border-radius:1px;width:22px;height:2px;transition:transform .3s,opacity .3s;display:block}.hamburger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}body{animation:.4s pageIn}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.back-top{background:var(--green-mid);width:44px;height:44px;color:var(--white);cursor:pointer;opacity:0;pointer-events:none;z-index:90;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:opacity .3s,background .2s;display:flex;position:fixed;bottom:32px;right:32px}.back-top.is-visible{opacity:1;pointer-events:auto}.back-top:hover{background:var(--green-deep)}.clients{max-width:1200px;margin:0 auto;padding:60px 40px 80px}.logo-wall{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.lw-item{background:var(--surface);border:1px solid var(--green-pale);border-radius:6px;justify-content:center;align-items:center;min-width:120px;min-height:60px;padding:12px 20px;transition:border-color .2s,box-shadow .2s;display:flex}.lw-img{object-fit:contain;filter:grayscale()opacity(.6);width:auto;max-width:100px;max-height:36px;transition:filter .2s;display:block}.lw-name{font-family:var(--font-display);color:var(--text-secondary);letter-spacing:2px;font-size:15px;font-weight:600;display:none}.lw-item:hover{border-color:var(--green-mid);box-shadow:0 2px 12px #5881571a}.lw-item:hover .lw-img{filter:grayscale(0)opacity()}.cases{max-width:1200px;margin:0 auto;padding:60px 40px 80px}.case-list{flex-direction:column;gap:48px;display:flex}.case-card{background:var(--surface);border:1px solid #344e410f;border-radius:12px;grid-template-columns:1fr 1fr;align-items:center;gap:40px;display:grid;overflow:hidden}.case-card--reverse{direction:rtl}.case-card--reverse>*{direction:ltr}.case-visual{height:320px;position:relative;overflow:hidden}.case-img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.case-card:hover .case-img{transform:scale(1.03)}.case-tag{color:var(--green-mid);letter-spacing:1px;background:#ffffffd9;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:500;position:absolute;top:16px;left:16px}.case-content{padding:36px}.case-content h3{font-family:var(--font-display);color:var(--green-deep);margin-bottom:6px;font-size:24px;font-weight:700}.case-meta{color:var(--text-muted);letter-spacing:.5px;margin-bottom:16px;font-size:13px}.case-desc{color:var(--text-secondary);margin-bottom:24px;font-size:14px;line-height:1.8}.case-result{gap:32px;display:flex}.cr-item{flex-direction:column;display:flex}.cr-num{font-family:var(--font-display);color:var(--green-mid);font-size:28px;font-weight:700;line-height:1}.cr-label{color:var(--text-muted);letter-spacing:.5px;margin-top:6px;font-size:12px}.testimonials{max-width:1200px;margin:0 auto;padding:80px 40px 100px}.testimonial-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.testimonial-card{background:var(--surface);border:1px solid #344e410f;border-radius:8px;padding:32px 28px}.tc-quote{color:var(--text-secondary);margin-bottom:24px;font-size:14px;font-style:italic;line-height:1.8}.tc-author{align-items:center;gap:12px;display:flex}.tc-avatar{background:var(--green-mid);width:40px;height:40px;color:var(--white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.tc-name{color:var(--green-deep);font-size:14px;font-weight:600;display:block}.tc-role{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.cta-section{max-width:1200px;margin:0 auto;padding:40px 40px 100px}.cta-box{background:var(--green-deep);text-align:center;border-radius:12px;padding:64px 48px}.cta-box h2{font-family:var(--font-display);color:var(--bg);letter-spacing:1px;margin-bottom:12px;font-size:28px;font-weight:700}.cta-box p{color:var(--green-soft);margin-bottom:28px;font-size:15px}.cta-box .btn{background:var(--green-soft);color:var(--green-deep);font-weight:600}.cta-box .btn:hover{background:var(--bg)}@media (width<=900px){.hamburger{display:flex}.nav-links{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f0ebe3f7;border-bottom:1px solid #344e4114;flex-direction:column;gap:16px;padding:16px 40px 24px;display:none;position:absolute;top:72px;left:0;right:0}.nav-links.is-open{display:flex}.hero{grid-template-columns:1fr;min-height:auto;padding:120px 24px 60px}.hero-title{font-size:40px}.hero-visual{height:260px}.page-banner-title{font-size:32px}.category-filter{padding:30px 24px 16px}.category-filter-inner{flex-direction:column;align-items:flex-start;gap:12px}.cf-tags{width:100%}.cf-tag{padding:6px 14px;font-size:12px}.preview-grid,.product-grid,.philosophy-grid,.testimonial-grid,.product-card--full{grid-template-columns:1fr}.product-card--full .product-visual{min-height:200px}.process-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr;gap:40px}.about-visual{height:240px}.stats-grid{grid-template-columns:1fr 1fr}.case-card{grid-template-columns:1fr}.case-card--reverse{direction:ltr}.case-visual{height:220px}.contact-grid,.form-row{grid-template-columns:1fr}.about-stats{gap:32px}.footer-inner{text-align:center;flex-direction:column;gap:20px;padding-bottom:24px}.footer-social{flex-wrap:wrap;order:2;justify-content:center}.social-link{padding:5px 10px;font-size:12px}.footer-copy{order:3}.back-top{width:40px;height:40px;font-size:16px;bottom:20px;right:20px}}.case-carousel{border-radius:16px;max-width:1100px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 8px 40px #00000014}.case-track{transition:transform .5s cubic-bezier(.4,0,.2,1);display:flex}.case-slide{background:#fff;grid-template-columns:1fr 1fr;align-items:stretch;min-width:100%;display:grid}.case-visual{justify-content:center;align-items:center;height:360px;display:flex;position:relative;overflow:hidden}.case-color-1{background:linear-gradient(135deg,#588157 0%,#a3b18a 100%)}.case-color-2{background:linear-gradient(135deg,#c9b99a 0%,#e8dcc8 100%)}.case-color-3{background:linear-gradient(135deg,#3a5a40 0%,#588157 100%)}.case-color-label{color:#ffffffe6;letter-spacing:.04em;text-align:center;padding:0 24px;font-family:DM Sans,sans-serif;font-size:1.1rem;font-weight:700}.case-tag{color:#fff;letter-spacing:.08em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff38;border-radius:20px;padding:4px 10px;font-size:.72rem;font-weight:600;position:absolute;top:16px;left:16px}.case-content{flex-direction:column;justify-content:center;gap:12px;padding:48px 44px;display:flex}.case-content h3{color:#1a1a1a;margin:0;font-size:1.45rem;font-weight:700}.carousel-btn{color:#333;cursor:pointer;z-index:10;background:#ffffffeb;border:none;border-radius:50%;width:44px;height:44px;font-size:1.1rem;transition:background .2s,box-shadow .2s;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 12px #00000026}.carousel-btn:hover{background:#fff;box-shadow:0 4px 18px #0003}.carousel-btn--prev{left:16px}.carousel-btn--next{right:16px}.carousel-dots{gap:8px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.cdot{cursor:pointer;background:#0000002e;border-radius:50%;width:8px;height:8px;transition:background .2s,transform .2s}.cdot--active{background:#588157;transform:scale(1.3)}.pb-slider{border-radius:inherit;width:100%;height:100%;position:relative;overflow:hidden}.pbs-track{will-change:transform;height:100%;transition:transform .45s cubic-bezier(.4,0,.2,1);display:flex}.pbs-slide{flex:0 0 100%;width:100%;height:100%;overflow:hidden}.pbs-slide img{object-fit:cover;width:100%;height:100%;display:block}.pbs-placeholder{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;display:flex}.pbs-btn{color:#344e41;cursor:pointer;z-index:10;opacity:0;background:#ffffffe0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;line-height:1;transition:background .2s,box-shadow .2s,opacity .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 12px #00000026}.pb-slider:hover .pbs-btn{opacity:1}.pbs-btn:hover{background:#fff;box-shadow:0 4px 18px #00000038}.pbs-prev{left:12px}.pbs-next{right:12px}.pbs-dots{z-index:10;gap:7px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.pbs-dot{cursor:pointer;background:#ffffff80;border-radius:50%;width:7px;height:7px;transition:background .2s,transform .2s}.pbs-dot--active{background:#fff;transform:scale(1.35)}@media (width<=700px){.case-slide{grid-template-columns:1fr}.case-visual{height:220px}.case-content{padding:28px 24px}.carousel-btn{display:none}}.testimonial-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;cursor:grab;scrollbar-width:none;gap:24px;padding:8px 40px 24px;display:flex;overflow-x:auto}.testimonial-scroll::-webkit-scrollbar{display:none}.testimonial-scroll.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.testimonial-scroll .testimonial-card{scroll-snap-align:start;flex:0 0 calc(33.3333% - 16px);min-width:260px}.product-list{flex-direction:column;gap:0;display:flex}.product-block{grid-template-columns:55% 45%;min-height:480px;display:grid;overflow:hidden}.product-block--reverse{direction:rtl;grid-template-columns:45% 55%}.product-block--reverse>*{direction:ltr}.pb-visual{flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:relative;overflow:hidden}.pb-color-1{background:linear-gradient(145deg,#4a7c59 0%,#a3b18a 60%,#dad7cd 100%)}.pb-color-2{background:linear-gradient(145deg,#f0ebe3 0%,#ddd5c8 50%,#c9b99a 100%)}.pb-color-3{background:linear-gradient(145deg,#344e41 0%,#588157 55%,#a3b18a 100%)}.pb-num{font-family:var(--font-display);color:#ffffff1f;letter-spacing:-4px;pointer-events:none;font-size:7rem;font-weight:800;line-height:1;position:absolute;bottom:-10px;right:20px}.pb-series{font-family:var(--font-display);letter-spacing:.35em;color:#ffffffbf;border:1px solid #ffffff59;border-radius:20px;padding:6px 18px;font-size:.7rem;font-weight:700}.pb-info{background:var(--surface);flex-direction:column;justify-content:center;gap:16px;padding:56px 52px;display:flex}.pb-top{flex-wrap:wrap;gap:6px;display:flex}.pb-title{font-family:var(--font-display);color:var(--green-deep);margin:0;font-size:2rem;font-weight:700;line-height:1.2}.pb-desc{color:var(--text-secondary);margin:0;font-size:15px;line-height:1.8}.pb-detail{border-top:1px solid var(--green-pale);flex-direction:column;gap:2px;padding-top:16px;display:flex}.product-block:nth-child(2n) .pb-info{background:#f9f7f4}@media (width<=860px){.product-block,.product-block--reverse{min-height:unset;direction:ltr;grid-template-columns:1fr}.pb-visual{height:260px}.pb-info{padding:36px 28px}.pb-title{font-size:1.5rem}}.hero-slider{border-radius:8px;width:100%;height:100%;position:relative;overflow:hidden}.hs-track{height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);display:flex}.hs-slide{align-items:flex-end;min-width:100%;height:100%;padding:28px;display:flex;position:relative;overflow:hidden}.hs-slide>img{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}.hs-caption{z-index:1;position:relative}.hs-color-1{background:linear-gradient(145deg,#4a7c59 0%,#a3b18a 60%,#dad7cd 100%)}.hs-color-2{background:linear-gradient(145deg,#e8e0d5 0%,#d4c9b8 50%,#b8a898 100%)}.hs-color-3{background:linear-gradient(145deg,#2d4a38 0%,#588157 55%,#a3b18a 100%)}.hs-caption{font-family:var(--font-display);letter-spacing:.2em;color:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000002e;border-radius:20px;padding:6px 14px;font-size:.75rem;font-weight:600}.hs-dots{z-index:5;gap:8px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.hs-dot{cursor:pointer;background:#fff6;border:none;border-radius:50%;width:7px;height:7px;transition:background .25s,transform .25s}.hs-dot--active{background:#fff;transform:scale(1.35)}@media (width<=900px){.hero .hero-banner-carousel{min-height:500px}.hbc-slide-content{padding:24px}.hbc-slide-content .hero-title{font-size:32px!important}.carousel-btn{display:none}}.news-detail-section{background:var(--bg);padding:60px 20px}.news-detail-container{max-width:800px;margin:0 auto}.breadcrumb{color:var(--text-muted);margin-bottom:32px;font-size:14px}.breadcrumb a{color:var(--green-mid);text-decoration:none}.breadcrumb a:hover{color:var(--green-deep)}.breadcrumb-sep{margin:0 8px}.news-detail-article{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.news-detail-header{padding:32px}.news-detail-meta{color:var(--text-muted);flex-wrap:wrap;gap:16px;margin-bottom:16px;font-size:14px;display:flex}.news-detail-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:16px;font-size:32px;font-weight:700;line-height:1.4}.news-detail-summary{color:var(--text-secondary);font-size:16px;line-height:1.6}.news-detail-cover{width:100%;max-height:450px;overflow:hidden}.news-detail-cover img{object-fit:cover;width:100%;height:100%}.news-detail-content{color:var(--text-primary);padding:32px;font-size:16px;line-height:1.8}.news-detail-content p{margin-bottom:16px}.news-detail-content h2,.news-detail-content h3{margin-top:32px;margin-bottom:16px}.news-detail-content img{border-radius:var(--radius);max-width:100%;height:auto;margin:16px 0}.news-detail-footer{text-align:center;margin-top:40px}.error-page{text-align:center;padding:100px 20px}.error-page h2{margin-bottom:20px}.loading{text-align:center;color:var(--text-muted);padding:100px 20px;font-size:16px}.empty-state{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:60px 20px}@media (width<=768px){.news-detail-title{font-size:24px}.news-detail-header,.news-detail-content{padding:20px}.nav-inner{height:60px;padding:0 16px}.nav-links{display:none}.mobile-menu-btn{display:block}.page-banner{padding:80px 20px 40px}.page-banner-title{font-size:28px;line-height:1.3}.page-banner-desc{font-size:14px}.category-filter-inner{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.cf-tags{flex-wrap:wrap;gap:8px}.cf-tag{padding:6px 14px;font-size:13px}.news-grid{grid-template-columns:1fr;gap:20px;padding:20px 16px}.news-card{border-radius:12px}.news-cover{height:200px}.news-content{padding:16px}.news-title{font-size:18px}.news-summary{-webkit-line-clamp:3;font-size:14px}.news-meta{gap:10px;font-size:12px}.product-block,.product-block--reverse{flex-direction:column!important}.pb-visual{width:100%;height:250px}.pb-info{width:100%;padding:24px 20px}.pb-title{font-size:22px}.pb-desc{font-size:14px}.pb-detail{flex-direction:column;gap:12px}.pd-item{border-bottom:1px solid #344e4114;flex-direction:row;justify-content:space-between;padding:10px 0}.about-grid{grid-template-columns:1fr;gap:30px}.about-visual{order:-1}.about-img{height:250px}.about-content{padding:0 20px}.about-heading{font-size:22px}.about-text{font-size:14px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:16px;padding:30px 20px}.stat-card{padding:20px 16px}.stat-num{font-size:28px}.stat-label{font-size:13px}.stat-desc{font-size:11px}.philosophy-grid{grid-template-columns:1fr;gap:20px;padding:0 20px}.phi-card{padding:24px}.phi-card h4{font-size:18px}.phi-card p{font-size:14px}.team-grid{grid-template-columns:repeat(2,1fr);gap:20px;padding:0 20px}.team-card{padding:20px 16px}.team-avatar,.team-avatar img{width:80px;height:80px}.team-name{font-size:16px}.team-role{font-size:12px}.team-bio{font-size:13px;display:none}.faq-section{padding:30px 16px}.faq-container{gap:12px}.faq-question{padding:16px;font-size:14px}.faq-answer{padding:0 16px 16px;font-size:14px}.contact-grid{grid-template-columns:1fr;gap:30px;padding:0 20px}.contact-info-card,.contact-form{padding:24px}.contact-form input,.contact-form textarea,.contact-form select{padding:12px 14px;font-size:16px}.form-row{grid-template-columns:1fr}.cta-section{padding:40px 20px}.cta-box{padding:30px 20px}.cta-box h2{font-size:22px}.cta-box p{font-size:14px}.footer-inner{grid-template-columns:1fr;gap:30px;padding:40px 20px}.footer-col{padding:0}.footer-col h4{margin-bottom:16px;font-size:15px}.footer-col p,.footer-col a{font-size:14px}.footer-bottom{text-align:center;flex-direction:column;gap:12px;padding:20px}.hero-banner-carousel{min-height:400px}.hbc-slide-content{padding:24px 20px}.hbc-slide-content .hero-title{line-height:1.2;font-size:28px!important}.hbc-slide-content p{font-size:14px}.carousel-btn{display:none}.btn{padding:10px 24px;font-size:14px}.btn-lg{padding:12px 28px;font-size:15px}.section-header{margin-bottom:30px}.section-title{font-size:24px}.section-tag{font-size:12px}.product-list{gap:40px;padding:20px 16px}.products-page,.news-section{padding:30px 0}.loading,.no-products{padding:60px 20px;font-size:14px}}@media (width<=480px){.page-banner-title{font-size:24px}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-num{font-size:24px}.team-grid{grid-template-columns:1fr}.team-bio{font-size:12px;display:block}.pb-visual{height:200px}.news-cover{height:180px}}@media (width>=769px) and (width<=1024px){.nav-inner{padding:0 24px}.nav-links{gap:24px}.page-banner{padding:100px 30px 50px}.page-banner-title{font-size:36px}.news-grid{grid-template-columns:repeat(2,1fr);gap:24px;padding:30px 24px}.about-grid{gap:40px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;padding:40px 30px}.philosophy-grid{gap:24px;padding:0 30px}.team-grid{grid-template-columns:repeat(2,1fr);gap:24px;padding:0 30px}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f0ebe3;--bg-warm:#e8e0d4;--surface:#faf7f2;--surface-alt:#f5f0e8;--green-deep:#344e41;--green-mid:#588157;--green-soft:#a3b18a;--green-pale:#dad7cd;--text-primary:#2d3a2e;--text-secondary:#5c6b5e;--text-muted:#8a9a8c;--accent:#588157;--accent-light:#a3b18a;--white:#fff;--font-display:"DM Sans", "Noto Sans SC", sans-serif;--font-body:"Noto Sans SC", "DM Sans", sans-serif}body{font-family:var(--font-body);background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.7}#root{min-height:100vh}
