/* D1's full page. The approved hero is deliberately outside this scope. */
.d1-page{background:var(--hero);color:var(--ink)}
.d1-page section{padding-block:104px}
.d1-page h2{font-size:clamp(2.5rem,4.2vw,3.6rem);line-height:1.06;letter-spacing:-.025em;margin:0;text-wrap:balance}
.d1-page p{font-size:1rem;line-height:1.75;color:var(--slate);margin:20px 0 0}
.d1-page h3{margin:0;font-size:1.15rem;line-height:1.4;letter-spacing:-.025em}
.d1-page .d1-playbook{background:var(--paper);padding-block:76px}
.d1-split{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:center}
.d1-copy p{max-width:38ch;margin-block:24px 30px}
.d1-copy .playbook-cta{gap:18px}
.d1-book-stage{min-height:430px;display:grid;place-items:center;text-decoration:none;isolation:isolate}
.d1-book{position:relative;width:282px;min-height:358px;padding:28px 28px 28px 36px;background:var(--white);border-left:7px solid #d9d0bf;box-shadow:12px 20px 28px #24283420,2px 3px 0 #d7cebc;transform:rotate(7deg);display:flex;flex-direction:column;gap:30px;color:var(--ink)}
.d1-book img{width:108px;height:auto}
.d1-book-title{font:500 3rem/.94 Newsreader,Georgia,serif;letter-spacing:-.035em}
.d1-book-title em{color:var(--blue)}
.d1-book-sub{font-size:.75rem;line-height:1.6}
.d1-book-loop{position:absolute;bottom:21px;right:23px;font:400 3.5rem/1 Georgia,serif;color:var(--blue)}
.d1-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;list-style:none;padding:0;margin:58px 0 0}
.d1-step-number{display:block;font:500 2.3rem/1 Newsreader,Georgia,serif;color:var(--blue);margin-bottom:26px}
.d1-steps p{margin-top:13px;max-width:30ch}
.d1-page .d1-example{background:var(--white)}
.d1-example-heading{margin-bottom:48px}
.d1-example-heading p{margin-top:20px}
.d1-example-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.d1-example figure{margin:0}
.d1-example figure img{display:block;width:100%;height:420px;object-fit:cover;object-position:center 58%}
.d1-example figcaption{font-size:.75rem;color:var(--slate);margin-top:12px}
.d1-example-story{display:grid;gap:34px;max-width:40ch}
.d1-example-story h3{font:500 1.9rem/1.15 Newsreader,Georgia,serif;letter-spacing:-.02em}
.d1-example-story p{margin-top:10px}
.d1-loop{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:58px;padding:24px 0;font-size:1rem;border-block:1px solid var(--line)}
.d1-loop b{font-weight:400;color:var(--blue);font-size:1.5rem}
.d1-loop .d1-loop-return{font-size:2rem}
.d1-team-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:80px}
.d1-people{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.d1-people h3{font:500 2.5rem/1.1 Newsreader,Georgia,serif}
.d1-people .d1-role{margin-top:8px;color:var(--blue);font-size:.875rem}
.d1-people article>p:last-child{max-width:28ch}
.d1-page .d1-faq{padding-top:20px}
.d1-faq-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:80px}
.d1-faq h2{font-size:clamp(2.2rem,3.5vw,3rem)}
.d1-questions details{border-bottom:1px solid var(--line)}
.d1-questions details:first-child{border-top:1px solid var(--line)}
.d1-questions summary{list-style:none;cursor:pointer;padding:23px 30px 23px 0;position:relative;font-size:1rem;font-weight:700;line-height:1.5}
.d1-questions summary::-webkit-details-marker{display:none}
.d1-questions summary:after{content:'+';position:absolute;right:0;top:21px;color:var(--blue);font-size:1.4rem;font-weight:400}
.d1-questions details[open] summary:after{content:'−'}
.d1-questions details p{margin:0;padding:0 20px 24px 0}
.d1-page .d1-close{background:var(--paper);text-align:center;padding-block:90px}
.d1-close h2{font-size:clamp(3rem,5.5vw,4.8rem)}
.d1-close h2 em{color:var(--blue)}
.d1-close p{max-width:49ch;margin:24px auto 30px}
.d1-footer{display:flex;align-items:center;gap:32px;padding-block:34px;font-size:.8125rem}
.d1-footer>a:first-child{margin-right:auto}
.d1-footer img{display:block;width:140px;height:auto}
.review-footer[hidden]{display:none}
@media(max-width:800px){.d1-page section{padding-block:72px}.d1-split{gap:30px}.d1-book{width:240px;min-height:330px;padding:26px}.d1-book-title{font-size:2.7rem}.d1-book-stage{min-height:390px}.d1-steps{gap:28px}.d1-example-grid{gap:36px}.d1-example figure img{height:380px}.d1-team-grid,.d1-faq-grid{gap:36px;grid-template-columns:1fr 1.3fr}.d1-people{gap:24px}.d1-loop{gap:10px;font-size:.875rem}}
@media(max-width:600px){.d1-page section{padding-block:60px}.d1-page h2{font-size:2.5rem}.d1-split,.d1-example-grid,.d1-team-grid,.d1-faq-grid{grid-template-columns:1fr;gap:36px}.d1-page .d1-playbook{padding-block:56px 30px}.d1-copy p{margin-block:20px 24px}.d1-copy .playbook-cta{width:auto;max-width:100%;padding-inline:16px;font-size:.875rem}.d1-book-stage{min-height:350px}.d1-book{width:240px;min-height:310px;gap:25px}.d1-steps{grid-template-columns:1fr;gap:32px;margin-top:36px}.d1-steps li{position:relative;padding-left:51px}.d1-step-number{position:absolute;left:0;top:2px;font-size:1.7rem}.d1-steps p{max-width:40ch;margin-top:8px}.d1-example-heading{margin-bottom:32px}.d1-example figure img{height:340px}.d1-example-story{gap:28px}.d1-loop{margin-top:32px;display:grid;grid-template-columns:1fr auto 1fr;gap:12px 8px;text-align:center;padding:24px 0}.d1-loop b:nth-child(4),.d1-loop b:nth-child(8){grid-column:1/-1;transform:rotate(90deg)}.d1-loop-return{grid-column:2}.d1-people{gap:30px}.d1-people h3{font-size:2.2rem}.d1-people p{font-size:.9375rem}.d1-page .d1-faq{padding-top:0}.d1-page .d1-close{padding-block:64px}.d1-close h2{font-size:3.3rem}.d1-footer{gap:20px;flex-wrap:wrap;padding-block:28px}.d1-footer>a:first-child{flex-basis:100%}.d1-faq h2{font-size:2.4rem}}

.d1-copy h2{max-width:19ch}
.d1-example figure img{object-position:center 20%}
@media(max-width:360px){.d1-people{grid-template-columns:1fr}.d1-people article>p:last-child{max-width:36ch}.d1-page h2{font-size:2.2rem}.d1-book{width:220px}}
@media(max-width:360px){.d1-book-title{font-size:2.35rem}.d1-book{padding:24px 20px 24px 26px}.d1-book-loop{right:16px;font-size:2.8rem}}

.d1-portrait{display:block;width:100%;height:auto;aspect-ratio:10/11;object-fit:cover;margin-bottom:24px}

/* Full team: names and roles, with temporary portrait silhouettes. */
.d1-team-grid{grid-template-columns:1fr;gap:44px}
.d1-people{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.d1-people h3{font-size:2.1rem}
.d1-people .d1-role{max-width:none;line-height:1.5}
@media(max-width:900px){.d1-people{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}}
@media(max-width:600px){.d1-team-grid{gap:32px}.d1-people{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.d1-people h3{font-size:1.9rem}.d1-portrait{margin-bottom:18px}.d1-people .d1-role{font-size:.8125rem}}

/* End-to-end scope: one promise, three workstreams, one connected loop. */
.d1-scope-intro>p{max-width:62ch;margin-top:26px}
.d1-scope-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center;margin-top:52px}
.d1-scope-rows{display:grid;gap:34px}
.d1-scope-rows h3{font:500 1.9rem/1.15 Newsreader,Georgia,serif;letter-spacing:-.02em}
.d1-scope-rows p{margin-top:12px;max-width:50ch}
.d1-scope-map{position:relative;margin:0;padding:0 40px;text-align:center;max-width:360px;width:100%;justify-self:center}
.d1-scope-map ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:22px}
.d1-scope-map li{position:relative;font-size:1rem;line-height:1.6}
.d1-scope-map li:not(:last-child):after{content:'↓';position:absolute;top:26px;left:50%;transform:translateX(-50%);color:var(--blue);font-size:.875rem;line-height:20px}
.d1-scope-map li:first-child,.d1-scope-map li:last-child{color:var(--blue);font-weight:700}
.d1-scope-return{position:absolute;right:20px;top:12px;height:240px;width:78px;border:1px solid var(--blue);border-left:0;border-radius:0 18px 18px 0;opacity:.65}
.d1-scope-return:before{content:'';position:absolute;left:0;top:-4px;width:7px;height:7px;border-left:1px solid var(--blue);border-bottom:1px solid var(--blue);transform:rotate(45deg)}
.d1-scope-map figcaption{font-size:.8125rem;line-height:1.5;color:var(--slate);margin-top:26px}
.d1-scope-numbers{margin-top:52px;background:var(--paper);padding:26px 32px;display:grid;grid-template-columns:1fr 1.6fr;gap:32px;align-items:center}
.d1-scope-numbers h3{font-size:1rem;line-height:1.5}
.d1-scope-numbers p{margin:0;font-size:.9375rem;max-width:60ch}
@media(max-width:800px){.d1-scope-layout{gap:32px;grid-template-columns:1.2fr .8fr}.d1-scope-map{padding:0 20px}.d1-scope-return{right:0;width:40px}.d1-scope-numbers{gap:24px}}
@media(max-width:600px){.d1-scope-intro h2 br{display:none}.d1-scope-intro h2{max-width:21ch}.d1-scope-layout{grid-template-columns:1fr;gap:44px;margin-top:36px}.d1-scope-rows{gap:28px}.d1-scope-rows h3{font-size:1.7rem}.d1-scope-rows p{margin-top:10px}.d1-scope-map{max-width:310px;padding:0 40px}.d1-scope-return{right:20px;width:65px}.d1-scope-numbers{grid-template-columns:1fr;gap:10px;padding:24px;margin-top:36px}}

/* D1 navigation keeps the approved hero below it intact. */
.site-head{position:relative;z-index:5}
.d1-header-controls[hidden]{display:none}
.d1-navigation{display:flex;align-items:center;gap:28px}
.d1-navigation>a{font-size:.875rem;font-weight:700;text-decoration:none;white-space:nowrap;color:var(--ink)}
.d1-navigation>a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:5px}
.d1-navigation .prototype-cta{font-size:.8125rem;min-height:44px;padding:12px 16px;white-space:nowrap}
.d1-menu-toggle{display:none}
@media(max-width:900px){
 .d1-menu-toggle{display:flex;align-items:center;gap:16px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);font:700 .875rem/1.4 Manrope,Arial,sans-serif;cursor:pointer}
 .d1-menu-toggle span{color:var(--blue);font-size:1.3rem;font-weight:400;transition:transform 160ms ease}
 .d1-menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}
 .d1-navigation{display:none;position:absolute;left:var(--gutter);right:var(--gutter);top:calc(100% - 8px);padding:20px;background:var(--white);border:1px solid var(--line);border-radius:5px;box-shadow:0 12px 24px #24283412;gap:4px;align-items:stretch}
 .d1-menu-toggle[aria-expanded=true]+.d1-navigation{display:flex;flex-direction:column}
 .d1-navigation>a{display:block;padding:12px 4px;min-height:44px}
 .d1-navigation .prototype-cta{margin-top:12px;white-space:normal}
}
