:root{--gold:#ad820c;--gold-dark:#886308;--ink:#29271f;--muted:#706c63;--cream:#f5f3eb;--line:#e4dfd1;--wine:#6f302b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:16px/1.7 Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #bd941e;outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}p{margin:0 0 24px;color:var(--muted)}h1,h2,h3{line-height:1.2;letter-spacing:-.025em;margin:0 0 24px}h2{font-size:clamp(30px,3.2vw,46px);font-weight:600}h3{font-size:21px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.section{padding:100px 0}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.2em;color:var(--gold-dark);margin-bottom:17px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 25px;border:1px solid transparent;border-radius:7px;font-size:16px;font-weight:600;line-height:1.4;text-align:center;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:white}.gold:hover{background:var(--gold-dark)}.outline{border-color:var(--gold);color:var(--gold-dark);background:transparent}.outline:hover{background:#f4ecd5}.white-outline{border:2px solid white;color:white;background:transparent}.white-outline:hover{background:#fff2}.actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.center{text-align:center;margin-top:38px}.skip{position:absolute;left:15px;top:-70px;z-index:150;background:white;padding:10px}.skip:focus{top:10px}.topbar{background:var(--gold);color:white;font-size:14px}.top-content{min-height:36px;display:flex;justify-content:space-between;gap:20px;align-items:center}.top-content i{font-style:normal;margin:0 14px}header{position:sticky;top:0;background:#f7f6f0f5;backdrop-filter:blur(14px);z-index:50;border-bottom:1px solid #eee9dc}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{height:59px;width:59px;border-radius:50%;object-fit:cover}.brand span{font-family:Georgia,serif;letter-spacing:.12em;color:var(--wine);font-size:20px;line-height:1.2}.brand small{display:block;font:10px/1.4 Arial,sans-serif;letter-spacing:.13em;margin-top:6px}.header-inner nav{display:flex;gap:26px;font-size:16px;font-weight:600}.header-inner nav a:hover{color:var(--gold)}.nav-book{font-size:15px;padding:10px 20px;min-height:42px}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:5px;font-size:24px;width:42px;height:42px}.hero{height:min(820px,calc(100svh - 36px));min-height:650px;position:relative;display:flex;align-items:center;overflow:hidden;color:white;background:#332b22}.hero-images,.hero-image,.shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;opacity:0;transition:opacity 1s;object-position:center 48%}.hero-image.active{opacity:1}.shade{background:#100d07a6}.hero-copy{position:relative;z-index:2;text-align:center;padding:75px 70px 90px}.hero .eyebrow{color:#e6c665}.hero h1{font-size:clamp(44px,5vw,70px);font-weight:700;line-height:1.16;letter-spacing:-.025em;margin:25px 0 30px}.hero .lead{color:#f4f0e7;font-size:18px;line-height:1.75;max-width:740px;margin:0 auto 34px}.hero .button{padding:15px 28px}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;border:0;background:#ffffff30;color:white;width:46px;height:46px;border-radius:50%;font-size:32px;line-height:1}.hero-arrow:hover{background:#ffffff60}.previous{left:16px}.next{right:16px}.hero-bottom{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:16px;z-index:4}.dots{display:flex;gap:10px}.dots button{width:12px;height:12px;padding:0;border:0;border-radius:20px;background:#ffffff70;position:relative}.dots button:before{content:'';position:absolute;inset:-10px -4px}.dots button.active{width:32px;background:var(--gold)}.pause{border:1px solid #fff6;background:#0003;color:white;width:30px;height:30px;border-radius:50%;font-size:13px}.section-heading{text-align:center;max-width:820px;margin:0 auto 54px}.section-heading p:last-child{max-width:730px;margin:0 auto;font-size:18px}.services{background:#f8f7f2}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.service-card{border-radius:12px;overflow:hidden;background:white;box-shadow:0 6px 25px #3325000d;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #3325001a}.service-image{height:230px;overflow:hidden;position:relative}.service-image img{width:100%;height:100%;transition:transform .5s}.service-card:hover img{transform:scale(1.04)}.service-body{padding:24px;display:flex;flex:1;flex-direction:column}.service-body h3{font-size:21px;margin-bottom:14px;min-height:50px}.service-body>p{font-size:16px;line-height:1.6;margin-bottom:20px;flex:1}.prices{border-block:1px solid var(--line);padding:12px 0;margin-bottom:20px;font-size:14px}.prices div{display:flex;justify-content:space-between;gap:8px;padding:3px 0}.prices b{color:var(--gold-dark);white-space:nowrap}.service-body .button{width:100%;font-size:14px;min-height:42px;padding:10px}.extra-services{margin-top:28px;grid-template-columns:repeat(2,1fr);max-width:610px;margin-inline:auto}[hidden]{display:none!important}.hair-section{background:#ece4d0;padding:65px 0}.hair-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.hair-grid>div{max-width:525px}.hair-grid p{color:#625b4e}.hair-grid img{width:100%;height:350px;border-radius:12px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.about-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.about-photos img{height:235px;width:100%;border-radius:10px}.about-photos img:nth-child(2){transform:translateY(24px)}.about-photos img:nth-child(4){transform:translateY(24px)}.about-copy>p{line-height:1.8}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-block:1px solid var(--line);padding:25px 0;margin:30px 0}.values span{font-size:28px;font-weight:600;color:var(--gold)}.values h3{font-size:16px;margin:8px 0}.values p{font-size:14px;margin:0}.gallery{background:var(--cream)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:255px 255px;gap:20px}.gallery-grid button{padding:0;border:0;border-radius:12px;overflow:hidden;position:relative;background:#463b29;text-align:left}.gallery-grid button:first-child{grid-column:span 2;grid-row:span 2}.gallery-grid img{height:100%;width:100%;transition:transform .5s}.gallery-grid button:hover img{transform:scale(1.04)}.gallery-grid button:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 55%)}.gallery-grid span{position:absolute;z-index:1;bottom:18px;left:18px;right:18px;color:white;font-size:14px;font-weight:600}.review-inner{text-align:center;max-width:780px}.review-inner>p:not(.eyebrow){font-size:18px}.google-mark{display:inline-flex;justify-content:center;align-items:center;width:52px;height:52px;border:1px solid var(--line);border-radius:50%;font-size:30px;font-weight:700;color:#4285f4;margin-bottom:24px}.booking{position:relative;background:#302920;color:white;text-align:center;padding:90px 0}.booking>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.booking .shade{background:#17120bd4}.booking-content{position:relative;z-index:1;max-width:900px}.booking .eyebrow{color:#dfbf66}.booking h2{font-size:clamp(34px,3.7vw,52px)}.booking p{color:#e5dfd4;font-size:18px}.booking-details{display:flex;justify-content:center;gap:65px;margin:36px 0}.booking-details>div{display:flex;flex-direction:column;text-align:left;font-size:18px}.booking-details small{font-size:13px;color:#e1c87e;letter-spacing:.15em;margin-bottom:9px}.location{padding:65px 0;background:#f7f6f0}.location-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center}.location h2{font-size:34px}.location iframe{width:100%;height:330px;border:0;border-radius:10px;background:#eee8db}.text-link{font-weight:600;color:var(--gold-dark)}footer{padding:65px 0 0;background:#26261f;color:#e9e5d9}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr 1.15fr;gap:45px}.footer-brand span{color:#e0c574}.footer-brand{margin-bottom:22px}.footer-grid h3{font-size:18px;margin-bottom:22px;color:white}.footer-grid p,.footer-grid>div>a:not(.brand){font-size:14px;color:#c4c1b4;line-height:1.9}.footer-grid>div>a:not(.brand){display:block;margin-bottom:8px}.footer-grid a:hover{color:#e3c878}.footer-bottom{border-top:1px solid #ffffff20;margin-top:45px;padding:25px 0;display:flex;justify-content:space-between;font-size:13px;color:#aaa899}.contact-dock{position:fixed;right:20px;bottom:55px;display:flex;flex-direction:column;gap:12px;z-index:55}.contact-dock a{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;box-shadow:0 3px 15px #0003;border:2px solid #fffd;font-weight:700}.facebook{background:#1685ed;font-size:29px}.phone{background:#45ad58;font-size:27px}.zalo{background:white;color:#0679d5!important;font-size:17px}.whatsapp{background:#259d52;font-size:14px}.language{position:fixed;left:12px;bottom:14px;z-index:54;display:flex;align-items:center;gap:5px;background:#fffffff2;padding:5px 9px;border:1px solid var(--line);border-radius:6px;box-shadow:0 3px 12px #0001}.language label{font-size:12px;color:#655d4b}.language select{border:0;background:transparent;max-width:105px;font-size:13px;min-height:30px;color:var(--ink)}#google_translate_element{display:none}#language-status{font-size:12px;max-width:190px;color:var(--wine)}.mobile-book{display:none}dialog{border:0;border-radius:12px;padding:18px;max-width:min(94vw,1100px);max-height:94svh;background:#211f19;color:white;overflow:auto}dialog::backdrop{background:#000c}dialog>img{max-height:72svh;max-width:100%;margin:auto;object-fit:contain}dialog>p{color:#eee;text-align:center;font-size:14px;margin:12px 40px}.close-dialog{position:absolute;right:24px;top:24px;border:0;background:#fff;color:#222;width:38px;height:38px;border-radius:50%;font-size:28px;line-height:1}.dialog-controls{display:flex;align-items:center;justify-content:center;gap:25px}.dialog-controls button{width:40px;height:36px;border:1px solid #fff6;border-radius:5px;background:transparent;color:white;font-size:26px;line-height:1}.dialog-controls span{font-size:14px}
@media(min-width:1500px){.hero{height:850px}}@media(max-width:1160px){.wrap{width:calc(100% - 48px)}.header-inner nav{gap:17px;font-size:14px}.brand span{font-size:18px}.brand img{width:50px;height:50px}.header-inner{gap:16px}.service-grid{gap:18px}.service-body{padding:20px}.service-body h3{font-size:19px}.service-image{height:205px}.about-grid{gap:38px}.footer-grid{gap:25px}.contact-dock{right:10px}.gallery-grid{grid-template-rows:220px 220px}}
@media(max-width:980px){.nav-book{margin-left:auto}.menu-toggle{display:block}.header-inner{height:80px}.header-inner nav{display:none;position:absolute;left:0;right:0;top:80px;background:#faf9f3;padding:20px 24px;box-shadow:0 15px 20px #0001;flex-direction:column;gap:0;font-size:16px}.header-inner nav.open{display:flex}.header-inner nav a{padding:10px}.top-content{font-size:12px}.hero{min-height:610px;height:720px}.hero-copy{padding-inline:50px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-body h3{min-height:0}.service-image{height:270px}.hair-grid{gap:35px}.about-grid{grid-template-columns:1fr;gap:70px}.about-photos{max-width:670px;width:100%;margin:auto}.about-photos img{height:240px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:300px 230px 230px}.gallery-grid button:first-child{grid-row:span 1}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px}.booking-details{gap:35px}.location-grid{gap:30px}.section{padding:75px 0}.language label{display:none}}
@media(max-width:620px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 36px)}.topbar{display:none}.header-inner{height:73px}.header-inner nav{top:73px}.brand span{font-size:17px}.brand img{width:45px;height:45px}.brand small{font-size:9px}.nav-book{display:none}.menu-toggle{margin-left:auto}.hero{min-height:650px;height:calc(100svh - 73px);max-height:850px}.hero-copy{padding:60px 12px 80px}.hero h1{font-size:clamp(36px,9.5vw,52px);line-height:1.22}.hero .eyebrow{font-size:12px;letter-spacing:.15em}.hero .lead{font-size:16px;line-height:1.7;padding:0 12px}.hero-arrow{width:28px;height:38px;font-size:25px;top:auto;bottom:23px;transform:none;background:transparent}.previous{left:20px}.next{right:20px}.hero-bottom{bottom:27px}.hero .actions{gap:12px}.hero .button{font-size:15px;padding:13px 20px;min-width:235px}.section{padding:65px 0}.section-heading{margin-bottom:33px}.section-heading p:last-child{font-size:16px}h2{font-size:32px;line-height:1.22}.eyebrow{font-size:12px;letter-spacing:.16em}.service-grid{grid-template-columns:1fr;gap:24px}.service-image{height:245px}.service-body{padding:25px}.service-body h3{font-size:23px}.service-body .button{font-size:16px}.prices{font-size:16px}.hair-grid{grid-template-columns:1fr;gap:30px}.hair-grid img{height:290px}.hair-section{padding:55px 0}.about-photos{gap:12px}.about-photos img{height:170px}.about-grid{gap:55px}.values{gap:12px}.values h3{font-size:15px;line-height:1.4}.values p{font-size:14px}.gallery-grid{gap:12px;grid-template-rows:330px 190px 190px}.gallery-grid span{left:12px;right:12px;bottom:12px;font-size:12px}.review-inner>p:not(.eyebrow){font-size:16px}.review-inner .button{font-size:14px}.booking{padding:65px 0}.booking p{font-size:16px}.booking-details{flex-direction:column;gap:22px;align-items:center}.booking-details>div{text-align:center;font-size:18px}.booking .actions{flex-direction:column;align-items:center}.booking .button{min-width:235px}.location-grid{grid-template-columns:1fr;gap:28px}.location{padding:50px 0}.location iframe{height:290px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:span 2}.footer-grid h3{font-size:16px}.footer-grid p,.footer-grid>div>a:not(.brand){font-size:14px}.footer-bottom{font-size:12px;gap:14px;padding-bottom:105px}footer{padding-top:50px}.contact-dock{right:9px;bottom:118px;gap:8px}.contact-dock a{width:40px;height:40px}.contact-dock .facebook{font-size:25px}.contact-dock .phone{font-size:23px}.contact-dock .zalo{font-size:14px}.contact-dock .whatsapp{font-size:12px}.language{left:8px;bottom:66px}.mobile-book{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.3fr;z-index:60;background:white;box-shadow:0 -2px 15px #0001;padding-bottom:env(safe-area-inset-bottom)}.mobile-book a{min-height:56px;display:flex;align-items:center;justify-content:center;color:var(--gold-dark);font-size:15px;font-weight:600}.mobile-book a:last-child{background:var(--gold);color:white}dialog{padding:10px}.close-dialog{right:15px;top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Softer typography and lighter controls across all pages. */
:root{--body-font:'Be Vietnam Pro',Arial,sans-serif;--heading-font:'Lora',Georgia,serif}
body{font-family:var(--body-font);font-weight:400;line-height:1.8}h1,h2{font-family:var(--heading-font);font-weight:400;letter-spacing:-.035em;line-height:1.3}h3{font-weight:500;letter-spacing:-.02em;line-height:1.4}.hero h1{font-family:var(--heading-font);font-weight:400;font-size:clamp(43px,5vw,68px);line-height:1.25}.hero .lead{font-size:17px;line-height:1.9}.hero .eyebrow{font-size:12px;letter-spacing:.22em}.header-inner nav{font-weight:400;font-size:14px;gap:25px}.header-inner nav a{padding-block:9px;position:relative}.header-inner nav a[aria-current=page]{color:var(--gold-dark)}.header-inner nav a[aria-current=page]:after{content:'';height:1px;background:var(--gold);position:absolute;left:0;right:0;bottom:2px}.brand span{font-family:var(--heading-font);font-weight:400}.brand small{font-family:var(--body-font);font-weight:400}.button{font-family:var(--body-font);font-weight:400;font-size:14px;min-height:44px;padding:10px 22px;border-width:1px;border-radius:4px;box-shadow:none;letter-spacing:.01em}.button:hover{transform:none}.white-outline{border-width:1px}.hero .button{font-size:14px;padding:12px 24px;min-height:46px}.nav-book{min-height:40px;padding:9px 18px;font-size:13px;background:transparent;border-color:var(--gold);color:var(--gold-dark)}.nav-book:hover{background:var(--gold);color:white}.service-body h3{font-family:var(--heading-font);font-weight:400;font-size:23px;line-height:1.35;min-height:62px}.service-body>p{font-size:15px}.service-body .button{font-size:13px;min-height:42px;border-color:#b79545}.prices{font-size:13px}.prices b{font-weight:500}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.17em}.values span{font-family:var(--heading-font);font-weight:400}.values h3,.footer-grid h3{font-weight:500}.page-heading{padding:36px 0 52px;background:#eee9dc;border-bottom:1px solid #e3dbc9;text-align:center}.page-heading h1{font-size:clamp(37px,4.3vw,58px);margin:0;line-height:1.3}.page-heading .eyebrow{margin:24px 0 14px}.breadcrumb{display:flex;align-items:center;justify-content:center;gap:12px;font-size:12px;color:var(--muted)}.breadcrumb a:hover{color:var(--gold-dark)}body[data-page=dich-vu] .service-grid{grid-template-columns:repeat(3,1fr)}body[data-page=dich-vu] .service-image{height:275px}body[data-page=dich-vu] .service-body h3{min-height:62px}body[data-page=khong-gian] .gallery{background:#faf9f5}body[data-page=danh-gia] .reviews{min-height:520px}body[data-page=lien-he] .booking{padding:75px 0}.mobile-book a{font-weight:500;font-size:14px}.footer-grid p,.footer-grid>div>a:not(.brand){line-height:2}.text-link{font-weight:500}
@media(max-width:1160px){.header-inner nav{gap:16px;font-size:13px}.header-inner{gap:17px}.brand span{font-size:17px}}@media(max-width:980px){.header-inner nav{font-size:15px;gap:0}.header-inner nav a[aria-current=page]:after{right:auto;width:24px;left:10px;bottom:4px}body[data-page=dich-vu] .service-grid{grid-template-columns:repeat(2,1fr)}.service-body h3{min-height:0}.page-heading{padding:28px 0 40px}}
@media(max-width:620px){.hero h1{font-size:clamp(35px,9.1vw,49px);line-height:1.3}.hero .lead{font-size:15px;line-height:1.85}.hero .eyebrow{font-size:11px;letter-spacing:.13em}.hero .button{font-size:14px;min-width:224px;padding:11px 18px}.hero-copy{padding:48px 12px 76px}.hero h1{margin:20px 0 24px}.hero .lead{margin-bottom:26px}.service-body .button{font-size:14px}.service-body h3{font-size:25px;min-height:0}body[data-page=dich-vu] .service-grid{grid-template-columns:1fr}body[data-page=dich-vu] .service-body h3{min-height:0}body[data-page=dich-vu] .service-image{height:245px}.prices{font-size:14px}.page-heading h1{font-size:36px}.page-heading .eyebrow{font-size:10px}.breadcrumb{font-size:11px;gap:9px}.brand small{font-size:8px}.booking .button{min-width:224px}.review-inner .button{font-size:13px}.header-inner nav a{padding:11px 10px}}
/* Localized language picker and recognizable contact icons. */
.language{display:block;padding:0;left:16px;bottom:16px;min-width:146px;border:1px solid #ddd5c4;border-radius:8px;background:#fffefb;box-shadow:0 4px 20px #30220014}.language button{display:flex;align-items:center;gap:9px;width:100%;min-height:44px;padding:8px 12px;border:0;background:none;color:var(--ink);font-family:var(--body-font);font-size:13px}.language img{width:25px;height:17px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #00000012;flex-shrink:0}.language-chevron{margin-left:auto;color:var(--muted)}#language-options{position:absolute;left:0;bottom:calc(100% + 9px);width:190px;padding:6px;background:#fffefb;border:1px solid var(--line);border-radius:9px;box-shadow:0 8px 30px #30220022}#language-options>p{margin:4px 10px 6px;font-size:12px;color:var(--muted)}#language-options a{display:flex;align-items:center;gap:10px;min-height:43px;padding:8px 10px;font-size:14px;border-radius:5px;color:var(--ink)}#language-options a:hover,#language-options a[aria-current=true]{background:#f2eddf}.language-check{margin-left:auto;color:var(--gold-dark)}.contact-dock a{position:relative;overflow:visible;isolation:isolate;animation:contact-glow 3.2s ease-in-out infinite;--contact-color:24,119,242;background:#1877f2}.contact-dock a.phone{--contact-color:36,167,80;background:#24a750;animation-delay:.35s}.contact-dock a.zalo{--contact-color:0,104,255;background:white;animation-delay:.7s}.contact-dock a.whatsapp{--contact-color:37,211,102;background:#25d366;animation-delay:1.05s}.contact-dock a img{width:25px;height:25px;object-fit:contain}.contact-dock a.zalo img{width:34px;height:34px}.contact-dock a:before{content:'';position:absolute;inset:-2px;border-radius:50%;border:1px solid rgba(var(--contact-color),.55);animation:contact-ring 3.2s ease-out infinite;z-index:-1;pointer-events:none}.contact-dock a.phone:before{animation-delay:.35s}.contact-dock a.zalo:before{animation-delay:.7s}.contact-dock a.whatsapp:before{animation-delay:1.05s}.contact-dock a:hover,.contact-dock a:focus-visible{animation-play-state:paused;box-shadow:0 0 20px rgba(var(--contact-color),.65)}.dock-label{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s;background:#fffefb;color:#343024;font-size:12px;font-weight:400;padding:5px 10px;border:1px solid var(--line);border-radius:5px;box-shadow:0 3px 10px #0001;pointer-events:none}.contact-dock a:hover .dock-label,.contact-dock a:focus-visible .dock-label{opacity:1;visibility:visible}@keyframes contact-glow{0%,100%{box-shadow:0 3px 12px #0002;filter:brightness(1)}50%{box-shadow:0 0 19px rgba(var(--contact-color),.55),0 0 0 4px rgba(var(--contact-color),.08);filter:brightness(1.08)}}@keyframes contact-ring{0%,20%{transform:scale(1);opacity:0}30%{opacity:.5}80%,100%{transform:scale(1.38);opacity:0}}html:lang(ko) h1,html:lang(ko) h2,html:lang(ja) h1,html:lang(ja) h2,html:lang(zh-CN) h1,html:lang(zh-CN) h2{font-family:var(--body-font);font-weight:400;letter-spacing:-.025em;word-break:keep-all}.header-inner nav{gap:20px}.service-body h3{overflow-wrap:anywhere}.hero .lead{max-width:790px}@media(max-width:1160px){.header-inner nav{gap:12px;font-size:13px}}@media(max-width:980px){.header-inner nav{gap:0;font-size:15px}}@media(max-width:620px){.language{left:9px;bottom:68px;min-width:138px}.language button{min-height:40px;font-size:12px}.contact-dock a img{width:22px;height:22px}.contact-dock a.zalo img{width:29px;height:29px}.hero h1{font-size:clamp(32px,8.7vw,46px)}.hero .lead{font-size:14px;line-height:1.8}.hero .button{min-width:0;max-width:100%}.hero .actions{flex-direction:column;align-items:center}.hero .eyebrow{font-size:11px}.hero-copy{padding-inline:10px}html:lang(en) .header-inner .brand span{font-size:16px}}@media(prefers-reduced-motion:reduce){.contact-dock a,.contact-dock a:before{animation:none!important;filter:none}.contact-dock a{box-shadow:0 3px 12px #0002}}
/* Subtle motion for scrolling in either direction. */
.scroll-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,.61,.36,1);transition-delay:var(--reveal-delay,0ms)}.scroll-reveal.from-above{transform:translateY(-18px)}.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}header{transition:box-shadow .3s ease,background-color .3s ease}header.has-scrolled{background:#f7f6f0fc;box-shadow:0 4px 20px #30220012}.service-card.scroll-reveal.is-visible:hover{transform:translateY(-4px)}@media(max-width:620px){.scroll-reveal{transform:translateY(14px);transition-duration:.5s}.scroll-reveal.from-above{transform:translateY(-12px)}}@media(prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal.from-above{opacity:1!important;transform:none!important;transition:none!important}}@media print{.scroll-reveal{opacity:1!important;transform:none!important}}
/* Final balance: calmer motion, readable cards, and space for mobile controls. */
.contact-dock a,.contact-dock a:before{animation:none;filter:none}.contact-dock a:before{display:none}.contact-dock a.zalo{animation:contact-glow 4s ease-in-out infinite;animation-delay:0s}.scroll-reveal{transition-duration:.5s;transform:translateY(14px)}.service-grid{align-items:stretch}.service-body{gap:0;min-width:0}.service-body h3{min-height:3.1em;overflow-wrap:normal;hyphens:auto;font-size:clamp(20px,1.9vw,24px);line-height:1.45}.service-body>p{font-size:16px;line-height:1.75}.service-body .button{min-height:44px;font-size:14px;margin-top:auto}.prices{font-size:14px}.service-image,body[data-page=dich-vu] .service-image{height:auto;aspect-ratio:4/3}.hero{height:auto;min-height:620px;max-height:none}.hero-copy{padding-top:80px;padding-bottom:95px}.hero h1{text-wrap:balance}.hero .lead{max-width:720px}.section-heading{max-width:810px}.section-heading h2,.page-heading h1,.booking h2{text-wrap:balance;overflow-wrap:break-word}.values>div,.footer-grid>div,.hair-grid>div,.about-grid>div{min-width:0}.button{white-space:normal;overflow-wrap:break-word}.header-inner .menu-toggle{width:44px;height:44px;flex-shrink:0}.gallery-grid button:not(:first-child) img[src*="storefront"]{object-fit:contain;background:#ded6c8}.contact-dock a{width:48px;height:48px}.language button{min-height:44px}.footer-bottom{padding-bottom:78px}.scroll-reveal.is-visible{transform:none}
@media(min-width:981px){.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}body[data-page=dich-vu] .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-body{padding:22px}.top-content{flex-wrap:wrap;padding-block:5px}.header-inner nav{gap:16px}.header-inner{gap:20px}.hair-grid img{height:auto;aspect-ratio:3/2}}
@media(max-width:980px){.hero{min-height:560px}.hero-copy{padding:64px 38px 86px}.header-inner nav{max-height:calc(100svh - 100px);overflow-y:auto}.service-body h3,body[data-page=dich-vu] .service-body h3{min-height:2.9em}.service-grid,body[data-page=dich-vu] .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){html{scroll-padding-top:84px}.hero{min-height:0;height:auto;max-height:none}.hero-copy{padding:38px 8px 78px}.hero h1{font-size:clamp(31px,8.5vw,40px);line-height:1.25;margin:18px 0}.hero .eyebrow{font-size:11px;margin-bottom:10px;letter-spacing:.12em}.hero .lead{font-size:16px;line-height:1.65;margin-bottom:23px;padding-inline:0}.hero .actions{gap:10px}.hero .button{min-height:44px;width:min(100%,290px);padding:11px 16px;font-size:14px}.hero-bottom{bottom:22px}.hero-arrow{bottom:17px}.section{padding:54px 0}.section-heading{margin-bottom:30px}.section-heading h2{font-size:30px;line-height:1.35}.section-heading p:last-child{font-size:16px;line-height:1.75}.service-grid,body[data-page=dich-vu] .service-grid{grid-template-columns:minmax(0,1fr)}.service-body{padding:22px}.service-body h3,body[data-page=dich-vu] .service-body h3{font-size:24px;min-height:0;margin-bottom:14px}.service-image,body[data-page=dich-vu] .service-image{height:auto;aspect-ratio:4/3}.service-image img{object-fit:contain;background:#efe9df}.values{gap:16px;grid-template-columns:1fr}.values>div{display:grid;grid-template-columns:38px 1fr;column-gap:12px}.values span{grid-row:span 2;font-size:26px}.values h3{margin:0 0 3px;font-size:16px}.values p{font-size:14px}.about-grid{gap:40px}.about-photos img:nth-child(2),.about-photos img:nth-child(4){transform:none}.about-photos img{height:165px}.hair-grid img{height:auto;aspect-ratio:3/2}.page-heading{padding:24px 0 32px}.page-heading h1{font-size:clamp(29px,8vw,36px);line-height:1.35}.breadcrumb{flex-wrap:wrap;line-height:1.5}.booking{padding:54px 0}.booking h2{font-size:32px;line-height:1.3}.contact-dock{bottom:calc(73px + env(safe-area-inset-bottom));right:10px;flex-direction:row;gap:8px}.contact-dock a{width:44px;height:44px}.contact-dock a.phone,.contact-dock a.zalo{display:none}.language{left:10px;bottom:calc(73px + env(safe-area-inset-bottom));min-width:138px;max-width:calc(100vw - 122px)}.mobile-book a{min-height:56px;padding:10px 14px;text-align:center;line-height:1.45}.mobile-book a:last-child{animation:mobile-book-glow 4s ease-in-out infinite}.mobile-book{isolation:isolate}.footer-bottom{padding-bottom:160px}.dock-label{display:none}.footer-grid{gap:28px 18px}.location iframe{height:270px}.review-inner .button{font-size:14px}.section-heading .eyebrow{font-size:12px}.hero-copy .actions{position:relative;z-index:3}}
@media(max-width:360px){.wrap{width:calc(100% - 28px)}.hero h1{font-size:31px}.hero-copy{padding-inline:0}.brand{gap:8px}.brand span{font-size:16px}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:auto!important}.about-photos img{height:140px}.language{min-width:130px}.language button{padding-inline:9px}}
@keyframes mobile-book-glow{0%,100%{background:#ad820c;box-shadow:inset 0 0 0 transparent}50%{background:#99720a;box-shadow:inset 0 0 16px #f5d76b33}}@media(prefers-reduced-motion:reduce){.contact-dock a.zalo,.mobile-book a:last-child{animation:none!important}.scroll-reveal{opacity:1;transform:none}}
/* Reviews: an inviting photo and a clear route to genuine Google feedback. */
.reviews{background:#f6f3ec}.review-inner{max-width:1240px;text-align:left}.review-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:#fffdf8;border:1px solid #e7dfcf;border-radius:14px;overflow:hidden;box-shadow:0 12px 35px #493b2008}.review-photo{margin:0;position:relative;min-height:430px;background:#dfd9cc;overflow:hidden}.review-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:48% center}.review-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#19170fba,transparent 55%);pointer-events:none}.review-photo figcaption{position:absolute;bottom:30px;left:30px;right:30px;z-index:1;color:white}.review-photo figcaption span{display:block;font-size:14px;letter-spacing:.12em;margin-bottom:5px}.review-photo figcaption small{font-size:13px;color:#eee8d8}.review-copy{padding:42px 38px;min-width:0}.review-copy h2{font-size:clamp(31px,3vw,42px);line-height:1.35;margin-bottom:20px}.review-copy>p:not(.eyebrow){font-size:16px;line-height:1.85;margin-bottom:25px}.google-review-card{border-top:1px solid var(--line);padding-top:22px}.review-platform{display:flex;gap:12px;align-items:center;margin-bottom:20px;color:var(--gold-dark)}.review-platform>span{font-size:17px;color:var(--ink);line-height:1.5;font-weight:500}.review-platform small{display:block;font-size:13px;color:var(--muted);font-weight:400;margin-top:2px}.google-review-card .button{width:100%;font-size:14px;min-height:46px}.review-invite{display:flex;align-items:center;justify-content:space-between;gap:26px;border-bottom:1px solid var(--line);padding:28px 4px}.review-invite h3{font-family:var(--heading-font);font-size:24px;font-weight:400;margin:0 0 6px}.review-invite p{font-size:14px;margin:0;max-width:680px}.review-invite>a{font-size:14px;flex-shrink:0;border-bottom:1px solid #b69546;padding-block:8px}.review-invite>a:hover{color:var(--wine)}body[data-page=danh-gia] .reviews{min-height:0;padding-top:60px;padding-bottom:65px}@media(max-width:980px){.review-copy{padding:30px 26px}.review-copy h2{font-size:32px}.review-photo{min-height:400px}.review-invite{align-items:flex-start;flex-direction:column;gap:12px}}@media(max-width:620px){.review-grid{grid-template-columns:1fr;border-radius:10px}.review-photo{min-height:0;height:auto;aspect-ratio:4/3}.review-photo figcaption{bottom:22px;left:22px;right:22px}.review-photo figcaption span{font-size:13px}.review-photo figcaption small{font-size:12px}.review-copy{padding:28px 23px}.review-copy h2{font-size:31px}.review-copy>p:not(.eyebrow){font-size:16px;line-height:1.75}.review-invite{padding:24px 4px;gap:14px}.review-invite h3{font-size:24px}.review-invite p{font-size:14px;line-height:1.8}.review-invite>a{font-size:14px}.google-review-card .button{font-size:14px}body[data-page=danh-gia] .reviews{padding:40px 0 50px}}
