/* Shared full-width navigation. Main and submenu columns use the same grid. */
:root{--header:118px;--nav-side:180px;--nav-gap:40px}
.site-header .nav-row{display:grid;grid-template-columns:170px minmax(0,1fr) var(--nav-side);column-gap:var(--nav-gap);height:88px}
.site-header .desktop-nav,html[lang=en] .site-header .desktop-nav,html[lang=ja] .site-header .desktop-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-self:stretch}
.site-header .nav-item{justify-content:center;min-width:0}.site-header .nav-link{font-size:19px;font-weight:600;justify-content:center;white-space:nowrap}
.site-header .header-actions{justify-content:flex-end}.site-header .header-contact{font-size:12px;white-space:nowrap;padding:12px 17px}
.mega-menu{position:absolute;top:100%;left:0;right:0;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-5px);transition:opacity .18s,transform .18s,visibility .18s;background:#f7f8f3;border-top:1px solid #dce4d8;border-bottom:1px solid #dce4d8;box-shadow:0 22px 30px #14352812;color:var(--ink)}
.mega-open .mega-menu{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}
.mega-inner{display:grid;grid-template-columns:170px minmax(0,1fr) var(--nav-side);gap:var(--nav-gap);padding-top:30px;padding-bottom:34px}
.mega-brand{padding-top:7px}.mega-brand span{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--green)}.mega-brand p{font-size:11px;color:var(--muted);margin-top:10px}
.mega-columns{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.mega-column{display:flex;flex-direction:column;align-items:center;gap:17px;min-width:0}.mega-column a{font-size:14px;color:#556356;text-align:center;line-height:1.6;transition:color .15s}.mega-column a:hover,.mega-column a:focus-visible,.mega-column a[aria-current=page]{color:var(--green);text-decoration:underline;text-underline-offset:6px}
.home .site-header.mega-open:not(.scrolled):not(.menu-open){background:#fff;color:var(--ink)}.home .site-header.mega-open:not(.scrolled) .utility{color:var(--muted);border-bottom-color:#e8ece7}.home .site-header.mega-open:not(.scrolled) .header-contact{background:var(--green);border-color:var(--green);color:#fff}.home .site-header.mega-open:not(.scrolled) .brand-logo-color{display:block}.home .site-header.mega-open:not(.scrolled) .brand-logo-white{display:none}
html[lang=en] .site-header .nav-link{font-size:17px}html[lang=ja] .site-header .nav-link{font-size:17px}.site-header .nav-link:after{bottom:0;left:8%;right:8%}
/* One fixed hero frame: two field photos followed by the supplied operating video. */
.hero-media,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s}.hero-slide.is-active{opacity:1;visibility:visible}.hero-slide .hero-image{width:100%;height:100%;object-fit:cover}.hero-slide[data-slide="1"] .hero-image{object-position:57% 30%}.hero-slide[data-slide="2"] .hero-image{object-position:center center}
.hero-carousel:after{z-index:1;pointer-events:none}.hero-carousel .hero-inner{z-index:2;padding-top:175px;padding-bottom:140px}.hero-carousel h1{font-size:clamp(39px,4.1vw,68px);max-width:850px;min-height:2.6em}.hero-carousel .hero-copy{max-width:600px;min-height:3.8em}.hero-carousel .hero-bottom{z-index:3;bottom:30px}.hero-controls{display:flex;align-items:center;gap:16px}.hero-controls button{height:35px;min-width:35px;padding:0;border:1px solid #ffffff50;background:#102e2440;color:#fff;font:18px Arial;border-radius:50%;display:grid;place-items:center;transition:background .2s}.hero-controls button:hover{background:#ffffff25}.hero-controls button:focus-visible{outline-color:var(--lime)}.hero-count{display:flex;gap:10px;align-items:center;min-width:60px;font:12px Arial;letter-spacing:.08em}.hero-count b{font-weight:600;color:var(--lime)}.hero-count>span{color:#d8e3d4}.hero-dots{display:flex;gap:10px;align-items:center}.hero-dots button{width:7px;height:7px;min-width:7px;border:0;background:#ffffff70;border-radius:8px;position:relative}.hero-dots button:before{content:'';position:absolute;inset:-10px}.hero-dots button[aria-current=true]{width:28px;background:var(--lime)}.hero-controls .hero-play-toggle{font-size:12px;margin-left:6px}.hero-product-label{font-size:10px}.hero-carousel [data-hero-title],.hero-carousel [data-hero-description]{overflow-wrap:break-word}
.company-values,.catalog-features{row-gap:26px;column-gap:35px}.company-values .feature,.catalog-features .feature{padding-top:26px;padding-bottom:22px}.company-values .feature p,.catalog-features .feature p{max-width:360px}.company-values .feature-number,.catalog-features .feature-number{margin-bottom:24px}
@media(max-width:1400px){:root{--nav-side:150px;--nav-gap:24px}.site-header .nav-row,.mega-inner{grid-template-columns:150px minmax(0,1fr) var(--nav-side)}.site-header .nav-link{font-size:18px}.site-header .desktop-nav,.mega-columns{gap:12px}.mega-column a{font-size:13px}.site-header .header-contact{font-size:11px;padding:10px 12px}html[lang=en] .site-header .nav-link{font-size:15px}html[lang=ja] .site-header .nav-link{font-size:15px}}
@media(max-width:960px){:root{--header:100px}.site-header .nav-row{display:flex;height:70px;gap:25px}.utility{height:30px}.site-header .desktop-nav,html[lang=en] .site-header .desktop-nav,html[lang=ja] .site-header .desktop-nav,.site-header .header-contact,.mega-menu{display:none}.menu-toggle{display:block}.mobile-nav{background:#fff;color:var(--ink);position:fixed;top:var(--header);bottom:0;left:0;right:0;overflow-y:auto;padding:25px 24px 60px}.menu-open .mobile-nav{display:block}.mobile-nav a{display:block;padding:16px 0;border-bottom:1px solid var(--line);font-size:20px}.mobile-nav .mobile-sub{font-size:14px;color:var(--muted);padding:10px 0 10px 18px;border:0}.mobile-nav .mobile-cta{margin-top:20px;background:var(--green);color:#fff;text-align:center;font-size:15px}.hero-carousel .hero-inner{padding-top:150px;padding-bottom:135px}.hero-carousel h1{font-size:clamp(38px,5vw,54px)}}
@media(max-width:640px){:root{--header:96px}.site-header .nav-row{height:66px}.hero-carousel{min-height:750px;max-height:none;height:100svh}.hero-carousel .hero-inner{padding-top:145px;padding-bottom:130px;justify-content:center}.hero-carousel h1{font-size:37px;max-width:100%;letter-spacing:-.045em;min-height:3.9em;line-height:1.3}.hero-carousel .hero-copy{font-size:13px;max-width:100%;min-height:5.7em;margin-top:20px}.hero-carousel .actions{margin-top:24px;gap:10px}.hero-carousel .hero-bottom{bottom:25px;gap:15px}.hero-controls{gap:10px}.hero-controls button{height:31px;min-width:31px}.hero-controls .hero-dots button{height:6px;width:6px;min-width:6px}.hero-controls .hero-dots button[aria-current=true]{width:23px}.hero-count{gap:6px;min-width:49px}.hero-product-label{display:none}.hero-carousel .hero-slide .hero-image{object-position:62% center}.hero-carousel .hero-slide[data-slide="1"] .hero-image{object-position:53% center}.company-values,.catalog-features{row-gap:3px}.company-values .feature,.catalog-features .feature{padding-bottom:28px}.company-values .feature p,.catalog-features .feature p{max-width:100%;padding-right:0}.company-values .feature-number,.catalog-features .feature-number{margin-bottom:16px}html[lang=en] .hero-carousel h1{font-size:33px;min-height:5.2em}html[lang=en] .hero-carousel .hero-copy{font-size:12px;min-height:5.7em}html[lang=ja] .hero-carousel h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.mega-menu{transition:none}}
