/* A quieter, consistent clinical palette for the lower half of the homepage. */
.service-showcase,.testimonials,.trust-section{background:var(--pearl-white)}.equipment-section,.team-section{background:var(--pearl-mist)}.section-side-note{max-width:300px;margin:0;color:#687d86;font-size:13px;line-height:1.7}

/* Equipment cards become visual profiles once the editor uploads a device image. */
.equipment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:52px}.equipment-card{display:grid;grid-template-columns:1fr;align-items:start;min-height:0;overflow:hidden;border:1px solid var(--pearl-line);background:var(--pearl-white);box-shadow:0 12px 30px rgba(6,42,66,.045);transition:transform .52s cubic-bezier(.2,.75,.2,1),box-shadow .52s cubic-bezier(.2,.75,.2,1),border-color .52s}.equipment-card:hover,.equipment-card:focus-within{transform:translateY(-8px);border-color:rgba(119,171,176,.58);box-shadow:0 25px 48px rgba(6,42,66,.12)}.equipment-media{position:relative;display:grid;width:100%;aspect-ratio:1/1;min-height:0;place-items:center;overflow:hidden;background:linear-gradient(150deg,#092e48,#22617a)}.equipment-media:after{position:absolute;inset:0;content:"";background:linear-gradient(145deg,transparent 35%,rgba(244,240,231,.24));opacity:.45;transition:opacity .5s}.equipment-card:hover .equipment-media:after{opacity:.75}.equipment-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .7s}.equipment-card:hover .equipment-media img{transform:scale(1.08);filter:saturate(1.06)}.equipment-symbol{position:relative;z-index:1;display:grid;place-items:center;width:76px;height:76px;border:1px solid rgba(244,240,231,.7);border-radius:50%;color:var(--pearl-ivory);font-size:20px;font-weight:600;letter-spacing:-.04em;box-shadow:inset 0 0 0 8px rgba(244,240,231,.07)}.equipment-copy{display:flex;flex-direction:column;padding:23px}.equipment-index{margin:0 0 12px;color:#6d999e;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.equipment-copy h3{margin:0;color:var(--pearl-ink);font-size:18px;font-weight:600;line-height:1.35}.equipment-description{margin:10px 0 16px;color:#647a83;font-size:13px;line-height:1.65}.equipment-copy ul{display:grid;gap:7px;margin:0;padding:14px 0 0;border-top:1px solid var(--pearl-line);list-style:none}.equipment-copy li{position:relative;padding-left:14px;color:#506a75;font-size:12px;line-height:1.5;transition:transform .35s}.equipment-copy li:before{position:absolute;left:0;top:.6em;width:4px;height:4px;border-radius:50%;background:#77abb0;content:""}.equipment-card:hover .equipment-copy li{transform:translateX(3px)}

.trust-section{display:grid;grid-template-columns:minmax(270px,.76fr) minmax(0,1.24fr);gap:80px;align-items:start}.trust-heading h2{margin-bottom:0}.trust-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;perspective:1200px}.trust-list article{position:relative;min-height:205px;padding:24px 20px 21px;overflow:hidden;border:1px solid rgba(119,171,176,.27);background:linear-gradient(145deg,#fbfcfa,#eef5f4);box-shadow:0 12px 0 rgba(6,42,66,.045),0 25px 38px rgba(6,42,66,.07);transform:rotateX(2deg) rotateY(-2deg);transition:transform .5s cubic-bezier(.2,.75,.2,1),box-shadow .5s}.trust-list article:before{position:absolute;inset:0;content:"";background:linear-gradient(135deg,rgba(255,255,255,.72),transparent 48%);pointer-events:none}.trust-list article:nth-child(2){transform:translateY(14px) rotateX(2deg)}.trust-list article:nth-child(3){transform:translateY(-7px) rotateX(2deg) rotateY(2deg)}.trust-list article:nth-child(4){transform:translateY(3px) rotateX(2deg) rotateY(-1deg)}.trust-list article:nth-child(5){transform:translateY(17px) rotateX(2deg) rotateY(1deg)}.trust-list article:hover{z-index:2;transform:translateY(-8px) rotateX(0) rotateY(0);box-shadow:0 17px 0 rgba(6,42,66,.055),0 34px 50px rgba(6,42,66,.14)}.trust-icon{position:relative;z-index:1;display:grid;place-items:center;width:45px;height:45px;margin-bottom:28px;border-radius:14px;background:var(--pearl-navy);color:var(--pearl-teal);box-shadow:inset 0 0 0 1px rgba(244,240,231,.12),0 8px 14px rgba(6,42,66,.17)}.trust-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.trust-list h3{position:relative;z-index:1;margin:0;color:var(--pearl-ink);font-size:15px;font-weight:600;line-height:1.35}.trust-list p{position:relative;z-index:1;margin:9px 0 0;color:#647a83;font-size:12px;line-height:1.6}

/* Doctor cards use an editorial profile layout; all credentials remain admin-managed. */
.doctor-profiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:54px}.doctor-profile{display:grid;grid-template-columns:190px 1fr;min-height:330px;overflow:hidden;border:1px solid var(--pearl-line);background:var(--pearl-white);box-shadow:0 12px 30px rgba(6,42,66,.045);transition:transform .52s cubic-bezier(.2,.75,.2,1),box-shadow .52s,border-color .52s}.doctor-profile:hover{transform:translateY(-8px);border-color:rgba(119,171,176,.58);box-shadow:0 25px 48px rgba(6,42,66,.12)}.doctor-photo{position:relative;display:grid;min-height:100%;place-items:center;overflow:hidden;background:linear-gradient(150deg,#0c405f,#062a42);color:var(--pearl-ivory);font-size:52px;font-weight:500}.doctor-photo:after{position:absolute;inset:0;content:"";background:linear-gradient(160deg,transparent 38%,rgba(119,171,176,.22));transition:opacity .55s}.doctor-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .7s}.doctor-profile:hover .doctor-photo img{transform:scale(1.07);filter:saturate(1.04)}.doctor-content{padding:27px}.doctor-role{margin:0 0 8px;color:#648d92;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.doctor-content h3{margin:0;color:var(--pearl-ink);font-size:22px;line-height:1.25;font-weight:600}.doctor-intro{margin:13px 0 0;color:#607680;font-size:14px;line-height:1.65}.doctor-content dl{margin:22px 0 0}.doctor-content dl div{padding:10px 0;border-top:1px solid var(--pearl-line)}.doctor-content dt{color:#75878e;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.doctor-content dd{margin:4px 0 0;color:var(--pearl-ink);font-size:13px;line-height:1.55}.team-note{margin-top:18px}

/* A clear care pathway with icons instead of impersonal step numbers. */
.care-journey{background:var(--pearl-navy)}.clinical-timeline{position:relative;max-width:980px;margin:63px auto 0;padding:0;list-style:none}.clinical-timeline:before{position:absolute;left:50%;top:23px;bottom:23px;width:1px;background:rgba(244,240,231,.18);content:""}.clinical-timeline li{position:relative;display:grid;grid-template-columns:1fr 86px 1fr;align-items:start;min-height:150px}.timeline-icon{grid-column:2;position:relative;z-index:2;display:grid;place-items:center;width:48px;height:48px;margin:0 auto;border:1px solid rgba(119,171,176,.7);border-radius:50%;background:var(--pearl-navy);color:var(--pearl-teal);box-shadow:0 0 0 7px rgba(6,42,66,.5)}.timeline-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.55}.clinical-timeline li>div{grid-column:1;padding:2px 44px 30px 0;text-align:right}.clinical-timeline li:nth-child(even)>div{grid-column:3;grid-row:1;padding:2px 0 30px 44px;text-align:left}.clinical-timeline li:nth-child(even)>.timeline-icon{grid-row:1}.clinical-timeline h3{margin:0 0 9px;color:var(--pearl-ivory);font-size:19px;font-weight:600}.clinical-timeline p{margin:0;color:rgba(244,240,231,.66);font-size:14px;line-height:1.65}

.floating-actions .zalo{background:#0068ff}.floating-actions .zalo-logo{display:block;width:29px;height:29px;border-radius:8px}
/* Each group appears only once it enters the viewport; hover remains deliberately restrained. */
.motion-item{opacity:0;transform:translateY(24px) scale(.985);transition:opacity .64s cubic-bezier(.2,.75,.2,1) var(--motion-delay,0ms),transform .64s cubic-bezier(.2,.75,.2,1) var(--motion-delay,0ms)}.motion-item.is-visible{opacity:1;transform:translateY(0) scale(1)}.service-item.motion-item.is-visible:hover{transform:translateY(-5px);background:rgba(250,249,246,.72)}.doctor-profile.motion-item.is-visible:hover,.equipment-card.motion-item.is-visible:hover{transform:translateY(-8px)}.clinical-timeline:after{position:absolute;z-index:3;left:calc(50% - 4px);top:22px;width:8px;height:8px;border-radius:50%;background:var(--pearl-ivory);box-shadow:0 0 0 7px rgba(119,171,176,.12),0 0 24px var(--pearl-teal);content:"";animation:route-signal 7s cubic-bezier(.45,0,.55,1) infinite}.clinical-timeline li.motion-item.is-visible .timeline-icon{animation:timeline-arrive .68s cubic-bezier(.2,.85,.2,1) both}.timeline-icon:before{position:absolute;inset:-5px;border:1px solid rgba(119,171,176,.28);border-radius:50%;content:"";animation:orbit-ring 5s linear infinite}.timeline-icon svg{position:relative;z-index:1}@keyframes route-signal{0%,12%{transform:translateY(0);opacity:0}18%,78%{opacity:1}88%,100%{transform:translateY(calc(100% + 480px));opacity:0}}@keyframes timeline-arrive{0%{transform:scale(.35) rotate(-24deg);opacity:0}65%{transform:scale(1.14) rotate(4deg);opacity:1}100%{transform:scale(1) rotate(0)}}@keyframes orbit-ring{to{transform:rotate(360deg)}}
/* Two-level service navigation draws its content directly from the Admin categories. */
.service-nav{position:relative}.service-nav summary,.service-category-nav summary{display:flex;align-items:center;justify-content:space-between;gap:5px;list-style:none;cursor:pointer;color:var(--pearl-ink);font-size:14px;font-weight:600}.service-nav summary::-webkit-details-marker,.service-category-nav summary::-webkit-details-marker{display:none}.service-nav summary svg,.service-category-nav summary svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .25s}.service-nav[open]>summary>svg{transform:rotate(180deg)}.service-category-nav[open]>summary>svg{transform:rotate(90deg)}.service-menu-panel{position:absolute;left:50%;top:calc(100% + 19px);width:252px;padding:12px;border:1px solid rgba(6,42,66,.12);background:rgba(250,249,246,.98);box-shadow:0 24px 50px rgba(6,42,66,.18);transform:translateX(-50%)}.service-menu-head{padding:10px 12px 14px;border-bottom:1px solid var(--pearl-line)}.header nav .service-menu-head a{display:inline-flex;padding:0;color:var(--pearl-navy);font-size:13px}.service-menu-groups{display:grid;gap:2px;padding-top:4px}.service-category-nav{position:relative;padding:0 12px}.service-category-nav>summary{padding:10px 0;font-size:13px}.service-category-nav>ul{position:absolute;left:calc(100% + 13px);top:-13px;display:grid;gap:1px;width:270px;margin:0;padding:13px 18px;list-style:none;border:1px solid rgba(6,42,66,.12);background:rgba(250,249,246,.99);box-shadow:0 24px 50px rgba(6,42,66,.18)}.header nav .service-category-nav a{display:block;padding:7px 0;color:var(--pearl-ink);font-size:13px;font-weight:500;line-height:1.35}.header nav .service-category-nav a:hover{color:#287e86;text-decoration:none}
@media(max-width:900px){.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-section{grid-template-columns:1fr;gap:42px}.doctor-profiles{grid-template-columns:1fr}.clinical-timeline{max-width:760px}.service-nav summary{padding:11px 0;border-bottom:1px solid #e5eef4}.service-menu-panel{position:static;width:auto;margin:0;box-shadow:none;transform:none}.service-menu-groups{grid-template-columns:1fr}.service-menu-groups section+section{border-top:1px solid var(--pearl-line);border-left:0}}
@media(max-width:720px){.section-side-note{font-size:12px}.equipment-grid{grid-template-columns:1fr;gap:16px;margin-top:36px}.equipment-copy{padding:19px}.equipment-index{margin-bottom:9px;font-size:9px}.equipment-copy h3{font-size:16px}.equipment-description{margin:8px 0 12px;font-size:12px}.equipment-copy ul{gap:5px;padding-top:10px}.equipment-copy li{font-size:11px}.equipment-symbol{width:58px;height:58px;font-size:16px}.trust-section{display:block}.trust-list{grid-template-columns:1fr 1fr;gap:12px;margin-top:36px}.trust-list article,.trust-list article:nth-child(2),.trust-list article:nth-child(3),.trust-list article:nth-child(4),.trust-list article:nth-child(5){min-height:164px;padding:17px 15px;transform:none}.trust-list article:last-child{grid-column:1/-1}.trust-list article:hover{transform:translateY(-5px)}.trust-icon{width:38px;height:38px;margin-bottom:18px;border-radius:12px}.trust-icon svg{width:19px;height:19px}.trust-list h3{font-size:13px}.trust-list p{font-size:11px}.doctor-profiles{margin-top:35px;gap:16px}.doctor-profile{grid-template-columns:112px 1fr;min-height:0}.doctor-photo{font-size:34px}.doctor-content{padding:19px}.doctor-content h3{font-size:18px}.doctor-intro{font-size:13px}.doctor-content dl{margin-top:15px}.doctor-content dl div{padding:8px 0}.clinical-timeline{margin-top:42px;padding:0}.clinical-timeline:before{left:23px;top:23px;bottom:23px}.clinical-timeline:after{left:19px;top:21px;animation:route-signal-mobile 7s cubic-bezier(.45,0,.55,1) infinite}.clinical-timeline li{display:grid;grid-template-columns:48px 1fr;gap:17px;padding:0 0 30px}.timeline-icon,.clinical-timeline li:nth-child(even)>.timeline-icon{grid-column:1;grid-row:1;width:48px;height:48px;margin:0}.clinical-timeline li>div,.clinical-timeline li:nth-child(even)>div{grid-column:2;grid-row:1;padding:4px 0 0;text-align:left}.clinical-timeline h3{font-size:16px}.clinical-timeline p{font-size:12px;line-height:1.7}.floating-actions .zalo-logo{width:26px;height:26px}}@keyframes route-signal-mobile{0%,12%{transform:translateY(0);opacity:0}18%,78%{opacity:1}88%,100%{transform:translateY(calc(100% + 580px));opacity:0}}
@media(prefers-reduced-motion:reduce){.equipment-card,.doctor-profile,.equipment-media img,.doctor-photo img,.equipment-copy li,.motion-item{transition:none!important}.equipment-card:hover,.doctor-profile:hover{transform:none}.motion-item{opacity:1;transform:none}.clinical-timeline:after,.timeline-icon:before,.clinical-timeline li.motion-item.is-visible .timeline-icon{animation:none}}
/* Distinct reveal language: service light sweep, trust-card settle, portrait sheen. */
.service-item.is-visible:before{position:absolute;z-index:0;inset:0;background:linear-gradient(105deg,transparent 25%,rgba(119,171,176,.17) 49%,transparent 72%);content:"";pointer-events:none;animation:service-sweep 1.1s cubic-bezier(.2,.8,.2,1) both}.service-item>*{position:relative;z-index:1}.doctor-profile.is-visible .doctor-photo:after{animation:portrait-sheen 1.25s cubic-bezier(.2,.8,.2,1) both}.doctor-profile.is-visible .doctor-content{animation:doctor-copy-in .72s cubic-bezier(.2,.8,.2,1) both}.trust-list article{--trust-y:0px}.trust-list article:nth-child(2){--trust-y:14px}.trust-list article:nth-child(3){--trust-y:-7px}.trust-list article:nth-child(4){--trust-y:3px}.trust-list article:nth-child(5){--trust-y:17px}.trust-list article:nth-child(6){--trust-y:8px}.trust-list article.motion-item{opacity:0;transform:translateY(calc(var(--trust-y) + 38px)) rotateX(7deg) rotateY(-4deg);transition:opacity .62s cubic-bezier(.2,.8,.2,1) var(--motion-delay,0ms),transform .7s cubic-bezier(.2,.8,.2,1) var(--motion-delay,0ms),box-shadow .5s}.trust-list article.motion-item.is-visible{opacity:1;transform:translateY(var(--trust-y)) rotateX(2deg) rotateY(-2deg)}.trust-list article.motion-item.is-visible:nth-child(3),.trust-list article.motion-item.is-visible:nth-child(5){transform:translateY(var(--trust-y)) rotateX(2deg) rotateY(2deg)}.trust-list article.motion-item.is-visible:hover{transform:translateY(-8px) rotateX(0) rotateY(0)}.trust-list article.is-visible:before{animation:trust-glint 1s cubic-bezier(.2,.8,.2,1) both}@keyframes service-sweep{from{opacity:0;transform:translateX(-60%)}45%{opacity:1}to{opacity:0;transform:translateX(68%)}}@keyframes portrait-sheen{0%{opacity:0;transform:translateX(-38%)}38%{opacity:.65}100%{opacity:.22;transform:translateX(0)}}@keyframes doctor-copy-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}@keyframes trust-glint{from{opacity:0;transform:translateX(-30%)}55%{opacity:.85}to{opacity:1;transform:translateX(0)}}
@media(max-width:900px){.service-category-nav{padding:0 12px}.service-category-nav>summary{padding:11px 0;border-bottom:1px solid var(--pearl-line)}.service-category-nav>ul{position:static;width:auto;margin:0;padding:0 0 10px 12px;border:0;background:transparent;box-shadow:none}.service-category-nav[open]>ul{display:grid}.trust-list article.motion-item.is-visible,.trust-list article.motion-item.is-visible:nth-child(3),.trust-list article.motion-item.is-visible:nth-child(5){transform:translateY(var(--trust-y)) rotateX(1deg) rotateY(0)}}
@media(prefers-reduced-motion:reduce){.service-item.is-visible:before,.doctor-profile.is-visible .doctor-photo:after,.doctor-profile.is-visible .doctor-content,.trust-list article.is-visible:before{animation:none}.trust-list article.motion-item,.trust-list article.motion-item.is-visible{opacity:1;transform:none}}
/* Mobile shell: keep the header and conversion controls visible without horizontal overflow. */
html,body{max-width:100%;overflow-x:clip}@media(max-width:900px){.header{position:sticky!important;top:0;z-index:100}.floating-actions{left:auto!important;right:10px!important;bottom:11px!important;display:flex!important;flex-direction:column!important;gap:6px!important}.floating-actions a,.floating-actions .booking{display:grid!important;width:42px!important;height:42px!important;padding:0!important;border-radius:50%!important}.floating-actions svg{display:block!important;width:18px!important;height:18px!important}.floating-actions .zalo-logo{width:27px!important;height:27px!important}.chat-launch{right:10px!important;bottom:174px!important}.chat-panel{right:12px!important;bottom:228px!important}.trust-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.trust-list article,.trust-list article:nth-child(2),.trust-list article:nth-child(3),.trust-list article:nth-child(4),.trust-list article:nth-child(5),.trust-list article:nth-child(6),.trust-list article.motion-item.is-visible,.trust-list article.motion-item.is-visible:nth-child(3),.trust-list article.motion-item.is-visible:nth-child(5){min-height:185px;transform:none}.trust-list article:last-child{grid-column:auto}}@media(max-width:600px){.trust-list{grid-template-columns:1fr}.trust-list article,.trust-list article:nth-child(2),.trust-list article:nth-child(3),.trust-list article:nth-child(4),.trust-list article:nth-child(5),.trust-list article:nth-child(6){min-height:0}.trust-list article.motion-item.is-visible{transform:none}.trust-list article:hover{transform:translateY(-4px)}}
