@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Source+Sans+3:wght@400;500;600;700&display=swap');
:root{--navy:#103b49;--teal:#0f6b73;--water:#7fb8c1;--sand:#d9b892;--clay:#c27046;--cream:#f7e9d7;--paper:#fffdf9}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--navy);font:19px/1.65 'Source Sans 3',sans-serif}h1,h2,h3,nav,.button,.eyebrow{font-family:Montserrat,sans-serif}h1{font-size:clamp(40px,5.2vw,74px);line-height:1.08;letter-spacing:-2.7px;font-weight:600;margin:20px 0 25px}h2{font-size:clamp(30px,3vw,43px);line-height:1.2;letter-spacing:-1.2px;margin:12px 0 22px}h3{font-size:22px;line-height:1.35}p{margin:0 0 20px}a{color:var(--teal)}a:hover{text-decoration:none}header{border-bottom:1px solid #e6e5df;background:white;position:relative;z-index:10}.header-inner{max-width:1320px;margin:auto;padding:15px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:235px;height:79px;object-fit:contain;display:block}nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:600}nav a{text-decoration:none;color:var(--navy)}nav a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:8px}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 23px;border-radius:5px;background:var(--teal);color:white;text-decoration:none;font-size:13px;line-height:1.5;font-weight:600;border:1px solid var(--teal);cursor:pointer}.button:hover{background:#0b5259}.button.light{background:var(--cream);border-color:var(--cream);color:var(--navy)}.button.outline{background:transparent;color:var(--navy);border-color:#a4b4b8}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--teal)}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:630px}.hero-copy{padding:85px 55px 70px max(40px,calc((100vw - 1240px)/2));align-self:center}.hero-copy p{max-width:520px;font-size:22px}.hero-art{overflow:hidden;position:relative;background:#eddbc5;display:flex;align-items:stretch}.hero-art svg{width:100%;height:100%;min-height:630px;object-fit:cover}.art-label{position:absolute;bottom:35px;left:35px;background:#fffdf9eb;padding:13px 19px;font-size:12px;letter-spacing:2px;font-weight:600}.section{max-width:1240px;margin:auto;padding:85px 40px}.band{background:var(--cream)}.dark{background:var(--navy);color:white}.dark .eyebrow{color:var(--water)}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:32px}.section-head p{max-width:450px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.two{display:grid;grid-template-columns:1fr 1fr;gap:60px}.card{padding:34px;background:white;border:1px solid #e3e5df;border-radius:6px}.card .num{color:var(--clay);font:600 13px Montserrat;letter-spacing:2px}.card h3{margin:22px 0 15px}.card p{font-size:18px}.text-link{font:600 13px Montserrat;text-decoration:none;display:inline-block;margin-top:10px}.text-link:after{content:' ↗';margin-left:12px}.strip{max-width:1240px;margin:auto;display:flex;justify-content:space-between;gap:25px;padding:28px 40px;border-bottom:1px solid #dfdfd4;font:600 12px Montserrat;letter-spacing:1px}.quote{font:500 clamp(30px,4vw,52px)/1.3 Montserrat;letter-spacing:-1px}.statement{border-left:3px solid var(--clay);padding-left:28px}ul{padding-left:23px}.page-top{background:var(--cream)}.page-top .section{padding-top:65px;padding-bottom:60px}.page-top h1{max-width:900px;font-size:clamp(40px,4.7vw,64px)}.page-top p{font-size:22px;max-width:750px}.step-row{display:grid;grid-template-columns:65px 1fr;gap:25px;padding:26px 0;border-bottom:1px solid #d9dcd5}.step-number{width:49px;height:49px;background:var(--cream);display:grid;place-items:center;border-radius:50%;font:600 18px Montserrat;color:var(--teal)}.step-row h3{margin:0 0 8px}.note{padding:24px;background:#eef5f3;border-left:3px solid var(--teal);font-size:17px}details{border-bottom:1px solid #ced8d4;padding:22px 0}summary{font-family:Montserrat;font-size:17px;font-weight:600;cursor:pointer}details p{margin:15px 0 0}label{display:block;font:600 14px Montserrat;margin:20px 0 7px}input,select,textarea{width:100%;padding:13px;border:1px solid #a6b9b8;border-radius:4px;font:18px 'Source Sans 3';background:white;color:var(--navy)}textarea{min-height:130px}footer{border-top:1px solid #dce1dc;background:white}.footer-inner{max-width:1240px;margin:auto;padding:38px 40px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:15px}.footer-inner img{width:220px;display:block}.footer-links{display:flex;gap:20px}.menu{display:none}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--clay);outline-offset:4px}.small{font-size:15px;line-height:1.5}.pill{display:inline-block;padding:6px 12px;border:1px solid #aebdb5;border-radius:30px;font-size:13px}.resource{counter-reset:steps}.prompt{background:#eef5f3;padding:22px;border-radius:5px;font-size:18px} @media(max-width:1050px){nav{gap:16px}.header-inner{padding:15px 25px}.brand img{width:190px} .hero-copy{padding:60px 35px}.hero{min-height:540px}.hero-art svg{min-height:540px}}@media(max-width:780px){.header-inner{padding:10px 20px}.brand img{width:190px;height:65px}.menu{display:block;background:white;border:1px solid #c4d0ca;border-radius:4px;padding:10px;font:600 13px Montserrat;color:var(--navy)}nav{display:none;position:absolute;left:0;right:0;top:85px;background:white;padding:25px;flex-direction:column;align-items:stretch;gap:22px;border-bottom:1px solid #ccc}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:52px 25px 38px}.hero-copy p{font-size:20px}h1{letter-spacing:-1.6px}.hero-art svg{min-height:360px;height:360px}.art-label{bottom:20px;left:20px}.section{padding:55px 25px}.section-head,.two{display:block}.section-head p{margin-top:20px}.grid{grid-template-columns:1fr}.two>div+div{margin-top:32px}.strip{padding:22px 25px;font-size:10px;gap:15px;flex-wrap:wrap}.footer-inner{padding:30px 25px;align-items:start;flex-direction:column}.footer-links{flex-wrap:wrap}.page-top .section{padding:45px 25px}.page-top p{font-size:20px}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* Flyer visual direction */
:root{--navy:#123f47;--teal:#305f65;--cream:#f1e4cf;--paper:#fbf5eb;--clay:#b66e44}body{background:var(--paper)}h1,h2,h3{font-weight:800}h1{letter-spacing:-2.3px}header{background:#fffaf2;border-bottom:3px solid var(--clay)}.header-inner{padding:10px 40px}.brand img{width:280px;height:93px}.button{background:var(--clay);border-color:var(--clay);border-radius:3px;font-weight:700}.button:hover{background:#965432}.button.light{background:#f9eddb;border-color:#f9eddb}.eyebrow{color:#9a502e}.flyer-hero{min-height:460px;position:relative;background:linear-gradient(90deg,rgba(13,55,60,.96),rgba(22,67,71,.75) 45%,rgba(22,67,71,.08)),url('stepwell-hero.png') 70% 45%/cover;border-bottom:8px solid var(--clay)}.hero-content{max-width:1240px;margin:auto;padding:65px 40px;color:#fff9ef}.hero-content .eyebrow{color:#f1d1a3}.hero-content h1{font-size:clamp(58px,7.2vw,102px);line-height:1.02;margin:15px 0 20px}.hero-content h1 em{font-style:normal;color:#e9b45e}.hero-content p{font:600 25px/1.4 Montserrat}.hero-outline{background:transparent;border-color:#f7e9d7;color:#fff9ef}.flyer-intro{max-width:1240px;margin:auto;display:grid;grid-template-columns:1.45fr 1fr;border-bottom:1px solid #dcc8ad}.intro-main{padding:55px 40px}.intro-main .lead{font-weight:700;font-size:22px}.intro-side{background:var(--teal);color:#fff8ee;padding:55px 38px}.intro-side .eyebrow{color:#e8c58e}.intro-side h3{font-size:28px}.side-rule{height:3px;background:var(--clay);margin:25px 0}.section{padding-top:60px;padding-bottom:60px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.service-tile{display:flex;gap:20px;padding:25px 0;border-top:2px solid #d9bd9a;text-decoration:none;color:var(--navy);align-items:start}.service-tile:hover{background:#ead6b655}.service-tile h3{margin:0 0 8px;font-size:20px}.service-tile p{font-size:17px;margin:0}.service-number{font:800 30px Montserrat;color:var(--clay)}.service-tile>span:last-child{margin-left:auto;color:var(--teal)}.level-stairs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));align-items:start;gap:5px;margin:32px 0 0;padding:0;background:var(--cream)}.stair{display:flex;flex-direction:column;justify-content:start;align-items:center;text-decoration:none;color:var(--navy);padding:14px 5px 18px;margin-top:calc((var(--step) - 1)*16px);min-height:112px;background:var(--sand);border-top:3px solid #fff3df;font-family:Montserrat;gap:7px}.stair-1,.stair-2,.stair-3{background:#b97a50;color:#fff9ef}.stair-4,.stair-5,.stair-6{background:#d2b58f}.stair-7,.stair-8{background:var(--teal);color:#fff9ef}.stair span{font-size:9px;letter-spacing:1px;font-weight:800}.stair strong{font-size:34px;line-height:1}.stair b{font-size:clamp(10px,1vw,13px);word-break:normal}.stair:hover{filter:brightness(1.1)}.landing-labels{display:grid;grid-template-columns:3fr 3fr 2fr;padding:18px 0;font:700 10px Montserrat;letter-spacing:1px;gap:10px}.landing-section:nth-of-type(odd){background:#e9dcc6}.class-card{border:none;border-top:5px solid var(--clay);border-radius:0;background:#fffbf4}.class-card .text-link{display:block;margin-top:23px}.class-card .pill{font-size:12px}.card{border-color:#dbc6a8;border-radius:0;background:#fffbf3}.class-grid:has(>.card:nth-child(2):last-child){grid-template-columns:1fr 1fr}.page-top{background:linear-gradient(115deg,#eee0c8,#f9f1e4);border-bottom:6px solid var(--clay)}.page-top .eyebrow{letter-spacing:1.5px}.page-top h1{font-weight:800}.dark{background:var(--teal);border-top:6px solid var(--clay)}.dark .eyebrow{color:#ebc68d}.beliefs{display:grid;grid-template-columns:repeat(5,1fr);gap:25px;margin-top:30px}.beliefs span{color:var(--clay);font:800 26px Montserrat}.beliefs h3{font-size:17px;margin:12px 0}.beliefs p{font-size:17px}.services-menu{position:relative;margin:0;padding:0;border:none}.services-menu summary{font:600 13px Montserrat;list-style:none;padding:12px 0;color:var(--navy)}.services-menu summary:after{content:' ▾'}.service-dropdown{position:absolute;left:-25px;top:40px;width:330px;background:#fffaf1;border:1px solid #d8bea0;border-top:4px solid var(--clay);box-shadow:0 12px 35px #173c3e26;padding:15px;z-index:20;display:grid;gap:0}.service-dropdown a{padding:10px;font-size:13px}.service-dropdown a:hover{background:#efdfc6}.agenda summary{line-height:1.5}.agenda li{margin:10px 0}.note{background:#e9eee8}.footer-inner img{width:250px}.brand img{object-fit:contain}
@media(max-width:1050px){.brand img{width:220px;height:73px}.header-inner{padding:10px 25px}nav{gap:16px;font-size:12px}.button{padding:12px 18px;font-size:12px}}
@media(max-width:780px){.brand img{width:215px;height:72px}.header-inner{padding:7px 20px}nav{top:89px;background:#fff9ef;max-height:calc(100vh - 89px);overflow:auto}.flyer-hero{min-height:410px;background-position:65% 45%}.hero-content{padding:45px 25px}.hero-content h1{font-size:68px;letter-spacing:-2px}.hero-content p{font-size:20px}.flyer-intro{grid-template-columns:1fr}.intro-main,.intro-side{padding:38px 25px}.service-grid{grid-template-columns:1fr}.service-tile{gap:15px}.beliefs{grid-template-columns:1fr 1fr;gap:20px}.service-dropdown{position:static;width:100%;box-shadow:none;margin-top:5px}.services-menu summary{padding:0}.level-stairs{grid-template-columns:repeat(4,1fr);gap:5px}.stair{margin-top:0;min-height:112px}.stair b{font-size:11px}.stair:nth-child(n+5){margin-top:5px}.landing-labels{grid-template-columns:1fr;gap:9px}.class-grid:has(>.card:nth-child(2):last-child){grid-template-columns:1fr}.page-top h1{font-size:39px;letter-spacing:-1px}.section{padding:45px 25px}}

/* Compact Eight Levels layout */
.level-stairs{align-items:stretch;gap:6px;margin:20px 0 0;background:transparent}
.stair{margin-top:0;min-height:96px;padding:12px 6px;gap:4px}
.stair strong{font-size:28px}
.landing-labels{padding:10px 0;letter-spacing:.8px}
.levels-page main{font-size:18px;line-height:1.5}
.levels-page .section{padding:32px 40px}
.levels-page .page-top .section{padding:32px 40px 26px}
.levels-page h1{font-size:clamp(34px,3.7vw,48px);line-height:1.12;margin:12px 0 14px;letter-spacing:-1.4px}
.levels-page h2{font-size:clamp(26px,2.6vw,32px);line-height:1.22;margin:8px 0 14px;letter-spacing:-.7px}
.levels-page h3{font-size:20px;line-height:1.35;margin:16px 0 10px}
.levels-page p{margin-bottom:14px}
.levels-page .page-top p{font-size:20px;line-height:1.5;margin-bottom:0}
.levels-page .two{gap:32px}
.levels-page .card{padding:22px}
.levels-page .card h3{margin:12px 0 10px}
.levels-page .class-grid{gap:16px}
.levels-page .class-card .text-link{margin-top:14px}
.levels-page .actions{margin:18px 0}
.levels-page .note{padding:16px;margin:12px 0 0}
.levels-page .agenda{padding:12px 0}
.levels-page .agenda li{margin:6px 0}
.levels-page .section:has(>.text-link:only-child){padding-top:16px;padding-bottom:16px}
.levels-page .section>p:last-child,.levels-page .two>div>p:last-child{margin-bottom:0}
@media(max-width:780px){
 .stair,.stair:nth-child(n+5){margin-top:0;min-height:94px}
 .landing-labels{display:flex;flex-wrap:wrap;gap:8px 18px}
 .levels-page .section,.levels-page .page-top .section{padding:26px 25px}
 .levels-page h1{font-size:34px;letter-spacing:-1px}
 .levels-page h2{font-size:26px}
 .levels-page .two>div+div,.levels-page .two>aside{margin-top:20px}
 .levels-page .card{padding:20px}
}
