@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
:root{--navy:#102e3b;--teal:#117e83;--ink:#17323d;--muted:#526970;--paper:#fff;--mist:#eaf4f3;--line:#d9e5e3;--gold:#e6ba68}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:400 1rem/1.65 'DM Sans',sans-serif}a{color:inherit}a:hover{color:var(--teal)}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.container{max-width:1240px;margin:auto;padding:0 5%}.skip{position:absolute;left:-1000px;top:0;background:#fff;padding:1rem;z-index:10}.skip:focus{left:1rem}.site-header{border-bottom:1px solid var(--line);background:#fff}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--navy);line-height:1.15}.brand-mark{width:42px;height:42px;background:var(--navy);color:#fff;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.55rem;border-radius:3px}.brand b{display:block;font-family:Georgia,serif;font-size:1.3rem}.brand small{display:block;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:.2rem}.navlinks{display:flex;align-items:center;gap:1.7rem}.navlinks a{text-decoration:none;font-size:.94rem;font-weight:600}.navlinks a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:7px}.navlinks .nav-contact{background:var(--navy);color:white;padding:.7rem 1.15rem;border-radius:3px}.navlinks .nav-contact:hover{background:var(--teal)}.hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px}.hero-copy{padding:clamp(4rem,8vw,8rem) 8% clamp(4rem,8vw,8rem) max(5%,calc((100vw - 1240px)/2 + 5%));background:#f4f8f7}.hero-art{background:linear-gradient(145deg,#176c75,#0b3445);display:grid;place-items:center;padding:3rem}.art-frame{border:1px solid #9dc8c6;width:min(100%,450px);min-height:435px;padding:2.2rem;color:white;position:relative}.art-label,.eyebrow{font-size:.76rem;letter-spacing:.19em;font-weight:700;text-transform:uppercase;color:var(--teal)}.art-label{color:#b1e3dc;margin-bottom:2.3rem}.art-word{display:block;font:400 clamp(2.2rem,4vw,4.4rem)/1.25 'Libre Baskerville',serif}.art-word.shift{padding-left:2rem;color:#f5dba9}.art-line{height:1px;background:#7badb2;margin:2rem 0 1.5rem}.art-frame p{max-width:220px;color:#d6e8e6}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Libre Baskerville',Georgia,serif;font-weight:400;letter-spacing:-.035em;color:var(--navy)}h1{font-size:clamp(2.7rem,5vw,5.2rem);line-height:1.15;margin:1rem 0 1.4rem}h2{font-size:clamp(2rem,3vw,3.15rem);line-height:1.25;margin:.8rem 0 1.4rem}h3{font-size:1.35rem;line-height:1.3;color:var(--navy);margin:1rem 0}.lead{font-size:1.25rem;max-width:600px;color:#405d64}.actions{display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap;margin-top:2.4rem}.button{display:inline-block;background:var(--teal);color:white;text-decoration:none;padding:.85rem 1.45rem;border-radius:3px;font-weight:700}.button:hover{background:var(--navy);color:white}.text-link{font-weight:700;color:var(--teal);text-underline-offset:5px}.section{padding:6rem 0;margin:auto;max-width:1120px;width:90%}.split,.service{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem)}.intro{font-size:1.1rem}.audiences{border-top:1px solid var(--line);margin-top:2rem}.audiences a{display:flex;justify-content:space-between;gap:1rem;text-decoration:none;border-bottom:1px solid var(--line);padding:1rem 0}.audiences strong{min-width:100px;color:var(--navy)}.audiences span{font-size:.93rem;color:var(--muted);text-align:right}.tinted{max-width:none;width:100%;background:var(--mist);padding:6rem max(5%,calc((100vw - 1120px)/2))}.section-heading{max-width:660px}.section-heading p:last-child{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.6rem 0}.cards article{background:white;padding:2rem;border-top:3px solid var(--teal)}.cards article p{color:var(--muted);margin:0}.num{color:var(--teal);font-size:.8rem;letter-spacing:.16em;font-weight:700}.method{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.method>div>p:not(.eyebrow){color:var(--muted)}.method ol{list-style:none;margin:0;padding:0}.method li{display:flex;gap:1.2rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.method li b{width:54px;height:54px;display:grid;place-items:center;background:var(--mist);color:var(--teal);font-family:Georgia,serif;font-size:1.6rem}.method li strong{display:block;color:var(--navy)}.banner{background:var(--navy);color:#dce9e8;text-align:center;padding:5.5rem 5%}.banner h2{color:white;max-width:800px;margin:1rem auto}.banner p:not(.eyebrow){max-width:610px;margin:0 auto 2rem}.banner .eyebrow{color:#98dcdb}.button.light{background:#fff;color:var(--navy)}.button.light:hover{background:#d8f0eb}.page-head{background:#f1f7f5;padding:6rem max(5%,calc((100vw - 1120px)/2));}.page-head h1{max-width:900px}.page-head>p:last-child{max-width:750px;font-size:1.2rem;color:var(--muted)}.service{border-bottom:1px solid var(--line)}.service.shaded{max-width:none;width:100%;background:var(--mist);padding:6rem max(5%,calc((100vw - 1120px)/2))}.service ul,.contact-note ul{padding-left:1.2rem}.service li,.contact-note li{margin:.65rem 0}.fine{font-size:.9rem;color:var(--muted)}.course-sub{font-weight:700;color:var(--teal)}.course-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}.course-meta span{border:1px solid var(--line);padding:.35rem .7rem;font-size:.85rem;font-weight:700}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.contact-email{margin-top:1.2rem}.contact-note{background:var(--mist);padding:2rem}.footer{background:#082832;color:#c7dbda;padding:3rem 0}.footer-inner{display:flex;justify-content:space-between;gap:2rem}.footer a{color:#e9f5f4}.footer nav{display:flex;gap:1rem;flex-wrap:wrap}.footer small{color:#a8c1c1}@media(max-width:850px){.nav{align-items:flex-start;flex-direction:column;padding:1.1rem 0}.navlinks{gap:.8rem 1.2rem;flex-wrap:wrap}.hero,.split,.service,.method,.contact-grid{grid-template-columns:1fr}.hero-copy{padding:4rem 6%}.hero-art{min-height:440px}.section,.tinted,.service.shaded{padding-top:4rem;padding-bottom:4rem}.cards{grid-template-columns:1fr}.footer-inner{flex-direction:column}}@media(max-width:500px){.navlinks{font-size:.85rem}.navlinks .nav-contact{padding:.5rem .8rem}.art-frame{min-height:370px}.audiences a{display:block}.audiences span{display:block;text-align:left}}
.hero-photo{min-height:620px;overflow:hidden;background:#d7eae8}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:60% center;display:block}@media(max-width:850px){.hero-photo{min-height:390px;height:390px}}