:root{--ink:#252824;--muted:#5e655e;--paper:#fff;--wash:#f0f3ef;--green:#234f42;--line:#d7ded6;--warm:#e5b5a1;--max:1280px;--gutter:64px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--green)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b74a25;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:0}h1,h2,.serif{font-family:Georgia,'Times New Roman',serif}h1{font-size:72px}h2{font-size:48px}h3{font-size:27px}p+p{margin-top:20px}.wrap{width:100%;max-width:var(--max);margin:auto;padding:0 var(--gutter)}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.header{height:100px;border-bottom:1px solid var(--line);background:white;position:relative;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;height:100%}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0}.brand img{width:43px;height:50px;object-fit:contain}.brand-name{font-size:16px;line-height:1.3}.brand-name strong{display:block;font-weight:600}.claim{font-size:10px;letter-spacing:0;display:block;margin-top:4px}.nav{display:flex;align-items:center;gap:22px}.nav a{font-size:12px;text-decoration:none;white-space:nowrap;padding:12px 0}.nav a[aria-current=page]{border-bottom:2px solid var(--green)}.nav .nav-contact{background:var(--green);color:white;padding:12px 18px}.menu-toggle{display:none;border:1px solid var(--line);background:white;width:44px;height:44px;align-items:center;justify-content:center}.menu-icon{display:block;width:20px;height:14px;border-top:2px solid;border-bottom:2px solid;position:relative}.menu-icon:after{content:'';position:absolute;left:0;right:0;top:5px;border-top:2px solid}.eyebrow{font:12px/1.5 Arial,Helvetica,sans-serif;text-transform:uppercase;color:var(--green);margin-bottom:24px}.hero{position:relative;isolation:isolate;min-height:690px;display:flex;align-items:center;background:#f3eee5;overflow:hidden}.hero-images{position:absolute;inset:0;z-index:-2}.hero-frame{position:absolute;inset:0;opacity:0;transition:opacity 2.5s ease;background-position:center;background-size:cover}.hero-frame:nth-child(1){background-image:url('assets/Hero_bg_01.png')}.hero-frame:nth-child(2){background-image:url('assets/Hero_bg_02.png')}.hero-frame:nth-child(3){background-image:url('assets/Hero_bg_03.png')}.hero-frame.active{opacity:1}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(248,246,241,.97),rgba(248,246,241,.88) 37%,rgba(248,246,241,0) 74%)}.hero-content{padding:64px 0;max-width:650px}.hero h1{font-size:74px;max-width:600px}.hero .position{font-size:19px;margin:24px 0 18px}.hero .intro{max-width:460px;color:#41463e}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:14px 24px;background:var(--green);border:1px solid var(--green);color:white;text-decoration:none;font-size:14px;border-radius:2px}.button:hover{background:#173c31;color:white}.text-link{font-size:14px}.hero-index{position:absolute;right:var(--gutter);bottom:26px;font-size:11px;background:rgba(255,255,255,.88);padding:6px 12px}.band{padding:96px 0;border-bottom:1px solid var(--line)}.band.wash{background:var(--wash)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:46px}.section-heading h2{max-width:700px}.section-heading .text-link{flex-shrink:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.lede{font-size:23px;line-height:1.5;max-width:750px}.muted{color:var(--muted)}.problem-list{border-top:1px solid var(--line)}.problem{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:23px 0;border-bottom:1px solid var(--line)}.number{font-size:12px;color:var(--green);padding-top:5px}.problem h3{font-size:25px;margin-bottom:10px}.problem p{font-size:15px;color:var(--muted)}.expertise-list{border-top:1px solid var(--line)}.expertise-row{display:grid;grid-template-columns:50px 1fr 1fr;gap:28px;padding:34px 0;border-bottom:1px solid var(--line)}.expertise-row h3{font-family:Georgia,serif;font-size:29px}.expertise-row p{font-size:16px;color:var(--muted)}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.work{min-width:0}.work a{text-decoration:none;display:block}.work h3{font-size:22px;margin-top:17px}.work p{font-size:13px;color:var(--muted);margin-top:7px}.work-visual{aspect-ratio:4/3;position:relative;overflow:hidden;background:var(--wash);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;padding:22px}.work-visual:after{content:'';width:90px;height:90px;border:1px solid currentColor;border-radius:50%;position:absolute;right:-22px;top:38px;opacity:.22}.work-visual .project-name{font:29px/1.1 Georgia,serif;max-width:220px}.work-visual .draft{font-size:10px;line-height:1.5;text-transform:uppercase}.work:nth-child(3n+2) .work-visual{background:#dce7e4}.work:nth-child(3n) .work-visual{background:#ece1dd}.work a:hover .work-visual{border-color:var(--green)}.note{padding:18px 0;border-top:1px solid var(--line);font-size:13px;color:var(--muted);margin-top:32px}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:45px}.step{border-top:1px solid var(--line);padding-top:20px}.step h3{margin:26px 0 16px;font-size:24px}.step p{font-size:15px;color:var(--muted)}.statement{font:42px/1.2 Georgia,serif;max-width:700px;margin-top:34px}.profile-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.portrait-placeholder{aspect-ratio:4/5;background:#e8ece7;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;justify-content:space-between}.portrait-placeholder img{width:110px;height:125px;object-fit:contain;margin:auto}.portrait-placeholder span{font-size:12px}.profile-copy h2{margin-bottom:30px}.cta{background:var(--green);color:white;padding:78px 0}.cta .eyebrow{color:#d9e4da}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:650px}.cta .button{background:white;color:var(--green);border-color:white;flex-shrink:0}.footer{padding:48px 0 28px;background:#f7f8f6}.footer-top{display:flex;justify-content:space-between;gap:40px}.footer-links{display:flex;flex-wrap:wrap;gap:16px 25px;max-width:500px;font-size:13px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;margin-top:36px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.page-intro{padding:76px 0 60px}.page-intro h1{max-width:950px}.page-intro .lede{margin-top:30px}.breadcrumb{font-size:12px;margin-bottom:32px;color:var(--muted)}.content{max-width:780px}.content h2{font-size:33px;margin:45px 0 20px}.content h3{font-size:23px;margin:25px 0 12px}.content ul{padding-left:22px}.method-detail{display:grid;grid-template-columns:120px 1fr 1fr;gap:40px;padding:45px 0;border-top:1px solid var(--line)}.method-detail h2{font-size:34px}.method-detail p{margin-top:18px}.method-detail .deliverable{border-left:2px solid var(--green);padding-left:24px;font-size:15px}.label{font-size:12px;text-transform:uppercase;color:var(--green);margin-bottom:10px;display:block}.filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px}.filter-bar button{background:white;border:1px solid var(--line);padding:10px 18px;font-size:13px;min-height:44px;border-radius:2px}.filter-bar button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}[hidden]{display:none!important}.notice{background:#f5eee8;border-left:3px solid #9c5432;padding:20px 24px;font-size:15px;margin:30px 0}.case-layout{display:grid;grid-template-columns:1fr 2fr;gap:70px}.facts{font-size:14px}.facts div{padding:15px 0;border-top:1px solid var(--line)}.facts dt{font-size:11px;text-transform:uppercase;color:var(--muted)}.facts dd{margin:7px 0 0}.case-section{padding-bottom:32px;border-bottom:1px solid var(--line);margin-bottom:32px}.case-section h2{font-size:32px;margin-bottom:18px}.case-section p{color:var(--muted)}.case-cover{aspect-ratio:16/7;background:var(--wash);display:flex;flex-direction:column;justify-content:space-between;padding:40px;margin-bottom:60px;border:1px solid var(--line)}.case-cover strong{font:48px Georgia,serif;font-weight:400}.case-cover span{font-size:12px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-grid h2{font-size:34px;margin-bottom:24px}.contact-grid a{overflow-wrap:anywhere}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}.field label{font-size:14px}.field input,.field textarea,.field select{border:1px solid #a5afa5;border-radius:2px;padding:12px 14px;background:white;color:var(--ink);width:100%;min-height:48px}.field textarea{resize:vertical;min-height:160px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:13px;color:var(--muted);margin:16px 0}.form-status{padding:18px 0;color:var(--green);font-size:14px}.contact-list{padding-left:20px;font-size:15px}.contact-list li{margin:12px 0}.legal-draft{max-width:800px}.legal-draft h2{font-size:28px;margin:30px 0 18px}@media(min-width:1500px){.hero{min-height:730px}}@media(max-width:1100px){:root{--gutter:36px}.nav{gap:13px}.nav a{font-size:11px}.brand-name{font-size:14px}.split,.profile-block,.contact-grid{gap:40px}h1{font-size:62px}.hero h1{font-size:66px}.hero-content{max-width:580px}}@media(max-width:900px){.menu-toggle{display:flex}.nav{position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:20px var(--gutter);flex-direction:column;align-items:stretch;gap:0}.nav a{font-size:16px;padding:13px}.nav .nav-contact{margin-top:12px}.nav:not(.open){display:none}.header{height:86px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.method-detail{grid-template-columns:60px 1fr}.method-detail .deliverable{grid-column:2}.hero{min-height:650px}.hero h1{font-size:58px}.hero-content{max-width:510px}.cta-inner{align-items:start;flex-direction:column}.case-layout{gap:40px}.expertise-row{grid-template-columns:32px 1fr}.expertise-row p{grid-column:2}}@media(max-width:767px){:root{--gutter:24px}body{font-size:16px}.header{height:80px}.brand img{width:34px;height:40px}.brand-name{font-size:14px}.claim{font-size:9px}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;background:#f6f7f3}.hero>.wrap{order:0}.hero:after{display:none}.hero-content{padding:40px 0 34px;max-width:none}.hero h1{font-size:49px;max-width:100%}.hero .position{font-size:17px;margin-top:22px}.hero .intro{font-size:16px;max-width:none}.hero-images{position:relative;inset:auto;z-index:0;order:1;width:100%;aspect-ratio:1376/768}.hero-frame{background-size:contain;background-repeat:no-repeat}.hero-index{position:static;order:2;background:white;padding:12px 24px;font-size:10px}.eyebrow{font-size:11px;margin-bottom:20px}.actions{gap:20px;margin-top:26px}.button{min-height:50px;padding:14px 20px}.hero .actions{align-items:stretch;flex-direction:column}.hero .actions .text-link{align-self:start;padding:5px 0}.band{padding:62px 0}h1{font-size:47px}h2{font-size:36px}.section-heading{display:block;margin-bottom:32px}.section-heading .text-link{display:inline-block;margin-top:24px}.split,.profile-block,.contact-grid,.case-layout{grid-template-columns:1fr;gap:36px}.lede{font-size:20px}.problem{grid-template-columns:30px 1fr}.problem h3{font-size:23px}.expertise-row{gap:16px;padding:28px 0}.expertise-row h3{font-size:27px}.work-grid{grid-template-columns:1fr;gap:32px}.work-visual{aspect-ratio:4/3}.work-visual .project-name{font-size:35px}.steps{grid-template-columns:1fr 1fr;gap:24px 20px}.step h3{font-size:22px}.step p{font-size:14px}.statement{font-size:33px}.portrait-placeholder{aspect-ratio:4/3;max-width:440px}.cta{padding:58px 0}.footer-top,.footer-bottom{flex-direction:column}.footer-links{gap:14px 20px}.page-intro{padding:48px 0 40px}.page-intro .lede{margin-top:24px}.method-detail{grid-template-columns:28px 1fr;gap:20px}.method-detail h2{font-size:30px}.case-cover{aspect-ratio:4/3;padding:24px;margin-bottom:36px}.case-cover strong{font-size:38px}.field-row{grid-template-columns:1fr;gap:0}.notice{padding:18px}.filter-bar{gap:8px}.filter-bar button{padding:10px 13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
:root .rotation-toggle{width:44px;height:44px;flex:none;border:1px solid #a5afa5;border-radius:2px;background:white;color:var(--green);font-size:14px;margin-left:12px;vertical-align:middle}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans.ttf') format('truetype');font-style:normal;font-weight:100 1000;font-display:swap}
.brand{font-family:'DM Sans',-apple-system,'Segoe UI',Roboto,sans-serif}
.brand .brand-name{display:flex;flex-direction:column;gap:2px;line-height:1.1}
.brand-name strong{font-size:18px;font-weight:600;white-space:nowrap}
.wordmark-first{color:#26241f}
.wordmark-last{color:#5a564c}
.brand-name .claim{font-size:9px;font-weight:600;line-height:1.1;text-align:center;text-transform:uppercase;color:#a9713f;margin-top:0}
.header .nav a{font-family:'DM Sans',-apple-system,'Segoe UI',Roboto,sans-serif;font-size:12px;font-weight:500;text-transform:uppercase}
@media(max-width:1100px) and (min-width:901px){.header .nav{gap:12px}}
@media(max-width:900px){.header .nav a{font-size:16px}}
@media(max-width:767px){.brand-name strong{font-size:16px}}
