*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f7f6f2;color:#242423;font-family:Arial,Helvetica,sans-serif;font-weight:400}
.site-header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#fbfaf7;border-bottom:1px solid #e6e4df;position:sticky;top:0;z-index:10}
.brand img{width:108px;height:auto;display:block}
nav{display:flex;gap:32px;align-items:center}
nav a,.site-footer a{font-size:11px;letter-spacing:.13em;color:#292928;text-decoration:none}
.intro{padding:110px 8vw 120px;display:grid;grid-template-columns:22% 78%;background:#f7f6f2}
.intro-index{font-size:11px;letter-spacing:.18em;color:#77756f;padding-top:11px}
.intro-copy{max-width:930px}
h1{font-size:54px;line-height:1.08;font-weight:400;letter-spacing:-.035em;margin:0 0 34px}
.intro-copy p{font-size:20px;line-height:1.55;color:#67655f;max-width:720px;margin:0}
.capabilities{background:#eeede8;padding:76px 0 100px}
.cap-head{padding:0 6vw 28px;display:flex;justify-content:space-between;color:#6f6d67;font-size:11px;letter-spacing:.17em}
.gesture{opacity:.8}
.track-wrap{overflow-x:auto;overflow-y:hidden;cursor:grab;scrollbar-width:none;padding:0 6vw 10px}
.track-wrap::-webkit-scrollbar{display:none}
.track{display:flex;gap:20px;width:max-content}
.cap-card{width:min(68vw,880px);min-width:620px;background:#f8f7f4}
.cap-number{padding:18px 22px 0;color:#8a8881;font-size:11px;letter-spacing:.18em}
.cap-gallery{background:#fff;overflow:hidden;position:relative}
.cap-gallery-track{display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;padding:28px 28px 12px;cursor:grab}
.cap-gallery-track::-webkit-scrollbar{display:none}
.cap-gallery-track:active{cursor:grabbing}
.cap-gallery-track img{flex:0 0 calc(50% - 7px);width:calc(50% - 7px);height:430px;object-fit:contain;display:block;scroll-snap-align:start;background:#fff}
.gallery-hint{display:flex;align-items:center;gap:14px;padding:0 30px 18px;color:#8a8881;font-size:9px;letter-spacing:.15em}
.gallery-hint span:last-child{margin-left:auto;opacity:.8}
.cap-meta{padding:30px 34px 36px;display:grid;grid-template-columns:30% 70%;gap:20px}
.cap-meta h2{font-size:34px;line-height:1.05;font-weight:400;margin:0;text-transform:uppercase;letter-spacing:-.02em}
.cap-meta p{font-size:17px;line-height:1.5;color:#66645e;max-width:530px;margin:0}
.detail-grid{display:grid;grid-template-columns:50% 50%;padding:130px 8vw 135px;background:#fbfaf7}
.detail-intro span,.process-copy span{font-size:11px;letter-spacing:.18em;color:#77756f}
.detail-intro h2{font-size:52px;line-height:1.08;font-weight:400;letter-spacing:-.035em;margin:25px 0 0}
.detail-copy{padding:4px 6vw 0 7vw}
.detail-copy p{font-size:20px;line-height:1.58;color:#66645e;max-width:650px;margin:0 0 26px}
.process{display:grid;grid-template-columns:58% 42%;min-height:620px;background:#fff}
.process-image{background:transparent;display:flex;align-items:center;justify-content:center;overflow:hidden}
.process-image img{width:100%;height:100%;object-fit:contain;display:block}
.process-copy{padding:105px 8vw 80px 7vw}
.process-copy h2{font-size:50px;line-height:1.05;font-weight:400;letter-spacing:-.035em;margin:25px 0}
.process-copy p{font-size:19px;line-height:1.55;color:#66645e;max-width:530px}
.process-copy a{display:inline-block;margin-top:28px;color:#252523;text-decoration:none;border-bottom:1px solid #55534e;padding-bottom:7px;font-size:11px;letter-spacing:.15em}
.site-footer{height:130px;background:#fbfaf7;padding:38px 5vw;border-top:1px solid #e6e4df}
.site-footer img{width:95px;height:auto}
@media(max-width:800px){
 .site-header{height:72px;padding:0 22px}
 nav{display:none}
 .brand img{width:92px}
 .intro{padding:70px 24px 80px;display:block}
 .intro-index{margin-bottom:25px}
 h1{font-size:40px}
 .intro-copy p{font-size:18px}
 .capabilities{padding:55px 0 65px}
 .cap-head{padding:0 24px 20px}
 .track-wrap{padding:0 24px 8px}
 .track{gap:12px}
 .cap-card{width:82vw;min-width:82vw}
 .cap-gallery-track{gap:12px;padding:18px 18px 10px;scroll-snap-type:x mandatory}
 .cap-gallery-track img{flex:0 0 100%;width:100%;height:340px;object-fit:contain;scroll-snap-align:center}
 .gallery-hint{padding:0 20px 14px;font-size:8px;gap:10px}
 .cap-meta{display:block;padding:24px}
 .cap-meta h2{font-size:29px;margin-bottom:18px}
 .cap-meta p{font-size:16px}
 .detail-grid{display:block;padding:80px 24px}
 .detail-copy{padding:35px 0 0}
 .detail-copy p{font-size:18px}
 .process{display:flex;flex-direction:column}
 .process-image{min-height:360px}
 .process-copy{padding:65px 24px 75px}
 .process-copy h2{font-size:40px}
}
