/* HirayaVA Digital + Talent Solutions pillar article · visual refinement 2026-09-02 */

/* ---------- Article hero: editorial, not oversized ---------- */
.dt-article-page .growth-hero{
  min-height:calc(100svh - 78px) !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  padding:58px 0 52px !important;
  background:#07162d !important;
}
.dt-article-page .growth-hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr) !important;
  gap:52px !important;
  align-items:end !important;
}
.dt-article-page .growth-hero-copy{
  max-width:790px !important;
}
.dt-article-page .growth-breadcrumbs{
  margin-bottom:22px !important;
  font-size:.92rem !important;
}
.dt-article-page .growth-hero .v2-kicker{
  margin-bottom:18px !important;
}
.dt-article-page .growth-hero h1{
  max-width:790px !important;
  margin:0 0 22px !important;
  font-size:clamp(3rem,4.35vw,4.75rem) !important;
  line-height:1.01 !important;
  letter-spacing:-.035em !important;
  text-wrap:balance;
}
.dt-article-page .growth-hero h1 em{
  display:block !important;
  margin-top:7px !important;
  font-size:.84em !important;
  line-height:1.04 !important;
  letter-spacing:-.025em !important;
}
.dt-article-page .growth-hero-copy > p:not(.v2-kicker):not(.growth-note){
  max-width:730px !important;
  margin:0 !important;
  font-size:1.08rem !important;
  line-height:1.65 !important;
}
.dt-article-page .growth-note{
  display:block !important;
  width:auto !important;
  max-width:none !important;
  margin:22px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:rgba(255,255,255,.68) !important;
  font-size:.94rem !important;
  line-height:1.5 !important;
}

/* ---------- Compact contents panel ---------- */
.dt-article-page .growth-hero-panel{
  align-self:center !important;
  width:100% !important;
  max-width:360px !important;
  margin-left:auto !important;
  padding:26px 28px !important;
  border-radius:20px !important;
}
.dt-article-page .growth-hero-panel h2{
  margin:7px 0 15px !important;
  font-size:clamp(1.75rem,2.3vw,2.35rem) !important;
  line-height:1.08 !important;
}
.dt-article-page .growth-hero-panel ul{
  margin:0 !important;
  padding-left:20px !important;
}
.dt-article-page .growth-hero-panel li{
  margin:0 0 8px !important;
  line-height:1.4 !important;
  font-size:.94rem !important;
}
.dt-article-page .growth-hero-panel li:last-child{margin-bottom:0 !important}

/* ---------- Featured artwork: clear bridge from hero to article ---------- */
.dt-featured{
  min-height:calc(100svh - 78px) !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  padding:46px 0 !important;
  background:#f7f2e9 !important;
  overflow:hidden !important;
}
.dt-featured .v2-shell{
  width:min(1080px,calc(100% - 64px)) !important;
  max-width:1080px !important;
  margin-inline:auto !important;
}
.dt-featured img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  border-radius:20px !important;
  border:1px solid rgba(7,22,45,.10) !important;
  box-shadow:0 18px 45px rgba(7,22,45,.11) !important;
}

/* ---------- Reading proportions ---------- */
.dt-intro-section{
  padding-top:62px !important;
  padding-bottom:68px !important;
}
.dt-intro-grid{
  display:grid !important;
  grid-template-columns:minmax(0,760px) minmax(290px,340px) !important;
  justify-content:center !important;
  gap:56px !important;
  align-items:start !important;
}
.dt-intro-grid > div > p{
  line-height:1.72 !important;
}
.dt-article-page .growth-section-head h2{
  max-width:840px !important;
  margin-bottom:26px !important;
  font-size:clamp(2.2rem,3.25vw,3.35rem) !important;
  line-height:1.09 !important;
  letter-spacing:-.025em !important;
  text-wrap:balance;
}
.dt-article-page .growth-section > .v2-shell:not(.dt-intro-grid){
  max-width:1000px !important;
}
.dt-article-page .growth-section > .v2-shell:not(.dt-intro-grid) > p,
.dt-article-page .growth-section > .v2-shell:not(.dt-intro-grid) > ul,
.dt-article-page .growth-section > .v2-shell:not(.dt-intro-grid) > .dt-pullquote{
  max-width:790px;
}
.dt-article-page .growth-section p{
  line-height:1.72 !important;
}

/* ---------- Hiraya approach card ---------- */
.dt-side-note{
  position:sticky !important;
  top:106px !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  padding:28px 28px 30px !important;
  border-radius:20px !important;
  background:#07162d !important;
  color:#fff !important;
  box-shadow:0 18px 40px rgba(7,22,45,.12) !important;
}
.dt-side-note .v2-kicker{
  margin:0 0 12px !important;
  color:#e6b64c !important;
}
.dt-side-note h2{
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:clamp(2rem,2.35vw,2.55rem) !important;
  line-height:1.06 !important;
  letter-spacing:-.02em !important;
}
.dt-side-note p{
  margin:0 0 18px !important;
  color:rgba(255,255,255,.76) !important;
  font-size:.98rem !important;
  line-height:1.62 !important;
}
.dt-side-note a{
  display:inline-block !important;
  color:#e6b64c !important;
  font-weight:700 !important;
  line-height:1.4 !important;
}

/* ---------- Supporting article components ---------- */
.dt-pullquote{
  margin:28px 0 !important;
  padding:22px 24px !important;
  border-left:4px solid #e6b64c !important;
  background:#f6f1e8 !important;
  border-radius:0 16px 16px 0 !important;
}
.dt-pullquote p{
  margin:0 !important;
  font-size:1.08rem !important;
  line-height:1.65 !important;
  color:#07162d !important;
}
.dt-service-links{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:24px;
}
.dt-service-links a{
  display:block;
  padding:18px;
  border:1px solid rgba(7,22,45,.13);
  border-radius:14px;
  background:#fff;
  text-decoration:none;
}
.dt-service-links a strong{display:block;color:#07162d;margin-bottom:6px}
.dt-service-links a span{color:#565d68;font-size:.94rem;line-height:1.5}
.dt-checklist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:24px 0;
  padding:0;
  list-style:none;
}
.dt-checklist li{
  position:relative;
  padding:16px 16px 16px 46px;
  border:1px solid rgba(7,22,45,.12);
  border-radius:14px;
  background:#fff;
}
.dt-checklist li::before{
  content:"✓";
  position:absolute;
  left:17px;
  top:14px;
  color:#8a5c0f;
  font-weight:800;
}
.dt-faq details{
  border-top:1px solid rgba(7,22,45,.13);
  padding:18px 0;
}
.dt-faq details:last-child{border-bottom:1px solid rgba(7,22,45,.13)}
.dt-faq summary{cursor:pointer;font-weight:700;color:#07162d}
.dt-faq details p{margin:12px 0 0}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
  .dt-article-page .growth-hero-grid{
    grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr) !important;
    gap:36px !important;
  }
  .dt-intro-grid{
    grid-template-columns:minmax(0,1fr) minmax(270px,320px) !important;
    gap:36px !important;
  }
}
@media (max-width:820px){
  .dt-article-page .growth-hero{
    min-height:0 !important;
    display:block !important;
    padding:48px 0 44px !important;
  }
  .dt-featured{
    min-height:0 !important;
    display:block !important;
  }
  .dt-article-page .growth-hero-grid,
  .dt-intro-grid,
  .dt-service-links,
  .dt-checklist{
    grid-template-columns:1fr !important;
  }
  .dt-article-page .growth-hero-copy,
  .dt-article-page .growth-hero-panel{
    max-width:none !important;
  }
  .dt-article-page .growth-hero-panel{
    margin-top:8px !important;
    margin-left:0 !important;
  }
  .dt-side-note{
    position:static !important;
    max-width:520px !important;
  }
  .dt-featured{
    padding:32px 0 42px !important;
  }
}
@media (max-width:640px){
  .dt-article-page .growth-hero h1{
    font-size:clamp(2.55rem,12vw,3.55rem) !important;
    line-height:1.02 !important;
  }
  .dt-article-page .growth-hero h1 em{
    font-size:.9em !important;
  }
  .dt-article-page .growth-hero-panel{
    padding:22px !important;
  }
  .dt-featured img{
    border-radius:14px !important;
  }
  .dt-intro-section{
    padding-top:46px !important;
    padding-bottom:52px !important;
  }
  .dt-side-note h2{
    font-size:2rem !important;
  }
}
