/* Shared editorial pages: ink, warm paper, rose, and restrained classical relief. */
/* Original logo files retained intact. The window excludes their transparent margins. */
.header{mix-blend-mode:normal;padding:16px 4.2vw}
.header .brand{display:block;position:relative;flex:none;width:144px;height:64px;overflow:hidden}
.brand img{position:absolute;left:-12.21464%;top:-84.85971%;width:123.55848%;height:auto;max-width:none}
.brand .logo-light{display:block}.brand .logo-dark{display:none}
.subpage .brand .logo-light,.header.on-paper .brand .logo-light,.menu-open .brand .logo-light{display:none}
.subpage .brand .logo-dark,.header.on-paper .brand .logo-dark,.menu-open .brand .logo-dark{display:block}
/* In-site navigation keeps the shared audio player mounted. */
.full-artwork img{height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}
.visual-title h1{font-size:clamp(28px,5vw,62px)!important;line-height:1.35!important;overflow-wrap:anywhere;letter-spacing:-.02em!important}
.visual-board video{display:block;width:100%;height:auto;background:#172130}
.inquiry-panel input:not([type=hidden]){width:100%;box-sizing:border-box;background:#f8f5f0;border:1px solid #c6b6a8;padding:14px 16px;color:var(--ink);font:inherit;border-radius:0}
.inquiry-panel button[type=submit]{width:100%;cursor:pointer}
.inquiry-panel button:disabled{opacity:.55;cursor:wait}
#form-status{font-size:12px;line-height:1.9;min-height:1.9em}
.privacy-content{max-width:800px;padding:30px 0 90px}.privacy-content h1{font-size:32px;font-weight:400}.privacy-content h2{font-size:18px;font-weight:400;margin-top:36px}
.latest-work-link{padding:45px 7vw;border-top:1px solid #b2a39460;background:#f1eee8}.latest-work-link p{font-size:14px}.latest-work-link .text-link{margin-top:5px}
::view-transition-old(root){animation:page-out .2s both}
::view-transition-new(root){animation:page-in .45s var(--ease) both}
@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.menu-toggle{display:none}.header nav a[aria-current=page]:after{transform:scaleX(1)}
.subpage .header{mix-blend-mode:normal;background:#f1eee8f2;color:var(--ink);border-bottom:1px solid #b2a39440;backdrop-filter:blur(14px)}
.subpage .header nav a:last-child{border-color:#a99783}
.subpage main{padding-top:96px}.page-wrap{width:min(1180px,86%);margin:auto}
.breadcrumb{display:flex;gap:13px;flex-wrap:wrap;align-items:center;font-size:9px;letter-spacing:.13em;color:#8b7c70;padding:35px 0}
.breadcrumb a:hover{color:#453841}.breadcrumb span[aria-hidden]{opacity:.5}
.page-heading{position:relative;padding:27px 0 64px;display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:30px}
.page-heading .eyebrow{color:#9b7e69}.page-heading h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(76px,10vw,148px);line-height:.9;letter-spacing:-.055em;margin:20px 0}
.page-heading h1 em{font-weight:400;color:#aa8293}.page-heading p{font-family:'Noto Serif JP',serif;font-size:clamp(15px,1.8vw,23px);line-height:2;letter-spacing:.06em;max-width:430px;margin:0 0 13px}
.paper-ornament{position:relative;isolation:isolate}.paper-ornament:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('./assets/classical-damask.png') center/780px;filter:grayscale(1) invert(1) contrast(1.65);opacity:.095;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,#000,transparent 26%,transparent 74%,#000)}
.section-space{padding:85px 0}.section-label{color:#977e6c;font-size:9px;letter-spacing:.18em;margin-bottom:28px}.jp-title{font-family:'Noto Serif JP',serif;font-weight:400;font-size:clamp(25px,3vw,40px);line-height:1.85;letter-spacing:.05em;margin:0 0 26px}.body-copy{font-size:13px;line-height:2.25;letter-spacing:.035em;color:#706970}.body-copy p{margin:0 0 22px}.fine-note{font-size:9px;line-height:1.9;color:#8a7d73}.split-story{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.rule-top{border-top:1px solid #b2a39470}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.tag-list span{border:1px solid #b8a59270;padding:8px 11px;font-size:9px;color:#806b60}
.will-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .9s var(--ease)}.will-reveal.is-visible{opacity:1;transform:none}
.listing-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-top:1px solid #b2a39480;border-bottom:1px solid #b2a39480;margin-bottom:40px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid transparent;background:transparent;padding:12px 17px;font-size:11px;letter-spacing:.06em;transition:.25s}.filters button[aria-pressed=true]{border-color:#a88b78;background:#e6ded5}.filters button:hover{background:#e6ded5}.listing-tools output{font-size:9px;color:#85766c;white-space:nowrap}
.project-list{display:grid;grid-template-columns:1fr 1fr;gap:58px 4vw;padding-bottom:85px}.project-list [hidden]{display:none!important}.project-tile{display:block}.project-art{aspect-ratio:1.35;position:relative;overflow:hidden;background:#e3dacf}.project-art>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease)}.project-tile:hover .project-art>img{transform:scale(1.04)}.project-caption{border-bottom:1px solid #b2a39480;padding:20px 0;display:grid;grid-template-columns:1fr 24px;gap:11px}.project-caption .eyebrow{color:#967c6c;font-size:8px}.project-caption h2{font-size:17px;line-height:1.7;font-weight:400;margin:5px 0 0;font-family:'Noto Serif JP',serif}.project-caption p{font-size:10px;line-height:1.9;margin:6px 0 0;color:#86786f}.project-caption>span{align-self:center;font-size:24px;transition:transform .3s}.project-tile:hover .project-caption>span{transform:translate(4px,-4px)}
.result-art{display:flex;flex-direction:column;justify-content:center;padding:35px;color:#f0e9e0;background:#30384b;isolation:isolate}.result-art:before{content:'';position:absolute;inset:0;background:url('./assets/classical-damask.png') center/660px;opacity:.22;z-index:-1}.result-art:after{content:'';position:absolute;inset:12px;border:1px solid #d6bf9e50;pointer-events:none}.result-art .eyebrow{color:#c1b09e}.tile-metric{font-family:Manrope,Arial,sans-serif;font-weight:300;font-size:clamp(35px,5.7vw,78px);letter-spacing:-.05em;line-height:1.3;margin:18px 0}.tile-metric small{font-size:12px;letter-spacing:.04em;margin-left:7px}.tile-metric b{font-weight:300;color:#c39dab}.result-art>p{font-size:10px;margin:0;letter-spacing:.08em;color:#c7bbc0}.result-art.rose{background:#725866}.result-art.sand{background:#8b796a}
.about-hero{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:10px 0 85px;align-items:center}.about-portrait{position:relative;margin:0}.about-portrait img{width:100%;display:block;aspect-ratio:.79;object-fit:cover}.about-portrait:before{content:'';position:absolute;inset:17px;border:1px solid #e3d3bf60;pointer-events:none}.about-portrait figcaption{position:absolute;bottom:30px;left:35px;color:#f5eee6;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(38px,5vw,70px)}.about-copy h2{font-family:'Noto Serif JP',serif;font-weight:400;font-size:29px;letter-spacing:.13em;margin:20px 0}.about-copy h2 small{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.2em;margin-top:13px;color:#9b8072}.about-copy .body-copy{font-size:12px}.about-quote{font-family:'Noto Serif JP',serif;font-size:clamp(24px,3vw,41px);line-height:1.95;padding:55px 0;text-align:center;border-top:1px solid #b2a39460;border-bottom:1px solid #b2a39460;margin:0;color:#775b6a}.timeline{margin:0}.timeline>div{display:grid;grid-template-columns:140px 1fr;gap:30px;padding:27px 0;border-bottom:1px solid #b2a39450}.timeline dt{font-family:Manrope,Arial,sans-serif;font-size:12px;color:#917d6c}.timeline dd{margin:0}.timeline h3{font-size:15px;font-weight:400;margin:0 0 11px}.timeline p{font-size:12px;line-height:2.2;margin:0;color:#706970}
.service-hero{position:relative;padding:48px 5vw;background:#30384b;color:#eee7df;isolation:isolate;overflow:hidden}.service-hero:before{content:'';position:absolute;inset:0;background:url('./assets/classical-damask.png') center/800px;opacity:.2;z-index:-1}.service-hero:after{content:'&';position:absolute;right:4%;bottom:-60px;color:#d2bda015;font:350px/1 'Cormorant Garamond',serif;z-index:-1}.service-hero h2{font-family:'Noto Serif JP',serif;font-size:clamp(23px,3vw,42px);font-weight:400;line-height:1.9}.service-hero p{font-size:12px;line-height:2.3;color:#c7bec4}.service-index{display:flex;flex-wrap:wrap;gap:20px;margin-top:30px}.service-index a{font-size:11px;border-bottom:1px solid #a9958170;padding:13px 0;display:flex;gap:35px}
.service-detail{padding:75px 0;border-bottom:1px solid #b2a39480;display:grid;grid-template-columns:70px 1fr 1fr;gap:4vw}.service-order{font:300 35px Manrope,Arial,sans-serif;color:#a18375}.service-detail h2{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(37px,4.8vw,62px);line-height:1.1;letter-spacing:-.035em;margin:0 0 12px}.service-detail h3{font-family:'Noto Serif JP',serif;font-weight:400;font-size:20px;line-height:1.9;margin:24px 0}.service-detail .body-copy{font-size:12px}.service-deliverables{padding:0;list-style:none;margin:25px 0}.service-deliverables li{padding:13px 0;border-bottom:1px solid #b2a39440;font-size:12px;line-height:1.8}.service-deliverables li:before{content:'—';color:#ac8b98;margin-right:12px}.process-list{counter-reset:step;list-style:none;padding:0;margin:0}.process-list li{display:grid;grid-template-columns:50px 180px 1fr;gap:25px;padding:27px 0;border-top:1px solid #b2a39460}.process-list li:before{counter-increment:step;content:'0' counter(step);font:300 24px Manrope,Arial,sans-serif;color:#a18375}.process-list h3{font-size:14px;font-weight:400;margin:4px 0}.process-list p{font-size:12px;line-height:2.1;color:#786d69;margin:0}
.faq details{border-top:1px solid #b2a39470}.faq details:last-child{border-bottom:1px solid #b2a39470}.faq summary{cursor:pointer;padding:23px 0;list-style:none;display:flex;justify-content:space-between;gap:25px;font-size:13px;line-height:1.8}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:#9b7788}.faq details[open] summary:after{content:'−'}.faq details p{font-size:12px;line-height:2.2;color:#756b68;max-width:780px;margin:0 0 24px}
.case-hero{padding:18px 0 55px;display:grid;grid-template-columns:1.25fr 1fr;gap:6vw;align-items:center}.case-hero h1{font-family:'Noto Serif JP',serif;font-weight:400;font-size:clamp(27px,3.7vw,51px);line-height:1.85;letter-spacing:.04em;white-space:pre-line;margin:24px 0}.case-hero .eyebrow{color:#987e69}.case-client{font-size:12px;line-height:2;color:#83746a}.case-hero .brand-case-result{min-height:345px}.case-hero .outcome-after{font-size:clamp(75px,8.7vw,120px)}.case-meta{display:grid;grid-template-columns:1fr 1fr 1.5fr;margin:0 0 60px;padding:25px 0;border-top:1px solid #b2a39470;border-bottom:1px solid #b2a39470;gap:30px}.case-meta dt{font-size:8px;letter-spacing:.15em;color:#a0836e;margin-bottom:9px}.case-meta dd{font-size:11px;line-height:1.9;margin:0}.case-chapter{display:grid;grid-template-columns:180px 1fr;gap:7vw;padding:42px 0;border-top:1px solid #b2a39450}.case-chapter h2{font-family:'Cormorant Garamond',serif;font-size:33px;font-weight:400;margin:0}.case-chapter h2 small{display:block;font-family:Arial,sans-serif;font-size:9px;color:#99816f;letter-spacing:.1em;margin:10px 0}.case-chapter .body-copy{margin:0;font-size:14px}.case-outcome-line{font-family:'Noto Serif JP',serif;font-size:clamp(21px,2.7vw,34px);line-height:1.8;color:#896879}.case-disclaimer{padding:20px 0 55px}.related-nav{display:flex;justify-content:space-between;align-items:center;padding:30px 0 65px;gap:25px}.related-nav a{font-size:11px;line-height:1.8;border-bottom:1px solid #b2a394;padding:12px 0}.related-nav a:last-child{text-align:right}
.visual-title{display:flex;justify-content:space-between;align-items:end;gap:25px;padding:25px 0 45px}.visual-title h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(50px,8vw,115px);font-weight:400;letter-spacing:-.035em;line-height:1;margin:20px 0 0}.visual-title p{font-size:11px;color:#977e6c}.visual-cover{margin:0;background:#ddd3c7;position:relative}.visual-cover img{display:block;width:100%;height:auto}.visual-cover>a{display:block}.visual-cover figcaption,.visual-board figcaption{font-size:8px;letter-spacing:.15em;color:#957c69;padding:15px 0}.visual-board{margin:45px 0 15px}.visual-board img{display:block;width:100%;height:auto}.image-zoom{position:absolute;bottom:50px;right:20px;background:#f1eee8eb;padding:13px 17px;font-size:9px;letter-spacing:.12em}.visual-cover:hover .image-zoom{background:#fff}.lightbox-open{overflow:hidden}#image-lightbox{width:95vw;max-width:1400px;max-height:94svh;background:#252a35}#image-lightbox>img{display:block;width:100%;max-height:90svh;object-fit:contain}#image-lightbox button{position:fixed;top:25px;right:5vw;z-index:3;border:1px solid #c9bda8;background:#f1eee8;padding:13px 18px;font-size:10px}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding-bottom:80px}.contact-aside{position:sticky;top:140px;align-self:start}.contact-aside h2{font-family:'Noto Serif JP',serif;font-size:25px;font-weight:400;line-height:1.9;margin:10px 0 25px}.contact-aside .body-copy{font-size:12px}.contact-seal{margin-top:38px;color:#bca286;font-family:'Cormorant Garamond',serif;font-size:55px;font-style:italic}.inquiry-panel{padding:35px;background:#e9e3da;border:1px solid #b5a18d80;position:relative}.inquiry-panel .eyebrow{color:#9c7e68}.inquiry-panel h2{font-size:18px;font-weight:400;font-family:'Noto Serif JP',serif;line-height:1.8;margin:20px 0 10px}.inquiry-panel>p{font-size:11px;line-height:2.1;color:#817067}.inquiry-panel label{display:block;font-size:11px;margin:26px 0 12px}.inquiry-panel label small{font-size:9px;color:#938476;margin-left:10px}.inquiry-panel select,.inquiry-panel textarea{font:12px/2 Arial,'Yu Gothic',sans-serif;color:var(--ink);width:100%;padding:13px 15px;border:1px solid #b8a694;background:#f7f3ed;border-radius:0}.inquiry-panel textarea{resize:vertical;min-height:245px}.brief-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-top:17px}.brief-actions button{background:transparent;border:0;border-bottom:1px solid #a88c78;font-size:11px;padding:8px 0}.brief-actions span{font-size:9px;color:#938476}.copy-status{min-height:36px;font-size:10px;line-height:1.8;color:#876677}.send-official{width:100%;background:#30384b;color:#f4ebe2;margin:12px 0 0;gap:15px;padding:20px}.inquiry-panel .direct-form{font-size:10px;text-align:center;margin:18px 0 0}.direct-form a{text-decoration:underline;text-underline-offset:4px}.contact-footnote{font-size:9px;line-height:2;color:#8c7c6d;margin-top:25px}.contact-footnote a{text-decoration:underline}
.page-footer .contact-link{max-width:none}.footer-links{display:flex;flex-wrap:wrap;gap:15px 25px;font-size:10px;letter-spacing:.13em;margin:20px 0 34px}.footer-links a:hover{color:#d0a9bb}.page-footer .footer-bottom{padding-bottom:20px}.home-services{padding:75px 7vw 85px;position:relative}.home-services .service-preview-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b2a39470;padding:25px 0;gap:20px}.service-preview-row h3{font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:400;margin:0}.service-preview-row p{font-size:12px;line-height:1.9;color:#86756c;margin:6px 0 0}.service-preview-row>span{font-size:27px;color:#a38291}.case-detail-link{margin-top:15px}.home-profile-link{margin-top:25px}
@media(min-width:1400px){.subpage .page-wrap{width:80%}}
@media(max-width:1000px){.header nav{gap:20px}.page-heading{grid-template-columns:1fr .8fr}.service-detail{grid-template-columns:40px 1fr 1fr;gap:25px}.contact-layout{gap:5vw}.inquiry-panel{padding:25px}.case-chapter{grid-template-columns:140px 1fr}.process-list li{grid-template-columns:40px 140px 1fr;gap:20px}}
@media(max-width:700px){
  .header{padding:20px 6vw}.header nav{display:none}.menu-toggle{display:flex;align-items:center;gap:10px;border:0;background:none;color:inherit;font-size:9px;letter-spacing:.13em;pointer-events:auto;padding:12px 0}.menu-toggle:after{content:'+';font-size:19px;font-weight:300}.menu-toggle[aria-expanded=true]:after{content:'−'}.menu-open{overflow:hidden}.menu-open .header{mix-blend-mode:normal;background:var(--paper);color:var(--ink);height:100svh;align-items:flex-start}.menu-open .header .brand{margin-top:1px}.menu-open .header nav{position:absolute;top:115px;left:8vw;right:8vw;display:flex;flex-direction:column;gap:0;font-size:15px;letter-spacing:.13em}.menu-open .header nav a,.menu-open .header nav a:first-child,.menu-open .header nav a:last-child{display:flex;padding:23px 0;border-bottom:1px solid #b2a39460}.menu-open .header nav a:after{display:none}
  .subpage main{padding-top:86px}.page-wrap{width:86%}.breadcrumb{padding:25px 0;font-size:8px;gap:9px}.page-heading{display:block;padding:20px 0 37px}.page-heading h1{font-size:76px;margin:18px 0 27px}.page-heading p{font-size:15px;line-height:2}.page-heading .eyebrow{font-size:8px}.section-space{padding:52px 0}.split-story{grid-template-columns:1fr;gap:16px}.jp-title{font-size:25px}.body-copy{font-size:12px}.listing-tools{display:block;padding:13px 0;margin-bottom:28px}.filters{gap:3px}.filters button{font-size:10px;padding:10px 11px}.listing-tools output{display:block;font-size:8px;margin:12px 0 4px}.project-list{grid-template-columns:1fr;gap:33px;padding-bottom:52px}.project-art{aspect-ratio:1.3}.tile-metric{font-size:54px}.tile-metric small{font-size:11px}.result-art{padding:28px}.project-caption{padding:16px 0}.project-caption h2{font-size:16px}.project-caption p{font-size:10px}.about-hero{grid-template-columns:1fr;gap:35px;padding-bottom:45px}.about-portrait img{aspect-ratio:.86;object-position:center 35%}.about-portrait figcaption{font-size:51px;left:25px;bottom:23px}.about-copy h2{font-size:27px}.about-quote{font-size:23px;text-align:left;padding:32px 0}.timeline>div{grid-template-columns:1fr;gap:12px;padding:23px 0}.timeline dt{font-size:11px}.timeline h3{font-size:13px}.timeline p{font-size:11px}.service-hero{padding:28px 24px}.service-hero h2{font-size:23px}.service-hero p{font-size:11px}.service-index{display:grid;gap:4px;margin-top:17px}.service-index a{justify-content:space-between}.service-detail{grid-template-columns:34px 1fr;gap:18px;padding:44px 0}.service-order{font-size:26px}.service-detail h2{font-size:39px}.service-detail h3{font-size:19px;margin:20px 0}.service-detail>div:last-child{grid-column:2}.service-detail .body-copy{font-size:11px}.service-deliverables{margin-top:0}.service-deliverables li{font-size:11px}.process-list li{grid-template-columns:30px 1fr;gap:10px 18px;padding:23px 0}.process-list li:before{font-size:22px;grid-row:1/3}.process-list p{grid-column:2;font-size:11px}.process-list h3{font-size:13px}.faq summary{font-size:12px;padding:21px 0}.faq details p{font-size:11px}.case-hero{grid-template-columns:1fr;gap:20px;padding:15px 0 32px}.case-hero h1{font-size:27px;line-height:1.85;margin:20px 0}.case-client{font-size:11px}.case-hero .brand-case-result{min-height:300px}.case-hero .outcome-after{font-size:88px}.case-meta{grid-template-columns:1fr 1fr;gap:23px;margin-bottom:32px;padding:22px 0}.case-meta>div:last-child{grid-column:1/-1}.case-chapter{grid-template-columns:1fr;gap:18px;padding:29px 0}.case-chapter h2{font-size:31px}.case-chapter h2 small{display:inline-block;margin-left:16px;font-size:8px}.case-chapter .body-copy{font-size:12px}.case-outcome-line{font-size:22px}.related-nav{padding:20px 0 45px}.related-nav a{font-size:10px;max-width:48%}.visual-title{display:block;padding:17px 0 25px}.visual-title h1{font-size:53px;line-height:1.1;margin-top:15px}.visual-title p{font-size:10px}.image-zoom{font-size:8px;bottom:46px;right:12px;padding:9px 12px}.visual-board{margin-top:25px}.contact-layout{grid-template-columns:1fr;gap:35px;padding-bottom:50px}.contact-aside{position:static}.contact-aside h2{font-size:24px}.contact-seal{display:none}.inquiry-panel{padding:25px 20px}.inquiry-panel h2{font-size:17px}.inquiry-panel textarea,.inquiry-panel select{font-size:16px;padding:11px;line-height:1.9}.inquiry-panel textarea{min-height:300px}.send-official{font-size:11px;padding:18px}.fine-note{font-size:8px}.footer-links{font-size:9px;gap:15px 22px}.home-services{padding:52px 7vw}.service-preview-row h3{font-size:30px}.service-preview-row p{font-size:10px}.section-label{font-size:8px}.home-profile-link{font-size:10px}}
@media(max-width:700px){.header{padding:16px 6vw}.header .brand{width:122px;height:54.22px}.menu-open .header .brand{margin-top:0}}
@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1;transform:none}::view-transition-old(root),::view-transition-new(root){animation:none}.project-art>img{transition:none}}
