:root{--ink:#123f52;--teal:#007c71;--blue:#0075ad;--light:#eef6f7;--mint:#e4f2eb;--line:#d9e5e7}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Arial,Helvetica,sans-serif}a{color:var(--teal);text-underline-offset:4px}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.12;letter-spacing:-.045em;margin:0 0 24px}h1{font-size:clamp(38px,4.8vw,68px);font-weight:750;max-width:900px}h2{font-size:clamp(30px,3.2vw,46px)}h3{font-size:28px}p{margin:0 0 24px}.wrap{max-width:1200px;margin:auto;padding-left:32px;padding-right:32px}.narrow{max-width:820px}.max{max-width:790px}.section{padding-top:80px;padding-bottom:80px}.testbar{text-align:center;background:#eff5ef;font-size:11px;padding:7px;color:#44635e;letter-spacing:.1em}.nav{max-width:1320px;display:flex;align-items:center;justify-content:space-between;padding:27px 40px;margin:auto;gap:24px}.logo{width:210px;height:auto;display:block}.nav nav{display:flex;gap:26px;align-items:center}.nav a{text-decoration:none;font-weight:600;font-size:14px}.button,button{display:inline-flex;justify-content:center;align-items:center;gap:20px;border:1px solid var(--teal);background:var(--teal);color:#fff;text-decoration:none;border-radius:6px;padding:15px 22px;font:600 15px/1.4 Arial;cursor:pointer}.button:hover,button:hover{background:#00645c;color:#fff;text-decoration:none}.button.outline,.secondary{background:transparent;color:var(--teal)}.button.small{padding:10px 20px}.button.light{background:white;color:var(--teal);border-color:white}.buttons{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--teal);font-weight:700;margin-bottom:20px}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:58px;padding-top:60px;padding-bottom:70px}.hero h1{font-size:clamp(40px,4.7vw,65px)}.lead{font-size:19px;line-height:1.7;color:#506875}.heroimage{position:relative;height:570px;margin-right:-20px}.heroimage>img{width:100%;height:100%;object-fit:cover;object-position:40% center;border-radius:80px 8px 80px 8px}.photolabel{position:absolute;bottom:25px;left:-25px;background:white;box-shadow:0 10px 40px #113c521f;padding:18px 24px;border-radius:6px;font-size:13px;font-weight:600}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--teal);margin-right:9px}.micro{font-size:13px;color:#627680}.band{background:var(--light)}.bandgrid{display:grid;grid-template-columns:repeat(3,1fr);padding-top:30px;padding-bottom:30px;gap:30px}.bandgrid b,.bandgrid span{display:block}.bandgrid b{font-size:18px}.bandgrid span{font-size:13px;margin-top:5px;color:#627680}.sectionhead{margin-bottom:38px}.twocards,.split{display:grid;grid-template-columns:1fr 1fr;gap:30px}.card{padding:35px;border:1px solid var(--line);border-radius:14px;background:white}.blue{background:#edf5fa;border:0}.mint{background:var(--mint);border:0}.card a{font-weight:600}.card p:last-child{margin-bottom:0}.rounded{width:100%;height:400px;object-fit:cover;border-radius:12px 70px 12px 12px}.split{align-items:center;gap:70px}.cta{background:var(--teal);border-radius:16px;padding-top:45px;padding-bottom:45px;color:white;display:flex;align-items:center;justify-content:space-between;margin-bottom:80px;gap:25px}.cta h2{margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.steps b{display:block;color:var(--teal);font-size:19px;margin-bottom:15px}.chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.chips span,.badge{background:var(--mint);color:#175b50;padding:7px 13px;border-radius:5px;font-size:12px;display:inline-block}.badge{margin-bottom:18px}.coursegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.textlink{display:block;margin-top:20px}label{display:block;font-size:14px;font-weight:600;margin-bottom:18px}input,textarea,select{font:16px/1.5 Arial;width:100%;padding:12px;border:1px solid #afc3cb;border-radius:5px;background:white;color:var(--ink);margin-top:7px}textarea{resize:vertical}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #68b6d9;outline-offset:3px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.check{display:flex;gap:12px;align-items:flex-start;font-weight:400}.check input{width:18px;flex:none;margin-top:6px}.hp{display:none}details{border-top:1px solid var(--line);padding:20px 0}summary{font-weight:600;cursor:pointer}details p,details form{margin-top:20px}.notice{background:#fff5db;border:1px solid #e8d9af;padding:22px;border-radius:8px;margin-top:25px;margin-bottom:25px}.notice p{margin:10px 0 0}footer{background:#113c4d;color:#d8e9ef;padding:55px 0}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}footer a,footer span{display:block;color:#d8e9ef;font-size:14px;margin-top:12px}footer b{color:white}footer h2{color:white;font-size:32px}.menutoggle{display:none}.skip{position:absolute;top:-100px;left:20px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.adminnav{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.adminnav a{padding:10px 15px;background:var(--light);border-radius:5px;text-decoration:none;font-size:14px}.adminnav .selected{background:var(--teal);color:white}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat{font-size:40px;display:block}.stats .card{padding:24px}.admincard{margin:24px 0}.admin h2{margin-top:35px;font-size:30px}.admin h3{font-size:22px}.listrow{display:flex;gap:20px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:24px 0}.listrow p{margin:5px 0;font-size:13px}.listrow form{margin:0}table{border-collapse:collapse;width:100%;font-size:14px}td,th{padding:14px;text-align:left;border-bottom:1px solid var(--line)}th{background:var(--light)}td input{width:18px}.tablewrap{overflow-x:auto;margin:25px 0}.doc{display:block;border:1px solid var(--line);padding:12px;margin:10px 0;border-radius:5px}fieldset{border:1px solid var(--line);margin-bottom:20px}form>button{margin-top:10px}[hidden]{display:none!important}
.slideshow{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#eef4f5;box-shadow:0 14px 40px #123f520b}.slide{margin:0}.slide img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#e8f0f2}.slide figcaption{padding:18px 24px;font-size:15px;color:var(--ink);background:#fff}.slide-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-top:1px solid var(--line);background:white;font-size:13px}.slide-buttons{display:flex;gap:8px}.slide-controls button{padding:8px 14px;font-size:13px;min-height:40px}.slide-controls [data-pause]{background:white;color:var(--teal)}.hero-course-gallery{min-width:0}.hero{grid-template-columns:1fr 1fr;gap:40px}.hero h1{font-size:clamp(39px,4.3vw,60px)}.course-photo{height:auto;aspect-ratio:3/2;object-fit:contain;background:var(--light);border-radius:14px}.gallery-section{max-width:1060px}.about-group{width:100%;height:auto;border-radius:18px;display:block;margin-top:40px}.about-story{align-items:start;padding-top:0}.about-intro{padding-bottom:60px}.contact-card h2{font-size:28px}.contact-card address{font-style:normal;margin-bottom:22px}.nav nav{gap:20px}.nav .logo{width:185px}.nav a{font-size:13px}.student-steps article{padding-top:20px;border-top:2px solid #007c7140}.student-steps b{line-height:1.4}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media(max-width:1000px){.nav{padding:22px}.nav nav{gap:12px}.nav .logo{width:150px}.hero{gap:30px}.heroimage{height:480px;margin-right:0}.steps{grid-template-columns:1fr 1fr}.split{gap:30px}.cta{margin:0 25px 60px}.stats{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.wrap{padding-left:22px;padding-right:22px}.nav{flex-wrap:wrap}.menutoggle{display:block;padding:8px 14px}.nav nav{display:none;width:100%;flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.nav nav a{padding:10px}.hero,.split,.twocards,.formgrid{grid-template-columns:1fr}.hero{padding-top:35px;padding-bottom:40px}.heroimage{height:350px}.photolabel{left:12px;right:12px;font-size:12px;bottom:15px;padding:14px}.section{padding-top:50px;padding-bottom:50px}.bandgrid{grid-template-columns:1fr;gap:20px}.bandgrid>div{border-bottom:1px solid var(--line);padding-bottom:15px}.rounded{height:300px}.cta{display:block;padding:30px 22px}.cta h2{margin-bottom:25px}.footergrid{grid-template-columns:1fr;gap:25px}.steps{gap:24px}.card{padding:25px}.stats{gap:12px}.stats .card{padding:18px}.testbar{font-size:9px}.listrow{align-items:flex-start;flex-wrap:wrap}.lead{font-size:18px}}
