/* Shared navigation: stronger typography and a 75% larger Deck8 mark. */
body.edition-25 .header .logo img { width:222.25px; }
body.edition-25 .header nav { font-family:Instrument,Arial,sans-serif; font-size:18px; font-weight:600; line-height:1.3; gap:32px; }
body.edition-25 .header nav a { position:relative; white-space:nowrap; }
body.edition-25 .header nav a:not(.nav-contact)::after { content:''; position:absolute; left:0; right:0; bottom:4px; height:1px; background:var(--yellow); transform:scaleX(0); transform-origin:left; transition:transform .25s; }
body.edition-25 .header nav a:is(:hover,:focus-visible)::after { transform:scaleX(1); }
body.edition-25 .header nav .nav-contact span { margin-left:16px; }
.edition-25 .hero-audience-24 { font-family:Instrument,Arial,sans-serif; font-size:30px; font-weight:400; line-height:1.35; letter-spacing:.015em; text-transform:uppercase; max-width:1100px; margin-bottom:30px; }

/* The client name and relationship length share the same type settings. */
.edition-25 .lasting-project-title { --collaboration-name-size:clamp(32px,3.1vw,49px); }
.edition-25 .lasting-project-title h3,.edition-25 .lasting-project-title .lasting-years { font-family:Instrument,Arial,sans-serif; font-size:var(--collaboration-name-size); font-weight:600; line-height:1.1; letter-spacing:-.045em; }

/* The signature gets the full width before the three working stages. */
.edition-25 .working-together .together-heading { display:block; }
.edition-25 .together-heading > p { max-width:760px; margin:32px 0 0 auto; font-size:21px; line-height:1.55; }
.edition-25 .working-together .working-steps { margin-top:64px; gap:clamp(28px,3.5vw,60px); }
.edition-25 .working-steps .working-step { min-width:0; padding-top:26px; }
.edition-25 .working-steps .working-step h3 { font-size:clamp(28px,2.5vw,39px); line-height:1.12; min-height:3.36em; margin-bottom:23px; }
.edition-25 .working-steps .working-step p { font-size:18px; line-height:1.65; max-width:420px; }
.edition-25 .working-steps .working-step .step-result { color:var(--yellow); font-size:14px; line-height:1.5; padding-top:18px; margin-top:22px; border-top:1px solid #44443c; }
.steps-enhanced .working-step { opacity:0; transform:translateY(24px); transition:opacity .65s ease,transform .65s cubic-bezier(.22,.7,.18,1); }
.steps-enhanced .working-step.is-visible { opacity:1; transform:none; }

/* A luminous invitation expands into a real reading area. */
.edition-25 .working-together .maieutic-note { margin-top:70px; border-color:#6d6548; position:relative; background:linear-gradient(120deg,#ffc30005,transparent 70%); transition:border-color .3s,background .3s; }
.edition-25 .maieutic-note summary { padding:32px 0; gap:32px; position:relative; }
.maieutic-label { display:block; }
.maieutic-eyebrow { display:block; font-size:15px; line-height:1.5; color:#c5c5bc; margin-bottom:9px; }
.edition-25 .maieutic-note summary strong { display:inline-block; font-size:clamp(34px,3.8vw,58px); line-height:1.1; letter-spacing:-.045em; color:var(--yellow); transition:text-shadow .3s; }
.edition-25 .maieutic-note .detail-plus { flex:0 0 56px; width:56px; height:56px; display:grid; place-items:center; border:1px solid #8b7951; border-radius:50%; color:var(--yellow); font-size:32px; transition:transform .35s,background .3s,box-shadow .3s; }
.edition-25 .maieutic-note:is(:hover,:focus-within,[open]) { border-color:var(--yellow); }
.edition-25 .maieutic-note summary:is(:hover,:focus-visible) strong { text-shadow:0 0 18px #ffc30065,0 0 40px #ffc30030; }
.edition-25 .maieutic-note summary:is(:hover,:focus-visible) .detail-plus { background:#ffc30015; box-shadow:0 0 24px #ffc30022; }
@supports (-webkit-background-clip:text) {
 .edition-25 .maieutic-note summary:is(:hover,:focus-visible) strong { background-image:linear-gradient(105deg,#ffc300 35%,#fff8d4 48%,#ffc300 61%); background-size:220% 100%; background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; animation:maieutic-light 1.2s ease-out both; }
}
@keyframes maieutic-light { from { background-position:100% 0; } to { background-position:0 0; } }
.maieutic-body { display:grid; grid-template-columns:1fr 1.35fr; gap:8%; padding:32px 0 52px; border-top:1px solid #635c3b; }
.maieutic-body .maieutic-lead { font-size:clamp(29px,3.1vw,46px); line-height:1.16; letter-spacing:-.035em; color:var(--paper); }
.maieutic-lead span { color:var(--yellow); }
.maieutic-explanation { max-width:730px; }
.maieutic-explanation p { font-size:21px; line-height:1.7; color:#d1d1c7; }
.maieutic-explanation .maieutic-closing { color:var(--yellow); font-size:23px; line-height:1.4; margin-top:30px; }
.maieutic-note[open] .maieutic-body > * { animation:maieutic-unfold .6s both; }
.maieutic-note[open] .maieutic-explanation { animation-delay:.12s; }
@keyframes maieutic-unfold { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }

@media(min-width:801px) {
 body.edition-25 .method-signature { font-size:clamp(64.75px,8.225vw,122.5px); line-height:1.08; }
}
@media(max-width:1100px) {
 body.edition-25 .header nav { font-size:16px; gap:24px; }
 .edition-25 .lasting-project-title { --collaboration-name-size:32px; }
}
@media(max-width:1000px) {
 body.edition-25 .header nav { display:none; }
 body.edition-25 .header .menu-toggle { display:block; margin-left:auto; }
 body.edition-25 .mobile-menu { position:fixed; }
 .edition-25 .working-steps .working-step h3 { font-size:27px; }
 .edition-25 .working-steps .working-step p { font-size:17px; }
}
@media(max-width:800px) {
 body.edition-25 .header .logo img { width:196px; }
 .edition-25 .hero-audience-24 { font-size:26px; max-width:660px; margin-bottom:26px; }
 .edition-25 .together-heading > p { font-size:18px; margin-top:28px; }
 .maieutic-body { grid-template-columns:1fr; gap:26px; padding-top:28px; padding-bottom:36px; }
 .maieutic-explanation p { font-size:19px; line-height:1.65; }
 .maieutic-explanation .maieutic-closing { font-size:21px; }
}
@media(max-width:700px) {
 .edition-25 .lasting-project-title { --collaboration-name-size:clamp(30px,7.6vw,44px); }
 .edition-25 .working-together .working-steps { grid-template-columns:1fr; gap:34px; margin-top:40px; }
 .edition-25 .working-steps .working-step { grid-template-columns:56px minmax(0,1fr); gap:0 18px; }
 .edition-25 .working-steps .working-step h3 { min-height:0; font-size:28px; margin-bottom:18px; }
 .edition-25 .working-steps .working-step p { max-width:none; font-size:17px; grid-column:2; }
 .edition-25 .working-steps .working-step .step-result { grid-column:2; font-size:14px; margin-top:18px; }
 .edition-25 .working-together .maieutic-note { margin-top:48px; }
 .edition-25 .maieutic-note summary { padding:27px 0; gap:18px; }
 .maieutic-eyebrow { font-size:13px; }
 .edition-25 .maieutic-note .detail-plus { flex-basis:44px; width:44px; height:44px; font-size:26px; }
}
@media(max-width:540px) {
 body.edition-25 .header .logo img { width:171.5px; }
}
@media(max-width:400px) {
 .edition-25 .hero-audience-24 { font-size:24px; max-width:none; }
}
@media(max-width:360px) {
 body.edition-25 .header .logo img { width:150.5px; }
}
@media(prefers-reduced-motion:reduce) {
 .steps-enhanced .working-step { opacity:1; transform:none; transition:none; }
 .edition-25 .maieutic-note *, .maieutic-note[open] .maieutic-body > * { animation:none !important; transition:none !important; }
}
.visuals-still .steps-enhanced .working-step { opacity:1; transform:none; transition:none; }
.visuals-still .maieutic-note * { animation:none !important; }
@media print { .steps-enhanced .working-step { opacity:1; transform:none; } }
