/* Local homepage detail pass. Shared inner-page styles stay untouched. */
.home-sandeep {
  --hp-detail-shadow:0 12px 28px -18px rgba(26,35,52,.2);
  --hp-detail-ease:cubic-bezier(.2,.7,.2,1);
}

/* Paper texture sits behind the content; resource images and cards stay crisp. */
body.home-sandeep {
  --hp-paper-texture:url('/assets/home-paper-grain.svg');
  background-color:#fdfdfc;
  background-image:var(--hp-paper-texture);
  background-repeat:repeat;
  background-size:240px 240px;
}
.home-sandeep .hp-hero {
  position:relative;
  isolation:isolate;
}
.home-sandeep .hp-hero::before {
  content:"";
  position:absolute;
  inset:12px 0 20px;
  z-index:-1;
  pointer-events:none;
  background-image:radial-gradient(circle,rgba(36,37,41,.17) .7px,transparent .95px);
  background-size:22px 22px;
  -webkit-mask-image:radial-gradient(ellipse at 78% 42%,#000 8%,rgba(0,0,0,.48) 48%,transparent 78%);
  mask-image:radial-gradient(ellipse at 78% 42%,#000 8%,rgba(0,0,0,.48) 48%,transparent 78%);
}
.home-sandeep .hp-library-band {
  background-image:var(--hp-paper-texture);
  background-size:240px 240px;
}
@media (max-width:760px) {
  .home-sandeep .hp-hero::before {
    inset:0;
    opacity:.6;
    background-size:24px 24px;
    -webkit-mask-image:radial-gradient(ellipse at 80% 74%,#000,transparent 72%);
    mask-image:radial-gradient(ellipse at 80% 74%,#000,transparent 72%);
  }
}
@media print, (forced-colors:active) {
  body.home-sandeep,.home-sandeep .hp-library-band {background-image:none}
  .home-sandeep .hp-hero::before {display:none}
}
.hp-section-heading h2 {line-height:1.4;letter-spacing:-.65px}
.hp-eyebrow {display:flex;align-items:center;gap:10px}
.hp-eyebrow::before {content:"";width:16px;height:1px;flex:none;background:currentColor;opacity:.55}
.hp-selected {padding-top:30px;border-top:1px solid var(--hp-line)}

/* Resource prints: fine framing, legible attribution and a route into the shelf. */
.hp-showcase-link {border-color:#e0e3e9}
.hp-showcase-media {border-block:1px solid rgba(25,31,43,.045)}
.hp-showcase-caption small {color:#6b717b;font-size:11px}
.hp-showcase-caption .hp-icon-arrow {transition:color .22s,transform .22s var(--hp-detail-ease)}
.hp-showcase-link:is(:hover,:focus-visible) .hp-icon-arrow {color:var(--hp-blue);transform:translate(2px,-2px)}


/* Three small, deliberately schematic illustrations of the actual content. */
.hp-entry-label {margin-bottom:18px}
.hp-entry-art {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:132px;
  margin-bottom:24px;
  overflow:hidden;
  border-radius:9px;
  border:1px solid #edf0f4;
  background:#f8f9fb;
  color:#66738c;
  pointer-events:none;
}
.hp-entry-art::before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.28;
  background-image:radial-gradient(#b4bdce .65px,transparent .65px);
  background-size:13px 13px;
}
.hp-art-paper {
  position:relative;
  display:flex;
  flex-direction:column;
  width:160px;
  gap:10px;
  padding:16px 18px;
  border:1px solid #e3e7ee;
  border-radius:5px;
  background:#fff;
  box-shadow:5px 5px 0 -1px #f0f2f6,5px 5px 0 0 #e4e8ee;
  transform:rotate(-5deg);
  transition:transform .3s var(--hp-detail-ease);
}
.hp-art-paper strong {font-size:12px;color:#313945;font-weight:550;letter-spacing:.4px}
.hp-art-paper>span {font-size:9px;letter-spacing:.3px;color:#8190aa}
.hp-art-paper i {display:block;height:3px;border-radius:2px;background:#e4e8ee;width:100%}
.hp-art-paper i:last-child {width:62%;background:var(--hp-blue)}
.hp-art-journey {position:relative;display:flex;align-items:center;gap:9px}
.hp-art-journey>span {display:flex;flex-direction:column;align-items:center;gap:7px;font-size:10px}
.hp-art-journey i {display:grid;place-items:center;width:38px;height:38px;border:1px solid #dfe5ef;border-radius:11px;background:#fff;color:#687589;font:normal 11px var(--hp-sans)}
.hp-art-journey b {font-weight:400;color:#a6b2c7;margin-bottom:21px}
.hp-art-journey>span:nth-of-type(2) i {color:var(--hp-blue);background:var(--hp-blue-soft);border-color:var(--hp-blue-line)}
.hp-art-window {position:relative;width:178px;border:1px solid #dfe4ed;border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 4px 12px #26375405;transform:rotate(3deg);transition:transform .3s var(--hp-detail-ease)}
.hp-art-window-bar {display:flex;align-items:center;gap:3px;height:19px;padding-left:8px;border-bottom:1px solid #edf0f4}
.hp-art-window-bar i {width:3px;height:3px;border-radius:50%;background:#cbd2dc}
.hp-art-window-body {display:grid;grid-template-columns:54px 1fr;min-height:70px}
.hp-art-window-side {display:flex;flex-direction:column;gap:7px;padding:12px 9px;border-right:1px solid #edf0f4;background:#fafbfc}
.hp-art-window-side i {height:3px;border-radius:2px;background:#dce2ed}
.hp-art-window-side i:first-child {background:var(--hp-blue)}
.hp-art-window-content {display:flex;flex-direction:column;gap:8px;padding:10px 12px}
.hp-art-window-content strong {font-size:10px;font-weight:500;color:#56647c}
.hp-art-window-content i {height:4px;width:85%;background:#e6eaf2;border-radius:2px}
.hp-art-window-content i:last-child {height:9px;width:28px;background:var(--hp-blue-soft);border:1px solid var(--hp-blue-line)}
.hp-entry-action {display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding-top:16px;border-top:1px solid #eceef2}
.hp-entry-meta {font-size:11px;color:#76808f;white-space:nowrap}
.hp-entry-meta strong {font-weight:600;color:#303641;font-variant-numeric:tabular-nums}
.hp-entry {transition:background .25s,border-color .25s,box-shadow .25s}
.hp-entry:is(:hover,:focus-visible) {background:#fff;border-color:var(--hp-blue-line);box-shadow:var(--hp-detail-shadow)}
.hp-entry:focus-visible .hp-icon-arrow {color:var(--hp-blue);transform:translate(2px,-2px)}

/* Numbers describe the current library, not decorative marketing statistics. */
.hp-resource {display:flex;flex-direction:column;transition:transform .25s var(--hp-detail-ease),border-color .25s,box-shadow .25s}
.hp-resource p {margin-bottom:19px}
.hp-resource-count {display:flex;align-items:baseline;gap:5px;margin-top:auto;padding-top:13px;border-top:1px solid #eef0f4;color:#7b8390;font-size:10px}
.hp-resource-count strong {color:var(--hp-ink);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.4px}
.hp-resource-top>svg {padding:7px;box-sizing:content-box;width:25px;height:25px;background:#f7f8fb;border:1px solid #eceff5;border-radius:11px;stroke:#65728a}
.hp-resource:is(:hover,:focus-visible) {box-shadow:var(--hp-detail-shadow);border-color:var(--hp-blue-line)}
.hp-resource:is(:hover,:focus-visible) .hp-resource-top>.hp-icon-arrow {color:var(--hp-blue)}
.hp-library-bottom {border-top:1px solid #e5e7ec;margin-top:22px;padding-top:14px}

/* Quiet, consistent feedback across reading links, stories and buttons. */
.hp-button:active {transform:translateY(0) scale(.98)}
.hp-button:focus-visible {outline-offset:5px}
.hp-video-image {box-shadow:0 5px 20px -16px rgba(24,33,51,.25)}
.hp-video .hp-meta {display:inline-flex;align-items:center;min-height:24px;padding:2px 9px;border:1px solid #e7eaf0;border-radius:5px;background:#fafbfc;font-size:10px;letter-spacing:.2px;color:#64718a}
.hp-video:focus-visible img {transform:scale(1.025)}
.hp-video:is(:hover,:focus-visible) .hp-video-watch {color:var(--hp-blue)}
.hp-video-watch {border-top:1px solid #eaedf2;padding-top:12px;transition:color .2s}
.hp-story {background:#fff;transition:border-color .2s,box-shadow .2s}
.hp-story:is(:hover,:focus-visible) {border-color:#bfc7d6;box-shadow:var(--hp-detail-shadow)}
.hp-story-tag>span:first-child {padding:3px 8px;border:1px solid #e7eaf0;background:#fafbfc;border-radius:5px;white-space:nowrap}
.hp-story-outcome strong {color:var(--hp-ink);font-weight:650;font-variant-numeric:tabular-nums}
.hp-about-mark {border-left-color:var(--hp-blue-line)}
.hp-footer-bottom>a:last-child {min-height:36px;display:inline-flex;align-items:center;gap:8px}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .hp-entry:is(:hover,:focus-visible) .hp-art-paper {transform:translateY(-2px) rotate(-1deg)}
  .hp-entry:is(:hover,:focus-visible) .hp-art-window {transform:translateY(-2px) rotate(0deg)}
}
@media (max-width:1100px) {
  .hp-entry-art {height:118px;margin-bottom:21px}
  .hp-art-paper {width:146px;padding:13px 15px}
  .hp-art-window {width:154px}
  .hp-art-journey {gap:6px}
  .hp-art-journey i {width:32px;height:34px}
}
@media (max-width:900px) and (min-width:761px) {
  .hp-showcase-caption small {font-size:10px}
  .hp-entry-meta {font-size:10px}
  .hp-entry-action {flex-wrap:wrap}
}
@media (max-width:760px) {
  .hp-selected {padding-top:25px}
  .hp-entry-art {height:112px;margin-bottom:18px}
  .hp-entry-action {padding-top:13px}
  .hp-resource-count {padding-top:11px}
  .hp-library-bottom {margin-top:18px}
  .hp-story-tag {flex-wrap:wrap;gap:8px}
  .hp-section-heading h2 {letter-spacing:-.5px}
}
@media (max-width:480px) {
  .hp-entry-art {display:none}
}
@media (prefers-reduced-motion:reduce) {
  .hp-button:active,.hp-resource:hover,.hp-video:hover img,.hp-video:focus-visible img {transform:none}
  .hp-showcase-link:is(:hover,:focus-visible) .hp-icon-arrow {transform:none}
}

/* All homepage section and card headings share the hero typeface. */
.home-sandeep main :is(h2,h3),
.home-sandeep .hp-showcase-caption strong {
  font-family:"CE Hero FangYuan",var(--hp-display);
  font-synthesis:none;
}
.home-sandeep main .hp-video h3 {
  font-family:var(--hp-display);
  font-weight:550;
}

/* Navigation uses ink for hover, keyboard focus and the pressed state. */
.home-sandeep :is(.hp-desktop-nav,.hp-mobile-nav) a:is(:hover,:active,:focus-visible,[aria-current="page"]) {
  color:#16181c;
  font-weight:650;
}
.home-sandeep :is(.hp-desktop-nav,.hp-mobile-nav) a:focus-visible {outline-color:#16181c}

/* 44px controls + 10px padding + 2px border: 62px becomes 56px. */
.home-sandeep .hp-header.is-scrolled .hp-nav-shell {padding-block:5px}
@media (max-width:760px) {
  /* The mobile shell becomes 54px instead of 60px. */
  .home-sandeep .hp-header.is-scrolled .hp-nav-shell {padding-block:4px}
}

/* All phrases share one grid cell, so cycling never changes the hero height. */
#hero-title .hp-slogan-window {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  overflow:hidden;
  overflow:clip;
  padding-block:.18em;
  margin-block:-.18em;
}
#hero-title .hp-slogan {
  grid-area:1 / 1;
  justify-self:start;
  opacity:0;
  transform:translateY(.5em);
  transition:opacity .55s ease,transform .55s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
  user-select:none;
}
#hero-title .hp-slogan.is-active {
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
  user-select:text;
}
#hero-title .hp-slogan.is-leaving {
  opacity:0;
  transform:translateY(-.5em);
  transition:opacity .4s ease,transform .4s cubic-bezier(.7,0,.84,0);
}
#hero-title:focus-visible {
  outline:2px solid var(--hp-blue);
  outline-offset:8px;
  border-radius:4px;
}
@media (max-width:760px) {
  #hero-title .hp-slogan {transform:translateY(.35em)}
  #hero-title .hp-slogan.is-active {transform:translateY(0)}
  #hero-title .hp-slogan.is-leaving {transform:translateY(-.35em)}
}
@media (prefers-reduced-motion:reduce) {
  #hero-title .hp-slogan {transition:none;transform:none}
}

/* Keep consultation controls on the homepage accent palette. */
body.home-sandeep .ce-coaching-trigger:focus-visible,
body.home-sandeep #ce-coaching-dialog button:focus-visible {outline-color:var(--hp-blue)}

/* A light coaching invitation leads into the charcoal footer. */
.home-sandeep .hp-coaching-section {padding-bottom:64px}
.home-sandeep .hp-coaching {
  background:#f7f8fb;
  background-image:linear-gradient(125deg,#fff 0%,#f7f8fb 70%,#f2f4f8 100%);
  color:var(--hp-ink);
  border-color:#dfe3ea;
  box-shadow:0 12px 32px -24px rgba(26,35,52,.14),inset 0 1px 0 #fff;
}
.home-sandeep .hp-coaching .hp-eyebrow {color:#596375}
.home-sandeep .hp-coaching .hp-eyebrow::before {background:var(--hp-blue);opacity:1}
.home-sandeep .hp-coaching h2 {color:var(--hp-ink)}
.home-sandeep .hp-coaching>div>p:not(.hp-eyebrow) {color:var(--hp-copy)}
.home-sandeep .hp-coaching-talk {color:var(--hp-ink)}
.home-sandeep .hp-coaching-talk:is(:hover,:focus-visible) {color:var(--hp-blue)}
.home-sandeep .hp-coaching .hp-support-list {border-top-color:#dde2ea}
.home-sandeep .hp-coaching .hp-support-list>div {border-bottom-color:#dde2ea}
.home-sandeep .hp-coaching .hp-support-list>div>span {color:var(--hp-blue);font-weight:500}
.home-sandeep .hp-coaching .hp-support-list p {color:var(--hp-ink)}
.home-sandeep .hp-coaching .hp-support-list small {color:var(--hp-copy)}
.home-sandeep .hp-coaching .hp-support-list i {color:#727d90}
@media (max-width:760px) {
  .home-sandeep .hp-coaching-section {padding-bottom:40px}
}

/* A full-width charcoal footer, with content aligned to the page grid. */
.home-sandeep .hp-footer {
  padding:48px 0 24px;
  border-top:1px solid #2d3036;
  background:#202226;
  background-image:url('/assets/home-footer-grain.svg'),linear-gradient(115deg,#24272c 0%,#202226 58%,#1c1e22 100%);
  background-size:200px 200px,100% 100%;
  background-repeat:repeat,no-repeat;
  color:#f3f4f6;
}
.home-sandeep .hp-footer-main {gap:32px}
.home-sandeep .hp-footer .hp-brand {color:#f3f4f6;gap:12px}
.home-sandeep .hp-footer .hp-brand img {
  width:36px;
  height:36px;
  border-radius:50%;
}
.home-sandeep .hp-footer .hp-brand-en {color:#aeb3bd;letter-spacing:1px}
.home-sandeep .hp-footer-links {
  color:#c3c7cf;
  font-size:13px;
  gap:8px 28px;
  flex-wrap:wrap;
}
.home-sandeep .hp-footer-links button {font-size:13px}
.home-sandeep .hp-footer-bottom {
  margin-top:32px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.12);
  color:#aeb3bd;
  font-size:12px;
}
.home-sandeep .hp-footer-bottom>a:last-child {
  padding:5px 13px;
  min-height:36px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:100px;
  color:#dce0e7;
  background:rgba(255,255,255,.025);
}
.home-sandeep .hp-footer a,
.home-sandeep .hp-footer button {
  text-underline-offset:6px;
  text-decoration-thickness:2px;
  transition:color .2s,background-color .2s,border-color .2s;
}
.home-sandeep .hp-footer a:is(:hover,:focus-visible),
.home-sandeep .hp-footer button:is(:hover,:focus-visible) {
  color:#fff;
  text-decoration:underline;
  text-decoration-color:var(--hp-blue);
}
.home-sandeep .hp-footer .hp-brand:is(:hover,:focus-visible) {text-decoration:none}
.home-sandeep .hp-footer-bottom>a:last-child:is(:hover,:focus-visible) {
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.4);
}
.home-sandeep .hp-footer :is(a,button):focus-visible {
  outline:2px solid #f3f4f6;
  outline-offset:5px;
}
@media (max-width:760px) {
  .home-sandeep .hp-footer {padding:36px 0 24px}
  .home-sandeep .hp-footer-main {gap:22px}
  .home-sandeep .hp-footer-links {gap:4px 20px}
  .home-sandeep .hp-footer-bottom {margin-top:24px;gap:10px 16px}
  .home-sandeep .hp-footer-bottom>span {flex-basis:100%}
  .home-sandeep .hp-footer-bottom>a:last-child {margin-left:auto}
}
@media (max-width:359px) {
  .home-sandeep .hp-footer-bottom {font-size:11px}
  .home-sandeep .hp-footer-bottom>a:last-child {padding-inline:10px}
}
@media print, (forced-colors:active) {
  .home-sandeep .hp-footer,.home-sandeep .hp-coaching {background-image:none}
}

/* Reading scale: meaningful labels stay legible at every breakpoint. */
.home-sandeep :is(.hp-eyebrow,.hp-entry-label,.hp-entry-meta,.hp-resource-count,
  .hp-video .hp-meta,.hp-story-tag,.hp-story-details dt,.hp-story-outcome,
  .hp-story-disclaimer,.hp-support-list small,.hp-brand-en,.hp-footer-bottom,
  .hp-showcase-caption small,.hp-collage-reset) {
  font-size:var(--ce-text-xs);line-height:var(--ce-leading-label);
}
.home-sandeep :is(.hp-entry-meta,.hp-resource-count,.hp-showcase-caption small) {color:var(--ce-muted)}
.home-sandeep .hp-showcase-caption strong {font-size:var(--ce-text-sm);line-height:1.5}
.home-sandeep .hp-showcase-caption>span:first-child {min-width:0;overflow-wrap:anywhere}
.home-sandeep .hp-hero-description {font-size:var(--ce-text-base)}
.home-sandeep .hp-hero-credential {font-size:var(--ce-text-xs)}
.home-sandeep :is(.hp-button,.hp-coaching .hp-button,.hp-hero .hp-button,
  .hp-text-link,.hp-coaching-talk,.hp-resource p) {font-size:var(--ce-text-sm)}
.home-sandeep :is(.hp-resource p,.hp-story-details) {line-height:var(--ce-leading-copy)}
.home-sandeep :is(.hp-video-watch,.hp-library-bottom,.hp-library-bottom a) {font-size:var(--ce-text-xs)}
.home-sandeep .hp-video h3 {font-size:var(--ce-text-base)}
.home-sandeep :is(.hp-header .hp-nav-contact,.hp-collage-reset) {min-height:var(--ce-target)}
.home-sandeep .hp-header .hp-nav-contact {font-size:var(--ce-text-sm)}
.home-sandeep .hp-footer :is(.hp-footer-links a,.hp-footer-links button,.hp-footer-bottom>a:last-child) {
  display:inline-flex;align-items:center;min-height:var(--ce-target);
}
@media(max-width:760px) {
  .home-sandeep .hp-mobile-nav a {font-size:var(--ce-text-sm)}
  .home-sandeep .hp-intro-tag {font-size:var(--ce-text-xs)}
  .home-sandeep .hp-story-details {font-size:var(--ce-text-sm)}
  .home-sandeep .hp-story-tag {flex-wrap:wrap;gap:8px}
  .home-sandeep .hp-resource {min-width:0}
  .home-sandeep .hp-resource p {overflow-wrap:anywhere}
  .home-sandeep .hp-actions {flex-wrap:wrap}
  .home-sandeep .hp-video-grid {gap:20px}
}
@media(max-width:420px) {
  .home-sandeep .hp-video-grid {grid-template-columns:1fr}
  .home-sandeep .hp-video h3 {font-size:var(--ce-text-card)}
}
