.direction-intro,.direction-page{--direction-paper:#f7f5f0;--direction-ink:#181817;--direction-muted:#55534f;--direction-line:#d8d5ce;color:var(--direction-ink);background:var(--direction-paper)}
.direction-intro *, .direction-page main *{box-sizing:border-box}
.direction-intro{padding:clamp(5rem,9vw,9rem) clamp(2rem,5vw,6rem);border-top:1px solid var(--direction-line);border-bottom:1px solid var(--direction-line)}
.direction-intro-inner,.direction-wrap{max-width:80rem;margin-inline:auto}
.direction-intro-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(3rem,9vw,10rem);align-items:start}
.direction-label{margin:0 0 2.2rem;font-family:Outfit,sans-serif;font-size:.78rem;letter-spacing:.16em;font-weight:500;line-height:1.5}
.direction-intro h2,.direction-hero h1{font-size:clamp(2rem,3.6vw,3.8rem);line-height:1.55;letter-spacing:-.035em;font-weight:500;margin:0}
.direction-intro-body{padding-top:3.5rem;max-width:35rem;font-size:clamp(.95rem,1.1vw,1.05rem);line-height:2}
.direction-intro-body p{margin:0 0 1.8rem}.direction-intro-body .direction-lead{font-size:clamp(1.15rem,1.5vw,1.5rem);line-height:1.8}
.direction-intro-body a,.direction-contact-link{display:inline-flex;align-items:center;gap:1.4rem;border-bottom:1px solid currentColor;padding:.8rem .1rem;color:inherit;text-decoration:none;font-family:Outfit,'Noto Sans JP',sans-serif;letter-spacing:.045em;transition:opacity .2s ease}
.direction-intro-body a:hover,.direction-contact-link:hover{opacity:.62}
.direction-page{min-width:0}.direction-page main{overflow:hidden}.direction-wrap{width:calc(100% - 2 * clamp(2rem,5vw,6rem))}
.direction-page .direction-hero{padding-top:clamp(10rem,16vw,17rem);padding-bottom:clamp(6rem,11vw,11rem)}
.direction-hero h1{max-width:22ch}.direction-hero>p:last-child{margin:3.5rem 0 0;font-size:clamp(1.05rem,1.5vw,1.4rem);line-height:1.9}
.direction-section{padding:clamp(5rem,9vw,9rem) 0;border-top:1px solid var(--direction-line)}
.direction-section h2{font-size:clamp(1.7rem,3vw,3.2rem);line-height:1.55;letter-spacing:-.025em;font-weight:500;margin:0 0 2.4rem}
.direction-reading{max-width:52rem;margin-left:max(clamp(2rem,5vw,6rem),calc((100vw - 80rem)/2))}.direction-reading p{max-width:39rem;line-height:2.05;font-size:clamp(1rem,1.2vw,1.14rem);margin:0 0 1.8rem}
.direction-list,.direction-deliverables,.direction-steps{list-style:none;margin:3.5rem 0 0;padding:0}
.direction-list{max-width:62rem}.direction-list li,.direction-deliverables li{display:grid;grid-template-columns:4.5rem 1fr;gap:1rem;border-top:1px solid var(--direction-line);padding:1.45rem 0;line-height:1.8}.direction-list li:last-child,.direction-deliverables li:last-child{border-bottom:1px solid var(--direction-line)}
.direction-list span,.direction-deliverables span{font-family:Outfit,sans-serif;color:var(--direction-muted);font-size:.8rem;letter-spacing:.1em;padding-top:.2rem}
.direction-outcome{text-align:center;padding-block:clamp(6rem,10vw,11rem)}.direction-outcome h2{margin:0;font-size:clamp(2rem,3.5vw,3.8rem)}
.direction-deliverables{max-width:68rem}.direction-deliverables li{padding:1.7rem 0}.direction-deliverables h3{font-family:Outfit,sans-serif;font-size:clamp(1.35rem,2vw,2rem);font-weight:500;letter-spacing:.025em;line-height:1.3;margin:0 0 .65rem}.direction-deliverables p{margin:0;line-height:1.8;color:var(--direction-muted)}
.direction-price h2{font-family:Outfit,'Noto Sans JP',sans-serif;font-size:clamp(2.8rem,6vw,6rem);letter-spacing:-.05em;white-space:nowrap;margin-bottom:.25rem}.direction-price h2 span{font-family:'Noto Sans JP',sans-serif;font-size:clamp(.85rem,1.3vw,1.15rem);letter-spacing:0;margin-left:.7rem}.direction-term{margin:0 0 3rem;color:var(--direction-muted)}.direction-price-note{font-size:clamp(1.1rem,1.6vw,1.5rem);line-height:1.8;max-width:43rem}
.direction-scope{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);margin-top:clamp(5rem,8vw,8rem)}.direction-scope>div{border-top:1px solid var(--direction-line);padding-top:1.5rem}.direction-scope h3{font-family:Outfit,sans-serif;letter-spacing:.1em;font-size:1rem;font-weight:500;margin:0 0 1.5rem}.direction-scope p{line-height:2;color:var(--direction-muted);margin:0 0 1rem}
.direction-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.direction-steps li{border-top:1px solid var(--direction-line);padding:1.1rem 0;line-height:1.8}.direction-steps span{display:block;font-family:Outfit,sans-serif;font-size:.87rem;letter-spacing:.06em;color:var(--direction-muted);margin-bottom:.7rem}.direction-next-copy{margin:3rem 0 0;line-height:1.9}
.direction-contact{text-align:center}.direction-contact h2{font-size:clamp(2rem,3.5vw,3.7rem);margin:0 auto 3rem}.direction-contact-copy{max-width:36rem;margin:0 auto 2.3rem;text-align:left;line-height:2}.direction-contact-copy p{margin:0 0 1.3rem}.direction-contact-link{font-size:1.15rem}.direction-review-note{max-width:38rem;margin:3rem auto 0;color:var(--direction-muted);font-size:.78rem;line-height:1.7}
@media(max-width:700px){
 .direction-intro{padding:5rem 1.65rem 5.5rem}.direction-intro-inner{display:block}.direction-intro-heading{text-align:center}.direction-label{font-size:.72rem;margin-bottom:1.5rem}.direction-intro h2{font-size:clamp(1.45rem,5.8vw,2rem);line-height:1.65;white-space:nowrap}.direction-intro-body{padding:2.6rem 0 0;max-width:31rem;margin:auto;font-size:.94rem;line-height:1.9}.direction-intro-body .direction-lead{font-size:1.12rem}.direction-intro-body a{margin-top:.2rem}
 .direction-wrap{width:calc(100% - 3.3rem)}.direction-page .direction-hero{padding-top:9rem;padding-bottom:6rem}.direction-hero h1{font-size:clamp(1.43rem,5.6vw,2.15rem);line-height:1.65;white-space:nowrap}.direction-hero>p:last-child{margin-top:2.5rem;font-size:1.02rem}.direction-section{padding:5rem 0}.direction-section h2{font-size:clamp(1.52rem,5.2vw,2.2rem);margin-bottom:2rem}.direction-reading{max-width:none;margin-inline:auto}.direction-reading p{font-size:.98rem;line-height:1.9;margin-bottom:1.5rem}.direction-list,.direction-deliverables{margin-top:2.5rem}.direction-list li,.direction-deliverables li{grid-template-columns:2.3rem 1fr;gap:.55rem;padding:1.25rem 0;font-size:.95rem}.direction-deliverables h3{font-size:1.25rem;overflow-wrap:anywhere}.direction-deliverables p{font-size:.9rem}.direction-outcome{padding-block:6rem}.direction-outcome h2{font-size:clamp(1.65rem,5.9vw,2.3rem)}.direction-price h2{font-size:clamp(2.6rem,11vw,3.9rem)}.direction-price h2 span{font-size:.86rem;margin-left:.35rem}.direction-price-note{font-size:1.06rem}.direction-scope{display:block;margin-top:4rem}.direction-scope>div+div{margin-top:3rem}.direction-steps{display:block;margin-top:2.3rem}.direction-steps li{display:grid;grid-template-columns:8.5rem 1fr;gap:.5rem}.direction-steps span{margin:0}.direction-contact-copy{font-size:.95rem}.direction-review-note{font-size:.73rem}
}

/* The outcome is one editorial beat leading into the seven decisions. */
.direction-outcome h2 span{display:block}
@media(max-width:700px){
 .direction-outcome{padding-block:4.6rem}
 .direction-outcome .direction-label{margin-bottom:1.35rem}
 .direction-outcome h2{font-size:clamp(1.56rem,5.5vw,2.1rem);line-height:1.58;letter-spacing:-.025em}
 .direction-outcome h2 span{white-space:nowrap}
 .direction-outcome+.direction-section{padding-top:3.8rem}
}

/* Present scope first; the fee is supporting company information. */
.direction-price h2{font-family:'Noto Sans JP',sans-serif;font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.025em;white-space:normal;margin-bottom:1.8rem}
.direction-fee-summary{margin:2.5rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--direction-line);max-width:43rem;font-size:.95rem;line-height:1.8}
.direction-fee-summary>div{display:grid;grid-template-columns:8rem 1fr;gap:1rem;margin:.35rem 0}
.direction-fee-summary dt{color:var(--direction-muted)}.direction-fee-summary dd{margin:0}
@media(max-width:700px){.direction-price h2{font-size:1.8rem}.direction-fee-summary{font-size:.9rem;margin-top:2rem}.direction-fee-summary>div{grid-template-columns:6rem 1fr;gap:.75rem}}

.direction-page .direction-hero{padding-top:4rem;padding-bottom:4rem}
.direction-hero h1{white-space:normal;max-width:21em;font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.55}
.direction-section{padding-block:clamp(3.5rem,6vw,6rem)}
.direction-deliverables h3,.direction-scope h3{font-family:'Noto Sans JP',sans-serif;letter-spacing:0;line-height:1.6}
.direction-scope{margin-top:2.5rem}
@media(max-width:700px){.direction-page .direction-hero{padding-top:3rem;padding-bottom:3rem}.direction-hero h1{white-space:normal;font-size:1.65rem;line-height:1.65}.direction-section{padding-block:3.5rem}.direction-deliverables h3{font-size:1.1rem}.direction-intro h2{white-space:normal}}
