.seo-page{background:#090909;color:#f3f2ec;font-size:16px;line-height:1.9}
.editorial-header,.editorial-footer{padding:32px 6vw}.editorial-header{display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid #323232}
.editorial-header .brand-logo{width:240px;height:auto;filter:invert(1)}
.editorial-header nav,.editorial-footer nav{display:flex;gap:28px;flex-wrap:wrap;font-size:13px}.seo-page a{transition:color .2s}.seo-page a:hover{color:#b4d2d6}
.seo-page main{max-width:1440px;padding:0 6vw;margin:auto}.breadcrumbs{font-size:12px;color:#aaa;margin:32px 0 0}.breadcrumbs ol{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0;margin:0}.breadcrumbs li+li:before{content:"/";margin-right:12px;color:#666}
.editorial-hero{max-width:980px;padding:80px 0 64px}.editorial-eyebrow{font-family:var(--font-display-en);font-size:12px;letter-spacing:.16em;color:#b0c4c8}.editorial-hero h1{font-size:clamp(30px,4.8vw,70px);font-weight:600;line-height:1.5;letter-spacing:-.025em;margin:20px 0 32px;overflow-wrap:anywhere}.editorial-hero>p:not(.editorial-eyebrow){max-width:780px}.editorial-lead{font-size:clamp(18px,2vw,26px);line-height:1.9}
.editorial-project-image{margin:0 0 70px}.editorial-project-image img{display:block;width:100%;height:auto;aspect-ratio:2;object-fit:cover}
.editorial-body{max-width:1000px}.editorial-section{padding:40px 0;border-top:1px solid #323232}.editorial-section h2{font-size:clamp(21px,2.4vw,30px);font-weight:600;line-height:1.65;margin:0 0 24px}.editorial-section>p{max-width:780px;margin:0 0 22px}.editorial-section ul,.editorial-steps{padding-left:1.5em}.editorial-section li{padding:6px 0}.editorial-detail{color:#bac5c6;font-size:14px}
.editorial-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 36px;margin:20px 0 40px}.editorial-projects>a{display:block;min-width:0}.editorial-projects img{display:block;width:100%;height:auto;aspect-ratio:2;object-fit:cover;margin-bottom:18px}.editorial-projects>a>span{font-family:var(--font-display-en);font-size:10px;letter-spacing:.08em;color:#bbb}.editorial-projects h3{font-size:24px;line-height:1.5;margin:8px 0}.editorial-projects h3>span{float:right;font-weight:400}.editorial-projects p{font-size:14px;line-height:1.8;color:#c3c3c0;margin:0}
.editorial-cta{border-top:1px solid #323232;padding:56px 0}.editorial-cta h2{font-size:clamp(22px,3vw,36px);line-height:1.6;margin:0 0 16px}.editorial-cta>a,.editorial-archive>a,.editorial-section>a{display:inline-block;border-bottom:1px solid currentColor;padding:10px 0}.editorial-archive{padding:10px 0 80px}
.editorial-faq{border-top:1px solid #323232;padding:20px 0}.editorial-faq summary{cursor:pointer;font-size:17px;font-weight:600;line-height:1.8}.editorial-faq p{max-width:780px;margin-bottom:0}.editorial-related{display:flex;gap:18px 36px;flex-wrap:wrap}.editorial-footer{margin-top:70px;border-top:1px solid #323232}.editorial-footer p{font-size:14px}.editorial-footer small{display:block;margin-top:40px;color:#aaa;font-size:10px}
@media(max-width:767px){.editorial-header{align-items:flex-start;flex-direction:column;padding:24px 6vw;gap:20px}.editorial-header .brand-logo{width:210px}.editorial-header nav{gap:24px}.editorial-hero{padding:48px 0 36px}.editorial-hero h1{font-size:clamp(28px,7.5vw,44px);margin-bottom:24px}.editorial-projects{grid-template-columns:1fr;gap:36px}.editorial-section{padding:32px 0}.editorial-project-image{margin-bottom:40px}.editorial-faq summary{font-size:16px}}
@media(prefers-reduced-motion:reduce){.seo-page a{transition:none}}

/* Journal and Projects share the Services typography and editorial rhythm. */
:is(.seo-page,.journal-index-page) #content-main:has(>.listing-hero),.journal-index-content:has(>.listing-hero){max-width:1600px;margin-inline:auto;padding:60px 6vw 80px}
.journal-index-page,.journal-archive-page{padding-top:100px}
.listing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8vw;padding:0 0 96px;margin:0;max-width:none}
.listing-label{font-size:14px;line-height:1.7;letter-spacing:.055em;margin:0 0 28px;color:#c4c4be}
.listing-label>span:first-child{font-family:var(--font-japanese)}
.listing-hero h1{font-family:benton-modern-display,serif;font-size:clamp(64px,8vw,136px);font-style:normal;font-weight:600;line-height:1.04;letter-spacing:-.035em;margin:0}
.listing-hero h1 em{font-weight:400}
.listing-intro h2{font-family:"JEIA Hiragino Mincho W3","Hiragino Mincho ProN","Yu Mincho","Zen Old Mincho",serif;font-weight:400;font-size:clamp(24px,2.4vw,36px);line-height:1.8;letter-spacing:.015em;margin:0 0 24px;text-wrap:pretty}
.listing-intro p{font-size:15px;line-height:2.05;color:#c8c8c2;margin:0;max-width:33em}
.journal-index-layout{scroll-margin-top:110px}
.journal-filter-tags{margin:0 0 24px;padding-top:30px;border-top:1px solid #343434}
.journal-filter-tags h2{font-family:var(--font-editorial-jp);font-size:18px;margin-bottom:20px}
.journal-filter-tags ul{gap:12px 24px}
.journal-filter-tags a{border:0;border-bottom:1px solid transparent;border-radius:0;padding:8px 0;font-size:14px;gap:12px}
.journal-filter-tags a[aria-current="true"]{background:transparent;color:#f3f2ec;border-color:#f3f2ec}
.journal-topic-count{font-family:benton-modern-display,serif;font-size:16px;font-style:italic}
.journal-result-count{font-size:13px;margin:0 0 32px;color:#aaa}
.journal-index-layout .journal-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 4vw;margin-bottom:72px}
.journal-index-grid .journal-cover{aspect-ratio:4/3;border-radius:8px;padding:32px}
.journal-index-grid .cover-type{font-family:benton-modern-display,serif;font-size:clamp(42px,5vw,76px);font-weight:600;line-height:1.08}
.journal-index-grid .cover-type span{font-style:italic;font-weight:400}
.journal-index-grid h3{font-family:"JEIA Hiragino Mincho W3","Hiragino Mincho ProN","Yu Mincho","Zen Old Mincho",serif;font-size:clamp(21px,1.8vw,28px);font-weight:400;line-height:1.65;letter-spacing:.01em;margin:14px 0 0}
.journal-index-grid .journal-meta{font-size:12px;line-height:1.6;margin-top:22px;gap:16px;color:#aaa}
#content-main:has(>.listing-hero)>.editorial-projects{gap:64px 4vw;margin:0 0 64px}
#content-main:has(>.listing-hero)>.editorial-projects img{aspect-ratio:16/9;border-radius:8px;margin-bottom:22px}
#content-main:has(>.listing-hero)>.editorial-projects>a>span{font-family:var(--font-japanese);font-size:12px;letter-spacing:.055em;color:#aaa}
#content-main:has(>.listing-hero)>.editorial-projects h3{font-family:benton-modern-display,"JEIA Hiragino Mincho W3","Hiragino Mincho ProN",serif;font-size:clamp(28px,3vw,44px);font-weight:600;line-height:1.35;margin:12px 0}
#content-main:has(>.listing-hero)>.editorial-projects h3>span{font-family:var(--font-japanese);font-size:24px}
#content-main:has(>.listing-hero)>.editorial-projects p{font-size:14px;line-height:1.9;color:#bbb}
@media(max-width:767px){
 .journal-index-page,.journal-archive-page{padding-top:100px}
 :is(.seo-page,.journal-index-page) #content-main:has(>.listing-hero),.journal-index-content:has(>.listing-hero){padding:44px 7vw 48px}
 .listing-hero{grid-template-columns:1fr;gap:36px;padding-bottom:56px}
 .listing-label{font-size:13px;margin-bottom:22px}
 .listing-intro h2{font-size:26px;margin-bottom:18px}
 .listing-intro p{font-size:14px}
 .journal-index-layout .journal-index-grid{grid-template-columns:1fr;gap:44px}
 .journal-index-grid .cover-type{font-size:clamp(46px,12vw,74px)}
 .journal-index-grid .journal-cover{padding:26px}
 .journal-index-grid h3{font-size:23px}
 .journal-filter-tags ul{gap:8px 20px}
 .journal-filter-tags a{font-size:13px}
 #content-main:has(>.listing-hero)>.editorial-projects{grid-template-columns:1fr;gap:44px}
}
@media(max-width:600px){.journal-index-page,.journal-archive-page{padding-top:80px}}
