/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400 900;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url(../fonts/archivo-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400 900;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url(../fonts/archivo-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/geist-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/geist-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url(../fonts/geist-mono-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url(../fonts/geist-mono-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
  --ink:#151515;--signal:#F6C21C;--signal-hover:#FFD54A;--graphite:#2A2A28;--line-dark:#333331;--steel:#62625E;--mist:#A6A6A0;--mist-2:#B9B9B3;--muted-dark:#8A8A85;--concrete:#ECECE8;--paper:#F6F6F4;--line:#D8D8D3;--line-2:#C9C9C3;--error:#A3261C;--tbd-border:#B08A00;--tbd-bg:#FFF8DB;--tbd-text:#5C4800;--white:#fff;--body-text:#4A4A47;
  --display:'Archivo',system-ui,sans-serif;--sans:'Geist',system-ui,sans-serif;--mono:'Geist Mono',ui-monospace,monospace;--ease:cubic-bezier(.2,.7,.2,1);
  --s-1:8px;--s-2:12px;--s-3:16px;--s-4:24px;--s-5:32px;--s-6:48px;--s-7:64px;--s-8:96px;--s-9:140px;--section:clamp(80px,9vw,140px);--gutter:clamp(20px,4vw,40px);--header:92px;--admin-offset:0px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(96px + var(--admin-offset))}
body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
body.admin-bar{--admin-offset:32px}
body.dgo-inner{padding-top:var(--header)}
body.dgo-application{background:var(--paper)}
h1,h2,h3,h4,.disp{font-family:var(--display);font-stretch:108%;line-height:1.1}
h1,h2,h3,h4,p,figure{margin:0}
h1{font-size:clamp(48px,6.4vw,104px);line-height:.95;font-weight:800;letter-spacing:-.04em}
h2{font-size:clamp(30px,3vw,42px);font-weight:750;letter-spacing:-.025em}
h3{font-size:22px;font-weight:700;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:wait}
img,svg{max-width:100%;vertical-align:middle}
img{display:block;height:auto}
svg{flex:none}
picture{display:block}
figure picture,figure img,.pthumb picture,.pthumb img,.related-image picture,.related-image img{width:100%;height:100%;object-fit:cover}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
[id]{scroll-margin-top:calc(96px + var(--admin-offset))}
main:focus{outline:none}
.wrap{width:100%;max-width:1360px;margin:0 auto;padding-inline:var(--gutter)}
.wrap>*{min-width:0}
.section{padding-block:var(--section)}
.mono{font-family:var(--mono)}
.eyebrow{font:600 13px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--steel);margin:0 0 20px}
.display-title{font-size:clamp(40px,5vw,76px);line-height:.98;font-weight:800;letter-spacing:-.035em}
.section-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}
.heading-block{max-width:640px}
.section-note{max-width:420px;color:var(--body-text);font-size:15px;line-height:1.6}
.button-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:44px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:14px 26px;border:1px solid transparent;border-radius:4px;font:600 16px/1.4 var(--sans);letter-spacing:-.005em;text-align:center;transition:transform .18s var(--ease),background-color .18s,color .18s,border-color .18s}
.btn svg{transition:transform .22s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn:active{transform:scale(.98)}
.btn-signal{background:var(--signal);color:var(--ink)}
.btn-signal:hover{background:var(--signal-hover);color:var(--ink)}
.btn-ghost-d{background:transparent;color:var(--white);border-color:#4A4A47}
.btn-ghost-d:hover{border-color:var(--white)}
.btn-ink{background:var(--ink);color:var(--white)}
.btn-ink:hover{background:var(--graphite);color:var(--white)}
.btn-ghost-l{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-ghost-l:hover{background:var(--ink);color:var(--white)}
.btn-small{min-height:46px;padding:11px 20px;font-size:15px}
.ulink{display:inline-flex;align-items:center;min-height:44px;font-weight:600;background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-position:0 calc(100% - 8px);background-repeat:no-repeat;transition:background-size .3s}
.ulink:hover{background-size:0 1px;background-position:100% calc(100% - 8px)}
.screen-reader-text,.skip-link:not(:focus){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed;z-index:100001;top:12px;left:16px;background:var(--signal);color:var(--ink);padding:16px 24px;border-radius:4px;font-weight:600}
.site-header{position:fixed;inset:var(--admin-offset) 0 auto;z-index:100;background:transparent;color:var(--white);transition:background-color .3s var(--ease),box-shadow .3s var(--ease)}
.site-header.is-solid,.site-header.is-scrolled{background:var(--ink)}
.site-header.is-scrolled{box-shadow:0 1px 0 var(--line-dark)}
.header-inner{height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:height .3s var(--ease)}
.site-header.is-scrolled .header-inner{height:72px}
.brand{display:flex;align-items:center;gap:16px;flex:none}
.brand-logo{height:40px;width:auto;max-width:180px;object-fit:contain}
.brand-rule{width:1px;height:28px;background:#3A3A38}
.brand-name{font-size:13px;line-height:1.25;font-weight:500;letter-spacing:.01em;color:#D6D6D1}
.menu{display:flex;align-items:center;gap:36px;margin:0;padding:0;list-style:none}
.desktop-nav .menu a{display:flex;align-items:center;min-height:44px;position:relative;color:#D6D6D1;font-size:15px;font-weight:500}
.desktop-nav a::after{content:'';position:absolute;inset:auto 0 5px;height:2px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--white)}
.desktop-nav a:hover::after,.desktop-nav a[aria-current=page]::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:20px}
.header-phone{font-size:14px;white-space:nowrap;color:#D6D6D1;min-height:44px;display:flex;align-items:center}
.menu-toggle,.menu-close{width:48px;height:48px;border-radius:4px;display:flex;align-items:center;justify-content:center;padding:0}
.menu-toggle{border:1px solid #3A3A38;background:transparent;color:var(--white)}
.menu-close{border:0;background:var(--signal);color:var(--ink)}
html:not(.js) .menu-toggle{display:none}
.js .no-js-nav{display:none}
.no-js-nav summary{min-height:48px;padding:12px;cursor:pointer}
.no-js-nav nav{position:absolute;top:100%;inset-inline:0;background:var(--ink);padding:20px;border-top:1px solid var(--line-dark)}
.no-js-nav .menu{flex-wrap:wrap;gap:16px;margin-bottom:20px}
.no-js-nav a{display:inline-flex;min-height:44px;align-items:center}
.mobile-menu{position:fixed;inset:var(--admin-offset) 0 0;z-index:200;background:var(--ink);color:var(--white);display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}
.mobile-menu-head{height:72px;min-height:72px;padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--graphite)}
.mobile-menu-head .brand-logo{height:32px}
.mobile-menu-nav{padding:12px var(--gutter) 28px;flex:1}
.mobile-menu .eyebrow{font-size:12px;margin:16px 0 8px;color:var(--muted-dark)}
.mobile-courses{list-style:none;margin:0;padding:0}
.mobile-courses a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:10px 0;border-bottom:1px solid var(--graphite);font-size:17px;line-height:1.4}
.mobile-courses svg{color:var(--muted-dark)}
.mobile-menu a[aria-current=page],.mobile-menu-nav a:hover{color:var(--signal)}
.mobile-links{margin-top:28px}
.mobile-links .menu{display:block}
.mobile-links a{display:block;min-height:48px;padding:6px 0;font:750 36px/1.15 var(--display);font-stretch:108%;letter-spacing:-.03em}
.mobile-menu-contact{padding:16px var(--gutter);display:grid;gap:10px;border-top:1px solid var(--graphite)}
.two-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mobile-menu-contact p{margin-top:6px;font-size:13px;color:var(--muted-dark);text-align:center}
body.menu-open{position:fixed;overflow:hidden;width:100%}
.home-hero{position:relative;background:var(--ink);color:var(--white);height:100vh;height:100svh;min-height:560px;max-height:1080px;display:flex;flex-direction:column}
.hero-photo{position:absolute;inset:0 0 0 auto;width:46%;overflow:hidden}
.hero-photo picture,.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.hero-gradient{position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(21,21,21,0) 28%)}
.photo-corners{position:absolute;inset:128px 40px 176px 48px}
.photo-corners i{position:absolute;width:28px;height:28px;border-color:var(--signal);border-style:solid;border-width:0}
.photo-corners i:nth-child(1){left:0;top:0;border-left-width:2px;border-top-width:2px}
.photo-corners i:nth-child(2){right:0;top:0;border-right-width:2px;border-top-width:2px}
.photo-corners i:nth-child(3){left:0;bottom:0;border-left-width:2px;border-bottom-width:2px}
.photo-corners i:nth-child(4){right:0;bottom:0;border-right-width:2px;border-bottom-width:2px}
.hero-copy{position:relative;z-index:2;flex:1;min-height:0;display:flex;align-items:center;padding-top:calc(var(--header) + 32px);padding-bottom:104px}
.hero-text{max-width:780px}
.hero-kicker{display:flex;align-items:center;gap:12px;margin-bottom:32px;font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#D6D6D1}
.hero-kicker>span:first-child{font-size:22px;line-height:1;font-weight:700;color:var(--signal)}
.hero-copy h1{font-size:min(7.4vw,11.5vh,124px);font-size:min(7.4vw,11.5svh,124px);line-height:.93;font-weight:800;letter-spacing:-.035em}
.hero-copy h1 span{background:var(--signal);color:var(--ink);padding:0 .1em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero-description{margin-top:36px;max-width:520px;font-size:19px;line-height:1.6;color:var(--mist-2)}
.heroimg{animation:heroIn 1.8s var(--ease) both}
.rise{animation:rise .9s var(--ease) both}.d1{animation-delay:.08s}.d2{animation-delay:.16s}.d3{animation-delay:.24s}
@keyframes heroIn{from{transform:scale(1.06)}to{transform:scale(1)}}
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.home-path{position:relative;z-index:3;margin-top:0;padding-top:clamp(48px,5vw,72px);background:var(--paper)}
.pathfinder{padding:clamp(24px,3vw,40px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);background:var(--white);border-radius:6px;box-shadow:0 30px 80px -30px rgba(0,0,0,.45);color:var(--ink)}
.path-choice{min-width:0}
.path-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.path-heading h2{font-size:28px;font-weight:700;letter-spacing:-.02em}
.path-heading p{font-size:14px;color:var(--steel)}
.path-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tab{text-align:left;padding:18px 18px 20px;border-radius:4px;border:1px solid var(--line);background:var(--white);color:var(--ink);font:600 16px/1.3 var(--sans);transition:background-color .2s,color .2s,border-color .2s}
.tab:hover{border-color:var(--ink)}
.tab-kicker{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;opacity:.7;margin-bottom:6px}
.tab[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--white);box-shadow:inset 0 -4px 0 var(--signal)}
.path-results{display:grid;gap:16px;min-width:0}
.path-panel{background:#F2F2EF;border-radius:4px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-width:0}
.path-panel .eyebrow{margin-bottom:14px;letter-spacing:.08em}
.recommendation{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.recommendation .disp{font-size:22px;font-weight:700;letter-spacing:-.015em}
.path-note{margin-top:16px;font-size:15px;line-height:1.6;color:var(--body-text)}
.path-panel .btn{align-self:flex-start;min-height:50px}
.institution{background:var(--paper)}
.institution .eyebrow{margin-bottom:28px}
.manifesto{max-width:1120px;font-size:clamp(32px,3.9vw,60px);line-height:1.08;font-weight:650;letter-spacing:-.028em}
.manifesto span{color:var(--muted-dark)}
.institution-grid{margin-top:clamp(56px,6vw,96px);display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:end}
.tile{margin:0;position:relative;overflow:hidden;border-radius:4px}
.tile img{transition:transform .8s var(--ease)}
.tile:hover img{transform:scale(1.035)}
.institution-photo{height:clamp(360px,40vw,600px)}
.principle{padding:24px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px}
.principle:nth-last-child(2){border-bottom:1px solid var(--line)}
.plus{font:700 26px/1 var(--display)}
.principle h3{margin-bottom:8px}
.principle p{font-size:16px;line-height:1.6;color:var(--body-text)}
.principles>.ulink{margin-top:28px}
.course-filters{display:flex;flex-wrap:wrap;gap:8px}
html:not(.js) .course-filters{display:none}
.chip{min-height:44px;padding:8px 18px;border-radius:999px;font:500 15px/1.3 var(--sans);border:1px solid var(--line);background:var(--white);transition:background-color .2s,color .2s,border-color .2s}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--white)}
.chip span{margin-left:8px;opacity:.7;font-size:13px}
.program-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.program-list>li{border-bottom:1px solid var(--line)}
.prow{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(180px,280px) 100px 52px;align-items:center;gap:24px;padding:26px 20px;margin:0 -20px;transition:background-color .25s,color .25s}
.ptag{justify-self:start;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1.4;color:var(--body-text);border:1px solid var(--line-2);border-radius:3px;padding:6px 10px}
.program-name{font-size:clamp(24px,2.4vw,36px);font-weight:700;letter-spacing:-.022em;line-height:1.1}
.pcol-who{font-size:15px;line-height:1.55;color:var(--steel)}
.pthumb{display:block;width:100px;height:76px;border-radius:3px;overflow:hidden;opacity:0;transform:scale(.92);transition:opacity .3s,transform .35s var(--ease)}
.parrow{width:52px;height:52px;border-radius:50%;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;transition:background-color .25s,color .25s,transform .25s}
.prow:hover,.prow:focus-visible{background:var(--ink);color:var(--white)}
.prow:hover .pmuted,.prow:focus-visible .pmuted{color:var(--mist)}
.prow:hover .pthumb,.prow:focus-visible .pthumb{opacity:1;transform:scale(1)}
.prow:hover .parrow,.prow:focus-visible .parrow{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.prow:hover .ptag,.prow:focus-visible .ptag{border-color:#4A4A47;color:#D6D6D1}
.directory-note{margin-top:32px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:center}
.directory-note p{font-size:15px;color:var(--steel)}
.training-space{background:var(--ink);color:var(--white)}
.space-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:end;margin-bottom:48px}
.space-heading>p{max-width:480px;justify-self:end;font-size:18px;line-height:1.65;color:var(--mist-2)}
.training-space .eyebrow{color:var(--mist)}
.space-heading h2 span{color:var(--signal)}
.space-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(180px,19vw,280px);gap:16px}
.space-bento .tile{grid-column:span 5}
.space-bento .tile:first-child{grid-column:span 7;grid-row:span 2}
.tile figcaption{position:absolute;left:16px;bottom:16px;max-width:calc(100% - 32px);background:var(--ink);color:var(--white);padding:10px 14px;border-radius:3px;font-size:14px;font-weight:500;display:flex;gap:10px;align-items:center}
.tile figcaption span{color:var(--signal);font-weight:700}
.reasons{margin-top:72px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-dark)}
.reasons>div{padding:32px 32px 8px 0}
.reasons h3{margin-bottom:12px}
.reasons p{font-size:15px;line-height:1.65;color:var(--mist)}
.process{background:var(--concrete)}
.process .section-heading{margin-bottom:64px}
.process-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.process-steps>li{padding-right:28px}
.process-node{display:flex;align-items:center;margin-bottom:28px}
.process-node span{width:56px;height:56px;flex:none;background:var(--white);border:2px solid var(--ink);border-radius:4px;display:flex;align-items:center;justify-content:center;font:700 28px/1 var(--display)}
.process-node::after{content:'';height:2px;background:var(--ink);flex:1}
.process-steps li:first-child .process-node span{background:var(--ink);color:var(--signal)}
.process-steps li:last-child .process-node span{background:var(--signal);border-color:var(--signal)}
.process-steps li:last-child .process-node::after{display:none}
.process-steps .mono{margin-bottom:10px;font-size:13px;color:var(--steel)}
.process-steps h3{font-size:26px;letter-spacing:-.015em;margin-bottom:12px}
.process-steps p:not(.mono){color:var(--body-text)}
.faq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(40px,6vw,96px)}
.faq-intro{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.faq-intro .eyebrow{margin:0}
.faq-intro h2{font-size:clamp(36px,4vw,60px);line-height:1;font-weight:800;letter-spacing:-.03em}
.question-box{margin-top:24px;background:var(--paper);border-radius:6px;padding:24px;width:100%;max-width:420px}
.question-box p{margin-bottom:6px;font-size:15px;color:var(--body-text)}
.question-box a{display:inline-flex;align-items:center;min-height:44px;font-size:clamp(22px,2vw,28px);font-weight:700;letter-spacing:-.01em}
.faq-list{min-width:0;border-top:1px solid var(--ink)}
.faq-item{border-bottom:1px solid var(--line)}
.faqbtn{width:100%;background:none;border:0;padding:28px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left;color:var(--ink)}
.faqq{font-size:clamp(19px,1.7vw,24px);font-weight:650;letter-spacing:-.01em;line-height:1.3}
.faqbtn:hover .faqq{color:#000}
.faq-plus{flex:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:400 26px/1 var(--sans);background:#F2F2EF;transition:transform .3s,background-color .3s}
.faqbtn[aria-expanded=true] .faq-plus{transform:rotate(45deg);background:var(--signal)}
.faq-answer{margin-top:-8px;padding:0 64px 32px 0;font-size:17px;line-height:1.7;color:var(--body-text);max-width:760px}
.faq-answer p+p{margin-top:16px}
html:not(.js) .faq-plus{display:none}
.cta-band{position:relative;overflow:hidden;background:var(--signal);color:var(--ink)}
.cta-band>.wrap{position:relative;padding-block:var(--section)}
.cta-copy{max-width:820px}
.cta-copy h2{font-size:clamp(44px,6.4vw,104px);line-height:.95;font-weight:800;letter-spacing:-.04em}
.cta-copy>p{margin-top:32px;max-width:540px;font-size:19px;line-height:1.6;color:var(--graphite)}
.giant-plus{position:absolute;right:-60px;top:50%;width:560px;height:560px;transform:translateY(-50%)}
.giant-plus::before,.giant-plus::after{content:'';position:absolute;background:var(--ink)}
.giant-plus::before{left:50%;top:0;bottom:0;width:120px;margin-left:-60px}
.giant-plus::after{top:50%;left:0;right:0;height:120px;margin-top:-60px}
.cta-compact>.wrap{padding-block:72px}
.cta-compact .cta-copy{display:flex;justify-content:space-between;align-items:center;gap:32px;max-width:none}
.cta-compact h2{font-size:clamp(32px,4vw,56px);max-width:620px;line-height:1;letter-spacing:-.035em}
.cta-compact .button-row{margin:0;flex-shrink:0}
.site-footer{padding-top:clamp(64px,7vw,104px);background:var(--ink);color:var(--white);overflow:hidden}
.footer-grid{display:grid;grid-template-columns:1.1fr 1.1fr .8fr 1.2fr;gap:40px;padding-bottom:64px;border-bottom:1px solid var(--line-dark)}
.footer-grid>*{min-width:0}
.footer-brand{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.footer-brand .brand-logo{height:44px}
.footer-brand p{font-size:15px;line-height:1.6;color:var(--mist);max-width:300px}
.footer-heading{margin:0 0 20px;font:600 13px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-dark)}
.footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.flink{color:var(--mist);font-size:15px;display:inline-flex;align-items:center;min-height:44px;line-height:1.5}
.flink:hover{color:var(--white)}
.site-footer address{font-style:normal;display:flex;flex-direction:column;gap:14px;font-size:15px;line-height:1.6;color:var(--mist)}
.site-footer address a{overflow-wrap:anywhere}
.footer-phone{font-size:20px;font-weight:600;color:var(--white);min-height:44px;display:flex;align-items:center}
.site-footer address .mono{font-size:13px}
.footer-wordmark{display:block;width:100%;height:auto;margin-top:40px;fill:#232322}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:28px 0 36px;font-size:13px;color:var(--muted-dark)}
.footer-bottom .menu{gap:24px;flex-wrap:wrap}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;color:var(--mist)}
.footer-bottom a:hover{color:var(--white)}
.mobile-bottom{position:fixed;inset:auto 0 0;z-index:80;background:var(--white);border-top:1px solid var(--line);padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1.4fr;gap:10px;box-shadow:0 -12px 30px -12px rgba(0,0,0,.25)}
.mobile-bottom .btn{font-size:15px;min-height:56px;padding-inline:12px}
.breadcrumb{font-size:14px;color:var(--mist)}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:10px;list-style:none;margin:0;padding:0}
.breadcrumb li{display:flex;align-items:center;gap:10px}
.breadcrumb li+li::before{content:'/';color:var(--mist)}
.breadcrumb a{display:inline-flex;min-height:44px;align-items:center}
.breadcrumb a:hover{color:var(--white)}
.breadcrumb [aria-current=page]{color:var(--white)}
.page-hero,.course-hero,.about-hero{background:var(--ink);color:var(--white);padding-top:40px}
.page-hero-copy{padding:clamp(48px,6vw,88px) 0}
.page-hero h1{max-width:1080px}
.page-hero .eyebrow,.about-hero .eyebrow{color:var(--mist)}
.hero-intro{margin-top:28px;max-width:760px;font-size:19px;line-height:1.6;color:var(--mist-2)}
.archive-path{padding:56px 0 0;background:var(--paper)}
.archive-path .pathfinder{box-shadow:none;border:1px solid var(--line)}
.archive-path+.course-directory{background:var(--paper)}
.comparison{padding-top:0}
.comparison h2{margin-bottom:40px}
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--line);border-radius:4px}
table{border-collapse:collapse;width:100%;text-align:left}
.comparison table{min-width:820px}
.comparison th,.comparison td{padding:24px;border-bottom:1px solid var(--line);vertical-align:top;font-size:15px}
.comparison thead{background:var(--ink);color:var(--white)}
.comparison tbody th{font:700 20px/1.3 var(--display);min-width:220px}
.comparison tbody tr:last-child>*{border-bottom:0}
.comparison tbody a{display:inline-block;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.course-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:end;padding-top:clamp(48px,6vw,88px)}
.course-hero-copy{padding-bottom:clamp(48px,6vw,88px)}
.course-hero h1{line-height:.94}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.tags .ptag{color:#D6D6D1;border-color:#4A4A47}
.tags .tag-signal{background:var(--signal);border-color:var(--signal);color:var(--ink)}
.course-hero figure{height:clamp(300px,34vw,460px);border-radius:4px 4px 0 0;overflow:hidden}
.course-layout{display:grid;grid-template-columns:160px minmax(0,1fr) 300px;gap:40px;align-items:start}
.course-body{padding-top:clamp(56px,6vw,96px)}
.sticky{position:sticky;top:calc(104px + var(--admin-offset))}
.course-toc .eyebrow{margin-bottom:14px;letter-spacing:.08em}
.toc a{display:block;min-height:44px;padding:10px 0 10px 16px;border-left:2px solid var(--line);color:var(--steel);font-size:15px}
.toc a:hover,.toc a:first-child{color:var(--ink);border-left-color:var(--ink)}
.course-content{min-width:0}
.course-content>section{padding-bottom:64px}
.course-content>section:last-child{padding-bottom:0}
.course-content h2{margin-bottom:20px}
.course-content p{font-size:17px;line-height:1.7;color:var(--body-text);margin-bottom:28px}
.course-intro p{font-size:18px;color:#3A3A38}
.plus-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.plus-list li{display:grid;grid-template-columns:32px minmax(0,1fr);padding:18px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.55}
.plus-list li>span:first-child{font:700 22px/1 var(--display)}
.content-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.content-heading h2{margin:0}
.tbd{display:inline-flex;align-items:center;gap:8px;border:1px dashed var(--tbd-border);background:var(--tbd-bg);color:var(--tbd-text);border-radius:3px;padding:4px 10px;font:600 13px/1.45 var(--sans)}
.curriculum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.curriculum>div{background:var(--paper);border-radius:4px;padding:24px}
.curriculum h3{font-size:19px;margin-bottom:8px}
.curriculum p{margin:0;font-size:15px;line-height:1.6}
.lessons{border:1px solid var(--line);border-radius:4px}
.lessons>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 20px;cursor:pointer;list-style:none;font:600 17px/1.4 var(--sans)}
.lessons>summary::-webkit-details-marker{display:none}
.lessons-toggle{display:inline-flex;align-items:center;gap:6px;font-size:15px;color:var(--steel);white-space:nowrap}
.lessons-toggle .dgo-icon{transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.lessons[open] .lessons-toggle .dgo-icon{transform:rotate(180deg)}
.lessons>summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.lessons .lesson-list{border-top:1px solid var(--line);padding:4px 20px 8px}
.lesson-list{list-style:none;margin:0;padding:0}
.lesson-list li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.45}
.lesson-list li:last-child{border-bottom:0}
.lesson-list li>span:last-child{font-variant-numeric:tabular-nums;color:var(--steel);text-align:right;white-space:nowrap}
.lesson-list li>span:last-child .tbd{white-space:normal}
@media (prefers-reduced-motion:reduce){.lessons-toggle .dgo-icon{transition:none}}
@media (min-width:768px){.course-content .document-list{grid-template-columns:repeat(2,minmax(0,1fr))}.course-content .document-list li{padding:14px 16px;font-size:15px}}
.document-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.document-list li{display:flex;gap:10px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-radius:4px;font-size:16px}
.document-list>.unconfirmed{flex-wrap:nowrap}.document-list .dgo-icon{color:var(--steel)}
.document-list .unconfirmed{border:1px dashed var(--tbd-border);background:#FFFCEF;flex-wrap:nowrap}
.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rel{display:block;border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:border-color .25s,transform .35s var(--ease)}
.rel:hover{border-color:var(--ink);transform:translateY(-4px)}
.related-image{display:block;height:140px;overflow:hidden}
.rel img{transition:transform .8s var(--ease)}
.rel:hover img{transform:scale(1.04)}
.related-copy{display:block;padding:20px}
.related-copy .eyebrow{display:block;font-size:12px;letter-spacing:.08em;margin-bottom:8px}
.related-copy .disp{font-size:20px;font-weight:700}
.course-summary{background:var(--ink);color:var(--white);border-radius:6px;padding:28px}
.course-summary .eyebrow{color:var(--mist);margin-bottom:24px;letter-spacing:.08em}
.course-summary dl{margin:0}
.course-summary dl>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line-dark)}
.course-summary dl>div:last-child{border-bottom:1px solid var(--line-dark)}
.course-summary dt{display:flex;align-items:center;gap:8px;color:var(--mist);font-size:15px}
.course-summary dd{margin:0;text-align:right;font-weight:600}
.course-summary .tbd{background:var(--graphite);color:var(--signal);border-color:var(--signal)}
.summary-actions{display:grid;gap:10px;margin-top:28px}
.course-summary>p{margin-top:20px;font-size:14px;line-height:1.55;color:var(--mist)}
.about-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;padding-top:64px;align-items:end}
.about-hero-grid>div{padding-bottom:64px}
.about-hero h1{font-size:clamp(44px,5.2vw,80px)}
.about-hero figure{height:600px;overflow:hidden}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gallery-grid figure{height:280px}
.gallery-grid figure:first-child{grid-column:span 3;height:540px}
.company{background:var(--concrete)}
.company-grid{display:grid;grid-template-columns:1fr 2fr;gap:64px}
.company dl{margin:0;border-top:1px solid var(--ink)}
.company dl>div{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line-2)}
.company dt{color:var(--steel);font-size:15px}
.company dd{margin:0;overflow-wrap:anywhere}
.company dd a{display:inline-flex;min-height:44px;align-items:center}
.faq-page-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}
.faq-groups>section+section{margin-top:64px}
.faq-groups h2{margin-bottom:28px}
.faq-help{background:var(--paper);padding:32px;border-radius:6px;display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.faq-help .plus{font-size:56px}
.faq-help h2{font-size:32px}
.help-phone{font-size:clamp(22px,2.2vw,30px);font-weight:700;min-height:44px;display:inline-flex;align-items:center}
.contact-hero{background:var(--ink);color:var(--white);padding:40px 0 var(--section)}
.contact-hero .eyebrow{margin-top:64px;color:var(--mist)}
.contact-hero h1{font-size:clamp(56px,8vw,120px)}
.contact-phone{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:64px;padding:32px 0;border-block:1px solid var(--line-dark);font-size:clamp(36px,6vw,92px);font-weight:700;letter-spacing:-.03em;color:var(--signal)}
.contact-phone svg{width:clamp(28px,5vw,72px);height:auto}
.contact-channels{display:flex;flex-wrap:wrap;gap:32px;margin-top:28px;font-size:clamp(16px,2vw,24px);overflow-wrap:anywhere}
.location-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(40px,8vw,128px)}
.contact-location h2{font-size:clamp(32px,4vw,56px)}
.contact-location address{font-style:normal;font-size:22px;line-height:1.6;max-width:600px;margin:28px 0 32px}
.location-details{border-left:1px solid var(--line);padding-left:48px}
.location-details img{width:220px;height:auto;margin-bottom:40px}
.location-details h3{margin-bottom:12px}
.location-details p{margin-bottom:20px;color:var(--body-text)}
.application-layout{padding-top:clamp(48px,6vw,96px);padding-bottom:var(--section);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(40px,6vw,96px);align-items:start}
.application-intro{max-width:520px}
.application-intro h1{font-size:clamp(48px,6vw,92px);line-height:.95}
.application-description{margin-top:28px;font-size:18px;line-height:1.65;color:var(--body-text)}
.application-contact{margin-top:48px;background:var(--ink);color:var(--white);border-radius:6px;padding:28px}
.application-contact .eyebrow{color:var(--mist);font-size:13px;letter-spacing:.08em;margin-bottom:18px}
.application-contact>.disp{display:block;font-size:clamp(26px,2.8vw,32px);font-weight:700;letter-spacing:-.01em;min-height:44px}
.whatsapp-link{display:inline-flex;min-height:44px;align-items:center;margin-top:10px;color:var(--signal);font-weight:600}
.application-contact address{margin-top:24px;padding-top:20px;border-top:1px solid var(--line-dark);font-style:normal;font-size:15px;line-height:1.6;color:var(--mist)}
.application-contact .mono{font-size:13px}
.application-form{min-width:0;position:relative;background:var(--white);border-radius:6px;padding:clamp(24px,4vw,48px);display:grid;gap:28px}
.application-form h2{font-size:28px;font-weight:700;letter-spacing:-.02em}
.application-form fieldset{border:0;margin:0;padding:0;min-width:0}
.lbl{display:block;font-size:15px;font-weight:600;margin-bottom:8px}
.required{color:#8A6A00}
.optional{font-weight:400;color:var(--steel)}
.situation-fieldset legend{margin-bottom:12px}
.situation-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.opt{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:4px;cursor:pointer;border:1px solid var(--line);background:var(--white);font-size:16px;font-weight:500;line-height:1.35;transition:border-color .2s,background-color .2s}
.opt:hover{border-color:var(--ink)}
.opt:has(:checked){border-color:var(--ink);background:var(--paper);box-shadow:inset 0 -3px 0 var(--signal)}
.opt:has([aria-invalid=true]){border-color:var(--error)}
.opt input{accent-color:var(--ink);width:18px;height:18px;margin:2px 0 0;flex:none}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.form-grid>div{min-width:0}
.fld{width:100%;min-width:0;height:56px;border:1px solid var(--line-2);border-radius:4px;background:var(--white);padding:0 16px;font:400 17px/1.5 var(--sans);transition:border-color .2s,box-shadow .2s}
.fld:hover{border-color:var(--muted-dark)}
.fld:focus{outline:3px solid var(--signal);outline-offset:2px;border-color:var(--ink);box-shadow:0 0 0 3px rgba(246,194,28,.55)}
.fld[aria-invalid=true]{border-color:var(--error);box-shadow:inset 4px 0 0 var(--error)}
textarea.fld{height:132px;min-height:132px;padding:14px 16px;resize:vertical}
select.fld{appearance:none;-webkit-appearance:none;padding-right:48px;text-overflow:ellipsis}
.select-field{display:block;position:relative}
.select-field>.dgo-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none}
.field-error{margin:8px 0 0;color:var(--error);font-size:14px;font-weight:500;line-height:1.5}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.55;color:#3A3A38;cursor:pointer;min-height:44px}
.consent input{accent-color:var(--ink);width:20px;height:20px;flex:none;margin:1px 0 0}
.consent a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px}
.form-submit{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid var(--concrete)}
.form-submit p{font-size:14px;color:var(--steel)}
.form-notice{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;border:1px dashed var(--tbd-border);background:var(--tbd-bg);color:var(--tbd-text);border-radius:4px;padding:20px 22px;font-size:15px;line-height:1.6}
.form-notice-error{border-color:var(--error);background:#fff6f4;color:var(--error)}
.honeypot{position:absolute!important;left:0;top:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}
.prose{max-width:840px;margin-inline:auto}
.entry-content{overflow-wrap:anywhere}
.entry-content p{margin-bottom:24px}
.entry-content h2,.entry-content h3{margin-block:40px 20px}
.entry-content a{text-decoration:underline;text-underline-offset:4px}
.entry-content li{margin-bottom:8px}
.entry-content img{max-width:100%;height:auto}
.entry-content iframe,.entry-content video{max-width:100%}
.entry-content pre{max-width:100%;overflow-x:auto}
.legal-content>p:first-child{border:1px dashed var(--tbd-border);background:var(--tbd-bg);color:var(--tbd-text);padding:32px;border-radius:4px}
.not-found{background:var(--paper);min-height:65vh;position:relative;overflow:hidden}
.not-found h1{max-width:900px}
.not-found .wrap{position:relative;z-index:1}
.not-found-plus{position:absolute;right:0;bottom:-60px;z-index:-1;font:800 360px/1 var(--display);color:var(--line)}
.index-entry+.index-entry{margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.js .reveal.is-pending{opacity:0;transform:translateY(18px)}
.js .reveal{transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.is-in{opacity:1;transform:none}
@media(min-width:1440px){.prow{grid-template-columns:150px minmax(0,1fr) 340px 120px 56px;gap:28px}.pthumb{width:120px}}
@media(min-width:961px){.only-m{display:none!important}.mobile-bottom{display:none!important}}
@media(min-width:961px) and (max-width:1200px){
  .header-inner{gap:16px}.brand-name,.brand-rule{display:none!important}.menu{gap:24px}.header-actions{gap:12px}.header-phone{font-size:12px}.brand-logo{max-width:150px}
  .hero-text{max-width:680px}.course-layout{grid-template-columns:130px minmax(0,1fr) 260px;gap:24px}.course-summary{padding:20px}.course-summary .btn{padding-inline:12px}
  .prow{grid-template-columns:90px minmax(0,1fr) 220px 52px;gap:20px}.pthumb{display:none}.cta-copy{max-width:700px}.giant-plus{right:-260px;width:480px;height:480px}.cta-compact .cta-copy{flex-wrap:wrap}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:960px){
  :root{--header:72px;--section:clamp(64px,9vw,96px)}
  .only-d{display:none!important}.brand-logo{height:32px}.header-inner{height:72px}.hero-photo{inset:0;width:100%}.hero-photo picture,.hero-photo img{object-position:60% 55%}
  .hero-gradient{background:linear-gradient(to top,#151515 0%,rgba(21,21,21,.96) 45%,rgba(21,21,21,.78) 75%,rgba(21,21,21,.35) 100%)}.photo-corners{inset:calc(var(--header) + 16px) var(--gutter) auto;height:20px}.photo-corners i{width:20px;height:20px}.photo-corners i:nth-child(3),.photo-corners i:nth-child(4){display:none}
  .hero-copy{align-items:flex-end;padding-top:calc(var(--header) + 48px);padding-bottom:calc(32px + env(safe-area-inset-bottom))}.hero-text{width:100%;max-width:780px}.hero-kicker{font-size:12px;margin-bottom:16px;gap:8px}.hero-copy h1{font-size:clamp(40px,11.5vw,56px);line-height:.95}.hero-description{font-size:17px;max-width:600px;margin-top:20px}.hero-copy .button-row{display:grid;gap:10px;margin-top:28px}.hero-copy .btn{min-height:54px}
  .home-path{margin:0;background:var(--paper);padding:32px 0}.pathfinder{grid-template-columns:minmax(0,1fr);box-shadow:none;gap:16px}.home-path .pathfinder{padding:0;background:transparent}.path-heading h2{font-size:26px}.path-heading{gap:6px;display:block}.path-heading p{font-size:15px;margin-top:6px}
  .path-tabs{display:flex;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:4px;gap:8px}.tab{flex:0 0 190px;padding:14px;font-size:15px}.tab-kicker{font-size:12px;margin-bottom:4px}.path-panel{padding:20px}.home-path .path-panel{background:var(--white)}.recommendation .disp{font-size:20px}
  .institution-grid{grid-template-columns:minmax(0,1fr);gap:32px}.institution-photo{height:500px}.principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.principle{grid-template-columns:24px minmax(0,1fr)}.principle:nth-last-child(2){border-bottom:0}.principles>.ulink{grid-column:1/-1;justify-self:start;margin:0}
  .prow{grid-template-columns:minmax(0,1fr) 52px;gap:8px 20px;margin:0;padding:20px 0}.pcol-who,.pthumb{display:none}.ptag{grid-column:1;border:0;padding:0;font-size:11px;color:var(--steel)}.program-name{grid-column:1;grid-row:2;font-size:26px}.parrow{grid-column:2;grid-row:1/span 2}.prow:hover{padding-inline:12px}.course-filters{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:4px 0}.chip{flex:none}
  .space-heading{grid-template-columns:1fr;gap:28px}.space-heading>p{justify-self:start;max-width:600px}.space-bento{grid-auto-rows:180px}.reasons{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:48px}.process-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}.process-steps>li{padding:0}.process-node{margin-bottom:20px}
  .faq-grid{grid-template-columns:minmax(0,1fr);gap:40px}.faq-intro{max-width:600px}.question-box{margin-top:0}.cta-copy{max-width:820px}.cta-copy h2{font-size:clamp(44px,8vw,76px)}.cta-compact .cta-copy{display:block}.cta-compact .button-row{margin-top:28px}.cta-compact h2{font-size:clamp(32px,5vw,48px)}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
  .page-hero,.course-hero,.about-hero{padding-top:24px}.course-hero-grid{gap:32px;padding-top:40px}.course-hero h1{font-size:clamp(44px,6vw,72px)}.course-hero-copy{padding-bottom:48px}.course-hero figure{height:360px}.hero-intro{font-size:18px}.course-layout{grid-template-columns:minmax(0,1fr) 280px;gap:32px}.sticky{position:static}.curriculum{grid-template-columns:minmax(0,1fr)}.related-grid{grid-template-columns:1fr}.course-summary{padding:24px}
  .about-hero-grid{gap:32px;padding-top:40px}.about-hero figure{height:540px}.about-hero h1{font-size:48px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid figure:first-child{grid-column:span 2;height:420px}.company-grid{grid-template-columns:1fr;gap:32px}.faq-page-grid{grid-template-columns:minmax(0,1fr);gap:48px}.faq-help{max-width:520px;width:100%}
  .application-layout{grid-template-columns:minmax(0,1fr);gap:40px}.application-intro{max-width:none}.application-intro h1{max-width:650px;font-size:clamp(48px,8vw,76px)}.application-description{max-width:650px}.application-contact{max-width:520px}.application-form{max-width:760px;width:100%}.contact-phone{margin-top:48px}.location-grid{gap:40px}.location-details{padding-left:32px}.contact-channels{gap:16px}
}
@media(max-width:767px){
  :root{--gutter:20px;--section:64px}body.admin-bar{--admin-offset:46px}body.has-mobile-bar{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.hero-kicker{white-space:normal}.hero-kicker>span:first-child{font-size:18px}
  .path-tabs{margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}.tab{flex-basis:168px}.path-panel .eyebrow{font-size:12px;margin-bottom:6px}.recommendation .disp{font-size:19px}.path-note{font-size:14px}.path-panel .btn{width:100%}.display-title{font-size:clamp(38px,8vw,56px)}.section-heading{margin-bottom:28px;gap:20px}.eyebrow{font-size:12px;margin-bottom:12px}
  .manifesto{font-size:32px}.institution-grid{margin-top:40px}.institution-photo{height:360px}.principles{display:block}.principle{grid-template-columns:32px minmax(0,1fr)}.principles>.ulink{margin-top:20px}.program-name{font-size:22px}.prow{grid-template-columns:1fr 44px;padding:18px 0}.parrow{width:44px;height:44px}.directory-note{margin-top:24px}.course-filters{margin-inline:-4px;padding-inline:4px}
  .space-bento{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:12px}.space-bento .tile,.space-bento .tile:first-child{grid-column:auto;grid-row:auto;height:260px}.space-heading{margin-bottom:28px}.space-heading .display-title{font-size:36px}.space-heading>p{font-size:17px}.tile figcaption{left:12px;bottom:12px;padding:8px 12px;font-size:13px}.reasons{gap:0 20px;margin-top:40px}.reasons>div{padding:24px 0 8px}.reasons h3{font-size:20px}.process .section-heading{margin-bottom:40px}.process-steps{grid-template-columns:1fr;gap:32px}.process-steps>li{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:20px}.process-node{grid-column:1;grid-row:1/span 3;flex-direction:column;gap:12px;height:100%;margin:0}.process-node::after{width:2px;min-height:24px;flex:1}.process-steps h3{font-size:26px}.process-steps p,.process-steps h3{grid-column:2}.process-steps .mono{margin-bottom:6px}
  .faqbtn{padding-block:22px;gap:16px}.faq-answer{padding-right:0;font-size:16px}.faq-intro h2{font-size:36px}.cta-copy h2{font-size:clamp(44px,9vw,64px)}.cta-copy>p{font-size:17px;margin-top:24px}.cta-copy .button-row{margin-top:28px;display:grid;grid-template-columns:1fr}.cta-compact>.wrap{padding-block:56px}.cta-compact h2{font-size:36px}.footer-grid{grid-template-columns:1fr;gap:36px;padding-bottom:40px}.footer-links{gap:0}.footer-heading{margin-bottom:12px}.footer-brand{gap:16px}.footer-wordmark{margin-top:32px}.footer-bottom{padding-block:24px 32px;gap:16px}.footer-bottom .menu{gap:8px 20px}
  .page-hero h1{font-size:clamp(44px,9vw,72px)}.page-hero-copy{padding:40px 0 56px}.breadcrumb{font-size:13px}.course-hero-grid{grid-template-columns:1fr;gap:0;padding-top:32px}.course-hero-copy{padding-bottom:32px}.course-hero h1{font-size:clamp(44px,9.5vw,72px)}.course-hero figure{height:300px}.tags{margin-bottom:20px}.tags .ptag{font-size:12px;border:1px solid #4A4A47;padding:6px 10px}.tags .tag-signal{border-color:var(--signal)}.course-layout{display:flex;flex-direction:column;gap:40px}.course-content{width:100%}.course-summary{width:100%;max-width:520px}.course-content>section{padding-bottom:48px}.course-content h2{font-size:30px}.course-content p{font-size:16px}.curriculum{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum>div{padding:20px}.curriculum h3{font-size:18px}.curriculum p{font-size:15px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-copy{padding:16px}.related-copy .disp{font-size:18px}.document-list li{align-items:flex-start;padding:18px 16px}
  .archive-path{padding-top:32px}.archive-path .pathfinder{padding:24px}.archive-path .path-tabs{margin-inline:0;padding-inline:0}.comparison th,.comparison td{padding:20px}.about-hero-grid{grid-template-columns:1fr;gap:0}.about-hero h1{font-size:48px}.about-hero-grid>div{padding-bottom:32px}.about-hero figure{height:360px}.gallery-grid{gap:12px}.gallery-grid figure{height:240px}.gallery-grid figure:first-child{height:320px}.company dl>div{grid-template-columns:1fr;gap:8px}.company h2{font-size:36px}.faq-help{padding:28px}.location-grid{grid-template-columns:1fr;gap:48px}.location-details{padding:32px 0 0;border-left:0;border-top:1px solid var(--line)}.contact-phone{font-size:clamp(30px,7.6vw,56px);gap:12px;padding:24px 0}.contact-hero .eyebrow{margin-top:40px}.contact-hero h1{font-size:60px}.contact-location address{font-size:20px}.contact-channels{flex-direction:column;align-items:flex-start}.contact-channels a{overflow-wrap:anywhere;max-width:100%;word-break:break-word}.contact-location h2{font-size:36px}
  .application-layout{padding-top:48px}.application-intro h1{font-size:52px}.application-description{font-size:17px}.application-contact{margin-top:32px;padding:24px}.application-form{padding:24px;gap:24px}.situation-options,.form-grid{grid-template-columns:1fr}.opt{align-items:center;min-height:56px}.form-submit{display:grid}.form-submit .btn{width:100%}.form-notice{padding:18px}.not-found h1{font-size:52px}.not-found-plus{font-size:220px;bottom:-80px}
}
@media(max-width:430px){:root{--gutter:16px}.curriculum,.related-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-grid figure:first-child{grid-column:auto}.reasons{grid-template-columns:1fr}.application-intro h1{font-size:48px}.application-form{padding:24px 20px}.brand-logo{max-width:160px}.contact-phone{letter-spacing:-.04em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal.is-pending{opacity:1;transform:none}}

/* Contact and informational icons share one grid and inherit the text color. */
.dgo-icon{display:inline-block;flex:none;vertical-align:middle}
.icon-link{display:inline-flex;align-items:center;gap:8px}
.btn:has(>.dgo-icon){gap:10px}
.btn:hover>.dgo-icon:not(.dgo-icon-arrow):not(.dgo-icon-arrow-up-right){transform:none}
.info-row,.contact-info>a{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px}
.contact-info{display:grid;gap:14px}
.contact-info>a{justify-content:start}
.application-contact>.icon-link{display:flex;align-items:center;gap:8px}
.mobile-menu-contact>p{justify-content:center}
.contact-phone{display:grid;grid-template-columns:28px minmax(0,1fr);justify-content:start;gap:10px}
.contact-phone>.dgo-icon{width:28px;height:28px}
.contact-channels>.icon-link{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px}
.reason-icon{display:block;margin-bottom:16px;color:var(--signal)}
.footer-links a:has(>.dgo-icon){gap:8px}
.form-notice>.dgo-icon{margin-top:2px}

/* Keep the home hero readable on short screens without clipping its content. */
@media(min-width:961px) and (max-height:800px){
  .hero-kicker{margin-bottom:24px}.hero-description{margin-top:24px;font-size:18px}.hero-copy .button-row{margin-top:28px}
}
@media(max-width:960px) and (max-height:700px){
  .hero-copy h1{font-size:clamp(38px,10.7vw,48px)}.hero-description{font-size:16px;margin-top:16px}.hero-copy .button-row{margin-top:24px}.hero-copy{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
}
@media(max-height:559px){
  .home-hero{height:auto;min-height:560px;max-height:none}.hero-copy{flex:auto;min-height:560px}
}

/* A neutral preview strip is shared by all page templates. */
:root{--preview-bar-h:0px}
body.has-preview-bar{--preview-bar-h:44px;padding-top:var(--preview-bar-h)}
body.dgo-inner.has-preview-bar{padding-top:calc(var(--header) + var(--preview-bar-h))}
.site-header{top:calc(var(--admin-offset) + var(--preview-bar-h))}
.mobile-menu{top:calc(var(--admin-offset) + var(--preview-bar-h))}
[id]{scroll-margin-top:calc(96px + var(--admin-offset) + var(--preview-bar-h))}
.preview-bar{position:fixed;z-index:300;top:var(--admin-offset);left:0;right:0;height:44px;border-bottom:2px solid #F6C21C;background:#151515;color:#fff;display:flex;align-items:center;justify-content:space-between;padding-inline:24px;font:500 13px/1.3 system-ui,sans-serif}
.preview-control{position:relative;height:42px}
.preview-toggle{display:flex;align-items:center;justify-content:center;gap:9px;height:44px;transform:translateY(-1px);padding:0 8px;background:transparent;color:#fff;border:0;font:600 13px system-ui,sans-serif}
.preview-letter{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#F6C21C;color:#151515;font-size:12px}
.preview-toggle[aria-expanded=true]>.dgo-icon-chevron-down{transform:rotate(180deg)}
.preview-options{position:absolute;right:0;top:50px;width:370px;max-width:calc(100vw - 24px);padding:6px;border-radius:16px;background:#fff;color:#151515;box-shadow:0 16px 50px #0003;border:1px solid #ddd;overflow:hidden}
.preview-options a{display:flex;align-items:center;gap:12px;min-height:76px;border-radius:10px;padding:12px}
.preview-options a:hover,.preview-options a[aria-current=true]{background:#F1F1EE}
.preview-options a>span:nth-child(2){flex:1}.preview-options strong{display:block;font-size:14px}.preview-options small{display:block;font-size:12px;line-height:1.5;margin-top:4px;color:#5E5E5A}
.preview-swatch{flex:none;width:30px;height:36px;border-radius:6px;background:linear-gradient(140deg,#151515 65%,#F6C21C 65%)}
.preview-swatch-b{background:linear-gradient(140deg,#F1F1EE 50%,#F6C21C 50%);border:1px solid #ddd;border-radius:10px}
.preview-swatch-c{background:linear-gradient(140deg,#fff 50%,#111 50%,#111 70%,#F6C21C 70%);border:1px solid #ddd}
.preview-nojs{display:flex;height:42px;gap:6px}.preview-nojs a{display:grid;place-items:center;width:44px}
html:not(.js) .preview-toggle{display:none}
.home-variant-a .home-hero{height:calc(100svh - var(--preview-bar-h) - var(--admin-offset));min-height:0}
@media(max-width:767px){.preview-label{display:none}.preview-bar{padding-inline:12px;justify-content:flex-end}}
/* Crop the source's lower middle into the upper half; keep text on solid ink. */
@media(max-width:960px){
  .home-variant-a .hero-photo{height:60%;width:100%;inset:0 0 auto}
  .home-variant-a .hero-photo picture,.home-variant-a .hero-photo img{object-position:52% 72%}
  .home-variant-a .hero-gradient{background:linear-gradient(180deg,rgba(21,21,21,.12) 0%,rgba(21,21,21,.18) 75%,#151515 100%)}
  .home-variant-a .hero-copy{background:linear-gradient(180deg,transparent 0%,transparent 45%,#151515 50%);padding-bottom:calc(28px + env(safe-area-inset-bottom))}
}
@media(max-width:960px) and (max-height:700px){
  .home-variant-a .hero-copy h1{font-size:clamp(36px,10.2vw,46px)}
  .home-variant-a .hero-kicker{margin-bottom:12px}
  .home-variant-a .hero-description{margin-top:12px}
  .home-variant-a .hero-copy .button-row{margin-top:18px;gap:8px}
  .home-variant-a .hero-copy .btn{min-height:50px}
  .home-variant-a .hero-copy{padding-bottom:20px}
}
@media(max-height:559px){.home-variant-a .home-hero{height:auto;min-height:560px}}

/* Header yön davranışı: site.js .header-hidden sınıfını html'e ekler. */
:root .site-header,:root .b-header.is-floating,:root .c-header{transition-property:background-color,box-shadow,transform;transition-duration:.3s;transition-timing-function:cubic-bezier(.2,.7,.2,1)}
.header-hidden .site-header{transform:translateY(calc(-100% - var(--admin-offset) - 60px))}
.header-hidden .b-header.is-floating{transform:translate(-50%,calc(-100% - var(--preview-bar-h,0px) - var(--admin-offset) - 40px))}
.header-hidden .c-header{transform:translateY(calc(-100% - var(--preview-bar-h,0px) - var(--admin-offset) - 20px))}
@media (prefers-reduced-motion:reduce){:root .site-header,:root .b-header.is-floating,:root .c-header{transition-duration:.01ms}}

/* A header v2: yüzen komuta çubuğu (Canvas, 7 Kasım 2026) */
.site-header,.site-header.is-scrolled{background:transparent;box-shadow:none}.site-header.is-solid{background:var(--ink);box-shadow:none;min-height:var(--header)}
.site-header .header-inner{height:68px;margin-top:14px;padding:0 8px 0 20px;background:#1B1B1A;border:1px solid #2E2E2C;border-radius:14px;box-shadow:0 24px 60px -24px rgba(0,0,0,.7)}
.site-header.is-scrolled .header-inner{height:68px}
.site-header .brand-name,.site-header .brand-rule{display:none}
.site-header .brand-logo{height:34px}
.desktop-nav .menu{gap:2px;padding:4px;background:#232322;border-radius:10px}
.desktop-nav .menu a{min-height:42px;padding:0 16px;border-radius:7px;font-size:14px;transition:background-color .2s var(--ease),color .2s var(--ease)}
.desktop-nav .menu a::after{display:none}
.desktop-nav .menu a:hover{background:#2E2E2C;color:var(--white)}
.desktop-nav .menu a[aria-current=page],.desktop-nav .menu .current-menu-item>a{background:#F6F6F4;color:var(--ink)}
.site-header .header-actions{gap:8px}
.site-header .header-phone{width:50px;height:50px;justify-content:center;border:1px solid #2E2E2C;border-radius:10px;color:#D6D6D1;transition:border-color .2s var(--ease),color .2s var(--ease)}
.site-header .header-phone:hover{border-color:var(--signal);color:var(--signal)}
.site-header .btn-small{height:50px;border-radius:10px;gap:8px}
.site-header .menu-toggle{border-radius:10px}
@media (max-width:960px){.site-header .header-inner{height:60px;margin-top:10px;padding:0 6px 0 14px;border-radius:12px}.site-header .brand-logo{height:30px}}
@media (min-width:961px){.institution-grid{align-items:stretch}.institution-photo{height:auto;min-height:300px;position:relative;overflow:hidden}.institution-photo picture,.institution-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}}
