/* Shared editorial layout. One container width and spacing scale for every page. */
:root{--page-width:1360px;--page-pad:max(5vw,calc((100vw - var(--page-width))/2));--section-space:84px;--edge:var(--page-pad)}
.site-header{padding-inline:var(--page-pad)}
.site-section{padding:var(--section-space) var(--page-pad);margin:0;max-width:none}
.editorial-entry{padding-top:66px;padding-bottom:0}
.editorial-entry-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:70px;align-items:end}
.editorial-entry h1,.home-v3 h1{font:500 clamp(2.65rem,3.6vw,3.6rem)/1.08 var(--serif);letter-spacing:-.035em;max-width:780px;margin:0;text-wrap:pretty}
.editorial-entry .eyebrow{font-size:.7rem;letter-spacing:.12em;margin-bottom:24px}
.editorial-entry-copy p{font-size:1rem;line-height:1.7;color:var(--home-muted);margin:0 0 22px}
.editorial-entry-copy p.entry-lead{font-size:1.1rem;color:var(--ink);line-height:1.55}
.editorial-entry-copy>a{margin-top:5px;display:inline-block}
.editorial-entry-image{margin:42px 0 0;position:relative}
.editorial-entry-image img{width:100%;height:370px;object-fit:cover;object-position:center 48%;border-radius:0 54px 0 0}
.editorial-entry-image figcaption{position:absolute;bottom:0;left:0;padding:16px 24px;background:var(--coral);color:#fff;font-size:.85rem;line-height:1.6}
.home-v3 h2,.about-entry~section h2{font:500 clamp(2rem,2.5vw,2.65rem)/1.15 var(--serif);letter-spacing:-.03em}
.editorial-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:70px;align-items:end;margin-bottom:38px}
.editorial-section-head h2{margin:0;max-width:720px}
.editorial-section-head>p,.editorial-section-head>div>p:not(.eyebrow){margin:0;color:var(--home-muted);font-size:1rem;line-height:1.75;max-width:520px}
.editorial-section-head>div>a{display:inline-block;margin-top:20px}
.home-service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-bottom:25px}
.home-service-cards img{width:100%;height:265px;object-fit:cover;border-radius:0 40px 0 0;margin-bottom:24px}
.home-service-cards article>span{font-size:.68rem;color:var(--coral)}
.home-v3 .home-service-cards h3{font-size:1.4rem;line-height:1.3;margin:12px 0 18px;min-height:2.6em;max-width:340px}
.home-service-cards p{font-size:.95rem;line-height:1.75;color:var(--home-muted);margin:0}
.home-v3 .v2-button{background:var(--coral);color:#fff}
.home-owned{background:var(--ink);color:var(--paper)}
.home-owned .editorial-section-head>div>p:not(.eyebrow){color:#c5ced0}
.home-owned-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #53636a}
.home-owned-grid article{padding:25px 23px;border-right:1px solid #53636a;min-width:0}
.home-owned-grid article:last-child{border-right:0}
.home-owned-grid article>span{font-size:.65rem;color:var(--blue)}
.home-v3 .home-owned-grid h3{font-size:1.2rem;line-height:1.3;min-height:2.6em;margin:26px 0 18px}
.home-owned-grid p{font-size:.85rem;line-height:1.7;margin:0;color:#c5ced0}
.home-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.home-proof-grid>article{border:1px solid var(--home-border);display:flex;flex-direction:column;min-width:0}
.home-proof-path{padding:26px 30px;background:var(--home-warm-card);min-height:128px}
.home-proof-grid>article+article .home-proof-path{background:var(--home-soft-blue)}
.home-proof-path>span{font-size:.7rem;color:var(--home-muted);display:block;margin-bottom:15px}
.home-proof-path>b{font-size:1rem;font-weight:500;line-height:1.7}.home-proof-path i{font-style:normal;color:var(--coral);padding:0 8px}
.home-proof-body{padding:30px;display:flex;flex-direction:column;flex:1}
.home-v3 .home-proof-body h3{font-size:1.5rem;line-height:1.35;margin:0 0 26px;max-width:470px}
.home-proof-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-block:22px;border-block:1px solid var(--home-border)}
.home-proof-metrics strong{display:block;font:500 2rem/1.2 var(--serif);color:var(--coral)}
.home-proof-metrics span{display:block;font-size:.75rem;line-height:1.6;margin-top:8px;color:var(--home-muted)}
.home-proof-body>p{font-size:.95rem;line-height:1.75;color:var(--home-muted);margin:24px 0}
.home-proof-body>a{align-self:flex-start;margin-top:auto}
.home-experience,.about-method-summary,.home-start{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:70px;align-items:start}
.home-experience{border-top:1px solid var(--home-border)}
.home-experience h2,.about-method-summary h2,.home-start h2{margin:0}
.home-experience>div>p:not(.eyebrow),.about-method-summary>div>p,.home-start>div>p:not(.eyebrow){font-size:1rem;line-height:1.75;color:var(--home-muted);margin:0 0 24px}
.home-testimonials{padding:var(--section-space) var(--page-pad)}
.home-start{background:var(--coral);color:#fff}
.home-start>div>p:not(.eyebrow){color:#fff}
.home-start .eyebrow:before{color:#fff}
.home-v3 .home-start .v2-button,.home-start .v2-button{background:var(--paper);color:var(--ink)}
/* All inner-page content uses the same outside edges as Home. */
.framework-hero,.framework-map-section,.framework-principles,.framework-stages,.framework-compound,.framework-end,.cases-intro,.cases-pathways,.case-detail,.case-common-method,.cases-review,.work-entry,.work-review,.work-proposal,.work-delivery,.work-testimonial,.work-faq,.work-request,.contact-entry,.contact-enquiry-layout,.insights-entry,.insights-featured-v2,.insights-index-v2{padding-inline:var(--page-pad);max-width:none;margin-inline:0}
.framework-hero,.framework-map-section,.framework-principles,.framework-stages,.framework-compound,.framework-end,.cases-intro,.cases-pathways,.case-detail,.case-common-method,.cases-review,.work-entry,.work-review,.work-proposal,.work-delivery,.work-testimonial,.work-faq,.work-request,.insights-entry,.insights-featured-v2,.insights-index-v2{padding-block:var(--section-space)}
.about-origin,.founder-story,.about-paul-voice,.founder-project,.about-method-summary{padding:var(--section-space) var(--page-pad);margin:0;max-width:none}
.about-origin{border-bottom:1px solid var(--home-border)}
.founder-story{display:grid;grid-template-columns:190px minmax(0,1fr);gap:60px;align-items:start}
.founder-number{display:none}
.founder-portrait{margin:0;width:190px;max-width:100%}
.founder-portrait img{width:190px;height:240px;object-fit:cover}
.founder-copy{grid-column:auto;max-width:900px}
.founder-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8}
.founder-copy h2{margin-bottom:30px}
.founder-project{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:54px;background:var(--paper);align-items:center}
.founder-project-media{min-height:0;align-self:center}
.founder-project-media video{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:contain;background:var(--ink)}
.founder-project-copy{padding:0;background:transparent}
.founder-project-copy p:not(.eyebrow){font-size:.95rem;line-height:1.8}
.about-paul-voice{grid-template-columns:minmax(0,.45fr) minmax(0,1.55fr);gap:60px}
.about-method-summary{border-top:1px solid var(--home-border)}
.unified-footer{padding-inline:var(--page-pad)}
@media(min-width:1800px){.editorial-entry-image img{height:410px}}
@media(max-width:1050px){.editorial-entry-grid,.editorial-section-head,.home-experience,.about-method-summary,.home-start{gap:40px}.editorial-entry h1,.home-v3 h1{font-size:2.75rem}.home-service-cards{gap:20px}.home-service-cards img{height:210px}.home-owned-grid article{padding:22px 14px}.home-proof-body{padding:24px}.home-proof-metrics{gap:12px}.home-proof-metrics strong{font-size:1.8rem}}
@media(max-width:800px){.editorial-entry-grid,.editorial-section-head,.home-experience,.about-method-summary,.home-start{grid-template-columns:1fr;gap:28px}.editorial-entry h1,.home-v3 h1{max-width:650px}.editorial-entry-copy{max-width:650px}.home-owned-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-owned-grid article{border-bottom:1px solid #53636a;padding:24px}.home-owned-grid article:last-child{grid-column:1/-1;border-bottom:0}.home-owned-grid article:nth-child(even){border-right:0}.home-service-cards{grid-template-columns:1fr}.home-service-cards article{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.home-service-cards img{grid-row:1/4;height:240px;margin:0}.home-service-cards article>span{align-self:end}.home-v3 .home-service-cards h3{min-height:0}.home-proof-grid,.founder-project{grid-template-columns:1fr}.founder-story{grid-template-columns:150px minmax(0,1fr);gap:30px}.founder-portrait,.founder-portrait img{width:150px}.founder-portrait img{height:195px}.about-paul-voice{grid-template-columns:1fr;gap:24px}}
@media(max-width:640px){:root{--page-pad:22px;--section-space:60px}.site-header{height:78px}.editorial-entry{padding-top:48px;padding-bottom:0}.editorial-entry h1,.home-v3 h1{font-size:2.4rem;line-height:1.12}.editorial-entry h1 br{display:none}.editorial-entry h1 br:after{content:' '}.editorial-entry h1 em{display:inline}.editorial-entry-grid{gap:25px}.editorial-entry-copy p.entry-lead{font-size:1.03rem}.editorial-entry-copy p{font-size:.95rem}.editorial-entry-image{margin-top:32px}.editorial-entry-image img{height:260px;border-radius:0 32px 0 0;object-position:65% center}.editorial-entry-image figcaption{font-size:.74rem;padding:11px 14px;max-width:95%}.home-v3 h2,.about-entry~section h2{font-size:2rem;line-height:1.17}.editorial-section-head{margin-bottom:28px}.home-service-cards{gap:34px}.home-service-cards article{display:block}.home-service-cards img{height:230px;margin-bottom:19px}.home-v3 .home-service-cards h3{font-size:1.35rem;min-height:0;margin:10px 0 14px}.home-owned-grid article{padding:22px 16px}.home-v3 .home-owned-grid h3{font-size:1.1rem;margin-top:18px}.home-proof-path{padding:22px;min-height:0}.home-proof-body{padding:24px 22px}.home-proof-metrics{gap:10px}.home-proof-metrics strong{font-size:1.65rem}.home-proof-metrics span{font-size:.7rem}.home-testimonials{padding:60px 22px}.founder-story{grid-template-columns:1fr}.founder-portrait{width:140px}.founder-portrait img{width:140px;height:175px}.founder-copy{grid-column:auto}.founder-project{gap:28px}.about-paul-voice{gap:20px}.contact-enquiry-layout{padding-bottom:60px}}
.editorial-entry-grid{align-items:start}.editorial-entry-copy{padding-top:37px}.editorial-entry-image img{object-position:center 30%}
@media(max-width:800px){.editorial-entry-copy{padding-top:0}}
@media(max-width:640px){.editorial-entry-image img{object-position:65% 30%}}

/* Founder biography: aligned heading, restrained portrait and two equal text columns. */
.founder-story.founder-profile{display:block}
.founder-profile-head{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:60px;align-items:start;padding-bottom:34px;border-bottom:1px solid var(--home-border);margin-bottom:32px}
.founder-profile-head h2{max-width:720px;margin:0}
.founder-profile .founder-portrait,.founder-profile .founder-portrait img{width:160px}
.founder-profile .founder-portrait img{height:190px;object-fit:cover}
.founder-profile .founder-portrait figcaption{font-size:.8rem;margin-top:12px;line-height:1.6}
.founder-profile .founder-portrait figcaption span{font-size:.7rem;letter-spacing:0}
.founder-biography{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px}
.founder-biography p{font-size:1rem;line-height:1.8;color:var(--home-muted);margin:0 0 22px}
.founder-profile>blockquote{font:500 1.15rem/1.7 var(--serif);padding:22px 28px;margin:14px 0 0;border-left:3px solid var(--coral);background:var(--home-warm-card);max-width:none}
/* The same prominent testimonial treatment on About and Work With Us. */
.quote-section{display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,1.55fr);gap:60px;background:var(--home-warm-card);border-block:1px solid var(--home-border);padding:var(--section-space) var(--page-pad)}
.quote-section-heading h2,.home-v3 .home-testimonials h2{font:500 clamp(2rem,2.5vw,2.65rem)/1.15 var(--serif);letter-spacing:-.03em;margin:0 0 25px}
.testimonial-mark{display:block;color:var(--coral);font:500 5.2rem/.8 var(--serif);height:58px}
.quote-section blockquote{margin:0;padding:0;max-width:none;border:0}
.quote-section blockquote>p{font:400 clamp(1.08rem,1.3vw,1.25rem)/1.8 var(--serif);letter-spacing:0;color:var(--ink);margin:0 0 12px}
.testimonial-mark-close{text-align:right;margin:0 0 20px}
.quote-section footer{display:flex;flex-direction:column;gap:7px;padding-top:22px;border-top:2px solid var(--coral);font-size:.85rem;line-height:1.6}
.quote-section footer strong{font-size:.95rem}.quote-section footer>span{color:var(--home-muted)}
/* Case identities are visible before the detailed narrative begins. */
.case-detail-heading.case-section-banner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:70px;padding:60px var(--page-pad);background:var(--ink);color:var(--paper);border:0;margin-block:0;scroll-margin-top:96px}
.case-section-identity>span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.case-detail-heading .case-section-identity h2{font:500 clamp(2.4rem,3.3vw,3.5rem)/1.1 var(--serif);margin:18px 0;letter-spacing:-.035em}
.case-section-identity p{font-size:1rem;margin:0 0 12px;color:inherit}.case-section-identity small{font-size:.8rem;color:#c5ced0}
.case-section-summary h3{font:500 clamp(1.6rem,2vw,2rem)/1.3 var(--serif);margin:0 0 22px;color:inherit;max-width:650px}
.case-section-summary p{font-size:1rem;line-height:1.8;margin:0 0 22px;color:#c5ced0}
.case-section-summary>a{font-size:.8rem;border-bottom:1px solid;padding-bottom:4px;display:inline-block}
.case-detail-heading.case-b-heading{background:var(--home-warm-card);color:var(--ink);border-top:5px solid var(--coral)}
.case-b-heading .case-section-identity>span{color:var(--coral)}
.case-b-heading .case-section-identity small,.case-b-heading .case-section-summary p{color:var(--home-muted)}
/* Featured articles keep a generous title column, including on large screens. */
.insights-featured-v2{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}
.insight-featured-copy{min-width:0}
.insight-featured-copy h2{font-size:clamp(1.75rem,2vw,2.1rem);line-height:1.25;max-width:none;text-wrap:pretty;overflow-wrap:normal;word-break:normal}
.insight-search-art{padding:26px;border-radius:0 36px 0 0}
@media(max-width:800px){.founder-biography{gap:30px}.quote-section{grid-template-columns:1fr;gap:24px}.quote-section-heading{display:flex;justify-content:space-between;align-items:start}.quote-section-heading h2{margin:0}.case-detail-heading.case-section-banner{grid-template-columns:1fr;gap:30px}.insights-featured-v2{grid-template-columns:1fr;gap:30px}}
@media(max-width:640px){.founder-profile-head{grid-template-columns:minmax(0,1fr) 96px;gap:20px}.founder-profile-head h2{font-size:1.8rem}.founder-profile .founder-portrait,.founder-profile .founder-portrait img{width:96px}.founder-profile .founder-portrait img{height:120px}.founder-profile .founder-portrait figcaption{font-size:.72rem}.founder-profile .founder-portrait figcaption span{font-size:.62rem}.founder-biography{grid-template-columns:1fr;gap:0}.founder-profile>blockquote{font-size:1.05rem;padding:20px}.quote-section blockquote>p{font-size:1.05rem;line-height:1.8}.testimonial-mark{font-size:4.6rem;height:48px}.quote-section-heading h2{font-size:2rem}.case-detail-heading.case-section-banner{padding-block:44px;scroll-margin-top:78px}.case-detail-heading .case-section-identity h2{font-size:2.6rem}.insight-featured-copy h2{font-size:1.75rem}.insight-search-art{padding:22px}}
#founder,#testimonials,#featured{scroll-margin-top:115px}@media(max-width:640px){#founder,#testimonials,#featured{scroll-margin-top:96px}}
.founder-story.founder-profile{background:var(--paper);color:var(--ink)}
.founder-profile-head{grid-template-columns:minmax(0,1fr) 140px;gap:60px}
.founder-profile .founder-portrait,.founder-profile .founder-portrait img{width:140px}.founder-profile .founder-portrait img{height:170px}
.founder-profile .founder-portrait figcaption{color:var(--ink)}.founder-profile .founder-portrait figcaption span{color:var(--home-muted)}
.founder-introduction{max-width:930px;margin-top:26px}.founder-introduction p{font-size:1rem;line-height:1.8;color:var(--home-muted);margin:0}
.founder-biography blockquote{font:500 1.05rem/1.8 var(--serif);color:var(--ink);background:var(--home-warm-card);padding:20px 24px;margin:26px 0 0;border-left:3px solid var(--coral)}
@media(max-width:640px){.founder-profile-head{grid-template-columns:minmax(0,1fr) 96px;gap:18px}.founder-profile .founder-portrait,.founder-profile .founder-portrait img{width:96px}.founder-profile .founder-portrait img{height:120px}.founder-introduction{margin-top:22px}.founder-profile-head h2{font-size:1.65rem}.founder-introduction p{font-size:.95rem}.founder-biography blockquote{margin:22px 0}}
@media(max-width:640px){.founder-profile-head>div{display:contents}.founder-profile-head .eyebrow{grid-column:1;grid-row:1;margin-bottom:0}.founder-profile-head h2{grid-column:1;grid-row:2}.founder-profile-head .founder-portrait{grid-column:2;grid-row:1/3}.founder-profile-head .founder-introduction{grid-column:1/-1;grid-row:3;margin-top:8px}}
.testimonial-mark,.home-testimonial-cards .quote-mark{font-family:Georgia,'Times New Roman',serif;font-style:normal}

/* Reserve the evidence image height so case anchor links do not jump as it loads. */
.case-content-proof img{aspect-ratio:1536 / 1024;height:auto}
html{scroll-behavior:auto}

/* Article containers own their gutters; do not reuse viewport-wide section padding
   inside an already capped reading container (which collapsed titles on large screens). */
.insight-article-page{--article-gutter:clamp(22px,4vw,64px)}
.insight-article-header{width:min(1100px,calc(100% - 2 * var(--article-gutter)));max-width:none;margin:0 auto;padding:64px 0 44px;min-width:0}
.insight-article-header h1{width:100%;max-width:none;font-size:clamp(2.2rem,2.65vw,3.2rem);line-height:1.14;word-break:normal;overflow-wrap:normal;hyphens:none;text-wrap:pretty}
.insight-article-image{width:min(1100px,calc(100% - 2 * var(--article-gutter)));max-width:none;margin:0 auto 54px;padding:0}
@media(max-width:640px){.insight-article-header{padding:48px 0 32px}.insight-article-header h1{font-size:2.2rem}}

/* Keep meaningful short phrases together, without forcing the whole title onto one line. */
.keep-phrase{display:inline-block;white-space:nowrap}
.founder-profile-head h2{max-width:none}
/* Quotation marks belong with the quoted text, not under the separate section heading. */
.quote-section .testimonial-mark-open{font-size:4rem;line-height:1;height:36px;margin:0 0 10px}
.quote-section .testimonial-mark-close{font-size:4rem;line-height:1;height:36px;margin:0 0 20px}
.quote-section blockquote>p{margin-bottom:8px}
/* All four testimonials use the same compact marks next to the quotation. */
.home-testimonial-cards .quote-mark{font-size:4rem;line-height:1;height:36px;flex:none;margin:0 0 8px}
.home-testimonial-cards blockquote>p{margin:0 0 8px}
.home-testimonial-cards .quote-mark-close{margin:0 0 20px;align-self:flex-end}
#strategic-map{scroll-margin-top:115px}@media(max-width:640px){#strategic-map{scroll-margin-top:96px}}

.analytics-preferences{border:1px solid var(--line);padding:24px;margin:24px 0;background:var(--paper)}.analytics-preferences p{margin:0 0 16px}.analytics-preferences button{font:inherit;font-size:.86rem;border:1px solid var(--ink);padding:10px 15px;background:transparent;color:var(--ink);margin:0 10px 10px 0;cursor:pointer}.analytics-preferences button[aria-pressed="true"]{background:var(--ink);color:#fff}.analytics-preferences button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
