/*CS_hero*/
.hero{padding:0 0 100px;}
.hero-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px;gap:48px;}
.hero-top .meta{display:flex;gap:32px;flex-wrap:wrap;}
.hero-top .meta div{font-weight:600;font-size:12px;line-height:16px;letter-spacing:0;text-transform:uppercase;color:#7a7a7a;}
.hero-top .meta div span{font-size:20px;line-height:28px;letter-spacing:.05em;color:#000;margin-top:8px;display:block;font-family:'Athletic Pro Slanted'!important;font-weight:700;font-style:italic;}
.h-display{font-size:60px;line-height:70px;letter-spacing:.05em;}
.hero h1{margin-bottom:12px;}
.hero .h-sub{max-width:1000px;font-size:28px;line-height:36px;letter-spacing:.05em;color:#7a7a7a;text-transform:uppercase;font-family:'Athletic Pro Slanted'!important;font-weight:700;font-style:italic;}
.hero .h-sub strong{color:#000;font-family:'Athletic Pro Slanted'!important;font-weight:700;font-style:italic;}
.hero-img{margin-top:56px;aspect-ratio:21 / 9;}
.hero-img img{object-fit:cover;}
/*CS_quick-overview*/
.qo{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;margin-top:32px;}
.qo-card{background:#f4f4f4;padding:48px;}
.qo-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 48px;}
.qo-grid .row{border-top:2px solid #000;padding-top:14px;}
.qo-grid .row.full{grid-column:1/-1;}
.qo-grid .row .k{color:#7a7a7a;margin-bottom:6px;}
.qo-grid .row .v{font-weight:500;color:#000;}
.qo-map{position:relative;}
.qo-map .img-ph{height:100%;min-height:380px;}
/*CS_client-context*/
.ctx{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:start;}
.ctx p+p{margin-top:18px;}
.ctx .portrait{aspect-ratio:4 / 5;}
/*CS_challenge*/
.challenge .diagram{position:relative;margin-top:32px;}
.challenge .legend{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.challenge .legend .item{display:flex;gap:14px;align-items:flex-start;}
.challenge .legend .num,.timeline .step .num{letter-spacing:0;font-family:'Athletic Pro Slanted'!important;font-weight:700;font-style:italic;}
.challenge .legend .num{display:flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border-radius:50%;color:#fff;background:#f00a96;font-size:14px;line-height:1;margin-top:2px;}
.challenge .legend .item p{font-size:15px;}
.challenge .legend .item strong{display:block;color:#000;font-weight:700;margin-bottom:4px;}
/*CS_solution*/
.solution h2{color:#fff;}
.solution .copy{display:grid;grid-template-columns:1fr 1.4fr;gap:48px;align-items:start;}
.solution ul{font-size:16px;color:rgba(255,255,255,.85);}
.solution ul li{line-height:2;}
.solution ul li span{color:var(--color-primary);letter-spacing:.1em;font-size:13px;font-family:'Athletic Pro Slanted'!important;font-weight:700;font-style:italic;}
.solution .hotspot-img{margin-top:32px;border:1px solid rgba(255,255,255,.08);}
/*CS_execution*/
.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;position:relative;}
.timeline::before{content:"";position:absolute;left:7%;right:7%;top:32px;height:2px;background:#ccc;z-index:0;}
.timeline .step{position:relative;background:#fff;border:1px solid #e5e5e5;padding:24px;z-index:1;}
.timeline .step .num{width:64px;height:64px;border-radius:50%;background:#000;color:var(--color-primary);font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.timeline .step .tag{display:inline-block;background:#f4f4f4;padding:4px 10px;margin-bottom:12px;}
.timeline .step h4{margin-bottom:8px;}
.timeline .step p{font-size:15px;}
/*CS_result*/
.result{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start;}
.result ul{list-style:none;}
.result ul li{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid #e5e5e5;align-items:flex-start;}
.result ul li .check{flex:0 0 28px;height:28px;border-radius:50%;background:var(--color-primary);color:#000;display:flex;align-items:center;justify-content:center;font-weight:700;margin-top:2px;font-size:14px;}
.result ul li p{font-size:16px;color:#000;}
/*CS_highlight*/
.highlight{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;background:#000;padding:48px;border-left:6px solid var(--color-primary);}
.highlight .mark{font-size:96px;line-height:.8;color:var(--color-primary);font-family:'Athletic Pro Slanted'!important;font-weight:700;font-style:italic;}
.highlight h3{margin-bottom:10px;color: #fff;}
.highlight p{font-size:18px;color:rgba(255,255,255,.85);}
.highlight .by{margin-top:14px;color:var(--color-primary);}