@font-face{font-family:Source;src:url('/assets/source-sans-300.ttf') format('truetype');font-weight:300;font-display:swap}@font-face{font-family:Source;src:url('/assets/source-sans-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Source;src:url('/assets/source-sans-600.ttf') format('truetype');font-weight:600;font-display:swap}
:root{color-scheme:light;--bg:#eae5d6;--paper:#f7f4ea;--ink:#361c07;--muted:#533113;--accent:#496231;--button:#f7f4ea;--line:#c9bea8;--detail:#815026;--veil:234,229,214}
:root[data-theme=dark]{color-scheme:dark;--bg:#1c1d19;--paper:#292a24;--ink:#eae5da;--muted:#c8c3b8;--accent:#d1b28c;--button:#1c1d19;--line:#45463e;--detail:#d1b28c;--veil:28,29,25}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:400 20px/1.5 Source,'Segoe UI',sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:300;line-height:1.08;text-wrap:balance}h1{font-size:clamp(48px,5.5vw,80px);letter-spacing:-.035em}h2{font-size:clamp(34px,3.5vw,50px);letter-spacing:-.025em}h3{font-size:29px}p+p{margin-top:18px}img{display:block;width:100%;height:auto}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:var(--paper);padding:12px}.skip:focus{top:15px}.header{min-height:106px;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{text-decoration:none;font-size:34px;letter-spacing:.01em;font-weight:400;margin-right:auto}.brand span{font-size:27px;color:var(--detail);margin-right:10px}.navigation{display:flex;align-items:center;gap:27px;font-size:17px}.navigation a{text-decoration:none}.navigation a[aria-current=page]{text-decoration:underline}.theme-control{font-size:14px;display:flex;align-items:center;gap:7px;white-space:nowrap}.theme-control select{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:0;padding:7px 3px;max-width:106px}.theme-control option{background:var(--paper)}#menu-toggle{display:none}.eyebrow{text-transform:uppercase;font-size:13px;font-weight:600;letter-spacing:.14em;color:var(--detail);margin-bottom:25px}.hero{position:relative;min-height:730px;isolation:isolate;display:flex;align-items:center}.hero-photo{position:absolute;z-index:-2;inset:0 0 0 35%;overflow:hidden}.hero-photo img{height:100%;object-fit:cover;object-position:52% 38%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),rgba(var(--veil),.88) 12%,rgba(var(--veil),.25) 33%,transparent 48%),linear-gradient(0deg,var(--bg),transparent 16%)}.hero-copy{max-width:650px;padding:65px 0 70px}.hero h1{max-width:640px}.hero .lede{max-width:480px;font-size:22px;margin:30px 0 33px;color:var(--muted)}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;padding:16px 25px;background:var(--accent);color:var(--button);text-decoration:none;font-size:18px;font-weight:600;border:1px solid var(--accent);cursor:pointer;min-height:56px}.button:hover{filter:brightness(1.08)}.button:disabled{opacity:.6;cursor:wait}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.small{font-size:16px;color:var(--muted)}.hero .small{margin-top:17px}.section{padding-block:78px}.section+.section{border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-head p{max-width:420px;color:var(--muted)}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.intent{border-top:1px solid var(--line);padding-top:26px}.intent p{margin:18px 0 26px;color:var(--muted)}.intent .eyebrow{margin:0 0 16px;color:var(--detail)}.text-link{font-size:17px;font-weight:600;text-decoration:none;display:inline-block;border-bottom:1px solid var(--line);padding-bottom:5px}.image-pair{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.image-pair img{aspect-ratio:1.3;object-fit:cover}.image-pair p{color:var(--muted);margin-top:24px}.image-pair .text-link{margin-top:30px}.band{padding:40px;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:75px}.band p{margin-top:14px;max-width:700px;color:var(--muted)}.footer{border-top:1px solid var(--line);padding-block:38px 30px;display:flex;justify-content:space-between;gap:30px;align-items:start}.footer nav{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:16px;max-width:680px}.footer .small{font-size:14px;margin-top:15px}.page-top{padding:70px 0 48px}.page-top .lede{max-width:780px;margin-top:25px;color:var(--muted);font-size:23px}.notice{border-left:2px solid var(--detail);padding-left:20px;font-size:17px;color:var(--muted);margin-top:28px;max-width:900px}.group-image{height:190px;object-fit:cover;margin-bottom:28px}.group-title{min-height:160px}.group-title p{margin-top:16px;color:var(--muted);font-size:18px}.offer-card{margin-top:20px;padding:25px;background:var(--paper);position:relative}.offer-card .eyebrow{font-size:12px;margin-bottom:16px}.offer-card h3{font-size:29px}.price{font-size:32px;font-weight:300;margin:20px 0 2px}.offer-card .text-link{margin-top:24px}.catalog{padding-bottom:70px}.detail-top{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding:55px 0}.detail-top img{height:390px;object-fit:cover}.detail-top h1{font-size:clamp(46px,4.5vw,68px)}.detail-top .lede{font-size:24px;margin-top:25px}.crumb{font-size:15px;display:inline-block;margin-top:35px}.detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;padding:40px 0 80px;align-items:start}.detail-copy>p{margin:25px 0;color:var(--muted)}.row{border-top:1px solid var(--line);padding:26px 0}.row p{margin-top:13px;color:var(--muted)}.signup{background:var(--paper);padding:35px}.signup h2{font-size:34px;margin-bottom:18px}.signup p{font-size:17px}.signup label.field{display:block;font-size:17px;margin:22px 0 8px}.signup input[type=email],.signup select{width:100%;background:var(--bg);color:var(--ink);padding:13px;border:1px solid var(--muted);border-radius:0;min-height:52px}.check{display:flex;align-items:start;gap:12px;font-size:16px;line-height:1.4;margin:22px 0}.check input{width:20px;height:20px;flex:0 0 20px;margin:2px 0;accent-color:var(--accent)}.signup .button{width:100%;margin:20px 0 15px}.form-status{padding:15px;border:1px solid var(--line);margin-top:16px;overflow-wrap:anywhere}.form-status:empty{display:none}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.prose{max-width:850px;padding-bottom:70px}.prose h2{font-size:30px;margin:38px 0 20px}.prose p,.prose li{color:var(--muted)}.prose ul{padding-left:24px}.faq{max-width:900px;margin-bottom:70px}.faq details{padding:25px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:24px}details p{padding-top:18px;color:var(--muted)}.status-pill{display:inline-block;border:1px solid var(--line);padding:7px 13px;font-size:14px;margin:22px 0}.people-card{padding:28px;background:var(--paper)}.people-card p{font-size:18px;color:var(--muted);margin-top:18px}.management{max-width:650px;padding-block:80px}.management h1{font-size:48px}.management p{margin:25px 0}
@media(min-width:1600px){.hero-photo{left:40%}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{gap:20px}.navigation{gap:16px}.hero-copy{max-width:53%}.hero h1{font-size:64px}.hero .lede{max-width:410px}.hero-photo{left:30%}.three{gap:22px}.detail-grid{gap:35px}.image-pair{gap:40px}.group-title{min-height:200px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{min-height:84px;flex-wrap:wrap;gap:12px}.brand{font-size:28px}.brand span{font-size:23px}#menu-toggle{display:block;background:none;border:1px solid var(--line);color:var(--ink);padding:7px 11px;font-size:16px}.theme-control>span{display:none}.theme-control select{font-size:14px;min-height:40px}.navigation{display:none;width:100%;order:4;padding:10px 0 20px}.navigation.open{display:flex;flex-wrap:wrap;gap:16px 25px}.hero{display:block;min-height:0}.hero-copy{max-width:none;padding:43px 0 20px}.hero h1{font-size:clamp(45px,9vw,66px);max-width:650px}.hero .lede{max-width:540px;font-size:21px;margin:22px 0}.hero-photo{position:relative;inset:auto;margin:0 -20px;height:340px}.hero-photo img{object-position:52% 30%}.hero-photo:after{background:linear-gradient(0deg,var(--bg),transparent 17%)}.hero .eyebrow{font-size:11px;margin-bottom:18px}.section{padding-block:48px}.three{grid-template-columns:1fr;gap:32px}.section-head{display:block}.section-head p{margin-top:20px}.image-pair{grid-template-columns:1fr;gap:30px}.image-pair img{aspect-ratio:1.6}.band{padding:28px;display:block;margin-bottom:45px}.band .button{margin-top:25px}.footer{display:block}.footer nav{margin-top:25px}.page-top{padding:45px 0 30px}.group-title{min-height:0}.group-image{height:220px}.catalog .three>section{margin-bottom:25px}.detail-top{grid-template-columns:1fr;gap:30px;padding:30px 0}.detail-top img{height:260px}.detail-grid{grid-template-columns:1fr;gap:25px;padding-top:20px}.signup{padding:25px}.detail-top .lede{font-size:22px}.group-title .eyebrow{margin-bottom:16px}.people-card{padding:25px}.management{padding-block:50px}.management h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Compass: program first, editorial pacing, warm forest palette. */
:root{--bg:#F2EFE6;--paper:#E8E4D8;--ink:#25362C;--muted:#4E5C51;--accent:#344F3D;--button:#FAF8F1;--line:#C9CEBF;--detail:#725435}
:root[data-theme=dark]{--bg:#1B2520;--paper:#25332B;--ink:#F2EFE6;--muted:#C0CBBF;--accent:#D8BE91;--button:#1B2520;--line:#455449;--detail:#D8BE91}
body{font-size:19px;line-height:1.6}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.12}h3{font-size:27px;font-weight:400;line-height:1.2;letter-spacing:-.015em}h1 em{font-weight:400;color:var(--detail)}.wrap{width:min(1320px,calc(100% - 96px))}.header{min-height:96px}.brand{font-family:Georgia,serif;letter-spacing:-.06em;font-size:36px}.eyebrow{letter-spacing:.12em;font-size:12px;margin-bottom:20px}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;min-height:0;padding:48px 0 64px;align-items:center}.hero-copy{max-width:none;padding:20px 0}.hero h1{font-size:clamp(45px,4.4vw,68px)}.hero .lede{font-size:20px;max-width:510px;margin:28px 0}.hero-photo{position:relative;inset:auto;z-index:auto;height:590px;overflow:hidden}.hero-photo img{object-position:58% center}.hero-photo:after{display:none}.button{font-size:17px;padding:15px 23px;gap:22px}.hero .small{font-size:14px}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:27px 0 31px;border-block:1px solid var(--line);gap:24px}.facts>div{border-right:1px solid var(--line);padding-right:20px}.facts>div:last-child{border:0}.facts strong{font-family:Georgia,serif;font-size:35px;font-weight:400;display:block}.facts span{display:block;font-size:15px;color:var(--muted);margin-top:6px}.section{padding-block:90px}.section-head{margin-bottom:50px;align-items:end;gap:55px}.section-head h2{font-size:clamp(36px,3.6vw,54px)}.section-head>p{max-width:475px;font-size:19px}.program-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}figure{margin:0;min-width:0}figure img{aspect-ratio:1.05;object-fit:cover}figcaption{font-size:12px;line-height:1.5;color:var(--muted);margin-top:10px}.program-notes article{display:flex;gap:23px;padding:27px 0;border-top:1px solid var(--line)}.program-notes article:last-child{border-bottom:1px solid var(--line)}.program-notes p{font-size:18px;color:var(--muted);margin-top:14px}.step{display:block;color:var(--detail);font-size:12px;font-weight:600;letter-spacing:.1em;margin-bottom:16px}.program-notes .step{margin-top:7px}.program .notice{max-width:none;font-size:15px;margin-top:32px}.two-reasons{display:grid;grid-template-columns:1fr 1fr;gap:65px}.two-reasons article{border-top:1px solid var(--line);padding-top:28px}.two-reasons h3{font-family:Georgia,serif;font-size:33px;line-height:1.2}.two-reasons p:last-child{color:var(--muted);margin-top:22px;max-width:550px}.social{gap:65px}.social h2{font-size:clamp(36px,3.6vw,54px)}.social figure img{aspect-ratio:1.15}.image-pair figcaption{margin-top:10px}.readiness .three{gap:40px}.readiness article{border-top:1px solid var(--line);padding-top:26px}.readiness article p{font-size:18px;color:var(--muted);margin:18px 0 24px}.band{padding:48px;margin-top:25px;gap:50px;border-top:3px solid var(--accent)}.band h2{font-size:42px}.band>div{max-width:770px}.band .button{white-space:nowrap}.band p{font-size:18px}.band p.small{font-size:15px}.group-image{height:280px}.group-title{min-height:200px}.group-title h2{font-family:Georgia,serif;font-size:34px}.offer-card{background:transparent;border-top:1px solid var(--line);padding:26px 0 20px;margin-top:0}.offer-card .price{font-size:32px}.catalog .section{padding-bottom:35px}.detail-top img{height:440px}.signup{border-top:2px solid var(--accent)}.signup h2{font-family:Source,sans-serif}.page-top h1{font-size:clamp(43px,5vw,68px)}.footer>div:first-child{max-width:300px}.footer>div:last-child{max-width:710px}.footer .small{line-height:1.6}.people-card{background:transparent;border-top:1px solid var(--line);padding:25px 0}.page-top+.section{padding-top:30px}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:30px}.hero-photo{height:560px}.hero-copy{max-width:none}.hero h1{font-size:51px}.program-layout{gap:35px}.band{display:block}.band .button{margin-top:25px}.group-title{min-height:240px}.image-pair{gap:35px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{min-height:82px}.brand{font-size:30px}.hero{grid-template-columns:1fr;gap:20px;padding:20px 0 32px}.hero-copy{padding:20px 0 5px}.hero h1{font-size:clamp(43px,8.5vw,61px)}.hero .lede{font-size:19px;max-width:620px}.hero-photo{height:340px;margin:0;inset:auto}.hero-photo img{object-position:55% 40%}.facts{grid-template-columns:1fr 1fr;gap:24px;padding-block:23px}.facts>div:nth-child(2){border:0}.facts strong{font-size:29px}.facts span{font-size:13px}.section{padding-block:55px}.section-head{margin-bottom:30px}.section-head>p{font-size:18px;max-width:none;margin-top:23px}.program-layout,.two-reasons{grid-template-columns:1fr;gap:32px}figure img{aspect-ratio:1.3}.program-notes article{padding:24px 0}.two-reasons h3{font-size:29px}.social{gap:28px}.social figure img{aspect-ratio:1.3}.readiness .three{gap:28px}.band{padding:25px;margin-top:10px}.band h2{font-size:34px}.band .button{white-space:normal}.group-title{min-height:0}.group-image{height:250px}.detail-top img{height:280px}.footer>div:first-child,.footer>div:last-child{max-width:none}.page-top{padding-top:40px}.page-top .lede{font-size:20px}.detail-grid{gap:30px}.header .navigation{font-size:17px}}

/* Soft hero edges follow both themes. The sun is at x=614/1200 in the source. */
.hero-photo {
  container-type: size;
  margin-inline: -48px -24px;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 30%, #000 70%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 30%, #000 70%, transparent);
}
.hero-photo img {
  position: absolute;
  left: 50%;
  top: 0;
  width: max(100cqw, 177.68cqh);
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transform: translateX(-51.1667%);
}
.hero-photo::after {
  display: block;
  background: linear-gradient(180deg, var(--bg), transparent 9%, transparent 82%, var(--bg));
  pointer-events: none;
}
@media (max-width: 800px) {
  .hero-photo { margin-inline: 0; }
}
