:root{--paper:#f6f5ef;--ink:#183c37;--body:#52625c;--line:#d9dfd5;--sage:#e6ece2;--accent:#b56845;--white:#fffef9;--serif:Georgia,"Yu Mincho","Hiragino Mincho ProN",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}::selection{background:#d7e4cc}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;z-index:10;top:8px;left:8px;transform:translateY(-160%);padding:10px 20px;background:var(--ink);color:white}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:5;background:rgba(246,245,239,.97);border-bottom:1px solid var(--line)}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.15;letter-spacing:-.7px}.brand em{font-weight:400}.brand small{display:block;margin-top:7px;font-family:Arial,sans-serif;font-size:8px;font-weight:500;letter-spacing:2.3px}.brand-mark{display:grid;grid-template-columns:repeat(3,5px);gap:3px;align-items:end;height:30px;transform:skewY(-18deg)}.brand-mark span{display:block;background:var(--ink);height:23px}.brand-mark span:nth-child(2){height:30px}.brand-mark span:nth-child(3){height:18px;background:var(--accent)}.desktop-nav{display:flex;align-items:center;gap:27px;font-size:13px;white-space:nowrap}.desktop-nav a{padding:10px 0}.desktop-nav a:hover,.text-link:hover{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:23px}.language-switch{display:flex;gap:2px}.language-switch button{background:none;border:0;color:#68776e;cursor:pointer;padding:7px 6px;font-size:11px;min-width:30px;min-height:36px}.language-switch button[aria-pressed=true]{color:var(--ink);box-shadow:inset 0 -1px var(--ink);font-weight:700}.header-contact{display:flex;justify-content:space-between;gap:20px;padding:9px 15px;background:var(--ink);color:white;font-size:12px;white-space:nowrap}
.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:62px;align-items:center;min-height:690px;padding-block:70px 80px}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 23px;font-size:11px;line-height:1.5;font-weight:600;letter-spacing:1.9px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}h1,h2,h3,p,figure{margin-top:0}h1{font-size:clamp(35px,4.2vw,53px);line-height:1.55;letter-spacing:-2px;font-weight:500;margin-bottom:23px}h1>span{display:block}.hero-title-accent{color:var(--accent)}.hero-description{max-width:435px;font-size:15px;line-height:2.1;color:var(--body);margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:53px;padding:13px 24px;font-size:13px;font-weight:600;line-height:1.6;transition:background .18s,color .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#2a5149}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:12px;border-bottom:1px solid #b9c4b9;padding-block:7px}.hero-language-note{display:flex;gap:13px;align-items:center;font-size:10px;letter-spacing:1.1px;color:#6b786d;margin-top:38px}.short-line{width:27px;height:1px;background:#9cae9b}.hero-visual{position:relative;margin:0;isolation:isolate;padding:31px 17px 20px}.visual-grid{position:absolute;inset:0 -30px 0 0;z-index:-1;background-color:#e6ebe1;background-image:linear-gradient(#cdd7c750 1px,transparent 1px),linear-gradient(90deg,#cdd7c750 1px,transparent 1px);background-size:38px 38px;border-radius:120px 0 120px 0}.visual-note{display:flex;flex-direction:column;gap:6px;margin-bottom:22px;font-size:11px;color:#657562}.note-number{font-size:8px;letter-spacing:1.5px}.browser-mock{width:100%;max-width:395px;margin-left:21px;background:#fcfbf6;border:1px solid #b7c6b2;border-radius:6px;overflow:hidden;box-shadow:9px 18px 0 #c5d2bd55,0 12px 34px #183c3712;transform:rotate(-2deg)}.browser-chrome{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:11px 12px;background:#eef1e8;border-bottom:1px solid #d8dece;font-size:7px;letter-spacing:1.1px}.window-dots{display:flex;gap:4px}.window-dots i{width:4px;height:4px;border-radius:50%;background:#abbba3}.mock-content{padding:19px 22px 22px}.mock-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.mock-shop-name{font-family:var(--serif);font-size:27px;line-height:1.1;letter-spacing:5px}.mock-shop-name small{display:block;margin-top:5px;letter-spacing:2px;font-size:7px;font-family:Arial,sans-serif}.mock-location{font-size:7px;line-height:1.8;letter-spacing:1px;color:#7f8979}.mock-photo{width:100%;aspect-ratio:1.95;object-fit:cover;object-position:50% 50%}.mock-caption{display:flex;justify-content:space-between;gap:10px;font-size:6px;color:#828d7a;margin-top:6px}.mock-menu{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin:17px 0 15px;border-top:1px solid var(--line);padding-top:12px}.mock-menu small{display:block;color:#7f8979;font-size:8px}.mock-menu strong{font-size:13px}.mock-channels{display:flex;gap:8px}.mock-channels>span{flex:1;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white;font-size:8px;padding:8px 11px}.mock-channels>span+span{background:#6e8b5b}.mock-channels i{font-style:normal}.language-float{position:absolute;right:-23px;bottom:55px;display:flex;align-items:center;gap:12px;background:var(--white);box-shadow:0 8px 26px #183c3712;border:1px solid #dce2d6;padding:15px 19px;transform:rotate(3deg)}.float-icon{display:grid;place-items:center;width:34px;height:34px;background:#ecefe3;font-family:var(--serif);font-size:20px}.language-float small{display:block;font-size:7px;letter-spacing:1px;color:#748370;margin-bottom:3px}.language-float div>span{font-size:11px}.language-float i{color:#a6b09f;font-style:normal;padding-inline:5px}.hero-visual figcaption{text-align:right;padding-right:8px;margin-top:25px;font-size:9px;letter-spacing:.8px;color:#7b8874}
.scope-strip{border-block:1px solid var(--line)}.scope-inner{min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:30px}.scope-inner p{font-family:var(--serif);font-size:15px;margin:0}.scope-inner>div{display:flex;gap:28px;font-size:11px;color:#6e7c71}.scope-inner>div span{display:inline-flex;align-items:center;gap:8px}.scope-inner>div span:before{content:"";width:4px;height:4px;border:1px solid #8b9c84;border-radius:50%}.section{padding-block:105px}.section-intro{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:45px}.section-intro .eyebrow,.faq-section .eyebrow{font-size:9px;color:#7a8874;letter-spacing:2.5px;margin-bottom:19px}h2{font-weight:500;font-size:32px;line-height:1.65;letter-spacing:-.8px;margin:0;white-space:pre-line}.section-description{max-width:375px;color:var(--body);font-size:13px;line-height:2.1;margin:0 0 5px}.service-list{border-top:1px solid #bbc7b7}.service-item{display:grid;grid-template-columns:70px 1fr;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:26px 0}.service-number{font-family:var(--serif);font-size:18px;color:#8c9c82;align-self:start;padding-top:4px}.service-item h3{font-size:19px;font-weight:500;margin-bottom:0;letter-spacing:.1px}.service-item p{margin:0;color:var(--body);font-size:13px;line-height:1.9}.service-tag{justify-self:end;font-size:9px;color:#7b8d70;background:#e9ede3;border:1px solid #dde4d6;padding:5px 10px;letter-spacing:.5px}.service-aside{display:flex;gap:13px;margin:23px 0 0;font-size:11px;line-height:1.9;color:#7b8875}.service-aside>span:first-child{font-size:19px;line-height:1.3;color:var(--accent)}
.work-section{padding-block:90px;background:#e9ede4}.work-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:90px;align-items:center}.work-image{position:relative;padding:15px 15px 40px;background:#f6f5ee;transform:rotate(-1deg);box-shadow:0 10px 25px #263e2610}.work-image img{width:100%;aspect-ratio:1.3;object-fit:cover}.image-label{position:absolute;left:20px;bottom:14px;font-size:8px;color:#7d8b74;letter-spacing:2px}.work-copy .eyebrow{font-size:9px;color:#718469;letter-spacing:2px;margin-bottom:18px}.preview-label{display:inline-block;color:#986547;border:1px solid #c8bda7;font-size:9px;line-height:1.4;padding:4px 8px;margin-bottom:17px}.work-copy h2{font-family:var(--serif);font-size:33px;letter-spacing:2px;white-space:normal}.work-copy h2>span{font-family:Arial,sans-serif;font-weight:400;font-size:11px;letter-spacing:2px;margin-left:12px}.case-location{font-size:10px;letter-spacing:.8px;color:#7b8875;margin:6px 0 21px}.case-body{font-size:14px;line-height:2;color:var(--body);max-width:390px}.case-features{list-style:none;padding:0;margin:24px 0 29px;font-size:12px}.case-features li{display:flex;align-items:baseline;gap:10px;margin-top:8px}.case-features li:before{content:"✓";font-size:10px;color:#658455}.button-outline{border:1px solid #879a7b;background:transparent;min-width:228px}.button-outline:hover{background:#dbe4d1}.case-note{font-size:10px;color:#7e8b77;margin:11px 0 0}.process .section-intro{margin-bottom:40px}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;list-style:none;margin:0;padding:0}.process-list li{border-top:1px solid #aebeaa;padding-top:17px}.step-number{display:flex;align-items:center;justify-content:space-between;font-family:var(--serif);font-size:28px;color:#809472;margin-bottom:20px}.step-number>span{font-family:Arial,sans-serif;font-size:17px;color:#a8b79f}.process-list h3{font-size:16px;font-weight:500;margin-bottom:10px}.process-list p{font-size:12px;color:var(--body);line-height:1.95;margin:0}.faq-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;padding-bottom:100px}.faq-section h2{font-size:27px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;cursor:pointer;font-size:13px}.faq-list summary::-webkit-details-marker{display:none}.faq-plus{font-size:22px;font-weight:300;color:#8c9b83;line-height:1}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-list details p{color:var(--body);font-size:12px;line-height:2;margin:0;padding:0 35px 22px 0}.contact-section{padding-bottom:80px}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:60px;background:var(--ink);color:var(--paper);padding:50px 60px;position:relative;overflow:hidden}.contact-inner:after{content:"";position:absolute;width:320px;height:320px;right:215px;top:-100px;border:1px solid #a7bb9d25;border-radius:50%;pointer-events:none}.contact-inner .eyebrow{font-size:8px;letter-spacing:2px;color:#bac9ad;margin-bottom:19px}.contact-inner h2{font-size:28px;margin-bottom:12px}.contact-inner p:not(.eyebrow){font-size:12px;color:#c1cdb7;margin:0;max-width:440px}.contact-actions{display:flex;flex-direction:column;align-items:center;gap:9px;flex-shrink:0;position:relative;z-index:1}.button-cream{background:#ececde;color:var(--ink);min-width:242px}.button-cream:hover{background:#fffdf3}.contact-number{font-size:11px;letter-spacing:1px;color:#d3dcca}.contact-text-only{font-size:9px;color:#aebe9f}.site-footer{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding-block:0 28px}.footer-brand{font-family:var(--serif);font-size:21px;font-weight:500;letter-spacing:-.5px}.site-footer nav{display:flex;gap:25px;font-size:11px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:19px;font-size:9px;color:#7e8c76;letter-spacing:.3px}.mobile-contact{display:none}
html:is([lang=en],[lang=es]) h1{font-family:var(--serif);font-size:clamp(38px,4.4vw,57px);letter-spacing:-1.8px;line-height:1.24}html:is([lang=en],[lang=es]) h1>span:last-child{margin-top:10px}html:is([lang=en],[lang=es]) .hero .eyebrow{font-size:8px;letter-spacing:1.6px}html:is([lang=en],[lang=es]) h2{font-family:var(--serif);line-height:1.35}html:is([lang=zh-CN],[lang=zh-Hant]) h1{font-size:clamp(36px,4.2vw,52px)}
@media(min-width:1500px){.hero{min-height:760px;padding-block:95px}.hero-visual{max-width:530px}.browser-mock{max-width:420px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.brand{font-size:21px}.desktop-nav{gap:18px;font-size:12px}.header-actions{gap:12px}.hero{gap:35px;padding-block:55px 65px;min-height:650px}h1{font-size:42px}.hero-visual{padding:28px 5px 15px}.browser-mock{margin-left:5px}.visual-grid{right:-12px}.language-float{right:-8px;padding:12px;bottom:50px}.hero-actions{gap:20px}.button{gap:25px;padding-inline:20px}.scope-inner>div{gap:17px}.scope-inner p{font-size:13px}.scope-inner>div{font-size:10px}.work-layout{gap:55px}.contact-inner{padding:40px}.contact-inner h2{font-size:25px}.contact-inner:after{right:180px}.service-item{grid-template-columns:55px 1fr}.faq-section{gap:50px}}
@media(max-width:850px){.desktop-nav{display:none}.header-inner{height:78px}.hero{grid-template-columns:1fr 1fr;gap:25px;min-height:580px}h1{font-size:34px;letter-spacing:-1px}.hero-description{font-size:13px}.hero .eyebrow{font-size:9px;letter-spacing:.5px}.hero-actions{align-items:flex-start;gap:15px;flex-direction:column}.hero-actions .button{min-height:48px;font-size:12px}.hero-language-note{margin-top:25px}.hero-visual{padding-bottom:17px}.browser-mock{margin-left:0}.mock-content{padding:16px}.mock-shop-name{font-size:23px}.language-float{right:-10px;bottom:38px;gap:8px;padding:10px}.language-float small{font-size:5px}.language-float div>span{font-size:8px}.float-icon{width:28px;height:28px;font-size:16px}.scope-inner{flex-direction:column;align-items:flex-start;gap:8px;padding-block:20px}.scope-inner>div{gap:22px}.section{padding-block:75px}.section-intro{gap:30px}.section-description{max-width:310px;font-size:12px}h2{font-size:28px}.service-item{grid-template-columns:45px 1fr}.service-tag{display:none}.work-section{padding-block:65px}.work-layout{gap:35px}.work-copy h2{font-size:28px}.work-copy h2>span{display:block;margin:0 0 5px}.case-body{font-size:12px}.case-features{font-size:11px;margin-block:18px 22px}.process-list{gap:18px}.process-list h3{font-size:14px}.process-list p{font-size:11px}.faq-section{gap:25px;padding-bottom:75px;grid-template-columns:.65fr 1.35fr}.faq-section h2{font-size:23px}.contact-inner{gap:24px;padding:35px 30px}.contact-inner h2{font-size:24px}.button-cream{min-width:215px;font-size:12px}.contact-inner p:not(.eyebrow){font-size:11px}.contact-section{padding-bottom:60px}html:is([lang=en],[lang=es]) h1{font-size:36px}html:is([lang=en],[lang=es]) .hero .eyebrow{font-size:7px}html:is([lang=zh-CN],[lang=zh-Hant]) h1{font-size:35px}}
@media(max-width:600px){html{scroll-padding-top:86px}.wrap{width:calc(100% - 40px)}body{padding-bottom:72px}.header-inner{height:72px;gap:12px}.brand{font-size:19px;gap:9px;letter-spacing:-.6px}.brand small{font-size:6px;letter-spacing:1.8px;margin-top:6px}.brand-mark{grid-template-columns:repeat(3,4px);gap:2px;height:25px}.brand-mark span{height:20px}.brand-mark span:nth-child(2){height:25px}.brand-mark span:nth-child(3){height:15px}.header-actions{gap:7px}.language-switch button{font-size:10px;min-width:28px;padding:6px 5px;min-height:36px}.header-contact{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;gap:45px;padding-block:43px 36px;min-height:0}.hero .eyebrow{font-size:10px;letter-spacing:.5px;margin-bottom:20px}h1{font-size:39px;letter-spacing:-1.2px;line-height:1.52;margin-bottom:21px}.hero-description{font-size:14px;max-width:350px;line-height:1.95;margin-bottom:25px}.hero-actions{flex-direction:row;align-items:center;gap:22px}.hero-actions .button{padding:13px 19px;font-size:12px;gap:22px}.hero-actions .text-link{font-size:11px;gap:10px}.hero-language-note{margin-top:24px;font-size:9px}.hero-visual{margin-inline:11px 8px;padding:22px 14px 15px}.visual-grid{inset:0 -8px 0 -11px;border-radius:85px 0 85px 0;background-size:30px 30px}.visual-note{font-size:10px;margin-bottom:17px}.note-number{font-size:6px}.browser-mock{max-width:none;width:calc(100% - 15px);margin:0 0 0 3px}.browser-chrome{font-size:6px;padding:9px 10px}.mock-content{padding:16px 19px 18px}.mock-photo{aspect-ratio:2.1}.mock-head{margin-bottom:13px}.mock-shop-name{font-size:25px}.mock-menu{margin:13px 0;font-size:9px;padding-top:10px}.mock-channels>span{font-size:8px;padding:8px 10px}.language-float{right:-7px;bottom:44px;padding:12px 13px;gap:10px}.language-float small{font-size:6px}.language-float div>span{font-size:9px}.float-icon{width:30px;height:30px}.hero-visual figcaption{font-size:8px;margin-top:23px;padding-right:12px}.scope-inner{padding-block:19px;gap:9px}.scope-inner p{font-size:14px}.scope-inner>div{flex-wrap:wrap;column-gap:14px;row-gap:5px;font-size:9px}.scope-inner>div span{gap:5px}.scope-inner>div span:before{width:3px;height:3px}.section{padding-block:58px}.section-intro{display:block;margin-bottom:30px}.section-intro .eyebrow{margin-bottom:14px;font-size:8px}h2{font-size:28px;line-height:1.6}.section-description{margin-top:19px;max-width:370px;font-size:13px;line-height:1.9}.service-item{grid-template-columns:32px 1fr;gap:8px;padding-block:23px}.service-number{font-size:15px;padding-top:3px}.service-item h3{font-size:17px;margin-bottom:6px;letter-spacing:0}.service-item p{font-size:12px;line-height:1.9}.service-aside{font-size:10px;gap:10px;margin-top:20px}.work-section{padding-block:47px 49px}.work-layout{grid-template-columns:1fr;gap:33px}.work-image{padding:11px 11px 34px;margin-inline:4px}.work-image img{aspect-ratio:1.5}.image-label{font-size:7px;bottom:11px;left:15px}.work-copy .eyebrow{font-size:8px;margin-bottom:14px}.preview-label{margin-bottom:14px}.work-copy h2{font-size:31px}.work-copy h2>span{display:inline-block;font-size:10px;margin-left:12px}.case-location{font-size:9px;margin-bottom:18px}.case-body{font-size:13px;max-width:100%;margin-bottom:0}.case-features{font-size:11px;margin-block:19px 25px}.button-outline{font-size:12px;min-width:230px}.case-note{font-size:9px}.process .section-intro{margin-bottom:30px}.process-list{grid-template-columns:1fr 1fr;column-gap:22px;row-gap:28px}.step-number{font-size:24px;margin-bottom:13px}.step-number>span{font-size:14px}.process-list h3{font-size:15px;margin-bottom:8px}.process-list p{font-size:12px;line-height:1.85}.faq-section{grid-template-columns:1fr;gap:27px;padding-bottom:55px}.faq-section .eyebrow{font-size:8px;margin-bottom:12px}.faq-section h2{font-size:25px}.faq-list summary{font-size:12px;padding-block:18px;gap:15px}.faq-list details p{font-size:12px;padding-right:20px}.contact-section{padding-bottom:45px}.contact-inner{flex-direction:column;align-items:flex-start;padding:33px 25px;gap:27px}.contact-inner:after{right:-170px;top:-130px}.contact-inner .eyebrow{font-size:7px;margin-bottom:15px}.contact-inner h2{font-size:24px;line-height:1.6;margin-bottom:12px}.contact-inner p:not(.eyebrow){font-size:12px;line-height:1.9}.contact-actions{align-items:flex-start;gap:8px;width:100%}.button-cream{width:100%;min-width:0;font-size:13px}.contact-number{font-size:11px}.contact-text-only{font-size:9px}.site-footer{grid-template-columns:1fr;gap:20px;padding-bottom:22px}.footer-brand{font-size:23px}.site-footer nav{font-size:11px;gap:25px}.footer-bottom{font-size:8px;padding-top:17px}.mobile-contact{position:fixed;z-index:8;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;min-height:62px;padding:16px 23px calc(16px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--paper);border-top:1px solid #426257;font-size:13px;font-weight:500}.mobile-contact>span:last-child{font-size:20px;line-height:1}html:is([lang=en],[lang=es]) h1{font-size:40px;line-height:1.2;letter-spacing:-1.2px;max-width:370px}html:is([lang=en],[lang=es]) .hero .eyebrow{font-size:7px;letter-spacing:1px}html:is([lang=en],[lang=es]) .hero-actions{gap:17px}html:is([lang=en],[lang=es]) .hero-actions .button{font-size:11px;gap:20px}html:is([lang=en],[lang=es]) .hero-actions .text-link{font-size:10px}html:is([lang=en],[lang=es]) h2{font-size:30px}html:is([lang=en],[lang=es]) .service-item h3{font-size:18px}html:is([lang=en],[lang=es]) .process-list h3{font-size:15px}html:is([lang=en],[lang=es]) .faq-section h2{font-size:27px}html:is([lang=en],[lang=es]) .contact-inner h2{font-size:29px}html:is([lang=zh-CN],[lang=zh-Hant]) h1{font-size:38px}}
@media(max-width:360px){.wrap{width:calc(100% - 30px)}.brand{font-size:17px;gap:7px}.brand small{letter-spacing:1.2px}.language-switch button{min-width:25px;font-size:9px;padding-inline:4px}.hero{padding-top:33px}h1{font-size:34px}.hero-actions{gap:14px}.hero-actions .button{padding-inline:15px;font-size:11px;gap:15px}.hero-actions .text-link{font-size:10px}.hero-visual{margin-inline:8px 4px}.language-float{padding:10px;font-size:8px}.language-float div>span{font-size:8px}.language-float small{font-size:5px}html:is([lang=en],[lang=es]) h1{font-size:35px}html:is([lang=zh-CN],[lang=zh-Hant]) h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Japanese streetscape and a quieter editorial layout. */
.hero{display:block;position:relative;isolation:isolate;min-height:690px;padding:0;overflow:hidden;background:#e9e5dc}
.hero-photo{position:absolute;inset:0;z-index:-2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:64% 45%}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(246,245,239,.98) 0%,rgba(246,245,239,.95) 28%,rgba(246,245,239,.72) 45%,rgba(246,245,239,.16) 68%,rgba(246,245,239,.03) 100%)}
.hero-inner{min-height:690px;display:flex;align-items:center;justify-content:space-between;gap:50px;padding-block:65px 70px}.hero-copy{max-width:550px}.hero h1{font-family:var(--serif);line-height:1.65}.hero-description{color:#394e44}.hero-side-note{align-self:flex-end;writing-mode:vertical-rl;background:rgba(255,254,249,.87);padding:27px 16px;border-top:2px solid var(--accent);font-family:var(--serif);font-size:14px;letter-spacing:.3em;line-height:1.9;margin-bottom:5px}
.services .service-list{background:rgba(255,254,249,.4)}.service-item{padding-inline:17px}.process{border-top:1px solid var(--line)}
.contact-inner{background:linear-gradient(90deg,rgba(24,60,55,.98),rgba(24,60,55,.9)),url("assets/japan-shop-street.png") center 62%/cover}.contact-inner h2{font-family:var(--serif)}
@media(min-width:1500px){.hero,.hero-inner{min-height:750px}.hero-inner{padding-block:85px}}
@media(max-width:850px){.hero,.hero-inner{min-height:590px}.hero-inner{gap:25px;padding-block:55px}.hero-copy{max-width:440px}.hero-side-note{font-size:12px;padding:22px 12px}.hero:before{background:linear-gradient(90deg,rgba(246,245,239,.98),rgba(246,245,239,.94) 39%,rgba(246,245,239,.4) 75%,rgba(246,245,239,.1))}}
@media(max-width:600px){.hero{min-height:0;padding:0}.hero-inner{min-height:740px;display:block;padding-block:42px 245px}.hero-copy{max-width:100%}.hero-photo img{object-position:65% 100%}.hero:before{background:linear-gradient(180deg,rgba(246,245,239,.98) 0%,rgba(246,245,239,.96) 34%,rgba(246,245,239,.86) 56%,rgba(246,245,239,.17) 82%,rgba(246,245,239,.02) 100%)}.hero-side-note{position:absolute;right:20px;bottom:24px;font-size:12px;padding:19px 10px;margin:0}.hero-actions{gap:23px;flex-direction:row;align-items:center}.hero h1{line-height:1.6}.hero-language-note{margin-top:23px}.service-item{padding-inline:0}.hero .hero-description{font-size:14px;max-width:350px}html:is([lang=en],[lang=es]) .hero-inner{padding-bottom:230px}.hero .eyebrow{letter-spacing:.3px}}
@media(max-width:360px){.hero-inner{padding-top:33px;padding-bottom:220px}.hero-actions{gap:16px}.hero-side-note{right:15px}.hero .hero-description{font-size:13px}}

/* Distinctive indigo identity, framed photography and an editorial process list. */
:root{--ink:#26374b;--body:#56616c;--line:#dcddd6;--sage:#ebe9e0;--accent:#ac5d40}
.hero{background:var(--paper)}.hero-photo{inset:38px 4% 38px 51%;overflow:hidden;z-index:-2}.hero-photo img{object-position:40% 50%}.hero:before{background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 46%,rgba(246,245,239,.6) 52%,rgba(246,245,239,0) 61%)}.hero-copy{max-width:530px}.hero-description{max-width:425px;color:var(--body)}.hero-side-note{font-size:13px;letter-spacing:.25em;margin-right:11px;margin-bottom:28px}
.button-dark:hover{background:#3d5064}.contact-inner{background:linear-gradient(90deg,rgba(38,55,75,.98),rgba(38,55,75,.92)),url("assets/japan-shop-street.png") center 62%/cover}.contact-inner:after{border-color:#d4d5c82b}.mobile-contact{border-top-color:#536274}
.process-list{grid-template-columns:1fr;gap:0}.process-list li{display:grid;grid-template-columns:75px 245px 1fr;align-items:center;gap:25px;padding:24px 0}.step-number{margin:0;font-size:29px;color:#8a7967}.step-number>span{display:none}.process-list h3,.process-list p{margin:0}.process-list h3{font-size:17px}.process-list p{font-size:13px;max-width:560px}.process-list li:last-child{border-bottom:1px solid var(--line)}
@media(max-width:1100px){.hero-copy{max-width:490px}.process-list li{grid-template-columns:60px 210px 1fr;gap:22px}}
@media(max-width:850px){.hero,.hero-inner{min-height:0}.hero-inner{display:block;padding-block:48px 350px}.hero-copy{max-width:600px}.hero-photo{left:32px;right:32px;top:auto;bottom:30px;height:280px}.hero:before{display:none}.hero-photo img{object-position:65% 60%}.hero-side-note{position:absolute;right:42px;bottom:42px;margin:0;font-size:12px;padding:18px 10px}.hero-actions{flex-direction:row;align-items:center;gap:24px}.hero-description{max-width:480px}.process-list li{grid-template-columns:45px 175px 1fr;gap:18px}.process-list h3{font-size:15px}.process-list p{font-size:12px}}
@media(max-width:600px){.hero-inner,html:is([lang=en],[lang=es]) .hero-inner{padding-block:38px 270px}.hero-photo{left:20px;right:20px;bottom:24px;height:220px}.hero-side-note{right:30px;bottom:35px;padding:14px 8px;font-size:10px}.hero .hero-description{max-width:100%;font-size:14px}.hero .hero-actions{gap:23px}.process-list li{grid-template-columns:32px 1fr;column-gap:17px;row-gap:8px;padding-block:22px}.step-number{grid-row:1/3;align-self:start;font-size:24px;line-height:1.3}.process-list h3,.process-list p{grid-column:2}.process-list h3{font-size:16px}.process-list p{font-size:12px}.process .section-intro{margin-bottom:27px}}
@media(max-width:360px){.hero-inner,html:is([lang=en],[lang=es]) .hero-inner{padding-top:32px}.hero-photo{left:15px;right:15px}.hero-side-note{right:24px}.hero .hero-actions{gap:16px}.hero .hero-description{font-size:13px}}

/* Footer policy entry points and same-page information panels. */
.site-footer-extended{display:block;width:100%;background:var(--ink);color:var(--paper);padding:45px 0 26px}.footer-inner{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:35px 60px;align-items:start}.footer-identity p{font-size:11px;color:#c0c8ce;max-width:275px;margin:13px 0 0;line-height:1.9}.site-footer-extended nav{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-size:12px}.footer-column-title{margin:0 0 9px;font-size:10px;letter-spacing:.08em;color:#b6bec7}.footer-policy-nav button{display:block;border:0;background:none;padding:4px 0;text-align:left;color:inherit;font-size:12px;line-height:1.6;cursor:pointer}.site-footer-extended nav a{padding-block:4px}.site-footer-extended nav a:hover,.footer-policy-nav button:hover{color:#e1b497}.site-footer-extended .footer-bottom{grid-column:1/-1;color:#aeb8c1;border-top-color:#536171;margin-top:5px;padding-top:20px}.legal-open{overflow:hidden}
.legal-dialog{width:min(820px,calc(100vw - 40px));max-height:84vh;max-height:84dvh;margin:auto;border:1px solid #bdc3c7;border-radius:4px;padding:0;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 24px 90px #10202d40}.legal-dialog::backdrop{background:#111d2bb5}.legal-dialog-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 26px;background:var(--paper);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:17px}.legal-close{display:inline-flex;align-items:center;gap:13px;border:0;padding:7px 0 7px 15px;background:transparent;color:var(--ink);font-family:inherit;font-size:12px;cursor:pointer}.legal-close>span:last-child{font-family:Arial,sans-serif;font-size:23px;line-height:1}.legal-content{padding:25px 38px 36px}.legal-draft{padding:13px 16px;background:#f1e7dc;border-left:2px solid var(--accent);font-size:11px;line-height:1.9;color:#72563f;margin:0 0 12px}.legal-updated{font-size:10px;color:#75808b;margin:0 0 24px}.legal-content article h2{font-size:27px;line-height:1.6;margin:0 0 25px}.legal-content h3{font-size:15px;font-weight:600;line-height:1.8;margin:23px 0 7px}.legal-content article p{font-size:13px;line-height:2;margin:0;color:var(--body)}.legal-contact-note{font-size:11px;line-height:1.9;color:#6d7985;margin:27px 0 0;border-top:1px solid var(--line);padding-top:17px}.legal-details{margin:15px 0 0;border-top:1px solid var(--line);font-size:12px;line-height:1.9}.legal-details>div{display:grid;grid-template-columns:175px 1fr;gap:22px;padding:13px 0;border-bottom:1px solid var(--line)}.legal-details dt{font-weight:500}.legal-details dd{margin:0;color:var(--body)}
@media(max-width:850px){.footer-inner{grid-template-columns:1.15fr .7fr 1fr;column-gap:28px}.footer-brand{font-size:19px}.footer-policy-nav button{font-size:11px}}
@media(max-width:600px){.site-footer-extended{padding:33px 0 25px}.footer-inner{grid-template-columns:.8fr 1.2fr;gap:27px 22px}.footer-identity{grid-column:1/-1}.footer-brand{font-size:23px}.footer-identity p{font-size:11px;max-width:100%;margin-top:9px}.site-footer-extended nav{font-size:11px;gap:4px}.footer-column-title{font-size:10px}.footer-policy-nav button{font-size:11px;min-height:36px}.site-footer-extended .footer-bottom{font-size:8px;gap:10px;align-items:center;line-height:1.7;margin-top:0}.legal-dialog{width:calc(100vw - 24px);max-height:87vh;max-height:87dvh}.legal-dialog-bar{padding:13px 17px;font-size:15px}.legal-content{padding:18px 19px 24px}.legal-draft{font-size:10px;padding:11px 13px}.legal-content article h2{font-size:23px;margin-bottom:20px}.legal-content h3{font-size:14px;margin-top:20px}.legal-content article p{font-size:12px;line-height:1.95}.legal-details>div{grid-template-columns:1fr;gap:4px;padding-block:12px}.legal-details{font-size:12px}.legal-contact-note{font-size:10px}}


/* Translated service identity and five-language navigation. */
.header-inner{height:auto;min-height:88px;padding-block:14px}.header-inner .brand{min-width:0;max-width:540px;flex-shrink:1;font-family:inherit;font-size:16px;letter-spacing:0}.brand-copy{display:block;min-width:0}.brand-name{display:block;font-weight:600;line-height:1.35}.header-inner .brand small{margin-top:4px;font-family:var(--serif);font-size:10px;font-weight:400;letter-spacing:.3px}.header-actions{flex-shrink:0}.header-controls{display:flex;align-items:center;gap:15px}.hero-language-note>span:last-child{line-height:1.8}.hero-language-note .short-line{flex-shrink:0}
@media(max-width:1100px){.desktop-nav{gap:15px}.header-controls{gap:9px}.header-inner{gap:16px}}
@media(max-width:850px){.header-inner{display:grid;grid-template-columns:1fr;gap:10px;min-height:108px;padding-block:12px}.header-inner .brand{grid-column:1;grid-row:1;max-width:100%;gap:10px}.header-actions{display:contents}.header-controls{grid-column:1;grid-row:2;justify-content:space-between;gap:8px}.language-switch{gap:5px}.language-switch button{min-width:32px;min-height:36px}}
@media(max-width:600px){.header-inner .brand{font-size:14px}.header-contact{font-size:11px;gap:12px;padding:7px 11px}.hero-language-note{font-size:9px;letter-spacing:0}.hero-language-note .short-line{width:18px}}
@media(max-width:360px){.header-inner .brand{font-size:13px}.header-inner .brand small{font-size:10px}.language-switch{gap:2px}}

/* Same-page email enquiry form. */
.contact-inner{align-items:flex-start;gap:45px}.contact-intro{flex:1;min-width:0;max-width:345px;position:relative;z-index:1}.contact-email{display:flex;flex-direction:column;gap:7px;margin-top:25px;font-size:11px;line-height:1.9;color:#d6dbdc}.contact-email a{font-size:13px;color:var(--paper);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.contact-form{flex:1.4;min-width:0;position:relative;z-index:1}.contact-fields{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}.contact-field{min-width:0}.contact-field-wide{grid-column:1/-1}.contact-field label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px;font-size:12px;line-height:1.7;color:var(--paper)}.contact-field label>span:last-child{font-size:9px;color:#ced2d3;flex-shrink:0}.contact-field input,.contact-field textarea{display:block;width:100%;min-width:0;border:1px solid #aab6bf;background:#fbfaf5;border-radius:2px;padding:11px 12px;color:var(--ink);font:inherit;font-size:14px;line-height:1.6}.contact-field textarea{resize:vertical;min-height:135px}.contact-field input:focus,.contact-field textarea:focus{outline:2px solid #ddb997;outline-offset:2px}.contact-fields:disabled{opacity:.75}.contact-privacy{display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px 8px;font-size:11px;line-height:1.8;color:#e6e7e1}.contact-privacy input{flex:0 0 auto;margin:4px 1px 0 0;accent-color:#bdc6b4;width:14px;height:14px}.contact-privacy label{flex:1;min-width:150px}.contact-privacy button{border:0;padding:0 0 0 23px;width:100%;background:none;color:var(--paper);font:inherit;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.contact-submit{border:0;cursor:pointer;width:100%;font:inherit;font-size:13px;min-height:48px}.contact-submit:disabled{cursor:wait}.contact-inner .contact-status{font-size:12px;line-height:1.9;min-height:23px;margin-top:13px;color:#e7e9e3;max-width:none;overflow-wrap:anywhere}.contact-inner .contact-status.is-error{color:#ffd9cb}.contact-inner .contact-status.is-success{color:#e0eccb}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-form noscript p{margin-top:15px}
@media(max-width:850px){.contact-inner{flex-direction:column;gap:28px}.contact-intro{max-width:100%;width:100%}.contact-form{width:100%}.contact-email{margin-top:17px}}
@media(max-width:600px){.contact-fields{grid-template-columns:1fr;gap:17px}.contact-field-wide{grid-column:1}.contact-inner{padding:30px 22px}.contact-field input,.contact-field textarea{font-size:16px;padding:11px 12px}.contact-privacy{font-size:10px}.contact-submit{font-size:13px}.contact-inner .contact-status{font-size:11px}.contact-email a{font-size:12px}}
