@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=Noto+Sans+JP:wght@300;400&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Noto Sans JP,sans-serif;font-weight:300;color:#1a1a1a;background:var(--bg);letter-spacing:0;line-height:1.9;-webkit-font-smoothing:antialiased}body.subpage{--ink-density: .12;--ink-brightness: 1.08;--ink-warmth: .03;--ink-contrast: .52;--ink-a: 170, 184, 174;--ink-b: 206, 210, 200;--ink-c: 232, 229, 220;--ink-paper: 247, 247, 244;--page-wash: 238, 237, 231;--page-wash-alpha: .14;--ink-layer-opacity: .34;--ink-soft-opacity: .22;--section-veil: .006;--section-line: .08;position:relative;min-height:100svh;overflow-x:hidden;background:radial-gradient(ellipse 90% 70% at 20% 4%,rgba(var(--page-wash),var(--page-wash-alpha)) 0 24%,transparent 72%),radial-gradient(ellipse 84% 76% at 90% 96%,rgba(var(--ink-b),calc(var(--page-wash-alpha) * .18)) 0 14%,transparent 72%),linear-gradient(180deg,rgba(var(--ink-paper),.98),#f3f3eff5 48%,rgba(var(--ink-paper),.99));isolation:isolate}body[data-page=about]{background:#fff}@media (min-width: 681px){body[data-page=about]{height:100svh;overflow:hidden}body[data-page=about] .about{height:100svh;min-height:0}}body[data-page=about]:before,body[data-page=about]:after{content:none}body[data-page=works]{--ink-density: .08;--ink-brightness: 1.12;--ink-warmth: .04;--ink-contrast: .42;--ink-a: 174, 184, 176;--ink-b: 214, 212, 203;--ink-c: 238, 235, 226;--page-wash: 238, 237, 231;--page-wash-alpha: .1;--ink-layer-opacity: .26;--ink-soft-opacity: .16;--section-veil: .004;--section-line: .06}body[data-page=contact]{--ink-density: .1;--ink-brightness: 1.1;--ink-warmth: .04;--ink-contrast: .46;--ink-a: 174, 184, 176;--ink-b: 214, 212, 203;--ink-c: 238, 235, 226;--page-wash: 238, 237, 231;--page-wash-alpha: .12;--ink-layer-opacity: .3;--ink-soft-opacity: .18;--section-veil: .004;--section-line: .07}body.subpage:before,body.subpage:after{content:"";position:fixed;z-index:0;pointer-events:none}body.subpage:before{inset:-18vh -16vw;background:radial-gradient(ellipse 52% 36% at 4% 10%,rgba(var(--ink-a),calc(.14 * var(--ink-density))) 0 14%,rgba(var(--ink-b),calc(.08 * var(--ink-density))) 38%,transparent 76%),radial-gradient(ellipse 40% 58% at 90% 2%,rgba(var(--ink-b),calc(.1 * var(--ink-density))) 0 12%,rgba(var(--ink-c),calc(.06 * var(--ink-density))) 38%,transparent 80%),radial-gradient(ellipse 66% 40% at 66% 96%,rgba(var(--ink-a),calc(.08 * var(--ink-density))) 0 10%,rgba(var(--ink-c),calc(.05 * var(--ink-density))) 42%,transparent 82%);filter:blur(78px) brightness(var(--ink-brightness)) contrast(var(--ink-contrast));opacity:var(--ink-layer-opacity)}body.subpage:after{inset:-24vh -20vw;background:radial-gradient(ellipse 52% 42% at 18% 72%,rgba(var(--ink-b),calc(.08 * var(--ink-density))) 0 14%,transparent 74%),radial-gradient(ellipse 38% 48% at 56% 38%,rgba(var(--ink-a),calc(.05 * var(--ink-density))) 0 12%,transparent 76%);filter:blur(104px) brightness(var(--ink-brightness)) contrast(var(--ink-contrast));mix-blend-mode:multiply;opacity:var(--ink-soft-opacity)}body.subpage>:not(.scroll-sign):not(.site-nav){position:relative;z-index:1}.scroll-sign{position:fixed;right:clamp(18px,2.2vw,34px);top:50%;z-index:70;display:grid;justify-items:center;gap:12px;transform:translateY(-50%);opacity:var(--scroll-sign-opacity, .66);pointer-events:none;transition:opacity .45s var(--ease)}.scroll-sign span{display:block;writing-mode:vertical-rl;text-orientation:mixed;font-size:10px;font-weight:300;line-height:1;letter-spacing:.34em;color:#4a4f4ab8}.scroll-sign i{display:block;width:1px;height:58px;background:linear-gradient(180deg,#4a4f4a94,#4a4f4a1f);transform:scaleY(var(--scroll-sign-line, .18));transform-origin:top;transition:transform .28s var(--ease)}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.sp-only{display:none}:root{--bg: #f8f6f1;--paper: #fbfaf7;--wash: #eeebe3;--ink: #171715;--muted: #4d4d48;--faint: #8b847a;--border: #ded8cf;--accent: #465447;--accent-soft: #c8d0c3;--serif: "Cormorant Garamond", serif;--sans: "Noto Sans JP", sans-serif;--max: 960px;--pad: 44px;--ease: cubic-bezier(.22, 1, .36, 1)}.lbl{font-size:11px;letter-spacing:.35em;color:var(--accent);text-transform:uppercase;margin-bottom:clamp(38px,6vw,78px)}.section-inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}.works-page{background:transparent}.subpage .about,.subpage .photo,.subpage .graphic,.subpage .works,.subpage .advertisement,.subpage .works-contact,.subpage .contact{background-color:#f7f7f447}body[data-page=about] .about{background:#fff}.works-shelf{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,3vw,34px);align-items:center;margin-bottom:clamp(28px,4vw,48px)}.works-shelf h2{font-family:var(--sans);font-size:12px;font-weight:300;line-height:1;letter-spacing:.36em;color:#4f544f;text-transform:uppercase}.works-shelf:after{content:"";display:block;height:.5px;background:#50565057}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:baseline;margin-bottom:clamp(26px,4vw,44px)}.section-head .lbl{margin-bottom:0}.section-head__note{font-family:var(--serif);font-size:15px;font-style:italic;line-height:1.4;letter-spacing:.08em;color:var(--faint)}.site-nav{position:fixed;top:clamp(30px,4vw,58px);right:clamp(80px,7vw,120px);z-index:40;display:flex;align-items:center;gap:clamp(22px,3vw,42px);color:#ffffffe6;isolation:isolate}.site-nav__link{position:relative;display:inline-flex;align-items:center;font-size:clamp(13px,.92vw,14px);line-height:1.2;letter-spacing:.17em;text-transform:uppercase;text-shadow:0 1px 14px rgba(0,0,0,.18)}.site-nav__link:before{content:"";position:absolute;left:50%;top:50%;z-index:-1;width:126%;height:190%;border-radius:50%;background:radial-gradient(ellipse at 42% 52%,rgba(139,225,205,.22),rgba(92,166,151,.12) 46%,transparent 72%);filter:blur(11px);opacity:0;transform:translate(-50%,-50%);pointer-events:none;transition:opacity .42s var(--ease)}.site-nav__link:after{content:"";position:absolute;top:50%;right:-9px;width:2.5px;height:2.5px;border-radius:50%;background:currentColor;opacity:0;transform:translateY(-50%);pointer-events:none}.site-nav__link:hover:before{opacity:1}.site-nav__link.is-active:after{opacity:.58}.subpage .site-nav{position:fixed;top:clamp(30px,4vw,58px);right:clamp(80px,7vw,120px);left:auto;z-index:80;width:max-content;transform:none;color:#505650}.subpage .site-nav__link{text-shadow:0 1px 18px rgba(255,255,255,.28)}.subpage .site-nav__link:before{background:radial-gradient(ellipse at 44% 52%,rgba(95,161,145,.18),rgba(160,221,207,.12) 48%,transparent 74%)}.subpage .site-nav__link.is-active:after{opacity:.5}body[data-page=works] .site-nav{transition:opacity .42s var(--ease),transform .42s var(--ease);will-change:opacity,transform}body[data-page=works] .site-nav__link{color:#404640b8;text-shadow:0 1px 16px rgba(255,255,255,.18)}body[data-page=works] .site-nav.is-hidden{opacity:0;pointer-events:none;transform:translateY(-14px)}.fv{position:relative;min-height:100svh;padding:clamp(28px,4vw,64px);display:block;background:#e8e5dd;overflow:hidden;isolation:isolate}.fv:before{content:"";position:absolute;inset:0;border:0;pointer-events:none;z-index:2}.fv:after{content:"";position:absolute;inset:-12%;background:linear-gradient(180deg,#f5f2ea33,#f1eee40d 58%,#4b675b1c),radial-gradient(ellipse 92% 110% at 90% 54%,rgba(47,78,67,.1),transparent 72%);pointer-events:none;z-index:1;filter:blur(18px);mix-blend-mode:soft-light}.fv__world{position:absolute;inset:-18vh -18vw;z-index:0;overflow:hidden;background:linear-gradient(180deg,#d4d3ca,#a9b2a8 48%,#6b887d)}.fv__fluid-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.96;filter:saturate(.86) contrast(.94) brightness(1.03)}.fv__paper-texture{position:absolute;inset:-12%;opacity:.5;background:repeating-linear-gradient(82deg,rgba(255,255,255,.05) 0 1px,transparent 1px 5px),repeating-linear-gradient(173deg,rgba(23,31,28,.045) 0 1px,transparent 1px 6px),linear-gradient(90deg,#ffffff14,#171f1c14);background-size:100% 100%;filter:blur(.18px);mix-blend-mode:soft-light;pointer-events:none;animation:paperDrift 22s ease-in-out infinite alternate}.fv__field{position:absolute;display:block;will-change:transform,opacity,filter;transform-origin:center;filter:blur(52px);opacity:.16;mix-blend-mode:soft-light}.fv__field--paper{width:132vw;height:116vh;left:-42vw;top:-36vh;background:radial-gradient(ellipse at 52% 58%,rgba(238,233,218,.78),rgba(190,196,178,.25) 52%,transparent 82%);animation:inkBreathA 11s ease-in-out infinite alternate}.fv__field--sage{width:142vw;height:116vh;right:-44vw;top:0;background:radial-gradient(ellipse at 54% 48%,rgba(111,143,126,.52),rgba(74,112,98,.22) 56%,transparent 84%);filter:blur(62px);animation:inkBreathB 13s ease-in-out infinite alternate}.fv__field--mist{width:118vw;height:92vh;left:-18vw;bottom:-22vh;background:radial-gradient(ellipse at 44% 46%,rgba(195,201,184,.36),rgba(106,137,122,.18) 56%,transparent 84%);filter:blur(66px);opacity:.42;animation:inkBreathC 15s ease-in-out infinite alternate}.fv__field--graphite{width:96vw;height:104vh;right:-46vw;bottom:-40vh;background:radial-gradient(ellipse at 48% 42%,rgba(45,70,63,.22),rgba(32,55,49,.1) 48%,transparent 84%);filter:blur(78px);opacity:.34;animation:inkBreathD 17s ease-in-out infinite alternate}.fv__intro{position:relative;z-index:3}.fv__intro{position:absolute;left:50%;top:50%;bottom:auto;width:min(560px,calc(100vw - 72px));min-height:0;color:#ffffffdb;mix-blend-mode:screen;opacity:.92;transform:translate(-50%,-50%);display:grid;grid-template-columns:auto auto;column-gap:clamp(58px,7vw,108px);align-items:center;justify-content:center}.fv__intro-logo{width:clamp(170px,15vw,258px);height:auto;opacity:.92;transform:translate(-12px);filter:invert(1) drop-shadow(0 10px 30px rgba(0,0,0,.16)) drop-shadow(0 0 12px rgba(255,255,255,.14))}.fv__tagline{margin:0;color:#f6f6f1c2;font-family:var(--sans);font-size:clamp(11px,.92vw,14.5px);font-weight:400;line-height:1;letter-spacing:.22em;white-space:nowrap;text-shadow:0 8px 28px rgba(0,0,0,.16);transform:translateY(clamp(8px,.9vw,14px))}.fv__location{position:absolute;left:50%;bottom:clamp(60px,9vh,92px);z-index:3;transform:translate(-50%);font-size:clamp(13px,1vw,17px);line-height:1;letter-spacing:.18em;color:#ffffffc2;text-transform:uppercase;mix-blend-mode:screen;text-shadow:0 8px 24px rgba(0,0,0,.15);pointer-events:none}.service-page{min-height:100svh;padding:124px 0;background:rgba(251,250,247,var(--section-veil))}.service-page h1{max-width:760px;font-family:var(--serif);font-size:clamp(48px,7vw,96px);font-weight:300;line-height:.96;letter-spacing:.02em;margin-bottom:72px}.service-page__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;border-top:.5px solid var(--border)}.service-page__grid article{padding:28px 24px 0 0}.service-page__grid article+article{border-left:.5px solid var(--border);padding-left:28px}.service-page__grid span{display:block;font-family:var(--serif);font-size:24px;color:var(--accent);margin-bottom:24px}.service-page__grid h2{font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:20px}.service-page__grid p{font-size:12px;line-height:2.1;letter-spacing:.08em;color:var(--muted)}@keyframes paperDrift{0%{transform:translate3d(-1vw,-.7vh,0) scale(1.01)}to{transform:translate3d(1.2vw,.9vh,0) scale(1.025)}}@keyframes inkBreathA{0%{transform:translate3d(-3.2vw,-1.8vh,0) scale(.985);opacity:.4;filter:blur(56px)}to{transform:translate3d(2.6vw,2.1vh,0) scale(1.08);opacity:.52;filter:blur(66px)}}@keyframes inkBreathB{0%{transform:translate3d(1.4vw,-.8vh,0) scale(1);opacity:.38;filter:blur(62px)}to{transform:translate3d(-3.4vw,2.2vh,0) scale(1.09);opacity:.5;filter:blur(74px)}}@keyframes inkBreathC{0%{transform:translate3d(2.6vw,2vh,0) scale(.97);opacity:.3;filter:blur(66px)}to{transform:translate3d(-2.4vw,-2.6vh,0) scale(1.075);opacity:.43;filter:blur(78px)}}@keyframes inkBreathD{0%{transform:translate3d(2.2vw,-1.6vh,0) scale(.965);opacity:.22;filter:blur(78px)}to{transform:translate3d(-2.2vw,2vh,0) scale(1.065);opacity:.34;filter:blur(90px)}}@media (prefers-reduced-motion: reduce){.fv__field{animation:none}}.about{min-height:100svh;padding:clamp(104px,10.5vw,154px) 0 clamp(84px,8.5vw,128px);background:#fff;display:flex;align-items:center}.about__inner{width:min(1120px,calc(100vw - (var(--pad) * 2)));margin:0 auto;padding:0;display:grid;grid-template-columns:minmax(320px,.94fr) minmax(360px,.86fr);gap:clamp(76px,8.5vw,142px);align-items:center;justify-content:center}.about__visual{position:relative;min-height:clamp(430px,43vw,560px);display:grid;place-items:center}.about__illustration{width:clamp(260px,29vw,380px);margin:0}.about__illustration img{display:block;width:100%;height:auto;opacity:.9;filter:grayscale(1) contrast(1.08) brightness(1.05);mix-blend-mode:multiply}.about__content{display:grid;align-content:center;justify-items:start;gap:clamp(28px,3.3vw,44px);padding-top:clamp(4px,1vw,14px)}.about__heading{font-family:var(--sans);font-size:clamp(30px,3.35vw,47px);font-weight:300;line-height:1;letter-spacing:.07em;color:#141414;text-transform:uppercase}.about__copy{font-family:var(--sans);font-size:clamp(32px,3.6vw,52px);font-weight:200;line-height:1.22;letter-spacing:.052em;color:#4d4d48}.about__text{max-width:390px;margin:0;display:grid;gap:clamp(16px,1.8vw,23px);font-size:clamp(11.8px,.84vw,12.6px);font-weight:400;color:#101010c7;line-height:1.92;letter-spacing:.015em;text-align:left}.photo{padding:clamp(116px,14vw,178px) 0 clamp(92px,12vw,150px);background:rgba(251,250,247,var(--section-veil));transition:background-color .8s var(--ease)}.photo__categories{display:grid;gap:clamp(52px,7vw,84px)}.photo-category{display:grid;gap:clamp(24px,4vw,42px)}.photo-category__work{width:100%}.photo-book{column-count:3;column-gap:clamp(18px,2.8vw,32px);width:100%;padding:0}.photo-book__plate{position:relative;width:100%;margin:0 0 clamp(18px,2.8vw,32px);break-inside:avoid;background:transparent;overflow:hidden;isolation:isolate;box-shadow:0 16px 38px #2327250d;transition:transform .8s var(--ease),box-shadow .8s var(--ease),filter .8s var(--ease)}.photo-book__plate picture,.photo-book__plate img{display:block;width:100%;height:auto}.photo-book__plate img{filter:brightness(var(--photo-brightness, .98)) contrast(var(--photo-contrast, .98)) saturate(var(--photo-saturation, .92)) sepia(var(--photo-warmth, .008));transition:transform 1.2s var(--ease)}.photo-book__plate:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(251,250,247,var(--photo-veil, .014)),rgba(70,84,71,var(--photo-depth, .005)));mix-blend-mode:multiply;pointer-events:none;transition:opacity 1.2s var(--ease)}.photo-book__plate:hover img{transform:scale(1.018)}.photo-book__plate:hover{transform:translateY(-4px);z-index:4;box-shadow:0 22px 44px #23272513}.photo-book__plate:hover:after{opacity:.92}.graphic{padding:clamp(86px,11vw,140px) 0 clamp(72px,10vw,120px);background:rgba(248,246,241,calc(var(--section-veil) * .72))}.graphic-card{display:grid;grid-template-columns:minmax(0,820px);align-items:start;justify-content:end}.graphic-card__work{display:grid;gap:clamp(16px,2vw,24px)}.graphic-card__stage{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,48px);align-items:center;width:100%;min-height:auto;padding:clamp(38px,5vw,64px);background:radial-gradient(ellipse 78% 64% at 50% 48%,rgba(255,255,255,.3),transparent 70%),linear-gradient(135deg,#eeebe2b8,#dee0d47a)}.graphic-card__piece{position:relative;width:100%;max-width:330px}.graphic-card__piece--back{justify-self:start;transform:translateY(3%)}.graphic-card__piece--front{justify-self:end;transform:translateY(-3%)}.graphic-card__piece img{display:block;width:100%;height:auto;box-shadow:0 10px 30px #0000000e;filter:saturate(.92) contrast(.98) brightness(.99);transition:transform .8s var(--ease),filter .8s var(--ease),box-shadow .8s var(--ease)}.graphic-card:hover .graphic-card__piece img{transform:scale(1.012);box-shadow:0 12px 32px #0000000f;filter:saturate(.96) contrast(1) brightness(1)}.graphic-card__body{width:100%;justify-self:start;padding-bottom:0}.graphic-card__title{margin-bottom:6px;font-family:var(--sans);font-size:12px;font-weight:300;line-height:1.45;letter-spacing:.22em;color:#4f4f4f;text-transform:uppercase}.graphic-card__cat{font-size:10px;line-height:1.6;letter-spacing:.22em;color:#555;text-transform:uppercase}.works{padding:clamp(86px,11vw,140px) 0 clamp(72px,10vw,120px);background:rgba(248,246,241,var(--section-veil))}.works__grid{display:grid;grid-template-columns:1fr;gap:clamp(52px,7vw,84px)}.work-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,250px);gap:clamp(18px,4vw,52px);align-items:end;padding-top:0}.work-card:nth-child(2n){grid-template-columns:minmax(190px,250px) minmax(0,1fr)}.work-card:nth-child(2n) .work-card__screen{grid-column:2}.work-card:nth-child(2n) .work-card__body{grid-column:1;grid-row:1}.work-card__screen{width:100%;aspect-ratio:16 / 10;background:#ebe8e1;overflow:hidden;position:relative;display:block;text-decoration:none;color:inherit;box-shadow:0 30px 84px #1e1a1417}.work-card__screen picture,.work-card__screen img{display:block;width:100%;height:100%}.work-card__screen picture{position:absolute;inset:0}.work-card__screen img{object-fit:cover;object-position:var(--work-image-position, 50% 0%);filter:saturate(.86);transition:transform .8s var(--ease),filter .8s var(--ease)}.work-card:hover .work-card__screen img{transform:scale(1.035);filter:saturate(.96)}@media (hover: none),(prefers-reduced-motion: reduce){.photo-book__plate img,.graphic-card__piece img,.work-card__screen img{transition:none}.photo-book__plate,.photo-book__plate:hover{transform:none;transition:none}.photo-book__plate:hover img,.graphic-card:hover .graphic-card__piece img,.work-card:hover .work-card__screen img{transform:none}}.mock{display:flex;flex-direction:column;height:100%}.mock__bar{height:16px;background:#e4e1dc;display:flex;align-items:center;padding:0 8px;gap:4px;flex-shrink:0}.mock__dot{width:5px;height:5px;border-radius:50%;background:#d0ccc7}.mock__url{flex:1;height:7px;background:#d8d5d0;border-radius:2px;margin:0 5px}.mock__body{flex:1;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.mock__hero{height:36px;background:#d8d5d0;border-radius:2px}.mock__line{height:5px;background:#e6e3de;border-radius:2px}.work-card__body{padding-bottom:6px}.work-card__title{margin-bottom:6px;font-family:var(--sans);font-size:12px;font-weight:300;line-height:1.45;letter-spacing:.22em;color:#4f4f4f;text-transform:uppercase}.work-card__cat{font-size:10px;line-height:1.6;letter-spacing:.22em;color:#555;text-transform:uppercase}.advertisement{padding:clamp(42px,6vw,76px) 0 clamp(46px,7vw,78px);background:rgba(251,250,247,calc(var(--section-veil) * .8))}.advertisement-note{padding-top:clamp(6px,1vw,12px)}.advertisement-note p{font-size:11px;line-height:1.6;letter-spacing:.24em;color:#555;text-transform:uppercase}.works-contact{padding:clamp(34px,5vw,58px) 0;background:rgba(248,246,241,var(--section-veil))}.works-contact__inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.works-contact__label{font-size:11px;letter-spacing:.32em;color:#4f544f}.works-contact__link{display:inline-flex;align-items:center;min-height:38px;padding:0;border:0;background:transparent;font-size:11px;letter-spacing:.22em;color:#4f4f4f;text-transform:uppercase;transition:color .3s var(--ease)}.works-contact__link:hover{color:var(--ink)}.contact{padding:clamp(124px,16vw,198px) var(--pad);border-top:.5px solid rgba(70,84,71,var(--section-line));text-align:center;background:rgba(251,250,247,var(--section-veil))}.contact__intro{max-width:780px;margin:0 auto 64px}.contact .lbl{font-size:clamp(23px,2.2vw,25px);letter-spacing:.22em;color:#12362fd6}.contact__heading{font-family:var(--serif);font-size:56px;font-weight:300;line-height:1.08;letter-spacing:.08em;margin:22px 0 16px}.contact__sub{font-size:clamp(17px,1.6vw,18px);line-height:2.05;letter-spacing:.06em;color:#171715c2;margin-top:20px;margin-bottom:0}.contact__form{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:22px;text-align:left}.contact__input,.contact__textarea{width:100%;padding:18px 0;background:transparent;border:none;border-bottom:1px solid rgba(18,54,47,.34);font-family:var(--sans);font-size:14px;font-weight:300;letter-spacing:.1em;color:#171715c2;outline:none;transition:border-color .3s var(--ease),color .3s var(--ease)}.contact__input::placeholder,.contact__textarea::placeholder{color:#171715bd;font-size:14px;letter-spacing:.12em}.contact__input:focus,.contact__textarea:focus{border-bottom-color:var(--accent)}.contact__textarea{resize:none;height:132px}.contact__btn{align-self:center;margin-top:24px;font-size:14px;letter-spacing:.18em;min-width:196px;padding:17px 48px;border:.5px solid rgba(70,84,71,.42);background:var(--accent);color:#fbfaf7;text-transform:uppercase;cursor:pointer;font-family:var(--sans);transition:border-color .3s var(--ease),background .3s var(--ease),color .3s var(--ease),transform .3s var(--ease)}.contact__btn:hover{border-color:var(--ink);background:var(--ink);color:#fbfaf7;transform:translateY(-1px)}.contact__btn:disabled{cursor:wait;opacity:.72;transform:none}.footer{border-top:.5px solid var(--border);padding:32px var(--pad);display:flex;justify-content:space-between;align-items:center;max-width:var(--max);margin:0 auto}.footer__logo{font-family:var(--serif);font-size:17px;letter-spacing:.22em;color:#505050}.footer__copy{font-size:13px;letter-spacing:.16em;color:#555}.reveal{opacity:0;transform:translateY(48px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.reveal.visible,[data-reveal].visible,[data-work-card].visible,.photo-frame.visible{opacity:1;transform:translateY(0)}[data-reveal],[data-work-card],.photo-frame{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:var(--photo-delay, 0ms)}.photo-book .photo-frame{transform:translateY(28px)}.photo-book .photo-frame.visible{transform:translateY(0)}.photo-book .photo-frame.visible:hover{transform:translateY(-4px)}@media (max-width: 1024px){.fv__paper-texture{opacity:.24;background:repeating-linear-gradient(82deg,rgba(255,255,255,.032) 0 .45px,transparent .45px 2.8px),repeating-linear-gradient(173deg,rgba(23,31,28,.026) 0 .45px,transparent .45px 3.2px),repeating-linear-gradient(24deg,rgba(255,255,255,.018) 0 .35px,transparent .35px 3.8px),linear-gradient(90deg,#ffffff0b,#171f1c0b);filter:blur(.32px);-webkit-mask-image:radial-gradient(ellipse 46% 28% at 50% 50%,rgba(0,0,0,.46) 0 42%,rgba(0,0,0,.78) 64%,#000 100%);mask-image:radial-gradient(ellipse 46% 28% at 50% 50%,#00000075 0 42%,#000000c7 64%,#000)}}@media (max-width: 680px){:root{--pad: 24px;--max: 100%}.sp-only{display:block}.site-nav{top:22px;right:24px;gap:16px}.site-nav__link{font-size:11px;letter-spacing:.12em}body[data-page=works] .site-nav{left:var(--pad);right:var(--pad);width:auto;justify-content:center;gap:clamp(12px,4vw,18px)}body[data-page=works] .site-nav__link{font-size:10.5px;letter-spacing:.1em}.scroll-sign{display:none}.fv{min-height:100svh;padding:22px var(--pad) 24px}.fv__intro{left:50%;top:50%;width:min(360px,calc(100vw - 46px));transform:translate(-50%,-50%);grid-template-columns:auto auto;column-gap:clamp(26px,7vw,40px);align-items:center}.fv__intro-logo{width:clamp(118px,34vw,160px);transform:translate(-10px)}.fv__tagline{font-size:clamp(9px,2.7vw,10.8px);letter-spacing:.16em;transform:translateY(6px)}.fv__location{bottom:clamp(54px,9vh,76px);font-size:12px;letter-spacing:.16em}.fv:before{inset:12px}.fv__top{align-items:center;gap:22px}.fv__mark img{height:34px}.fv__nav{display:grid;grid-template-columns:repeat(2,auto);gap:6px 14px;justify-content:end}.fv__nav a{font-size:8px;letter-spacing:.2em}.fv__center{padding:62px 0 46px}.fv__kicker{font-size:9px;letter-spacing:.2em;margin-bottom:22px}.fv__brand{font-size:clamp(58px,18vw,86px);line-height:.86}.fv__statement{max-width:310px;font-size:11px;line-height:2.05;margin-top:30px}.fv__bottom{flex-direction:column;align-items:flex-start;gap:7px;font-size:8px;letter-spacing:.22em}.service-page{padding:92px 0}.service-page h1{font-size:48px;margin-bottom:48px}.service-page__grid{grid-template-columns:1fr}.service-page__grid article+article{border-left:0;border-top:.5px solid var(--border);padding-left:0}.about{min-height:auto;padding:96px 0 88px;display:block;background:#fff}.about__inner{width:auto;max-width:620px;margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:1fr;gap:46px;align-items:start;justify-content:stretch}.about__visual{min-height:auto;place-items:start center}.about__illustration{width:min(66vw,286px)}.about__content{gap:28px;padding-top:0}.about__heading{font-size:clamp(28px,8.7vw,38px);letter-spacing:.065em}.about__copy{font-size:clamp(27px,8.1vw,38px);line-height:1.22;letter-spacing:.045em}.about__text{max-width:360px;font-size:11.6px;line-height:1.9;letter-spacing:.014em;text-align:left}.section-head{flex-direction:column;gap:10px;margin-bottom:24px}.works-shelf{gap:16px;margin-bottom:24px;padding-top:16px}.works-shelf h2{font-size:11px;letter-spacing:.3em}.photo{padding-top:86px;padding-bottom:86px}.photo__categories{gap:58px}.photo-category,.photo-category:nth-child(2n){gap:20px;padding-top:22px}.photo-book{column-count:2;column-gap:14px}.photo-book__plate,.photo-book__plate--hero,.photo-book__plate--portrait,.photo-book__plate--wide-detail,.photo-book__plate--square-detail{position:relative;inset:auto;transform:none;margin-bottom:14px}.graphic{padding-top:42px;padding-bottom:58px}.graphic-card{grid-template-columns:1fr;gap:22px}.graphic-card__stage{grid-template-columns:1fr;gap:22px;padding:30px}.graphic-card__piece{width:min(100%,260px);max-width:260px}.graphic-card__piece--back{justify-self:end;transform:none}.graphic-card__piece--front{justify-self:start;transform:none}.graphic-card__body{width:100%;justify-self:start}.graphic-card__title{font-size:12px;margin-bottom:6px}.works__grid{grid-template-columns:1fr;gap:58px}.work-card,.work-card:nth-child(2n){grid-template-columns:1fr;gap:16px}.work-card:nth-child(2n) .work-card__screen,.work-card:nth-child(2n) .work-card__body{grid-column:auto;grid-row:auto}.work-card__screen{aspect-ratio:4 / 3}.work-card__title{font-size:12px;margin-bottom:6px}.works-contact__inner{flex-direction:column;align-items:flex-start}.advertisement{padding-top:42px;padding-bottom:54px}.advertisement-note p{font-size:11px}.contact__heading{font-size:38px}.footer{flex-direction:column;gap:12px;text-align:center}}@media (max-width: 480px){.photo-book{column-count:1}}
