:root{--blue:#0d4f78;--green:#88a33a;--ink:#153342;--muted:#526a75;--pale:#f2f5ea;--line:#dbe4e7;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65;background:white}a{color:inherit}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}header{position:sticky;top:0;z-index:10;background:#fffffff5;border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.navwrap{max-width:1320px;margin:auto;padding:12px 4%;display:flex;align-items:center;gap:28px}.logo{display:block;width:185px;height:65px;object-fit:cover;object-position:center}.brand{margin-right:auto}nav{display:flex;gap:25px;align-items:center}nav a{text-decoration:none;font-size:.9rem;font-weight:600;white-space:nowrap}nav a[aria-current=page]{color:var(--blue);border-bottom:2px solid var(--green)}.languages{display:flex;gap:3px;border:1px solid var(--line);padding:3px;border-radius:6px}.languages a{text-decoration:none;padding:4px 8px;font-size:.875rem;font-weight:bold;border-radius:3px}.languages a.active{background:var(--blue);color:white}.menubtn{display:none;background:none;border:1px solid var(--line);border-radius:4px;padding:8px 12px}.wrap{max-width:1240px;margin:auto;padding:0 5%}.eyebrow{color:var(--blue);font-weight:bold;font-size:.8rem;letter-spacing:.15em;margin:0 0 22px}.hero{display:grid;grid-template-columns:1fr 1.04fr;min-height:580px;max-width:1440px;margin:auto}.hero-copy{padding:80px 8% 65px 12%;align-self:center}.hero h1{font-size:clamp(2.4rem,4.3vw,4rem);line-height:1.12;letter-spacing:-.055em;margin:0 0 25px;color:var(--blue);font-weight:600}.hero h1 span{color:#607f20}.hero-copy>p:not(.eyebrow){max-width:480px;font-size:1.15rem;color:var(--muted)}.hero-visual{position:relative;min-height:500px;margin:26px 26px 26px 0;border-radius:3px 3px 80px 3px;overflow:hidden}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:60% center}.hero-caption{position:absolute;bottom:28px;left:28px;background:var(--white);padding:14px 22px;color:var(--blue);font-size:.875rem;border-left:4px solid var(--green)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-block;padding:13px 21px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:4px;text-decoration:none;font-weight:600;font-size:.95rem}.btn:hover{background:#093959}.btn.light{background:white;color:var(--blue);border-color:var(--line)}.ribbon{background:var(--pale);display:flex;justify-content:center;gap:65px;padding:22px 5%;color:var(--blue);font-size:.95rem}.ribbon span:before{content:'✓';font-weight:bold;color:#607f20;margin-right:12px}.section{padding:82px 0}.section.soft{background:#f7f9fa}.section h2,.pagehead h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.2;letter-spacing:-.04em;color:var(--blue);margin:0 0 22px;font-weight:600}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:38px}.section-intro p{margin:0;color:var(--muted);max-width:540px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);padding:30px 27px;background:white;border-radius:6px;display:flex;flex-direction:column;position:relative;border-top:4px solid var(--green)}.card:nth-child(2){border-top-color:var(--blue)}.card .tag{font-size:.75rem;letter-spacing:.1em;color:#607f20;font-weight:bold}.card h3{font-size:1.45rem;line-height:1.28;color:var(--blue);margin:18px 0 12px}.card p{color:var(--muted);font-size:.98rem}.card a{margin-top:auto;font-weight:bold;text-decoration:none;color:var(--blue);padding-top:18px}.card a:hover{text-decoration:underline}.card ul{padding-left:20px;color:var(--muted)}.pagehead{padding:70px 0 25px;max-width:800px}.pagehead p{font-size:1.15rem;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.triad{display:grid;grid-template-columns:1fr 1fr;gap:20px;position:relative}.triad article{padding:22px;background:var(--pale);border-radius:6px;border-left:3px solid var(--green)}.triad article:first-child{grid-column:1/3;max-width:300px;justify-self:center}.triad h3{color:var(--blue);margin:0 0 8px}.triad p{font-size:.95rem;margin:0}.triad .center{grid-column:1/3;text-align:center;color:var(--blue);font-weight:bold;letter-spacing:.05em}.textlink{display:inline-block;color:var(--blue);font-weight:bold;margin-top:20px;text-underline-offset:6px}.chips{display:flex;flex-wrap:wrap;gap:12px}.chips span{background:var(--pale);border:1px solid #d9e2c4;border-radius:5px;padding:10px 17px;color:var(--ink)}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:32px}.step{border-top:2px solid var(--green);padding-top:22px}.step b{font-size:.8rem;color:#607f20}.step h3{font-size:1.1rem;color:var(--blue)}.step p{color:var(--muted);font-size:.95rem}.callout{background:var(--blue);color:white;padding:55px;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:40px}.callout h2{color:white;font-size:2.1rem}.callout p{max-width:650px;margin-bottom:0}.callout .btn{background:white;color:var(--blue);white-space:nowrap}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.values article{border-top:2px solid var(--green);padding-top:24px}.values h3{color:var(--blue);font-size:1.3rem}.values p{color:var(--muted)}.wideimg{width:100%;display:block;border-radius:5px}.infographic{display:block;margin-top:30px;width:100%;border:1px solid var(--line);border-radius:4px}.faq{max-width:850px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-size:1.1rem;font-weight:bold;color:var(--blue);cursor:pointer}.faq p{color:var(--muted)}.contactbox{background:var(--pale);padding:40px;border-radius:6px}.contactbox a{overflow-wrap:anywhere}.contactbox .email{font-size:1.6rem;color:var(--blue);font-weight:bold}.contactbox small{display:block;color:var(--muted);margin-top:22px;font-size:.875rem}.program-detail{max-width:900px}.program-detail ul{padding-left:22px;line-height:2}.note{padding:20px;background:var(--pale);border-left:3px solid var(--green);color:var(--muted)}footer{background:#f5f7f8;border-top:1px solid var(--line);padding:45px 0 22px}.footergrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:35px}.footergrid .logo{width:190px}.footergrid p{max-width:310px;color:var(--muted);font-size:.9rem}.footergrid a{display:block;text-decoration:none;margin:8px 0;font-size:.95rem}.fineprint{font-size:.8rem;color:var(--muted);margin-top:35px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;gap:20px}.skip{position:absolute;left:10px;top:-100px;z-index:30;background:white;padding:15px}.skip:focus{top:10px}@media(max-width:1000px){nav{gap:15px}.navwrap{gap:15px}.logo{width:150px;height:56px}.hero-copy{padding:55px 8%}.hero-visual{min-height:440px}.ribbon{gap:25px}.steps{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.navwrap{flex-wrap:wrap;padding:10px 5%}.menubtn{display:block}.navwrap nav{display:none;order:5;width:100%;flex-direction:column;align-items:stretch;padding:15px 0}.navwrap nav.open{display:flex}.navwrap nav a{padding:8px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 30px}.hero-visual{height:380px;min-height:0;margin:0 5% 30px}.hero h1{font-size:2.8rem}.ribbon{flex-direction:column;gap:8px;padding:22px 6%}.section{padding:55px 0}.section-intro,.split{grid-template-columns:1fr;gap:25px}.cards,.values{grid-template-columns:1fr}.card{padding:27px}.steps{grid-template-columns:1fr 1fr}.callout{padding:32px;display:block}.callout .btn{margin-top:24px;white-space:normal}.footergrid{grid-template-columns:1fr}.fineprint{flex-direction:column}.pagehead{padding-top:45px}.contactbox{padding:28px}.contactbox .email{font-size:1.3rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.locationband{padding:28px 0 32px;border-bottom:1px solid var(--line)}.locationband .eyebrow{margin-bottom:8px}.locationband p{margin-top:0}.requestcards{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:50px}.requestcards article{padding:32px;border:1px solid var(--line);border-top:4px solid var(--green);border-radius:6px}.requestcards h2{font-size:1.7rem}.requestwrap{max-width:850px}.requestwrap h1{font-size:2.5rem;line-height:1.2;color:var(--blue)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.full{grid-column:1/-1}.requestform{margin-top:30px}label{display:block;font-weight:600;color:var(--blue)}input,select,textarea{display:block;width:100%;font:inherit;font-weight:400;padding:12px;margin-top:8px;border:1px solid #b5c7ce;border-radius:4px;color:var(--ink);background:white}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.callout .actions{flex-shrink:0;flex-direction:column}.callout .actions .btn{white-space:normal}.navwrap{gap:18px}nav{gap:17px}@media(max-width:1050px){nav{gap:10px}nav a{font-size:.85rem}.logo{width:145px}}@media(max-width:760px){.requestcards,.formgrid{grid-template-columns:1fr}.requestcards article{padding:25px}.callout .actions .btn{margin-top:0}.requestwrap h1{font-size:2rem}}
.coursemeta{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-top:1px solid var(--line);margin-top:15px;color:var(--blue)}.coursemeta strong{font-size:1.3rem;white-space:nowrap}.datesblock{margin-top:35px;padding:28px;background:var(--pale);border-radius:5px}.datesblock h3{margin-top:0;color:var(--blue)}.datesblock p{color:var(--muted);margin-bottom:0}.startdates{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.startdates article{background:white;padding:17px;border-radius:4px}.startdates strong,.startdates span{display:block}.curriculum{margin:28px 0}.curriculum summary{font-size:1.2rem;cursor:pointer;font-weight:bold;color:var(--blue)}.curriculum ol{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:15px}.curriculum li{border:1px solid var(--line);border-radius:5px;padding:20px}.curriculum li p{line-height:1.6;margin-bottom:0}@media(max-width:760px){.startdates,.curriculum ol{grid-template-columns:1fr}.datesblock{padding:22px}.coursemeta{flex-wrap:wrap}}
.triadvisual{margin:30px 0 0}.triadvisual img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:6px}.triadvisual figcaption{text-align:center;font-size:.95rem;color:var(--muted);margin-top:12px}.casegrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px;align-items:start}.case{background:white;border:1px solid var(--line);border-radius:6px}.case summary{display:flex;align-items:center;gap:18px;padding:22px;cursor:pointer;color:var(--blue);font-weight:bold;list-style:none}.case summary:after{content:'+';margin-left:auto;font-size:1.6rem;font-weight:400}.case[open] summary:after{content:'−'}.case summary::-webkit-details-marker{display:none}.casenumber{font-size:.8rem;color:#607f20}.case small{display:block;font-weight:400;color:var(--muted);font-size:.9rem;margin-top:4px}.casebody{padding:0 25px 20px}.casebody h3{font-size:1rem;color:var(--blue);margin-bottom:6px}.casebody p{margin-top:0}.schedulegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.schedulegrid ol{display:block;list-style:decimal;padding-left:23px}.schedulegrid li{padding:5px 0;border:none}.schedulegrid article h4{margin-bottom:12px}@media(max-width:760px){.casegrid,.schedulegrid{grid-template-columns:1fr}}

.testimonials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:start}.testimonial{margin:0;padding:30px;background:#f7f9fa;border-top:4px solid var(--green);border-radius:6px}.testimonial:nth-child(even){border-top-color:var(--blue)}.testimonial blockquote{margin:0}.testimonial blockquote p:first-child{margin-top:0}.testimonial figcaption{border-top:1px solid var(--line);padding-top:18px;color:var(--blue)}.testimonial figcaption span{display:block;font-size:.875rem;color:var(--muted)}.testimonials-note{color:var(--muted);margin-bottom:30px}nav{gap:14px}nav a{white-space:normal;line-height:1.4}.navwrap{max-width:1480px}@media(max-width:1150px) and (min-width:761px){.navwrap{flex-wrap:wrap}.brand{flex:1}nav{order:4;flex-basis:100%;justify-content:center;padding-bottom:8px}}@media(max-width:760px){.testimonials-grid{grid-template-columns:1fr}.testimonial{padding:24px}}
