/* Photo-led compositions inspired by the reference; all authored copy stays in place. */
:root{--type-h1:52px;--type-h2:40px;--type-h3:25px}
body #main.flow-page>.section,body #main.flow-page>.approved-section{padding-block:96px}
body #main.flow-page h2{line-height:1.16;letter-spacing:-.02em}
body #main.flow-page h3{font-size:25px;line-height:1.3}
body #main.flow-page p{line-height:1.7}
body #main.flow-page .reading-copy p+p{margin-top:20px}
body #main.flow-page .approved-copy>p{margin-bottom:20px}
body #main.flow-page .eyebrow{letter-spacing:.1em;line-height:1.6}
/* One frame language: generous photographs, quiet corners, no ornamental cutouts. */
body #main.flow-page .new-hero-portrait,
body #main.flow-page .recognition-portrait,
body #main.flow-page .split-layout>.journey-photo,
body #main.flow-page .approved-portrait,
body #main.flow-page .approved-about-portrait{padding:0;background:none;max-width:460px;width:100%;margin-inline:auto;border-radius:0}
body #main.flow-page .new-hero-image{display:block;margin:0;max-width:none;overflow:visible}
body #main.flow-page .new-hero-image img,
body #main.flow-page .recognition-portrait img,
body #main.flow-page .split-layout>.journey-photo img,
body #main.flow-page .approved-portrait img,
body #main.flow-page .approved-about-portrait img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:32px}
body #main.flow-page .new-hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:72px;align-items:center}
body #main.flow-page .new-hero{padding-top:48px}
body #main.flow-page .new-hero-copy h1{font-size:52px;line-height:1.12;max-width:20ch}
body #main.flow-page .new-hero-support{margin-top:22px;max-width:48ch}
body #main.flow-page .new-hero-support p{font-size:14px;line-height:1.6}
body #main.flow-page .new-portrait-name{margin-top:20px}
body #main.flow-page .new-portrait-credentials{max-width:42ch;font-size:14px;line-height:1.6;color:#586254}
body #main.flow-page .new-credentials{padding-block:28px}
body #main.flow-page .new-credentials p{font-size:12px;letter-spacing:.1em}
body #main.flow-page .recognition-chapter{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px}
body #main.flow-page .recognition-content h2{font-size:38px;line-height:1.2}
body #main.flow-page .recognition-content .reading-copy{max-width:56ch}
body #main.flow-page .recognition-portrait{position:sticky;top:120px}
body #main.flow-page .opening-reflection{background:#f5f2eb}
body #main.flow-page .reflection-grid{gap:64px;align-items:center}
body #main.flow-page .reflection-lead p{font:400 30px/1.4 Meraki,Georgia,serif;color:#2d4a3e}
body #main.flow-page .editorial-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
body #main.flow-page .editorial-cards article{padding:30px;background:#fffdf8;border:1px solid #d8ded0;border-radius:24px;box-shadow:none}
body #main.flow-page .editorial-cards h3{font-size:25px;line-height:1.3;margin:14px 0 18px}
body #main.flow-page .editorial-cards p{font-size:17px;line-height:1.7}
body #main.flow-page .card-index{font-size:13px;color:#687661}
body #main.flow-page .section-ending{margin-top:36px}
/* A portrait gives the left side a purpose beside the detailed inner-safety copy. */
body #main.flow-page .foundation-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:72px;row-gap:32px;align-items:start}
body #main.flow-page .foundation-layout>.section-heading{grid-column:1;grid-row:1;margin:0}
body #main.flow-page .foundation-layout>.foundation-presence{grid-column:1;grid-row:2;margin:0;width:100%;max-width:460px}
body #main.flow-page .foundation-presence img{display:block;width:100%;height:auto;border-radius:28px;object-fit:contain}
body #main.flow-page .foundation-layout>.foundation-copy{grid-column:2;grid-row:1/span 2;max-width:56ch}
body #main.flow-page .foundation-layout>.pull-quote{grid-column:1/-1;grid-row:3;font-size:27px;line-height:1.45;padding-top:28px}
/* Intro + portrait beside the existing method list, not a naked heading column. */
body #main.flow-page .approach-composition{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:72px;row-gap:32px;align-items:start}
body #main.flow-page .approach-introduction{grid-column:1/-1;grid-row:1;position:static;max-width:820px;margin-bottom:12px}
body #main.flow-page .approach-introduction h2{margin-bottom:24px}
body #main.flow-page .approach-presence{grid-column:1;grid-row:2;max-width:380px;margin:0;width:100%}
body #main.flow-page .approach-presence img{width:100%;height:auto;border-radius:28px;object-fit:contain}
body #main.flow-page .approach-accordion{grid-column:2;grid-row:2;margin:0}
body #main.flow-page .approach-accordion details{border:1px solid #d4dccd;border-radius:20px;background:#fffdf8;margin:0 0 16px;overflow:hidden}
body #main.flow-page .approach-accordion summary{padding:24px;gap:16px}
body #main.flow-page .approach-accordion summary h3{font-size:24px;line-height:1.3}
body #main.flow-page .approach-accordion details[open]{background:#edf1e7}
body #main.flow-page .approach-accordion .method-content{padding:0 26px 28px}
body #main.flow-page .method-content p{font-size:17px;line-height:1.7}
body #main.flow-page .method-content .text-link{margin-top:22px}
/* Familiar step cards preserve the sequence while allowing a horizontal scan. */
body #main.flow-page .process-composition{display:block}
body #main.flow-page .process-heading{max-width:760px;margin-bottom:36px;position:static}
body #main.flow-page .process-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}
body #main.flow-page .process-timeline li{display:flex;flex-direction:column;gap:20px;border:1px solid #d2dacb;background:#fcf8f1;border-radius:24px;padding:30px;min-width:0}
body #main.flow-page .process-timeline li:before,body #main.flow-page .process-timeline li:after,body #main.flow-page .process-timeline li:not(:last-child):after{content:none;display:none}
body #main.flow-page .process-number{font:400 28px/1.2 Meraki,Georgia,serif;color:#915652}
body #main.flow-page .process-timeline h3{font-size:25px;margin-bottom:18px}
body #main.flow-page .process-timeline p{font-size:17px;line-height:1.7}
body #main.flow-page .process-booking{margin-top:36px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}
body #main.flow-page .experience-composition{gap:56px;align-items:center}
body #main.flow-page .experience-quote{padding:32px;border:1px solid #cdd8c4;border-radius:24px;background:#fcf8f1}
body #main.flow-page .experience-quote blockquote{font-size:27px;line-height:1.5}
body #main.flow-page .testimonial-video-frame,body #main.flow-page .intro-section .video-frame{border-radius:22px;overflow:hidden}
body #main.flow-page .testimonial-video-grid h3{font-size:22px;line-height:1.35}
body #main.flow-page .resource-card{border-radius:24px;padding:32px}
/* All inner pages share the same photo treatment and restrained card sizes. */
body #main.flow-page .approved-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px}
body #main.flow-page .approved-hero-grid>.approved-portrait{max-width:400px}
body #main.flow-page .approved-cards{gap:24px}
body #main.flow-page .approved-cards article{border-radius:24px;padding:30px;background:#fffdf8;border-color:#d8ded0;row-gap:20px}
body #main.flow-page .approved-cards h3{font-size:25px;line-height:1.3}
body #main.flow-page .approved-cards p{font-size:17px;line-height:1.7}
body #main.flow-page .approved-reading .chapter-presence{margin:32px 0 0;max-width:420px}
body #main.flow-page .chapter-presence img{display:block;width:100%;height:auto;border-radius:24px;object-fit:contain}
body #main.flow-page .approved-quote{border-radius:0;background:none;font-size:26px;line-height:1.45}
body #main.flow-page .contact-method-grid article,body #main.flow-page .approved-contact-methods article,body #main.flow-page .enquiry-form{border-radius:20px}
body #main.flow-page>.approved-final>.wrap,body #main.flow-page>section.contact:last-child>.wrap{border-radius:28px}
body #main.flow-page>section.contact:last-child .final-photo img{border-radius:20px}
body .site-footer .footer-main{align-items:start}
body .site-footer .footer-main .eyebrow{font:600 15px/1.6 Sohne,Arial,sans-serif;letter-spacing:.06em}
body .site-footer .footer-brand>p,body .site-footer .footer-main .footer-links a{font-weight:400;line-height:1.7}
@media(max-width:1000px){
 body #main.flow-page .editorial-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 body #main.flow-page .new-hero-grid,body #main.flow-page .recognition-chapter,body #main.flow-page .foundation-layout,body #main.flow-page .approach-composition,body #main.flow-page .approved-hero-grid{gap:40px}
 body #main.flow-page .process-timeline{grid-template-columns:minmax(0,1fr)}
 body #main.flow-page .process-timeline li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:24px}
}
@media(max-width:900px){
 body #main.flow-page .new-hero-grid,body #main.flow-page .recognition-chapter{grid-template-columns:minmax(0,1fr);gap:36px}
 body #main.flow-page .recognition-portrait{position:static;max-width:420px}
 body #main.flow-page .foundation-layout,body #main.flow-page .approach-composition{grid-template-columns:minmax(0,1fr);gap:28px}
 body #main.flow-page .foundation-layout>.section-heading,body #main.flow-page .approach-introduction{grid-column:1;grid-row:auto}
 body #main.flow-page .foundation-layout>.foundation-presence,body #main.flow-page .approach-presence{grid-column:1;grid-row:auto;max-width:420px;margin-inline:auto}
 body #main.flow-page .foundation-layout>.foundation-copy,body #main.flow-page .foundation-layout>.pull-quote,body #main.flow-page .approach-accordion{grid-column:1;grid-row:auto;max-width:none}
}
@media(max-width:760px){
 :root{--type-h1:36px;--type-h2:32px;--type-h3:24px}
 body #main.flow-page>.section,body #main.flow-page>.approved-section{padding-block:64px}
 body #main.flow-page .new-hero{padding-top:32px}
 body #main.flow-page .new-hero-copy h1{font-size:36px;line-height:1.16;max-width:none}
 body #main.flow-page .recognition-content h2{font-size:32px;line-height:1.2}
 body #main.flow-page .new-hero-portrait{max-width:340px}
 body #main.flow-page .new-hero-image img,body #main.flow-page .recognition-portrait img,body #main.flow-page .split-layout>.journey-photo img,body #main.flow-page .approved-portrait img,body #main.flow-page .approved-about-portrait img{border-radius:24px}
 body #main.flow-page .new-hero-support{display:grid;gap:8px}
 body #main.flow-page .new-hero-support p{margin:0;line-height:1.65}
 body #main.flow-page .reflection-grid{gap:24px}
 body #main.flow-page .reflection-lead p{font-size:26px;line-height:1.4}
 body #main.flow-page .editorial-cards{grid-template-columns:minmax(0,1fr);gap:18px}
 body #main.flow-page .editorial-cards article,body #main.flow-page .approved-cards article{padding:26px;border-radius:22px}
 body #main.flow-page .editorial-cards h3,body #main.flow-page .approved-cards h3{font-size:24px}
 body #main.flow-page .editorial-cards p,body #main.flow-page .approved-cards p,body #main.flow-page .method-content p,body #main.flow-page .process-timeline p{font-size:16px}
 body #main.flow-page .approach-presence{max-width:300px}
 body #main.flow-page .approach-accordion summary{padding:22px 20px;gap:14px}
 body #main.flow-page .approach-accordion summary h3{font-size:23px}
 body #main.flow-page .approach-accordion .method-content{padding:0 22px 26px}
 body #main.flow-page .process-timeline li{padding:26px;grid-template-columns:30px minmax(0,1fr);gap:16px}
 body #main.flow-page .process-timeline h3{font-size:24px}
 body #main.flow-page .experience-quote{padding:26px}
 body #main.flow-page .experience-quote blockquote{font-size:25px}
 body #main.flow-page .approved-hero-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 body #main.flow-page .approved-hero-grid>.approved-portrait{max-width:300px}
 body #main.flow-page .chapter-presence{max-width:360px}
}
@media(max-width:640px){body .site-header .header-actions>.header-book{grid-column:1/-1;grid-row:2;justify-self:end;max-width:calc(100% - 122px);font-size:13px;line-height:1.5;gap:8px;text-align:right}}
