/* Audience: art/design faculty and teaching-space decision makers.
   Brand: precise educational technology, creative confidence, Klein blue.
   User-requested standards take precedence over Taste house rules. */
:root{
 --space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;
 --space-6:48px;--space-8:64px;--space-10:80px;--space-12:96px;--space-15:120px;
 --ink:#1a1a1a;--muted:#555b66;--purple:#002fa7;--brand:#002fa7;
 --font-ui:"PingFang SC",Arial,sans-serif;
 --ease:cubic-bezier(0.16,1,0.3,1);
 --ambient:0 4px 6px -1px rgba(25,39,64,.05),0 2px 4px -1px rgba(25,39,64,.03);
 --ambient-raised:0 8px 16px -8px rgba(30,58,100,.10),0 4px 8px -4px rgba(30,58,100,.06);
 --gutter:max(24px,calc((100vw - 1280px)/2));
}
*,*::before,*::after{box-shadow:none}
body,button,input,textarea,select{font-family:var(--font-ui);font-weight:400}
body{color:var(--ink);font-size:16px;line-height:1.75}
h1,h2,h3,h4,h5,h6,p,figure{margin:0}
h1,h2{font-weight:750;letter-spacing:-.02em;line-height:1.2}
h3{font-size:24px;font-weight:650;line-height:1.4;letter-spacing:-.02em}
p{font-size:16px;font-weight:400;line-height:1.75;color:var(--muted)}
header{height:88px;padding-inline:var(--gutter)}
.brand{gap:16px}.brand img{width:104px}.brand>span{padding-left:16px;font-size:16px;letter-spacing:0}.brand small{margin-top:8px;font-size:12px;letter-spacing:0}
nav{gap:32px;font-size:16px}.nav-cta{padding:16px 24px}
main>.section,main>.hero{padding:96px var(--gutter)}
main>.hero{min-height:664px;padding-top:120px;padding-bottom:120px}
.hero-copy{padding:0;max-width:640px}
.hero h1,.hero h1 em{font-size:clamp(40px,4.5vw,64px);font-weight:750;line-height:1.25;letter-spacing:-.02em}
.hero .intro{margin-top:24px;font-size:16px;line-height:1.75;color:#e6edff;max-width:480px}
.actions{gap:24px;margin-top:32px}
.button{gap:32px;padding:16px 24px;font-size:16px;line-height:1.5}
.section-top,.solutions .section-top,.platform .section-top{margin:0 0 48px;gap:32px}
.solutions h2,.cases h2,.about h2,.contact h2{font-size:clamp(32px,3vw,48px);font-weight:750;line-height:1.3;letter-spacing:-.02em}
.solution-grid{gap:0}
.solution-grid article,.solution-grid article:first-child,.solution-grid article:last-child{padding:32px}
.solution-grid h3{margin:0 0 16px;font-size:24px}
.solution-grid p{font-size:16px;line-height:1.75;max-width:none;color:#555b66}
.solution-grid .featured p{color:#e0eaff}
.number,.modules article>span{display:none}
.platform{background:#101929;color:#f2f6ff;position:relative}
.platform::before{display:block;content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);width:auto;height:2px;background:linear-gradient(90deg,#002fa7,#258aff,#46d9eb);opacity:.9}
.platform .section-top .platform-display{font-size:clamp(32px,5.1vw,72px);font-weight:750;letter-spacing:-.02em;line-height:1.15}
.platform-display strong{font-weight:750;color:#8cceff}
.platform .section-top>div:last-child{max-width:640px;margin-top:24px}
.platform .section-top>div>p:not(.eyebrow){font-size:16px;line-height:1.75;color:#c2ccdd}
.discipline-tabs{gap:32px;margin-bottom:24px;border-color:#ffffff20}
.discipline-tabs button{font-family:var(--font-ui);font-size:16px;font-weight:400;padding:16px 0;color:#afbbce}
.discipline-tabs button[aria-selected="true"]{color:#fff;border-color:#55bbff;font-weight:650}
.discipline-tabs button:focus-visible{outline-color:#8bdaff}
.discipline-showcase [role="tabpanel"] img{box-shadow:var(--ambient);border-radius:0}
.discipline-caption{padding:24px 0 0}
.discipline-caption p{font-size:16px;line-height:1.75;color:#c2ccdd;max-width:800px}
.generation-note{font-size:14px;line-height:1.75;margin:16px 0 48px;color:#a2aec2}
.modules{gap:24px 32px;grid-template-columns:repeat(3,minmax(0,1fr))}
.modules article,.modules article:first-child{gap:0;padding:24px 0;border-color:#ffffff20}
.modules h3{font-size:24px;margin-bottom:8px;color:#f2f6ff}
.platform .modules p{font-size:16px;line-height:1.75;color:#b9c5d8}
.platform-note{font-size:14px;line-height:1.75;color:#a2aec2;margin-top:24px}
.cases .section-top>p{font-size:16px;line-height:1.75;color:#555b66}
.case-grid{gap:32px;grid-template-columns:1fr 1fr}
.case-image{height:320px;padding:24px}.case-image>span{display:none}
.case-meta{font-size:14px;line-height:1.75;margin:24px 0 8px;color:#46536b}
.case-grid h3{font-size:24px;margin-bottom:8px}
.case-grid p{font-size:16px;line-height:1.75;color:#555b66}
.case-note{margin-top:24px;font-size:14px;line-height:1.75;color:#555b66}
.about-grid{gap:64px;grid-template-columns:.9fr 1.1fr}
.about-grid .about-lead{font-size:24px;font-weight:650;line-height:1.6;margin:0 0 24px;color:#1a1a1a}
.about-grid>div>p{font-size:16px;font-weight:400;line-height:1.75;margin:0;color:#555b66}
.about-grid>div>p+p{margin-top:24px}
.contact{gap:48px}.contact h2{font-size:clamp(32px,2.7vw,40px);color:#fff}
.contact-copy>p{font-size:16px;line-height:1.75;color:#fff0ec;margin-top:24px}
.appointment-button{padding:16px 32px;font-size:16px;line-height:1.5}
footer.site-footer{padding:80px var(--gutter) 32px}
.footer-main{gap:64px;padding-bottom:64px}.footer-identity{gap:24px}.footer-identity>img{width:104px}
.footer-identity small{font-size:16px;line-height:1.75;margin:0;color:#e1e3e9}
.footer-navigation{gap:64px;grid-template-columns:repeat(2,minmax(128px,1fr))}
.footer-column{gap:16px}.footer-column h3{font-size:16px;letter-spacing:0;line-height:1.5;margin:0 0 8px}
.footer-column a{font-size:16px;line-height:1.5;color:#b5bac4}
footer.site-footer>.footer-bottom{gap:24px;padding-top:24px}.footer-bottom small,.footer-bottom-links{font-size:14px;line-height:1.75;color:#a9afba}.footer-bottom-links{gap:32px}
.appointment-dialog{padding:48px;border-radius:8px;box-shadow:var(--ambient-raised)}
.appointment-dialog h2{font-size:32px;font-weight:750;letter-spacing:-.02em}
.appointment-dialog p,.appointment-dialog .appointment-note{font-size:16px;line-height:1.75;margin-top:16px}
.dialog-close{top:8px;right:16px}.dialog-confirm{margin-top:24px;padding:16px 24px;font-size:16px}
a,button,[role="tab"]{transition:color .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),opacity .4s var(--ease)}

a:focus-visible,button:focus-visible{outline:2px solid #4677cf;outline-offset:4px}
.button,.nav-cta,.appointment-button,.booking-open,.solution-cta{transition:color .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease)}
.button:hover,.nav-cta:hover,.appointment-button:hover,.booking-open:hover,.solution-cta:hover{box-shadow:var(--ambient-raised)}
@media(max-width:1000px){
 nav{gap:16px;font-size:14px}.brand>span{display:none}.modules{grid-template-columns:1fr 1fr}.about-grid{gap:32px}.contact{gap:32px}.contact h2{font-size:32px}.footer-main{gap:32px}.footer-navigation{gap:32px}
}
@media(max-width:700px){
 :root{--gutter:24px}header{height:80px}.brand img{width:88px}.brand>span{display:block;font-size:16px}.brand small{font-size:12px}.menu{font-size:24px;padding:8px}
 nav{top:80px;padding:24px;gap:16px;font-size:16px}
 main>.section,main>.hero{padding:80px 24px}
 main>.hero{min-height:720px}.hero h1,.hero h1 em{font-size:clamp(28px,7.5vw,40px);line-height:1.3;letter-spacing:-.02em}
 .hero .intro{font-size:16px;margin-top:24px}.actions{margin-top:32px}.button{font-size:16px;padding:16px 24px}
 .section-top,.solutions .section-top,.platform .section-top{margin-bottom:32px}
 .solutions h2,.cases h2,.about h2{font-size:clamp(24px,6.4vw,32px)}
 .solution-grid article,.solution-grid article:first-child,.solution-grid article:last-child{padding:24px}
 .platform .section-top .platform-display{font-size:clamp(24px,6.2vw,40px);letter-spacing:-.02em}
 .platform .section-top>div:last-child{margin-top:24px}.discipline-tabs{gap:16px;justify-content:space-between}.discipline-tabs button{font-size:14px;padding:16px 0}
 .discipline-caption{padding-top:16px}.generation-note{margin:16px 0 32px}.modules{grid-template-columns:1fr;gap:0}.modules article,.modules article:first-child{padding:24px 0}.modules h3{font-size:24px}
 .case-image{height:256px}.case-grid{gap:32px}.about-grid{gap:32px;grid-template-columns:1fr}
 .about-grid .about-lead{font-size:24px}.about-grid>div>p{font-size:16px;line-height:1.75}
 .contact{display:block}.contact h2{font-size:clamp(24px,6.3vw,32px)}.contact-copy>p{font-size:16px;margin-top:24px}.appointment-button{margin-top:32px}
 footer.site-footer{padding:80px 24px 32px}.footer-main{padding-bottom:32px}.footer-navigation{margin-top:32px;gap:32px}.footer-identity{gap:16px}.footer-identity>img{width:88px}.footer-identity small{font-size:14px}.footer-column{gap:16px}.footer-column a{font-size:16px}.footer-bottom-links{margin-top:16px}
 .appointment-dialog{padding:32px 24px}.appointment-dialog h2{font-size:24px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button,[role="tab"]{transition:none!important;transform:none!important}}

/* Verified client photography, grouped by supplied categories. */
.case-category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:40px}.case-category-tabs button{appearance:none;border:0;background:#f0f2f5;color:#555b66;padding:16px 24px;font:inherit;font-size:16px;cursor:pointer}.case-category-tabs button[aria-selected="true"]{background:#002fa7;color:#fff}.real-case-panel[hidden]{display:none!important}.real-case-panel{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:48px;align-items:center}.case-main-link{display:block;overflow:hidden;background:#edf0f3}.case-main-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.case-photo-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:16px}.case-photo-thumb{appearance:none;border:0;background:#eef0f4;padding:0;cursor:pointer;opacity:.65;overflow:hidden;outline-offset:4px}.case-photo-thumb[aria-pressed="true"]{opacity:1;outline:2px solid #002fa7}.case-photo-thumb img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.case-photo-caption{margin-top:16px;font-size:14px;color:#555b66}.real-case-copy h3{font-size:clamp(24px,2.2vw,32px);font-weight:750;letter-spacing:-.02em;line-height:1.4;margin-bottom:24px}.real-case-copy p{font-size:16px;line-height:1.75;color:#555b66}.real-case-copy ul{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;margin:24px 0 32px;padding:0;font-size:14px;color:#555b66}.real-case-copy li{background:#f1f3f7;padding:8px 16px}.case-consult{display:inline-block;padding:16px 24px;background:#002fa7;color:#fff;font-size:16px}.case-category-tabs button:hover,.case-photo-thumb:hover,.case-consult:hover{box-shadow:var(--ambient-raised)}.case-main-link:hover{transform:none}.case-main-link:focus-visible{transform:none}@media(max-width:1000px){.real-case-panel{gap:32px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}@media(max-width:700px){.case-category-tabs{gap:8px;margin-bottom:32px}.case-category-tabs button{padding:8px 16px;font-size:14px;min-height:48px}.real-case-panel{grid-template-columns:1fr;gap:32px}.real-case-copy h3{font-size:24px;margin-bottom:16px}.real-case-copy ul{margin:24px 0}.case-main-photo{aspect-ratio:3/2}}

/* Logo purple CTA and booking landing page */
:root{--logo-purple:#8170c2}.contact{background:var(--logo-purple)}.contact-copy>p{color:#f3efff}.appointment-button{display:inline-block;text-align:center}.registration-page{background:#f5f6f8}.registration-page .back-home{font-size:16px}.registration-section{padding:96px var(--gutter);display:grid;grid-template-columns:1fr 1.7fr;gap:64px;align-items:start}.registration-heading h1{font-size:40px;font-weight:750;letter-spacing:-.02em;line-height:1.3}.registration-heading p{font-size:16px;line-height:1.75;margin-top:24px}.registration-footer{display:block;background:#18191d;color:#b5bac4;font-size:14px;padding:32px var(--gutter)}@media(max-width:900px){.registration-section{grid-template-columns:1fr;gap:40px}.registration-heading h1{font-size:32px}}@media(max-width:700px){.registration-section{padding:80px 24px}.registration-footer{padding:32px 24px}}

/* Standalone homepage workshop, separate from platform functions. */
.zaojing-section{background:#f4f1fa;color:#1a1a1a}.zaojing-heading{display:flex;justify-content:space-between;align-items:baseline;gap:32px;margin-bottom:48px}.zaojing-heading h2{font-size:clamp(32px,3vw,48px);font-weight:750;letter-spacing:-.02em}.zaojing-heading>p{font-size:16px;line-height:1.75;color:#5c566a}.zaojing-feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:center}.zaojing-visual{margin:0;min-width:0}.zaojing-visual img{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:cover}.zaojing-visual figcaption{font-size:14px;color:#6d657b;margin-top:16px}.zaojing-intro h3{font-size:clamp(24px,2.4vw,32px);font-weight:750;letter-spacing:-.02em;line-height:1.4;margin-bottom:24px}.zaojing-intro>p{font-size:16px;line-height:1.75;color:#55515e}.zaojing-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0;padding:0}.zaojing-facts dt{font-size:32px;line-height:1.3;color:#6954a6;font-weight:750;letter-spacing:-.02em}.zaojing-facts dt span{font-size:14px;font-weight:400;margin-left:8px}.zaojing-facts dd{font-size:14px;line-height:1.75;margin:8px 0 0;color:#625a71}.zaojing-cta{display:inline-block;background:#6d59ab;color:#fff;padding:16px 24px;font-size:16px}.zaojing-cta:hover{box-shadow:var(--ambient-raised)}.zaojing-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:48px}.zaojing-process h3{font-size:24px;line-height:1.4;font-weight:650;margin-bottom:16px}.zaojing-process p{font-size:16px;line-height:1.75;color:#625c6d}#zaojing{scroll-margin-top:112px}@media(max-width:1100px){header nav{gap:16px;font-size:14px}.zaojing-feature{gap:32px}.zaojing-process{grid-template-columns:1fr 1fr}}@media(max-width:700px){.zaojing-heading{display:block;margin-bottom:32px}.zaojing-heading>p{margin-top:16px}.zaojing-feature{grid-template-columns:1fr;gap:32px}.zaojing-visual img{aspect-ratio:16/10}.zaojing-intro h3{font-size:24px}.zaojing-facts{gap:8px;margin:24px 0}.zaojing-facts dt{font-size:28px}.zaojing-facts dt span{margin-left:8px;font-size:12px}.zaojing-process{grid-template-columns:1fr;gap:24px;margin-top:40px}.zaojing-process h3{font-size:24px;margin-bottom:8px}}

/* Editorial workshop imagery and progressive disclosure */
.zaojing-section{background:#f4f2f7}.zaojing-feature{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:48px}.zaojing-visual img{aspect-ratio:4/3;object-fit:cover;object-position:center}.zaojing-visual figcaption{font-size:12px;color:#726b7d;margin-top:8px}.zaojing-approach{display:flex;flex-wrap:wrap;gap:8px 16px;margin:24px 0 32px;color:#6954a6;font-size:14px}.zaojing-process{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.zaojing-process h3{font-size:20px;margin:0 0 16px;font-weight:700;letter-spacing:-.02em}.zaojing-process p{font-size:14px;line-height:1.75}.zaojing-process li{padding-top:24px;background:transparent}.zaojing-expandables{margin-top:48px;display:grid;gap:16px}.zaojing-expandables details{background:#fff}.zaojing-expandables summary{display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none;padding:24px 32px;color:#34303e;font-size:18px;font-weight:600;cursor:pointer;transition:color .4s var(--ease),background-color .4s var(--ease)}.zaojing-expandables summary::-webkit-details-marker{display:none}.zaojing-expandables summary>span{font-size:24px;color:#8170c2;font-weight:400;transition:color .4s var(--ease),transform .4s var(--ease)}.zaojing-expandables details[open] summary>span{transform:rotate(45deg)}.zaojing-expandables summary:hover{transform:translateY(-2px);box-shadow:var(--ambient)}.zaojing-expandables summary:focus-visible{outline:2px solid #8170c2;outline-offset:4px}.zaojing-detail-body{padding:0 32px 32px}.zaojing-detail-body p{font-size:16px;line-height:1.75}.zaojing-detail-body dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}.zaojing-detail-body dt{font-weight:600;color:#514464;font-size:16px}.zaojing-detail-body dd{margin:8px 0 0;color:#625c6d;font-size:14px;line-height:1.75}@media(max-width:1000px){.zaojing-process{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.zaojing-feature{gap:32px}}@media(max-width:700px){.zaojing-feature{grid-template-columns:1fr;gap:32px}.zaojing-visual img{aspect-ratio:4/3}.zaojing-approach{margin:24px 0;gap:8px 16px}.zaojing-process{grid-template-columns:1fr;gap:24px;margin-top:40px}.zaojing-process li{padding:0}.zaojing-process h3{font-size:20px;margin-bottom:8px}.zaojing-process p{font-size:16px}.zaojing-expandables{margin-top:40px}.zaojing-expandables summary{padding:24px;font-size:16px}.zaojing-detail-body{padding:0 24px 24px}.zaojing-detail-body dl{grid-template-columns:1fr;gap:24px}}@media(prefers-reduced-motion:reduce){.zaojing-expandables summary,.zaojing-expandables summary>span{transition:none!important}.zaojing-expandables summary:hover{transform:none}}

/* Independent AIGC teaching Agent and learning profile */
.modules article[id]{scroll-margin-top:112px}.modules{align-items:start}.modules article>div{width:100%;min-width:0}.aigc-module-details{margin-top:16px}.aigc-module-details summary{display:inline-block;cursor:pointer;color:#a8d7ff;list-style:none;font-size:14px;line-height:1.75;transition:color .4s var(--ease)}.aigc-module-details summary::-webkit-details-marker{display:none}.aigc-module-details summary::after{content:' ＋'}.aigc-module-details[open] summary::after{content:' −'}.aigc-module-details summary:hover{transform:translateY(-2px)}.aigc-module-details summary:focus-visible{outline:2px solid #8bdaff;outline-offset:4px}.aigc-module-body{padding-top:24px}.aigc-module-body dl{display:grid;gap:24px;margin:0;padding:0}.aigc-module-body dt{font-size:16px;color:#edf3ff;font-weight:600;line-height:1.6}.aigc-module-body dd{margin:8px 0 0;color:#b9c5d8;font-size:14px;line-height:1.75}.platform .aigc-module-body>p{margin-top:24px;font-size:14px;color:#a2aec2}@media(prefers-reduced-motion:reduce){.aigc-module-details summary{transition:none!important;transform:none!important}}

/* Equal-height AIGC overview: descriptions appear on title interaction. */
.modules{align-items:start}.modules article[id]{position:relative;overflow:visible}.aigc-title-wrap{position:relative;width:fit-content;max-width:100%}.modules .aigc-title-wrap h3{margin:0;line-height:1.4}.aigc-title-trigger{appearance:none;border:0;background:none;padding:0;margin:0;color:#f2f6ff;font:650 24px/1.4 var(--font-ui);letter-spacing:-.02em;cursor:pointer;text-align:left}.aigc-title-trigger:hover{color:#a8d7ff}.aigc-title-trigger:focus-visible{outline:2px solid #8bdaff;outline-offset:8px}.aigc-intro-popover{position:absolute;top:calc(100% + 16px);left:0;width:320px;max-width:calc(100vw - 48px);padding:24px;background:#edf2fa;color:#1a1a1a;box-shadow:0 8px 16px -8px rgba(36,55,83,.12),0 4px 8px -4px rgba(36,55,83,.08);z-index:10;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .4s var(--ease),visibility .4s var(--ease),transform .4s var(--ease)}.aigc-intro-popover::before{content:'';position:absolute;left:0;right:0;top:-16px;height:16px}.platform .modules .aigc-intro-popover p{margin:0;color:#394354;font-size:16px;line-height:1.75}.aigc-title-wrap.is-open .aigc-intro-popover{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.modules article:nth-child(3n) .aigc-intro-popover{left:auto;right:0}.modules .aigc-module-details{margin-top:16px}.modules article[id]{padding:24px 0}.aigc-module-details[open]{position:relative;z-index:1}@media(max-width:1000px) and (min-width:701px){.modules article:nth-child(3n) .aigc-intro-popover{left:0;right:auto}.modules article:nth-child(2n) .aigc-intro-popover{left:auto;right:0}}@media(max-width:700px){.aigc-intro-popover{width:320px;max-width:calc(100vw - 48px)}.modules article:nth-child(3n) .aigc-intro-popover{left:0;right:auto}}@media(prefers-reduced-motion:reduce){.aigc-intro-popover{transition:none!important;transform:none!important}}

/* Interactive home: controlled crossfade, scroll orientation, quiet feedback */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
header{position:sticky}.page-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:transparent;pointer-events:none}.page-progress>span{display:block;width:100%;height:100%;background:#8170c2;transform:scaleX(0);transform-origin:left}
header nav a[href^="#"]{position:relative}header nav a[href^="#"]::after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:2px;background:#002fa7;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}header nav a[aria-current="location"]{color:#002fa7}header nav a[aria-current="location"]::after{transform:scaleX(1)}
main>.hero-carousel{background:#002fa7;isolation:isolate;position:relative;overflow:hidden;min-height:704px;padding-top:120px;padding-bottom:120px;touch-action:pan-y}.hero-carousel::before{display:none}.hero-slides{position:absolute;inset:0;z-index:-2;background:#002fa7}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s var(--ease);pointer-events:none}.hero-slide.is-current{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-slides::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,24,86,.4),rgba(0,24,86,.12) 50%,transparent 75%)}.hero-carousel .hero-copy{position:relative;z-index:1}.carousel-bar{position:absolute;bottom:32px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;color:white}.carousel-caption{font-size:14px;color:#e2ecff;line-height:1.75}.carousel-controls{display:flex;align-items:center;gap:16px}.carousel-controls button{appearance:none;color:white;border:0;background:#ffffff14;min-width:48px;height:48px;padding:8px;font:400 16px/1 var(--font-ui);cursor:pointer}.carousel-controls button:hover{background:#ffffff2b;box-shadow:var(--ambient-raised)}.carousel-dots{display:flex;gap:0}.carousel-dots button{width:40px;min-width:40px;background:transparent;position:relative}.carousel-dots button::before{content:'';position:absolute;left:16px;top:20px;width:8px;height:8px;border-radius:50%;background:#ffffff6b;transition:background-color .4s var(--ease),transform .4s var(--ease)}.carousel-dots button[aria-pressed="true"]::before{background:white;transform:scale(1.4)}.carousel-controls .carousel-pause{font-size:12px;min-width:56px}.carousel-controls button:focus-visible{outline-color:#fff}.back-to-top{position:fixed;right:24px;bottom:24px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#002fa7;color:white;font-size:24px;z-index:25;box-shadow:var(--ambient);opacity:0;visibility:hidden;pointer-events:none}.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto}.back-to-top:hover{box-shadow:var(--ambient-raised)}.discipline-showcase [role="tabpanel"]:not([hidden]),.real-case-panel:not([hidden]){animation:panel-entrance .4s var(--ease)}@keyframes panel-entrance{from{opacity:.55;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.zaojing-expandables details[open] .zaojing-detail-body,.aigc-module-details[open] .aigc-module-body{animation:panel-entrance .4s var(--ease)}.case-photo-thumb img{transition:opacity .4s var(--ease),transform .4s var(--ease)}.case-photo-thumb:hover img{transform:scale(1.025)}.case-photo-thumb[aria-pressed="true"]{box-shadow:var(--ambient)}
@media(max-width:1000px){.carousel-controls{gap:8px}.hero-carousel .hero-copy{max-width:560px}}@media(max-width:700px){main>.hero-carousel{min-height:736px;padding-top:80px;padding-bottom:120px}.hero-slide img{object-position:64% center}.hero-slides::after{background:linear-gradient(180deg,rgba(0,28,100,.75),rgba(0,28,100,.45) 45%,rgba(0,28,100,.05) 80%)}.carousel-bar{bottom:24px;left:24px;right:24px;display:block}.carousel-controls{margin-top:16px;justify-content:flex-start}.carousel-caption{font-size:12px}.carousel-controls button{height:48px}.back-to-top{right:16px;bottom:16px}.carousel-dots button{min-width:32px;width:32px}.carousel-dots button::before{left:12px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.carousel-dots button::before,.case-photo-thumb img{transition:none!important}.discipline-showcase [role="tabpanel"],.real-case-panel,.zaojing-expandables details[open] .zaojing-detail-body,.aigc-module-details[open] .aigc-module-body{animation:none!important}.case-photo-thumb:hover img{transform:none}}

/* One shared panel keeps the workshop process focused. */
.zaojing-interactive-process{margin-top:48px}.zaojing-step-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.zaojing-step-tabs button{appearance:none;border:0;background:#eae6f1;color:#5f566f;padding:24px 16px;font:650 18px/1.5 var(--font-ui);letter-spacing:-.02em;cursor:pointer;position:relative}.zaojing-step-tabs button[aria-selected="true"]{background:#8170c2;color:white;box-shadow:var(--ambient)}.zaojing-step-tabs button:hover{background:#dcd5ea;box-shadow:var(--ambient-raised)}.zaojing-step-tabs button[aria-selected="true"]:hover{background:#7562b6}.zaojing-step-tabs button:focus-visible{outline:2px solid #6b56ae;outline-offset:4px}.zaojing-step-panel[hidden]{display:none!important}.zaojing-step-panel{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:176px;background:#fff;padding:32px;margin-top:16px;animation:panel-entrance .4s var(--ease)}.zaojing-step-copy{flex:1;min-width:0}.zaojing-step-copy h3{font-size:24px;font-weight:700;line-height:1.4;letter-spacing:-.02em;margin-bottom:16px}.zaojing-step-copy p{font-size:16px;line-height:1.75;color:#625c6d}.zaojing-step-keywords{font-size:14px;color:#756489;line-height:1.75;max-width:256px;text-align:right}@media(max-width:900px){.zaojing-step-tabs button{font-size:16px;padding:16px 8px}.zaojing-step-panel{gap:24px}.zaojing-step-keywords{max-width:176px}}@media(max-width:700px){.zaojing-interactive-process{margin-top:40px}.zaojing-step-tabs{display:flex;gap:8px;overflow-x:auto;padding:8px 4px 16px;scrollbar-width:thin}.zaojing-step-tabs button{flex:0 0 auto;white-space:nowrap;padding:16px;font-size:16px;min-height:56px}.zaojing-step-panel{display:block;padding:24px;min-height:224px;margin-top:8px}.zaojing-step-copy h3{font-size:24px;margin-bottom:16px}.zaojing-step-keywords{text-align:left;max-width:none;margin-top:24px}}@media(prefers-reduced-motion:reduce){.zaojing-step-panel{animation:none!important}}

/* Solutions: image-led switcher, no generic text-card row. */
.solutions{background:#fff}.solution-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:32px}.solution-tabs button{display:flex;align-items:center;justify-content:space-between;gap:16px;appearance:none;border:0;background:#f1f3f7;color:#545d70;padding:24px;font:650 20px/1.4 var(--font-ui);letter-spacing:-.02em;cursor:pointer;text-align:left;min-height:88px}.solution-tabs button[aria-selected="true"]{background:#002fa7;color:#fff;box-shadow:var(--ambient)}.solution-tabs button:hover{box-shadow:var(--ambient-raised)}.solution-tabs button:focus-visible{outline:2px solid #4677cf;outline-offset:4px}.solution-panel[hidden]{display:none!important}.solution-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:0;background:#f5f6f8;animation:panel-entrance .4s var(--ease);overflow:hidden}.solution-photo{position:relative;margin:0;min-height:560px;overflow:hidden;background:#e9edf3}.solution-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .8s var(--ease)}.solution-panel:hover .solution-photo img{transform:scale(1.02)}.solution-photo figcaption{position:absolute;left:24px;bottom:24px;z-index:1;padding:8px 16px;background:#ffffffed;color:#4e596e;font-size:12px;line-height:1.75}.solution-copy{padding:40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.solution-copy h3{font-size:clamp(24px,2.3vw,32px);font-weight:750;letter-spacing:-.02em;line-height:1.4;margin:0 0 24px}.solution-copy>p{font-size:16px;line-height:1.75;color:#555b66}.solution-copy dl{display:grid;gap:16px;padding:0;margin:24px 0 32px}.solution-copy dl>div{display:grid;grid-template-columns:80px 1fr;gap:16px;align-items:baseline}.solution-copy dt{font-size:14px;font-weight:600;color:#223e77;line-height:1.75}.solution-copy dd{font-size:14px;line-height:1.75;color:#626b7a;margin:0}.solution-cta{display:inline-flex;justify-content:space-between;gap:24px;align-items:center;color:#002fa7;font-size:16px;font-weight:600;padding:8px 0}.solution-cta>span{transition:transform .4s var(--ease),opacity .4s var(--ease)}.solution-cta:hover>span{transform:translate(2px,-2px)}@media(max-width:1000px){.solution-copy{padding:32px}.solution-panel{grid-template-columns:1.1fr 1fr}.solution-copy dl>div{grid-template-columns:1fr;gap:8px}.solution-photo{min-height:600px}.solution-tabs button{font-size:18px;padding:24px 16px}}@media(max-width:700px){.solution-tabs{display:flex;gap:8px;overflow-x:auto;padding:8px 4px 16px;margin-bottom:16px;scrollbar-width:thin}.solution-tabs button{flex:0 0 auto;font-size:16px;min-height:64px;padding:16px;gap:24px;white-space:nowrap}.solution-panel{grid-template-columns:1fr}.solution-photo{min-height:0;height:auto;aspect-ratio:4/3}.solution-photo figcaption{left:16px;bottom:16px;padding:8px;font-size:12px}.solution-copy{padding:24px}.solution-copy h3{font-size:24px;margin-bottom:16px}.solution-copy dl{margin:24px 0;gap:16px}.solution-copy dl>div{grid-template-columns:80px 1fr;gap:16px}}@media(prefers-reduced-motion:reduce){.solution-panel{animation:none!important}.solution-photo img,.solution-cta>span{transition:none!important;transform:none!important}}

/* Natural-color cinematic imagery inspired by the supplied references. */
main>.hero-carousel,.hero-slides{background:#161d1b}.hero-slides::after{background:linear-gradient(90deg,rgba(10,15,15,.72) 0%,rgba(10,15,15,.48) 34%,rgba(10,15,15,.12) 62%,transparent 82%)}.hero-carousel .intro{color:#f0f0ed}.carousel-caption{color:#f0f0ed}.hero-carousel .hero-slide img{object-position:center}@media(max-width:700px){.hero-carousel .hero-slide img{object-position:62% center}.hero-slides::after{background:linear-gradient(180deg,rgba(10,15,15,.68),rgba(10,15,15,.48) 40%,rgba(10,15,15,.08) 75%,rgba(10,15,15,.35))}}

/* Independent footer navigation groups */
footer.site-footer .footer-main{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,2fr);align-items:start;gap:64px}
footer.site-footer .footer-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:0}
.footer-column a{overflow-wrap:anywhere}
#agent-preparation,#agent-feedback,#agent-work-skills{scroll-margin-top:120px}
@media(max-width:1100px){footer.site-footer .footer-main{grid-template-columns:1fr;gap:48px}}
@media(max-width:680px){footer.site-footer .footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}}

/* Two visible menu rows; secondary links use native accessible disclosure. */
footer.site-footer .footer-column{gap:0;min-width:0}
footer.site-footer .footer-column h3{margin:0 0 24px;line-height:24px}
.footer-visible,.footer-extra{display:grid;grid-auto-rows:minmax(32px,auto);gap:8px}
.footer-visible{min-height:72px;align-content:start}
footer.site-footer .footer-column a{display:flex;align-items:center;min-height:32px;font-size:14px;line-height:24px;transition:color .4s var(--ease)}
footer.site-footer .footer-column a:hover,footer.site-footer .footer-column a:focus-visible{color:#fff;transform:translateY(-2px)}
.footer-more,.footer-more-spacer{margin-top:16px;min-height:32px}
footer.site-footer .footer-more summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:32px;padding:0;list-style:none;cursor:pointer;color:#a9afba;font-size:13px;line-height:24px;transition:color .4s var(--ease)}
.footer-more summary::-webkit-details-marker{display:none}
.footer-more-open{display:none}
.footer-more[open] .footer-more-closed{display:none}
.footer-more[open] .footer-more-open{display:inline}
.footer-more-icon{font-size:18px;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.footer-more[open] .footer-more-icon{transform:rotate(45deg)}
footer.site-footer .footer-more summary:hover,footer.site-footer .footer-more summary:focus-visible{color:#fff;transform:translateY(-2px)}
.footer-extra{padding-top:8px}
@media(prefers-reduced-motion:reduce){footer.site-footer .footer-column a,footer.site-footer .footer-more summary,.footer-more-icon{transition:none}}

/* One visible footer item per group. */
footer.site-footer .footer-visible{min-height:32px}

/* Give footer navigation a full-width equal-column rhythm. */
footer.site-footer .footer-main{grid-template-columns:1fr;gap:48px}
footer.site-footer .footer-navigation{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:48px;row-gap:40px}
footer.site-footer .footer-column{align-items:stretch}
footer.site-footer .footer-more summary{justify-content:flex-start;gap:16px}
@media(max-width:680px){footer.site-footer .footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}}

/* Eight discipline previews, with readable horizontal navigation. */
.platform .discipline-tabs{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:32px;overflow-x:auto;scroll-padding-inline:8px;scrollbar-width:thin;padding-bottom:8px}
.platform .discipline-tabs button{flex:0 0 auto;white-space:nowrap}
@media(max-width:680px){.platform .discipline-tabs{gap:24px}}
