@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap');

:root{--paper:#f4f5f3;--white:#fff;--ink:#17201d;--muted:#626963;--line:#d8dcd5;--blue:#173fff;--ice:#e7edf6;--lime:#e2eabc;--body:"DM Sans","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--pad:6.2vw;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.9;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}img{display:block;max-width:100%;height:auto}svg{display:block;width:100%;height:auto}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:500}button{border:0;background:none}ul,ol{margin:0;padding:0}li{list-style:none}fieldset{border:0;padding:0;margin:0}strong{font-weight:600}::selection{background:var(--blue);color:white}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--blue);outline-offset:6px}section{scroll-margin-top:0}.skip-link{position:fixed;top:8px;left:8px;z-index:100;transform:translateY(-160%);background:white;padding:12px 20px}.skip-link:focus{transform:none}.section-pad{padding:100px var(--pad)}.eyebrow,.tiny-label{font-size:11px;letter-spacing:.09em;font-weight:500;line-height:1.6}.section-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:66px}.display-heading{font-size:clamp(46px,6.4vw,102px);line-height:1.03;letter-spacing:-.065em;font-weight:400}.serif-word{font-family:Georgia,"Times New Roman",serif;font-style:italic;letter-spacing:-.065em;font-weight:400}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:48px;font-size:13px;font-weight:500}.circle-arrow{border:1px solid currentColor;border-radius:100%;width:47px;height:47px;display:grid;place-items:center;font-size:23px;line-height:1;transition:background .25s,color .25s,transform .25s}.text-link:hover .circle-arrow{background:var(--ink);border-color:var(--ink);color:white;transform:rotate(45deg)}

/* The header stays quiet; the artwork gets the room. */
.site-header{height:92px;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:0 3.3vw;position:sticky;top:0;z-index:30;background:var(--paper)}.wordmark{display:inline-flex;align-items:center;font-size:27px;font-weight:700;letter-spacing:-.055em;line-height:1;gap:7px;white-space:nowrap}.brand-dot{font-size:10px;align-self:flex-start;padding-top:3px;margin-left:1px;letter-spacing:0}.brand-symbol{display:inline-block;width:20px;height:22px;margin-right:1px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%,0 70%,42% 50%,0 30%)}.header-caption{font-size:9px;line-height:1.4;letter-spacing:.08em;margin-left:3vw;margin-right:auto}.header-actions{display:flex;align-items:center;gap:40px}.header-contact{display:flex;align-items:center;gap:33px;min-height:43px;border-bottom:1px solid var(--ink);font-size:11px;letter-spacing:.04em}.header-contact span{font-size:22px;line-height:1}.menu-toggle{padding:8px 0;display:flex;align-items:center;gap:15px;min-width:86px;min-height:44px}.menu-label{font-size:10px;letter-spacing:.06em}.menu-icon{width:28px;height:20px;position:relative;display:block}.menu-icon i{position:absolute;left:0;width:28px;height:1px;background:var(--ink);top:6px;transition:transform .25s,top .25s}.menu-icon i:last-child{top:14px}.menu-toggle[aria-expanded=true] .menu-icon i{top:10px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon i:last-child{transform:rotate(-45deg)}.site-menu{position:fixed;inset:92px 0 0;background:var(--paper);z-index:29;overflow-y:auto;padding:30px var(--pad) 50px;border-top:1px solid var(--line)}.menu-inner{max-width:930px;margin:auto}.menu-inner>.eyebrow{margin-bottom:24px}.menu-inner>a{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:8px 0}.menu-inner>a>span{font-size:clamp(34px,5vw,66px);letter-spacing:-.05em;line-height:1.4}.menu-inner>a:hover{color:var(--blue)}.menu-inner>a>small{font-size:12px}.menu-company{font-size:12px;margin-top:24px}.menu-open .site-header{position:fixed;top:0;left:0;right:0}.menu-open main{padding-top:92px}

/* First view */
.hero{position:relative;min-height:690px;height:calc(100svh - 92px);max-height:1000px;overflow:hidden;padding:85px var(--pad) 110px;isolation:isolate}.hero-copy{position:relative;z-index:2;width:50%;pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy .eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.1em}.status-dot{display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:50%}.hero h1{font-size:clamp(37px,4.7vw,76px);line-height:1.55;letter-spacing:-.075em;font-weight:500;margin:29px 0 21px;white-space:nowrap}.hero .period{color:var(--blue)}.hero-description{font-size:14px;line-height:2.05;letter-spacing:.03em}.hero .text-link{margin-top:30px}.hero-art{position:absolute;width:65%;right:-7%;top:9%;height:81%;z-index:1;display:flex;align-items:center;justify-content:center}.hero-art img{width:100%;position:relative;z-index:1;animation:float-art 7s ease-in-out infinite;transform-origin:center;filter:drop-shadow(0 25px 26px #1f37620d)}.art-orbit{position:absolute;width:76%;aspect-ratio:1/1;border:1px solid #dce0df;border-radius:50%;right:11%;top:0}.art-orbit:after{content:"";position:absolute;inset:15%;border:1px solid #e3e6e1;border-radius:50%}.art-cross{position:absolute;font-size:20px;font-weight:400;line-height:1;color:#8a9698}.cross-one{left:15%;top:2%}.cross-two{right:17%;bottom:12%}.art-caption{position:absolute;right:19%;bottom:4%;font-size:9px;letter-spacing:.11em}.hero-bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:28px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:23px;font-size:9px;letter-spacing:.08em;z-index:3}.hero-bottom a{display:flex;align-items:center;gap:35px;min-height:32px}.hero-bottom a span{font-size:20px}.hero-number{color:var(--muted)}@keyframes float-art{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-16px) rotate(1deg)}}

/* Brand introduction */
.about{background:#fff;padding-bottom:55px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.about-copy{padding-top:8px}.about-copy h3{font-size:clamp(23px,2.4vw,38px);line-height:1.7;letter-spacing:-.025em;margin-bottom:30px}.about-copy p{font-size:14px;line-height:2.2;margin-top:20px}.word-strip{display:flex;gap:3.3vw;align-items:center;justify-content:space-between;font-size:clamp(28px,6.4vw,106px);line-height:1;letter-spacing:-.065em;padding-top:105px;white-space:nowrap}.strip-star{font-size:.75em;font-weight:400;color:var(--blue)}

/* Method: native, keyboard-accessible accordion */
.method{background:var(--ice)}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.method-intro .display-heading{font-size:clamp(42px,4.8vw,76px)}.method-intro h3{font-size:26px;letter-spacing:-.04em;line-height:1.75;margin:36px 0 17px}.method-intro p{font-size:13px;line-height:2.1}.method-intro .text-link{margin-top:27px}.method-steps{border-top:1px solid #bcc8d7}.method-steps details{border-bottom:1px solid #bcc8d7}.method-steps summary{display:flex;align-items:center;gap:25px;cursor:pointer;list-style:none;min-height:102px;padding:23px 0}.method-steps summary::-webkit-details-marker{display:none}.step-no{font-size:14px;font-weight:400;align-self:flex-start;margin-top:3px;color:var(--blue);width:24px;flex-shrink:0}.step-title{font-size:20px;line-height:1.5;letter-spacing:-.025em}.step-title small{display:block;font-size:10px;letter-spacing:.02em;margin-top:5px;font-weight:400;color:#5a6778}.detail-toggle{width:25px;height:25px;position:relative;margin-left:auto;flex-shrink:0}.detail-toggle:before,.detail-toggle:after{content:"";position:absolute;top:12px;left:6px;width:13px;height:1px;background:var(--ink)}.detail-toggle:after{transform:rotate(90deg);transition:transform .2s}details[open] .detail-toggle:after{transform:rotate(0)}.method-steps details[open] .step-title{color:var(--blue)}.step-content{padding:0 36px 28px 49px;font-size:13px;line-height:2}.step-tag{display:block;font-size:9px;letter-spacing:.07em;color:var(--blue);margin-top:17px}

/* Services presented as generous editorial rows. */
.services{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:65px}.section-heading>p{font-size:13px;line-height:2.1;width:29%;padding-bottom:6px}.service-row{display:grid;grid-template-columns:.8fr 1fr 1.35fr;gap:3.5vw;align-items:center;border-top:1px solid var(--line);padding:45px 0}.service-title h3{font-size:clamp(34px,4vw,65px);line-height:1.5;letter-spacing:-.06em;margin:9px 0 4px}.service-english{font-family:Georgia,serif;font-style:italic;font-size:18px;color:var(--muted)}.service-visual{max-width:280px;transition:transform .5s}.service-row:hover .service-visual{transform:translateY(-6px) rotate(-3deg)}.service-description h4{font-size:18px;line-height:1.6;margin-bottom:13px;letter-spacing:-.035em}.service-description p{font-size:12px;line-height:2;color:#525b55;max-width:430px}.service-description ul{display:grid;grid-template-columns:1fr;gap:4px;font-size:11px;margin-top:20px}.service-description li:before{content:"↗";display:inline-block;width:20px;color:var(--blue)}.scope-line{margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:flex;align-items:center;gap:5vw}.scope-line p{font-size:12px;line-height:2}.scope-line p strong{font-size:14px}.scope-arrow{margin-left:auto;font-size:50px;line-height:1;font-weight:400}

/* Work identity is typographic; these are concepts, not invented screenshots. */
.works{background:white}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.work-card{min-width:0}.work-art{position:relative;aspect-ratio:1/1.05;overflow:hidden;padding:22px;color:#1a2b20;background:#e0e8cb;isolation:isolate}.work-business .work-art{background:#eac9b8;color:#5c3427}.work-fx .work-art{background:#c8daea;color:#22476a}.work-topline{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.08em}.work-art-name{position:absolute;left:22px;right:18px;bottom:23px;font-size:clamp(22px,2.7vw,44px);line-height:1.02;letter-spacing:-.055em;font-weight:500}.work-art-name>span{display:block;font-size:8px;letter-spacing:.075em;margin-top:16px;font-weight:400}.case-motif{position:absolute;top:15%;left:50%;transform:translateX(-50%);width:67%;height:49%;transition:transform .6s}.work-card:hover .case-motif{transform:translateX(-50%) rotate(8deg)}.motif-orbit i{position:absolute;border:1px solid #536c44;width:60%;height:96%;border-radius:50%;left:20%;transform:rotate(55deg)}.motif-orbit i:nth-child(2){transform:rotate(-55deg)}.motif-orbit i:nth-child(3){transform:rotate(0)}.motif-stairs{display:flex;align-items:end;justify-content:center;gap:0;top:17%;height:43%;width:64%;transform:translateX(-50%) skewY(-12deg)}.motif-stairs i{border:1px solid #90634c;background:#f0d3c3;width:24%;height:34%;box-shadow:10px 8px 0 #bb8a7040}.motif-stairs i:nth-child(2){height:56%}.motif-stairs i:nth-child(3){height:78%}.motif-stairs i:nth-child(4){height:100%}.motif-arrow{top:5%;font-size:clamp(110px,15vw,250px);line-height:1.15;letter-spacing:-.04em;font-weight:400;text-align:center;color:#40769d;text-shadow:8px 8px 0 #ffffff55}.work-info{padding-top:23px}.work-info>.eyebrow{font-size:9px;color:var(--muted)}.work-info h3{font-size:14px;letter-spacing:-.025em;margin-top:6px;font-weight:500;min-height:27px}.work-revenue{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:22px 0 25px}.work-revenue>span{font-size:clamp(35px,4.5vw,72px);letter-spacing:-.07em;line-height:.95;font-weight:400;white-space:nowrap}.work-revenue>span small{font-size:16px;margin-left:5px;letter-spacing:0}.work-revenue>p{font-size:8px;line-height:1.9;color:var(--muted);text-align:right;white-space:nowrap}.work-revenue b{font-size:9px;font-weight:400;color:var(--ink)}.work-detail{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px}.work-detail summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;min-height:56px;gap:10px}.work-detail summary::-webkit-details-marker{display:none}.work-detail summary>span{font-size:16px;transition:transform .2s}.work-detail[open] summary>span{transform:rotate(45deg)}.work-detail>p{font-size:12px;line-height:2;padding-bottom:20px}.work-detail>p.work-scope{font-size:10px;color:var(--muted);padding-bottom:20px}.works-note{font-size:10px;color:var(--muted);margin-top:27px}

/* Partnership */
.fee{background:var(--lime)}.fee-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.fee-copy h3{font-size:30px;line-height:1.6;letter-spacing:-.035em;margin:32px 0 22px}.fee-copy>p{font-size:13px;line-height:2.1;max-width:415px}.fee-copy>p.fee-note{font-size:10px;margin-top:20px;max-width:380px;color:#59613e}.fee-zero{border-bottom:1px solid #acb485;padding:0 0 30px;display:flex;flex-direction:column}.fee-zero>span:first-child{font-size:15px}.fee-zero strong{display:block;font-size:clamp(130px,18vw,280px);line-height:.95;letter-spacing:-.07em;font-weight:400;margin:16px 0 22px}.fee-zero strong small{font-size:42px;margin-left:18px;letter-spacing:0}.fee-zero .eyebrow{font-size:9px}.fee-terms{margin:0}.fee-terms>div{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #acb485;padding:20px 0;font-size:11px}.fee-terms dt{font-size:10px;color:#4b5633}.fee-terms dd{margin:0;font-weight:500;text-align:right}

/* Contact & footer */
.contact-banner{background:var(--blue);color:white;padding-bottom:65px}.contact-banner .section-top{margin-bottom:48px}.contact-banner-link{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid #ffffff55;padding-bottom:24px}.contact-banner h2{font-size:clamp(58px,10.9vw,174px);line-height:1.05;letter-spacing:-.065em;font-weight:400}.contact-big-arrow{font-size:clamp(55px,11vw,150px);line-height:1;transition:transform .3s}.contact-banner-link:hover .contact-big-arrow{transform:translate(8px,-8px)}.contact-banner-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:35px;gap:25px}.contact-banner-bottom p{font-size:13px;line-height:2}.contact-banner-bottom .text-link{border-bottom:1px solid white;gap:65px;font-size:12px}.contact-banner-bottom .text-link>span{font-size:23px}.site-footer{padding:50px var(--pad) 30px;background:var(--paper)}.footer-main{display:flex;align-items:center;gap:25px}.footer-main .wordmark{font-size:26px}.footer-main>span{font-size:10px;color:var(--muted)}.back-top{margin-left:auto;font-size:9px;letter-spacing:.04em;min-height:44px;display:flex;align-items:center}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);margin-top:32px;padding-top:25px;font-size:8px;letter-spacing:.03em;color:#59625a}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:24px}.footer-bottom nav a{font-size:10px;min-height:26px;display:flex;align-items:center}.footer-bottom nav a:hover{color:var(--blue)}

/* Contact page */
.contact-page{padding:65px var(--pad) 110px}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:10px;color:var(--muted);margin-bottom:65px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.contact-page-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw;align-items:start}.contact-intro .display-heading{font-size:clamp(60px,7vw,110px)}.contact-intro h1{font-size:23px;letter-spacing:-.025em;margin-top:25px}.contact-intro>p{font-size:13px;line-height:2.1;margin-top:24px;max-width:360px}.contact-flow{margin-top:40px;max-width:360px}.contact-flow li{display:flex;gap:16px;border-top:1px solid var(--line);padding:18px 0;font-size:11px;line-height:1.9}.contact-flow li>span{font-size:12px;color:var(--blue);flex-shrink:0}.contact-intro .text-link{margin-top:25px}.form-notice{background:var(--ice);padding:18px 20px;font-size:11px;line-height:1.9;margin-bottom:35px;border-left:2px solid var(--blue)}.form-notice strong{display:block;font-size:12px;margin-bottom:4px}.contact-form{width:100%}.form-row{margin-bottom:28px}.form-row>label,.form-row>legend{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500;margin-bottom:11px}.required-label{font-size:8px;font-weight:400;letter-spacing:.03em;color:var(--blue)}.optional-label{font-size:8px;font-weight:400;color:var(--muted)}input[type=text],input[type=email],input[type=tel],select,textarea{border:1px solid #c9cec6;border-radius:0;background:#fff;width:100%;padding:13px 15px;min-height:50px;font-size:14px;line-height:1.6;transition:border-color .2s;appearance:none}input::placeholder,textarea::placeholder{color:#858b84;font-size:12px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}textarea{min-height:170px;resize:vertical}select{padding-right:35px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%2317201d' fill='none' stroke-width='1.3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.form-split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.checkbox-options{display:flex;flex-wrap:wrap;gap:10px}.checkbox-options label{cursor:pointer;position:relative}.checkbox-options input{position:absolute;opacity:0;width:1px;height:1px}.checkbox-options label span{display:block;border:1px solid #c9cec6;padding:10px 14px;font-size:11px;line-height:1.6;background:white;transition:background .2s,border-color .2s}.checkbox-options input:checked+span{background:var(--blue);border-color:var(--blue);color:white}.checkbox-options input:focus-visible+span{outline:2px solid var(--blue);outline-offset:3px}.form-error{display:block;font-size:11px;color:#b13b27;margin-top:7px}[aria-invalid=true]{border-color:#b13b27!important}.form-agreement{display:flex;gap:12px;align-items:flex-start;font-size:11px;line-height:1.9;margin:0 0 28px}.form-agreement input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--blue);flex-shrink:0}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:60px;padding:18px 24px;background:var(--blue);color:white;font-size:13px;width:100%;transition:background .2s}.primary-button:hover{background:#102cc6}.primary-button>span{font-size:22px;line-height:1}.form-privacy{margin:17px 0;font-size:10px;color:var(--muted);line-height:1.9}.form-review{background:white;padding:32px;border:1px solid var(--line)}.form-review h2{font-size:23px;line-height:1.6;margin:12px 0 20px}.form-review>p{font-size:12px;line-height:1.9}.form-review dl{margin:25px 0}.form-review dl>div{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.form-review dt{font-size:10px;color:var(--muted);margin-bottom:6px}.form-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.form-review .secondary-button{font-size:12px;border-bottom:1px solid var(--ink);margin-top:22px;padding:8px 0}.copy-status{min-height:24px;margin-top:15px;font-size:11px;color:var(--blue)}.copy-fallback{margin-top:15px;font-size:12px}.no-js-note{font-size:13px;background:var(--ice);padding:20px;margin-bottom:20px}.contact-watermark{font-size:clamp(70px,14vw,200px);line-height:1;letter-spacing:-.08em;color:#e7eae4;overflow:hidden;white-space:nowrap;margin-top:110px;text-align:center;user-select:none}

@media(min-width:1600px){:root{--pad:max(6.2vw,calc((100vw - 1500px)/2))}.hero-art{right:-4%;width:62%}.hero-copy{padding-top:3vh}}
@media(max-width:1100px){.hero{min-height:650px;height:auto;padding-top:78px;padding-bottom:140px}.hero h1{font-size:4.6vw}.hero-art{top:14%;height:70%}.section-pad{padding-top:80px;padding-bottom:80px}.about{padding-bottom:45px}.about-grid{gap:5vw}.display-heading{font-size:6.4vw}.service-row{grid-template-columns:.7fr .8fr 1.25fr;gap:3vw}.service-description h4{font-size:16px}.service-description p{font-size:11px}.work-grid{gap:18px}.work-revenue{align-items:start;flex-direction:column;gap:12px}.work-revenue>p{text-align:left}.work-revenue>span{font-size:5vw}.section-top{margin-bottom:50px}.contact-page-grid{gap:6vw}.fee-terms>div{gap:12px;font-size:10px}.fee-terms dt{font-size:9px}.footer-bottom>span{display:none}}
@media(max-width:760px){:root{--pad:6vw}html{scroll-padding-top:20px}body{font-size:14px}.site-header{height:76px;padding:0 var(--pad);gap:15px}.wordmark{font-size:23px;gap:5px}.brand-symbol{width:17px;height:20px}.brand-dot{font-size:8px}.header-caption{display:none}.header-actions{gap:22px}.header-contact{font-size:9px;gap:17px;min-height:36px}.header-contact span{font-size:18px}.menu-toggle{min-width:29px}.menu-label{display:none}.menu-icon{width:27px}.site-menu{inset:76px 0 0;padding-top:25px}.menu-open main{padding-top:76px}.menu-inner>a{padding:10px 0}.menu-inner>a>span{font-size:42px}.menu-inner>a>small{font-size:10px}.section-pad{padding-top:65px;padding-bottom:65px}.section-top{margin-bottom:38px}.eyebrow,.tiny-label{font-size:9px}.tiny-label{letter-spacing:.02em}.display-heading{font-size:clamp(47px,11vw,76px)}.hero{min-height:785px;height:auto;max-height:none;padding:38px var(--pad) 90px;display:flex;flex-direction:column}.hero-copy{width:100%;pointer-events:auto}.hero-copy .eyebrow{font-size:8px;letter-spacing:.07em}.hero h1{font-size:clamp(36px,8.2vw,57px);line-height:1.55;margin:22px 0 15px;letter-spacing:-.07em}.hero-description{font-size:12px;line-height:2}.hero .text-link{font-size:11px;margin-top:19px;gap:25px;min-height:40px}.circle-arrow{width:38px;height:38px;font-size:20px}.hero-art{position:relative;right:auto;top:auto;align-self:center;width:113%;height:auto;min-height:260px;aspect-ratio:1.5/1;margin:-5px -6vw 0;flex-shrink:0}.hero-art img{width:100%;animation-duration:8s}.art-orbit{width:74%;right:13%;top:-2%;bottom:0}.cross-one{left:10%;top:0}.cross-two{right:12%;bottom:6%}.art-caption{bottom:-5px;right:13%;font-size:7px}.hero-bottom{bottom:18px;padding-top:14px;font-size:7px;gap:10px}.hero-bottom a{gap:15px;font-size:7px}.hero-number{display:none}.about-grid{grid-template-columns:1fr;gap:33px}.about-copy{padding:0}.about-copy h3{font-size:24px;line-height:1.7;margin-bottom:23px}.about-copy p{font-size:12px;line-height:2.2;margin-top:17px}.desktop-break{display:none}.word-strip{padding-top:50px;font-size:7.4vw;gap:3vw}.about{padding-bottom:36px}.method-grid{grid-template-columns:1fr;gap:40px}.method-intro .display-heading{font-size:clamp(44px,10.6vw,72px)}.method-intro h3{font-size:23px;margin:26px 0 17px}.method-intro p{font-size:12px}.method-intro .text-link{font-size:11px;margin-top:20px}.method-steps summary{min-height:94px;gap:23px;padding:20px 0}.step-title{font-size:19px}.step-content{font-size:12px;padding-left:47px}.step-no{font-size:12px}.section-heading{display:block;margin-bottom:37px}.section-heading>p{font-size:12px;width:100%;padding:0;margin-top:25px}.section-heading>p br{display:none}.service-row{position:relative;grid-template-columns:1fr 1fr;gap:18px 20px;padding:28px 0 35px}.service-title h3{font-size:42px;margin:5px 0}.service-english{font-size:15px}.service-visual{max-width:175px;justify-self:end;align-self:start}.service-description{grid-column:1/-1}.service-description h4{font-size:18px;margin-bottom:10px}.service-description p{font-size:12px;max-width:none}.service-description ul{font-size:11px;gap:5px;margin-top:15px}.scope-line{display:grid;grid-template-columns:1fr auto;gap:15px;padding:25px 0}.scope-line>.eyebrow{grid-column:1/-1}.scope-line p{font-size:10px;line-height:2}.scope-line p strong{font-size:12px}.scope-arrow{font-size:36px}.work-grid{grid-template-columns:1fr;gap:40px}.work-art{aspect-ratio:1.12/1;padding:21px}.work-art-name{font-size:clamp(36px,9vw,55px);left:21px;bottom:23px}.work-art-name>span{font-size:8px}.work-topline{font-size:9px}.case-motif{height:46%;width:60%;top:14%}.motif-stairs{width:55%;height:42%;top:14%}.motif-arrow{font-size:49vw;top:2%;line-height:1}.work-info{padding-top:20px}.work-info h3{font-size:15px}.work-revenue{flex-direction:row;align-items:end;margin:19px 0 22px;gap:20px}.work-revenue>span{font-size:59px}.work-revenue>span small{font-size:19px;margin-left:8px}.work-revenue>p{text-align:right;font-size:9px}.work-revenue b{font-size:10px}.work-detail summary{min-height:52px;font-size:12px}.works-note{font-size:9px;line-height:1.9;margin-top:28px}.fee-grid{grid-template-columns:1fr;gap:33px}.fee-copy h3{font-size:26px;margin:25px 0 18px}.fee-copy>p{font-size:12px;max-width:none}.fee-copy>p.fee-note{max-width:none;font-size:10px}.fee-zero{position:relative;padding-bottom:20px}.fee-zero>span:first-child{font-size:12px}.fee-zero strong{font-size:170px;margin:12px 0 10px}.fee-zero strong small{font-size:35px;margin-left:14px}.fee-zero .eyebrow{position:absolute;right:0;bottom:27px;font-size:8px}.fee-terms>div{font-size:11px;padding:18px 0}.fee-terms dt{font-size:10px}.contact-banner .section-top{margin-bottom:38px}.contact-banner h2{font-size:12vw}.contact-banner-link{gap:12px;padding-bottom:25px}.contact-big-arrow{font-size:13vw}.contact-banner-bottom{margin-top:24px;align-items:start;gap:18px}.contact-banner-bottom p{font-size:10px;line-height:2}.contact-banner-bottom .text-link{min-height:40px;font-size:10px;gap:15px;white-space:nowrap}.contact-banner-bottom .text-link>span{font-size:19px}.site-footer{padding-top:35px;padding-bottom:25px}.footer-main{gap:15px;flex-wrap:wrap}.footer-main .wordmark{font-size:23px}.footer-main>span{font-size:9px}.back-top{font-size:8px;min-height:25px}.footer-bottom{margin-top:25px;padding-top:20px;display:flex;flex-direction:column-reverse;align-items:start;gap:17px}.footer-bottom nav{gap:20px}.footer-bottom nav a{font-size:10px}.contact-page{padding-top:25px;padding-bottom:50px}.breadcrumb{margin-bottom:35px;font-size:9px}.contact-page-grid{grid-template-columns:1fr;gap:40px}.contact-intro .display-heading{font-size:16vw}.contact-intro h1{font-size:20px;margin-top:20px}.contact-intro>p{font-size:12px;max-width:none;margin-top:20px}.contact-flow{margin-top:26px;max-width:none}.contact-flow li{font-size:11px;padding:13px 0}.contact-intro .text-link{display:none}.form-notice{padding:16px;font-size:10px}.form-notice strong{font-size:11px}.form-split{grid-template-columns:1fr;gap:0}.form-row{margin-bottom:24px}.checkbox-options{gap:8px}.checkbox-options label span{font-size:10px;padding:10px 12px}input[type=text],input[type=email],input[type=tel],select,textarea{font-size:16px}.form-review{padding:24px 20px}.form-review h2{font-size:21px}.contact-watermark{font-size:15vw;margin-top:65px}}
@media(max-width:360px){.header-actions{gap:14px}.header-contact{gap:10px}.hero{min-height:755px}.hero h1{font-size:8.1vw}.hero-art{margin-top:5px}.section-top{gap:10px}.tiny-label{font-size:8px}.footer-main>span{order:3;width:100%}.contact-banner-bottom{flex-direction:column}.work-revenue>span{font-size:52px}}
/* Autoplaying film stays decorative; a separate keyboard-accessible control pauses it. */
.hero-art-video{right:-3%;width:61%;top:1%;height:91%}.hero-motion{display:block;width:100%;height:100%;object-fit:contain;object-position:center;position:relative;z-index:1}.hero-motion img{animation:none}.hero-tools{display:flex;align-items:center;gap:25px}.hero-motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:88px;min-height:36px;padding:7px 12px;border:1px solid #c1c9c2;border-radius:30px;font-size:8px;letter-spacing:.08em;color:var(--ink);background:var(--paper);transition:background .2s,border-color .2s}.hero-motion-toggle:hover{border-color:var(--ink);background:white}.motion-icon{font-size:13px;line-height:1;width:12px;text-align:center}.motion-label{min-width:32px}
.company{background:white}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.company-heading>.display-heading{font-size:clamp(47px,5.8vw,93px)}.company-heading>p{margin-top:33px;font-size:16px;letter-spacing:.03em}.company-heading>.eyebrow{display:block;margin-top:10px;font-size:9px;color:var(--muted)}.company-details{margin:0;border-top:1px solid var(--line)}.company-details>div{display:grid;grid-template-columns:90px 1fr;gap:25px;padding:29px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:2}.company-details dt{color:var(--muted);font-size:12px}.company-details dd{margin:0}.company-details address,.footer-company address{font-style:normal}.footer-company{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-top:25px;font-size:10px;color:var(--muted);line-height:1.9}.footer-company p{font-size:9px}
@media(min-width:1600px){.hero-art-video{right:-1%;width:60%}}
@media(max-width:1100px){.hero-art-video{top:8%;height:80%;right:-5%;width:63%}}
@media(max-width:760px){.hero-art-video{position:relative;width:113%;height:auto;min-height:280px;aspect-ratio:4/3;right:auto;top:auto;margin:-13px -6vw -12px}.hero-tools{gap:0}.hero-motion-toggle{min-width:74px;min-height:34px;padding:5px 9px;font-size:7px;gap:6px}.hero-bottom{gap:8px}.hero-bottom>span{max-width:105px;line-height:1.5}.hero-bottom>a{gap:9px;font-size:6px}.hero-bottom>a>span{font-size:17px}.company-grid{grid-template-columns:1fr;gap:35px}.company-heading>.display-heading{font-size:clamp(47px,11vw,76px)}.company-heading>p{font-size:14px;margin-top:25px}.company-heading>.eyebrow{font-size:8px;margin-top:7px}.company-details>div{grid-template-columns:65px 1fr;gap:20px;padding:22px 0;font-size:12px}.company-details dt{font-size:10px}.footer-company{padding-top:21px;gap:15px;font-size:9px;align-items:start}.footer-company p{font-size:8px;white-space:nowrap}}
.form-honeypot{display:none!important}.form-notice a,.form-privacy a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.form-submit-status{font-size:12px;line-height:1.8;margin-top:14px}.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:wait}.contact-thanks{max-width:760px;margin:0 auto;padding:45px 0 90px}.contact-thanks h1{font-size:clamp(27px,4vw,48px);line-height:1.55;margin:24px 0}.contact-thanks>p{font-size:14px;line-height:2;margin:18px 0}.contact-thanks>.form-notice{margin:32px 0}.contact-thanks>.text-link{margin-top:24px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.service-row:hover .service-visual,.work-card:hover .case-motif{transform:none}}
