:root{--ink:#142538;--muted:#566579;--blue:#244bd8;--paper:#fff;--pale:#f1f4f8;--line:#dbe1e9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.9}img{display:block;width:100%;height:auto}a{color:inherit;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}.header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:1px solid var(--line);background:#fffffff2;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.logo{text-decoration:none;font-size:29px;font-weight:750;letter-spacing:-1px;display:flex;align-items:center;gap:15px}.logo span{font-size:10px;letter-spacing:2px;font-weight:600}.header nav{display:flex;gap:32px;font-size:13px}.header nav a{text-decoration:none}.header nav a:hover{color:var(--blue)}.skip{position:fixed;top:-100px}.skip:focus{top:0;background:white;z-index:30}.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:34px;align-items:center;padding-block:70px 80px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;color:var(--blue);margin:0 0 16px}.role{font-size:13px;margin:0 0 18px}h1{font-size:clamp(30px,3.4vw,47px);line-height:1.55;letter-spacing:-.055em;margin:0 0 24px}h1 span{color:var(--blue)}.lead{font-size:15px;color:var(--muted);margin-bottom:28px}.hero-facts{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:18px;margin-bottom:28px}.hero-facts strong{font-size:38px;line-height:1.1}.hero-facts strong span{font-size:17px;margin-left:4px}.hero-facts small{display:block;font-size:10px;margin-top:6px}.hero-facts p{font-size:11px;color:var(--muted);line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--ink);color:white;padding:15px 22px;font-size:13px;font-weight:600;text-decoration:none;border-radius:3px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:var(--blue)}.hero-visual{position:relative;margin:0;padding:28px 36px 42px 0}.screen{border:1px solid var(--line);border-radius:7px;overflow:hidden;box-shadow:0 22px 60px #14253816}.bar{height:25px;display:flex;align-items:center;gap:4px;background:white;padding:0 10px}.bar i{width:5px;height:5px;border-radius:50%;background:#d3d9e3}.bar span{font-size:8px;margin-left:8px;color:var(--muted);letter-spacing:1px}.mobile-screen{position:absolute;right:-2px;bottom:42px;width:24%;border:5px solid var(--ink);border-radius:20px;overflow:hidden;box-shadow:0 12px 30px #14253825;background:var(--ink)}.hero-visual figcaption{font-size:9px;letter-spacing:1px;margin-top:15px}.hero-visual figcaption span{display:block;color:var(--muted);letter-spacing:0;font-size:11px}.intro-strip{border-block:1px solid var(--line);background:var(--pale)}.intro-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:15px}.intro-strip span{font-size:10px;font-weight:700;letter-spacing:1px}.intro-strip p{font-size:13px;margin:0}.intro-strip small{font-size:11px;color:var(--muted)}.section{padding-block:85px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}h2{font-size:34px;line-height:1.5;letter-spacing:-.035em;margin:0}.section-head>p{font-size:13px;color:var(--muted);margin:0}.case{margin-bottom:65px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.case-heading{display:flex;gap:22px;padding:32px 38px;align-items:center}.case-number{font-size:48px;font-weight:300;line-height:1;color:#8c99ac}.case-heading .eyebrow{margin-bottom:6px;letter-spacing:1px}h3{font-size:25px;line-height:1.55;margin:0 0 10px;letter-spacing:-.025em}.case-heading h3 span{font-size:16px;font-weight:400;margin-left:5px}.case-heading p:last-child{font-size:12px;color:var(--muted);margin:0}.project-showcase{background:#e8edf5;padding:45px 70px;display:grid;grid-template-columns:1fr 160px;gap:35px;align-items:center}.project-showcase figure{margin:0}.desktop-shot img{border-radius:4px;box-shadow:0 10px 30px #14253815}.phone-shot img{border:5px solid var(--ink);border-radius:18px}.project-showcase figcaption{font-size:10px;text-align:center;margin-top:12px;color:var(--muted)}.case-summary{padding:35px 38px;display:grid;grid-template-columns:1fr 1.5fr;gap:40px}h4{font-size:20px;line-height:1.7;margin:0 0 14px}dl{margin:0;font-size:13px}dl>div{display:grid;grid-template-columns:90px 1fr;gap:14px;border-bottom:1px solid var(--line);padding:10px 0}dt{font-weight:700}dd{margin:0;color:var(--muted)}.decisions{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:0 38px 35px}.decisions article{border-top:2px solid var(--blue);padding-top:15px}.decisions span{font-size:10px;color:var(--blue);font-weight:600}.decisions h4{font-size:17px;margin-block:10px}.decisions p,.planning p,.detail-band p,.umbrella p{font-size:13px;color:var(--muted);margin:0;line-height:1.9}.planning{display:grid;grid-template-columns:1fr 1.5fr;gap:35px;background:var(--pale);padding:35px 38px}.planning p{margin-bottom:15px}.planning .eyebrow{color:var(--blue);font-size:10px}.planning figure{margin:0;align-self:center}.planning figure img{border:1px solid var(--line)}figcaption{font-size:10px;color:var(--muted);margin-top:9px}.planning .note{font-size:10px}.links{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:12px;font-weight:700}.case-end{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 38px}.case-end p{font-size:11px;color:var(--muted);max-width:600px;margin:0}.case-end .button{white-space:nowrap}.pureliora .project-showcase{background:#f2f0e8}.detail-band{margin:0 38px;padding:20px 24px;background:#f7f6f2;display:grid;grid-template-columns:1fr 1.5fr;gap:30px}.detail-band strong{font-size:15px}.umbrella{display:grid;grid-template-columns:1fr 1.4fr;align-items:center;gap:60px;padding:40px 65px;margin-bottom:0}.umbrella-image{background:#eff4f7;padding:20px 60px;border-radius:4px}.umbrella-image img{max-height:310px;object-fit:contain}.umbrella h4{font-size:17px}.umbrella dl{margin-block:15px}.text-link{font-size:13px;font-weight:700}.experience{background:var(--ink);color:white}.experience .eyebrow{color:#b4c5ff}.years{display:flex;align-items:center;gap:16px}.years strong{font-size:80px;line-height:1;letter-spacing:-5px}.years span{font-size:13px;line-height:1.6}.experience-intro{color:#cbd3df;font-size:14px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:35px}.experience-grid article{border-top:1px solid #ffffff40;padding-top:20px}.experience-grid article>span{font-size:10px;letter-spacing:1.2px;color:#b4c5ff}.experience-grid h3{font-size:21px;margin-block:10px}.experience-grid ul{padding-left:20px;font-size:14px;color:#e0e6ee}.experience-grid p{font-size:12px;color:#cbd3df}.confidential{font-size:11px;color:#cbd3df;border-top:1px solid #ffffff30;margin:30px 0 0;padding-top:20px}.about{display:grid;grid-template-columns:1fr 2fr;gap:90px}.profile img{width:90px;border-radius:50%;margin:25px 0}.profile h2{font-size:35px}.profile>p:last-child{font-size:12px;color:var(--muted)}.about-body>h3{font-size:28px}.about-body>p{font-size:14px;color:var(--muted)}.tools{margin-top:30px}.tools>div{padding-block:14px;border-top:1px solid var(--line)}.tools h4{font-size:13px;margin:0 0 5px}.tools p{font-size:12px;color:var(--muted);margin:0}footer{display:flex;align-items:center;flex-wrap:wrap;gap:25px;padding-block:28px;border-top:1px solid var(--line)}footer p,footer>a:not(.logo){font-size:12px}footer>a:not(.logo){margin-left:auto}footer small{width:100%;font-size:10px;color:var(--muted)}.sp-only{display:none}@media(min-width:1500px){.hero{padding-block:90px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.hero{grid-template-columns:1fr 1fr;gap:20px}h1{font-size:31px}.hero-facts{gap:10px}.hero-facts p{font-size:10px}.project-showcase{padding:30px;grid-template-columns:1fr 130px;gap:25px}.case-summary,.planning{gap:25px}.decisions{gap:18px}.umbrella{gap:30px;padding:30px}.umbrella-image{padding:20px}.intro-strip small{max-width:140px}.about{gap:45px}.header{padding-inline:24px}}
@media(max-width:650px){html{scroll-padding-top:75px}.wrap{width:calc(100% - 36px)}.header{height:68px;padding-inline:18px}.logo{font-size:24px;gap:10px}.logo span{font-size:8px;letter-spacing:1px}.header nav{gap:12px;font-size:10px}.hero{grid-template-columns:1fr;padding-block:36px 28px;gap:25px}.role{font-size:12px;margin-bottom:13px}h1{font-size:35px;margin-bottom:16px}.lead{font-size:13px;margin:0 0 20px}.hero-facts{margin-bottom:20px;gap:20px}.hero-facts p{font-size:10px}.hero-facts strong{font-size:34px}.hero .button{font-size:12px;padding:12px 18px}.hero-visual{padding:10px 38px 18px 0}.mobile-screen{bottom:48px;width:23%;border-width:4px;border-radius:12px}.hero-visual figcaption{margin-top:12px}.hero-visual figcaption span{font-size:10px}.intro-strip .wrap{display:block;padding-block:15px}.intro-strip span{font-size:9px}.intro-strip p{font-size:12px}.intro-strip small{font-size:10px}.section{padding-block:48px}.section-head{display:block;margin-bottom:25px}.section-head>p{margin-top:16px;font-size:12px}h2{font-size:28px}.eyebrow{font-size:10px;margin-bottom:10px}.sp-only{display:block}.case{margin-bottom:30px}.case-heading{padding:22px 18px;gap:13px}.case-number{font-size:35px}.case-heading h3{font-size:19px}.case-heading h3 span{display:block;font-size:12px;margin:0}.case-heading .eyebrow{font-size:9px;letter-spacing:.3px}.case-heading p:last-child{font-size:10px}.project-showcase{padding:22px 15px;grid-template-columns:1fr 78px;gap:12px}.phone-shot img{border-width:3px;border-radius:10px}.project-showcase figcaption{font-size:9px}.case-summary{grid-template-columns:1fr;padding:24px 18px;gap:8px}.case-summary h4{font-size:21px}dl{font-size:12px}dl>div{grid-template-columns:72px 1fr;gap:10px}.decisions{grid-template-columns:1fr;padding:0 18px 25px;gap:20px}.decisions h4{margin-block:6px}.decisions p{font-size:12px}.planning{grid-template-columns:1fr;padding:25px 18px;gap:20px}.planning h4{font-size:21px}.planning p{font-size:12px}.links{font-size:11px}.case-end{display:block;padding:20px 18px}.case-end .button{margin-top:16px;font-size:12px;width:100%}.detail-band{margin:0 18px;grid-template-columns:1fr;padding:18px;gap:8px}.detail-band p{font-size:12px}.umbrella{grid-template-columns:100px 1fr;padding:20px 15px;gap:18px}.umbrella-image{padding:10px 0}.umbrella .eyebrow{font-size:9px;letter-spacing:0}.umbrella h3{font-size:21px}.umbrella h4{font-size:15px}.umbrella p{font-size:12px}.umbrella dl>div{display:block}.umbrella dd{margin-top:3px}.experience .section-head{display:flex;align-items:center;gap:18px}.experience h2{font-size:25px}.years{gap:9px}.years strong{font-size:55px;letter-spacing:-3px}.years span{font-size:10px}.experience-intro{font-size:12px}.experience-grid{grid-template-columns:1fr;gap:18px;margin-top:25px}.experience-grid article{padding-top:15px}.experience-grid h3{font-size:19px;margin:5px 0}.experience-grid ul{display:flex;flex-wrap:wrap;gap:5px 25px;margin-block:8px;font-size:12px}.experience-grid p{margin:5px 0}.confidential{font-size:10px}.about{grid-template-columns:1fr;gap:25px}.profile img{width:65px;margin-block:15px}.profile h2{font-size:29px}.about-body>h3{font-size:24px}.about-body>p{font-size:13px}footer{gap:12px}footer p{width:100%;margin:0}footer>a:not(.logo){margin-left:0}footer small{margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Align the desktop profile portrait with the name and match its visual width. */
@media(min-width:651px){.profile img{width:160px;height:160px;object-fit:cover;margin:25px 0}}
