
:root{--blue:#02B3FF;--green:#22BE03;--yellow:#FFBE0C;--red:#A60B01;--black:#000000;--white:#FFFFFF;font-family:"Avenir Next",Avenir,Arial,sans-serif;font-synthesis:none;color:#000;background:#fff}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:6px}.top{max-width:1440px;height:136px;padding:0 90px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:block;width:128px;height:128px}.top nav{display:flex;align-items:center;gap:34px}.navlink{background:none;border:0;color:black;padding:6px 0;font-size:13px;font-weight:600}.navlink:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:17px 22px;min-height:54px;background:var(--blue);color:#000;border:1px solid var(--blue);font-size:13px;font-weight:600;text-decoration:none}.button::after{content:'↗';font-size:20px;line-height:1}.button:hover{background:var(--green);border-color:var(--green)}.top .button{padding:14px 18px;min-height:48px}.hero{background:#000;color:white;position:relative;isolation:isolate}.hero::after{content:'';position:absolute;right:0;top:0;width:27%;height:100%;background:white;z-index:-1}.hero-inner{max-width:1440px;min-height:738px;margin:auto;position:relative;padding:63px 90px 61px;display:flex;align-items:flex-start}.copy{width:540px;position:relative;z-index:2}.kicker{font-size:10px;text-transform:uppercase;letter-spacing:.16em;line-height:1.6;display:flex;align-items:center;gap:15px;margin:0 0 27px}.signature{display:inline-flex;align-items:center;gap:4px}.signature i{height:3px;width:13px;background:var(--blue);display:block;transform:rotate(-35deg);border-radius:3px}.signature i:nth-child(2){background:var(--green)}.signature i:nth-child(3){background:var(--yellow)}.signature i:nth-child(4){background:var(--red)}h1{font-size:94px;line-height:1.025;font-weight:600;letter-spacing:-.065em;margin:0 0 31px;max-width:580px}h1 .period{color:var(--blue)}.lead{font-size:19px;line-height:1.65;letter-spacing:-.015em;max-width:510px;margin:0 0 29px}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.secondary{font-size:12px;color:#fff;text-underline-offset:6px;text-decoration-thickness:1px;background:none;border:0;border-bottom:1px solid #fff;padding:6px 0}.secondary:hover{color:var(--blue);border-color:var(--blue)}.hero a:focus-visible,.hero button:focus-visible{outline-color:var(--yellow)}.photo-composition{position:absolute;right:22px;top:31px;width:730px;height:650px;pointer-events:none}.photo-composition svg{width:100%;height:100%;overflow:visible;display:block}.image-caption{position:absolute;right:42px;bottom:32px;font-size:9px;line-height:1.6;letter-spacing:.045em;max-width:156px;color:#575757;margin:0;text-align:right}.photo-tag{position:absolute;bottom:33px;left:90px;display:flex;gap:12px;align-items:center;font-size:10px;letter-spacing:.06em;color:#fff}.photo-tag .tick{width:28px;height:2px;background:var(--green)}.notes{max-width:1440px;margin:auto;padding:30px 90px 32px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;border-bottom:1px solid #ddd}.notes p{margin:0;font-size:12px;line-height:1.65}.notes .label{display:block;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#575757;margin-bottom:8px}.notes strong{font-size:13px;font-weight:600}.study-footer{max-width:1440px;margin:auto;padding:18px 90px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:#575757}.menu{display:none;background:none;border:1px solid black;padding:10px 14px;font-size:12px;color:black}.review-tools{display:flex;gap:12px;align-items:center;background:#fff;color:#000;border-bottom:1px solid #ccc;padding:10px 25px;font-size:12px}.review-tools[hidden]{display:none}.review-tools button{border:1px solid #999;background:#fff;color:#000;padding:7px 12px}[contenteditable=true]{outline:1px dashed var(--blue);outline-offset:5px}dialog{max-width:450px;width:calc(100% - 40px);padding:32px;border:0;background:#fff;color:#000}dialog::backdrop{background:#0009}dialog h2{font-size:27px;line-height:1.2;font-weight:600;letter-spacing:-.03em;margin:0 0 18px}dialog p{font-size:15px;line-height:1.7}dialog button{margin-top:12px}
@media(min-width:1600px){.hero::after{width:calc((100% - 1440px)/2 + 389px)}}
@media(max-width:1200px) and (min-width:761px){.top{padding:0 45px}.top nav{gap:24px}.hero-inner{padding-left:55px;padding-right:55px;min-height:700px}.copy{width:47%}h1{font-size:clamp(58px,7vw,84px)}.lead{font-size:17px}.photo-composition{width:59%;right:-15px;top:55px;height:580px}.hero::after{width:25%}.actions{flex-direction:column;align-items:flex-start;gap:13px}.photo-tag{left:55px}.notes,.study-footer{padding-left:55px;padding-right:55px}.image-caption{right:25px;max-width:130px}}
@media(max-width:760px){.top{height:112px;padding:0 20px}.logo{width:108px;height:108px}.menu{display:block}.top nav{display:none;position:absolute;top:104px;left:20px;right:20px;z-index:10;background:#fff;padding:24px;box-shadow:0 10px 25px #0002;align-items:stretch;gap:20px}.top nav.open{display:flex;flex-direction:column}.top .navlink{text-align:left}.hero::after{display:none}.hero-inner{padding:39px 25px 0;min-height:0;display:block;overflow:hidden}.copy{width:100%}.kicker{font-size:9px;letter-spacing:.12em;gap:11px;margin-bottom:23px}.signature{gap:3px}.signature i{width:10px}h1{font-size:clamp(49px,16vw,68px);margin-bottom:25px}.lead{font-size:17px;line-height:1.7;max-width:460px;margin-bottom:25px}.actions{flex-direction:column;align-items:flex-start;gap:13px}.button{font-size:12px;min-height:51px}.secondary{font-size:11px}.photo-composition{position:relative;top:auto;right:auto;width:calc(100% + 25px);height:auto;aspect-ratio:800/650;margin:30px -13px 20px auto}.photo-composition::before{content:'';position:absolute;inset:20% -30px -50px 65%;background:white;z-index:-1}.photo-composition svg{overflow:visible}.image-caption{position:relative;right:auto;bottom:auto;max-width:none;text-align:left;color:#bbb;font-size:9px;padding-bottom:22px}.photo-tag{position:static;padding:0 0 22px;font-size:9px}.notes{padding:27px 25px;grid-template-columns:1fr;gap:22px}.study-footer{padding:17px 25px;flex-direction:column;gap:7px}.review-tools{flex-wrap:wrap;font-size:10px;padding:10px}.review-tools button{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}


/* Complete homepage concept, for visual sign-off. */
body{overflow-x:hidden}.top{position:relative}.navlink{text-decoration:none}.hero .photo-tag{text-decoration:none}.wrap{width:min(1260px,calc(100% - 180px));margin:auto}.eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:600;line-height:1.5;margin:0 0 24px}.eyebrow .dash{display:inline-block;width:30px;height:3px;background:var(--blue);margin-right:12px;vertical-align:middle}h2{font-size:62px;line-height:1.06;font-weight:600;letter-spacing:-.055em;margin:0}h3{font-size:39px;line-height:1.12;font-weight:600;letter-spacing:-.04em;margin:0}p{font-size:17px;line-height:1.75;margin:0}p+p{margin-top:19px}.section{padding:90px 0}.introduction{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.introduction h2{max-width:490px}.introduction .description{padding-top:39px}.introduction .description p{font-size:18px}.belief{margin-top:52px;padding-top:34px;border-top:1px solid #d9d9d9;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.belief .prelude{font-size:15px;max-width:300px;color:#575757;line-height:1.7}.belief .statement{font-size:30px;line-height:1.4;font-weight:500;letter-spacing:-.025em;max-width:690px}.human-context{background:#000;color:#fff;padding:82px 0 80px}.human-context .context-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.human-context h2{font-size:47px;margin:0 0 28px}.human-context .insight{font-size:36px;line-height:1.3;font-weight:500;letter-spacing:-.035em;margin-top:0}.human-context .context-copy{max-width:570px}.human-context .human-skills{margin:34px 0 0;color:var(--blue);font-size:27px;line-height:1.35;letter-spacing:-.025em;font-weight:500}.human-context .practice{margin-top:26px;color:#fff;font-size:16px}.pillars-section{padding-bottom:70px}.section-heading{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end;margin-bottom:45px}.section-heading h2{max-width:670px}.little-signature{display:flex;gap:7px;padding-bottom:14px}.little-signature i{display:block;width:28px;height:3px;background:var(--blue);transform:rotate(-25deg);border-radius:3px}.little-signature i:nth-child(2){background:var(--green)}.little-signature i:nth-child(3){background:var(--yellow)}.little-signature i:nth-child(4){background:var(--red)}.pillars{border-top:1px solid #000}.pillar{position:relative;display:grid;grid-template-columns:95px 1fr 1fr;gap:30px;align-items:start;padding:35px 0 36px;border-bottom:1px solid #d9d9d9}.pillar .num{font-size:49px;font-weight:500;letter-spacing:-.06em;line-height:1.1}.pillar .name h3{font-size:36px;max-width:340px}.pillar .skill{font-size:12px;line-height:1.5;margin-top:12px;font-weight:600}.pillar .explanation{font-size:17px;line-height:1.7;max-width:420px;padding-top:7px}.pillar .accent{position:absolute;left:0;bottom:-2px;width:95px;height:4px;background:var(--blue)}.pillar:nth-child(2) .accent{background:var(--green)}.pillar:nth-child(3) .accent{background:var(--yellow)}.pillars-link{display:flex;justify-content:flex-end;margin-top:24px}.plain-link{font-size:13px;text-underline-offset:7px;display:inline-flex;align-items:center;gap:25px}.plain-link::after{content:'↗';font-size:18px}.experience-section{position:relative;padding:25px 0 72px}.experience-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center}.soft-photo{position:relative;margin:0 -45px 0 -90px;min-width:0}.soft-photo img{display:block;width:100%;height:auto;aspect-ratio:1.32;object-fit:cover;object-position:center;mask-image:linear-gradient(90deg,transparent 0%,black 7%,black 76%,transparent 100%),linear-gradient(0deg,transparent 0%,black 13%,black 86%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 7%,black 76%,transparent 100%),linear-gradient(0deg,transparent 0%,black 13%,black 86%,transparent 100%);-webkit-mask-composite:source-in}.soft-photo figcaption{font-size:9px;line-height:1.5;color:#575757;margin-left:90px;margin-top:3px;letter-spacing:.025em}.experience-copy{padding:30px 0;position:relative}.experience-copy h2{font-size:49px;max-width:560px;margin-bottom:25px}.experience-copy .experience-lead{font-size:22px;line-height:1.5;letter-spacing:-.02em;margin:0 0 20px}.experience-copy .experience-detail{max-width:510px}.experience-copy .outline{margin-top:28px}.outline{display:inline-flex;gap:26px;align-items:center;padding:15px 19px;border:1px solid #000;background:none;color:#000;text-decoration:none;font:600 12px "Avenir Next",Avenir,Arial,sans-serif;cursor:pointer;min-height:51px}.outline::after{content:'↗';font-size:19px}.outline:hover{background:var(--blue)}.formats{background:var(--blue);padding:33px 0}.formats-inner{display:grid;grid-template-columns:.75fr 1fr 1fr;align-items:center;gap:50px}.formats .eyebrow{margin:0;font-size:10px}.format-unit{font-size:13px;line-height:1.65;border-left:1px solid #000;padding-left:30px}.format-unit strong{font-size:23px;letter-spacing:-.035em;font-weight:600;display:block;margin-bottom:3px}.closing{background:#000;color:#fff;padding:85px 0 70px}.closing-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:90px}.closing h2{font-size:64px;max-width:650px}.closing .closing-copy{padding-top:34px;max-width:520px}.closing .closing-copy p{font-size:18px}.closing .actions{margin-top:29px}.closing .plain-link{color:white}.closing .closing-copy .secondary{display:block;margin-top:18px;width:max-content}.site-footer{background:#000;color:#fff}.footer-inner{border-top:1px solid #444;padding:22px 0 26px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-logo{width:110px;height:110px;display:block}.footer-brand{display:flex;align-items:center;gap:24px}.footer-brand p{font-size:12px;line-height:1.6}.footer-brand small{font-size:10px;color:#ccc}.footer-nav{display:flex;gap:25px;align-items:center;font-size:12px}.footer-nav a{text-decoration:none}.footer-nav a:hover{text-decoration:underline;text-underline-offset:6px}.footer-end{height:5px;display:grid;grid-template-columns:25% 25% 25% 25%}.footer-end span:nth-child(1){background:var(--blue)}.footer-end span:nth-child(2){background:var(--green)}.footer-end span:nth-child(3){background:var(--yellow)}.footer-end span:nth-child(4){background:var(--red)}.concept-note{font-size:10px;line-height:1.7;text-align:center;padding:16px 25px;color:#575757;background:#fff}.review-tools a{color:black;text-underline-offset:4px}.signoff-export body{width:1440px;zoom:2}.signoff-export .review-tools,.signoff-export .concept-note{display:none}.signoff-export .hero::after{width:27%}.signoff-export .top{width:1440px}.signoff-export .wrap{width:1260px}
@media(min-width:1600px){.wrap{width:min(1260px,calc(100% - 180px))}}
@media(max-width:1200px) and (min-width:761px){.wrap{width:calc(100% - 110px)}.introduction,.human-context .context-grid{gap:50px}h2{font-size:51px}.belief{gap:50px}.pillar{grid-template-columns:75px 1fr 1fr;gap:20px}.pillar .name h3{font-size:29px}.experience-grid{gap:30px}.experience-copy h2{font-size:40px}.soft-photo{margin-left:-55px}.soft-photo figcaption{margin-left:55px}.closing-grid{gap:50px}.closing h2{font-size:51px}.formats-inner{gap:30px;grid-template-columns:.6fr 1fr 1fr}.format-unit{padding-left:20px}.format-unit strong{font-size:21px}}
@media(max-width:760px){.wrap{width:calc(100% - 50px)}.section{padding:57px 0}h2{font-size:40px}.introduction{grid-template-columns:1fr;gap:10px}.introduction .description{padding-top:16px}.introduction .description p{font-size:17px}.belief{grid-template-columns:1fr;gap:18px;margin-top:30px;padding-top:24px}.belief .prelude{font-size:14px;max-width:none}.belief .statement{font-size:26px}.human-context{padding:54px 0}.human-context .context-grid{grid-template-columns:1fr;gap:37px}.human-context h2{font-size:36px}.human-context .insight{font-size:30px}.human-context .human-skills{font-size:25px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.little-signature{padding:0}.pillar{grid-template-columns:49px 1fr;gap:18px;padding:28px 0}.pillar .num{font-size:36px}.pillar .name h3{font-size:29px}.pillar .explanation{grid-column:2;font-size:16px;padding-top:0}.pillar .accent{width:49px}.pillar .skill{font-size:11px}.experience-section{padding-top:0;padding-bottom:50px}.experience-grid{grid-template-columns:1fr;gap:12px}.soft-photo{margin:0 -25px;order:0}.soft-photo img{aspect-ratio:1.4}.soft-photo figcaption{margin-left:25px;font-size:9px}.experience-copy{padding:10px 0 0}.experience-copy h2{font-size:38px}.experience-copy .experience-lead{font-size:20px}.formats{padding:28px 0}.formats-inner{grid-template-columns:1fr;gap:20px}.format-unit{padding-left:17px}.format-unit strong{font-size:24px}.closing{padding:55px 0 40px}.closing-grid{grid-template-columns:1fr;gap:20px}.closing h2{font-size:42px}.closing .closing-copy{padding:0}.closing .closing-copy p{font-size:17px}.closing .actions{gap:18px}.footer-inner{align-items:flex-start;flex-direction:column;gap:16px;padding-top:18px;padding-bottom:25px}.footer-brand{gap:15px}.footer-logo{width:100px;height:100px}.footer-nav{flex-wrap:wrap;gap:20px;padding-left:15px}.concept-note{text-align:left}.review-tools{align-items:flex-start}.signoff-export body{zoom:1;width:auto}}


/* One clear accent family per section, on black and white backgrounds. */
#approach{--section-accent:var(--green)}
#approach .eyebrow .dash{background:var(--section-accent)}
#approach .belief{border-top:3px solid var(--section-accent)}
.hero .photo-tag .tick{background:var(--blue)}
.human-context{--section-accent:var(--yellow)}
.human-context .human-skills{color:var(--section-accent)}
#pillars{--section-accent:var(--red)}
#pillars .eyebrow .dash,#pillars .pillar .accent{background:var(--section-accent)}
#pillars .pillar .num{color:var(--section-accent)}
#pillars .little-signature i{background:var(--section-accent)}
#pillars .little-signature i:first-child{width:68px}
#pillars .little-signature i:not(:first-child){display:none}
#pillars .pillars-link .plain-link{text-decoration-color:var(--section-accent);text-decoration-thickness:2px}
#workshops{--section-accent:var(--green)}
#workshops .eyebrow .dash{background:var(--section-accent)}
#workshops .outline{background:var(--section-accent);border-color:var(--section-accent);color:#000}
#workshops .outline:hover{background:#000;border-color:#000;color:#fff}
.formats{background:#fff;color:#000;border-top:1px solid #d9d9d9}
.formats .format-unit{border-left:3px solid var(--green)}
.closing{--section-accent:var(--yellow)}
.closing .eyebrow .dash{background:var(--section-accent)}
.closing .button{background:var(--section-accent);border-color:var(--section-accent);color:#000}
.closing .button:hover{background:#fff;border-color:#fff}
.closing .secondary{border-color:var(--section-accent)}
.closing .secondary:hover{color:var(--section-accent)}
.footer-end{display:block;height:4px;background:var(--yellow)}
.footer-end span{display:none}


/* Brand signature at two page boundaries; individual sections retain one accent. */
.brand-bar,.footer-end{display:grid;grid-template-columns:28% 32% 24% 16%;height:8px;background:none}
.brand-bar span,.footer-end span{display:block}
.brand-bar span:nth-child(1),.footer-end span:nth-child(1){background:var(--blue)}
.brand-bar span:nth-child(2),.footer-end span:nth-child(2){background:var(--green)}
.brand-bar span:nth-child(3),.footer-end span:nth-child(3){background:var(--yellow)}
.brand-bar span:nth-child(4),.footer-end span:nth-child(4){background:var(--red)}
.footer-end{height:5px}
.accent-mark{background-image:linear-gradient(transparent 74%,var(--section-accent) 74%,var(--section-accent) 93%,transparent 93%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.accent-underline{text-decoration-line:underline;text-decoration-color:var(--section-accent);text-decoration-thickness:4px;text-underline-offset:9px;text-decoration-skip-ink:auto}
.accent-type{color:var(--section-accent)}
#approach .eyebrow .dash,#pillars .eyebrow .dash,#workshops .eyebrow .dash,.closing .eyebrow .dash{width:45px;height:4px}
#pillars .pillar .skill{color:var(--section-accent)}
#pillars .pillar .accent{width:145px;height:5px}
.formats .format-unit{border-left-width:5px}
.formats .eyebrow::before{content:'';display:block;width:45px;height:4px;background:var(--green);margin-bottom:11px}
@media(max-width:760px){.brand-bar{height:6px}.accent-underline{text-decoration-thickness:3px;text-underline-offset:6px}#pillars .pillar .accent{width:75px;height:4px}}


/* Let the descender in “knowing” breathe above a finer rule. */
#approach .accent-mark{background-image:none;text-decoration-line:underline;text-decoration-color:var(--section-accent);text-decoration-thickness:2px;text-underline-offset:.3em;text-decoration-skip-ink:auto}


/* Consistent, light underlines with clearance for letter descenders. */
h2 .accent-mark,h2 .accent-underline{background-image:none;text-decoration-line:underline;text-decoration-color:var(--section-accent);text-decoration-thickness:2px;text-underline-offset:.3em;text-decoration-skip-ink:auto}


/* A closer, slightly stronger underline that clears the letter shapes. */
#approach .accent-mark,h2 .accent-mark,h2 .accent-underline{background-image:none;text-decoration-line:underline;text-decoration-color:var(--section-accent);text-decoration-thickness:3px;text-underline-offset:.16em;text-decoration-skip-ink:auto}


/* Use the agreed close, ink-skipping rule on each selected section heading. */
h2 .accent-mark,h2 .accent-underline,h2 .accent-type{background-image:none;text-decoration-line:underline;text-decoration-color:var(--section-accent);text-decoration-thickness:3px;text-underline-offset:.16em;text-decoration-skip-ink:auto}


/* Shared website controls */
.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:14px 20px;background:#fff;color:#000}.skip-link:focus{top:10px}.review-banner{text-align:center;font-size:10px;line-height:1.5;padding:7px 20px;background:#fff;color:#575757;border-bottom:1px solid #ddd}.site-review-note{text-align:center;font-size:10px;line-height:1.6;padding:13px 20px;color:#575757}.navlink[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}.brand-link{display:block;flex-shrink:0}.hero-art{display:block;width:100%;height:100%;object-fit:contain}.photo-composition{pointer-events:auto}.soft-photo img{height:auto}.footer-nav{flex-wrap:wrap;justify-content:flex-end}.secondary{cursor:pointer;text-decoration:none}.hero .secondary{border-bottom:1px solid currentColor}a.button, a.outline{text-decoration:none}.plain-link:focus-visible,.secondary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}.signoff-export .review-banner,.signoff-export .site-review-note{display:none}[hidden]{display:none!important}
.accent-blue{--page-accent:var(--blue);--section-accent:var(--blue)}.accent-green{--page-accent:var(--green);--section-accent:var(--green)}.accent-yellow{--page-accent:var(--yellow);--section-accent:var(--yellow)}.accent-red{--page-accent:var(--red);--section-accent:var(--red)}.inner-hero{padding:65px 0 85px}.inner-intro{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.inner-hero h1{font-size:78px;max-width:680px;line-height:1.07;letter-spacing:-.06em;margin:0}.inner-hero .eyebrow .dash{background:var(--page-accent)}.inner-hero h1 .accent-mark{background:none;text-decoration:underline;text-decoration-color:var(--page-accent);text-decoration-thickness:3px;text-underline-offset:.16em;text-decoration-skip-ink:auto}.inner-lead{padding-top:45px;max-width:570px}.inner-lead p{font-size:18px;line-height:1.75}.strong-copy{font-weight:600}.intro-band{max-width:1030px}.large-copy{font-size:26px;line-height:1.55;letter-spacing:-.025em}.page-pillars{padding:0 0 85px}.page-pillars h2{max-width:780px;margin-bottom:42px}.page-pillars .eyebrow .dash{background:var(--page-accent)}.detail-pillars{border-top:1px solid #000}.detail-pillar{display:grid;grid-template-columns:70px .85fr 1.25fr;gap:32px;padding:36px 0;border-bottom:1px solid #ddd}.detail-pillar .num{font-size:39px;line-height:1.15;letter-spacing:-.05em;color:var(--page-accent)}.detail-pillar h3{font-size:31px}.detail-pillar .skill{font-size:12px;color:var(--page-accent);font-weight:600;line-height:1.6;margin-top:13px}.detail-pillar>p{font-size:17px;line-height:1.75}.method-section{padding:20px 0 85px}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.method-grid h2{font-size:49px;margin-bottom:28px}.method-grid .eyebrow .dash{background:var(--page-accent)}.founder-section{background:#000;color:#fff;padding:82px 0}.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.founder-name{font-size:20px;margin-top:25px}.founder-grid .eyebrow .dash{background:var(--page-accent)}.founder-grid blockquote{margin:45px 0 0;padding-left:25px;border-left:3px solid var(--page-accent);max-width:530px;font-size:25px;line-height:1.5;letter-spacing:-.02em}.founder-copy{padding-top:45px}.founder-copy p{font-size:17px;line-height:1.8}.page-invite{padding:68px 0;background:#fff}.invite-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.invite-grid h2{font-size:50px}.invite-grid .button{margin-top:23px;background:var(--page-accent);border-color:var(--page-accent);color:#000}.invite-grid p{font-size:18px}
.accent-blue .eyebrow .dash,.accent-green .eyebrow .dash,.accent-yellow .eyebrow .dash,.accent-red .eyebrow .dash{background:var(--page-accent)}
.closing a:focus-visible,.human-context a:focus-visible,.founder-section a:focus-visible,.price-section a:focus-visible,.booking-section a:focus-visible,.site-footer a:focus-visible{outline-color:var(--yellow)}
/* Workshops */
.format-options{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:40px}.format-option{padding:32px;border-top:5px solid var(--page-accent);border-bottom:1px solid #ccc;border-left:1px solid #ddd;border-right:1px solid #ddd}.format-option h3{font-size:33px;margin-top:25px}.format-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}.format-time{font-size:26px;line-height:1.3;letter-spacing:-.03em;font-weight:600;margin:20px 0 8px}.format-capacity{font-size:13px;font-weight:600;margin:0 0 24px}.format-option p:not(.format-time):not(.format-capacity){font-size:16px}.format-option .plain-link{margin-top:28px}.plain-list{padding-left:20px;margin:18px 0;font-size:16px;line-height:1.75}.plain-list li+li{margin-top:12px}.format-footnote{max-width:770px;margin-top:30px;font-size:15px}.price-section{background:#000;color:#fff;padding:65px 0}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.price-grid .eyebrow .dash{background:var(--page-accent)}.price-grid h2{font-size:48px;max-width:450px}.price{font-size:76px;line-height:1.1;letter-spacing:-.06em;color:var(--page-accent);font-weight:600;margin-bottom:25px}.price span{font-size:20px;letter-spacing:-.02em;color:#fff;font-weight:400}.price-grid .button{background:var(--page-accent);border-color:var(--page-accent);margin-top:26px}.bespoke-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.bespoke-grid h2{margin-bottom:28px}.bespoke-grid .large-copy{font-size:24px;margin-bottom:22px}.bespoke-grid .eyebrow .dash{background:var(--page-accent)}.bespoke-list{margin:0 0 25px}.bespoke-list>div{padding:18px 0;border-top:1px solid #ddd}.bespoke-list>div:first-child{padding-top:0;border-top:0}.bespoke-list dt{font-size:21px;letter-spacing:-.02em;font-weight:600}.bespoke-list dd{font-size:16px;line-height:1.75;margin:6px 0 0}.booking-section{background:#000;color:#fff;padding:68px 0}.booking-section .eyebrow .dash{background:var(--page-accent)}.booking-section h2{font-size:49px}.booking-steps{counter-reset:booking;display:grid;grid-template-columns:repeat(4,1fr);gap:35px;list-style:none;padding:0;margin:40px 0 0}.booking-steps li{font-size:17px;line-height:1.6;border-top:3px solid var(--page-accent);padding-top:18px}.booking-steps li::before{counter-increment:booking;content:'0' counter(booking);display:block;font-size:14px;font-weight:600;color:var(--page-accent);margin-bottom:18px}.faq-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:85px}.faq-grid .eyebrow .dash{background:var(--page-accent)}.faq-list{border-top:1px solid #000}.faq-list details{border-bottom:1px solid #ddd;padding:0}.faq-list summary{position:relative;cursor:pointer;font-size:19px;font-weight:600;line-height:1.5;padding:24px 40px 24px 0;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:5px;top:22px;color:var(--page-accent);font-size:25px;font-weight:400}.faq-list details[open] summary::after{content:'−'}.faq-answer{padding-bottom:24px;max-width:750px}.faq-answer p{font-size:16px}.faq-answer a{text-underline-offset:4px}
/* Contact */
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-grid aside h2{font-size:46px;max-width:390px;margin-bottom:28px}.contact-grid .eyebrow .dash{background:var(--page-accent)}.contact-person{font-size:18px;line-height:1.8;margin-bottom:26px}.contact-person a{font-size:17px;text-underline-offset:5px;overflow-wrap:anywhere}.contact-grid aside>p:not(.contact-person){max-width:410px}.contact-next{margin-top:45px;padding-top:25px;border-top:3px solid var(--page-accent)}.contact-next h3{font-size:26px;margin-bottom:15px}.contact-next p{font-size:16px}.draft-contact-note{font-size:12px!important;color:#575757;margin-top:30px}.enquiry-panel{scroll-margin-top:25px}.enquiry-panel>h2{font-size:41px;margin-bottom:26px}.review-form-note{padding:14px 18px;border-left:3px solid var(--green);background:#f4f4f1;font-size:13px;line-height:1.65;margin-bottom:24px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{margin-bottom:23px}.field label,.year-groups legend{display:block;font-size:14px;line-height:1.6;font-weight:600;margin-bottom:8px}.field label span,.year-groups legend span{font-size:11px;font-weight:400;color:#575757}.field input,.field select,.field textarea{display:block;width:100%;font:16px/1.5 "Avenir Next",Avenir,Arial,sans-serif;padding:13px 14px;border:1px solid #999;border-radius:0;background:#fff;color:#000}.field textarea{resize:vertical;min-height:150px}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border:2px solid var(--red)}.field-error{font-size:12px;line-height:1.5;color:var(--red);margin:6px 0 0}.field-error:empty{display:none}.field-help{font-size:12px;line-height:1.6;color:#575757;margin-top:8px}.year-groups{border:0;margin:0 0 25px;padding:0}.year-groups>div{display:flex;gap:25px;flex-wrap:wrap}.year-groups label{display:flex;align-items:center;gap:8px;font-size:14px}.year-groups input{accent-color:#000;width:18px;height:18px}.honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-privacy{font-size:12px;line-height:1.7;margin:0 0 20px;color:#575757}.form-submit{background:var(--green);border-color:var(--green);margin-bottom:22px}.form-submit:disabled{cursor:wait;opacity:.65}.form-errors{padding:20px;border:2px solid var(--red);margin:0 0 25px;font-size:14px;line-height:1.7}.form-errors p{font-size:15px;font-weight:600}.form-errors ul{margin:10px 0 0;padding-left:20px}.form-errors a{color:#000;text-underline-offset:4px}.enquiry-result{padding:23px;border-left:4px solid var(--green);background:#f4f4f1;font-size:16px;line-height:1.7;margin-bottom:25px}.enquiry-result p{font-size:15px}.enquiry-result .button{margin-top:18px;background:var(--green);border-color:var(--green)}#email-fallback{font-size:13px;margin-top:7px}
@media(max-width:1000px){.top{height:112px;padding:0 30px}.top .logo{width:108px;height:108px}.top .menu{display:block}.top nav{display:none;position:absolute;top:104px;left:30px;right:30px;padding:24px;background:white;color:black;z-index:20;box-shadow:0 10px 25px #0002;align-items:stretch;gap:22px}.top nav.open{display:flex;flex-direction:column}.top .navlink{padding:5px 0}.top .button{align-self:flex-start}.inner-intro,.founder-grid,.price-grid,.bespoke-grid,.faq-grid{gap:45px}.inner-hero h1{font-size:62px}.inner-lead{padding-top:30px}.inner-lead p{font-size:17px}.detail-pillar{grid-template-columns:55px .9fr 1.1fr;gap:22px}.detail-pillar h3{font-size:26px}.contact-grid{gap:45px;grid-template-columns:.8fr 1.2fr}.contact-grid aside h2{font-size:37px}.form-pair{grid-template-columns:1fr;gap:0}.format-option{padding:25px}.format-option h3{font-size:29px}.booking-steps{grid-template-columns:1fr 1fr}.footer-nav{justify-content:flex-start}}
@media(max-width:760px){.top{padding:0 20px}.top nav{left:20px;right:20px}.review-banner{text-align:left;padding-left:25px}.inner-hero{padding:40px 0 52px}.inner-intro{grid-template-columns:1fr;gap:24px}.inner-hero h1{font-size:clamp(46px,13.5vw,65px)}.inner-lead{padding:0}.inner-lead p{font-size:17px}.large-copy{font-size:23px}.page-pillars{padding-bottom:50px}.page-pillars h2{font-size:37px;margin-bottom:28px}.detail-pillar{grid-template-columns:40px 1fr;gap:16px;padding:28px 0}.detail-pillar>p{grid-column:2;font-size:16px}.detail-pillar .num{font-size:31px}.detail-pillar h3{font-size:27px}.method-section{padding:0 0 50px}.method-grid{grid-template-columns:1fr;gap:24px}.method-grid h2{font-size:37px}.founder-section{padding:52px 0}.founder-grid{grid-template-columns:1fr;gap:30px}.founder-grid h2{font-size:43px}.founder-grid blockquote{font-size:23px;margin-top:30px;padding-left:18px}.founder-copy{padding:0}.founder-copy p{font-size:16px}.page-invite{padding:50px 0}.invite-grid{grid-template-columns:1fr;gap:20px}.invite-grid h2{font-size:37px}.invite-grid p{font-size:17px}.format-options{grid-template-columns:1fr;gap:27px;margin-top:28px}.format-option{padding:25px}.format-option h3{font-size:30px}.format-time{font-size:25px}.price-section{padding:50px 0}.price-grid{grid-template-columns:1fr;gap:26px}.price-grid h2{font-size:38px}.price{font-size:68px}.bespoke-grid{grid-template-columns:1fr;gap:28px}.bespoke-grid h2{font-size:39px}.booking-section{padding:50px 0}.booking-section h2{font-size:38px}.booking-steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.booking-steps li{font-size:16px}.booking-steps li::before{margin-bottom:10px}.faq-grid{grid-template-columns:1fr;gap:28px}.faq-grid h2{font-size:43px}.faq-list summary{font-size:17px;padding-top:21px;padding-bottom:21px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-grid aside h2{font-size:39px}.contact-next{margin-top:30px}.enquiry-panel>h2{font-size:37px}.form-pair{grid-template-columns:1fr}.site-review-note{text-align:left;padding-left:25px}.footer-brand p{font-size:12px}.footer-nav{padding-left:0}.contact-person a{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.review-banner,.site-review-note,.menu,.review-form-note,.form-submit{display:none!important}.top{height:100px}.section{padding:40px 0}.inner-hero{padding:35px 0}.faq-list details:not([open]) .faq-answer{display:block}.hero,.human-context,.founder-section,.price-section,.booking-section,.site-footer{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/* Keep section labels and keyboard focus in their section's brand colour. */
.accent-blue .eyebrow .dash,.accent-green .eyebrow .dash,.accent-yellow .eyebrow .dash,.accent-red .eyebrow .dash{background:var(--page-accent)}
.closing a:focus-visible,.human-context a:focus-visible,.founder-section a:focus-visible,.price-section a:focus-visible,.booking-section a:focus-visible,.site-footer a:focus-visible{outline-color:var(--yellow)}
/* Give the hero image its own space on tablets. */
@media(min-width:761px) and (max-width:1000px){
 .hero::after{display:none}
 .hero-inner{display:block;min-height:0;padding:48px 55px 0;overflow:hidden}
 .hero .copy{width:100%;max-width:620px}
 .hero h1{font-size:76px}
 .hero .lead{max-width:520px}
 .hero .actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:22px}
 .hero .photo-composition{position:relative;top:auto;right:auto;width:min(720px,calc(100% + 55px));height:auto;aspect-ratio:800/650;margin:25px -25px 24px auto}
 .hero .photo-composition::before{content:'';position:absolute;inset:20% -40px -65px 65%;background:#fff;z-index:-1}
 .hero .photo-tag{position:static;padding:0 0 20px}
 .hero .image-caption{position:relative;right:auto;bottom:auto;max-width:none;text-align:left;color:#bbb;padding-bottom:22px}
}
@media(min-width:1001px) and (max-width:1200px){.hero .photo-composition{right:0;width:53%}}
/* Wider touch targets and clear focus on the supplied black/white layout. */
.menu,.navlink{min-height:44px;display:inline-flex;align-items:center}.secondary,.plain-link,.footer-nav a{min-height:44px;display:inline-flex;align-items:center}.closing .closing-copy .secondary{display:inline-flex}.hero .secondary{min-height:44px}.footer-nav a{padding:4px 0}.form-submit{background:var(--blue);border-color:var(--blue)}
#enquiry{scroll-margin-top:25px}.field input,.field select,.field textarea{border-color:#767676}input[type=checkbox]:focus-visible{outline:3px solid var(--red);outline-offset:4px}
/* Main content remains available when scripts are unavailable. */
@media(max-width:1000px){.top nav{z-index:30}.top{z-index:10}}
@media(max-width:359px){.wrap{width:calc(100% - 40px)}.hero-inner{padding-left:20px;padding-right:20px}.inner-hero h1{font-size:44px}.year-groups>div{gap:15px}}
@media print{.menu,.top nav,.button,.outline,.photo-tag{display:none!important}.hero,.human-context,.closing,.founder-section,.booking-section,.price-section,.site-footer{background:white!important;color:black!important}body{overflow:visible}.hero::after{display:none}.section{break-inside:avoid}}
/* Keep the desktop menu compact and footer links visible on black. */
.menu{display:none}.footer-nav .navlink{color:inherit;font-size:12px}
@media(max-width:1000px){.top .menu{display:inline-flex}}
@media(max-width:359px){.soft-photo{margin-left:-20px;margin-right:-20px}.soft-photo figcaption{margin-left:20px}}

/* User-supplied images of Samantha. */
.sam-photo{margin:32px 0 0;border-bottom:3px solid var(--page-accent,var(--yellow))}.sam-photo img{display:block;width:100%;height:auto;aspect-ratio:1672/940;object-fit:cover}.contact-grid aside .sam-photo{margin-top:32px}.founder-grid .sam-photo{max-width:570px}@media(max-width:760px){.sam-photo{margin-top:26px}.contact-grid aside .sam-photo{max-width:570px}}
