/* Messies — full-width photography, generous white space, bold editorial sections. */
:root{--paper:#fff;--ink:#191b1c;--orange:#c8451e;--line:#e3e5e4;--muted:#64696a;--pale:#f2f5f4;--bright:#ee5b31}
body{background:#fff}html{scroll-padding-top:100px}.wrap{width:min(1200px,calc(100% - 100px))}.header{height:88px;padding:0 36px;position:sticky;top:0;background:rgba(255,255,255,.98);border-bottom:1px solid #eee;z-index:50}.brand{font-size:2.4rem;letter-spacing:-.07em}.brand small{font-size:.65rem;letter-spacing:.06em}.header nav{gap:22px;font-size:.875rem}.header nav .nav-social{font-size:.8rem}.nav-cta{border-radius:30px;padding:12px 19px;background:var(--ink)}.nav-cta span{margin-left:12px}.header a[aria-current="page"]{color:var(--orange)}.eyebrow{font:800 clamp(2.2rem,4.3vw,4rem)/1.1 Arial,sans-serif;letter-spacing:-.045em;color:var(--ink);margin-bottom:18px}.section{padding:112px 0}h2{font-size:clamp(1.8rem,3.3vw,2.8rem);letter-spacing:-.04em;line-height:1.65}.subtle{line-height:2}.button{border-radius:40px;min-height:58px;padding:14px 27px;font-size:.9rem;gap:26px;border:1px solid var(--ink);background:var(--ink)}.button:hover{background:var(--orange);border-color:var(--orange)}.button.secondary{border-color:#afb3b0}.text-link{border:1px solid #b8bcbc;border-radius:40px;min-height:52px;padding:11px 23px;margin-top:30px;font-size:.9rem;gap:35px;transition:background .2s,color .2s,border-color .2s}.text-link:hover{background:var(--ink);border-color:var(--ink);color:#fff}.hero{padding:0;min-height:690px;height:calc(100svh - 88px);max-height:920px;position:relative;isolation:isolate;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center 42%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,20,.76),rgba(10,20,20,.37) 57%,rgba(10,20,20,.07)),linear-gradient(0deg,rgba(10,20,20,.45),transparent 40%);z-index:-2}.hero-content{padding-top:12px;padding-bottom:60px}.hero-kicker{font:700 .875rem/1.8 Arial,sans-serif;letter-spacing:.14em;margin-bottom:22px}.hero h1{font-size:clamp(2.4rem,5.15vw,4.8rem);line-height:1.6;letter-spacing:-.045em;max-width:1000px;color:#fff;font-weight:800}.hero-description{font-size:1.06rem;line-height:2;margin-top:23px}.hero .button-row{margin-top:35px;gap:14px}.hero .button{background:#fff;color:var(--ink);border-color:#fff}.hero .button:hover{background:#eaece9;border-color:#eaece9}.hero .button.secondary{color:#fff;background:rgba(0,0,0,.12);border-color:#fff}.hero .button.secondary:hover{background:#fff;color:#191b1c}.hero-bottom{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;align-items:end;gap:30px}.scroll-link{font:700 .75rem/1.7 Arial,sans-serif;letter-spacing:.14em;color:white;display:flex;gap:22px;align-items:center}.scroll-link span{font-size:1.5rem;font-weight:400}.scroll-link:hover{color:#fff}.hero-credit{font-size:.7rem;color:#fff;text-align:right;max-width:440px}.story-section{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px}.section-label .eyebrow{color:var(--orange)}.jp-label{font-size:.9rem;font-weight:600}.story-content h2{font-size:clamp(2rem,3.5vw,3rem);margin-bottom:30px}.story-content p{line-height:2.2;margin-top:20px}.journal-section{background:#f4f6f5}.section-heading{margin-bottom:48px;gap:35px}.section-heading h2{font-size:1.6rem;font-weight:700}.section-heading p{font-size:1rem;margin-top:18px}.cards{gap:32px}.report-card{display:flex;flex-direction:column;min-width:0}.report-card .image-wrap{border-radius:12px;aspect-ratio:1.48;margin-bottom:22px}.report-card .tag{border-radius:3px;background:#fff;padding:4px 10px;font-size:.75rem}.report-card h3{font-size:1.2rem;line-height:1.75;margin:10px 0 13px}.report-card p{font-size:.94rem;line-height:1.9}.report-card .date{font-size:.85rem}.read-label{margin-top:auto;padding:22px 0 12px;border-top:0;font-size:.875rem}.read-label span{height:34px;width:34px;display:grid;place-items:center;border:1px solid #bbc1bd;border-radius:50%}.project-showcase{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-tile{border-radius:16px;overflow:hidden;min-height:350px;position:relative;color:#fff;display:flex;flex-direction:column;justify-content:center;transition:transform .25s}.project-tile:hover{color:#fff;transform:translateY(-4px)}.project-tile-store{grid-row:span 2;background:#242d29}.project-tile-image{position:absolute;inset:0}.project-tile-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081914ed 3%,#08191433 80%)}.project-tile-image img{height:100%;object-position:52% 50%}.project-tile-copy{position:relative;padding:38px;z-index:1}.project-tile-store .project-tile-copy{margin-top:auto;padding-top:210px}.project-category{font-size:.875rem;font-weight:500;display:block;margin-bottom:18px}.project-tile h3{font:700 clamp(1.7rem,3vw,2.5rem)/1.3 Arial,'Noto Sans JP',sans-serif;letter-spacing:-.02em;margin-bottom:18px}.project-tile-store h3{font-size:1.7rem;line-height:1.6}.project-tile p{font-size:1rem;line-height:1.9}.tile-link{margin-top:24px;display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.tile-link>span{height:38px;width:38px;border:1px solid #ffffffa0;border-radius:50%;display:grid;place-items:center;font-size:1.1rem}.project-tile-biz{background:#17493e}.project-tile-biz h3{font-size:3.5rem;letter-spacing:-.045em}.project-tile-popup{background:#c84b24}.journey-band{background:#f2f5f4}.journey-grid{grid-template-columns:1fr 1fr;gap:100px}.journey-grid>.timeline{margin-top:10px}.journey-grid .subtle{margin-top:22px}.timeline{border-left:1px solid #ccd4cf}.timeline-item{padding:0 0 38px 32px}.timeline-item time{color:var(--orange);font-size:1rem}.timeline-item:before{width:11px;height:11px;left:-6px}.timeline-item h3{font-size:1.2rem}.timeline-item p{font-size:.94rem}.timeline-link{font-size:.8rem;margin-top:7px;display:inline-block;text-decoration:underline;text-underline-offset:4px}.external-row{padding:30px 0;gap:35px}.external-row>div{flex:1}.external-row h3{font-size:1.15rem;margin:8px 0}.external-row .tag{background:#f0f2f0;border-radius:3px;padding:3px 12px;font-size:.75rem}.external-row p{color:var(--muted)}.round-arrow{width:52px;height:52px;display:grid;place-items:center;border:1px solid #c2c7c4;border-radius:50%;font-size:1.25rem;flex-shrink:0}.social-section{background:#f4f6f5}.social-section .eyebrow{font-size:clamp(2rem,4vw,3.5rem)}.social-section .section-heading{align-items:end}.social-section .section-heading h2{font-size:2rem}.social-intro{font-size:1rem;color:var(--muted);line-height:2}.social-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.social-card{position:relative;padding:40px;background:white;border:1px solid #e6eae7;border-radius:12px;display:flex;flex-direction:column;min-height:190px;justify-content:center;transition:border-color .2s,transform .2s}.social-card:hover{border-color:var(--orange);transform:translateY(-3px)}.social-platform{font:700 2.25rem/1.3 Arial,sans-serif;letter-spacing:-.035em}.note-word{font-size:2.65rem;font-weight:900}.social-account{font-size:.9rem;color:var(--muted);margin-top:12px}.social-card .round-arrow{position:absolute;right:30px;top:50%;transform:translateY(-50%)}.contact-band{background:#d14b22;padding:95px 0;color:#fff}.contact-band .eyebrow{color:#fff;font:800 clamp(2.8rem,5vw,4.5rem)/1.1 Arial,sans-serif;letter-spacing:-.04em}.contact-band h2{font-size:2rem}.contact-band .button{border-color:white;background:white;color:#a52c0c}.contact-band p{font-size:1rem}.contact-band .button:hover{background:#f4f1ec;color:#a52c0c}footer{background:#fff;padding:68px 50px 25px}.footer-top>div{flex-wrap:wrap;justify-content:end;font-size:.875rem}.footer-bottom{font-size:.75rem}.page-head{background:#f4f6f5;padding:42px 0 65px}.page-head .eyebrow{font-size:1rem;letter-spacing:.07em;color:var(--orange)}.page-head h1{font-size:clamp(2rem,4.3vw,3.6rem);line-height:1.6}.page-head p{font-size:1rem;max-width:800px}.breadcrumb{font-size:.8rem;line-height:1.8;margin-bottom:28px}.filters{border-radius:12px;background:#f1f4f2;padding:26px}.filters label{font-size:.875rem}.filters input,.filters select{border-radius:5px;border-color:#c4ccc6;min-height:50px}.result-line{font-size:.9rem}.article-body p{font-size:1rem}.article-cover{border-radius:12px}.article-body h2{border-left:0;border-bottom:1px solid #d9dedb;padding:0 0 14px;font-size:1.65rem}.article-meta,.article-aside{font-size:.875rem}.notice{border-radius:5px;background:#f2f5f3;border-color:#b4c4b8;line-height:2}.meaning{background:#f4f6f5;border:0;border-radius:12px;padding:32px}.meaning .number{font-size:2.6rem}.meaning p{font-size:1rem}.info-table td,.info-table th{font-size:1rem}.project-hero img{border-radius:12px}.project-row{padding:34px 0}.project-row h3{font-size:1.3rem}.project-row p{font-size:1rem}.project-row small{font-size:.85rem}.project-row .number{font-size:1rem}.contact-option{border-radius:12px;background:#f4f6f5;border:0}.contact-option h2{font-size:1.6rem}.contact-option .eyebrow{font-size:1rem;letter-spacing:.03em;color:var(--orange)}.contact-option p{font-size:1rem}.contact-option .button{padding:14px 22px;gap:16px;font-size:.85rem}.photo-caption{font-size:.75rem;max-width:none}.archive-note{font-size:.85rem}.full-timeline img{border-radius:12px}.full-timeline .timeline-item{padding-bottom:65px}.no-image{background:#e3ede7;color:#17493e;font-size:2.8rem;font-family:Arial,'Noto Sans JP',sans-serif}.project-hero .no-image{border-radius:12px}.empty{background:#f2f5f3;border-radius:12px}
@media(max-width:1180px){.header nav{gap:16px}.header{padding:0 24px}.header nav .nav-social{display:none}.wrap{width:calc(100% - 72px)}.project-tile-copy{padding:30px}.journey-grid{gap:60px}}
@media(max-width:800px){.header{height:78px;padding:0 22px}.brand{font-size:2rem}.brand small{font-size:.6rem}.menu-button{background:#f3f5f3;border:0;border-radius:30px;padding:10px 16px;font-size:.85rem}.header nav{top:78px;background:#fff;padding:20px;border-bottom:1px solid #ddd;max-height:calc(100svh - 78px);overflow-y:auto}.header nav.open{display:flex}.header nav .nav-social{display:block}.header nav a{font-size:1rem}.wrap{width:calc(100% - 44px)}.hero{height:calc(100svh - 78px);min-height:660px;max-height:850px}.hero-photo{object-position:57% center}.hero-shade{background:linear-gradient(90deg,#061811a8,#0618114d),linear-gradient(0deg,#06181199,transparent 65%)}.hero-content{padding-top:25px;padding-bottom:80px}.hero-kicker{font-size:.75rem;letter-spacing:.08em;margin-bottom:22px}.hero h1{font-size:clamp(1.7rem,6.3vw,3.7rem);line-height:1.75;letter-spacing:-.045em}.hero-description{font-size:.94rem;margin-top:20px}.hero .button-row{margin-top:30px;gap:12px}.hero .button{padding:13px 19px;font-size:.85rem;min-height:52px;gap:18px}.hero-bottom{bottom:24px;align-items:start;flex-direction:column;gap:12px}.hero-credit{font-size:.65rem;text-align:left;max-width:100%}.section{padding:75px 0}.eyebrow{font-size:2.8rem;margin-bottom:15px}.section-heading{gap:20px;margin-bottom:32px}.section-heading h2{font-size:1.5rem}.section-heading p{font-size:.94rem}.story-section{grid-template-columns:1fr;gap:36px}.story-content h2{font-size:clamp(1.8rem,5.8vw,2.8rem);margin-bottom:24px}.story-content p{font-size:1rem}.jp-label{font-size:.875rem}.text-link{padding:11px 22px;font-size:.875rem;min-height:50px}.cards{gap:32px 20px}.report-card h3{font-size:1.1rem}.project-showcase{gap:18px}.project-tile{min-height:330px}.project-tile-store{grid-column:1/-1;grid-row:auto;min-height:410px}.project-tile-copy{padding:26px}.project-tile-store .project-tile-copy{padding-top:110px}.project-tile-biz h3{font-size:2.8rem}.project-tile-popup h3{font-size:1.9rem}.project-tile p{font-size:.9rem}.project-category{font-size:.8rem}.journey-grid{grid-template-columns:1fr;gap:45px}.journey-grid h2{font-size:2rem}.journey-grid .subtle{font-size:1rem}.external-row{gap:20px;flex-wrap:wrap}.external-row>.date{width:100%}.external-row p{font-size:.875rem}.external-row h3{font-size:1rem}.round-arrow{height:42px;width:42px}.social-section .section-heading{align-items:start}.social-section .eyebrow{font-size:2.4rem}.social-section .section-heading h2{font-size:1.8rem}.social-cards{grid-template-columns:1fr;gap:18px}.social-card{min-height:170px;padding:30px}.social-platform{font-size:2rem}.social-account{font-size:.9rem}.social-card .round-arrow{right:24px}.contact-band{padding:70px 0}.contact-band h2{font-size:1.8rem}.contact-band .eyebrow{font-size:2.4rem}.contact-band .wrap{gap:30px}.contact-band .button{min-width:230px}.page-head{padding:30px 0 45px}.page-head h1{font-size:2rem}.page-head .eyebrow{font-size:.875rem}.footer-top>div{justify-content:start;gap:18px 24px}footer{padding:50px 22px 24px}.article-meta{font-size:.8rem;gap:12px}.article-body h2{font-size:1.45rem}.article-layout{grid-template-columns:1fr;gap:0}.article-aside{display:none}.meanings{grid-template-columns:1fr}.meaning{padding:28px}.contact-options,.project-hero{grid-template-columns:1fr}.contact-option{padding:28px}.info-table td,.info-table th{font-size:.9rem}.filters{grid-template-columns:1fr 1fr;padding:20px}.photo-caption{max-width:100%}.article-layout article{min-width:0}}
@media(max-width:480px){.wrap{width:calc(100% - 40px)}.hero{min-height:650px}.hero h1{font-size:clamp(1.4rem,6.5vw,2rem)}.hero-kicker{font-size:.7rem}.hero .button-row{flex-direction:column;align-items:flex-start}.hero .button{min-width:206px}.hero-description{font-size:.9rem}.hero-photo{object-position:55% center}.section{padding:65px 0}.eyebrow{font-size:2.5rem}.cards{grid-template-columns:1fr}.project-showcase{grid-template-columns:1fr}.project-tile-store{grid-column:auto;min-height:470px}.project-tile{min-height:315px}.project-tile-store .project-tile-copy{padding-top:190px}.project-tile-store h3{font-size:1.5rem}.project-tile-copy{padding:28px}.filters{grid-template-columns:1fr}.filters label:first-child{grid-column:auto}.social-card{padding:27px;min-height:160px}.social-platform{font-size:1.85rem}.social-account{font-size:.8rem}.social-card .round-arrow{right:20px}.contact-band .eyebrow{font-size:1.85rem}.contact-band p{font-size:.94rem}.contact-option .button{font-size:.8rem;padding:12px 16px}.footer-bottom{gap:12px}.article-body p{font-size:1rem}.article-layout article>.cards{grid-template-columns:1fr!important}.timeline-item{padding-left:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
