
:root{--ink:#232923;--paper:#f5f4f0;--line:#d6d7d0;--muted:#727870}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Noto Sans JP",sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.nav{position:absolute;top:0;left:0;width:100%;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:26px 5.5%;color:white;border-bottom:1px solid #ffffff55}.logo{font-size:20px;font-weight:750;letter-spacing:.14em}.links{display:flex;gap:30px;font-size:11px;letter-spacing:.14em}.links a:hover{opacity:.65}.hero{min-height:92vh;position:relative;display:flex;align-items:end;color:white;background:linear-gradient(90deg,rgba(15,23,19,.74),rgba(15,23,19,.07)),url('../images/marble.jpg') center 54%/cover}.hero-inner{padding:180px 6% 10vh;max-width:1050px}.kicker{font-size:11px;letter-spacing:.25em;font-weight:600}.hero h1{font-size:clamp(54px,10vw,142px);line-height:1;letter-spacing:-.075em;margin:25px 0 30px}.hero .jp{font-size:clamp(21px,3.4vw,42px);font-weight:500;letter-spacing:.12em}.hero .sub{font-size:13px;max-width:530px;line-height:2.1;margin-top:24px;color:#eee}.scroll{position:absolute;right:6%;bottom:7%;font-size:10px;letter-spacing:.2em;writing-mode:vertical-rl}.wrap{max-width:1480px;margin:auto;padding:0 6%}.intro{padding-top:125px;padding-bottom:120px;display:grid;grid-template-columns:1fr 1fr;gap:9%}.eyebrow{font-size:11px;letter-spacing:.22em;color:#727870;font-weight:700}.intro h2,.section-title{font-size:clamp(34px,5vw,68px);font-weight:500;letter-spacing:-.055em;line-height:1.35;margin:18px 0}.intro p{font-size:15px;max-width:530px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{position:relative;background:#232923;color:#fff;overflow:hidden;min-height:550px;display:flex;align-items:end}.field img{position:absolute;inset:0;height:100%;filter:brightness(.7);transition:transform .5s}.field:hover img{transform:scale(1.035)}.field:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.8))}.field-content{position:relative;z-index:1;padding:40px;width:100%}.field small{letter-spacing:.18em;font-size:10px}.field h3{font-size:clamp(24px,3vw,40px);font-weight:500;margin:8px 0}.field p{font-size:13px;max-width:400px;margin:0 0 20px}.field .arrow{font-size:13px;border-bottom:1px solid #fff8;padding-bottom:8px}.work{padding-top:120px;padding-bottom:120px}.work-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.work-grid figure{margin:0}.work-grid img{height:420px}.work-grid figcaption{font-size:12px;letter-spacing:.08em;padding-top:15px;color:#596058}.statement{background:#252c27;color:#f2f1ec;padding:110px 6%;margin-top:90px}.statement-inner{max-width:1100px;margin:auto}.statement h2{font-size:clamp(32px,5vw,64px);font-weight:500;line-height:1.4;letter-spacing:-.04em}.statement p{font-size:14px;max-width:620px;color:#c9cfca}.foot{padding:75px 6% 35px;background:#161d18;color:white}.foot h2{font-size:clamp(40px,8vw,110px);letter-spacing:-.07em;margin:5px 0}.foot p{font-size:13px;color:#bfc6be}.foot-bottom{border-top:1px solid #ffffff30;margin-top:65px;padding-top:25px;display:flex;justify-content:space-between;font-size:11px;color:#a6aea7}@media(max-width:750px){.nav{padding:19px 5%}.logo{font-size:16px}.links{gap:12px;font-size:9px}.hero{min-height:82vh}.hero-inner{padding:150px 6% 12vh}.hero h1{font-size:clamp(55px,14vw,92px)}.intro{grid-template-columns:1fr;gap:0;padding-top:75px;padding-bottom:75px}.fields,.work-grid{grid-template-columns:1fr}.field{min-height:460px}.field-content{padding:27px}.work{padding-top:80px;padding-bottom:80px}.work-grid img{height:300px}.statement{margin-top:65px;padding:75px 6%}.foot-bottom{display:block}}


.materials{background:#eae8e0;padding:110px 0}.material-lead{max-width:650px;color:#5d625a}.material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:42px}.material-card{background:#f7f6f2;overflow:hidden}.material-card img{height:280px;object-fit:cover}.material-card .info{padding:26px 28px 30px}.material-card .info small{font-size:10px;letter-spacing:.16em;color:#73786e}.material-card h3{font-size:clamp(25px,3vw,37px);font-weight:500;margin:5px 0}.material-card p{font-size:13px;color:#555d55;margin:0}.material-placeholder{height:280px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#bcb6a6,#777e6f);color:#f8f6f0;font-size:clamp(25px,5vw,55px);letter-spacing:.04em}.material-placeholder.dot{background:repeating-linear-gradient(120deg,#7e847a 0 2px,transparent 2px 65px),linear-gradient(140deg,#a6a89f,#4c564e)}.material-placeholder.industrial{background:linear-gradient(135deg,#394e45,#172922)}.material-note{font-size:11px;color:#73786e;margin-top:22px}.contact{background:#252c27;color:#fff;padding:110px 0}.contact h2{font-size:clamp(36px,6vw,75px);line-height:1.25;font-weight:500}.contact p{max-width:620px;color:#d1d5cd}.contact-link{display:inline-block;margin-top:25px;border-bottom:1px solid #ddd;padding:12px 0;letter-spacing:.13em}.nav{gap:15px}.links{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:750px){.materials,.contact{padding:70px 0}.material-grid{grid-template-columns:1fr}.material-card img,.material-placeholder{height:240px}.links{gap:9px}.links a{font-size:9px}}
.material-more{display:inline-block;margin-top:18px;padding-bottom:5px;border-bottom:1px solid #596058;font-size:11px;letter-spacing:.12em}

.material-placeholder{position:relative;flex-direction:column;gap:8px;overflow:hidden}.material-placeholder span:last-child{z-index:1;font-size:clamp(30px,4vw,54px);font-family:Georgia,serif;letter-spacing:-.04em}.visual-caption{z-index:1;font-size:9px;letter-spacing:.28em!important}.lime-visual{background:radial-gradient(ellipse at 25% 10%,#f4eee2 0,transparent 38%),linear-gradient(115deg,#8b877a 0%,#d6cbb7 24%,#a99c86 29%,#e3d6bf 55%,#a99d89 61%,#bfb19d 100%);color:#3c4039}.dot{color:#f8f8f3}.material-card{transition:transform .25s,box-shadow .25s}.material-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #1c281522}.material-more:focus-visible,.links a:focus-visible,.field:focus-visible{outline:3px solid #8fa993;outline-offset:4px}.materials .material-card img{object-position:center 35%}
@media(max-width:600px){.nav{position:absolute;align-items:flex-start}.links{max-width:220px;gap:7px 11px}.hero-inner{padding-top:200px}.hero .jp{letter-spacing:.04em}.material-placeholder span:last-child{font-size:42px}}

.hero{background-position:center 54%}.hero .jp{text-shadow:0 2px 16px #101a16}.work-grid img{object-position:center 50%}@media(min-width:751px){.hero{min-height:96vh}}@media(max-width:750px){.hero{background-position:53% center}}

/* Tablet and mobile navigation */
.menu-toggle{display:none}
@media(max-width:1024px){
 .nav{align-items:center;z-index:10}
 .nav.menu-ready .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:10px;border:1px solid #ffffff66;border-radius:4px;background:transparent;color:inherit;cursor:pointer}
 .menu-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}
 .menu-toggle:focus-visible{outline:3px solid #b8cebc;outline-offset:4px}
 .nav.menu-ready .links{display:none;position:absolute;top:100%;left:0;right:0;max-width:none;padding:18px 6% 26px;margin:0;background:#252c27;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 100px);overflow-y:auto;box-shadow:0 16px 24px #0003}
 .nav.menu-open{background:#252c27}
 .nav.menu-open .links{display:flex}
 .nav .links a{font-size:13px;padding:14px 0;letter-spacing:.14em}
 .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
 .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
 .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.menu-toggle span{transition:none}}
