/* Light editorial direction. Shared by all four pages. */
:root{--green:#173e35;--yellow:#e9cc78;--paper:#fff;--ink:#183a32;--muted:#52645f}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.75;background:#fff}
header{background:#fff;padding:25px max(5vw,calc((100vw - 1440px)/2));border-color:#e3eae7;gap:2rem}
.brand{font-size:25px}.brand small{font-size:12px;letter-spacing:1.6px}
header nav{gap:24px}header nav a{font-size:14px;font-weight:500}
.nav-contact{border-radius:30px;padding:10px 20px}
h1,h2,h3{letter-spacing:-.035em;line-height:1.15}
h1{font-size:clamp(46px,5.2vw,80px)}h2{font-size:clamp(35px,3.6vw,54px)}h3{font-size:28px}
.eyebrow{font-size:13px;letter-spacing:1.35px;font-weight:600;color:#54736a;margin-bottom:22px}
.section{max-width:1440px;padding:80px 7vw}.big{font-size:clamp(21px,1.8vw,25px);line-height:1.6}
.hero{max-width:1440px;margin:0 auto;background:#fff;color:var(--ink);grid-template-columns:1.12fr .88fr;min-height:650px;padding:34px 5vw 54px;gap:5vw;align-items:center}
.hero-copy{padding:35px 0;min-width:0}.hero-copy .eyebrow{max-width:440px;margin-bottom:16px}
.hero-copy h1{margin:20px 0 24px}.hero-copy h1 em{color:var(--green)}
.hero-copy p{color:var(--muted);max-width:540px}.hero-copy .lead{color:var(--ink);font:27px/1.4 Georgia,serif;margin-bottom:20px}
.hero-copy .hero-topic{font-size:14px;max-width:470px;margin:0;color:#536b62}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}
.hero-note{color:var(--muted);font-size:14px;margin-top:20px}
.hero-photo{min-height:570px;height:100%;max-height:660px;border-radius:6px;overflow:hidden}
.hero-photo:after{display:none}.hero-photo figcaption{bottom:20px;left:20px;right:20px;background:#ffffffed;color:var(--green);padding:17px 20px;border-radius:3px}
.hero-photo figcaption span{font-size:25px}.hero-photo figcaption small{font-size:13px;line-height:1.6}
.button{border-radius:30px;padding:15px 25px;font-size:15px;box-shadow:none;transition:background .2s,transform .2s}
.yellow{background:var(--yellow)}.dark:hover{background:#28584b}.text-link{font-size:16px;line-height:1.7}
.ribbon{background:#fff;border-top:1px solid #e3eae7;border-bottom:1px solid #e3eae7;color:#5c736a;padding:22px 5vw;letter-spacing:2px;font-size:12px}
.intro,.experience,.about{gap:6vw}.vision-lenses{gap:35px;margin-top:0}.vision-lenses article{border-color:#dce7e1;padding-top:25px}.vision-lenses p{font-size:17px}
.for-palestra,.courses,.wheel-section,.reviews,.em-senses,.em-converge,.ecology{background:#f7f9f8}
.for-palestra,.courses,.wheel-section,.em-senses,.em-converge,.ecology{max-width:none}
.words{padding-top:65px;padding-bottom:65px}.word-grid{gap:35px}.word-grid p{font-size:16px}.word-grid small{font-size:13px}.word-grid h3{font-size:28px}
.section-head{margin-bottom:24px}.section-head h2{margin-bottom:20px}.course-grid{gap:28px}
.course{background:#fff;color:var(--ink);border:1px solid #dbe5df;border-radius:6px;padding:38px;box-shadow:none}
.course.base{border-top:3px solid #173e35}.course.level-two{border-top:3px solid #aac5b9}
.course h3{font-size:clamp(32px,3vw,42px)}.course p,.level-two p{color:var(--muted);font-size:17px}
.course-top{font-size:13px;letter-spacing:1px}.badge,.future-badge{background:#edf4ef;color:#315348;border:0;font-size:12px;padding:5px 11px}
.level-note{border-color:#dce7e1;font-size:16px;color:var(--muted)}.format{font-size:14px}.level-two .button{background:var(--green);color:#fff}
.future-path{border-color:#dbe5df;padding-top:45px;margin-top:45px}.future-grid{gap:28px}.future-grid article{background:#fff;border-color:#dbe5df;padding:32px}.future-grid h3{font-size:33px}
.service-choice{margin:38px auto 0;text-align:center}.service-choice blockquote{border-left:0;padding:0;font-size:25px}.service-choice p{color:var(--muted)}
.key-heading h2{margin-bottom:30px}.key-wheel{background:#f0f6f2;border:1px solid #aecbbd;box-shadow:inset 0 0 0 30px #f8fbf9}
.key-wheel:before{border-color:#d2e3d9}.key-emerging{background:#f0f6f2;border:1px solid #aecbbd;box-shadow:none;font-size:16px;font-weight:500;padding:12px 16px}
.key-center{background:#fff;color:var(--green);border:1px solid #d2e3d9}.key-center>span{color:#54736a}.key-center strong{color:var(--green);font-size:26px}.key-center small{color:var(--muted)}
.spiral-note{border-color:#d8e5dd;max-width:740px;padding-top:26px}.spiral-note strong{font-size:26px}.spiral-note p{color:var(--muted)}
.palestra-photo{position:relative}.palestra-photo img{border-radius:5px}.palestra-photo figcaption{position:static;margin:12px 0 0;font-size:14px;color:var(--muted)}
.experience-list h3{font-size:27px}.experience-list p{font-size:17px}.experience-list article{border-color:#e0e9e4;padding:25px 0}
.palestra-logo-video{max-width:390px;margin-top:32px}
.butterfly-preview{border-color:#e3eae7}.preview-note{background:#f7f9f8;border-left:2px solid #c8dcd1;border-radius:0}.preview-note>span{font-size:13px;letter-spacing:1px}
.quote{background:#fff;padding:75px 6vw;border-block:1px solid #e3eae7}.quote blockquote{font-size:clamp(32px,4vw,56px);line-height:1.35}.quote>span{font-size:13px;color:var(--muted)}
.reviews{max-width:none}.reviews-heading{max-width:1100px;margin:auto}.review-track{max-width:1100px;margin:auto}.review-card{background:transparent;border-top:1px solid #c8dcd1;padding:35px 0 20px}
.review-card h3{font-family:inherit;font-weight:500;font-size:16px;color:var(--muted)}.review-card blockquote{font:clamp(23px,2.6vw,34px)/1.55 Georgia,serif;font-style:normal;max-width:950px;margin-bottom:28px}
.review-author{font-size:16px}.review-controls button{width:44px;height:44px;border-color:#acbfb4;font-size:27px}.reviews-source{display:block;max-width:1100px;margin:20px auto 0}
.contact{background:var(--green);max-width:none;padding-block:85px}.contact .eyebrow{color:#cadfd3}.contact h2{font-size:clamp(40px,4.5vw,62px)}.contact p{font-size:18px}.contact h2 em{color:#e9cc78}
.faq{max-width:1080px}.faq summary{font-size:18px;line-height:1.55}.faq details{border-color:#e1e9e4}.faq details p{font-size:17px}.faq-intro{font-size:17px;color:var(--muted);margin-bottom:28px}
.song-hero,.em-hero{background:#fff;color:var(--ink);border-bottom:1px solid #e3eae7;padding-top:65px;padding-bottom:65px}
.song-hero h1{font-size:clamp(46px,6vw,84px);letter-spacing:-.035em}.song-hero h1 em,.em-hero h1 em{color:var(--green)}
.song-hero-bottom p,.song-hero-bottom .big,.song-hero-bottom small,.em-hero p:not(.big){color:var(--muted)}.three-times{border-color:#c8dcd1}.three-times em{color:#54736a}
.song-hero .yellow{background:var(--green);color:#fff}.song-identity{gap:25px}.butterfly-logo{width:150px}
.em-hero h1{font-size:clamp(42px,5vw,68px)}.em-breadcrumb{color:var(--muted)}.em-hero blockquote{border-color:#d5b961;font-size:25px}
.song-living{background:#f7f9f8;border-block:1px solid #e3eae7}.personal-quote{font-size:23px}.song-definition{padding-block:75px}
.song-audio{background:var(--green);max-width:none}.song-audio .eyebrow{color:#cadfd3}.audio-grid{gap:25px}.audio-grid .audio-card{background:#254d41;border:1px solid #416759;padding:28px;border-radius:5px}.audio-grid .audio-card h3{font-size:30px}
.song-author img{border-radius:5px}.ecology-music-photo{max-width:920px}.em-note-section blockquote{font-size:clamp(28px,3vw,40px);line-height:1.55}
.em-newspaper-section{padding-top:30px}.em-newspaper{background:#fff;border-color:#7c857f;padding:35px;box-shadow:none}.em-after-joke{margin-top:45px}.senses-words{font-size:26px}
footer.site-footer{max-width:1440px;margin:auto;background:#fff;border-color:#e3eae7;padding:45px 5vw}.footer-resources{border-color:#e3eae7}.footer-info{border-color:#e3eae7}.footer-info p{color:var(--muted)}
@media(min-width:1600px){.hero-copy{padding-left:0}}
@media(max-width:1000px){header{gap:20px}.hero{gap:30px;min-height:580px}.hero-photo{min-height:510px}.hero-copy h1{font-size:58px}.section{padding:65px 6vw}.word-grid h3{font-size:25px}.course{padding:30px}.song-identity{align-items:flex-start}.butterfly-logo{width:120px}}
@media(max-width:700px){.hero{display:flex;padding:25px 6vw 45px;gap:12px}.hero-copy{padding:20px 0}.hero-copy h1{font-size:clamp(45px,10vw,62px)}.hero-copy .lead{font-size:25px}.hero-photo{width:100%;min-height:440px;max-height:520px}.hero-photo img[src="franco-polo-clean.webp"]{object-position:center 22%}.hero-actions{gap:18px}.hero-photo figcaption span{font-size:23px}.section{padding:58px 6vw}.intro,.experience,.about,.ecology,.song-package,.song-for,.song-author,.em-family,.em-senses,.em-song{grid-template-columns:1fr;gap:25px}.song-hero-bottom{grid-template-columns:1fr;gap:30px}.three-times{border-left:0;border-top:1px solid #c8dcd1;padding:25px 0 0}.ribbon{font-size:11px;letter-spacing:1px;gap:8px;padding:18px 4vw}.word-grid{gap:28px 22px}.word-grid h3{font-size:24px}.course-grid,.future-grid{grid-template-columns:1fr}.course{padding:28px 24px}.key-wheel{width:78%;box-shadow:inset 0 0 0 18px #f8fbf9}.key-emerging{font-size:14px;padding:9px 11px}.key-center strong{font-size:20px}.key-center small{font-size:12px}.key-center>span{font-size:11px}.review-card{padding:25px 0 18px}.review-card blockquote{font-size:24px}.song-identity{flex-direction:column}.butterfly-logo{width:105px}.song-hero h1{font-size:48px}.em-newspaper{padding:25px 20px}.palestra-logo-video{max-width:100%}.contact p{font-size:17px}.footer-resources{gap:15px 24px}}
@media(max-width:360px){.key-center strong{font-size:17px}.key-emerging{padding:8px 9px}.ribbon{letter-spacing:0}.hero-photo{min-height:390px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
/* A luminous, distinctive identity: forest green, warm ivory, brass. */
:root{--green:#163f35;--yellow:#ecd087;--paper:#fffdf8;--ink:#173d33;--muted:#53665d}
body{background:var(--paper)}
header{background:#fffdf8;border-bottom:2px solid #c3a46a}
.brand i{color:#866524}.nav-contact{background:var(--green);color:#fff;border-color:var(--green)}
.hero{background:#fffdf8;position:relative;border-bottom:1px solid #d7c7a6}
.hero-copy{border-left:3px solid #b39251;padding-left:28px}
.hero-copy h1 em{color:#795a20}.hero-copy .eyebrow{color:#755921}
.hero-photo{border-radius:180px 180px 5px 5px;border:1px solid #b39251}
.hero-photo figcaption{background:#163f35ed;color:#fff8e8;border-radius:0;border-top:2px solid #ecd087}
.button{background:var(--green);color:#fff}.button.yellow,.contact .button.yellow{background:var(--yellow);color:var(--green)}
.ribbon{background:var(--green);color:#eee0ba;border-color:var(--green);padding-block:24px}
.for-palestra,.courses,.em-senses,.em-converge,.ecology{background:#f4efe3}
.eyebrow{color:#795e29}.word-grid article{border-top:2px solid #b39251;padding-top:22px}
.vision-lenses article{border-top:2px solid #b39251}
.course{border-color:#d8c9a9;border-radius:3px}.course.base{border-top:4px solid #b39251}
.course.level-two{background:var(--green);color:#fffaf0;border:1px solid var(--green);border-top:4px solid #ecd087}
.course.level-two p,.course.level-two .level-note{color:#e0e9e1}.course.level-two .level-note{border-color:#587769}
.course.level-two .button{background:#ecd087;color:var(--green)}.course.level-two .badge{background:#365c4d;color:#fff3cb}
.future-grid article{border-color:#d8c9a9;border-top:2px solid #b39251;background:#fffdf8}
.wheel-section{background:#e8eee6;border-block:1px solid #bacbb9}
.key-wheel{background:#dce7d9;border:2px solid #8b9f88;box-shadow:inset 0 0 0 30px #eaf0e5}
.key-wheel:before{border:1px solid #ae955c}
.key-emerging{background:#eaf0e5;border-color:#8b9f88;color:#163f35}
.key-center{background:var(--green);border:2px solid #c5a665;color:#fffaf0}
.key-center strong{color:#f0d791}.key-center>span,.key-center small{color:#e2ece1}
.spiral-note{border-color:#a4b79e}.palestra-photo img{border-radius:3px;border:1px solid #a4b79e}
.preview-note{background:#f4efe3;border-left:3px solid #b39251}
.quote{background:var(--green);color:#fffaf0;border-block:1px solid #b39251}.quote em{color:#f0d791}.quote>span{color:#e4d6b3}
.reviews{background:#fffdf8;border-top:1px solid #d8c9a9}.review-card{border-top:2px solid #b39251}.review-author{color:#795e29}
.review-controls button{background:#f4efe3;border-color:#b39251}
.song-hero,.em-hero{background:#f4efe3;border-bottom:2px solid #b39251}
.song-hero h1 em,.em-hero h1 em{color:#795a20}
.song-living{background:#e8eee6;border-color:#b4c6ae}.song-audio{border-block:2px solid #b39251}
.audio-grid .audio-card{border-color:#8c9f7c;border-radius:3px}
.em-newspaper{background:#fffaf0;border-color:#9f895c}
.em-note-section{border-block:1px solid #d8c9a9;background:#fffdf8}
.contact{border-top:3px solid #b39251}
footer.site-footer{background:#fffdf8;border-top:2px solid #b39251}
@media(max-width:700px){.hero-copy{padding-left:20px}.hero-photo{border-radius:140px 140px 4px 4px}.key-wheel{box-shadow:inset 0 0 0 18px #eaf0e5}.butterfly-preview{grid-template-columns:1fr;gap:25px}}
/* Give the wheel's words a clear foreground, with room at every size. */
.wheel-section{background:#f5f2e8;border-color:#d4c7a7}
.key-heading h2{max-width:700px;margin-inline:auto}
.key-wheel{width:min(78%,600px);margin:55px auto 50px;background:#e4e9dd;border:2px solid #b09a60;box-shadow:inset 0 0 0 28px #f5f2e8}
.key-wheel:before{inset:16%;border:1px solid #b09a60}
.key-emerging{z-index:2;background:#163f35;color:#fffdf8;border:1px solid #163f35;font-size:18px;font-weight:600;letter-spacing:0;line-height:1.35;padding:12px 20px;box-shadow:0 3px 0 #c5a665}
.key-center{inset:23%;padding:18px;background:#fffdf8;border:2px solid #b09a60;box-shadow:none}
.key-center strong{font:30px/1.18 Georgia,serif;color:#163f35;margin:0 0 14px}
.key-center small{color:#53665d;font-size:16px;line-height:1.45}
.key-1{top:0}.key-2,.key-8{top:20%}.key-4,.key-6{top:80%}.key-5{top:100%}
.spiral-note{border-color:#b09a60}
.hero-photo figcaption span{font-style:normal}.hero-copy .lead{font-size:29px}
.course h3{margin-bottom:25px}.course-top{letter-spacing:1.3px}
.reviews-heading .eyebrow{color:#795e29}.review-author{font-weight:600}
@media(max-width:800px){.key-emerging{font-size:17px;padding:11px 15px}.key-center strong{font-size:27px}}
@media(max-width:700px){.key-wheel{width:78%;margin:48px auto 45px;box-shadow:inset 0 0 0 18px #f5f2e8}.key-emerging{font-size:16px;padding:10px 12px}.key-center{inset:23%;padding:8px}.key-center strong{font-size:clamp(20px,4.4vw,27px);margin:0 0 8px}.key-center small{font-size:14px;line-height:1.35}.key-6{max-width:108px}.hero-copy .lead{font-size:25px}}
@media(max-width:360px){.key-emerging{font-size:14px;padding:10px}.key-center strong{font-size:19px}.key-center small{font-size:14px}}
@media(max-width:700px){.key-6{top:76%}}
/* Compact mobile masthead; the opening message has its own space. */
.mobile-menu-toggle{display:none}
@media(max-width:900px){
  header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0;padding:20px 6vw;background:#fffdf8;border-bottom:1px solid #c3a46a}
  header .brand{font-size:23px;line-height:1.2;min-width:0}
  header .brand small{font-size:11px;letter-spacing:1.5px;margin-top:7px}
  .menu-ready .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 15px;border:1px solid #163f35;border-radius:25px;background:#fffdf8;color:#163f35;font-family:inherit;font-size:14px;font-weight:500;line-height:1.2;cursor:pointer}
  .mobile-menu-toggle span{font-size:21px;line-height:1;font-weight:400}
  .mobile-menu-toggle:focus-visible{outline:3px solid #795a20;outline-offset:4px}
  header nav{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;width:100%;padding-top:20px;margin-top:18px;border-top:1px solid #d8c9a9}
  header.menu-ready nav{display:none}
  header.menu-ready.menu-open nav{display:grid}
  header nav a{display:flex!important;align-items:center;min-height:44px;font-size:15px;line-height:1.4;padding:8px 0}
  header nav .nav-contact{grid-column:1/-1;justify-content:center;margin-top:8px;padding:12px 20px}
}
@media(max-width:700px){
  .hero{flex-direction:column;align-items:stretch;min-height:0;padding:34px 6vw 42px;gap:24px}
  .hero-copy{padding:0;border-left:0}
  .hero-copy .eyebrow{font-size:12px;letter-spacing:1px;line-height:1.6;margin:0 0 20px;max-width:290px}
  .hero-copy .hero-topic{display:none}
  .hero-copy h1{font-size:clamp(44px,12vw,62px);line-height:1.08;letter-spacing:-1.5px;margin:0 0 24px}
  .hero-copy .lead{font-size:24px;line-height:1.45;margin-bottom:18px}
  .hero-copy p{font-size:17px;line-height:1.7}
  .hero-actions{flex-direction:column;align-items:flex-start;gap:17px;margin-top:24px}
  .hero-actions .button{width:100%;max-width:360px}
  .hero-note{font-size:14px;line-height:1.6;margin-top:20px}
  .hero-photo{height:440px;min-height:440px;max-height:440px;flex:none}
  .song-hero,.em-hero{padding-top:36px}
}
@media(max-width:360px){header .brand{font-size:20px}.menu-ready .mobile-menu-toggle{padding:10px 12px}.hero-photo{height:390px;min-height:390px;max-height:390px}}
