@charset "UTF-8";
:root{--yellow:#f4d33c;--ink:#202729;--paper:#fafbf8;--cool:#e7eef0;--muted:#5b6567;--line:#ccd4d4;--display:"Arial Black","PingFang SC","Microsoft YaHei",sans-serif;--body:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;--mono:"SFMono-Regular",Consolas,monospace;--gutter:clamp(22px,5.55vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:750;line-height:1.25;letter-spacing:-.055em}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #267ba6;outline-offset:6px}.wrap{max-width:1536px;margin-inline:auto;padding-inline:var(--gutter)}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:10px;z-index:100}.skip-link:focus{top:20px}.site-header{display:flex;align-items:center;justify-content:space-between;height:104px}.brand{display:flex;gap:12px;align-items:center;font-size:23px;font-weight:750;line-height:1.1}.brand-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--yellow);box-shadow:0 2px 8px rgba(0,0,0,.08);flex-shrink:0}.brand-sign{width:47px;height:47px;display:grid;place-content:center;background:var(--yellow);border-radius:12px;font-size:29px;position:relative}.brand-sign span{position:absolute;right:3px;bottom:2px;font-size:20px}.brand small{display:block;font:10px var(--mono);letter-spacing:.18em;margin-top:6px}.footer-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid var(--yellow);vertical-align:middle;margin-right:10px;display:inline-block}.site-header nav{display:flex;align-items:center;gap:34px;font-size:14px}.site-header nav>a:hover{box-shadow:0 2px var(--ink)}.nav-contact{border:1px solid var(--ink);padding:10px 17px;border-radius:30px}.nav-contact span{margin-left:18px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:3vw;min-height:720px;padding-block:34px 70px}.hero-copy{padding-top:26px}.eyebrow{font:12px/1.6 var(--mono);letter-spacing:.12em;font-weight:500}.hero h1{font-family:var(--display);font-size:clamp(65px,6.2vw,100px);font-weight:900;line-height:1.13;letter-spacing:-.065em;margin:28px 0}.hero-em{display:inline-block;position:relative;z-index:0}.hero-em:before{content:"";position:absolute;z-index:-1;bottom:5%;left:-2%;width:91%;height:44%;background:var(--yellow);transform:rotate(-2deg)}.period{letter-spacing:-.3em}.hero-intro{font-size:18px;line-height:1.9;color:#455154}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 25px;border-radius:7px;font-size:15px;line-height:1.5;border:0;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#384548}.text-link{font-size:14px;border-bottom:1px solid #9da7a7;padding-block:9px}.text-link span{margin-left:14px}.hero-signature{margin-top:54px;display:flex;gap:23px;align-items:center}.hero-signature strong{font-size:28px;font-weight:800;letter-spacing:-.07em;transform:rotate(-6deg)}.hero-signature>span{font-size:12px;color:var(--muted);line-height:1.9;border-left:1px solid var(--line);padding-left:23px}.hero-visual{position:relative;background:var(--yellow);height:620px;border-radius:4px 70px 4px 4px;padding:21px 23px 25px 34px;overflow:hidden;transform:rotate(1.3deg)}.photo-label{display:flex;justify-content:space-between;font:11px/1.5 var(--mono);padding-right:14px;letter-spacing:.06em;margin-bottom:16px}.hero-photo{height:490px;width:100%;object-fit:cover;object-position:center 56%;border-radius:2px 38px 2px 2px}.hero-caption{position:absolute;left:9px;bottom:30px;display:flex;justify-content:space-between;align-items:center;width:77%;background:var(--paper);padding:19px 25px 20px;box-shadow:6px 7px 0 #202729;transform:rotate(-3deg);font-size:27px;font-weight:750;line-height:1.4;letter-spacing:-.045em}.caption-arrow{font-size:50px;font-weight:400}.vertical-note{position:absolute;right:9px;top:40%;writing-mode:vertical-rl;font:10px var(--mono);letter-spacing:.07em}.identity-strip{border-block:1px solid var(--line);background:var(--cool)}.identity-strip .wrap{display:flex;justify-content:space-between;gap:24px;padding-block:25px;font-size:14px}.identity-strip span{display:flex;align-items:center;gap:13px}.identity-strip span:before{content:"+";font:23px var(--mono);color:#647b81}.section{padding-block:112px}.about{display:grid;grid-template-columns:1fr 2.1fr;gap:50px}.section-side>p{font-size:22px;margin-top:28px;font-weight:600;line-height:1.55}.about h2{font-size:clamp(34px,3.1vw,48px);line-height:1.4;margin-bottom:30px}.about-main>p{max-width:770px;line-height:2;color:var(--muted);margin-top:16px}.site-footer{padding-block:40px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
@media(min-width:1500px){.hero{gap:70px}}@media(max-width:1100px){.hero{gap:24px}.hero h1{font-size:66px}.hero-actions{gap:16px;flex-wrap:wrap}.hero-visual{height:580px}.hero-photo{height:460px}.identity-strip .wrap{font-size:12px}.hero-signature{margin-top:32px}}
@media(max-width:760px){:root{--gutter:24px}.site-header{height:86px}.brand{font-size:20px}.brand-sign{width:40px;height:40px;font-size:25px}.site-header nav{gap:17px;font-size:13px}.site-header nav>a:nth-child(1),.site-header nav>a:nth-child(3){display:none}.nav-contact{padding:7px 13px}.nav-contact span{margin-left:5px}.hero{grid-template-columns:1fr;padding-block:17px 45px;gap:40px}.hero-copy{padding-top:0}.hero h1{font-size:clamp(59px,12.5vw,85px);margin:22px 0}.hero-intro{font-size:16px}.hero-actions{margin-top:26px;gap:20px}.button{padding:15px 20px;gap:20px}.hero-signature{margin-top:34px}.hero-visual{height:540px;width:100%;max-width:500px;margin-inline:auto;padding:20px 21px 20px 28px;transform:rotate(1deg);border-top-right-radius:54px}.hero-photo{height:440px;object-position:center 57%}.hero-caption{bottom:24px;font-size:24px;padding:15px 21px}.photo-label{font-size:10px}.identity-strip .wrap{flex-direction:column;gap:10px;padding-block:24px;font-size:13px}.identity-strip span:before{font-size:18px}.section{padding-block:68px}.about{grid-template-columns:1fr;gap:29px}.section-side>p{display:none}.about h2{font-size:32px;margin-bottom:22px}.about-main>p{font-size:16px}}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}.section-heading h2{font-size:clamp(34px,3.55vw,54px);line-height:1.3;margin-top:24px}.heading-aside{font-size:15px;line-height:1.9;color:var(--muted);max-width:350px;padding-bottom:5px}.about-foot{display:flex;flex-wrap:wrap;gap:16px 24px;border-top:1px solid var(--line);padding-top:23px;margin-top:34px;font-size:14px}.about-foot span:before{content:"↳";margin-right:8px;color:#657a81}.services{background:var(--cool)}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.service{background:var(--paper);padding:36px 38px 28px;border-radius:8px;display:flex;flex-direction:column}.service-yellow{background:var(--yellow)}.service-top{display:flex;justify-content:space-between;align-items:center;font:12px var(--mono);letter-spacing:.08em;margin-bottom:32px}.service-top>span:last-child{font-size:28px}.service h3{font-size:32px}.service-lead{font-size:18px!important;line-height:1.6!important;color:var(--ink)!important;margin-top:15px!important;margin-bottom:13px}.service>p{color:#515e61;font-size:15px;line-height:1.95;max-width:570px}.service-result{border-top:1px solid #20272924;padding-top:19px;margin-top:27px;display:grid;grid-template-columns:65px 1fr;gap:9px;font-size:14px}.service-result>span{color:#596368}.service-link{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-top:auto;padding-top:25px;font-weight:600}.service-link span{font-size:22px;transition:transform .2s}.service-link:hover span{transform:translate(3px,-3px)}.service-note{font-size:13px;color:var(--muted);margin-top:24px}.field-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:33px 32px}.field-main{grid-row:span 2}.photo-button{display:block;width:100%;border:0;background:none;position:relative;padding:0;overflow:hidden;border-radius:4px}.photo-button img{width:100%;height:224px;object-fit:cover;transition:transform .65s}.photo-button:hover img{transform:scale(1.025)}.field-main .photo-button img{height:542px;object-position:63% center}.photo-zoom{position:absolute;right:15px;bottom:15px;width:34px;height:34px;background:var(--paper);display:grid;place-items:center;border-radius:50%;font-size:20px;box-shadow:0 3px 10px #0001}.field-grid figcaption{padding-top:16px}.field-grid figcaption h3{font-size:20px;letter-spacing:-.035em}.field-grid figcaption p{font-size:13px;color:var(--muted);margin-top:6px}.field-main figcaption{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.field-main figcaption h3{font-size:29px;margin-top:10px}.field-main figcaption p{text-align:right}.field-secondary{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:54px}.field-secondary img{height:230px}.field-secondary figcaption{padding-top:17px}.field-secondary h3{font-size:18px;letter-spacing:-.03em}.field-secondary p{font-size:13px;color:var(--muted);margin-top:8px}.courses{background:#202c30;color:#f6f8f6}.course-layout{display:grid;grid-template-columns:.9fr 1.3fr;gap:8vw}.course-intro h2{font-size:clamp(34px,3.55vw,52px);line-height:1.4;margin:23px 0}.course-intro>p:not(.eyebrow){font-size:16px;color:#bbc9cc;line-height:2;max-width:460px}.course-intro>img{width:100%;height:245px;object-fit:cover;margin-top:44px;border-radius:4px}.course-photo-note{font-size:13px;color:#a8b8bc;display:block;margin-top:14px}.course-list details{border-top:1px solid #536166}.course-list details:last-child{border-bottom:1px solid #536166}.course-list summary{display:grid;grid-template-columns:1fr 24px;align-items:center;gap:6px 20px;padding:26px 0;cursor:pointer;list-style:none}.course-list summary::-webkit-details-marker{display:none}.course-tag{font-size:12px;color:var(--yellow);letter-spacing:.06em}.course-list h3{font-size:24px;line-height:1.5;letter-spacing:-.025em;grid-column:1}.details-toggle{grid-column:2;grid-row:1/3;position:relative;display:block;width:24px;height:24px}.details-toggle:before,.details-toggle:after{content:"";position:absolute;width:15px;height:1px;background:#dbe3e4;top:12px;left:4px;transition:transform .2s}.details-toggle:after{transform:rotate(90deg)}details[open] .details-toggle:after{transform:rotate(0)}.course-body{padding-bottom:30px;max-width:650px}.course-body>p{font-size:15px;line-height:1.95;color:#bdcbd0}.course-body dl{font-size:14px;margin:24px 0}.course-body dl>div{display:grid;grid-template-columns:74px 1fr;margin-top:12px;gap:10px}.course-body dt{color:#9bafb5}.course-body dd{margin:0}.course-origin{display:block;font-size:12px;line-height:1.8;color:#9cafb5}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.practice-grid article{border-top:2px solid var(--ink);padding-top:23px;display:flex;flex-direction:column}.project-type{font-size:13px;color:var(--muted);margin-bottom:20px}.practice-grid h3{font-size:28px;margin-bottom:22px}.practice-grid article>p:not(.project-foot){font-size:15px;color:var(--muted);line-height:1.95;margin-bottom:28px}.project-foot{font-size:14px;border-left:3px solid var(--yellow);padding-left:13px;margin-top:auto}.project-source{font-size:12px;color:var(--muted);margin-top:25px}.project-source[href]{text-decoration:underline;text-underline-offset:5px}.recognition{background:var(--cool)}.recognition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:23px}.recognition-grid>button{text-align:left;background:transparent;border:0;padding:0;display:flex;flex-direction:column;align-items:stretch}.proof-picture{display:flex;height:255px;align-items:center;justify-content:center;padding:21px;background:#d3dde0;border-radius:4px;margin-bottom:22px;overflow:hidden}.proof-picture img{max-width:100%;height:100%;object-fit:contain;box-shadow:0 4px 10px #13232c15;transition:transform .3s}.recognition-grid button:hover img{transform:rotate(-2deg) scale(1.025)}.proof-title{font-size:17px;font-weight:650;line-height:1.55}.proof-desc{font-size:13px;color:var(--muted);margin-top:7px}.proof-view{font-size:12px;margin-top:18px;border-bottom:1px solid #8c9ca0;align-self:flex-start}.story-list>a{display:grid;grid-template-columns:170px 1fr 38px;gap:30px;border-top:1px solid var(--line);padding:30px 0;align-items:center}.story-list>a:last-child{border-bottom:1px solid var(--line)}.story-medium{font-size:15px;font-weight:600}.story-medium small{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:8px}.story-list h3{font-size:23px;letter-spacing:-.03em;line-height:1.5}.story-list p{font-size:14px;color:var(--muted);margin-top:9px}.story-arrow{font-size:34px;transition:transform .2s}.story-list>a:hover .story-arrow{transform:translate(4px,-4px)}.story-list>a:hover h3{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:4px;text-underline-offset:5px}.contact{background:var(--yellow);padding-block:100px}.contact-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:9vw;align-items:center}.contact h2{font-size:clamp(37px,4.2vw,64px);line-height:1.35;margin:25px 0}.contact-intro{font-size:15px;margin-top:24px}.wechat-row{display:flex;align-items:center;gap:40px;margin-top:36px}.wechat-row>div>span{display:block;font-size:13px;margin-bottom:5px}.wechat-row strong{font:27px var(--mono);font-weight:550;letter-spacing:-.04em}.wechat-row .button{padding:13px 19px;font-size:14px;gap:18px}.copy-status{min-height:25px;font-size:13px;margin-top:10px}.contact-tip{font-size:13px;color:#424734}.contact-card{background:var(--paper);padding:31px 31px 22px;text-align:center;box-shadow:10px 12px 0 #2027291a;transform:rotate(3deg);border-radius:6px;max-width:340px;width:100%;justify-self:end}.qr-slot{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px dashed #99a7a9;border-radius:3px;background:#f0f3f0;position:relative;overflow:hidden}.qr-label{font-size:18px;font-weight:650}.qr-placeholder{font-size:14px;color:var(--muted)}.qr-slot small{font-size:12px;color:var(--muted);margin-top:11px}.qr-slot>img{width:100%;height:100%;object-fit:contain;background:white}.contact-name{display:block;font-size:27px;font-weight:800;margin-top:20px}.contact-card>p{font-size:12px;color:var(--muted)}.card-signoff{display:block;font-size:13px;border-top:1px solid var(--line);padding-top:15px;margin-top:18px}.footer-line{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{font-size:23px;font-weight:750;color:var(--ink)}.footer-brand>span{font:11px var(--mono);letter-spacing:.06em;margin-left:7px}.source-note{margin-top:28px;font-size:12px;max-width:950px}.source-note summary{cursor:pointer;width:fit-content;padding-block:6px}.source-note p{margin-top:12px;line-height:1.85}.source-note a{border-bottom:1px solid #879596}.photo-dialog{background:#172126;color:#fff;border:0;border-radius:9px;padding:24px;width:min(1120px,94vw);max-height:94vh;overflow:auto}.photo-dialog::backdrop{background:#101b21e8;backdrop-filter:blur(8px)}.dialog-image-wrap{display:flex;align-items:center;justify-content:center;padding:24px 10px 0;min-height:100px}.dialog-image-wrap img{max-width:100%;max-height:76vh;width:auto;height:auto;object-fit:contain}.dialog-close{position:sticky;float:right;top:0;right:0;z-index:2;width:40px;height:40px;line-height:1;background:#fff;color:var(--ink);border:0;border-radius:50%;font-size:30px}.photo-dialog>p{text-align:center;font-size:14px;padding:22px 12px 4px;clear:both}.photo-dialog[open]{animation:dialog-in .2s ease-out}@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.service{padding:30px}.service h3{font-size:28px}.field-main .photo-button img{height:520px}.photo-button img{height:210px}.field-secondary img{height:185px}.field-main figcaption{display:block}.field-main figcaption p{text-align:left}.course-layout{gap:5vw}.course-intro h2{font-size:36px}.course-list h3{font-size:21px}.practice-grid{gap:25px}.practice-grid h3{font-size:24px}.recognition-grid{gap:15px}.proof-picture{height:210px;padding:15px}.proof-title{font-size:15px}.contact-grid{gap:5vw}.contact-card{padding:23px}.wechat-row{gap:22px}.wechat-row strong{font-size:24px}}
@media(max-width:760px){.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:34px;margin-top:19px}.heading-aside{margin-top:22px;font-size:14px}.services-grid{grid-template-columns:1fr;gap:15px}.service{padding:28px}.service-top{margin-bottom:26px}.service h3{font-size:29px}.service-result{grid-template-columns:58px 1fr}.field-grid{grid-template-columns:1fr;gap:30px}.field-main{grid-row:auto}.field-main .photo-button img{height:auto;aspect-ratio:4/3;object-position:center}.photo-button img{height:auto;aspect-ratio:16/10}.field-main figcaption{display:block}.field-main figcaption h3{font-size:26px}.field-main figcaption p{text-align:left;margin-top:10px}.field-secondary{grid-template-columns:1fr;gap:29px;margin-top:32px}.field-secondary img{height:auto;aspect-ratio:16/10}.field-secondary h3{font-size:20px}.course-layout{grid-template-columns:1fr;gap:39px}.course-intro h2{font-size:34px}.course-intro>img{height:auto;aspect-ratio:16/9;object-fit:cover;margin-top:29px}.course-list h3{font-size:21px}.course-list summary{padding:24px 0}.course-body dl>div{grid-template-columns:62px 1fr}.practice-grid{grid-template-columns:1fr;gap:33px}.practice-grid h3{font-size:27px;margin-bottom:16px}.practice-grid article>p:not(.project-foot){margin-bottom:18px}.project-source{margin-top:19px}.recognition-grid{grid-template-columns:1fr 1fr;gap:27px 17px}.proof-picture{height:205px;padding:15px;margin-bottom:16px}.proof-title{font-size:16px}.proof-desc{font-size:12px}.story-list>a{grid-template-columns:1fr 26px;gap:13px 18px;padding:26px 0}.story-medium{grid-column:1/3;font-size:13px;display:flex;gap:14px;align-items:center}.story-medium small{display:inline-block;margin-top:0}.story-list h3{font-size:21px}.story-list p{font-size:13px}.story-arrow{font-size:27px}.contact{padding-block:66px}.contact-grid{grid-template-columns:1fr;gap:39px}.contact h2{font-size:38px}.contact-intro{font-size:14px;max-width:310px}.wechat-row{gap:20px;flex-wrap:wrap;margin-top:28px}.wechat-row strong{font-size:25px}.contact-card{justify-self:center;max-width:285px;padding:26px}.footer-line{align-items:flex-start;flex-wrap:wrap;gap:15px}.footer-line>p{font-size:12px;order:3;flex-basis:100%}.footer-brand{font-size:20px}.source-note{margin-top:24px}.photo-dialog{padding:15px}.dialog-image-wrap{padding:20px 0 0}.dialog-image-wrap img{max-height:68vh}.photo-dialog>p{font-size:13px}.about-foot{font-size:13px;gap:12px 20px}}
@media(max-width:380px){:root{--gutter:20px}.hero h1{font-size:57px}.hero-visual{height:490px}.hero-photo{height:400px}.hero-actions{gap:13px}.text-link{font-size:13px}.service{padding:24px}.recognition-grid{gap:25px 12px}.proof-picture{height:180px;padding:10px}.contact h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Enterprise case notes: two editorial spreads, not a client-logo wall. */
.case-row{display:grid;grid-template-columns:.8fr 1.4fr;gap:7%;padding:46px 0;border-top:1px solid var(--line)}
.case-row:last-child{padding-bottom:0}.case-number{font:12px var(--mono);letter-spacing:.09em;color:var(--muted)}
.case-identity h3{font-size:34px;line-height:1.4;margin-top:20px}.case-identity>p{font-size:16px;margin-top:8px;color:var(--muted)}
.case-motif{margin-top:38px;background:var(--yellow);padding:22px 25px;border-radius:3px 32px 3px 3px;max-width:315px;transform:rotate(-1deg)}
.case-motif>span{font:64px/1.3 var(--mono);font-weight:700;letter-spacing:-.05em}.case-motif small{display:block;font:10px var(--mono);letter-spacing:.12em;margin-top:12px}.case-words{background:var(--cool);transform:rotate(1deg)}.case-words>span{font-family:var(--body);font-size:30px;line-height:1.5;letter-spacing:-.04em}
.case-content h4{font-size:28px;line-height:1.45;font-weight:700;letter-spacing:-.04em;margin:0 0 23px}.case-content>p{font-size:16px;color:var(--muted);line-height:2}.case-topics{list-style:none;padding:0;margin:27px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;font-size:14px}.case-topics li:before{content:"↳";color:#557077;margin-right:9px}.case-delivery{border-top:1px solid var(--line);padding-top:20px;display:grid;grid-template-columns:74px 1fr;gap:15px;font-size:14px}.case-delivery>span{color:var(--muted)}.cases+.field{padding-top:25px}
.field-album-link{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding:25px 0;border-block:1px solid var(--line);font-size:15px}.field-album-link>span{color:var(--muted)}.field-album-link strong{font-weight:600}.field-album-link strong>span{margin-left:22px}
/* Contact-sheet archive, kept separate from the large editorial photographs. */
.archive{padding-bottom:70px}.archive-counter>strong{font:80px/1 var(--mono);letter-spacing:-.07em}.archive-counter>strong>span{font:16px var(--body);letter-spacing:0;margin-left:13px}.archive-counter p{font-size:13px;color:var(--muted);margin-top:15px}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:26px}.gallery-filters button{background:transparent;border:1px solid #bac6c8;border-radius:30px;padding:10px 18px;font-size:13px;transition:background .2s}.gallery-filters button:hover{background:var(--cool)}.gallery-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery-meta{display:flex;justify-content:space-between;gap:18px;font:12px var(--mono);color:var(--muted);margin:26px 0 20px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}.gallery-item .photo-button{background:var(--cool);border-radius:3px}.gallery-item .photo-button img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.gallery-item[data-group=invitations] img,.gallery-item[data-group=recognition] img{object-fit:contain;padding:13px}.gallery-image-number{position:absolute;left:10px;top:10px;font:10px var(--mono);line-height:1;padding:6px;background:#fafbf8ed;border-radius:2px}.gallery-item figcaption{margin-top:12px;font-size:13px;line-height:1.65;color:#4f5c5f}.gallery-more{text-align:center;margin-top:42px}.gallery-more p{font-size:12px;color:var(--muted);margin-top:17px}.gallery-more .button{min-width:255px;justify-content:center}.gallery-more .button[hidden]{display:none}.archive+.voices{padding-top:35px}.dialog-navigation{display:flex;gap:22px;align-items:center;justify-content:center;margin-top:10px}.dialog-navigation button{width:46px;height:40px;border:1px solid #75858a;border-radius:24px;background:transparent;color:white;font-size:23px;line-height:1}.dialog-navigation button:hover{background:#394c54}.dialog-navigation button:disabled{opacity:.4;cursor:default}.dialog-navigation span{font:12px var(--mono);color:#c2cdd0;min-width:68px;text-align:center}.dialog-image-wrap img{max-height:68vh}
.service>p,.course-body>p,.practice-grid article>p:not(.project-foot){font-size:16px}

.identity-cert-link{display:flex;align-items:center;gap:15px;line-height:1.7}.identity-cert-link b{font-size:21px;font-weight:400}.identity-cert-link:hover{text-decoration:underline;text-underline-offset:5px}.inline-cert-link{color:var(--ink);text-decoration:underline;text-decoration-color:#b99813;text-underline-offset:5px}.inline-cert-link:hover{text-decoration-thickness:2px}
.certification-feature{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:6%;padding-bottom:52px;margin-bottom:48px;border-bottom:1px solid #b7c6cb;scroll-margin-top:24px}.certification-figure{min-width:0}.certification-image{border:1px solid #bdc9cf;background:#fff;border-radius:4px;box-shadow:0 8px 22px #2035460c}.certification-image img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transform:none}.certification-image .photo-zoom{background:var(--yellow)}.certification-figure figcaption{display:flex;justify-content:space-between;gap:18px;font-size:12px;color:var(--muted);margin-top:13px}.certification-copy{min-width:0}.certification-copy h3{font-size:clamp(32px,3.1vw,46px);letter-spacing:-.04em;line-height:1.3;margin:19px 0 12px}.certification-issuer{font-size:17px;font-weight:600;line-height:1.8}.certification-description{font-size:15px;line-height:1.95;color:var(--muted);margin-top:23px}.certification-dates{margin:24px 0 0;padding-top:18px;border-top:1px solid #b7c6cb;font-size:14px}.certification-dates>div{display:grid;grid-template-columns:70px 1fr;gap:12px;margin-top:9px}.certification-dates dt{color:var(--muted)}.certification-dates dd{margin:0;font-family:var(--mono);font-size:13px;line-height:1.9}.certification-type{font-size:12px;color:var(--muted);margin-top:22px}.certification-type:before{content:"";display:inline-block;width:7px;height:7px;background:#b99813;border-radius:50%;margin-right:9px}
@media(max-width:1100px){.certification-feature{grid-template-columns:1.1fr 1fr;gap:5%}.certification-copy h3{font-size:32px}.certification-issuer{font-size:15px}.certification-description{font-size:14px;margin-top:16px}.certification-dates{margin-top:18px}.certification-figure figcaption{font-size:11px;gap:10px}}
@media(max-width:760px){.certification-feature{grid-template-columns:1fr;gap:28px;padding-bottom:32px;margin-bottom:32px}.certification-copy h3{font-size:34px;margin-top:13px}.certification-issuer{font-size:16px}.certification-description{font-size:15px}.certification-dates{margin-top:20px}.certification-figure figcaption{font-size:11px}.certification-type{margin-top:18px}.identity-cert-link{gap:13px}.identity-cert-link b{font-size:19px}}
.online-courses{background:#f1f4f0;border-bottom:1px solid var(--line)}
.online-metrics{display:grid;grid-template-columns:1.4fr 1fr;margin:0;border-block:1px solid #bcc7c5;padding:32px 0}
.online-stat{padding:0 40px;border-left:1px solid #c9d1ce;min-width:0}.online-stat:first-child{padding-left:0;border:0}.online-stat dt{font-size:14px;color:var(--muted);margin-bottom:12px}.online-stat dd{font:72px/1.1 var(--mono);letter-spacing:-.07em;margin:0;white-space:nowrap}.online-stat dd>span{font:15px var(--body);letter-spacing:0;margin-left:14px}.online-stat-main dd{width:fit-content;background:linear-gradient(transparent 65%,var(--yellow) 65%)}
.online-date{font:12px/1.8 var(--mono);color:var(--muted);margin-top:17px}.online-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;margin-top:55px}.online-catalog>.eyebrow{margin-bottom:23px}.online-course{border-top:1px solid #bcc7c5;padding:26px 0 28px}.online-course-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font:12px var(--mono);color:var(--muted)}.online-rating{font-size:18px;font-weight:700;color:var(--ink);white-space:nowrap}.online-rating>span{color:#83640a;font-size:16px}.online-rating small{font:11px var(--body);color:var(--muted);margin-left:5px}.online-course h3{font-size:25px;letter-spacing:-.025em;line-height:1.5;margin:17px 0}.online-course-meta{display:flex;gap:0;font-size:14px;color:var(--muted)}.online-course-meta span+span:before{content:"/";color:#9ca9a7;margin:0 14px}.online-course-foot{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-top:14px;font-size:14px}.online-course-foot p{color:var(--muted)}.online-course-foot a{white-space:nowrap;border-bottom:1px solid #91a09a;font-size:13px}.online-course-foot a span{margin-left:8px}.online-rating-note{font-size:12px;color:var(--muted);border-top:1px solid #bcc7c5;padding-top:16px}
.online-evidence{background:#e2e9e6;border-radius:4px;padding:28px}.online-evidence-heading{margin-bottom:26px}.online-evidence-heading h3{font-size:25px;margin-top:10px;letter-spacing:-.04em}.online-evidence figure+figure{margin-top:28px}.online-evidence .photo-button{border:1px solid #c8d1ce;background:white}.online-evidence .photo-button img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transform:none}.online-evidence .photo-zoom{right:9px;bottom:9px;width:30px;height:30px;background:var(--yellow);font-size:18px}.online-evidence figcaption{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);margin-top:11px}
@media(max-width:1100px){.online-stat{padding-inline:25px}.online-stat dd{font-size:59px}.online-layout{gap:5%}.online-course h3{font-size:23px}.online-evidence{padding:22px}.online-course-top{flex-wrap:wrap;gap:10px}.online-rating small{display:none}}
@media(max-width:760px){.online-metrics{grid-template-columns:1.65fr 1fr;padding:24px 0}.online-stat{padding-inline:20px}.online-stat dt{font-size:13px;margin-bottom:10px}.online-stat dd{font-size:52px}.online-stat dd>span{font-size:14px;margin-left:8px}.online-date{font-size:11px;margin-top:14px}.online-layout{grid-template-columns:1fr;gap:32px;margin-top:37px}.online-catalog>.eyebrow{margin-bottom:19px}.online-course{padding-block:23px}.online-course h3{font-size:22px}.online-course-foot{flex-wrap:wrap;gap:10px}.online-evidence{padding:22px}.online-evidence-heading h3{font-size:24px}.online-evidence figcaption{font-size:11px}.online-rating small{display:inline}}
.writing-feature{display:grid;grid-template-columns:.9fr 1.15fr;gap:7%;align-items:center;padding:40px 0 50px;border-top:2px solid var(--ink)}.writing-copy h3{font-size:clamp(29px,3vw,43px);line-height:1.4;margin:20px 0 17px}.writing-intro{font-size:15px;color:var(--muted)}.writing-copy>.text-link{display:inline-block;margin-top:27px}.writing-metrics{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px;margin:0 0 28px}.writing-metrics dt{font-size:13px;color:var(--muted);margin-bottom:6px}.writing-metrics dd{font:43px/1.2 var(--mono);letter-spacing:-.06em;margin:0}.writing-metrics dd>span{font:14px var(--body);letter-spacing:0;margin-left:10px}.writing-visits{grid-column:1/-1;padding-bottom:23px;border-bottom:1px solid var(--line)}.writing-visits dd{font-size:clamp(40px,5.1vw,74px);width:fit-content;background:linear-gradient(transparent 72%,var(--yellow) 72%)}.writing-snapshot .photo-button{background:white;border:1px solid var(--line)}.writing-snapshot .photo-button img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transform:none}.writing-snapshot .photo-zoom{width:25px;height:25px;right:7px;bottom:7px;font-size:16px;background:var(--yellow)}.writing-snapshot figcaption{font-size:11px;color:var(--muted);margin-top:10px}
@media(max-width:760px){.writing-feature{grid-template-columns:1fr;gap:33px;padding:27px 0 35px}.writing-copy h3{font-size:31px;margin-top:16px}.writing-copy>.text-link{margin-top:17px}.writing-metrics{gap:20px 26px;margin-bottom:23px}.writing-visits dd{font-size:clamp(39px,11.7vw,70px)}.writing-metrics dd>span{font-size:13px}.writing-visits{padding-bottom:20px}}
@media(max-width:1100px){.site-header nav{gap:20px}.case-identity h3{font-size:29px}.case-content h4{font-size:25px}.case-topics{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.site-header nav .nav-album{display:none}.case-row{grid-template-columns:1fr;gap:28px;padding-block:32px}.case-identity{position:relative;padding-right:0}.case-identity h3{font-size:29px;margin-top:12px}.case-motif{display:none}.case-content h4{font-size:24px;margin-bottom:19px}.case-topics{margin-block:21px;gap:9px}.case-delivery{grid-template-columns:64px 1fr;gap:10px}.cases+.field{padding-top:16px}.field-album-link{display:block;font-size:14px;padding-block:20px}.field-album-link strong{display:block;margin-top:7px}.archive-counter{display:flex;gap:22px;align-items:center;margin-top:25px}.archive-counter>strong{font-size:58px}.archive-counter p{font-size:12px;margin:0}.gallery-filters{gap:8px;padding-top:20px}.gallery-filters button{font-size:12px;padding:8px 13px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 13px}.gallery-item figcaption{font-size:12px;margin-top:9px}.gallery-item[data-group=invitations] img,.gallery-item[data-group=recognition] img{padding:9px}.gallery-image-number{left:6px;top:6px;font-size:9px;padding:4px}.gallery-meta{font-size:11px;margin-top:22px;gap:8px}.gallery-more .button{min-width:235px}.archive{padding-bottom:50px}.archive+.voices{padding-top:25px}.dialog-image-wrap img{max-height:62vh}.contact h2 span{display:block}}
