:root{
  --ink:#20262e;
  --ink-2:#303844;
  --body:#69717c;
  --muted:#8a929c;
  --rose:#c96871;
  --rose-dark:#aa4651;
  --rose-soft:#fbf0f1;
  --rose-pale:#fff8f8;
  --line:#e4e7eb;
  --line-dark:#d7dbe0;
  --paper:#ffffff;
  --silver:#f6f7f8;
  --warm:#fbfaf9;
  --dark:#20252c;
  --success:#466b5d;
  --shadow:0 18px 50px rgba(31,38,47,.08);
  --radius:3px;
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"PingFang SC","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
body.dialog-open{overflow:hidden}
img{display:block;width:100%;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{color:inherit}
button,a{outline-offset:4px}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--rose);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 64px));margin:0 auto}
.skip-link{position:fixed;left:16px;top:-60px;z-index:1000;background:var(--ink);color:#fff;padding:10px 16px}
.skip-link:focus{top:12px}
.overline{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:var(--rose-dark);font-size:12px;font-weight:750;letter-spacing:.17em;line-height:1.3;text-transform:uppercase}
.overline span{display:block;width:28px;height:2px;background:var(--rose)}
.eyebrow{margin:0;color:var(--rose-dark);font-size:11px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.tag{display:inline-flex;align-items:center;min-height:27px;padding:2px 10px;border:1px solid #e9cfd2;background:var(--rose-pale);color:var(--rose-dark);font-size:12px;font-weight:650}
.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 20px;border-radius:2px;cursor:pointer;font-size:14px;font-weight:700;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.button:hover{transform:translateY(-1px)}
.button-large{min-height:52px;padding:13px 24px}
.button-primary{background:var(--rose);color:#fff}
.button-primary:hover{background:var(--rose-dark)}
.button-dark{background:var(--ink);color:#fff}
.button-dark:hover{background:#10151a}
.button-ghost{border:1px solid var(--line-dark);background:#fff;color:var(--ink)}
.button-ghost:hover{border-color:var(--rose);color:var(--rose-dark)}
.text-link{border:0;background:none;display:inline-flex;align-items:center;gap:8px;padding:0;color:var(--ink);cursor:pointer;font-size:14px;font-weight:720}
.text-link i{color:var(--rose);transition:transform .2s}
.text-link:hover i{transform:translate(3px,-3px)}
.section{padding:106px 0}
.section-tint{background:var(--silver)}
.section-line-top{border-top:1px solid var(--line)}
.section-dark{background:var(--dark);color:#fff}
.section-heading{max-width:700px;margin-bottom:48px}
.section-heading h2{margin:0;font-size:clamp(34px,4vw,51px);font-weight:650;letter-spacing:-.045em;line-height:1.17}
.section-heading>p:last-child{max-width:620px;margin:20px 0 0;color:var(--body);font-size:17px;line-height:1.8}
.section-heading-center{margin-left:auto;margin-right:auto;text-align:center}
.section-heading-center .overline{justify-content:center}
.section-dark .section-heading h2,.section-dark .section-heading p{color:#fff}
.section-dark .section-heading>p:last-child{color:#b8c0c8}
.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}
.section-title-row .section-heading{margin:0}
.section-title-row>.text-link{margin-bottom:8px;white-space:nowrap}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(228,231,235,.9)}
.header-shell{width:min(1280px,calc(100% - 48px));height:84px;margin:auto;display:flex;align-items:center;gap:32px}
.brand{flex:0 0 183px;height:50px;overflow:hidden;display:flex;align-items:center}
.brand img{height:48px;width:183px;object-fit:cover;object-position:50% 43%}
.desktop-nav{position:relative;margin-left:auto;display:flex;align-items:stretch;height:84px;gap:24px}
.nav-link{position:relative;display:flex;align-items:center;gap:5px;color:#3d4650;font-size:14px;font-weight:600;white-space:nowrap}
.nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--rose);transition:right .2s}
.nav-link:hover,.nav-link.is-active{color:var(--rose-dark)}
.nav-link:hover::after,.nav-link.is-active::after{right:0}
.nav-link i{font-size:12px}
.nav-service-trigger{order:-1}
.service-menu{position:absolute;z-index:5;left:-20px;top:69px;width:240px;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}
.service-menu a{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;color:var(--ink);font-size:14px}
.service-menu a:hover{background:var(--rose-soft);color:var(--rose-dark)}
.nav-service-trigger:hover + .service-menu,.service-menu:hover,.desktop-nav:focus-within .service-menu,.service-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}
.header-cta{flex:0 0 auto;min-height:44px;padding:9px 17px}
.menu-toggle{display:none;border:0;background:none;font-size:27px;padding:7px;cursor:pointer}
.mobile-panel{display:none}

/* Shared page hero */
.page-hero{padding:92px 0 82px;background:var(--warm);border-bottom:1px solid var(--line)}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 455px;align-items:center;gap:86px}
.page-hero-text-only{grid-template-columns:minmax(0,790px) minmax(220px,1fr)}
.page-hero-copy h1{max-width:720px;margin:0;font-size:clamp(45px,5.5vw,72px);font-weight:640;letter-spacing:-.055em;line-height:1.12}
.page-hero-copy>p:not(.overline){max-width:650px;margin:26px 0 0;color:var(--body);font-size:18px;line-height:1.9}
.page-hero-media{position:relative;margin:0}
.page-hero-media::before{content:"";position:absolute;left:-17px;top:19px;width:46px;height:76%;background:var(--rose-soft);z-index:0}
.page-hero-media img{position:relative;z-index:1;aspect-ratio:4/3;object-fit:cover}
.hero-side-note{margin-top:40px;padding:20px 0 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:18px;color:var(--body)}
.hero-side-note strong{color:var(--ink);font-size:15px}
.hero-side-note span{font-size:13px}

/* Home */
.home-hero{padding:76px 0 0;background:var(--warm)}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 500px;align-items:center;gap:86px}
.home-hero-copy h1{margin:0;max-width:660px;font-size:clamp(50px,5.6vw,76px);font-weight:650;letter-spacing:-.06em;line-height:1.12}
.home-hero-copy h1 em{display:block;color:var(--rose-dark);font-style:normal}
.home-hero-copy>p:not(.overline):not(.hero-proof){max-width:590px;margin:27px 0;color:var(--body);font-size:18px;line-height:1.9}
.hero-actions{display:flex;gap:12px;margin-top:34px}
.hero-proof{display:flex;align-items:center;gap:8px;margin:25px 0 0;color:#737b84;font-size:13px}
.hero-proof i{color:var(--rose-dark);font-size:17px}
.home-hero-media{position:relative;margin:0}
.home-hero-media img{height:520px;object-fit:cover}
.home-hero-media::after{content:"";position:absolute;right:-16px;top:24px;width:16px;height:142px;background:var(--rose)}
.home-hero-media figcaption{position:absolute;left:-34px;bottom:25px;min-width:260px;padding:18px 22px;background:#fff;box-shadow:var(--shadow)}
.home-hero-media figcaption strong,.home-hero-media figcaption span{display:block}
.home-hero-media figcaption strong{font-size:14px}
.home-hero-media figcaption span{margin-top:4px;color:var(--muted);font-size:11px;letter-spacing:.08em}
.hero-principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:72px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.hero-principles article{display:flex;align-items:center;gap:18px;padding:29px 34px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.hero-principles i{color:var(--rose);font-size:28px}
.hero-principles strong,.hero-principles span{display:block}
.hero-principles strong{font-size:15px}
.hero-principles span{color:var(--body);font-size:12px}

.service-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.service-card{padding:45px 46px;border:1px solid var(--line);background:#fff;transition:.25s}
.service-card:hover{border-color:#d9b6ba;box-shadow:var(--shadow);transform:translateY(-3px)}
.service-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}
.service-card-top span{color:var(--rose);font-size:13px;font-weight:750;letter-spacing:.12em}
.service-card-top i{color:var(--rose);font-size:38px}
.service-card h3{margin:0;font-size:29px;letter-spacing:-.035em}
.service-card>p{min-height:58px;margin:16px 0 26px;color:var(--body)}
.check-list{list-style:none;margin:0 0 31px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 24px}
.check-list li{display:flex;align-items:center;gap:8px;color:#4d5661;font-size:14px}
.check-list i{color:var(--rose)}
.process-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark)}
.process-row article{position:relative;padding:31px 31px 7px 0;border-right:1px solid var(--line)}
.process-row article+article{padding-left:31px}
.process-row article:last-child{border-right:0}
.process-row span{display:block;margin-bottom:25px;color:var(--rose);font-size:12px;font-weight:750;letter-spacing:.16em}
.process-row h3{margin:0;font-size:20px}
.process-row p{margin:12px 0 0;color:var(--body);font-size:14px}
.feature-industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.feature-industry{border:1px solid var(--line);background:#fff;transition:.25s}
.feature-industry:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.feature-industry img{height:235px;object-fit:cover}
.feature-industry>div{position:relative;padding:27px 28px 31px}
.feature-industry span{color:var(--rose);font-size:12px;font-weight:700}
.feature-industry h3{margin:5px 0 9px;font-size:22px}
.feature-industry p{margin:0;color:var(--body);font-size:14px}
.feature-industry i{position:absolute;right:27px;top:31px;color:var(--rose)}
.home-article-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:30px}
.home-feature-article{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid var(--line);background:#fff}
.home-feature-article img{height:100%;min-height:360px;object-fit:cover}
.home-feature-article>div{padding:43px}
.home-feature-article h3{margin:20px 0 14px;font-size:30px;line-height:1.35}
.home-feature-article p{color:var(--body)}
.home-feature-article b{display:block;margin-top:35px;font-size:14px}
.home-small-articles{display:grid;gap:16px}
.home-small-articles button{position:relative;text-align:left;border:1px solid var(--line);background:#fff;padding:27px 30px;cursor:pointer}
.home-small-articles button:hover{border-color:#d9b6ba}
.home-small-articles h3{margin:14px 30px 8px 0;font-size:20px;line-height:1.42}
.home-small-articles p{margin:0;color:var(--body);font-size:13px}
.home-small-articles i{position:absolute;right:28px;top:29px;color:var(--rose)}

/* Services */
.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.service-detail-card{display:grid;grid-template-columns:74px 1fr;min-height:500px;border:1px solid var(--line);background:#fff}
.service-index{padding:34px 0;text-align:center;border-right:1px solid var(--line);color:var(--rose);font-size:13px;font-weight:750;letter-spacing:.12em}
.service-detail-body{padding:48px 42px}
.service-detail-body h3{margin:12px 0 17px;font-size:31px;line-height:1.3}
.service-detail-body>p:not(.eyebrow){min-height:85px;color:var(--body)}
.service-detail-body .check-list{grid-template-columns:1fr;margin:28px 0 38px}
.compare-table{border:1px solid var(--line-dark);background:#fff}
.compare-row{display:grid;grid-template-columns:.65fr 1fr 1fr;border-bottom:1px solid var(--line)}
.compare-row:last-child{border-bottom:0}
.compare-row>*{padding:24px 28px;border-right:1px solid var(--line)}
.compare-row>*:last-child{border-right:0}
.compare-row b{font-size:15px}
.compare-row span{color:var(--body);font-size:14px}
.compare-head{background:var(--ink);color:#fff}
.compare-head>*{border-color:#454b53}
.compare-head strong{font-size:14px}

/* Operation */
.issue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.issue-grid article{padding:31px 27px;border:1px solid var(--line);background:#fff}
.issue-grid i{color:var(--rose);font-size:30px}
.issue-grid h3{margin:25px 0 11px;font-size:19px}
.issue-grid p{margin:0;color:var(--body);font-size:14px}
.dark-process{border-top:1px solid #454b52}
.dark-process article{display:grid;grid-template-columns:100px 1fr;padding:29px 0;border-bottom:1px solid #454b52}
.dark-process>article>span{color:#d8848c;font-size:13px;font-weight:750;letter-spacing:.15em}
.dark-process article>div{position:relative;padding-right:50px}
.dark-process i{position:absolute;right:0;top:5px;color:#d8848c;font-size:23px}
.dark-process h3{margin:0 0 7px;font-size:24px}
.dark-process p{margin:0;color:#b8c0c8}
.split-media{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:86px}
.split-media-reverse{grid-template-columns:1.07fr .93fr}
.split-media figure{margin:0}
.split-media figure img{height:540px;object-fit:cover}
.split-media .section-heading{margin-bottom:34px}
.deliverable-list{border-top:1px solid var(--line)}
.deliverable-list>div{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.deliverable-list span{color:var(--rose);font-size:12px}
.deliverable-list strong{font-size:15px}
.deliverable-list i{color:var(--success);font-size:19px}
.collab-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.collab-grid article{padding:42px 42px 34px;background:#fff;border:1px solid var(--line)}
.collab-grid article>span{color:var(--rose-dark);font-size:12px;font-weight:750;letter-spacing:.14em}
.collab-grid h3{margin:13px 0 14px;font-size:27px}
.collab-grid article>p{color:var(--body)}
.collab-grid .check-list{grid-template-columns:1fr;margin:25px 0 0}

/* Training */
.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.audience-grid article{padding:38px 33px;border-top:3px solid var(--rose);background:var(--silver)}
.audience-grid i{font-size:32px;color:var(--rose)}
.audience-grid h3{margin:23px 0 9px;font-size:21px}
.audience-grid p{margin:0;color:var(--body);font-size:14px}
.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.module-grid article{min-height:280px;padding:33px 28px;background:#fff;border:1px solid var(--line)}
.module-grid span{color:var(--rose);font-size:12px;font-weight:750}
.module-grid h3{margin:59px 0 14px;font-size:20px}
.module-grid p{margin:0;color:var(--body);font-size:14px}
.assignment-list{border-top:1px solid var(--line)}
.assignment-list article{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}
.assignment-list>article>span{color:var(--rose);font-size:12px}
.assignment-list h3{margin:0;font-size:17px}
.assignment-list p{margin:5px 0 0;color:var(--body);font-size:14px}
.takeaway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.takeaway-grid article{padding:34px;border:1px solid #444a51}
.takeaway-grid i{color:#dc8a92;font-size:31px}
.takeaway-grid h3{margin:26px 0 9px;font-size:21px}
.takeaway-grid p{margin:0;color:#b8c0c8;font-size:14px}

/* Industry */
.industry-catalog{padding-top:94px}
.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.industry-card{overflow:hidden;border:1px solid var(--line);background:#fff;transition:.25s}
.industry-card:hover{border-color:#d9b6ba;box-shadow:var(--shadow);transform:translateY(-3px)}
.industry-card img{height:188px;object-fit:cover}
.industry-card>div{padding:24px 25px 27px}
.industry-card span{color:var(--rose);font-size:11px;font-weight:750;letter-spacing:.12em}
.industry-card h3{margin:5px 0 8px;font-size:21px}
.industry-card p{min-height:50px;margin:0;color:var(--body);font-size:13px}
.industry-card button{border:0;background:none;padding:20px 0 0;color:var(--ink);cursor:pointer;font-size:13px;font-weight:700}
.industry-card button i{margin-left:5px;color:var(--rose)}

/* Listings */
.listing-section{padding-top:76px}
.listing-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:44px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.filter-tabs{display:flex;align-items:center;gap:5px}
.filter-tabs button{border:1px solid transparent;background:#fff;padding:9px 15px;cursor:pointer;color:var(--body);font-size:13px}
.filter-tabs button:hover,.filter-tabs button.is-active{border-color:#eccfd2;background:var(--rose-pale);color:var(--rose-dark)}
.search-box{display:flex;align-items:center;width:280px;border-bottom:1px solid var(--ink)}
.search-box i{font-size:18px}
.search-box input{min-width:0;flex:1;border:0;background:none;padding:10px 12px;outline:0}
.search-box span{font-size:12px;font-weight:700}
.case-list{display:grid;gap:0}
.case-row{display:grid;grid-template-columns:330px 1fr;gap:46px;padding:34px 0;border-bottom:1px solid var(--line)}
.case-row[hidden],.article-list a[hidden],.article-feature[hidden],.faq-item[hidden]{display:none}
.case-row img{height:220px;object-fit:cover}
.case-row h2{margin:14px 0 10px;font-size:25px;line-height:1.4}
.case-row p{margin:0 0 25px;color:var(--body)}
.case-meta{display:flex;align-items:center;gap:13px}
.case-meta span{padding:3px 8px;background:var(--rose-soft);color:var(--rose-dark);font-size:11px}
.case-meta b{color:var(--muted);font-size:11px}
.case-featured{grid-template-columns:1.05fr 1fr;padding-top:0;padding-bottom:49px}
.case-featured img{height:350px}
.case-featured>div{padding-top:30px}
.case-featured h2{font-size:34px}
.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:48px}
.pagination button{width:40px;height:40px;border:1px solid var(--line);background:#fff;cursor:pointer}
.pagination button.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.pagination button:disabled{cursor:not-allowed;color:#a7adb4}
.case-structure{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.case-structure article{padding:31px 28px;background:#fff;border:1px solid var(--line)}
.case-structure span{color:var(--rose);font-size:12px;font-weight:700}
.case-structure h3{margin:30px 0 10px;font-size:19px}
.case-structure p{margin:0;color:var(--body);font-size:13px}
.empty-state{grid-column:1/-1;padding:70px;text-align:center;border:1px solid var(--line);background:var(--silver)}
.empty-state i{color:var(--rose);font-size:33px}
.empty-state h3{margin:13px 0 5px}
.empty-state p{margin:0;color:var(--body)}

.article-catalog{display:grid;gap:30px}
.article-feature{display:grid;grid-template-columns:1.08fr .92fr;border:1px solid var(--line)}
.article-feature img{height:410px;object-fit:cover}
.article-feature>div{padding:53px 48px}
.article-feature h2{margin:20px 0 15px;font-size:36px;line-height:1.3}
.article-feature p{color:var(--body)}
.article-feature b{display:block;margin-top:40px;font-size:14px}
.article-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.article-list a{display:grid;grid-template-columns:150px 1fr;text-align:left;padding:0;border:1px solid var(--line);background:#fff;cursor:pointer}
.article-list a:hover{border-color:#d9b6ba;box-shadow:var(--shadow)}
.article-list img{height:100%;min-height:190px;object-fit:cover}
.article-list a>div{padding:24px}
.article-list h3{margin:11px 0 8px;font-size:19px;line-height:1.4}
.article-list p{margin:0;color:var(--body);font-size:12px}
.article-list b{display:block;margin-top:15px;font-size:12px}
.reading-guide{display:grid;grid-template-columns:1.1fr 1fr 1fr;align-items:center;gap:22px}
.reading-guide h2{margin:0;font-size:37px}
.reading-guide>a{position:relative;padding:30px;border:1px solid #454b52}
.reading-guide>a span{color:#d1848c;font-size:11px}
.reading-guide>a h3{margin:11px 25px 0 0;font-size:19px}
.reading-guide>a i{position:absolute;right:27px;top:30px;color:#d1848c}

/* FAQ */
.faq-section{padding-top:76px}
.faq-search{display:flex;align-items:center;width:min(780px,100%);height:62px;margin:0 auto 60px;padding-left:23px;border:1px solid var(--line-dark);background:#fff}
.faq-search i{font-size:21px}
.faq-search input{min-width:0;flex:1;border:0;padding:0 16px;outline:0}
.faq-search button{align-self:stretch;border:0;background:var(--ink);color:#fff;padding:0 28px;cursor:pointer;font-size:14px;font-weight:700}
.faq-layout{display:grid;grid-template-columns:245px 1fr;gap:66px}
.faq-categories{align-self:start;padding:23px;background:var(--silver);border:1px solid var(--line)}
.faq-categories p{margin:0 0 17px;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.12em}
.faq-categories button{width:100%;display:flex;justify-content:space-between;border:0;border-bottom:1px solid var(--line);background:none;padding:13px 4px;text-align:left;cursor:pointer;color:var(--body);font-size:14px}
.faq-categories button:last-child{border-bottom:0}
.faq-categories button.is-active{color:var(--rose-dark);font-weight:700}
.faq-categories button span{color:var(--muted);font-size:11px}
.faq-list{border-top:1px solid var(--ink)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;display:grid;grid-template-columns:50px 1fr auto;align-items:center;min-height:86px;cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary>span{color:var(--rose);font-size:11px;font-weight:750}
.faq-item summary strong{font-size:18px}
.faq-item summary i{transition:transform .2s}
.faq-item[open] summary i{transform:rotate(45deg);color:var(--rose)}
.faq-item>div{padding:0 46px 26px 50px}
.faq-item>div p{margin:0;color:var(--body)}
.faq-item>div span{display:block;margin-top:14px;color:var(--rose-dark);font-size:11px}
.compact-help{padding-top:0}
.help-strip{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:30px;padding:34px 38px;background:var(--rose-soft)}
.help-strip>div{display:flex;align-items:center;gap:14px;font-weight:700}
.help-strip>div i{color:var(--rose);font-size:25px}
.help-strip>a{font-weight:750}

/* About */
.about-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:100px}
.about-intro .section-heading{margin-bottom:25px}
.about-intro>div>p{color:var(--body)}
.about-intro .text-link{margin-top:20px}
.about-facts{border-top:1px solid var(--ink)}
.about-facts article{display:grid;grid-template-columns:42px 1fr;column-gap:15px;padding:25px 0;border-bottom:1px solid var(--line)}
.about-facts span{grid-row:1/3;color:var(--rose);font-size:12px}
.about-facts h3{margin:0;font-size:19px}
.about-facts p{margin:5px 0 0;color:var(--body);font-size:13px}
.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.principle-grid article{position:relative;padding:37px 34px;background:#fff;border:1px solid var(--line)}
.principle-grid i{font-size:31px;color:var(--rose)}
.principle-grid>article>span{position:absolute;right:28px;top:30px;color:#c6cbd0;font-size:12px}
.principle-grid h3{margin:39px 0 10px;font-size:21px}
.principle-grid p{margin:0;color:var(--body);font-size:14px}
.about-contact{padding:88px 0}
.about-contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:90px;align-items:center}
.about-contact h2{margin:0;font-size:45px;line-height:1.25}
.about-contact p{color:#bbc1c8}
.contact-lines{border-top:1px solid #4a5057}
.contact-lines a{display:grid;grid-template-columns:28px 64px 1fr;align-items:center;padding:16px 0;border-bottom:1px solid #4a5057}
.contact-lines i{color:#dc8a92;font-size:20px}
.contact-lines span{color:#9fa7b0;font-size:12px}
.contact-lines strong{font-size:14px}

/* Article */
.article-header{padding:65px 0 82px;background:var(--warm);border-bottom:1px solid var(--line)}
.breadcrumbs{display:flex;align-items:center;gap:9px;margin-bottom:56px;color:var(--muted);font-size:12px}
.breadcrumbs a:hover{color:var(--rose-dark)}
.breadcrumbs i{font-size:10px}
.article-header h1{max-width:900px;margin:21px 0 22px;font-size:clamp(49px,6vw,76px);font-weight:640;letter-spacing:-.055em;line-height:1.16}
.article-header>div>p{max-width:830px;margin:0;color:var(--body);font-size:18px;line-height:1.9}
.article-reading{padding:80px 0 100px}
.article-layout{display:grid;grid-template-columns:minmax(0,780px) 250px;justify-content:space-between;gap:80px}
.article-body{min-width:0}
.article-lead{margin:0 0 36px;padding-left:24px;border-left:3px solid var(--rose);color:#424b55;font-size:18px;line-height:1.95}
.article-image{margin:0 0 68px}
.article-image img{height:430px;object-fit:cover}
.article-image figcaption{margin-top:10px;color:var(--muted);font-size:12px}
.article-body section{position:relative;padding-top:20px;margin:0 0 63px;scroll-margin-top:110px}
.article-number{display:block;color:var(--rose);font-size:12px;font-weight:750;letter-spacing:.15em}
.article-body h2{margin:8px 0 20px;font-size:31px;line-height:1.35}
.article-body section>p{color:#59626c;font-size:16px;line-height:2}
.article-note{display:flex;gap:15px;margin-top:28px;padding:22px 24px;background:var(--rose-pale);border-left:2px solid var(--rose)}
.article-note i{flex:0 0 auto;color:var(--rose);font-size:23px;margin-top:3px}
.article-note p{margin:0;color:#59626c}
.article-body blockquote{margin:28px 0 0;padding:23px 27px;background:var(--silver);border:0;color:#3f4852;font-size:17px;font-weight:650}
.article-checklist>div{margin-top:27px;border-top:1px solid var(--line)}
.article-checklist>div p{display:grid;grid-template-columns:44px 1fr auto;align-items:center;margin:0;padding:18px 0;border-bottom:1px solid var(--line)}
.article-checklist>div p span{color:var(--rose);font-size:11px}
.article-checklist>div p i{color:var(--success)}
.article-checklist>h3{margin:36px 0 0;padding:27px;background:var(--ink);color:#fff;font-size:20px;line-height:1.6}
.article-toc{align-self:start;position:sticky;top:116px;padding:26px 24px;border:1px solid var(--line)}
.article-toc>p{margin:0 0 16px;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.12em}
.article-toc>a{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--body);font-size:13px}
.article-toc>a span{color:var(--rose);font-size:10px}
.article-toc>a:hover{color:var(--rose-dark)}
.article-toc .button{width:100%;margin-top:23px;color:#fff}
.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.related-grid a{position:relative;text-align:left;padding:31px;border:1px solid var(--line);background:#fff;cursor:pointer}
.related-grid h3{margin:17px 40px 9px 0;font-size:22px}
.related-grid p{margin:0;color:var(--body);font-size:14px}
.related-grid a>i{position:absolute;right:30px;top:35px;color:var(--rose)}

/* Contact band / footer */
.contact-wrap{padding:0 0 104px;background:#fff}
.contact-band{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:61px 68px;background:var(--rose-soft);border:1px solid #f2dcde}
.contact-band .overline{margin-bottom:15px}
.contact-band h2{margin:0;font-size:38px;letter-spacing:-.035em;line-height:1.3}
.contact-band p{margin:12px 0 0;color:var(--body)}
.contact-band .button{flex:0 0 auto}
.site-footer{padding:77px 0 0;background:var(--dark);color:#fff}
.footer-grid{display:grid;grid-template-columns:1.6fr .8fr .8fr 1.15fr;gap:65px;padding-bottom:66px}
.footer-grid h3{margin:3px 0 21px;color:#8f98a1;font-size:11px;letter-spacing:.15em;text-transform:uppercase}
.footer-grid>div:not(.footer-brand) a{display:block;margin:11px 0;color:#d3d8dd;font-size:13px}
.footer-grid a:hover{color:#efadb3}
.footer-logo{display:flex;align-items:center;gap:13px}
.footer-logo span{display:inline-flex;align-items:center;justify-content:center;width:44px;height:34px;background:var(--rose);font-size:16px;font-weight:850;font-style:italic}
.footer-logo strong{font-size:23px;letter-spacing:.04em}
.footer-brand>p{max-width:360px;margin:22px 0;color:#aeb5bd;font-size:13px}
.footer-tag{display:inline-block;padding:5px 10px;border:1px solid #4b5259;color:#bfc5cb;font-size:10px;letter-spacing:.12em}
.footer-contact a{display:flex!important;align-items:center;gap:8px}
.footer-contact a i{color:#d57c85}
.footer-contact button{border:0;border-bottom:1px solid #626970;background:none;color:#fff;padding:14px 0 5px;cursor:pointer;font-size:13px}
.footer-contact button i{margin-left:7px;color:#d57c85}
.footer-bottom{display:flex;justify-content:space-between;padding:21px 0;border-top:1px solid #3f454c;color:#8f979f;font-size:11px}

/* Dialogs */
.dialog-shell{width:min(660px,calc(100% - 32px));max-height:88vh;padding:0;border:0;border-radius:3px;box-shadow:0 30px 100px rgba(0,0,0,.25);color:var(--ink)}
.dialog-shell::backdrop{background:rgba(23,28,34,.66)}
.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;padding:35px 38px 0}
.dialog-top .overline{margin-bottom:11px}
.dialog-top h2{margin:0;font-size:29px;line-height:1.3}
.icon-button{border:1px solid var(--line);background:#fff;width:39px;height:39px;cursor:pointer}
.dialog-intro{margin:14px 38px 0;color:var(--body);font-size:13px}
.contact-dialog form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding:25px 38px 38px}
.contact-dialog label{display:grid;gap:7px;color:#4a535d;font-size:12px;font-weight:650}
.contact-dialog input,.contact-dialog textarea{width:100%;border:1px solid var(--line-dark);background:#fff;padding:12px 13px;outline:0;font-size:14px}
.contact-dialog input:focus,.contact-dialog textarea:focus{border-color:var(--rose)}
.field-full{grid-column:1/-1}
.form-actions{display:flex;gap:10px;flex-wrap:wrap}
.contact-result{margin:0 38px 38px;padding:23px;background:var(--silver)}
.contact-result h3{margin:0 0 10px}
.contact-result pre{white-space:pre-wrap;margin:0 0 17px;color:#48515b;font-family:inherit;font-size:13px}
.toast{position:fixed;z-index:200;left:50%;bottom:28px;transform:translate(-50%,20px);padding:10px 17px;background:var(--ink);color:#fff;opacity:0;visibility:hidden;transition:.2s;font-size:13px}
.toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}

@media (max-width:1120px){
  .header-shell{gap:19px}
  .brand{flex-basis:148px}
  .brand img{width:148px}
  .desktop-nav{gap:15px}
  .nav-link{font-size:13px}
  .header-cta{display:none}
  .home-hero-grid{grid-template-columns:1fr 420px;gap:55px}
  .page-hero-grid{grid-template-columns:1fr 390px;gap:60px}
}
@media (max-width:900px){
  .container{width:min(100% - 40px,var(--container))}
  .header-shell{height:72px;width:calc(100% - 32px)}
  .brand{height:44px;flex-basis:160px}
  .brand img{width:160px;height:44px}
  .desktop-nav{display:none}
  .menu-toggle{display:block;margin-left:auto}
  .mobile-panel{position:absolute;left:0;right:0;top:72px;padding:16px 20px 23px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
  .mobile-panel.is-open{display:grid}
  .mobile-panel>a,.mobile-panel summary{padding:12px 4px;border-bottom:1px solid var(--line);font-size:14px}
  .mobile-panel details>a{display:block;margin-left:15px;padding:10px;color:var(--body);font-size:13px}
  .mobile-panel summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none}
  .mobile-panel .button{margin-top:12px;color:#fff}
  .section{padding:78px 0}
  .section-heading h2{font-size:39px}
  .home-hero{padding-top:54px}
  .home-hero-grid,.page-hero-grid,.page-hero-text-only{grid-template-columns:1fr;gap:48px}
  .home-hero-copy h1,.page-hero-copy h1{font-size:56px}
  .home-hero-media img{height:480px}
  .hero-principles{margin-top:50px}
  .page-hero{padding:70px 0}
  .page-hero-media{max-width:560px}
  .service-card-grid,.service-detail-grid,.collab-grid{grid-template-columns:1fr}
  .feature-industry-grid,.industry-grid{grid-template-columns:repeat(2,1fr)}
  .home-article-grid{grid-template-columns:1fr}
  .issue-grid,.module-grid,.case-structure{grid-template-columns:repeat(2,1fr)}
  .split-media,.split-media-reverse{grid-template-columns:1fr;gap:48px}
  .split-media-reverse>figure{order:-1}
  .split-media figure img{height:440px}
  .faq-layout{grid-template-columns:1fr;gap:35px}
  .faq-categories{display:flex;gap:5px;overflow:auto;background:#fff;padding:0;border:0}
  .faq-categories p{display:none}
  .faq-categories button{width:auto;flex:0 0 auto;padding:9px 13px;border:1px solid var(--line)}
  .faq-categories button span{margin-left:8px}
  .about-intro,.about-contact-grid{grid-template-columns:1fr;gap:50px}
  .article-layout{grid-template-columns:minmax(0,1fr)}
  .article-toc{position:relative;top:auto;order:-1}
  .article-toc>a{display:inline-flex;margin-right:18px}
  .article-toc .button{width:auto;display:flex}
  .footer-grid{grid-template-columns:1.4fr repeat(2,1fr);gap:40px}
  .footer-contact{grid-column:1/-1}
}
@media (max-width:680px){
  body{font-size:15px}
  .container{width:calc(100% - 32px)}
  .section{padding:64px 0}
  .section-title-row{display:block}
  .section-title-row .section-heading{margin-bottom:25px}
  .section-heading{margin-bottom:35px}
  .section-heading h2{font-size:33px}
  .section-heading>p:last-child{font-size:15px}
  .home-hero-copy h1,.page-hero-copy h1{font-size:43px}
  .home-hero-copy>p:not(.overline):not(.hero-proof),.page-hero-copy>p:not(.overline){font-size:16px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .home-hero-media img{height:370px}
  .home-hero-media figcaption{left:14px;right:14px;bottom:14px;min-width:0}
  .hero-principles{grid-template-columns:1fr}
  .hero-principles article{padding:22px 25px}
  .service-card,.collab-grid article{padding:32px 26px}
  .check-list{grid-template-columns:1fr}
  .process-row{grid-template-columns:1fr;border-top:0}
  .process-row article,.process-row article+article{padding:21px 0;border-right:0;border-top:1px solid var(--line)}
  .process-row span{margin-bottom:10px}
  .feature-industry-grid,.industry-grid,.audience-grid,.principle-grid,.takeaway-grid{grid-template-columns:1fr}
  .home-feature-article,.article-feature{grid-template-columns:1fr}
  .home-feature-article img{min-height:0;height:260px}
  .home-feature-article>div,.article-feature>div{padding:28px}
  .home-feature-article h3,.article-feature h2{font-size:26px}
  .service-detail-card{grid-template-columns:48px 1fr}
  .service-detail-body{padding:35px 27px}
  .compare-table{overflow-x:auto}
  .compare-row{min-width:720px}
  .issue-grid,.module-grid,.case-structure{grid-template-columns:1fr}
  .module-grid article{min-height:220px}
  .module-grid h3{margin-top:35px}
  .split-media figure img{height:340px}
  .listing-toolbar{align-items:stretch;flex-direction:column}
  .filter-tabs{overflow:auto}
  .filter-tabs button{flex:0 0 auto}
  .search-box{width:100%}
  .case-row,.case-featured{grid-template-columns:1fr;gap:22px}
  .case-row img,.case-featured img{height:250px}
  .case-featured>div{padding-top:0}
  .case-featured h2,.case-row h2{font-size:24px}
  .article-list{grid-template-columns:1fr}
  .article-list a{grid-template-columns:120px 1fr}
  .reading-guide{grid-template-columns:1fr}
  .faq-search{height:auto;flex-wrap:wrap;padding:14px 14px 0}
  .faq-search input{padding:0 10px}
  .faq-search button{width:calc(100% + 28px);height:48px;margin:12px -14px 0}
  .faq-item summary{grid-template-columns:36px 1fr auto;min-height:80px}
  .faq-item summary strong{font-size:16px}
  .faq-item>div{padding-left:36px}
  .help-strip{grid-template-columns:1fr;padding:28px}
  .about-contact h2{font-size:34px}
  .article-header{padding:44px 0 60px}
  .breadcrumbs{margin-bottom:35px}
  .article-header h1{font-size:42px}
  .article-header>div>p{font-size:16px}
  .article-reading{padding:60px 0}
  .article-image img{height:270px}
  .article-body h2{font-size:27px}
  .article-toc>a{display:flex;margin-right:0}
  .related-grid{grid-template-columns:1fr}
  .contact-wrap{padding-bottom:70px}
  .contact-band{display:block;padding:39px 27px}
  .contact-band h2{font-size:31px}
  .contact-band .button{width:100%;margin-top:27px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand,.footer-contact{grid-column:1/-1}
  .footer-bottom{display:grid;gap:5px}
  .dialog-top{padding:27px 23px 0}
  .dialog-intro{margin-left:23px;margin-right:23px}
  .contact-dialog form{grid-template-columns:1fr;padding:22px 23px 28px}
  .contact-dialog label{grid-column:1/-1}
  .contact-result{margin:0 23px 28px}
}
@media (max-width:390px){
  .home-hero-copy h1,.page-hero-copy h1,.article-header h1{font-size:37px}
  .home-hero-media img{height:320px}
  .industry-card img{height:172px}
  .article-list a{grid-template-columns:1fr}
  .article-list img{height:190px}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important}
}

/* Fidelity refinements for the selected ten-page mock */
.home-article-strip{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}
.home-article-strip>a{position:relative;display:block;padding:28px 34px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.home-article-strip>a:last-child{border-right:0}
.home-article-strip h3{margin:14px 38px 8px 0;font-size:21px;line-height:1.4}
.home-article-strip p{margin:0;color:var(--body);font-size:13px}
.home-article-strip>a>i{position:absolute;right:31px;top:32px;color:var(--rose)}
@media (min-width:901px){
  .page-home .section{padding:80px 0}
  .page-home .home-hero{padding-top:58px}
  .page-home .home-hero-media img{height:440px}
  .page-home .hero-principles{margin-top:48px}
  .page-home .service-card{padding:34px 38px}
  .page-home .service-card-top{margin-bottom:27px}
  .page-home .feature-industry img{height:205px}
  .page-services .section{padding:84px 0}
  .page-operation .section,.page-training .section{padding:78px 0}
  .page-operation .dark-process{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #454b52}
  .page-operation .dark-process article{display:block;padding:27px 25px;min-height:215px;border-right:1px solid #454b52;border-bottom:0}
  .page-operation .dark-process article:last-child{border-right:0}
  .page-operation .dark-process>article>span{display:block;margin-bottom:35px}
  .page-operation .dark-process article>div{padding-right:0}
  .page-operation .dark-process i{position:static;display:block;margin-bottom:14px;font-size:20px}
  .page-operation .dark-process h3{font-size:20px}
  .page-operation .dark-process p{font-size:13px;line-height:1.65}
  .page-operation .split-media figure img,.page-training .split-media figure img{height:430px}
  .page-industries .section{padding:86px 0}
  .page-cases .section,.page-insights .section{padding:84px 0}
  .page-about .section{padding:88px 0}
  .page-article .article-header{padding:42px 0 48px}
  .page-article .breadcrumbs{margin-bottom:31px}
  .page-article .article-header h1{max-width:880px;margin:16px 0 15px;font-size:56px}
  .page-article .article-header>div>p{font-size:16px;line-height:1.75}
  .page-article .article-reading{padding:48px 0 64px}
  .page-article .article-layout{grid-template-columns:minmax(0,880px) 220px;gap:55px}
  .page-article .article-lead{margin-bottom:26px;font-size:16px;line-height:1.75}
  .page-article .article-image{margin-bottom:38px}
  .page-article .article-image img{height:320px}
  .page-article .article-body section{padding-top:8px;margin-bottom:34px}
  .page-article .article-body h2{margin:6px 0 12px;font-size:27px}
  .page-article .article-body section>p{font-size:14px;line-height:1.82}
  .page-article .article-note{margin-top:18px;padding:16px 20px}
  .page-article .article-body blockquote{margin-top:18px;padding:18px 22px;font-size:15px}
  .page-article .article-checklist>div{margin-top:18px}
  .page-article .article-checklist>div p{padding:13px 0}
  .page-article .article-checklist>h3{margin-top:23px;padding:21px;font-size:17px}
  .page-article .related-articles{padding:68px 0}
  .page-article .contact-wrap{padding-bottom:64px}
  .page-article .contact-band{padding:43px 55px}
}
@media (max-width:680px){
  .home-article-strip{grid-template-columns:1fr}
  .home-article-strip>a{border-right:0}
}


