@font-face{font-family:Noto Serif JP;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/noto-serif-jp.C4l67Shl.woff2)format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/noto-sans-jp.abNdmadN.woff2)format("woff2")}:root{--ivory:#f7f4ee;--paper:#fbfaf7;--ink:#292a28;--charcoal:#4b4944;--body-text:#403e39;--olive:#7f826a;--olive-dark:#62654f;--greige:#b8aea0;--sand:#ddd4c8;--tile:#e9e1d7;--line:#d8d0c4;--serif:"Noto Serif JP", "Yu Mincho", serif;--sans:"Noto Sans JP", "Yu Gothic", sans-serif;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.9}::selection{background:var(--sand)}a{color:inherit;text-decoration:none}button,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--olive-dark);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1,h2{letter-spacing:.09em;line-height:1.7}h3{letter-spacing:.05em;line-height:1.6}img,svg{display:block}img{max-width:100%;height:auto}svg{flex-shrink:0}p{color:var(--body-text)}[hidden]{display:none!important}.container{width:min(var(--max), calc(100% - 44px));margin-inline:auto}.section{padding-block:76px}.eyebrow{letter-spacing:.2em;color:var(--olive-dark);margin-bottom:16px;font-size:11px;line-height:1.5}.section-kicker{letter-spacing:.09em;margin-bottom:18px;font-size:13px}h2{font-size:25px}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;display:flex}.section-heading .text-link{font-size:13px}.text-link{letter-spacing:.05em;align-items:center;gap:22px;min-height:44px;font-size:13px;display:inline-flex}.text-link svg{width:23px;height:23px;transition:transform .25s}.text-link:hover svg{transform:translate(4px)}.text-link:hover{color:var(--olive-dark)}.button{border:1px solid var(--olive-dark);letter-spacing:.06em;border-radius:3px;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:12px 23px;font-size:13px;line-height:1.6;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.button svg{width:20px;height:20px}.button-primary{background:var(--olive-dark);color:var(--paper)}.button-primary:hover{background:var(--charcoal);border-color:var(--charcoal)}.button-outline{border-color:var(--greige);background:0 0}.button-outline:hover{background:var(--tile);border-color:var(--charcoal)}.button-group{flex-wrap:wrap;gap:12px;display:flex}.tiny-square{background:var(--olive);flex-shrink:0;width:7px;height:7px;display:inline-block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--paper);padding:12px 20px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.desktop-only{display:none}.site-header{z-index:20;background:var(--paper);border-bottom:1px solid #d8d0c4a6;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1440px;min-height:88px;margin:auto;padding:16px 20px;display:flex}.brand{align-items:center;gap:10px;display:inline-flex}.brand-mark{object-fit:contain;mix-blend-mode:multiply;flex-shrink:0;width:58px;height:42px}.brand-text{flex-direction:column;gap:4px;display:flex}.brand-name{font-family:var(--serif);letter-spacing:.06em;white-space:nowrap;font-size:15px;line-height:1.5}.brand-en{letter-spacing:.13em;white-space:nowrap;font-family:Georgia,serif;font-size:8px}.desktop-nav,.header-contact{display:none}.mobile-menu summary{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:48px;height:48px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.menu-lines{border-top:1px solid var(--charcoal);border-bottom:1px solid var(--charcoal);width:24px;height:10px;position:relative}.menu-word{letter-spacing:.12em;font-family:Arial,sans-serif;font-size:9px;line-height:1}.mobile-menu[open] .menu-lines{border:0}.mobile-menu[open] .menu-lines:before,.mobile-menu[open] .menu-lines:after{content:"";background:var(--charcoal);width:24px;height:1px;position:absolute;top:5px;transform:rotate(45deg)}.mobile-menu[open] .menu-lines:after{transform:rotate(-45deg)}.mobile-menu nav{background:var(--paper);border-bottom:1px solid var(--line);padding:22px;position:absolute;top:100%;left:0;right:0;box-shadow:0 18px 24px #292a280c}.mobile-menu nav>a{border-bottom:1px solid var(--line);align-items:center;gap:20px;min-height:60px;font-size:15px;display:flex}.mobile-menu nav>a svg{width:22px;margin-left:auto}.mobile-menu nav>p{margin-top:24px;font-size:12px}.menu-number{color:var(--olive-dark);font-family:Georgia,serif;font-size:12px}.mobile-menu [aria-current=page]{color:var(--olive-dark)}.photo-placeholder{isolation:isolate;aspect-ratio:4/3;background-color:#e7e0d6;background-image:linear-gradient(125deg,#ffffff48,#0000 55%),repeating-linear-gradient(0deg,#0000 0 78px,#f7f4ee88 79px 81px),repeating-linear-gradient(90deg,#0000 0 78px,#f7f4ee88 79px 81px);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;position:relative;overflow:hidden}.photo-placeholder:after{content:"";z-index:-1;background:linear-gradient(120deg,#fff5,#0000 40%,#756f6114);position:absolute;inset:0}.tile-composition{aspect-ratio:1;grid-template-columns:1fr 1fr;gap:5px;width:50%;display:grid;position:absolute;top:13%;left:27%;transform:rotate(-12deg)}.tile-composition span{background:linear-gradient(130deg,#f1eee6,#cfc5b7);border:1px solid #f8f5ec;box-shadow:3px 7px 12px #49433218}.tile-composition span:nth-child(2){background:linear-gradient(130deg,#e5dfd2,#b9b3a3)}.tile-composition span:nth-child(3){background:linear-gradient(130deg,#a6a993,#858a74)}.tile-composition span:nth-child(4){background:linear-gradient(130deg,#eae3d6,#c6b6a0)}.placeholder-label{width:fit-content;max-width:calc(100% - 32px);color:var(--charcoal);letter-spacing:.04em;background:#fbfaf7e8;align-items:center;gap:8px;padding:5px 10px;font-size:10px;line-height:1.6;display:flex;position:absolute;bottom:15px;left:16px;right:16px}.placeholder-label .tiny-square{width:4px;height:4px}.placeholder-entrance{background-color:#d4d0c6;background-size:150%}.placeholder-entrance .tile-composition{gap:3px;width:63%;top:5%;left:19%;transform:rotate(0)}.placeholder-entrance .tile-composition span{background:linear-gradient(140deg,#dbd8ce,#b9b7ad)}.placeholder-kitchen{background-color:#dfd9cf}.placeholder-kitchen .tile-composition{gap:4px;width:62%;transform:rotate(0)}.placeholder-kitchen .tile-composition span{aspect-ratio:2.6;background:linear-gradient(140deg,#ece5da,#ccc1af)}.placeholder-ecocarat{background-color:#e7e3da}.placeholder-ecocarat .tile-composition{gap:4px;width:80%;top:15%;left:10%;transform:rotate(0)}.placeholder-ecocarat .tile-composition span{aspect-ratio:2.4;background:linear-gradient(160deg,#eeebe3 45%,#d4ccbe 46%,#e4ddd0 50%,#d1cabc 90%)}.placeholder-repair .tile-composition{width:48%;transform:rotate(12deg)}.placeholder-about{background-color:#d6cabb;background-image:linear-gradient(135deg,#eee8de,#c1b29d)}.placeholder-about .tile-composition{width:48%;top:19%;left:30%;transform:rotate(-20deg)}.site-photo{object-fit:cover;aspect-ratio:4/3;width:100%;height:100%}.hero{background:var(--ivory);flex-direction:column;padding-top:0;display:flex;position:relative}.hero-content{order:0;padding:39px 22px 38px}.hero-location{letter-spacing:.12em;margin-bottom:26px;padding-left:18px;font-size:11px;line-height:1.8;position:relative}.hero-location .tiny-square{position:absolute;top:7px;left:0}.hero h1{letter-spacing:.09em;font-size:clamp(27px,7.2vw,42px);line-height:1.75}.hero-break{display:none}.hero-description{letter-spacing:.025em;margin-block:24px 28px;font-size:13px;line-height:2.15}.hero .button-group{gap:10px}.hero .button{flex:1;gap:12px;padding:12px 16px;font-size:12px}.hero-art{order:1;margin:0 22px}.hero-art>.photo-placeholder,.hero-art>.site-photo{aspect-ratio:auto;height:270px}.placeholder-hero{background-color:#ddd5c8;background-image:linear-gradient(130deg,#f6f2e7aa,#0000 65%),repeating-linear-gradient(0deg,#0000 0 99px,#f6f2e4aa 100px 102px),repeating-linear-gradient(90deg,#0000 0 99px,#f6f2e4aa 100px 102px);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.placeholder-hero .tile-composition{gap:6px;width:210px;top:18%;left:auto;right:15%;transform:rotate(-13deg)}.placeholder-hero .tile-composition span{border-color:#eee9dc;box-shadow:6px 14px 20px #51463128}.placeholder-hero .placeholder-label{bottom:18px;left:20px}.hero-foot{color:var(--charcoal);letter-spacing:.15em;order:2;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;font-family:Arial,sans-serif;font-size:8px;display:flex}.hero-foot a{align-items:center;gap:14px;min-height:30px;display:flex}.hero-foot a span{font-size:16px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 18px;display:grid}.service-image{position:relative;overflow:hidden}.service-image .photo-placeholder,.service-image .site-photo{aspect-ratio:4/3;transition:transform .4s}.service-card a:hover .service-image>.site-photo{transform:scale(1.025)}.service-image .placeholder-label{gap:5px;max-width:calc(100% - 16px);padding:4px 6px;font-size:9px;bottom:8px;left:8px;right:8px}.service-number{background:var(--paper);width:30px;height:30px;color:var(--charcoal);place-items:center;font-family:Georgia,serif;font-size:11px;display:grid;position:absolute;top:0;left:0}.service-info{padding:20px 0 0}.service-info>svg{color:var(--olive-dark);width:27px;height:27px;margin-bottom:10px}.service-info h3{letter-spacing:0;font-size:16px}.service-info>p{margin-top:12px;font-size:12px;line-height:1.95}.service-info .text-link{gap:12px;margin-top:9px;font-size:11px}.service-info .text-link svg{width:18px}.thought-section{background:var(--ivory);border-top:1px solid #d8d0c455;border-bottom:1px solid #d8d0c455;padding-block:65px}.thought-inner{position:relative}.thought-title h2{font-size:22px}.thought-brand{font-family:var(--serif);letter-spacing:.1em;font-size:12px}.small-rule{background:var(--greige);width:36px;height:1px;margin:21px 0;display:block}.brand-copy{font-family:var(--serif);letter-spacing:.04em;margin-top:30px;font-size:15px;line-height:2.35}.brand-copy p{color:var(--ink)}.thought-leaf{width:65px;height:90px;color:var(--olive);opacity:.5;position:absolute;top:5px;right:0}.philosophy-section{text-align:center}.philosophy-section .eyebrow{margin-bottom:10px}.philosophy-section .section-kicker{margin-bottom:27px}.philosophy-section h2{letter-spacing:.05em;font-size:clamp(22px,5.3vw,36px)}.philosophy-body{margin-top:24px;font-size:13px;line-height:2.2}.values{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px;display:grid}.value{flex-direction:column;align-items:center;padding:0 6px;display:flex;position:relative}.value+.value{border-left:1px solid var(--line)}.value>svg{color:var(--olive-dark);width:27px;height:27px;margin-bottom:14px}.value-number{color:var(--olive-dark);margin-bottom:10px;font-family:Georgia,serif;font-size:10px;line-height:1}.value h3{letter-spacing:0;font-size:13px}.works-section{background:var(--ivory)}.works-notice{margin-bottom:26px;font-size:13px}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px;display:grid}.work-card h3{font-family:var(--sans);letter-spacing:.01em;margin-top:15px;font-size:13px}.work-meta{color:var(--charcoal);flex-wrap:wrap;gap:7px;margin-top:7px;font-size:11px;display:flex}.work-card .placeholder-label{gap:5px;max-width:calc(100% - 16px);padding:4px 6px;font-size:9px;bottom:8px;left:8px;right:8px}.work-title{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.work-title svg{align-self:flex-end;width:18px;height:18px}.work-image{overflow:hidden}.work-image img{transition:transform .4s}.work-card a:hover img{transform:scale(1.025)}.about-section{gap:48px;display:grid}.about-visual{position:relative}.about-visual>.photo-placeholder,.about-visual>.site-photo{aspect-ratio:5/4}.image-caption{writing-mode:vertical-rl;background:var(--paper);font-family:var(--serif);letter-spacing:.18em;padding:14px 8px;font-size:12px;position:absolute;top:25px;right:-10px}.about-copy h2{margin-bottom:23px;font-size:29px;line-height:1.85}.about-copy>p:not(.eyebrow):not(.section-kicker){margin-bottom:28px;font-size:14px;line-height:2.15}.contact-cta{isolation:isolate;background:var(--tile);text-align:center;padding:64px 0;position:relative;overflow:hidden}.contact-cta:before,.contact-cta:after{content:"";z-index:-1;opacity:.65;background-image:repeating-linear-gradient(0deg,#0000 0 69px,#faf7efbb 70px 72px),repeating-linear-gradient(90deg,#0000 0 69px,#faf7efbb 70px 72px);width:260px;height:260px;position:absolute;transform:rotate(35deg)}.contact-cta:before{bottom:-90px;left:-170px}.contact-cta:after{top:-70px;right:-180px}.contact-cta h2{font-size:27px;line-height:1.8}.cta-inner>p:not(.eyebrow){margin-top:20px;font-size:13px;line-height:2}.contact-cta .button-group{justify-content:center;margin-top:28px}.contact-cta .button{min-width:220px}.site-footer{padding-top:48px}.footer-main{flex-direction:column;gap:35px;padding-bottom:35px;display:flex}.footer-area{margin-top:20px;font-size:12px;line-height:2}.footer-main nav{grid-template-columns:repeat(2,1fr);gap:2px 20px;display:grid}.footer-main nav a,.footer-social a{align-items:center;min-height:44px;font-size:12px;display:flex}.footer-social{gap:20px;display:flex}.footer-bottom{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 20px;padding-block:20px;display:flex}.footer-bottom small{letter-spacing:.08em;font-family:Arial,sans-serif;font-size:9px}.footer-bottom>a{align-items:center;min-height:44px;font-size:10px;display:flex}.footer-bottom .back-top{border:1px solid var(--line);justify-content:center;width:44px;margin-left:auto;font-size:19px}.page-heading{padding-block:22px 52px}.breadcrumbs{color:var(--body-text);flex-wrap:wrap;gap:12px;margin-bottom:48px;font-size:12px;display:flex}.breadcrumbs a{align-items:center;min-height:32px;display:flex}.breadcrumbs span{align-self:center}.page-heading h1{font-size:30px}.page-intro{max-width:660px;margin-top:22px;font-size:14px;line-height:2.1}.page-section{padding-bottom:76px}.service-detail{border-top:1px solid var(--line);gap:28px;padding-block:45px;scroll-margin-top:30px;display:grid}.service-detail h2{margin-bottom:18px;font-size:27px}.service-detail .eyebrow{margin-bottom:10px}.service-detail p{font-size:14px}.service-detail ul{color:var(--body-text);margin-block:20px;padding-left:20px;font-size:14px;line-height:2.2}.service-detail .note{border-top:1px solid var(--line);padding-top:18px;font-size:12px}.service-detail .text-link{margin-top:10px}.service-detail .related-works{margin-top:22px}.related-works h3{font-family:var(--sans);font-size:14px}.related-works a{text-underline-offset:4px;padding-block:8px;font-size:13px;text-decoration:underline;display:block}.soft-section{background:var(--ivory);padding-block:64px}.flow-list{gap:0;margin:32px 0 0;padding:0;list-style:none;display:grid}.flow-list li{border-top:1px solid var(--line);align-items:center;gap:24px;padding:20px 0;display:flex}.flow-list span{color:var(--olive-dark);font-family:Georgia,serif;font-size:14px}.flow-list h3{font-family:var(--sans);font-size:15px}.faq{max-width:850px;margin-top:32px}.faq details{border-top:1px solid var(--line);padding-block:4px}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;align-items:center;gap:18px;min-height:68px;font-size:14px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"Q";color:var(--olive-dark);font-family:Georgia,serif}.faq summary:after{content:"+";margin-left:auto;font-size:20px;font-weight:400}.faq details[open] summary:after{content:"−"}.faq details>p{padding:0 20px 25px 32px;font-size:14px}.filter-list{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.filter-list button{cursor:pointer;border:1px solid var(--line);color:var(--charcoal);font:inherit;background:0 0;border-radius:2px;min-height:44px;padding:8px 17px;font-size:13px}.filter-list button[aria-pressed=true]{background:var(--olive-dark);color:var(--paper);border-color:var(--olive-dark)}.filter-list button:hover{border-color:var(--charcoal)}.filter-status{margin-bottom:24px;font-size:13px}.empty-result{background:var(--ivory);margin-top:30px;padding:35px 20px}.about-page-intro{gap:36px;display:grid}.about-page-intro h2{margin-block:15px 24px;font-size:29px}.about-page-intro p{font-size:15px;line-height:2.1}.about-thought{max-width:830px}.about-thought .brand-copy{margin-top:26px;font-size:18px}.about-thought+.about-thought{margin-top:60px}.about-thought h2{font-size:26px}.about-thought .philosophy-body{font-size:15px}.area-layout{gap:26px;display:grid}.area-layout h2{font-size:28px}.area-layout p{font-size:14px;line-height:2.1}.business-info{margin-top:45px}.business-info div{border-bottom:1px solid var(--line);grid-template-columns:95px 1fr;gap:20px;padding:17px 0;font-size:13px;display:grid}.business-info dt{color:var(--body-text)}.business-info dd{margin:0}.contact-layout{gap:35px;display:grid}.contact-options{background:var(--ivory);padding:30px}.contact-options h2{margin-bottom:20px;font-size:23px}.contact-options>p{font-size:14px;line-height:2.1}.contact-options .button{overflow-wrap:anywhere;margin-block:12px;display:flex}.contact-options .contact-value{letter-spacing:.04em;margin-block:12px;font-size:22px;display:block}.contact-guide h2{margin-bottom:24px;font-size:22px}.contact-guide ol{padding-left:24px;font-size:15px;line-height:2.5}.contact-guide p{margin-top:22px;font-size:13px}.privacy-link{text-underline-offset:4px;text-decoration:underline}.prose{max-width:800px;margin-inline:auto;font-size:15px;line-height:2.1}.prose h2{margin:40px 0 18px;font-size:23px}.prose h3{margin:26px 0 12px;font-size:19px}.prose p+p{margin-top:18px}.prose a{text-underline-offset:4px;text-decoration:underline}.prose ul{padding-left:24px}.work-detail-heading{padding-top:35px}.work-detail-heading h1{font-size:30px}.work-detail-heading .work-meta{margin-top:18px;font-size:13px}.work-main-image{aspect-ratio:auto;object-fit:contain;background:var(--ivory);height:auto;max-height:700px;margin-block:35px 45px}.work-data{margin-bottom:45px}.work-data>div{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr;padding:16px 0;font-size:14px;display:grid}.work-data dt{color:var(--charcoal)}.work-data dd{margin:0}.comparison{gap:25px;margin-block:45px;display:grid}.comparison figure{margin:0}.comparison figcaption{letter-spacing:.15em;padding-bottom:12px;font-size:12px}.comparison img{aspect-ratio:3/4;object-fit:contain;background:var(--ivory);width:100%;height:auto}.progress-gallery{gap:24px;margin-block:35px;display:grid}.progress-gallery figure{margin:0}.progress-gallery figcaption{margin-top:10px;font-size:12px}.back-link{margin-top:45px}.error-page{text-align:center;padding-block:100px}.error-page h1{font-size:32px}.error-page p{margin-block:22px 32px;font-size:14px}@media (width>=480px){.brand-name{font-size:18px}.brand-en{font-size:9px}.brand-mark{width:64px;height:46px}.hero-content{padding-inline:32px}.hero h1{font-size:36px}.hero .button{flex:initial;font-size:13px}.hero-art{margin-inline:32px}.hero-art>.photo-placeholder,.hero-art>.site-photo{height:330px}.hero-foot{padding-inline:32px}.service-info h3{font-size:18px}.value h3{font-size:16px}}@media (width>=768px){.container{width:min(var(--max), calc(100% - 88px))}.section{padding-block:105px}h2{font-size:31px}.desktop-only{display:initial}.mobile-only{display:none}.header-inner{min-height:100px;padding:20px 34px}.hero{min-height:670px;padding-bottom:56px;display:block;overflow:hidden}.hero-art{margin:0;position:absolute;inset:0 0 56px 35%}.hero-art>.photo-placeholder,.hero-art>.site-photo{width:100%;height:100%}.hero-art:after{content:"";background:linear-gradient(90deg, var(--ivory), #f7f4ee00);width:24%;position:absolute;inset:0 auto 0 0}.placeholder-hero .tile-composition{gap:8px;width:65%;max-width:410px;top:22%;right:8%}.placeholder-hero .placeholder-label{bottom:25px;left:auto;right:28px}.hero-content{z-index:1;background:linear-gradient(90deg, var(--ivory) 65%, #f7f4ee00);width:66%;padding:68px 0 75px 44px;position:relative}.hero-location{margin-bottom:30px;font-size:12px}.hero h1{letter-spacing:.07em;font-size:39px;line-height:1.85}.hero-break{display:initial}.hero-description{margin-block:26px 34px;font-size:13px;line-height:2.25}.hero .button{gap:12px;padding:13px 19px;font-size:12px}.hero-foot{height:56px;padding:12px 44px;font-size:10px;position:absolute;bottom:0;left:0;right:0}.services-grid{gap:38px 26px}.service-info>p{font-size:14px}.service-info .text-link{font-size:12px}.service-image .placeholder-label,.work-card .placeholder-label{font-size:10px;bottom:12px;left:12px}.thought-section{padding-block:80px}.thought-inner{grid-template-columns:1fr 1.8fr;align-items:center;gap:30px;display:grid}.thought-title h2{font-size:23px}.brand-copy{margin-top:0;font-size:16px;line-height:2.45}.thought-leaf{opacity:.35;width:40px;height:50px;top:-40px;right:0}.philosophy-section h2{letter-spacing:.1em;font-size:35px}.philosophy-body{margin-top:28px;font-size:15px}.values{max-width:750px;margin:48px auto 0}.value{padding-inline:25px}.value h3{font-size:19px}.value>svg{width:33px;height:33px}.value-number{font-size:11px}.works-grid{gap:38px 26px}.work-card h3{font-size:15px}.work-meta{font-size:12px}.about-section{grid-template-columns:1fr 1fr;align-items:center;gap:60px}.about-copy h2{font-size:32px}.about-copy>p:not(.eyebrow):not(.section-kicker){font-size:14px}.about-visual>.photo-placeholder,.about-visual>.site-photo{aspect-ratio:1}.image-caption{padding:20px 10px;font-size:14px;top:30px;right:-14px}.contact-cta{padding-block:76px}.contact-cta h2{font-size:32px}.cta-inner>p:not(.eyebrow){font-size:14px}.contact-cta:before{width:400px;height:400px;bottom:-90px;left:-70px}.contact-cta:after{width:330px;height:330px;top:-50px;right:-70px}.footer-main{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:35px;padding-bottom:45px}.footer-main nav{grid-template-columns:repeat(2,auto);gap:4px 35px}.footer-main nav a{font-size:13px}.footer-bottom{gap:28px;padding-block:18px}.footer-bottom small{font-size:10px}.footer-bottom>a{font-size:11px}.footer-bottom>a:nth-child(2){margin-left:auto}.footer-bottom .back-top{margin-left:15px}.page-heading{padding-block:27px 72px}.page-heading h1{font-size:40px}.page-intro{font-size:15px}.page-section{padding-bottom:105px}.service-detail{grid-template-columns:1fr 1fr;gap:55px;padding-block:60px}.service-detail h2{font-size:30px}.service-detail .site-photo{height:auto}.soft-section{padding-block:80px}.flow-list{grid-template-columns:repeat(5,1fr);gap:25px}.flow-list li{padding:25px 0;display:block}.flow-list h3{margin-top:16px;font-size:14px}.about-page-intro{grid-template-columns:1fr 1fr;align-items:center;gap:60px}.about-page-intro h2{font-size:35px}.area-layout{grid-template-columns:1fr 1.25fr;gap:60px}.business-info{margin-top:55px}.business-info div{grid-template-columns:160px 1fr;font-size:14px}.contact-layout{grid-template-columns:1fr 1fr;gap:65px}.contact-options{padding:40px}.comparison{grid-template-columns:1fr 1fr;gap:30px}.progress-gallery{grid-template-columns:1fr 1fr}.work-detail-heading h1{font-size:39px}}@media (width>=1024px){.desktop-nav{align-items:center;gap:clamp(16px,1.5vw,24px);margin-left:auto;display:flex}.desktop-nav>a{letter-spacing:.02em;white-space:nowrap;align-items:center;min-height:44px;font-size:13px;display:flex;position:relative}.desktop-nav>a:not(.header-contact)[aria-current=page]:after{content:"";background:var(--olive);width:15px;height:1px;position:absolute;bottom:2px;left:calc(50% - 7.5px)}.desktop-nav>a:not(.header-contact):hover{color:var(--olive-dark)}.header-contact{background:var(--olive-dark);color:var(--paper);white-space:nowrap;gap:9px;min-height:44px;padding:9px 15px;font-size:12px;display:flex}.header-contact:hover{background:var(--charcoal)}.header-contact svg{width:17px;height:17px}.mobile-menu{display:none}}@media (width>=1100px){.header-inner{gap:25px;min-height:106px;padding:23px 38px}.brand{gap:12px}.brand-mark{width:72px;height:52px}.brand-name{font-size:19px}.brand-en{letter-spacing:.16em;font-size:9px}.section{padding-block:120px}.hero{min-height:724px}.hero-art{bottom:56px;left:38%}.hero-content{width:65%;padding:83px 0 83px max(64px,50vw - 600px)}.hero h1{letter-spacing:.09em;font-size:46px;line-height:1.8}.hero-description{font-size:14px;line-height:2.2}.hero .button{gap:19px;padding:14px 23px;font-size:13px}.hero-location{margin-bottom:31px}.hero-foot{padding-inline:max(64px,50vw - 600px)}.placeholder-hero .tile-composition{width:55%;max-width:420px;top:18%;right:12%}.hero .hero-art .placeholder-label{bottom:28px;right:35px}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.section-heading{margin-bottom:43px}.service-info{padding-top:25px}.service-info>svg{width:30px;height:30px}.service-info h3{margin-top:12px;font-size:19px}.service-info>p{font-size:13px;line-height:2.1}.service-info .text-link{margin-top:12px;font-size:12px}.thought-section{padding-block:90px}.thought-inner{grid-template-columns:1fr 1.8fr;padding-inline:60px}.brand-copy{font-size:18px}.thought-leaf{width:60px;height:110px;top:0;right:0}.philosophy-section h2{font-size:37px}.works-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.about-section{grid-template-columns:1.04fr 1fr;gap:95px}.about-visual>.photo-placeholder,.about-visual>.site-photo{aspect-ratio:5/4}.about-copy h2{margin-bottom:26px;font-size:36px}.about-copy>p:not(.eyebrow):not(.section-kicker){margin-bottom:34px;font-size:15px;line-height:2.2}.contact-cta{padding-block:85px}.contact-cta h2{font-size:35px}.footer-main{padding-block:16px 55px}.footer-main nav{gap:5px 42px}}@media (width>=1440px){.hero h1{font-size:49px}.hero-content{width:61%}.hero-art{left:39%}.placeholder-hero .tile-composition{right:18%}}@media (width<=767px){.hero-content{padding-block:32px 30px}.hero-location{margin-bottom:22px}.hero h1{font-size:clamp(27px,6.8vw,34px);line-height:1.7}.hero-break{display:initial}.hero-description{margin-block:20px 24px}.hero .button{font-size:13px}.services-grid{grid-template-columns:minmax(0,1fr)}.service-image .photo-placeholder,.service-image .site-photo{aspect-ratio:3/2;height:auto}.service-info h3{font-size:20px}.services-section .section-heading h2,.page-intro{text-wrap:balance}.service-info .text-link,.section-heading .text-link{font-size:13px}.brand-copy{font-size:16px;line-height:1.95}.hero-description,.service-info>p,.philosophy-body,.about-thought .philosophy-body,.about-copy>p:not(.eyebrow):not(.section-kicker),.page-intro,.service-detail p:not(.eyebrow),.service-detail ul,.faq summary,.faq details>p,.about-page-intro p:not(.eyebrow),.area-layout>p,.business-info div,.contact-options>p,.contact-guide p:not(.eyebrow),.contact-guide ol,.prose,.work-data>div,.works-notice,.empty-result,.error-page p,.cta-inner>p:not(.eyebrow),.footer-area{font-size:16px;line-height:1.9}.contact-options{padding:28px 24px}.contact-options h2{letter-spacing:.04em;font-size:22px}.works-section .section-heading{flex-direction:column;align-items:flex-start;gap:12px}.values{grid-template-columns:1fr;gap:18px;max-width:270px;margin-inline:auto}.value{flex-direction:row;justify-content:flex-start;gap:18px;padding:0 10px}.value+.value{border-left:0;border-top:1px solid var(--line);padding-top:18px}.value>svg,.value-number{margin-bottom:0}.value h3{font-size:16px}.work-card h3{text-wrap:balance;min-height:3.6em;font-size:16px;line-height:1.8}.work-card>a{height:100%;display:block;position:relative}.work-image,.work-pending>.photo-placeholder{aspect-ratio:4/3}.work-image>.site-photo,.work-image>.photo-placeholder{aspect-ratio:4/3;height:100%}.work-title{display:block}.work-title>svg{position:absolute;bottom:3px;right:0}.work-meta{font-size:12px}.work-card .work-meta{padding-right:28px}.contact-cta h2 .desktop-only{display:initial}.footer-main nav a{font-size:13px}}.services-flow,.services-faq,.services-faq+.contact-cta{padding-block:45px}@media (width>=768px){.services-flow,.services-faq,.services-faq+.contact-cta{padding-block:60px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
