@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500&display=swap');
:root{--paper:#06070c;--ink:#ece4d6;--gold:#d8b781;--line:#ffffff20}body{background:#06070c}header{background:#06070c;border-color:#e4c79420}.hero{background:#06070c;min-height:780px;max-height:1050px;height:calc(100svh - 90px);cursor:default}.hero:after{background:linear-gradient(90deg,#06070c 0%,#06070cee 23%,#06070c40 57%,transparent 85%);z-index:1;pointer-events:none}#light-world{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.hero-copy{padding-top:140px;max-width:100%;pointer-events:none}.hero h1{font-family:'Shippori Mincho','Yu Mincho',serif;font-size:clamp(46px,4.4vw,76px);font-weight:400;letter-spacing:.09em;line-height:1.65;margin:0}.hero h1>span{overflow:visible}.hero h1 em{font-family:inherit;font-size:1em;letter-spacing:.09em;font-style:normal;line-height:inherit;color:#e9c994;background:none;-webkit-text-fill-color:initial;animation:none}.hero .hero-ja{font-size:9px;letter-spacing:2.5px;margin-top:26px;color:#a89372}.hero-desc{margin-top:30px;color:#c6bfb3;font-size:12px;line-height:2.6;text-shadow:0 2px 12px #06070c}.hero-top{z-index:3}.hero .eyebrow{font-size:9px;letter-spacing:2px}.hero-bottom{border-color:#e4c79426}.light-controls{position:absolute;right:6%;bottom:105px;display:flex;align-items:center;gap:22px;z-index:5}.light-controls button,.light-controls a{color:#c2b295;font-size:10px;letter-spacing:1px;background:none;border:0;padding:10px 0;cursor:pointer}.light-controls button:first-child{border-bottom:1px solid #b2935b;padding:12px 0;color:#f0d39c}.light-controls button:first-child span{margin-left:20px}.light-controls button:hover,.light-controls a:hover{color:#fff1d7}.light-controls button:focus-visible{outline:1px solid #d8b781;outline-offset:5px}.signal-line{background:#090a10;border-color:#e4c79420}.services{background:linear-gradient(#06070c,#0e0d0d)}.section-label{border-color:#e4c79426}.closing{background:radial-gradient(ellipse at bottom,#2e2016,#06070c 70%)}footer{background:#06070c}.light-heading{animation:light-title 1.6s cubic-bezier(.16,1,.3,1) both}.light-heading+.light-heading{animation-delay:.2s}.brand span{display:none}
@keyframes light-title{from{opacity:0;filter:blur(6px);transform:translateY(22px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
@media(max-width:1000px){.hero-copy{padding-top:150px}.hero h1{font-size:52px}.hero:after{background:linear-gradient(90deg,#06070cf0,#06070c99 35%,transparent 90%)}}
@media(max-width:600px){header{background:#06070c}nav{background:#090a10fa}.hero{height:auto;min-height:920px;max-height:none}.hero-copy{padding-top:70px}.hero h1{font-size:clamp(29px,7.7vw,45px);letter-spacing:.06em;line-height:1.8}.hero h1 em{letter-spacing:.06em}.hero h1>span+span{margin-top:0}.hero .hero-ja{font-size:6.5px;letter-spacing:1.7px;margin-top:20px}.hero-desc{font-size:10px;margin-top:22px;line-height:2.5}.hero:after{background:linear-gradient(180deg,#06070c44 5%,#06070c11 38%,transparent 55%,#06070c22 80%,#06070ccc)}.hero .circle-link{margin-top:15px;font-size:10px}.hero-top .eyebrow{font-size:7px;letter-spacing:1.2px}.light-controls{bottom:98px;left:7%;right:7%;justify-content:space-between;gap:12px}.light-controls button,.light-controls a{font-size:8px}.light-controls button:first-child span{margin-left:9px}.hero-bottom{font-size:7px}}
@media(prefers-reduced-motion:reduce){.light-heading{opacity:1;filter:none;transform:none;animation:none}}
/* Light travels through the whole page; foreground content stays in its own layer. */
.hero:after{background:linear-gradient(90deg,#06070cce 0%,#06070c9c 24%,#06070c22 58%,transparent 85%)}
.light-section{position:relative;isolation:isolate;overflow:clip}
.light-section>.section-lights{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.6;mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}
.services.light-section{background:radial-gradient(ellipse at 85% 45%,#19120d55,transparent 60%)}
.services .section-lights{mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent);opacity:.55}
.service-list article>div{position:relative;background:radial-gradient(ellipse at 30% 40%,#06070cc9,transparent 85%)}
.collection .section-lights{opacity:.48}
.collection-intro h2,.services-heading h2{position:relative;text-shadow:0 2px 24px #06070c,0 0 60px #06070c}
.principles.light-section{background:#11100fed}
.principles .section-lights{opacity:.5}
.principle-grid article{background:linear-gradient(90deg,#11100fc4,transparent)}
.closing .section-lights{opacity:.85;mask-image:radial-gradient(ellipse,#000 30%,transparent 75%)}
.closing h2,.closing .circle-link{position:relative;text-shadow:0 2px 28px #06070c}
@media(max-width:600px){.hero:after{background:linear-gradient(180deg,#06070c44 5%,#06070c11 38%,transparent 55%,#06070c22 80%,#06070ccc)}.light-section>.section-lights{opacity:.45}.closing .section-lights{opacity:.7}.service-list article>div{background:radial-gradient(ellipse at 30% 40%,#06070ce8,transparent 95%)}}
