/* Complete site navigation; source URLs are retained in every submenu. */
.nav{gap:20px}.nav-links{gap:17px;white-space:nowrap}.nav-group{display:flex;align-items:center;gap:2px}.nav-trigger{display:grid;place-items:center;border:0;background:transparent;color:var(--ink);width:24px;height:40px;border-radius:3px;padding:0}.nav-trigger:hover,.nav-trigger[aria-expanded=true]{background:#e4e8db}.nav-trigger svg{transition:transform .15s}.nav-trigger[aria-expanded=true] svg{transform:rotate(180deg)}
.nav-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(1220px,calc(100% - 80px));display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:38px;padding:35px 40px 40px;border:1px solid #d7ddcf;border-top:3px solid var(--sage);border-radius:0 0 10px 10px;background:var(--paper);box-shadow:0 20px 35px #17231c24;max-height:calc(100dvh - 150px);overflow:auto;white-space:normal;color:var(--ink)}.nav-panel[hidden]{display:none!important}.nav-panel-programi{width:450px;grid-template-columns:1fr}.nav-panel-predavaci{width:740px;grid-template-columns:1fr 1fr}.nav-column-title{display:block;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--sage);padding:0 10px 14px;margin-bottom:8px;border-bottom:1px solid var(--line)}.nav-panel .nav-column a{display:block;font-size:17px;line-height:1.35;font-weight:400;padding:9px 10px;border-radius:4px;transition:background .15s}.nav-panel .nav-column a:hover,.nav-panel .nav-column a[aria-current=page]{background:#e3e7da;color:#253f2a}.nav-panel .nav-column a:after{display:none!important}.nav-panel .nav-column a[aria-current=page]{font-weight:600}.nav-group.is-current>.nav-trigger{color:#3f613e}
.school-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:44px}.school-directory section{border-top:2px solid var(--sage);padding-top:22px}.school-directory h3{font-size:27px;margin-bottom:20px}.school-directory a,.resource-links a{display:block;padding:15px 30px 15px 0;border-bottom:1px solid var(--line);font-size:18px;line-height:1.45;position:relative}.school-directory a:after,.resource-links a:after{content:'↗';position:absolute;right:4px;color:var(--sage)}.school-directory a:hover,.resource-links a:hover{color:var(--sage)}.directory-section{background:#e9ecdf}.directory-section h2{max-width:760px}.section-jumps{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 36px}.section-jumps a{border:1px solid var(--sage);padding:10px 16px;border-radius:4px;font-size:16px}.section-jumps a:hover{background:var(--sage);color:white}.resource-links{margin:18px 0 35px}.region-places{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 38px}.region-places span{font-size:15px;line-height:1.4;border-bottom:1px solid var(--line);padding:7px 12px 7px 0;margin-right:7px}.region-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin:0 0 34px}.region-quick strong{display:block;font:600 32px/1.2 var(--heading)}.region-quick span{display:block;font-size:15px;color:var(--muted);margin-top:5px}.region-local{margin-top:32px}.region-related{margin-top:44px;padding-top:25px;border-top:1px solid var(--line)}.region-related .mini-tabs a{font-size:15px}
@media(min-width:1181px){.nav>.brand{gap:10px}.nav>.brand img{width:58px;height:58px}.nav>.brand .brand-copy{font-size:24px}.nav>.btn{font-size:15px;padding:13px 16px;gap:12px}.nav-links{font-size:16px}}
@media(max-width:1180px){.nav-links{display:none;gap:0;padding:15px 27px 25px;max-height:calc(100dvh - 95px);overflow-y:auto;overscroll-behavior:contain}.nav-links.open{display:flex;gap:0;align-items:stretch}.nav-links>a{display:block;width:100%;padding:15px 0;border-bottom:1px solid var(--line);font-size:18px}.nav-group{display:grid;grid-template-columns:1fr 44px;gap:0;width:100%;border-bottom:1px solid var(--line);align-items:center}.nav-group>a{font-size:18px;padding:15px 0}.nav-trigger{width:44px;height:44px}.nav-panel{position:static;transform:none;grid-column:1/-1;width:100%;max-height:none;grid-template-columns:repeat(3,minmax(0,1fr));padding:24px 16px;gap:25px;background:#e9ecdf;border:0;border-radius:5px;box-shadow:none;margin-bottom:18px;overflow:visible}.nav-panel-programi{grid-template-columns:1fr}.nav-panel-predavaci{grid-template-columns:1fr 1fr}.nav-panel .nav-column a{font-size:17px;padding:10px 7px}.nav-column-title{padding-left:7px}.school-directory{gap:30px}}
@media(max-width:680px){.nav-links{padding:12px 20px 24px;max-height:calc(100dvh - 84px)}.nav-panel,.nav-panel-predavaci{grid-template-columns:1fr;gap:25px;padding:22px 13px}.nav-panel .nav-column a{font-size:17px;padding:11px 7px}.nav-column-title{font-size:12px}.school-directory{grid-template-columns:1fr;gap:35px;margin-top:30px}.school-directory h3{font-size:27px}.school-directory a,.resource-links a{font-size:17px}.region-quick{gap:16px}.region-quick strong{font-size:27px}.region-quick span{font-size:14px}.section-jumps a{font-size:16px}.region-places span{font-size:14px}}
@media print{.section-jumps{display:none}}

/* Interior pages read like an education website, with restrained headings. */
.inner-page main{--heading:var(--sans);font-size:18px;line-height:1.7}.inner-page main h1,.inner-page main h2,.inner-page main h3,.inner-page main h4{font-family:var(--sans);font-weight:600;font-style:normal;letter-spacing:-.018em;line-height:1.2}.inner-page main h1{font-size:clamp(35px,4vw,54px);max-width:960px}.inner-page main h2{font-size:34px}.inner-page main h3{font-size:25px}.inner-page main h4{font-size:21px}.inner-page .page-top{padding:40px 0 56px}.inner-page .page-top .eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:17px}.inner-page .page-top .lead{font-size:20px;line-height:1.6;max-width:820px}.inner-page .crumbs{font-size:14px;letter-spacing:0;margin-bottom:36px}.inner-page .prose{font-size:18px;line-height:1.8;max-width:760px}.inner-page .prose h2{font-size:30px;line-height:1.25;margin:38px 0 18px}.inner-page .prose h3{font-size:24px;margin:30px 0 16px}.inner-page .prose h2:first-child{margin-top:0}.inner-page .aside-card h3{font-size:26px}.inner-page .aside-card .price{font:600 42px/1.2 var(--sans)}.inner-page .guide-heading h1{font-size:clamp(36px,4vw,56px);max-width:850px;margin-left:auto;margin-right:auto}.inner-page .guide-heading .lead{font-size:20px;line-height:1.6;max-width:760px}.inner-page .team-grid .person h3{font-size:24px;letter-spacing:0}.inner-page .initials{font-family:var(--sans);font-weight:500}.inner-page .person-detail h1{font-size:50px}.inner-page .program-body h3{font-size:29px}.inner-page .school-directory h3{font-size:24px}.inner-page .cta h2{font-size:34px}.inner-page .info-box strong{font:600 26px/1.3 var(--sans)}.inner-page .contact-line>a,.inner-page .contact-line strong{font-family:var(--sans);font-size:22px}.inner-page .faq-item summary{font-size:19px;font-weight:600}.inner-page .section-head h2{max-width:720px}.inner-page .region-quick strong{font:600 30px/1.25 var(--sans)}
@media(max-width:680px){.inner-page main h1,.inner-page .page-top h1,.inner-page .program-detail h1,.inner-page .person-detail h1{font-size:36px;letter-spacing:-.02em;line-height:1.18}.inner-page main h2,.inner-page .prose h2,.inner-page .cta h2{font-size:28px}.inner-page main h3,.inner-page .prose h3{font-size:23px}.inner-page .page-top{padding:28px 0 38px}.inner-page .page-top .lead,.inner-page .guide-heading .lead{font-size:18px;line-height:1.65}.inner-page .crumbs{font-size:13px;gap:8px;margin-bottom:26px}.inner-page .guide-heading h1{font-size:36px;letter-spacing:-.02em;line-height:1.2}.inner-page .prose{font-size:18px;line-height:1.75}.inner-page .person-detail .initials{height:100px;width:100px;border-radius:50%;font-size:32px}.inner-page .team-grid .person h3{font-size:22px}.inner-page .program-body h3{font-size:27px}.inner-page .school-directory h3{font-size:24px}.inner-page .region-quick strong{font-size:25px}.inner-page .contact-line>a{font-size:20px;overflow-wrap:anywhere}}

@media(max-width:680px){.inner-page .info-grid{grid-template-columns:1fr;gap:22px}.inner-page .info-box{min-width:0}.inner-page .info-box strong{font-size:25px}}

/* Keep the pointer path connected from navigation labels to their panels. */
@media(min-width:1181px){.nav-links{align-self:stretch}.nav-group{align-self:stretch}}
/* Traditional editorial typography: PT Serif titles, PT Sans reading text. */
:root{--sans:'PT Sans','Trebuchet MS',Arial,sans-serif;--heading:'PT Serif',Georgia,serif}
body{font-family:var(--sans)}
h1,h2{font-family:var(--heading);font-weight:400;letter-spacing:-.018em;line-height:1.18}
h3,h4{font-family:var(--sans);font-weight:700;letter-spacing:0;line-height:1.3}
.brand .brand-copy{font-family:'Roboto Condensed','Arial Narrow',Arial,sans-serif}
.hero h1{font-family:var(--heading);font-weight:400;line-height:1.06;font-size:clamp(52px,6.3vw,88px);letter-spacing:-.035em}
.hero-facts strong,.price,.step-number,.initials,.info-box strong{font-family:var(--sans)}
.footer-wordmark{font-family:'Roboto Condensed','Arial Narrow',Arial,sans-serif}
.nav-links{font-weight:400}.nav-links>a,.nav-group>a{font-weight:700}.nav-panel .nav-column a{font-weight:400}
.inner-page main{--heading:'PT Serif',Georgia,serif}
.inner-page main h1,.inner-page main h2{font-family:var(--heading);font-weight:400;letter-spacing:-.018em;line-height:1.22}
.inner-page main h3,.inner-page main h4{font-family:var(--sans);font-weight:700;letter-spacing:0;line-height:1.3}
.inner-page .page-top h1{font-size:clamp(34px,3.8vw,52px)}
.inner-page .prose h2{font-size:30px;line-height:1.3}
.inner-page .aside-card h3{font-size:24px}.inner-page .page-top .lead,.inner-page .guide-heading .lead{font-size:20px;line-height:1.65}
@media(max-width:680px){.hero h1{font-size:57px}.inner-page main h1,.inner-page .page-top h1,.inner-page .program-detail h1,.inner-page .person-detail h1,.inner-page .guide-heading h1{font-size:34px;line-height:1.2}.inner-page main h2,.inner-page .prose h2,.inner-page .cta h2{font-size:28px}.inner-page .page-top .lead,.inner-page .guide-heading .lead{font-size:18px}.hero-facts strong{font-size:22px}.brand small{font-size:10px}}
