:root{--ink:#252a29;--muted:#65706a;--red:#ac302d;--red-hover:#8e2623;--line:#dce1dd;--paper:#fff;--soft:#f5f6f3;--green:#e7ede7;--green-ink:#42604f;--radius:0px;--shadow:0 12px 36px #212b2114}
*{box-sizing:border-box;letter-spacing:0}
html{scroll-behavior:smooth;scroll-padding-top:112px;scrollbar-gutter:stable}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"Microsoft YaHei","PingFang SC","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
button{color:inherit}
img{display:block;max-width:100%;object-fit:cover}
svg{width:20px;height:20px;stroke-width:1.6;flex:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b84b3d;outline-offset:4px}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:600;line-height:1.4}
button{border:0;background:none}
.container{width:min(1240px,calc(100% - 112px));margin-inline:auto}
.muted{color:var(--muted)}
.skip-link{position:fixed;top:-100px;left:15px;padding:10px 20px;background:white;z-index:100}
.skip-link:focus{top:10px}
.preview-bar{background:#f1f2ee;border-bottom:1px solid #e9ebe7;font-size:11px;color:#6a706c}
.preview-bar .container{display:flex;justify-content:space-between;align-items:center;min-height:29px}
.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--red);vertical-align:middle;margin-right:7px}
.site-header{position:sticky;top:0;z-index:20;background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid #252a2914}
.header-inner{height:87px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:14px;flex-shrink:0}
.brand-logo{display:block;width:250px;height:auto;object-fit:contain;flex-shrink:0}
@media(max-width:700px){.brand-logo{width:220px}}
@media(max-width:370px){.brand-logo{width:200px}}
.brand-mark{position:relative;color:var(--red);font:bold 31px/1 Arial,sans-serif;padding-bottom:8px}
.brand-mark>span{height:3px;background:var(--red);position:absolute;bottom:0;left:0;width:26px}
.brand-name{font-size:17px;line-height:1.5;font-weight:600}
.brand-name small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:3px}
.desktop-nav{display:flex;align-items:center;gap:25px;height:100%}
.desktop-nav>a{position:relative;display:flex;align-items:center;height:100%;font-size:18px;font-weight:500;white-space:nowrap;transition:color .2s}
.desktop-nav>a:hover,.desktop-nav>a[aria-current="page"]{color:var(--red)}
.desktop-nav>a[aria-current="page"]:after{content:"";position:absolute;bottom:20px;left:50%;width:15px;height:2px;background:var(--red);transform:translateX(-50%)}
.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius)}
.icon-button:hover{background:#252a290a}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:13px 22px;min-height:48px;background:var(--red);color:#fff;border:1px solid var(--red);border-radius:2px;line-height:1.45;transition:background .2s,transform .2s;text-align:center}
.button:hover{background:var(--red-hover);border-color:var(--red-hover)}
.button-small{padding:10px 15px;min-height:40px;font-size:12px;gap:13px;white-space:nowrap}
.button-outline{background:transparent;color:var(--ink);border-color:#c6cbc5}
.button-outline:hover{background:#f1f3ee;border-color:#a6aea3}
.button-light{background:white;border-color:white;color:var(--ink)}
.button-light:hover{background:#f1f2ef;border-color:#f1f2ef}
.menu-toggle,.mobile-nav{display:none}
.hero{position:relative;isolation:isolate;min-height:370px;height:min(465px,calc(100svh - 280px));color:white;background:#555e56;overflow:hidden}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-3;object-position:center 53%}
.hero:after{content:"";position:absolute;inset:0;background:rgba(22,30,24,.48);z-index:-2}
.hero-inner{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:45px;position:relative}
.eyebrow{font:12px/1.6 Arial,sans-serif;color:var(--muted);text-transform:uppercase;display:flex;align-items:center;gap:10px;margin-bottom:18px}
.eyebrow:before{content:"";height:1px;width:25px;background:currentColor}
.hero .eyebrow{color:#ffffffc2}
.hero h1{font-size:49px;font-weight:500;line-height:1.4}
.hero-copy{font-size:20px;margin-top:18px;font-weight:300}
.hero-actions{display:flex;align-items:center;gap:25px;margin-top:34px}
.hero-secondary{display:flex;gap:12px;align-items:center;border-bottom:1px solid #ffffff6b;padding-block:9px;font-size:13px}
.hero-secondary:hover{border-color:white}
.image-note{position:absolute;bottom:15px;right:25px;font-size:10px;background:#ffffffdf;color:#535b54;padding:2px 8px}
.hero-index{position:absolute;bottom:54px;right:0;display:flex;align-items:center;gap:14px;font:11px Arial;color:#ffffffe0}
.hero-index span{width:62px;height:1px;background:#ffffff6b}
.hero-index span:before{content:"";display:block;width:21px;height:1px;background:white}
.service-strip{border-bottom:1px solid var(--line)}
.service-links{display:grid;grid-template-columns:repeat(3,1fr)}
.service-link{display:flex;align-items:center;gap:16px;padding:24px 0;position:relative;min-width:0}
.service-link+.service-link{padding-left:35px}
.service-link+.service-link:before{content:"";position:absolute;left:0;top:25px;bottom:25px;width:1px;background:var(--line)}
.service-link>.lucide{color:var(--red);width:28px;height:28px}
.service-link>span{flex:1}
.service-link b{font-size:16px;font-weight:500}
.service-link small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.service-link>.end-icon{width:17px;color:var(--ink);margin-right:30px}
.service-link:hover b{color:var(--red)}
.section{padding-block:76px}
.section-soft{background:var(--soft)}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:32px}
.section-head .eyebrow{margin-bottom:10px;font-size:11px}
.section-head h2{font-size:30px}
.section-head p{margin-top:10px;color:var(--muted);font-size:13px}
.text-link{display:inline-flex;align-items:center;gap:14px;font-size:12px;padding:7px 0;white-space:nowrap}
.text-link:hover{color:var(--red)}
.text-link svg{width:17px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:29px}
.tab{font-size:12px;padding:9px 18px;border:1px solid transparent;border-radius:2px;min-height:40px}
.tab:hover{background:#f0f2ed}
.tab[aria-pressed="true"]{background:var(--ink);color:white}
.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}
.course-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white;transition:box-shadow .25s,transform .25s,border-color .25s}
.course-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.course-image{position:relative;aspect-ratio:1.75;overflow:hidden;background:#e9ede7}
.course-image>img{height:100%;width:100%;transition:transform .5s}
.course-card:hover img{transform:scale(1.04)}
.course-image .image-note{right:10px;bottom:10px;font-size:9px}
.course-format{position:absolute;left:16px;top:16px;background:white;padding:3px 11px;font-size:10px;border-radius:2px}
.course-body{padding:23px 23px 0;display:flex;flex-direction:column;flex:1}
.course-category{color:var(--green-ink);font-size:10px;margin-bottom:9px}
.course-body h3{font-size:19px;line-height:1.5;min-height:3em}
.course-body p{font-size:12px;color:var(--muted);margin-top:8px}
.course-bottom{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-block:15px;font-size:11px;color:var(--muted)}
.course-bottom svg{color:var(--ink);width:18px}
.section-bottom{margin-top:30px;display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}
.service-section{background:var(--green);padding-block:70px}
.service-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:90px}
.service-intro h2{font-size:32px;margin-bottom:18px}
.service-intro p{color:#667268;font-size:13px;max-width:300px;margin-bottom:27px;line-height:1.9}
.service-intro .eyebrow{color:var(--green-ink)}
.service-rows{border-top:1px solid #bac8bc}
.service-row{padding:21px 0;border-bottom:1px solid #bac8bc;display:flex;gap:23px;align-items:center}
.service-row .number{font:12px Arial;color:#768977}
.service-row h3{font-size:18px;font-weight:500}
.service-row p{font-size:12px;color:#637165;margin-top:5px}
.service-row>a{margin-left:auto;flex-shrink:0}
.service-row .icon-button{border:1px solid #aab9ac;border-radius:50%}
.case-list{border-top:1px solid var(--line)}
.case-row{display:grid;grid-template-columns:62px 150px 1fr 100px 30px;gap:18px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}
.case-row:hover h3{color:var(--red)}
.case-row .case-num{font:18px Georgia,serif;color:#929991}
.industry{font-size:11px;color:var(--green-ink)}
.case-row h3{font-size:17px;font-weight:500}
.case-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.case-row .case-type{font-size:11px;color:var(--muted)}
.case-row>svg{width:18px}
.faculty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.faculty-item{position:relative;display:flex;gap:20px;padding:20px 0;border-top:1px solid var(--line);min-width:0;transition:transform .2s,box-shadow .2s,background-color .2s}
.portrait-placeholder{width:95px;aspect-ratio:4/5;background:#e9ede8;display:flex;align-items:center;justify-content:center;flex:none;position:relative}
.portrait-placeholder svg{width:35px;height:35px;color:#929d90;stroke-width:1}
.portrait-placeholder span{position:absolute;bottom:9px;font-size:9px;color:#7b877b}
.faculty-info{padding-top:7px}
.faculty-info .eyebrow{font-size:10px;margin-bottom:12px}
.faculty-info h3{font-size:17px}
.faculty-info p{font-size:11px;color:var(--muted);margin-top:9px}
.contact-band{background:var(--red);color:white;padding-block:43px}
.contact-band .container{display:flex;align-items:center;justify-content:space-between;gap:28px}
.contact-band .eyebrow{color:#fff9;margin-bottom:9px;font-size:10px}
.contact-band h2{font-size:27px;font-weight:500}
.contact-band p{font-size:12px;color:#fffc;margin-top:8px}
.site-footer{background:#f7f8f5;padding-top:53px}
.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px;padding-bottom:45px}
.footer-brand .brand-mark{font-size:28px}
.footer-brand .brand-name{font-size:15px}
.footer-tagline{font-size:11px;color:var(--muted);margin-top:20px}
.footer-links{display:flex;flex-direction:column;gap:11px;font-size:11px}
.footer-links h3{font-size:12px;margin-bottom:7px;font-weight:500}
.footer-links a{color:#686f69;display:flex;align-items:center;gap:8px}
.footer-links a:hover{color:var(--red)}
.footer-links svg{width:14px;height:14px}
.footer-bottom{border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;padding-block:20px;font-size:10px;color:#858b84}
.page-heading{padding:36px 0 47px;background:var(--soft);border-bottom:1px solid var(--line)}
.breadcrumb{display:flex;gap:9px;align-items:center;font-size:11px;color:var(--muted);margin-bottom:28px;flex-wrap:wrap}
.breadcrumb a:hover{color:var(--red)}
.breadcrumb svg{width:12px;height:12px}
.page-heading h1{font-size:38px;font-weight:500;text-wrap:balance}
.page-heading .eyebrow{margin-bottom:9px;font-size:11px}
.page-heading p{color:var(--muted);font-size:13px;margin-top:15px}
.page-section{padding-block:48px 75px}
.catalog-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:42px}
.filter-sidebar{border-right:1px solid var(--line);padding-right:28px}
.filter-group{margin-bottom:30px}
.filter-group h2{font-size:13px;margin-bottom:14px}
.filter-options{display:flex;flex-direction:column;gap:7px}
.filter-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:12px;padding:4px 0}
input[type="radio"],input[type="checkbox"]{accent-color:var(--red);width:15px;height:15px;flex:none;margin:0}
.catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}
.catalog-tools>span{font-size:12px;color:var(--muted)}
.search-field{display:flex;gap:10px;align-items:center;border:1px solid #d6dbd4;background:white;padding:11px 14px;border-radius:2px;min-width:0}
.search-field:focus-within{border-color:var(--red)}
.search-field svg{width:17px;height:17px;color:var(--muted)}
.search-field input{background:none;border:0;outline:0;width:100%;min-width:0;font-size:12px}
.catalog-tools .search-field{width:260px}
.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.empty-state{text-align:center;padding:65px 20px;border:1px dashed #d8dfd5;background:var(--soft);grid-column:1/-1}
.empty-state>svg{width:30px;height:30px;color:#8c998a;margin-bottom:14px}
.empty-state h2,.empty-state h3{font-size:19px}
.empty-state p{font-size:12px;color:var(--muted);margin:10px 0 23px}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:55px}
.detail-visual{aspect-ratio:2.1;position:relative;background:var(--soft);margin-bottom:30px;overflow:hidden}
.detail-visual img{width:100%;height:100%}
.detail-aside{align-self:start;position:sticky;top:120px;border:1px solid var(--line);padding:26px;border-radius:4px}
.status-label{display:inline-block;font-size:10px;padding:4px 9px;background:#eef2eb;color:var(--green-ink);margin-bottom:15px}
.detail-aside h2{font-size:20px;margin-bottom:20px}
.detail-aside dl{margin:0 0 24px;font-size:12px}
.detail-aside dl>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.detail-aside dt{color:var(--muted);flex-shrink:0}
.detail-aside dd{margin:0;text-align:right}
.detail-aside .button{width:100%}
.detail-aside p{font-size:10px;color:var(--muted);margin-top:14px}
.detail-section{padding:27px 0;border-bottom:1px solid var(--line)}
.detail-section h2{font-size:20px;margin-bottom:15px}
.detail-section p{font-size:13px;color:var(--muted)}
.placeholder-line{height:7px;width:86%;background:#edf0e9;margin-top:14px;border-radius:1px}
.placeholder-line.short{width:58%}
.outline-item{border-bottom:1px solid var(--line);padding:17px 0}
.outline-item summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:13px;list-style:none}
.outline-item summary::-webkit-details-marker{display:none}
.outline-item[open] summary svg{transform:rotate(180deg)}
.outline-item p{padding-top:15px;font-size:12px}
.editorial-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.editorial-image{position:relative;aspect-ratio:1.3;overflow:hidden}
.editorial-image img{width:100%;height:100%}
.editorial-copy h2{font-size:30px;margin-bottom:24px}
.editorial-copy p{color:var(--muted);font-size:13px;line-height:1.9}
.editorial-copy .button{margin-top:28px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}
.process-step{border-top:1px solid #cbd4c7;padding-top:22px}
.process-step .number{font:26px Georgia,serif;color:var(--red)}
.process-step h3{font-size:18px;margin-top:12px}
.process-step p{color:var(--muted);font-size:12px;margin-top:10px}
.solution-tabs{border-bottom:1px solid var(--line);background:white}
.solution-tabs .tabs{margin-bottom:0;padding:14px 0}
.info-list{margin-top:25px}
.info-list>div{border-top:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:20px;font-size:13px}
.info-list>div>span{color:var(--muted);font-size:12px}
.contact-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:90px}
.contact-copy h2{font-size:27px;margin-bottom:22px}
.contact-copy>p{font-size:13px;color:var(--muted);line-height:1.9}
.contact-info{margin-top:34px}
.contact-info>div{display:flex;gap:15px;border-top:1px solid var(--line);padding:18px 0}
.contact-info svg{color:var(--red)}
.contact-info h3{font-size:13px;font-weight:500}
.contact-info p{font-size:12px;color:var(--muted);margin-top:4px}
.form-notice{padding:11px 14px;background:#f0f3ed;color:#5d6c59;font-size:11px;margin-bottom:25px;display:flex;align-items:center;gap:10px}
.form-notice svg{width:16px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-field{display:flex;flex-direction:column;gap:8px;font-size:12px;min-width:0}
.form-field.full{grid-column:1/-1}
.form-field input,.form-field select,.form-field textarea{border:1px solid #cfd6cb;background:white;border-radius:2px;padding:12px;min-width:0;width:100%;color:var(--ink)}
.form-field textarea{resize:vertical;min-height:110px}
.form-field input::placeholder,.form-field textarea::placeholder{color:#9ba295}
.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:24px}
.form-bottom small{font-size:10px;color:var(--muted)}
.form-message{font-size:12px;background:var(--green);padding:14px;margin-top:20px}
.article-empty{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.article-placeholder{padding:22px 0;border-top:1px solid var(--line)}
.article-placeholder>span{font-size:11px;color:var(--green-ink)}
.article-placeholder h2{font-size:20px;margin-top:19px}
.article-placeholder p{font-size:12px;color:var(--muted);margin-top:12px}
.privacy{max-width:760px}
.privacy h2{font-size:20px;margin:24px 0 12px}
.privacy p{font-size:13px;color:var(--muted)}
dialog{border:0;border-radius:6px;padding:28px;width:min(600px,calc(100% - 32px));max-height:80svh;box-shadow:0 30px 120px #0003;color:var(--ink)}
dialog::backdrop{background:#17231c70;backdrop-filter:blur(4px)}
.search-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}
.search-header h2{font-size:20px}
.search-results{margin-top:18px;max-height:45svh;overflow:auto}
.search-result{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 6px;border-bottom:1px solid var(--line)}
.search-result:hover{color:var(--red)}
.search-result strong{display:block;font-size:13px;font-weight:500}
.search-result small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.search-result svg{width:16px}
.search-empty{font-size:13px;color:var(--muted);padding:20px 0}
.back-top{position:fixed;right:24px;bottom:24px;z-index:10;border:1px solid var(--line);background:white;box-shadow:var(--shadow)}
#main:focus{outline:0}
@media(min-width:1600px){.container{width:min(1360px,calc(100% - 160px))}.header-inner{height:95px}.hero h1{font-size:55px}.hero{height:490px}.desktop-nav{gap:32px}.hero-copy{font-size:22px}}
@media(max-width:1200px){.container{width:calc(100% - 64px)}.brand-name{font-size:15px}.brand-mark{font-size:28px}.desktop-nav{gap:17px}.header-inner{gap:17px}.header-contact{display:none}.service-layout{gap:48px}.contact-layout{gap:50px}}
@media(max-width:960px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-contact{display:inline-flex}.mobile-nav:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:0;padding:12px 32px 20px;border-top:1px solid var(--line);box-shadow:0 15px 20px #0000000c}.mobile-nav a{padding:12px;font-size:14px}.mobile-nav a:hover{background:var(--soft);color:var(--red)}.hero h1{font-size:41px}.course-grid{gap:18px}.course-body{padding:18px 18px 0}.course-body h3{font-size:17px}.service-link+.service-link{padding-left:20px}.service-link{gap:12px}.service-link small{font-size:10px}.service-link>.end-icon{margin-right:15px}.service-link>svg{width:24px}.faculty-grid{gap:16px}.faculty-item{gap:12px}.portrait-placeholder{width:70px}.faculty-info h3{font-size:15px}.footer-main{grid-template-columns:1.8fr 1fr 1fr}.footer-main>.footer-links:last-child{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:25px;border-top:1px solid var(--line);padding-top:25px}.footer-links:last-child h3{margin:0}.catalog-layout{grid-template-columns:165px 1fr;gap:25px}.filter-sidebar{padding-right:20px}.detail-layout{grid-template-columns:1fr 260px;gap:30px}.detail-aside{padding:20px}.editorial-layout{gap:35px}.case-row{grid-template-columns:40px 100px 1fr 75px 20px;gap:15px}.contact-layout{gap:35px}}
@media(max-width:700px){.container{width:calc(100% - 40px)}.preview-bar .container{min-height:26px;font-size:10px}.preview-note{display:none}.header-inner{height:73px;gap:12px}.brand{gap:11px}.brand-mark{font-size:25px}.brand-name{font-size:15px}.brand-name small{font-size:9px}.header-actions{gap:1px}.header-contact{display:none}.icon-button{width:36px;height:36px}.mobile-nav:not([hidden]){padding:10px 20px 16px}.hero{height:360px;min-height:320px}.hero-photo{object-position:63% center}.hero:after{background:#18251c66}.hero-inner{padding-block:30px}.hero .eyebrow{font-size:10px;margin-bottom:20px}.hero h1{font-size:33px;line-height:1.45}.hero-copy{font-size:15px;margin-top:14px}.hero-actions{gap:20px;margin-top:27px}.hero-actions .button{padding:12px 17px;font-size:12px;gap:15px;min-height:45px}.hero-secondary{font-size:11px;gap:7px}.hero-secondary svg{width:16px}.hero-index{display:none}.hero>.image-note{font-size:9px;right:15px;bottom:10px}.service-link{padding:17px 0;gap:8px;align-items:flex-start}.service-link+.service-link{padding-left:14px}.service-link+.service-link:before{top:18px;bottom:18px}.service-link>svg{width:18px;height:18px;margin-top:3px}.service-link b{font-size:12px}.service-link small{font-size:9px;line-height:1.6;margin-top:4px;max-width:70px}.service-link>.end-icon{display:none}.section{padding-block:45px}.section-head{margin-bottom:23px;align-items:center;gap:15px}.section-head h2{font-size:25px}.section-head .eyebrow{font-size:9px;margin-bottom:7px}.section-head p{font-size:11px;max-width:225px}.text-link{font-size:11px;gap:8px}.text-link svg{width:15px}.tabs{gap:2px;margin-bottom:22px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.tab{padding:8px 12px;font-size:11px;white-space:nowrap;flex-shrink:0}.course-grid{grid-template-columns:1fr;gap:22px}.course-image{aspect-ratio:1.9}.course-body{padding:21px 21px 0}.course-body h3{font-size:20px}.course-bottom{margin-top:19px}.section-bottom{font-size:10px;margin-top:21px}.section-bottom>span:last-child{display:none}.service-section{padding-block:44px}.service-layout{grid-template-columns:1fr;gap:32px}.service-intro h2{font-size:27px;margin-bottom:14px}.service-intro p{max-width:none;font-size:12px;margin-bottom:20px}.service-intro .eyebrow{font-size:10px;margin-bottom:12px}.service-row{padding:18px 0;gap:18px}.service-row h3{font-size:17px}.service-row p{font-size:11px}.case-row{grid-template-columns:25px 1fr 22px;gap:15px;padding:21px 0}.case-row>.industry,.case-row>.case-type{display:none}.case-row h3{font-size:16px}.case-row small{font-size:10px}.case-num{font-size:15px!important}.faculty-grid{grid-template-columns:1fr}.portrait-placeholder{width:90px}.faculty-item{gap:23px;padding-block:22px}.faculty-info h3{font-size:18px}.faculty-info .eyebrow{font-size:10px}.faculty-info p{font-size:12px}.contact-band{padding-block:35px}.contact-band .container{align-items:flex-start;flex-direction:column;gap:23px}.contact-band h2{font-size:24px}.contact-band p{font-size:11px}.contact-band .button{font-size:12px;padding:12px 19px;min-height:44px}.site-footer{padding-top:35px}.footer-main{grid-template-columns:1fr 1fr;gap:30px;padding-bottom:28px}.footer-main>div:first-child{grid-column:1/-1}.footer-tagline{margin-top:14px}.footer-main>.footer-links:last-child{gap:12px;display:flex;flex-direction:column}.footer-bottom{flex-wrap:wrap;gap:8px 15px;font-size:9px}.footer-bottom>span:nth-child(2){margin-right:auto}.page-heading{padding:25px 0 32px}.breadcrumb{font-size:10px;margin-bottom:24px}.page-heading h1{font-size:30px}.page-heading .eyebrow{font-size:10px}.page-heading p{font-size:12px;line-height:1.85}.page-section{padding-block:30px 45px}.catalog-layout{grid-template-columns:1fr;gap:20px}.filter-sidebar{border:0;border-bottom:1px solid var(--line);padding:0 0 20px}.filter-group{margin-bottom:18px}.filter-group:last-of-type{margin-bottom:8px}.filter-group h2{font-size:12px;margin-bottom:8px}.filter-options{flex-direction:row;flex-wrap:wrap;gap:6px 17px}.filter-label{font-size:11px}.catalog-tools{align-items:center;flex-wrap:wrap}.catalog-tools .search-field{width:100%;order:-1}.catalog-grid{grid-template-columns:1fr}.detail-layout{grid-template-columns:1fr;gap:28px}.detail-aside{position:static;grid-row:1}.detail-aside dl{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.detail-aside dl>div{font-size:11px}.detail-visual{aspect-ratio:1.6}.detail-section h2{font-size:19px}.editorial-layout{grid-template-columns:1fr;gap:28px}.editorial-copy h2{font-size:25px}.editorial-image{aspect-ratio:1.6}.process-grid{grid-template-columns:1fr 1fr;gap:25px}.process-step h3{font-size:16px}.process-step p{font-size:11px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-copy h2{font-size:25px}.form-grid{gap:18px 13px}.form-field{font-size:11px}.form-field input,.form-field select,.form-field textarea{padding:11px 9px;font-size:12px}.form-bottom{flex-direction:column;align-items:flex-start}.article-empty{grid-template-columns:1fr}.back-top{right:12px;bottom:12px}.search-header h2{font-size:18px}dialog{padding:20px}}
@media(max-width:370px){.container{width:calc(100% - 30px)}.brand-name{font-size:13px}.brand-mark{font-size:22px}.hero h1{font-size:29px}.hero-copy{font-size:13px}.service-link{gap:5px}.service-link+.service-link{padding-left:8px}.section-head h2{font-size:22px}.form-grid{grid-template-columns:1fr}.header-actions svg{width:18px}.header-actions .icon-button{width:31px}.detail-aside dl{grid-template-columns:1fr}}
.desktop-nav{gap:36px}
@media(min-width:1281px){
 .header-inner{width:min(1720px,calc(100% - 48px));gap:16px}
}
@media(min-width:1281px) and (max-width:1439px){.header-contact{display:none}}
@media(min-width:1600px){.desktop-nav{gap:44px}}
.nav-cluster{position:relative;display:flex;align-items:center;height:100%;gap:6px}
.nav-cluster>a[data-nav]{position:relative;display:flex;align-items:center;height:100%;font-size:18px;font-weight:500;white-space:nowrap}
.nav-cluster>a:hover,.nav-cluster>a[aria-current="page"]{color:var(--red)}
.nav-cluster>a[aria-current="page"]:after{content:"";position:absolute;bottom:20px;left:50%;width:15px;height:2px;background:var(--red);transform:translateX(-50%)}
.nav-disclosure{width:24px;height:44px;display:grid;place-items:center;padding:0;color:var(--muted)}
.nav-disclosure svg{width:15px;height:15px;transition:transform .2s}
.nav-disclosure[aria-expanded="true"] svg,.mobile-disclosure[aria-expanded="true"] svg{transform:rotate(180deg)}
.nav-disclosure:hover{color:var(--red);background:var(--soft)}
.nav-panel{position:absolute;top:100%;width:min(600px,calc(100vw - 40px));max-height:calc(100dvh - 125px);overflow:auto;overscroll-behavior:contain;padding:20px;background:white;border:1px solid var(--line);border-top:2px solid var(--red);border-radius:0 0 4px 4px;box-shadow:var(--shadow)}
.nav-panel:has(.nav-link-group:only-child){width:min(320px,calc(100vw - 40px))}
.nav-panel-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:24px}
#nav-panel-courses{width:min(520px,calc(100vw - 40px))}
#nav-panel-courses .nav-panel-groups{grid-template-columns:minmax(0,1fr);gap:16px}
#nav-panel-courses .nav-link-group:first-child .nav-child-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
#nav-panel-knowledge .nav-panel-groups{grid-template-columns:minmax(0,1fr);gap:16px}
#nav-panel-knowledge .nav-link-group:first-child .nav-child-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
#nav-panel-knowledge .nav-link-group:last-child .nav-child-links{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px}
.nav-group-title{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:17px;font-weight:600;color:var(--green-ink);border-bottom:1px solid var(--line);padding:8px 0 12px}
.nav-group-title svg{width:16px;height:16px}
.nav-child-links{display:grid;padding-top:6px}
.nav-child-links a{display:block;font-size:16px;line-height:1.65;padding:9px 10px;overflow-wrap:anywhere}
.nav-child-links a:hover,.nav-child-links a:focus-visible{background:var(--soft);color:var(--red)}
.nav-child-links a[aria-current="page"]{background:var(--soft);color:var(--red);font-weight:600;box-shadow:inset 3px 0 0 var(--red)}
.nav-group-title[aria-current="page"]{color:var(--red)}
.nav-directory-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:12px;font-size:16px}
.section-trail{border-bottom:1px solid var(--line)}
.section-trail>.container{display:flex;flex-wrap:wrap;gap:6px 28px;padding-block:12px}
.section-trail a{display:inline-flex;align-items:center;gap:10px;min-height:40px;font-size:16px;color:var(--green-ink)}
.section-trail svg{width:16px;height:16px}
.directory-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start}
.section-sidebar{display:flex;flex-direction:column;border-right:1px solid var(--line);padding-right:24px}
.section-sidebar h2{font-size:19px;margin-bottom:18px}
.section-sidebar a{font-size:16px;padding:11px 12px;overflow-wrap:anywhere}
.section-sidebar a:hover{color:var(--red);background:var(--soft)}
.section-sidebar a[aria-current="page"]{background:var(--green);color:var(--green-ink);font-weight:600;border-left:3px solid var(--green-ink);padding-left:9px}
.section-sidebar .sidebar-all{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:16px;padding-top:18px}
.directory-group{margin-bottom:40px}
.directory-group-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--ink);padding-bottom:16px}
.directory-group-heading h2{font-size:23px}
.directory-group-heading>span{color:var(--muted);font-size:14px;white-space:nowrap}
.directory-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
.directory-links>a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 0;border-bottom:1px solid var(--line);min-width:0}
.directory-links strong{display:block;font-size:17px;font-weight:500;overflow-wrap:anywhere}
.directory-links small{display:block;font-size:13px;color:var(--muted);margin-top:5px}
.directory-links>a:hover{color:var(--red)}
.section-content,.directory-content{min-width:0}
.migration-note{border-left:3px solid #b5c3b3;background:var(--soft);padding:18px 22px;margin-bottom:30px}
.migration-note p{font-size:15px;margin-top:10px;color:var(--muted)}
.migration-note .source-link{font-size:14px}
.section-content .detail-section p,.section-intro{font-size:16px;line-height:1.95}
.section-content .detail-section h2,.section-body-title{font-size:23px}
.section-body-title{margin:25px 0}
.section-content .case-row{grid-template-columns:28px 80px minmax(0,1fr) 20px;gap:16px}
.section-content .case-type{display:none}
.section-content .faculty-grid,.section-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.section-content .text-link{white-space:normal;font-size:15px}
@media(max-width:1280px){
  .desktop-nav{display:none}.menu-toggle{display:flex}.header-contact{display:inline-flex}
  .mobile-nav:not([hidden]){display:grid;grid-template-columns:1fr;gap:0;padding:12px 32px 20px;border-top:1px solid var(--line);box-shadow:0 15px 20px #0000000c;max-height:calc(100dvh - 125px);overflow:auto;overscroll-behavior:contain}
  .mobile-nav a[data-mobile-main],.mobile-directory-link{display:flex;align-items:center;min-height:48px;padding:12px;font-size:18px}
  .mobile-nav a:hover{color:var(--red);background:var(--soft)}
  .mobile-nav-cluster{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:start}
  .mobile-disclosure{width:48px;height:54px;display:grid;place-items:center}
  .mobile-disclosure svg{width:18px;height:18px;transition:transform .2s}
  .mobile-subnav{grid-column:1/-1;padding:8px 16px 18px;background:var(--soft)}
  .mobile-subnav .nav-link-group+.nav-link-group{margin-top:18px}
  .mobile-subnav .nav-group-title{font-size:17px;padding:12px 0}
  .mobile-subnav .nav-child-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}
  .mobile-subnav .nav-child-links a{font-size:16px;padding:11px 8px;min-height:48px}
}
@media(max-width:900px){
  .directory-layout{grid-template-columns:1fr;gap:28px}
  .section-sidebar{flex-direction:row;flex-wrap:wrap;gap:5px;border-right:0;border-bottom:1px solid var(--line);padding:0 0 20px}
  .section-sidebar h2{width:100%;margin-bottom:10px}
  .section-sidebar .sidebar-all{border:0;margin:0;padding:11px 12px}
  .section-sidebar a{font-size:15px}
}
@media(max-width:700px){
  .header-contact{display:none}
  .mobile-nav:not([hidden]){padding:10px 20px 16px;max-height:calc(100dvh - 103px)}
  .section-trail>.container{gap:5px 20px}.section-trail a{font-size:15px}
  .directory-links{grid-template-columns:1fr}.directory-group-heading h2{font-size:21px}
  .section-content .faculty-grid,.section-course-grid{grid-template-columns:1fr}
  .section-content .case-row{grid-template-columns:25px minmax(0,1fr) 20px;gap:12px}
  .migration-note{padding:16px}.mobile-subnav .nav-child-links{grid-template-columns:1fr}
}
.header-contact{font-size:14px}
.button-primary{box-shadow:0 4px 12px #ac302d12}
.service-secondary{margin-left:20px;min-height:44px;color:var(--green-ink)}
.service-secondary:hover{color:var(--red)}
.service-row .icon-button{width:38px;height:38px;background:#ffffffb8;border-color:#dae2d8;transition:background-color .2s,color .2s,transform .2s}
.service-row .icon-button:hover,.service-row .icon-button:focus-visible{background:var(--red);border-color:var(--red);color:white;transform:translateY(-2px)}
.course-bottom .arrow-circle{width:34px;height:34px;padding:8px;box-sizing:border-box;border-radius:50%;background:var(--soft);transition:background-color .2s,color .2s,transform .2s}
.course-card:hover .arrow-circle,.course-card:focus-visible .arrow-circle{background:var(--red);color:white;transform:rotate(5deg)}
.course-body>p{margin-bottom:20px}
.course-card:focus-visible{box-shadow:var(--shadow)}
.stats-bar{border-bottom:1px solid var(--line);background:#fafbf8}
.stats-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:24px}
.stat-item{display:flex;align-items:center;gap:20px;padding-inline:25px;min-width:0}
.stat-item>div{min-width:0;max-width:100%;overflow-wrap:anywhere}
.stat-item:first-child{padding-left:0}
.stat-item+.stat-item{border-left:1px solid var(--line)}
.stat-value{font-size:24px;line-height:1.2;font-weight:500;color:#92998f;white-space:nowrap;flex-shrink:0}
.stat-item h2{font-size:12px;font-weight:500}
.stat-item p{font-size:10px;color:var(--muted);margin-top:3px}
.portrait-placeholder>img{width:100%;height:100%;object-position:center top}
.faculty-preview:after{content:"";position:absolute;inset:0;z-index:1}
.faculty-item:focus-within{outline:2px solid var(--red);outline-offset:4px}
.faculty-preview:focus-visible{outline:none}
.faculty-item:hover h3,.faculty-item:focus-within h3{color:var(--red)}
.case-row{transition:background-color .2s}
.case-row:hover{background:#f6f8f3}
.slot-note{font-size:14px!important;line-height:1.8;color:var(--muted);margin-top:9px}
.detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 0;padding:0;list-style:none}
.detail-tags li{font-size:12px;padding:5px 10px;background:var(--green);color:var(--green-ink);border-radius:2px;overflow-wrap:anywhere}
.expert-courses{font-size:13px;color:#5e685d;padding-left:20px;line-height:2.1}
.expert-portrait{width:100px;height:134px;margin-bottom:20px}
.expert-portrait+p{margin-bottom:20px}
.detail-aside>.button{margin-top:16px}
.source-link{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:var(--green-ink);text-decoration:underline;text-underline-offset:4px;margin-top:13px;max-width:100%}
.source-link svg{width:13px;height:13px}
.source-link:hover{color:var(--red)}
.course-facts{margin:20px 0 14px;font-size:12px}
.course-facts>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.course-facts dt{color:var(--muted)}
.course-facts dd{margin:0}
.detail-subheading{font-size:14px;font-weight:500;margin-top:23px}
.faq-section{border-top:1px solid var(--line)}
.faq-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:55px}
.faq-layout h2{font-size:27px;font-weight:500}
.faq-list{border-top:1px solid var(--line)}
.faq-list .outline-item{padding:21px 0}
.faq-list summary{font-size:14px;gap:20px;line-height:1.8}
.outline-item summary svg{flex:none;width:18px;height:18px}
.faq-list p{color:var(--muted);font-size:13px;line-height:1.95}
.case-row>div,.detail-aside dd{min-width:0;overflow-wrap:anywhere}
.editorial-copy .info-list>div>span{max-width:72%;text-align:right}
@media(max-width:700px){.faq-layout{grid-template-columns:1fr;gap:24px}.faq-layout h2{font-size:24px}.faq-list summary{font-size:13px}.faq-list p{font-size:12px}}
.detail-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(610px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:0;overflow:hidden;background:white;box-shadow:-18px 0 75px #14221826}
.detail-drawer[open]{display:flex;flex-direction:column;animation:drawer-enter .24s cubic-bezier(.2,.8,.2,1)}
.detail-drawer::backdrop{background:#18241d60;backdrop-filter:blur(3px)}
.drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px 30px 22px;border-bottom:1px solid var(--line);flex-shrink:0}
.drawer-header>div{min-width:0}
.drawer-kicker{display:block;font-size:10px;color:var(--red);margin-bottom:10px}
.drawer-header h2{font-size:23px;line-height:1.5;overflow-wrap:anywhere;text-wrap:balance}
.close-drawer{background:var(--soft);border:1px solid var(--line)}
.drawer-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 30px 34px}
.drawer-status{font-size:11px;color:var(--green-ink);margin-bottom:18px;line-height:1.8}
.drawer-visual{aspect-ratio:1.7;margin-bottom:0}
.drawer-body .detail-section{padding-block:22px}
.drawer-body .detail-section h2{font-size:17px;margin-bottom:12px}
.drawer-body .detail-section p{font-size:12px;line-height:1.95}
.drawer-body .outline-item{padding-block:15px}
.drawer-body .outline-item summary{font-size:12px;gap:15px}
.drawer-profile{display:flex;align-items:center;gap:20px}
.drawer-profile h3{font-size:23px;font-weight:500}
.drawer-profile p{font-size:12px;color:var(--muted);margin-top:8px}
.drawer-footer{display:flex;gap:12px;padding:18px 30px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fafbf8;flex-shrink:0}
.drawer-footer .button{flex:1;font-size:12px;gap:12px;padding-inline:15px}
.drawer-footer svg{width:17px}
@keyframes drawer-enter{from{transform:translateX(100%);opacity:.8}to{transform:translateX(0);opacity:1}}
@media(hover:hover){.faculty-item:hover{transform:translateY(-3px);box-shadow:0 10px 24px #2431240a;background:#fff}.course-card:hover{border-color:#cbd3c7}}
@media(max-width:960px){.stat-item{gap:13px;padding-inline:20px}.stat-value{font-size:21px}.service-secondary{margin-left:0;margin-top:10px;display:flex;width:max-content}}
@media(max-width:700px){
  .tabs{flex-wrap:wrap;overflow:visible}
  .stats-inner{padding-block:17px}
  .stat-item{flex-direction:column;gap:8px;align-items:center;padding-inline:9px;text-align:center}
  .stat-item:first-child{padding-left:0}
  .stat-value{font-size:20px}
  .stat-item h2{font-size:10px}
  .stat-item p{font-size:9px;line-height:1.65}
  .service-secondary{margin-left:18px;display:inline-flex;margin-top:0;width:auto;font-size:11px}
  .course-body h3{min-height:0}
  .course-body>p{margin-bottom:0}
  .course-bottom{margin-top:19px}
  .detail-drawer{width:100%;max-width:100%;height:100dvh}
  .drawer-header{padding:20px;gap:15px}
  .drawer-header h2{font-size:20px}
  .drawer-body{padding:18px 20px 26px}
  .drawer-footer{gap:10px;padding:15px 20px calc(15px + env(safe-area-inset-bottom))}
  .drawer-footer .button{font-size:11px;padding-inline:10px;gap:8px;min-height:44px}
  .drawer-footer svg{width:15px}
  .hero-photo{object-position:52% 65%}
}
@media(max-width:370px){.service-secondary{display:flex;margin-left:0;margin-top:12px}.drawer-header{padding:16px}.drawer-body{padding-inline:16px}.drawer-footer{padding-inline:16px}.drawer-header h2{font-size:18px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header{background:#fff}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.archive-reading{max-width:940px}
.button,.tab,.course-format,.nav-panel,.detail-aside,.search-field,.outline-item,.arrow-circle,.service-row .icon-button,input,select,textarea{border-radius:0!important}
.course-body>p,.service-intro p,.service-row p,.section-head p,.section-bottom,.case-row small,.footer-tagline,.filter-label,.text-link,.tab,.course-bottom,.course-category,.course-format,.button-small{font-size:15px}
.course-body h3,.case-row h3{font-size:20px;line-height:1.6}
.preview-bar,.brand-name small,.image-note,.course-image .image-note{font-size:12px}
.course-grid,.process-grid{align-items:stretch}
.course-body{text-align:left}.section-head h2,.page-heading h1,.detail-section h2{word-break:normal;overflow-wrap:anywhere}
.contact-copy,.contact-follow{min-width:0}.contact-follow>h2,.contact-copy>h2{font-size:24px;margin-bottom:24px}
.contact-follow .legacy-body img{max-height:none}
.collection-nav{display:flex;flex-wrap:wrap;gap:12px 28px;padding-block:22px;border-bottom:1px solid var(--line)}
.collection-nav a{display:flex;align-items:center;gap:10px;min-height:44px;font-size:17px;line-height:1.6}
.collection-nav a[aria-current="page"]{color:var(--red);text-decoration:underline;text-underline-offset:7px}
.collection-nav span{font-size:14px;color:var(--muted)}
.collection-nav svg{width:17px;height:17px;flex-shrink:0}
.faculty-grid:has(>.faculty-item:only-child){grid-template-columns:minmax(0,650px)}
.faculty-directory .faculty-grid{margin-top:24px}
.faculty-directory{padding-top:32px}
.faculty-directory .tabs{margin-bottom:16px}
.faculty-tabs{flex-wrap:wrap;overflow:visible;gap:8px}
.faculty-tabs .tab[aria-current="page"]{background:var(--ink);color:white}
.faculty-search{display:flex;gap:10px;max-width:520px;margin-top:20px}
.faculty-search .search-field{flex:1;min-width:0}.faculty-search>.icon-button{width:46px;height:46px;border:1px solid var(--line)}
.faculty-item .faculty-info{min-width:0}.faculty-info p{overflow-wrap:anywhere}
.faculty-source{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.faculty-source>h3{font-size:18px;margin-bottom:16px}
.faculty-source-body img{max-width:180px;max-height:220px;margin:16px 0;object-fit:contain}
.archive-wide{max-width:1080px}
.archive-title{font-size:34px!important;line-height:1.5!important;max-width:1080px;overflow-wrap:anywhere}
.archive-notice{padding:14px 0 18px;margin-bottom:24px;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px}
.page-heading .archive-attribution{margin-top:10px;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.archive-search{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-block:10px 22px;border-bottom:1px solid var(--line)}
.archive-search .search-field{flex:1;min-width:200px}
.archive-search input{font-size:16px}
.archive-search select{max-width:100%;min-height:46px;border:1px solid var(--line);background:white;padding:8px 12px;font-size:15px;color:var(--ink)}
.archive-search>.icon-button{background:var(--red);color:white;width:46px;height:46px}
.archive-count{font-size:14px;color:var(--muted);padding-top:17px}
.archive-row{display:flex;align-items:center;gap:24px;justify-content:space-between;border-bottom:1px solid var(--line);padding:23px 0;min-width:0}
.archive-row>div{min-width:0}
.archive-row>div{flex:1}
.archive-thumbnail{width:112px;height:84px;flex:none;object-fit:contain;background:#f7f8f6}
.publication-overview{display:flex;align-items:flex-start;gap:36px;border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:30px}
.publication-overview>img{width:220px;height:auto;max-height:340px;object-fit:contain}
.publication-overview dl{flex:1;margin:0;min-width:0}
.publication-overview dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.publication-overview dt{color:var(--muted)}.publication-overview dd{margin:0;overflow-wrap:anywhere}
.legacy-body video{display:block;max-width:100%;max-height:75vh;background:#171918;margin:24px auto}
.legacy-body audio{display:block;width:100%;margin:24px 0}
.archive-meta{display:flex;flex-wrap:wrap;gap:6px 20px;color:var(--muted);font-size:13px;margin-bottom:8px}
.archive-meta>span{color:var(--green-ink)}
.archive-row h3{font-size:20px;line-height:1.65;overflow-wrap:anywhere}
.archive-row p{font-size:15px;color:var(--muted);margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.archive-row:hover h3{color:var(--red)}
.archive-row>svg{width:19px;height:19px}
.archive-pagination{display:flex;justify-content:center;align-items:center;gap:24px;padding-top:28px;font-size:15px}
.archive-pagination .icon-button{border:1px solid var(--line);width:44px;height:44px}
.is-disabled{opacity:.3;pointer-events:none}
.legacy-body{font-size:17px;line-height:2;overflow-wrap:anywhere;min-width:0}
.legacy-body p{margin:14px 0;line-height:2!important;font-size:17px!important}
.legacy-body h2{font-size:25px;margin:30px 0 16px}
.legacy-body h3,.legacy-body h4{font-size:21px;margin:24px 0 14px}
.legacy-body h5,.legacy-body h6{font-size:18px;margin:20px 0 12px}
.legacy-body dl{margin-block:20px}.legacy-body dt{font-weight:700;margin-top:18px}.legacy-body dd{margin:6px 0 14px}
.legacy-body ul,.legacy-body ol{padding-left:25px}
.legacy-body li{margin-block:6px}
.legacy-body img{max-width:100%;width:auto;height:auto;max-height:800px;object-fit:contain;margin:22px auto}
.legacy-body br.legacy-extra-break{display:none}
.legacy-body img.legacy-qr{display:block;max-width:min(180px,100%);max-height:none;margin:16px 0 24px}
.legacy-qr-link{display:block;width:min(180px,100%);max-width:100%;cursor:zoom-in}
.legacy-qr-link:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.legacy-large-image{max-height:720px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);margin:22px 0;background:#fff}
.legacy-large-image img{max-height:none;margin:0 auto}
.legacy-body a{color:var(--green-ink);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legacy-body a:hover{color:var(--red)}
.legacy-document .document-open{display:inline-flex;align-items:center;gap:10px;min-height:48px;max-width:100%;padding:10px 18px;background:var(--red);color:white;text-decoration:none;font-size:16px;line-height:1.6}
.legacy-document .document-open:hover{background:var(--ink);color:white}
.legacy-document .document-open svg{width:20px;height:20px;flex-shrink:0}
.legacy-document .document-preview{display:block;width:min(100%,480px);margin:30px auto 0;border:1px solid var(--line)}
.legacy-document .document-preview img{display:block;width:100%;height:auto;max-height:none;margin:0}
.archive-reading:has(.legacy-document)>.archive-notice{font-size:16px;line-height:1.8}
.word-body p:empty{display:none}
.legacy-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-block:24px}
.legacy-gallery>div{min-width:0}.legacy-gallery img{max-width:100%;height:auto}.legacy-gallery h2,.legacy-gallery h3{font-size:20px;line-height:1.6}
.legacy-body table{border-collapse:collapse;width:100%;table-layout:fixed;line-height:1.8}
.legacy-body td,.legacy-body th{border:1px solid var(--line);padding:12px;vertical-align:top;overflow-wrap:anywhere}
.legacy-body table p{font-size:16px!important}
.legacy-body table img{max-width:100%;margin:10px auto}
.publisher-body img.publisher-decoration{width:52px;max-width:52px;margin:10px 0}
.publisher-image-link{display:block;position:relative;width:fit-content;max-width:100%;margin-inline:auto;cursor:zoom-in}
.publisher-image-action{position:absolute;right:8px;bottom:30px;display:grid;place-items:center;width:34px;height:34px;background:var(--paper);border:1px solid var(--line);color:var(--ink);pointer-events:none}
.publisher-image-action svg{width:18px;height:18px}
.publisher-image-link:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.legacy-body table.publisher-comparison{min-width:0}
.legacy-body table.legacy-single-column{min-width:0}
.publisher-comparison td:first-child,.publisher-comparison th:first-child{width:28%}
.legacy-table-scroll{max-width:100%;overflow:auto;margin-block:20px}
.legacy-body pre{white-space:pre-wrap;font-size:15px}
.legacy-body blockquote{border-left:3px solid var(--green-ink);margin:20px 0;padding:5px 20px;background:var(--soft)}
/* The old training page used nested quotations for indentation, not quoted copy. */
.legacy-body[data-archive-body="category-356"] blockquote{border:0;margin:0;padding:0;background:transparent}
.legacy-body[data-archive-body="category-356"]>div>blockquote:has(strong){margin-block:20px}
.legacy-body[data-archive-body="category-356"] blockquote:not(:has(blockquote)):has(strong){margin-block:10px}
.legacy-body[data-archive-body="category-356"] br+br{display:none}
.consulting-module{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}
.consulting-module:first-child{padding-top:8px}
.consulting-module-copy{min-width:0}
.legacy-body .consulting-module h3{font-size:20px;line-height:1.65;margin:0 0 14px}
.legacy-body .consulting-module h3 a{display:flex;justify-content:space-between;align-items:baseline;gap:16px;color:var(--ink);text-decoration:none}
.legacy-body .consulting-module h3 a:hover{color:var(--red)}
.consulting-module h3 svg{width:19px;height:19px;flex-shrink:0}
.legacy-body .consulting-module-media{display:block;align-self:start;margin-top:4px;text-decoration:none}
.legacy-body .consulting-module img.archive-thumbnail{display:block;width:112px;height:84px;max-height:none;object-fit:contain;margin:0;background:var(--soft)}
.consulting-service-icon{display:grid;place-items:center;flex:0 0 112px;width:112px;height:84px;background:var(--soft);color:var(--green-ink)}
.consulting-service-icon svg{width:32px;height:32px}
.legacy-body .consulting-module ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 32px;padding-left:20px;margin:0}
.legacy-body .consulting-module li{font-size:17px;line-height:1.9;margin:0;overflow-wrap:anywhere}
.consulting-module-list{margin-bottom:36px}
.consulting-module a:focus-visible{outline:2px solid var(--red);outline-offset:5px}
@media(max-width:700px){
 .consulting-module{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:24px 0}
 .legacy-body .consulting-module img.archive-thumbnail,.consulting-service-icon{width:72px;height:72px;flex-basis:72px}
 .legacy-body .consulting-module h3{font-size:18px;margin-bottom:12px}
 .legacy-body .consulting-module ul{grid-template-columns:1fr;gap:8px;padding-left:18px}
 .legacy-body .consulting-module li{font-size:16px}
}
.legacy-missing{display:block;padding:18px;border:1px dashed #c8cfc5;color:var(--muted);font-size:14px;text-align:center;margin:16px 0}
.legacy-unavailable{color:var(--muted)!important;text-decoration:none!important}
.legacy-media-note{padding:16px 20px;background:var(--soft);border-left:3px solid var(--green-ink)}
.archive-related{display:flex;flex-wrap:wrap;gap:12px 30px;margin-block:25px;padding-block:20px;border-block:1px solid var(--line)}
.archive-related a{display:flex;gap:15px;align-items:center;min-height:44px;font-size:17px;color:var(--green-ink)}
.archive-related-section{margin-top:45px;border-top:1px solid var(--ink);padding-top:22px}
.archive-related-section>h2{font-size:23px}
.journal-series-heading{font-size:23px;margin:36px 0 24px}
.journal-grid h3{font-size:19px;line-height:1.5}
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.journal-grid article{border-bottom:1px solid var(--line);padding-bottom:22px}
.journal-grid img{height:220px;width:auto;max-width:100%;object-fit:contain;margin-bottom:16px}
.journal-grid h2{font-size:20px}.journal-grid p{font-size:15px;color:var(--muted);margin-top:10px}
.detail-section p,.outline-item p,.faq-list p,.drawer-body .detail-section p,.process-step p,.editorial-copy>p,.contact-copy>p{font-size:16px;line-height:1.9}
.outline-item summary,.drawer-body .outline-item summary,.faq-list summary{font-size:17px;line-height:1.7}
.faculty-info p,.contact-band p,.info-list>div>span,.course-facts,.detail-tags li,.search-field input,.filter-label,.empty-state p{font-size:15px}
.breadcrumb,.footer-links,.footer-links h3,.footer-bottom,.source-link,.drawer-status,.drawer-profile p,.catalog-tools>span,.detail-aside dl,.detail-aside p,.search-result small{font-size:14px}
.drawer-footer .button{font-size:15px;white-space:normal;min-height:48px}
.service-link small{font-size:13px;line-height:1.7}
.stat-item h2{font-size:14px}.stat-item p{font-size:12px}
dialog,.detail-tags li,.status-label{border-radius:0}
.legacy-body [id]{scroll-margin-top:120px}
@media(max-width:700px){
 .section-head{flex-wrap:wrap;align-items:flex-start}.section-head>div{flex:1 1 100%;min-width:0}.section-head>.text-link{margin-left:auto}
 .legacy-gallery{grid-template-columns:1fr;gap:24px}
 .archive-thumbnail{width:72px;height:72px}.publication-overview{gap:20px;flex-wrap:wrap}.publication-overview>img{width:150px}.publication-overview dl{flex-basis:100%}
 .archive-title{font-size:26px!important}.archive-search{gap:10px}.archive-search .search-field{flex-basis:calc(100% - 60px);min-width:0}.archive-search select{flex:1;min-width:0;order:2}.archive-search>.icon-button{order:1}
 .archive-row{gap:12px;padding:20px 0}.archive-row h3{font-size:18px}.archive-row p{font-size:14px}.archive-meta{font-size:12px}
 .legacy-body,.legacy-body p{font-size:16px!important}.legacy-body h2{font-size:23px}.legacy-body h3,.legacy-body h4{font-size:20px}.legacy-body td,.legacy-body th{padding:8px}.legacy-body table{min-width:max(520px,var(--legacy-table-min-width,520px))}
 .journal-grid{grid-template-columns:1fr}.archive-notice{font-size:13px}.archive-related a{font-size:16px}
 .stat-item h2{font-size:12px}.stat-item p{font-size:11px}
 .service-links{grid-template-columns:repeat(3,minmax(0,1fr))}
 .service-link,.service-link+.service-link{flex-direction:column;align-items:center;text-align:center;gap:9px;padding:20px 8px;min-height:146px}
 .service-link>span{flex:none;width:100%;min-width:0}
 .service-link>.lucide{width:24px;height:24px;margin:0}
 .service-link small{font-size:13px;line-height:1.7;max-width:none;text-wrap:pretty}.service-link b{font-size:15px}
 .drawer-footer .button{font-size:14px}.course-facts{font-size:15px}.footer-bottom{font-size:12px}.breadcrumb{font-size:13px}
}
