/* Hiện Diện Số landing page. Built on top of base.css tokens and containers. */
:root {
  --hds-ink: #17182f;
  --hds-paper: #fff8f5;
  --hds-pink: #ff637b;
  --hds-blue: #437bea;
  --hds-purple: #a747dc;
  --hds-cyan: #23acd5;
  --hds-green: #56c989;
}

body.hds-page { background: linear-gradient(180deg, #fff 0%, #fff6f1 42%, #f6f0ff 100%); color: var(--hds-ink); }
.hds-page p { margin: 0; }
.hds-page h1, .hds-page h2, .hds-page h3 { margin: 0; letter-spacing: -0.04em; }
.hds-header { position: absolute; inset: 0 0 auto; z-index: 20; color: #fff; }
.hds-header__inner { min-height: 86px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; }
.hds-brand { display: flex; align-items: center; gap: 10px; }
.hds-brand__mark { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; font-size: .72rem; font-weight: 900; color: #fff; border: 1px solid rgba(255,255,255,.35); }
.hds-brand__copy { display: grid; line-height: 1; gap: 4px; }
.hds-brand__copy strong { font-size: .92rem; letter-spacing: .03em; }
.hds-brand__copy small { font-size: .65rem; opacity: .72; letter-spacing: .16em; }
.hds-nav { display: flex; justify-content: center; gap: 26px; font-size: .88rem; font-weight: 700; }
.hds-nav a { opacity: .88; }
.hds-nav a:hover { opacity: 1; }
.hds-pill, .hds-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border-radius: 10px; font-weight: 800; }
.hds-pill { border-radius: 999px; }
.hds-pill--green { min-height: 30px; padding-inline: 15px; background: var(--hds-green); color: #fff; }
.hds-pill--ghost { border: 1px solid rgba(255,255,255,.3); color: #fff; }

.hds-hero { position: relative; min-height: 760px; overflow: hidden; color: #fff; background: #4266dd; isolation: isolate; }
.hds-hero__backdrop { position: absolute; inset: 0; z-index: -2; background: radial-gradient(circle at 10% 10%, rgba(35,172,213,.9), transparent 38%), radial-gradient(circle at 58% 52%, rgba(236,45,170,.74), transparent 34%), linear-gradient(120deg, #3b7de6 0%, #6356cf 56%, #504fc8 100%); }
.hds-hero__backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(17,15,80,.06), transparent 48%); }
.hds-hero__grid { min-height: 730px; padding-top: 128px; padding-bottom: 100px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(34px, 5vw, 78px); }
.hds-hero__copy { display: grid; gap: 18px; align-content: center; }
.hds-kicker { font-size: .78rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.82); }
.hds-kicker--dark { color: var(--hds-pink); }
.hds-hero h1 { max-width: 12ch; font-size: clamp(3.1rem, 6.5vw, 6rem); line-height: .9; }
.hds-technical { max-width: 64ch; font-size: clamp(1rem, 1.5vw, 1.18rem); line-height: 1.65; font-weight: 650; }
.hds-pov { max-width: 68ch; line-height: 1.76; color: rgba(255,255,255,.84); }
.hds-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 4px; }
.hds-button--coral { background: linear-gradient(135deg, #ff6d6f, #ff9668); color: #fff; box-shadow: 0 12px 24px rgba(89,21,81,.22); }
.hds-button--blue { background: linear-gradient(135deg, #477deb, #9c48dc); color: #fff; }
.hds-button--light { background: #fff; color: var(--hds-ink); }
.hds-text-link { font-weight: 800; }
.hds-text-link span { display: inline-block; margin-left: 5px; }
.hds-proof { display: flex; align-items: center; gap: 12px; margin-top: 12px; }
.hds-proof__avatars { display: flex; }
.hds-proof__avatars span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; margin-left: -7px; border: 2px solid #fff; background: #1d2146; font-size: .56rem; font-weight: 900; }
.hds-proof__avatars span:first-child { margin-left: 0; background: #ff8d68; }
.hds-proof__avatars span:nth-child(2) { background: #24adc9; }
.hds-proof p { font-size: .76rem; line-height: 1.25; }
.hds-proof p span { opacity: .78; }
.hds-hero__visual { position: relative; min-height: 520px; display: grid; place-items: center; }
.hds-portrait-card { width: min(390px, 86%); aspect-ratio: .83; border-radius: 16px; position: relative; overflow: hidden; background: linear-gradient(135deg, #ffab67 0%, #ff7b6f 48%, #e543ae 100%); box-shadow: 0 24px 50px rgba(28,19,89,.25); transform: rotate(.8deg); }
.hds-portrait-card__halo { position: absolute; width: 300px; height: 300px; border-radius: 50%; right: -70px; top: -50px; background: rgba(255,222,112,.55); filter: blur(2px); }
.hds-portrait-card__person { position: absolute; inset: 10% 8% 0; }
.hds-person__head { position: absolute; width: 37%; aspect-ratio: .84; left: 31%; top: 4%; border-radius: 48% 48% 44% 44%; background: linear-gradient(150deg, #37241f 0 20%, #b97953 21% 68%, #5b3026 69%); box-shadow: inset 0 -18px 0 rgba(61,26,32,.18); }
.hds-person__head::after { content: ""; position: absolute; left: 12%; right: 12%; top: 35%; height: 18%; border: 7px solid #161522; border-radius: 14px; box-shadow: inset 42px 0 0 -36px #161522; }
.hds-person__body { position: absolute; left: 10%; right: 10%; bottom: -8%; height: 70%; border-radius: 48% 48% 12% 12%; background: linear-gradient(90deg, #11121b, #26283a 48%, #11121b); clip-path: polygon(18% 0, 82% 0, 100% 18%, 91% 100%, 9% 100%, 0 18%); }
.hds-person__body::after { content: ""; position: absolute; width: 72%; height: 18%; left: 14%; top: 38%; border-radius: 999px; transform: rotate(-7deg); background: linear-gradient(180deg, #25283a, #10111b); box-shadow: 0 23px 0 #171925; }
.hds-person__badge { position: absolute; right: 0; bottom: 9%; padding: 10px 12px; border-radius: 12px; color: #fff; font-size: .72rem; line-height: 1.25; font-weight: 900; background: rgba(26,27,54,.88); backdrop-filter: blur(8px); }
.hds-floating-note { position: absolute; padding: 9px 13px; border-radius: 999px; background: rgba(255,255,255,.92); color: var(--hds-ink); font-size: .72rem; font-weight: 900; box-shadow: 0 12px 25px rgba(25,22,78,.18); }
.hds-floating-note--one { left: 0; top: 31%; }
.hds-floating-note--two { right: 0; bottom: 22%; }
.hds-hero__wave { position: absolute; z-index: -1; left: -5%; right: -5%; bottom: -120px; height: 220px; border-radius: 50% 50% 0 0 / 100% 100% 0 0; background: #fff; transform: rotate(-2deg); }

.hds-capabilities { margin-top: -34px; position: relative; z-index: 5; }
.hds-capabilities__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px, 3vw, 36px); }
.hds-capability { min-height: 154px; border-radius: 22px; display: grid; place-items: center; text-align: center; gap: 8px; padding: 22px; color: #fff; background: #191a38; box-shadow: 0 18px 35px rgba(45,40,89,.12); }
.hds-icon { width: 50px; height: 50px; border-radius: 16px; display: grid; place-items: center; color: #fff; font-weight: 900; background: linear-gradient(135deg, #a849d6, #ef548c); }
.hds-capability:nth-child(2) .hds-icon { background: linear-gradient(135deg, #23b1cc, #2bd3c0); font-size: .75rem; }
.hds-capability:nth-child(3) .hds-icon { background: linear-gradient(135deg, #f24d92, #ae42d6); }
.hds-capability:nth-child(4) .hds-icon { background: linear-gradient(135deg, #ff7b65, #fdad5b); }

.hds-section { padding: clamp(84px, 10vw, 142px) 0; }
.hds-section--tint { background: linear-gradient(180deg, rgba(246,240,255,.6), rgba(255,244,238,.55)); }
.hds-section__head { max-width: 860px; display: grid; gap: 16px; margin-bottom: 42px; }
.hds-section__head--compact { margin-bottom: 34px; }
.hds-section__head h2, .hds-about-copy h2, .hds-cta h2 { font-size: clamp(2.5rem, 5vw, 5.2rem); line-height: .95; }
.hds-section__head .hds-technical, .hds-about-copy .hds-technical { color: #34344b; }
.hds-section__head .hds-pov, .hds-about-copy .hds-pov { color: #666477; }
.hds-story-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.hds-story-card { min-height: 360px; border-radius: 20px; overflow: hidden; }
.hds-story-card--copy { padding: clamp(26px, 4vw, 48px); display: grid; align-content: space-between; gap: 30px; background: rgba(255,255,255,.9); box-shadow: 0 18px 38px rgba(62,47,100,.06); }
.hds-card-label { text-transform: uppercase; font-size: .75rem; font-weight: 900; letter-spacing: .14em; color: var(--hds-pink); }
.hds-story-card h3 { margin: 10px 0 16px; font-size: clamp(2rem, 3.6vw, 3.6rem); line-height: .95; }
.hds-story-card--copy .hds-pov { color: #626173; }
.hds-story-card--visual { display: grid; place-items: center; padding: 36px; color: #fff; }
.hds-visual--search { background: linear-gradient(140deg, #ff9368, #ff4e7c 58%, #aa4ee2); }
.hds-search-demo { width: min(420px, 100%); padding: 26px; border-radius: 22px; background: rgba(255,255,255,.94); color: var(--hds-ink); box-shadow: 0 24px 50px rgba(79,29,99,.22); }
.hds-search-demo__pin { color: #ee536c; }
.hds-search-demo p { margin-top: 18px; font-size: 1.8rem; font-weight: 900; }
.hds-search-demo small { display: block; margin-top: 7px; color: #747386; }
.hds-search-demo__rating { margin-top: 26px; color: #ff9d37; font-weight: 900; }
.hds-search-demo__rating span { float: right; color: #626173; font-size: .78rem; }
.hds-visual--trust { background: linear-gradient(140deg, #436edc, #21afd1 70%, #44d3b9); }
.hds-phone-demo { width: min(320px, 100%); min-height: 300px; border: 8px solid #17182f; border-radius: 35px; padding: 28px 22px; background: #fff; color: var(--hds-ink); box-shadow: 0 22px 45px rgba(13,43,96,.3); }
.hds-phone-demo > span { font-size: .7rem; color: #727184; font-weight: 800; }
.hds-phone-demo strong { display: block; font-size: 2rem; line-height: .98; margin-top: 35px; }
.hds-phone-demo__chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 42px; }
.hds-phone-demo__chips i { font-style: normal; padding: 7px 9px; border-radius: 999px; background: #eef1ff; font-size: .68rem; font-weight: 800; }
.hds-inline-links { display: flex; flex-wrap: wrap; gap: 14px; }
.hds-inline-links a, .hds-project-card__body a, .hds-price-card a { font-weight: 900; color: #4d68d6; }

.hds-divider-title { display: flex; align-items: center; gap: 20px; margin-bottom: 36px; }
.hds-divider-title span { white-space: nowrap; font-size: 1.02rem; }
.hds-divider-title i { height: 1px; width: 100%; background: rgba(23,24,47,.55); }
.hds-divider-title--pricing { margin-top: 66px; }
.hds-service-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.hds-service-card { min-height: 280px; padding: 28px; display: grid; align-content: start; gap: 16px; border-radius: 20px; background: #1a1a39; color: #fff; }
.hds-service-card:nth-child(2) { background: linear-gradient(150deg, #1f2a58, #18314f); }
.hds-service-card:nth-child(3) { background: linear-gradient(150deg, #31204f, #201d40); }
.hds-service-card:nth-child(4) { background: linear-gradient(150deg, #4b234c, #241d3c); }
.hds-service-card__no { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: linear-gradient(135deg, #a74adb, #f35e92); font-weight: 900; }
.hds-service-card h3 { font-size: 1.8rem; }
.hds-service-card p { color: rgba(255,255,255,.72); line-height: 1.7; }
.hds-pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.hds-price-card { min-height: 360px; padding: 28px; border-radius: 20px; display: grid; align-content: start; gap: 16px; background: rgba(255,255,255,.9); box-shadow: 0 15px 30px rgba(68,51,103,.06); }
.hds-price-card--featured { background: linear-gradient(155deg, #fff, #f7eaff); box-shadow: inset 0 0 0 2px rgba(166,71,220,.25), 0 18px 34px rgba(97,55,129,.09); }
.hds-price-card h3 { font-size: 2rem; }
.hds-price-card ul { margin: 6px 0 12px; padding: 0; list-style: none; display: grid; gap: 11px; color: #646275; }
.hds-price-card li::before { content: "▸"; margin-right: 8px; color: var(--hds-pink); }

.hds-about-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 24px; align-items: stretch; }
.hds-about-copy { padding: clamp(30px, 5vw, 62px); border-radius: 22px; display: grid; align-content: center; gap: 18px; background: rgba(255,255,255,.92); }
.hds-about-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.hds-about-tags span { padding: 8px 11px; border-radius: 999px; background: #f0eff7; font-size: .72rem; font-weight: 800; }
.hds-about-visual { min-height: 520px; border-radius: 22px; overflow: hidden; display: grid; place-items: center; background: linear-gradient(140deg, #ff9368 0%, #f34f84 48%, #5958d7 100%); }
.hds-about-portrait { width: min(380px, 80%); min-height: 420px; padding: 40px; position: relative; display: grid; align-content: end; color: #fff; border-radius: 190px 190px 28px 28px; background: linear-gradient(160deg, rgba(25,25,54,.05), rgba(25,25,54,.72)); box-shadow: 0 28px 50px rgba(49,19,71,.22); }
.hds-about-portrait span { position: absolute; inset: 18% auto auto 50%; transform: translateX(-50%); width: 130px; height: 130px; border-radius: 50%; display: grid; place-items: center; background: #15162d; font-size: 4rem; font-weight: 900; }
.hds-about-portrait strong { font-size: 3rem; line-height: .84; }
.hds-about-portrait small { margin-top: 12px; opacity: .76; }

.hds-section--projects { background: rgba(255,255,255,.5); }
.hds-project-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.hds-project-card { border-radius: 20px; overflow: hidden; background: #fff; box-shadow: 0 15px 32px rgba(73,53,105,.07); }
.hds-project-card__media { aspect-ratio: 16/10; display: flex; align-items: center; justify-content: center; gap: 18px; color: #fff; }
.hds-project-card__media--bin { background: linear-gradient(140deg, #ff875e, #f14f81 60%, #a149d5); font-size: clamp(2.4rem, 6vw, 5.8rem); font-weight: 900; }
.hds-project-card__media--bin b { font-size: .5em; }
.hds-project-card__media--bridge { position: relative; background: linear-gradient(180deg, #30add6 0%, #77d5e4 52%, #f8a96e 53%, #ef6a62 100%); }
.hds-project-card__media--bridge > span { position: absolute; right: 24px; top: 20px; font-size: 2rem; font-weight: 900; }
.hds-bridge { width: 78%; height: 45%; border-bottom: 11px solid #fff; position: relative; }
.hds-bridge i { position: absolute; bottom: -12px; width: 10px; height: 95%; background: #fff; transform-origin: bottom; }
.hds-bridge i:first-child { left: 12%; transform: rotate(16deg); }
.hds-bridge i:nth-child(2) { left: 49%; transform: rotate(0); }
.hds-bridge i:nth-child(3) { right: 12%; transform: rotate(-16deg); }
.hds-project-card__body { padding: 26px; display: grid; gap: 12px; }
.hds-project-card__body h3 { font-size: 2rem; }
.hds-project-card__body p:not(.hds-card-label) { line-height: 1.68; color: #686678; }

.hds-cta { min-height: 620px; display: grid; place-items: center; padding: 100px 0; text-align: center; color: #fff; background: radial-gradient(circle at 20% 15%, rgba(31,170,210,.8), transparent 34%), radial-gradient(circle at 70% 55%, rgba(230,44,167,.72), transparent 35%), linear-gradient(130deg, #3f69dc, #6151ca); }
.hds-cta__inner { display: grid; justify-items: center; gap: 20px; }
.hds-cta h2 { max-width: 14ch; }
.hds-cta p:not(.hds-kicker) { max-width: 60ch; line-height: 1.75; color: rgba(255,255,255,.84); }
.hds-actions--center { justify-content: center; }
.hds-footer { background: #191a38; color: #fff; }
.hds-footer__grid { padding: 52px 0; display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 28px; }
.hds-footer__grid > div { display: grid; align-content: start; gap: 8px; }
.hds-footer strong { color: #ff7284; font-size: 1.3rem; }
.hds-footer small { letter-spacing: .16em; opacity: .7; }
.hds-footer p, .hds-footer a { font-size: .82rem; color: rgba(255,255,255,.68); }
.hds-footer b { margin-bottom: 6px; }

[data-reveal] { opacity: 1; transform: translateY(0); }
.js-reveal [data-reveal] { opacity: 0; transform: translateY(20px); transition: opacity .55s ease, transform .55s ease; }
.js-reveal [data-reveal].is-visible { opacity: 1; transform: none; }

@media (max-width: 980px) {
  .hds-header { position: relative; background: #4d5ed3; }
  .hds-header__inner { grid-template-columns: 1fr auto; }
  .hds-nav { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; overflow-x: auto; padding-bottom: 14px; }
  .hds-hero__grid, .hds-about-grid { grid-template-columns: 1fr; }
  .hds-hero__grid { padding-top: 70px; }
  .hds-hero__visual { min-height: 460px; }
  .hds-capabilities__grid, .hds-service-grid { grid-template-columns: repeat(2, 1fr); }
  .hds-story-grid, .hds-project-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .hds-header__inner { min-height: 72px; }
  .hds-brand__copy { display: none; }
  .hds-nav { gap: 18px; font-size: .8rem; }
  .hds-hero { min-height: auto; }
  .hds-hero__grid { min-height: auto; padding-bottom: 120px; }
  .hds-hero h1 { font-size: clamp(2.8rem, 14vw, 4.5rem); }
  .hds-hero__visual { min-height: 390px; }
  .hds-floating-note { display: none; }
  .hds-capabilities { margin-top: -18px; }
  .hds-capabilities__grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .hds-capability { min-height: 132px; border-radius: 18px; padding: 14px; }
  .hds-service-grid, .hds-pricing-grid, .hds-project-grid, .hds-footer__grid { grid-template-columns: 1fr; }
  .hds-section__head h2, .hds-about-copy h2, .hds-cta h2 { font-size: clamp(2.4rem, 12vw, 4rem); }
  .hds-story-card { min-height: 320px; }
  .hds-about-visual { min-height: 430px; }
  .hds-footer__grid { gap: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .js-reveal [data-reveal] { opacity: 1; transform: none; transition: none; }
}

/*  About Anhdophin page. Additive only. */
.hds-anh-page { background: #f7f2f8; }
.hds-anh-hero { position: relative; isolation: isolate; overflow: hidden; min-height: 800px; color: #fff; background: linear-gradient(140deg,#2b9ed7 0%,#565bd6 42%,#a842c9 72%,#ed4d86 100%); }
.hds-anh-hero__glow { position:absolute; inset:0; z-index:-1; background: radial-gradient(circle at 18% 16%,rgba(75,213,244,.5),transparent 30%), radial-gradient(circle at 78% 38%,rgba(255,84,156,.46),transparent 35%); }
.hds-anh-hero__grid { min-height:800px; padding:90px 0 145px; display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; }
.hds-anh-hero__copy { display:grid; gap:20px; }
.hds-anh-hero h1 { margin:0; max-width:12ch; font-size:clamp(3.4rem,6.8vw,7rem); line-height:.88; letter-spacing:-.055em; }
.hds-anh-hero .hds-technical { color:rgba(255,255,255,.93); max-width:66ch; }
.hds-anh-hero .hds-pov { color:rgba(255,255,255,.78); max-width:68ch; }
.hds-anh-hero__visual { position:relative; min-height:560px; display:grid; place-items:center; }
.hds-anh-profile-card { width:min(470px,92%); min-height:560px; border-radius:34px; overflow:hidden; display:grid; grid-template-rows:1fr auto; background:linear-gradient(145deg,#ff9a62,#f55b87 52%,#614bd7); box-shadow:0 34px 70px rgba(41,22,83,.35); }
.hds-anh-profile-card__portrait { display:grid; place-items:center; padding-top:48px; }
.hds-anh-profile-card__portrait span { width:210px; height:210px; border-radius:50%; display:grid; place-items:center; background:#171830; color:#fff; font-size:7rem; font-weight:950; box-shadow:0 22px 40px rgba(27,18,48,.26); }
.hds-anh-profile-card__copy { padding:32px; background:rgba(20,20,48,.86); display:grid; gap:8px; }
.hds-anh-profile-card__copy small { letter-spacing:.18em; color:#ff8ca4; font-weight:900; }
.hds-anh-profile-card__copy strong { font-size:2.35rem; line-height:.93; }
.hds-anh-profile-card__copy p { margin:4px 0 0; color:rgba(255,255,255,.68); }
.hds-floating-note--anh-one { left:-10px; top:26%; }
.hds-floating-note--anh-two { right:-12px; bottom:22%; }

.hds-anh-background-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.hds-anh-background-card { min-height:280px; padding:30px; border-radius:22px; background:rgba(255,255,255,.9); box-shadow:0 16px 34px rgba(58,42,87,.06); display:grid; align-content:start; gap:14px; }
.hds-anh-background-card--lead { grid-row:span 2; min-height:580px; align-content:end; color:#fff; background:linear-gradient(160deg,#425fd1 0%,#5350c9 45%,#b343c3 100%); }
.hds-anh-background-card--lead .hds-card-label { color:#ffb0c2; }
.hds-anh-background-card--lead h3 { font-size:clamp(2.5rem,4vw,4.4rem); line-height:.92; }
.hds-anh-background-card span { width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#ebe9f7;color:#594fd1;font-weight:900; }
.hds-anh-background-card h3 { font-size:clamp(1.55rem,2.4vw,2.25rem); }
.hds-anh-background-card p { line-height:1.72; color:#666477; }
.hds-anh-background-card--lead p { color:rgba(255,255,255,.78); }

.hds-anh-method-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:stretch; }
.hds-anh-method-copy { border-radius:24px; padding:clamp(30px,4vw,54px); background:#fff; display:grid; align-content:center; gap:16px; }
.hds-anh-method-copy h2 { font-size:clamp(2.6rem,4.8vw,5rem); line-height:.92; }
.hds-anh-method-steps { display:grid; gap:14px; }
.hds-anh-method-steps article { min-height:132px; padding:22px; border-radius:20px; background:#191a38; color:#fff; display:grid; grid-template-columns:54px 1fr; column-gap:16px; align-items:start; }
.hds-anh-method-steps span { grid-row:span 2; width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#a84eda,#f15b90);font-weight:900; }
.hds-anh-method-steps strong { font-size:1.35rem; }
.hds-anh-method-steps p { margin:4px 0 0; color:rgba(255,255,255,.68); line-height:1.6; }

.hds-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.hds-tool-card { min-height:240px; padding:28px; border-radius:22px; background:#fff; display:grid; grid-template-columns:70px 1fr; gap:20px; align-content:start; box-shadow:0 14px 30px rgba(67,48,99,.06); }
.hds-tool-card--wide { grid-column:span 2; min-height:260px; background:linear-gradient(135deg,#fff,#f9edff); }
.hds-tool-icon { width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:#1b1c3b;color:#fff;font-weight:900;font-size:1.2rem; }
.hds-tool-card h3 { margin:8px 0 10px; font-size:clamp(1.55rem,2.4vw,2.2rem); }
.hds-tool-card p:not(.hds-card-label) { color:#676578; line-height:1.7; }
.hds-anh-tool-note { margin-top:20px; padding:26px 30px; border-radius:20px; background:#1a1b3a; color:#fff; display:grid; grid-template-columns:.8fr 1.2fr; gap:24px; align-items:center; }
.hds-anh-tool-note strong { font-size:1.4rem; }
.hds-anh-tool-note p { margin:0; color:rgba(255,255,255,.7); line-height:1.65; }

.hds-purpose-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.hds-purpose-card { min-height:390px; padding:32px; border-radius:24px; color:#fff; display:grid; align-content:end; gap:14px; }
.hds-purpose-card h3 { font-size:clamp(2rem,3vw,3.2rem); line-height:.94; }
.hds-purpose-card p:not(.hds-card-label) { color:rgba(255,255,255,.76); line-height:1.7; }
.hds-purpose-card--blue { background:linear-gradient(145deg,#2c9fd6,#4c5dd0); }
.hds-purpose-card--pink { background:linear-gradient(145deg,#ff9364,#ef4f86 62%,#a344ce); }
.hds-purpose-card--dark { background:linear-gradient(145deg,#272846,#17182f); }

.hds-anh-quote { padding:clamp(90px,11vw,150px) 0; text-align:center; background:#fff; }
.hds-anh-quote span { display:block; font-size:8rem; line-height:.6; color:#d6d2df; }
.hds-anh-quote blockquote { margin:20px 0 24px; font-size:clamp(2rem,4vw,4rem); line-height:1.08; letter-spacing:-.035em; }
.hds-anh-quote p { color:#6d6a7b; font-weight:800; }

@media (max-width:980px){
  .hds-anh-hero__grid,.hds-anh-method-grid{grid-template-columns:1fr;}
  .hds-anh-hero__grid{padding-top:70px;}
  .hds-anh-background-grid,.hds-purpose-grid{grid-template-columns:1fr 1fr;}
  .hds-anh-background-card--lead{grid-row:auto;grid-column:span 2;min-height:430px;}
  .hds-purpose-card--dark{grid-column:span 2;}
}
@media (max-width:720px){
  .hds-anh-hero,.hds-anh-hero__grid{min-height:auto;}
  .hds-anh-hero__grid{padding-bottom:120px;gap:24px;}
  .hds-anh-hero h1{font-size:clamp(3rem,14vw,4.8rem);}
  .hds-anh-hero__visual{min-height:470px;}
  .hds-anh-profile-card{min-height:470px;}
  .hds-anh-profile-card__portrait span{width:160px;height:160px;font-size:5rem;}
  .hds-anh-profile-card__copy strong{font-size:1.9rem;}
  .hds-anh-background-grid,.hds-tool-grid,.hds-purpose-grid{grid-template-columns:1fr;}
  .hds-anh-background-card--lead,.hds-tool-card--wide,.hds-purpose-card--dark{grid-column:auto;}
  .hds-anh-background-card--lead{min-height:380px;}
  .hds-tool-card{grid-template-columns:56px 1fr;padding:22px;}
  .hds-tool-icon{width:52px;height:52px;}
  .hds-anh-tool-note{grid-template-columns:1fr;}
  .hds-purpose-card{min-height:320px;}
}

/* 18. Service menu and pricing page */
.hds-menu-page { background:#f7f2f5; }
.hds-menu-hero { padding:clamp(90px,11vw,150px) 0 clamp(70px,9vw,120px); background:radial-gradient(circle at 82% 14%,rgba(255,108,137,.42),transparent 26%),linear-gradient(135deg,#425fd1 0%,#5c54d2 48%,#ae43bd 100%);color:#fff; }
.hds-menu-hero__grid { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(28px,5vw,64px);align-items:end; }
.hds-menu-hero h1 { margin:0;max-width:10ch;font-size:clamp(3.6rem,7vw,7.2rem);line-height:.87;letter-spacing:-.055em; }
.hds-menu-hero .hds-technical { color:rgba(255,255,255,.94);max-width:66ch; }
.hds-menu-hero .hds-pov { color:rgba(255,255,255,.78);max-width:72ch; }
.hds-menu-summary { padding:30px;border-radius:28px;background:rgba(25,26,57,.82);backdrop-filter:blur(14px);display:grid;gap:18px;box-shadow:0 26px 50px rgba(28,18,61,.28); }
.hds-menu-summary>div { display:grid;grid-template-columns:46px 1fr;gap:14px;padding-top:16px;border-top:1px solid rgba(255,255,255,.12); }
.hds-menu-summary strong { font-size:1.2rem;color:#ff9cb0; }
.hds-menu-summary span { color:rgba(255,255,255,.76);line-height:1.55; }
.hds-pricing-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch; }
.hds-price-card { position:relative;min-height:650px;padding:30px;border-radius:26px;background:#fff;display:flex;flex-direction:column;gap:15px;box-shadow:0 18px 38px rgba(57,41,87,.07); }
.hds-price-card--featured { color:#fff;background:linear-gradient(160deg,#2b2d58,#16172e);transform:translateY(-14px);box-shadow:0 28px 60px rgba(35,25,69,.25); }
.hds-price-card h3 { margin:0;font-size:clamp(2rem,3vw,3rem);line-height:.95; }
.hds-price { margin:8px 0 0;font-size:clamp(2rem,3vw,3rem);font-weight:950;letter-spacing:-.04em; }
.hds-price span { display:block;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#777487; }
.hds-price-card--featured .hds-price span,.hds-price-card--featured .hds-price-note,.hds-price-card--featured li { color:rgba(255,255,255,.7); }
.hds-price-note { min-height:54px;color:#6b687b;line-height:1.6; }
.hds-price-card ul { margin:8px 0 24px;padding:0;list-style:none;display:grid;gap:12px; }
.hds-price-card li { position:relative;padding-left:24px;color:#565466;line-height:1.55; }
.hds-price-card li::before { content:'✓';position:absolute;left:0;color:#ef5f88;font-weight:900; }
.hds-price-card .hds-button { margin-top:auto; }
.hds-price-badge { position:absolute;right:22px;top:20px;padding:7px 11px;border-radius:999px;background:#ff6d8d;color:#fff;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em; }
.hds-menu-items { background:#f0eaf1; }
.hds-menu-category { margin-top:30px;border-radius:28px;background:#fff;overflow:hidden;box-shadow:0 14px 32px rgba(54,40,78,.05); }
.hds-menu-category__head { padding:28px 30px;display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:start;background:linear-gradient(135deg,#fff,#faf5fc); }
.hds-menu-category__head>span { width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#1b1c3b;color:#fff;font-weight:900; }
.hds-menu-category__head h3 { margin:5px 0 0;font-size:clamp(1.7rem,3vw,2.8rem);line-height:1; }
.hds-menu-list { display:grid; }
.hds-menu-list article { padding:22px 30px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;border-top:1px solid #ece8ef; }
.hds-menu-list h4 { margin:0 0 6px;font-size:1.12rem; }
.hds-menu-list p { margin:0;color:#6d6a79;line-height:1.55; }
.hds-menu-list strong { white-space:nowrap;font-size:1.12rem;color:#5148c5; }
.hds-menu-note { background:#fff; }
.hds-menu-note__grid { display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,6vw,80px);align-items:start; }
.hds-menu-note h2 { margin:0;font-size:clamp(2.5rem,5vw,5rem);line-height:.92;letter-spacing:-.045em; }
.hds-menu-note__grid>div:last-child { display:grid;gap:18px;color:#625f70;line-height:1.75; }
.hds-menu-note__grid p { margin:0; }
@media(max-width:980px){.hds-menu-hero__grid,.hds-menu-note__grid{grid-template-columns:1fr}.hds-pricing-grid{grid-template-columns:1fr 1fr}.hds-price-card--featured{transform:none}.hds-price-card:last-child{grid-column:span 2}}
@media(max-width:720px){.hds-menu-hero h1{font-size:clamp(3.2rem,15vw,5rem)}.hds-pricing-grid{grid-template-columns:1fr}.hds-price-card:last-child{grid-column:auto}.hds-price-card{min-height:auto}.hds-menu-category__head{grid-template-columns:46px 1fr;padding:22px}.hds-menu-category__head>span{width:44px;height:44px}.hds-menu-list article{grid-template-columns:1fr;gap:10px;padding:20px 22px}.hds-menu-list strong{white-space:normal}}

/* 05. Content refinement additions */
.hds-service-card ul {
  margin: 6px 0 0;
  padding-left: 18px;
  display: grid;
  gap: 7px;
  color: var(--muted);
}

.hds-service-card li { line-height: 1.55; }

.hds-cta blockquote {
  margin: 8px auto 0;
  max-width: 760px;
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  font-weight: 700;
  color: rgba(255,255,255,.94);
}

/* 19. ALL IN POV feature section */
.hds-allinpov-grid {
  display: grid;
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr);
  gap: clamp(28px, 6vw, 84px);
  align-items: center;
}

.hds-allinpov-visual {
  position: relative;
  min-height: 520px;
  padding: clamp(28px, 4vw, 48px);
  border-radius: 32px;
  overflow: hidden;
  display: grid;
  align-content: space-between;
  background:
    radial-gradient(circle at 78% 18%, rgba(255, 126, 161, .92), transparent 24%),
    radial-gradient(circle at 16% 82%, rgba(57, 207, 218, .72), transparent 27%),
    linear-gradient(145deg, #252753 0%, #4b4ec9 46%, #9e43bc 100%);
  color: #fff;
  box-shadow: 0 28px 64px rgba(50, 38, 105, .22);
  isolation: isolate;
}

.hds-allinpov-visual::before,
.hds-allinpov-visual::after {
  content: '';
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.24);
  z-index: -1;
}

.hds-allinpov-visual::before {
  width: 330px;
  height: 330px;
  right: -120px;
  top: 80px;
}

.hds-allinpov-visual::after {
  width: 190px;
  height: 190px;
  left: -58px;
  bottom: 54px;
}

.hds-allinpov-visual > span {
  width: 68px;
  height: 68px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.2);
  backdrop-filter: blur(12px);
  font-size: .9rem;
  font-weight: 900;
  letter-spacing: .12em;
}

.hds-allinpov-visual > strong {
  display: block;
  max-width: 5ch;
  font-size: clamp(4.2rem, 7vw, 7.4rem);
  line-height: .78;
  letter-spacing: -.065em;
}

.hds-allinpov-visual > small {
  display: block;
  max-width: 24ch;
  color: rgba(255,255,255,.78);
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.hds-allinpov-copy {
  display: grid;
  gap: 18px;
  max-width: 760px;
}

.hds-allinpov-copy h2 {
  margin: 0;
  max-width: 15ch;
  font-size: clamp(2.6rem, 5vw, 5.4rem);
  line-height: .94;
  letter-spacing: -.045em;
}

.hds-allinpov-copy .hds-technical {
  max-width: 58ch;
  padding-left: 18px;
  border-left: 3px solid #ef668d;
  font-size: clamp(1.05rem, 1.7vw, 1.28rem);
  color: #2f2d3a;
}

.hds-allinpov-copy .hds-pov {
  max-width: 66ch;
  color: #646171;
  line-height: 1.82;
}

@media (max-width: 900px) {
  .hds-allinpov-grid { grid-template-columns: 1fr; }
  .hds-allinpov-visual { min-height: 420px; }
  .hds-allinpov-copy h2 { max-width: 18ch; }
}

@media (max-width: 560px) {
  .hds-allinpov-visual {
    min-height: 360px;
    border-radius: 24px;
  }
  .hds-allinpov-visual > strong { font-size: clamp(3.8rem, 18vw, 5.6rem); }
  .hds-allinpov-copy .hds-technical { padding-left: 14px; }
}
