.home{margin:0;background:#000;color:#f4f4f4;font:16px/1.55 system-ui,sans-serif}
.home *{box-sizing:border-box}
.home a{color:inherit}
.home .wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}
.home .mast,.home .foot,.home .section-line{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.home .mast,.home .foot{padding:22px 0;font-size:.8rem;border-bottom:1px solid #333}
.home .wordmark,.home .label,.home .foot{font:600 .75rem/1.5 ui-monospace,monospace;letter-spacing:.09em}
.home .wordmark,.home .mast a,.home .foot a{text-decoration:none}
.home a:focus-visible,.study-nav a:focus-visible{outline:2px solid #367443;outline-offset:5px}
.home .intro{padding:clamp(50px,8vw,118px) 0 clamp(38px,5vw,72px)}
.home h1{font-size:clamp(3.2rem,10.4vw,10.2rem);font-weight:590;line-height:.94;letter-spacing:-.085em;margin:.13em 0 .22em}
.home .dot{display:inline-block;width:9px;height:9px;background:#497749;border-radius:50%;margin-right:.55rem}
.home .lede{font-size:clamp(1.05rem,2vw,1.4rem);max-width:38em;margin:0;color:#b9b9b9}
.home .section-line{border-top:1px solid #333;padding:10px 0}
.home .label{margin:.4em 0;color:#a7c5b3}
.home .cases{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,54px)}
.home .case{display:block;text-decoration:none}
.home .visual{margin:0 0 19px;aspect-ratio:16/10;overflow:hidden;background:#151515}
.home .visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.home .case:hover img{transform:scale(1.035)}
.home h3{display:flex;justify-content:space-between;align-items:center;font-size:clamp(2.1rem,4.5vw,4rem);letter-spacing:-.065em;line-height:1.02;font-weight:580;margin:.14em 0}
.home h3 span{font-size:.55em;color:#a7c5b3}
.home .subtitle{font-weight:650;margin:.45em 0}
.home .detail{margin:.2em 0;color:#b9b9b9;max-width:43ch}
.home .method{margin:clamp(50px,8vw,105px) 0 0;border-top:1px solid #333;padding:34px 0 45px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,54px)}
.home .method h2{margin:0;font-size:clamp(1.5rem,3vw,2.6rem);letter-spacing:-.045em;line-height:1.1}
.home .method p{margin:0;color:#b9b9b9;max-width:55ch}
.home .foot{border-top:1px solid #333;border-bottom:0}
.study-nav{position:relative;z-index:20;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:12px clamp(16px,4vw,60px);background:#000;color:#f4f4f4;font:600 12px/1.5 ui-monospace,monospace;letter-spacing:.035em;border-bottom:1px solid #333}
.study-nav a{color:#f4f4f4;text-decoration:none}
.study-nav a:hover,.home .mast a:hover,.home .foot a:hover{text-decoration:underline}
@media(max-width:640px){.home .wrap{width:calc(100% - 36px)}.home .cases,.home .method{grid-template-columns:1fr}.home .cases{gap:36px}.home .method{gap:12px}}
@media(prefers-reduced-motion:reduce){.home .visual img{transition:none}}
