
:root{--ink:#243d35;--paper:#f5f1e7;--orange:#b84b2c;--line:#c7c7b7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font:1.0625rem/1.65 Arial,sans-serif}a{color:inherit}header{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:22px 6%;gap:20px}header>a{text-decoration:none;font-weight:bold;font-size:1.375rem;letter-spacing:-1px}nav{display:flex;gap:26px;font-size:0.875rem}nav a{text-decoration:none}nav a:hover{text-decoration:underline}main{max-width:1440px;margin:auto}section{padding:80px 7%;border-bottom:1px solid var(--line)}.hero{padding-top:75px;display:grid;grid-template-columns:1.7fr 1fr;gap:7%;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:0.6875rem;font-weight:bold;color:var(--orange)}h1,h2,h3,.serif{font-family:Georgia,serif;font-weight:normal;line-height:1.08}h1{font-size:clamp(3.875rem,8vw,7rem);letter-spacing:-5px;margin:22px 0}h2{font-size:clamp(2.375rem,4.6vw,4rem);letter-spacing:-2px;margin:14px 0 25px}h3{font-size:1.8125rem;margin:20px 0 15px}p{max-width:650px}.byline{font-size:1.125rem}.intro{font-size:1.3125rem}.button{display:inline-block;padding:13px 22px;background:var(--ink);color:var(--paper);text-decoration:none;border:1px solid var(--ink);font:0.875rem Arial;cursor:pointer}.button.alt{background:none;color:var(--ink);margin-left:10px}.art{min-height:390px;background:#e3e4d6;position:relative;padding:30px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.art:before{content:'“';position:absolute;font:30rem Georgia;top:-155px;left:10px;color:#b8c0a7}.art .serif{font-size:2.375rem;position:relative}.art small{font-size:0.6875rem;letter-spacing:2px;margin-top:25px}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:35px}.sectionhead p{max-width:390px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service{border-top:2px solid var(--ink);padding-top:18px}.number{font-size:0.75rem;color:var(--orange)}.service p{font-size:0.9375rem}.service a{font-size:0.875rem;text-underline-offset:5px}.dark{background:var(--ink);color:var(--paper)}.dark .eyebrow{color:#e6ac87}.note{display:grid;grid-template-columns:80px 1fr 32px;gap:20px;border-top:1px solid #ffffff45;padding:25px 0;align-items:center;cursor:pointer;background:none;color:inherit;width:100%;text-align:left;border-left:0;border-right:0;border-bottom:0}.note span:first-child{font-size:0.6875rem;letter-spacing:1px}.note strong{font:1.75rem Georgia;font-weight:normal}.note:hover strong{text-decoration:underline}.small{font-size:0.8125rem}.booking{background:#e7e5d9}form{display:grid;gap:15px}label{font-size:0.8125rem}input,select,textarea{display:block;width:100%;margin-top:5px;padding:12px;background:var(--paper);border:1px solid #9ca394;color:var(--ink);font:1rem Arial;border-radius:0}textarea{min-height:110px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}footer{padding:30px 7%;display:flex;justify-content:space-between;font-size:0.75rem}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--ink);max-width:680px;width:90%;padding:40px}dialog::backdrop{background:#172b26b8}dialog button{float:right;cursor:pointer;background:none;border:0;font-size:1.5rem;color:inherit}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}@media(max-width:750px){header{align-items:start}nav{gap:12px;flex-wrap:wrap;justify-content:end}section{padding:55px 6%}.hero,.split{grid-template-columns:1fr;gap:30px}h1{letter-spacing:-3px}.art{min-height:260px}.art:before{top:-190px}.services{grid-template-columns:1fr}.sectionhead{display:block}.note{grid-template-columns:55px 1fr 20px;gap:10px}.note strong{font-size:1.4375rem}.button.alt{margin:10px 0 0}footer{gap:20px;flex-wrap:wrap}}

/* Monochrome editorial edition */
:root{--ink:#171717;--paper:#fafafa;--orange:#a53627;--line:#c9c9c9}
body{background:#fafafa}header{max-width:1440px;margin:auto;padding-top:27px;padding-bottom:27px;border-bottom:3px double #171717}header>a{font-family:Georgia,serif;font-size:1.8125rem;letter-spacing:-1.4px}nav{font-size:0.75rem;text-transform:uppercase;letter-spacing:1px}nav a:last-child{border-bottom:2px solid var(--orange)}
section{border-color:#ccc}.hero{grid-template-columns:1.85fr 1fr;padding-top:65px;padding-bottom:75px;gap:6%}.eyebrow{color:#555;font-family:'Courier New',monospace;font-size:0.6875rem;letter-spacing:1.6px}h1{font-size:clamp(3.625rem,7.4vw,6.5rem);letter-spacing:-4.5px;line-height:1.02;font-weight:bold}h1 em{font-weight:normal}.byline{border-top:1px solid #aaa;padding-top:18px;max-width:500px;font-size:1rem}.button{font-family:'Courier New',monospace;font-weight:bold}.button:hover{background:#444;color:#fff}.button.alt:hover{background:#e5e5e5;color:#171717}
.art{background:#e5e5e5;border:1px solid #bbb;min-height:420px;padding:35px;justify-content:space-between;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,#00000003 3px,#00000003 4px)}.art:before{font-size:20rem;top:-68px;left:20px;color:#bbb}.art .serif{margin-top:200px;font-size:2.5rem;line-height:1.12}.art small{border-top:1px solid #aaa;padding-top:18px;font-family:'Courier New',monospace;font-size:0.625rem}.art:after{content:'';position:absolute;right:0;top:0;width:7px;height:65px;background:var(--orange)}
h2{font-weight:bold;line-height:1.04}h3{font-size:1.875rem}.number{color:#666;font-family:'Courier New',monospace}.services{gap:0}.service{padding-right:25px}.service+.service{padding-left:25px;border-left:1px solid #ccc}.service a{text-decoration-color:var(--orange)}.dark{background:#1b1b1b;color:#f5f5f5}.dark .eyebrow{color:#aaa}.note span:first-child{color:#bbb;font-family:'Courier New',monospace}.note:hover{background:#ffffff08}.booking{background:#e9e9e9}input,select,textarea{background:#fff;border-color:#aaa}footer{font-family:'Courier New',monospace}dialog{background:#fff}
@media(max-width:750px){header>a{font-size:1.4375rem}nav{font-size:0.625rem;gap:12px}h1{letter-spacing:-2.5px}.hero{grid-template-columns:1fr}.art{min-height:270px;padding:25px}.art .serif{margin-top:100px;font-size:2.0625rem}.art:before{top:-110px}.service{padding-right:0}.service+.service{padding-left:0;border-left:0;margin-top:28px}.services{gap:0}}

/* A lived-in notebook: monochrome, with moments of colour. */
:root{--paper:#f8f7f3;--orange:#b54631;--ink:#242424}
body{background:var(--paper)}header{border-bottom:1px solid #aaa;padding-bottom:24px}header>a{font-size:1.9375rem}nav a:last-child{background:#e8bc4e;border:0;padding:8px 12px;color:#222}nav a:last-child:hover{background:#f0ca6d}.hero{padding-top:60px;padding-bottom:65px;align-items:center}h1{font-weight:normal;font-size:clamp(3.75rem,7.3vw,6.4375rem);line-height:1.08}h1 em{position:relative;text-decoration:underline;text-decoration-color:#d5aa45;text-decoration-thickness:6px;text-underline-offset:9px}.eyebrow{color:#555}.byline{border:0;padding:0}.button{font-family:Arial,sans-serif;font-weight:normal}.button:first-child{background:#b54631;border-color:#b54631;color:white}.button.alt{background:transparent;color:#242424;border-color:#555}.art{background-color:#e0e0dc;background-image:repeating-linear-gradient(0deg,transparent,transparent 31px,#7772 31px,#7772 32px);border:0;box-shadow:9px 12px 0 #ccc8;transform:rotate(1.5deg);min-height:420px;padding:30px;overflow:visible}.art:before{color:#b5b5af;font-size:17.5rem;top:-35px;left:15px}.art:after{width:100px;height:28px;background:#d9bc7da8;right:35%;top:-13px;transform:rotate(-7deg)}.art-label{font:0.625rem 'Courier New',monospace;letter-spacing:2px;z-index:1}.art .serif{margin-top:145px;z-index:1;font-size:2.4375rem}.art small{font-size:0.625rem;border-color:#aaa}.art-stamp{position:absolute;right:-15px;top:48px;background:#b54631;color:#fff;width:100px;height:100px;border-radius:50%;display:grid;align-content:center;text-align:center;font:italic 1.5rem/1 Georgia;transform:rotate(10deg);box-shadow:0 0 0 5px var(--paper)}h2{font-weight:normal}.ribbon{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:20px 7%;border-block:1px solid #bcbcb4;font:italic 1.0625rem Georgia;background:#ecece5}.ribbon span:last-child{color:#a23b29}.services{gap:22px}.service{background:#ededeb;padding:24px!important;border:0!important;position:relative}.service:before{content:'';height:5px;width:65px;position:absolute;top:0;left:24px;background:#d8af42}.service:nth-child(2):before{background:#b54631}.service:nth-child(3):before{background:#58818b}.service:nth-child(2){background:#e5e5e2}.service:nth-child(3){background:#eaecea}.number{font-size:0.625rem;letter-spacing:1px}.service h3{margin-top:26px}.service a{display:inline-block;margin-top:12px}.dark{background:#272727;position:relative}.dark:before{content:'';position:absolute;top:0;left:7%;width:76px;height:6px;background:#d8af42}.note{padding:28px 0}.note span:last-child{color:#e4b64a}.note:nth-of-type(2) span:last-child{color:#d7836e}.note:nth-of-type(3) span:last-child{color:#9cbfc8}#about .intro{font-family:Georgia,serif;font-size:1.625rem;line-height:1.5}#about>div:first-child{border-left:5px solid #d8af42;padding-left:26px}.booking{background:#e8e8e3}.booking h2 em{color:#b54631}input,select,textarea{background:#fcfcfa;border-color:#b6b6af}.booking .button{background:#b54631;border-color:#b54631}footer{background:var(--paper)}
@media(max-width:750px){header>a{font-size:1.5rem}nav a:last-child{padding:4px 6px}.hero{padding-top:45px;gap:45px}h1{font-size:clamp(3.375rem,11vw,4.875rem);letter-spacing:-2px}h1 em{text-decoration-thickness:4px}.art{margin:0 12px 10px 0;min-height:310px}.art .serif{margin-top:80px;font-size:2.1875rem}.art-stamp{width:80px;height:80px;font-size:1.25rem}.ribbon{gap:9px;padding:18px 6%;font-size:0.9375rem}.ribbon span{flex-basis:100%}.services{gap:18px}.service+.service{margin-top:0}.service{padding:24px!important}#about>div:first-child{padding-left:20px}.fields{grid-template-columns:1fr}}

/* Gentle colour through the later chapters. */
#writing{background:#263b40;color:#faf9f5}#writing .eyebrow{color:#c5d5d8}#writing .note{border-top-color:#b8cdd14d}#writing .note span:first-child{color:#bfd1d4}#writing .note:hover{background:#ffffff0a}
#about{background:#f4f0e3}#about>div:first-child{border-color:#c49a36}#about .eyebrow{color:#746127}#about .intro{color:#354c50}
.booking{background:#e5edeb;border-top:5px solid #aac3bd}.booking .eyebrow{color:#46665f}.booking h2{color:#263e38}.booking input,.booking select,.booking textarea{border-color:#a4b9b2;background:#fcfdfb}.booking input:focus,.booking select:focus,.booking textarea:focus{outline:2px solid #608a7f;outline-offset:2px}.booking .button{background:#a9412d;border-color:#a9412d}.booking .button:hover{background:#873522}
footer{background:#e9dfc9;border-top:1px solid #cec0a4}footer a{text-decoration-color:#a9412d}

/* Photographs as part of the story. */
figure{margin:0}figure img{display:block;width:100%;height:100%;object-fit:cover}figcaption{font:0.625rem/1.6 'Courier New',monospace;letter-spacing:1px}.portrait{margin-top:40px;max-width:430px;transform:rotate(-1deg);background:#fff;padding:12px 12px 16px;box-shadow:7px 8px 0 #d8ceaf}.portrait img{height:auto;aspect-ratio:1/1;object-position:center}.portrait figcaption{padding:14px 3px 0;letter-spacing:.3px;color:#555}#about>div:first-child{border-left:0;padding-left:0}.workshop-photo{position:relative;margin:0 0 35px;display:grid;grid-template-columns:1.3fr 1fr;background:#e6e5df}.workshop-photo img{height:310px;object-position:center 37%}.workshop-photo figcaption{display:flex;flex-direction:column;justify-content:center;padding:35px;color:#333;gap:22px}.workshop-photo figcaption span:first-child{font:italic 2.3125rem/1.1 Georgia;letter-spacing:-1px}.workshop-photo figcaption span:last-child{font-size:0.6875rem;max-width:180px}.writing-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:7%;align-items:start}.writing-layout .sectionhead{display:block}.writing-layout .sectionhead p{max-width:100%}.writing-layout h2{font-size:clamp(2.375rem,4vw,3.5625rem)}.water-photo{position:relative;margin-top:18px}.water-photo img{height:510px;object-position:45% center}.water-photo figcaption{padding:16px 0;color:#d1dedf}.writing-layout .note{grid-template-columns:65px 1fr 20px}.writing-layout .note strong{font-size:1.5rem}.personal{display:grid;grid-template-columns:1fr .85fr 1.1fr;gap:35px;align-items:center;background:#f1ede4}.personal h2{font-size:2.6875rem}.personal p{font-size:0.9375rem}.personal figure img{height:300px}.personal figcaption{padding:12px 0;color:#555}.personal-portrait{transform:rotate(-2deg)}.personal-coast{transform:rotate(1deg)}
@media(max-width:750px){.workshop-photo,.writing-layout{grid-template-columns:1fr}.workshop-photo img{height:280px}.workshop-photo figcaption{padding:25px;gap:15px}.water-photo{margin:0 0 25px}.water-photo img{height:300px}.writing-layout .note{grid-template-columns:55px 1fr 20px}.personal{grid-template-columns:1fr 1fr;gap:22px}.personal>div{grid-column:1/-1}.personal figure img{height:230px}.portrait{max-width:100%;margin-right:9px}.personal h2{font-size:2.375rem}}
.article-link{text-decoration:none;display:grid}
.workshop-menu{margin-top:3rem;scroll-margin-top:1rem}
.workshop-menu>p{max-width:72ch}
.workshop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.workshop-grid .workshop{padding:1.25rem;border:1px solid var(--line)}
.workshop h3{margin:.25rem 0 .65rem;font-size:1.375rem;line-height:1.25}
.workshop p{margin:.5rem 0 0}
html:not([data-theme]) .workshop-grid .workshop{background:var(--card-bg);border-color:var(--card-accent);border-top-width:4px;color:var(--ink)}
html:not([data-theme]) .workshop .eyebrow{color:var(--card-accent)}
.training-heading{font-size:1.375rem;margin:1.75rem 0 .5rem}
@media(max-width:750px){.workshop-grid{grid-template-columns:minmax(0,1fr)}}
html[data-large-text] .workshop-grid{grid-template-columns:minmax(0,1fr)}

.site-nav, .jump-links { flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
.site-nav a, .jump-links a { padding: .45rem .6rem; }
.site-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: .35em; }
@media(max-width:750px) {
  header { flex-direction: column; gap: .5rem; }
  .site-nav, .jump-links { justify-content: start; font-size: .875rem; }
}
.page-title { font-size: clamp(2.375rem, 5vw, 4rem); letter-spacing: -2px; }
.jump-links { text-transform: none; letter-spacing: normal; font-size: 1rem; margin: 1.5rem 0; }
.jump-links a { text-decoration: underline; text-underline-offset: .2em; border: 1px solid currentColor; }
.jump-links a:last-child { background: transparent; color: inherit; border: 1px solid currentColor; }
.course-group { margin-top: 2.5rem; }
.arts { --card-bg: #f5d6d1; --card-accent: #8f302b; }
.peace { --card-bg: #d4e8f7; --card-accent: #215779; }
.care { --card-bg: #ccebe4; --card-accent: #176359; }
.leadership { --card-bg: #f9e5b1; --card-accent: #765000; }
html:not([data-theme]) .course-group h2 { color: var(--card-accent); }
html:not([data-theme]) .jump-links a {
  background: var(--card-bg);
  color: var(--ink);
  border-color: var(--card-accent);
  border-left-width: 5px;
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } }

.workshop-menu + .workshop-photo { margin-top: 2.5rem; }

.course-photo { max-width: 44rem; margin: 0 0 1.5rem; }
.course-photo img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.course-photo figcaption { padding-top: .5rem; color: #555; }

.psychology { --card-bg: #e7daf4; --card-accent: #51356d; }
