/* Opening gift, visual guide and service questions. */
/* Stronger paired contact bounce, with a rest between each pair of jumps. */
.floating{gap:20px}.floating .button.attention{animation:contact-glow 2.2s ease-in-out infinite,hv-contact-bounce 2.2s ease-in-out infinite;transform-origin:center bottom;will-change:transform}.floating .button.zalo.attention{animation-delay:.55s,.55s}.floating .back-to-top{bottom:calc(100% + 24px)}
@keyframes hv-contact-bounce{0%,40%,100%{transform:translateY(0) scale(1)}12%{transform:translateY(-12px) scale(1.025)}23%{transform:translateY(0) scale(1)}31%{transform:translateY(-6px) scale(1.015)}}
@media(hover:hover){.floating .button.attention:hover{animation-play-state:paused}}.floating .button.attention:focus-visible{animation-play-state:paused}
@media(max-width:1200px){.floating{gap:12px}.floating .back-to-top{bottom:calc(100% + 22px)}}
@media(max-width:640px){.floating{gap:8px}}
@media(prefers-reduced-motion:reduce){.floating .button.attention{animation:none!important;transform:none;will-change:auto}}
[data-feedback-return][hidden]{display:none!important}
.hair-cycle-stages{list-style:none;margin:6px 14px 18px 18px;padding:0;display:grid;gap:12px;counter-reset:hair-stage}.hair-cycle-stages li{position:relative;padding:15px 15px 15px 54px;background:#fff;border:1px solid var(--line);border-radius:9px;counter-increment:hair-stage}.hair-cycle-stages li::before{content:counter(hair-stage);position:absolute;left:14px;top:16px;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#fce1eb;color:var(--pink-dark);font-weight:700}.hair-cycle-stages strong{display:block;color:var(--pink-dark);font-size:16px;margin-bottom:5px}.hair-cycle-stages span{display:block;font-size:14px;line-height:1.8}
.favorites-heading{display:flex;align-items:center;gap:20px}.favorites-heart{width:96px;height:96px;flex:0 0 96px;display:grid;place-items:center;border-radius:50%;background:#fff0f5;color:var(--pink);box-shadow:0 8px 24px #ed507d18}.favorites-heart svg{width:76px;height:76px;filter:drop-shadow(0 4px 3px #ed507d24)}
@media(max-width:640px){.favorites-heading{gap:13px;align-items:center}.favorites-heart{width:72px;height:72px;flex-basis:72px}.favorites-heart svg{width:58px;height:58px}.favorites-heading>span:last-child{font-size:24px;line-height:1.5}.hair-cycle-stages li{padding-right:12px}.hair-cycle-stages strong{font-size:15px}}
.back-to-top{position:absolute;right:0;bottom:calc(100% + 10px);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 14px;border:1px solid #da8ba3;border-radius:24px;background:#fff;color:#922648;font-size:13px;font-weight:700;text-decoration:none;line-height:1.4;white-space:nowrap;box-shadow:0 3px 15px #92264820}.back-to-top svg{width:20px;height:20px}.back-to-top:hover{background:#fff0f5}.back-to-top[hidden]{display:none}.contact-navigation-note{font-size:12px;line-height:1.7;color:var(--muted);margin-top:13px!important}.faq-action{display:inline-block;margin-bottom:18px}@media(max-width:1200px){.back-to-top{right:10px;bottom:calc(100% + 7px)}}
.return-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;border:1px solid #db8ba5;border-radius:7px;background:#fff0f5;color:#922648;font:700 14px/1.5 'Noto Sans HV',Arial,sans-serif;cursor:pointer;text-decoration:none}.return-button:hover{background:#fbd4df}.feedback-return{margin:9px 0 14px}.feedback-return.return-bottom{margin:17px 0 0}.lightbox{padding:0 18px 18px}.photo-toolbar{position:sticky;top:0;z-index:2;background:#fff;padding:12px 0;margin-bottom:6px;display:flex;justify-content:flex-start;border-bottom:1px solid var(--line)}.photo-toolbar .close-dialog{position:static;font-size:15px;min-height:46px}.photo-is-open{overflow:hidden}.lightbox img{max-height:calc(84dvh - 100px)}
.ui-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;flex:0 0 24px;color:var(--pink-dark)}
.top-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;margin-top:22px;margin-bottom:20px;max-width:900px}.top-actions .button{width:100%;text-align:center}.top-actions .ui-icon{flex-shrink:0}
.top-actions .button{padding:16px 22px;font-size:17px;line-height:1.5}.price-jump{font-size:18px;font-weight:700;min-height:54px;padding:15px 22px;text-decoration:none}.intro-foot .price-jump{font-size:17px}.specs-jump{background:#fff!important}.specs-jump .ui-icon{width:22px;height:22px}
.nav{gap:22px}.top-feature{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;align-items:stretch}.top-feature .gift-banner{margin:0;width:100%;padding:28px 22px;flex-direction:column;text-align:center;gap:14px;justify-content:center}.top-feature .gift-title{font-size:30px}.top-feature .gift-condition{font-size:16px}.top-feature .gift-illustration{width:148px;height:auto;flex:0 0 auto;max-width:100%}.opening-storefront{background:var(--blush);border:1px solid var(--line);border-radius:12px;padding:9px;align-self:center}.opening-storefront .image-button{border-radius:7px}.opening-storefront figcaption{font-size:11px;color:var(--pink-dark);text-align:center;line-height:1.6;margin-top:8px}
.feedback-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px;align-items:start}.feedback-card{margin:0;padding:18px;border-radius:11px;background:#fffafb;overflow:hidden}.feedback-card>h3{font-size:19px;margin:0 0 4px;line-height:1.6}.feedback-count{font-size:12px;color:var(--muted);margin-bottom:15px}.cover-feedback{width:100%;margin:0 auto}.cover-feedback figcaption{font-size:11px;margin-top:7px;color:var(--muted)}.feedback-card>.text-link{font-size:11px;margin:12px 0 0;display:inline-block}.gallery-more{border-top:1px solid var(--line);margin-top:13px}.gallery-more>summary{font-size:13px;font-weight:700;margin-left:17px;padding:13px 0}.feedback-card.is-expanded{grid-column:1/-1}.feedback-card.is-expanded>.cover-feedback{max-width:360px}.gallery-more .feedback-grid{margin-top:5px}.feedback-card .feedback-grid figure{margin:0}.feedback-card .feedback-grid{gap:18px}.gallery-more summary::marker{color:var(--pink-dark)}
.procedure .steps li{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start}.step-symbol{display:flex;justify-content:center;align-items:center;width:46px;height:46px;margin-top:2px;border:1px solid #f0bdd0;border-radius:12px;background:#fff2f7;box-shadow:0 3px 8px #ed507d08}.step-symbol .ui-icon{width:28px;height:28px}.procedure .steps strong{padding-top:1px}.policy-highlight{display:flex;gap:14px;align-items:center;border:2px solid #ed92b0;border-radius:12px;background:#fff3f8;color:var(--pink-dark);padding:26px 24px;font-size:25px;line-height:1.7;text-align:center;animation:policy-beat 2.8s ease-in-out infinite}.policy-highlight>.ui-icon{width:42px;height:42px;flex-basis:42px;stroke-width:1.6}.policy-highlight strong{color:inherit}
.care-block ul,.daily-care ul{padding:0;list-style:none}.care-block li,.daily-care li{display:flex;align-items:flex-start;gap:12px}.care-block li>.ui-icon,.daily-care li>.ui-icon{margin-top:3px;width:24px;height:24px;flex-shrink:0}.care-contact>p>.ui-icon{margin-right:9px}.contact-list .label>.ui-icon{width:17px;height:17px;margin-right:7px;vertical-align:-3px}.details-block>summary>.ui-icon{width:20px;height:20px;margin-right:9px;vertical-align:-4px}
.faq-section h2>.ui-icon{width:30px;height:30px;margin-right:10px;vertical-align:-5px}.faq-section .faq{border-top:1px solid var(--line)}.faq-section .faq details{padding:0 3px}.faq-section .faq summary{font-size:16px;line-height:1.7}.faq-section .faq p{font-size:15px;line-height:1.85}.faq-section .faq p.faq-citations{font-size:11px;color:var(--muted);line-height:1.7;margin-top:-5px}.faq-citations a{color:var(--muted)}.region-faq-heading{font-size:23px;margin:34px 0 0;color:var(--pink-dark)}.faq-regions .text-link{display:inline-block;margin-bottom:18px}.faq-general details[open]{background:#fffafb}.faq-section .faq details>p,.faq-section .faq details>.text-link{margin-left:18px;margin-right:14px}
@keyframes policy-beat{0%,100%{transform:scale(1);color:#a82c52;box-shadow:0 0 0 0 #ed507d20}50%{transform:scale(1.015);color:#cd285c;box-shadow:0 0 0 5px #ed507d0a,0 5px 18px #ed507d25}}
@media(max-width:640px){.nav{flex-wrap:wrap;justify-content:center;gap:8px 21px}.top-actions{gap:10px;margin:16px auto}.top-actions .button{width:100%;font-size:15px;padding:13px 12px;min-height:54px}.top-actions .price-jump{font-size:19px}.top-actions .ui-icon{width:21px;height:21px}.top-feature{grid-template-columns:1fr;gap:17px}.top-feature .gift-banner{padding:23px 15px;gap:5px}.top-feature .gift-title{font-size:26px}.top-feature .gift-condition{font-size:15px}.top-feature .gift-illustration{width:118px}.opening-storefront{max-width:350px;width:100%;justify-self:center}.opening-storefront figcaption{font-size:10px}.intro-foot .price-jump{font-size:17px;min-height:54px;width:100%}.feedback-groups{grid-template-columns:1fr;gap:18px}.feedback-card{padding:17px}.feedback-card>h3{font-size:19px}.feedback-card .feedback-grid{grid-template-columns:1fr}.gallery-more>summary{font-size:14px}.procedure .steps li{grid-template-columns:39px 1fr;gap:10px}.step-symbol{width:38px;height:40px;border-radius:10px}.step-symbol .ui-icon{width:24px;height:24px}.policy-highlight{font-size:21px;padding:22px 16px;flex-direction:column;gap:10px;line-height:1.75}.policy-highlight>.ui-icon{width:36px;height:36px;flex-basis:36px}.care-block li,.daily-care li{gap:10px}.care-block li>.ui-icon,.daily-care li>.ui-icon{width:22px;height:22px;flex-basis:22px}.faq-section .faq summary{font-size:15px}.faq-section .faq p{font-size:14px}.faq-section h2>.ui-icon{width:26px;height:26px}.region-faq-heading{font-size:21px}}
@media(prefers-reduced-motion:reduce){.policy-highlight{animation:none}}
/* Inline hv-gift-v3.svg to animate its child groups. */
@media(max-width:640px){.top-actions{grid-template-columns:1fr}.top-actions .quick-jump{font-size:15px}}
.hv-gift {
  display: block;
  width: 7rem;
  max-width: 100%;
  height: auto;
  overflow: visible;
}

.hv-gift .gift-lid {
  transform-box: view-box;
  transform-origin: 80px 72px;
}

.hv-gift .gift-rays {
  opacity: 0;
  transform-box: view-box;
  transform-origin: 80px 64px;
}

.hv-gift .gift-body {
  transform-box: view-box;
  transform-origin: 80px 140px;
}

.hv-gift.gift-animate .gift-lid {
  animation: hv-gift-open 5.6s cubic-bezier(.22, .68, .25, 1) infinite;
}

.hv-gift.gift-animate .gift-rays {
  animation: hv-gift-reveal 5.6s ease-out infinite;
}

.hv-gift.gift-animate .gift-body {
  animation: hv-gift-settle 5.6s ease-in-out infinite;
}

@keyframes hv-gift-open {
  0%, 15%, 72%, 100% { transform: translateY(0) rotate(0); }
  23% { transform: translateY(-3px) rotate(-2deg); }
  36%, 49% { transform: translateY(-16px) rotate(-8deg); }
  62% { transform: translateY(-4px) rotate(2deg); }
}

@keyframes hv-gift-reveal {
  0%, 22%, 66%, 100% { opacity: 0; transform: translateY(3px) scale(.88); }
  36%, 47% { opacity: 1; transform: translateY(-2px) scale(1); }
  58% { opacity: 0; transform: translateY(-6px) scale(1.06); }
}

@keyframes hv-gift-settle {
  0%, 20%, 40%, 61%, 78%, 100% { transform: scale(1); }
  28% { transform: scale(1.015, .985); }
  69% { transform: scale(1.012, .988); }
}

@media (prefers-reduced-motion: reduce) {
  .hv-gift.gift-animate .gift-lid,
  .hv-gift.gift-animate .gift-rays,
  .hv-gift.gift-animate .gift-body { animation: none; transform: none; }
  .hv-gift .gift-rays { opacity: .7; }
}
