@charset "UTF-8";
:root{--navy:#10162a;--paper:#f7f5ef;--ink:#24283d;--muted:#616477;--lavender:#e9e5f0;--serif:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif;--sans:"Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{max-width:100%;display:block;height:auto}p,h1,h2,h3,figure{margin:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #877441;outline-offset:6px}a,button{touch-action:manipulation}.skip-link{position:fixed;top:8px;left:12px;z-index:20;background:var(--paper);padding:10px 20px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{height:96px;padding:0 4.45%;display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:var(--paper);gap:24px}.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}.brand img{width:44px;height:44px}.brand span{font-family:Georgia,serif;font-size:24px;letter-spacing:-.03em}.site-header nav{display:flex;gap:36px;font-size:13px;font-weight:500;letter-spacing:.04em}.site-header nav a{display:inline-flex;align-items:center;min-height:44px;position:relative}.site-header nav a:after{content:"";position:absolute;height:1px;background:#c9bfdc;bottom:6px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .2s}.site-header nav a:hover:after{transform:scaleX(1)}
.hero{position:relative;min-height:670px;height:calc(100svh - 96px);max-height:880px;display:grid;place-items:center;isolation:isolate;background:var(--navy);color:var(--paper)}.hero-image,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 49%}.hero-shade{z-index:-1;background:rgba(6,13,30,.36)}.hero-copy{text-align:center;padding:20px 24px 75px;width:100%;text-shadow:0 2px 28px rgba(0,0,0,.35)}.hero-eyebrow{font-size:15px;font-weight:500;letter-spacing:.19em;margin-bottom:22px}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(76px,9.7vw,150px);line-height:1.08;font-weight:400;letter-spacing:-.055em;margin-left:-.03em}.hero-tagline{font-family:var(--serif);font-size:29px;font-weight:600;letter-spacing:.14em;margin-top:26px}.hero-link{display:inline-flex;align-items:center;justify-content:space-between;gap:55px;min-height:54px;border-bottom:1px solid rgba(247,245,239,.75);font-size:14px;font-weight:600;letter-spacing:.1em;margin-top:46px;padding:0 2px;transition:color .2s,border-color .2s}.hero-link span{font-size:20px;font-weight:400}.hero-link:hover{color:#e1d2ff;border-color:#e1d2ff}.hero-bottom{position:absolute;bottom:29px;left:4.45%;right:4.45%;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.11em}.hero-bottom span:last-child{font-family:Arial,sans-serif;font-size:9px;letter-spacing:.19em}
.section-shell{width:min(1184px,calc(100% - 128px));margin-inline:auto}.about{padding-top:112px;padding-bottom:118px}.section-index{display:flex;align-items:center;gap:22px;font-size:13px;font-weight:500;letter-spacing:.08em}.section-index>span{font-family:Georgia,serif;font-size:13px;color:var(--muted);border-top:1px solid currentColor;padding-top:5px;min-width:30px}.section-index p,.section-index h2{font-size:13px;font-weight:500}.about-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:start;margin-top:49px}.about-intro h2{font-family:var(--serif);font-weight:600;font-size:43px;letter-spacing:.05em;line-height:1.75}.about-copy{padding-top:7px;font-size:16px;line-height:2.2;letter-spacing:.025em}.about-copy p+p{margin-top:20px}.experience{display:grid;grid-template-columns:1.28fr 1fr;gap:86px;margin-top:74px;align-items:center}.experience-image img{height:410px;width:100%;object-fit:cover;object-position:39% center}.experience-image figcaption{font-size:12px;letter-spacing:.04em;color:var(--muted);margin-top:13px}.experience-list>div{display:flex;gap:25px;border-top:1px solid #d8d5d0;padding:25px 0 23px}.experience-list>div:last-child{border-bottom:1px solid #d8d5d0}.experience-no{font-family:Georgia,serif;font-size:13px;color:#787483;padding-top:7px}.experience-list h3{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:.05em;margin-bottom:7px}.experience-list p{font-size:14px;color:#515466;line-height:1.9}
.works{background:var(--lavender);padding:92px 0 98px}.featured{margin-top:46px;display:grid;grid-template-columns:1.06fr 1fr;gap:70px;align-items:center}.work-kicker{display:flex;align-items:center;gap:17px;font-size:12px;letter-spacing:.03em}.work-kicker span{border-left:1px solid #9992a8;padding-left:17px}.work-name{font-family:Georgia,serif;font-size:70px;letter-spacing:-.06em;line-height:1.2;margin:22px 0 21px}.work-title{font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.9;letter-spacing:.015em}.formal-suffix{display:block;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.06em;margin-top:6px}.work-description{margin-top:30px;font-size:16px;line-height:2.15;letter-spacing:.02em}.work-description p+p{margin-top:18px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid #716b82;min-height:54px;font-size:15px;font-weight:600;letter-spacing:.015em;transition:color .2s,border-color .2s}.text-link span{font-size:21px;font-weight:400}.text-link:hover{color:#6b487b;border-color:#6b487b}.work-copy>.text-link{margin-top:27px}.link-note{font-size:12px;line-height:1.9;color:#5c596a;margin-top:11px}.screen-stage{background:#d9d3e4;display:flex;position:relative;padding:36px 34px 36px 72px;justify-content:center;align-items:center;min-height:670px}.stage-label{position:absolute;left:24px;top:38px;writing-mode:vertical-rl;letter-spacing:.14em;font-size:12px;color:#555069}.real-screen{width:270px;box-shadow:0 18px 40px #29243833;border:5px solid #252336;border-radius:21px}.work-visual figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:11px;color:#5b566b}.preview-button{background:none;border:0;padding:9px 0 9px 10px;min-height:44px;cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap}.preview-button:hover{text-decoration:underline;text-underline-offset:4px}
.brand-note{background:var(--navy);color:var(--paper);padding:98px 0 104px}.brand-note-inner{display:grid;grid-template-columns:180px 1fr;gap:70px;align-items:start}.note-logo{width:88px;height:88px;margin-top:20px;margin-left:36px}.note-label{font-size:12px;color:#c8c1d6;letter-spacing:.07em;margin-bottom:21px}.brand-note h2{font-family:var(--serif);font-size:35px;line-height:1.7;font-weight:500;letter-spacing:.06em}.note-copy{font-size:16px;line-height:2.1;margin-top:28px}.ai-note{color:#bbb8c9;font-size:13px;line-height:2;margin-top:27px}.mobile-break{display:none}.site-footer{padding:62px 0 33px}.contact-row{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-bottom:44px;border-bottom:1px solid #d8d5d0}.footer-label{font-family:var(--serif);font-size:21px;font-weight:600;letter-spacing:.04em}.contact-description{font-size:13px;color:var(--muted);margin-top:8px}.contact-link{font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:0;min-height:54px}.footer-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;padding-top:33px}.footer-brand{font-family:Georgia,serif;font-size:25px;letter-spacing:-.04em;display:inline-block;min-height:44px}.operator{font-size:12px;line-height:1.9;color:#606272;max-width:620px;margin-top:5px}.footer-meta{flex-shrink:0;display:flex;flex-direction:column;align-items:end;gap:18px;font-size:12px}.footer-meta>a{display:inline-flex;align-items:center;gap:23px;min-height:44px}.footer-meta>a:hover{text-decoration:underline;text-underline-offset:5px}.footer-meta small{font-family:Arial,sans-serif;color:#747281;font-size:10px;letter-spacing:.05em}
.screen-dialog{border:0;padding:0;background:var(--paper);color:var(--ink);width:470px;max-width:calc(100% - 28px);max-height:calc(100svh - 36px);box-shadow:0 20px 70px #0005}.screen-dialog::backdrop{background:rgba(8,12,28,.8)}.dialog-bar{position:sticky;top:0;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 17px;border-bottom:1px solid #d8d5d0;font-size:11px;z-index:1}.dialog-bar button{background:none;border:0;cursor:pointer;min-height:44px;font-size:13px;white-space:nowrap}.screen-dialog>img{width:390px;max-width:100%;margin:0 auto}.screen-dialog[open]{display:block}
@media(min-width:1600px){.hero-image img{object-position:center 53%}}
@media(max-width:1100px){.section-shell{width:calc(100% - 80px)}.site-header nav{gap:24px}.about-intro{gap:35px}.about-intro h2{font-size:36px}.experience{gap:45px}.featured{gap:40px}.work-name{font-size:59px}.work-title{font-size:21px}.screen-stage{padding-left:50px;padding-right:20px;min-height:610px}.real-screen{width:250px}.stage-label{left:15px}.brand-note-inner{grid-template-columns:120px 1fr;gap:45px}.note-logo{margin-left:0}.contact-link{font-size:20px}.contact-row{align-items:start}}
@media(max-width:760px){.site-header{height:auto;min-height:112px;display:block;padding:15px 24px 10px}.brand{gap:10px}.brand img{width:34px;height:34px}.brand span{font-size:22px}.site-header nav{gap:0;justify-content:space-between;margin-top:6px;font-size:11px;letter-spacing:.015em}.site-header nav a{min-height:36px}.hero{height:650px;height:calc(100svh - 112px);min-height:605px;max-height:790px}.hero-image img{object-position:50% center}.hero-shade{background:rgba(6,13,30,.31)}.hero-copy{padding:10px 15px 40px}.hero-eyebrow{font-size:12px;letter-spacing:.1em;margin-bottom:24px}.hero h1{font-size:clamp(49px,13.7vw,85px);letter-spacing:-.055em}.hero-tagline{font-size:19px;letter-spacing:.035em;margin-top:24px;font-weight:600}.hero-link{margin-top:38px;font-size:13px;gap:47px;min-height:50px}.hero-bottom{left:24px;right:24px;bottom:23px;font-size:10px}.hero-bottom span:last-child{display:none}.section-shell{width:calc(100% - 48px)}.about{padding-top:65px;padding-bottom:64px}.section-index{gap:17px;font-size:12px}.section-index h2,.section-index p{font-size:12px}.about-intro{display:block;margin-top:30px}.about-intro h2{font-size:30px;letter-spacing:.015em;line-height:1.8}.about-copy{padding-top:0;margin-top:24px;font-size:16px;line-height:2.1;letter-spacing:0}.about-copy p+p{margin-top:16px}.desktop-break{display:none}.experience{display:block;margin-top:35px}.experience-image{margin-inline:-24px}.experience-image img{height:284px;object-position:40% center}.experience-image figcaption{margin-left:24px;font-size:11px;margin-top:10px}.experience-list{margin-top:31px}.experience-list>div{gap:22px;padding:19px 0 19px}.experience-list h3{font-size:22px;margin-bottom:5px}.experience-list p{font-size:14px;line-height:1.9}.experience-list p br{display:none}.works{padding:56px 0 55px}.featured{display:flex;flex-direction:column;gap:32px;margin-top:34px;align-items:stretch}.work-kicker{font-size:11px;gap:14px}.work-kicker span{padding-left:14px}.work-name{font-size:54px;margin:18px 0 18px}.work-title{font-size:22px;letter-spacing:0;line-height:1.85}.formal-suffix{font-size:13px;margin-top:7px}.work-description{font-size:16px;line-height:2.1;margin-top:24px;letter-spacing:0}.work-description p+p{margin-top:17px}.text-link{font-size:14px;gap:25px}.work-copy>.text-link{margin-top:21px;min-height:56px}.link-note{font-size:11px}.screen-stage{min-height:0;padding:28px 28px 28px 53px}.real-screen{width:238px;border-width:4px;border-radius:18px}.stage-label{font-size:10px;left:16px;top:29px;letter-spacing:.11em}.work-visual figcaption{font-size:10px;gap:5px}.preview-button{font-size:11px;padding-left:4px}.brand-note{padding:55px 0 61px}.brand-note-inner{display:block}.note-logo{width:62px;height:62px;margin:0 0 27px}.note-label{font-size:11px;margin-bottom:19px}.brand-note h2{font-size:28px;line-height:1.75;letter-spacing:.01em}.mobile-break{display:block}.note-copy{font-size:15px;line-height:2.1;margin-top:22px}.ai-note{font-size:13px;line-height:2;margin-top:23px}.site-footer{padding:42px 0 25px}.contact-row{display:block;padding-bottom:31px}.footer-label{font-size:20px}.contact-description{font-size:12px;line-height:1.9;max-width:260px;margin-top:8px}.contact-link{font-size:20px;width:100%;gap:12px;margin-top:19px;letter-spacing:-.02em}.footer-bottom{display:block;padding-top:28px}.footer-brand{font-size:26px}.operator{font-size:12px;margin-top:5px;line-height:2}.footer-meta{margin-top:18px;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.footer-meta>a{gap:16px}.dialog-bar{padding-inline:12px}}
@media(max-width:359px){.site-header{padding-inline:20px}.site-header nav{font-size:10px}.section-shell{width:calc(100% - 40px)}.hero-tagline{font-size:17px}.hero-eyebrow{font-size:11px}.about-intro h2{font-size:27px}.experience-image{margin-inline:-20px}.experience-image figcaption{margin-left:20px}.work-name{font-size:47px}.work-title{font-size:20px}.work-description{font-size:15px}.work-description p br{display:none}.screen-stage{padding-left:43px;padding-right:18px}.stage-label{left:12px}.contact-link{font-size:18px}.work-visual figcaption{flex-wrap:wrap}.brand-note h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.brand img,.note-logo{border-radius:50%}
@media(max-width:760px){.site-header{min-height:120px}.site-header nav a{min-height:44px}.hero{height:calc(100svh - 120px)}.experience-list p{font-size:16px;line-height:1.9}}

.about-copy p,.experience-list p,.contact-description,.operator{text-wrap:pretty}
@media(max-width:760px){.experience-list p br{display:initial}.contact-description{max-width:none}}

/* Studio Luna Motion Maker: parallax-drift / line stagger / hold. */
.hero{overflow:clip}.hero-depth{position:absolute;inset:0;z-index:-2;overflow:hidden;opacity:0;background:#d9d3c7;pointer-events:none}.depth-plane{position:absolute;inset:0;overflow:hidden}.depth-plane img{position:absolute;max-width:none;will-change:transform;transform-origin:0 0;object-fit:fill}.depth-ready .hero-depth{opacity:1}.depth-ready .hero-image{visibility:hidden}.room-window{height:410px;overflow:hidden;position:relative}.experience-image .room-window img{width:100%;height:100%;object-fit:cover}.motion-enabled .room-window img{height:calc(100% + 80px);max-height:none;position:absolute;top:-40px;left:0;will-change:transform}.copy-line{display:inline-block;vertical-align:baseline}.motion-toggle{background:rgba(16,22,42,.42);border:1px solid #ffffff70;color:var(--paper);padding:0 14px;min-height:44px;cursor:pointer;font-size:11px;letter-spacing:.04em;white-space:nowrap}.motion-toggle:hover{background:rgba(16,22,42,.72)}.hero-bottom{bottom:19px}.hero-bottom>[hidden]{display:none}.motion-off .depth-plane img,.motion-off .room-window img{will-change:auto}
@media(max-width:760px){.room-window{height:284px}.motion-enabled .room-window img{height:calc(100% + 56px);top:-28px}.hero-bottom{bottom:15px;gap:12px}.hero-bottom>span{font-size:9px;letter-spacing:.015em}.motion-toggle{font-size:10px;padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.hero-depth{display:none!important}.hero-image{visibility:visible!important}.room-window img{transform:none!important;will-change:auto!important}.copy-line{transform:none!important;opacity:1!important}}
.about-intro,.experience-list,.works,.brand-note,.site-footer{overflow-x:clip}
