@import url('/fonts.css');
:root{--paper:#f1eee7;--ink:#252820;--muted:#68685e;--line:#ccc9bc;--accent:#722c34;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}button:disabled{opacity:.55;cursor:wait}a:hover{color:var(--accent)}:focus-visible{outline:3px solid #b15b55;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}em{font-family:var(--serif);font-weight:400}h2{font-family:var(--serif);font-size:clamp(36px,4.6vw,67px);line-height:1.12;letter-spacing:-2px}h3{font-family:var(--serif)}.small{font-size:12px;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:600;margin-bottom:25px}.skip{position:fixed;top:-80px;background:white;padding:15px;z-index:100}.skip:focus{top:0}header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:2}.logo{font-size:42px;font-weight:800;letter-spacing:-4px;line-height:1}.logo span{display:block;font-size:9px;letter-spacing:5px;margin-top:6px;padding-left:4px}nav{display:flex;gap:35px;font-size:12px}.header-cta{border-bottom:1px solid var(--ink);padding:10px 0;font-size:12px}.header-cta span{margin-left:30px}.hero{padding:24px 5% 60px}.hero-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;margin-bottom:35px}.hero-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:5%}.hero-copy{padding-top:45px;display:flex;flex-direction:column;align-items:flex-start}.hero h1{font-family:var(--serif);font-size:clamp(48px,5.65vw,87px);line-height:1.04;letter-spacing:-3px;margin:4px 0 30px}.hero h1 em{color:var(--accent)}.hero-copy>p:not(.eyebrow){max-width:330px;font-size:14px;color:var(--muted)}.text-link{margin-top:35px;padding:12px 0;border-bottom:1px solid var(--ink);font-size:12px;display:flex;gap:65px}.hero-foot{margin-top:auto;padding-top:65px;display:flex;justify-content:space-between;width:100%;font-size:9px;letter-spacing:1px}.hero-art{position:relative;min-width:0}.hero-art img{width:100%;height:640px;object-fit:cover;display:block}.hero-art figcaption{margin-top:12px;font-size:8px;letter-spacing:1.4px}.art-mark{position:absolute;bottom:35px;right:30px;color:var(--paper);font-family:var(--serif);font-style:italic;font-size:120px;line-height:1}.manifesto{padding:100px 12%;text-align:center;border-top:1px solid var(--line)}.manifesto h2{font-size:clamp(34px,4vw,58px)}.manifesto h2 em{color:var(--accent)}.manifesto>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:710px;margin:35px auto 0;text-align:left;color:var(--muted);font-size:13px}.section{padding:90px 5%;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px;gap:25px}.section-heading>p{font-size:12px;max-width:260px;color:var(--muted)}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0 35px}.tabs button{border:1px solid var(--line);padding:10px 23px;border-radius:25px;background:transparent;font-size:12px}.tabs button[aria-pressed=true],.tabs button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.concept-layout{display:grid;grid-template-columns:1fr 1.65fr;gap:6%}.concept-visual{min-height:370px;padding:32px;background:#d7d3c8;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.concept-visual>span:first-child{position:absolute;right:20px;top:-70px;font-family:var(--serif);font-size:270px;color:#c0bbae;line-height:1.5}.concept-visual h3{font-size:55px;z-index:1}.concept-visual p{z-index:1}.concept-visual .small{margin-top:20px;letter-spacing:2px}.concept-list button{width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:17px 0;display:flex;align-items:center;gap:20px}.concept-list button:hover{color:var(--accent);padding-left:8px}.concept-list button span:first-child{font-size:10px;color:var(--muted)}.concept-list button span:last-child{margin-left:auto}.concept-list .empty{padding:40px 0;color:var(--muted)}.gallery-section{background:#e6e3da}.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:25px;align-items:start}.gallery-card{border:0;background:none;text-align:left;padding:0;width:100%}.gallery-card:nth-child(3n+2){margin-top:70px}.gallery-card img{width:100%;height:380px;object-fit:cover;display:block}.gallery-card:nth-child(3n+1) img{height:490px}.gallery-card p{font-family:var(--serif);font-size:25px;margin-top:15px}.gallery-card small{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.placeholder-art{height:380px;background:radial-gradient(ellipse at 70% 30%,#a8a48d,transparent 60%),linear-gradient(35deg,#323d35,#ccc5b5);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.placeholder-art:before{content:'';width:55%;height:72%;border:1px solid #e6e0cf88;border-radius:50% 50% 0 0;transform:rotate(-12deg)}.placeholder-art span{position:absolute;color:#e5dece;font-family:var(--serif);font-size:70px;font-style:italic}.gallery-card:first-child .placeholder-art{height:490px}.gallery-card:nth-child(2) .placeholder-art{background:linear-gradient(135deg,#c9b6a3,#735d52)}.gallery-card:nth-child(3) .placeholder-art{background:linear-gradient(25deg,#473637,#c5a8a0)}.packages{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.package{padding:30px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column}.package:first-child{border-left:1px solid var(--line)}.package.featured{background:var(--ink);color:var(--paper)}.package .tag{font-size:8px;letter-spacing:1.3px;min-height:22px}.package h3{font-size:25px;margin:15px 0}.package .price{font-size:27px;letter-spacing:-1px}.package .currency{font-size:9px;letter-spacing:1px;margin-bottom:20px}.package ul{font-size:12px;padding-left:15px;line-height:1.8;margin:0 0 25px}.package a{font-size:11px;border-bottom:1px solid;padding:10px 0;margin-top:auto;display:flex;justify-content:space-between}.package.featured a:hover{color:#d9b9ab}.comparison{margin-top:30px}.comparison summary{display:flex;justify-content:space-between;padding:20px 0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:16px;text-align:left;vertical-align:top;border:1px solid var(--line);min-width:145px}th{background:#e2dfd5}th:first-child{min-width:165px}.price-note{font-size:11px;color:var(--muted);max-width:800px;margin-top:20px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.process article>span{font-family:var(--serif);font-style:italic;font-size:40px;color:var(--accent)}.process h3{font-size:30px;margin:15px 0}.process p{font-size:13px;color:var(--muted);max-width:290px}.booking{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:7%}.booking h2{font-size:clamp(38px,4.1vw,60px)}.booking>div>p:not(.eyebrow){margin:30px 0;font-size:13px;color:#c5c6ba}.booking .small{color:#c5c6ba}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:11px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #8e9384;background:transparent;color:inherit;padding:12px 0;border-radius:0;min-height:44px}select option{color:var(--ink);background:var(--paper)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#a7aa9e;font-size:12px}form>label{margin-top:20px}.consent{display:flex;gap:10px;align-items:flex-start;line-height:1.6}.consent input{width:17px;min-height:17px;margin:2px 0;accent-color:#b58969}.consent a{text-decoration:underline}.button{border:0;padding:16px 23px;background:var(--paper);color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px}.booking .button{width:100%;margin-top:25px}.button:hover{background:#dccfc2}.booking input[type=date],.booking input[type=time]{color-scheme:dark}#booking-status{font-size:13px;margin-top:15px}#contact-info{margin-top:30px}#contact-info a{display:block;text-decoration:underline;padding:5px 0}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}.faq h2{font-size:44px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-size:14px}.faq details p{font-size:13px;color:var(--muted);padding:15px 0}.faq summary::marker{color:var(--accent)}footer{padding:40px 5%;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);font-size:10px;letter-spacing:1px}.footer-logo{font-size:75px;letter-spacing:-6px;font-weight:800}.footer-logo span{font-size:9px;letter-spacing:3px;margin-left:12px}footer p+p{margin-top:10px}.zalo{position:fixed;bottom:25px;right:25px;background:var(--accent);color:white;padding:13px 20px;border-radius:30px;font-size:12px;z-index:5}.zalo:hover{color:white;background:#4e1c23}[hidden]{display:none!important}dialog{padding:25px;border:0;background:var(--paper);max-width:90vw;max-height:95vh}dialog::backdrop{background:#111e}dialog img{max-width:80vw;max-height:72vh;object-fit:contain;display:block;margin:auto}dialog p{margin:12px 0;font-size:13px}dialog button{border:1px solid var(--line);background:var(--paper);padding:8px 15px}.close{float:right;margin-bottom:15px}.light-next{float:right}.admin-wrap{max-width:1100px;margin:auto;padding:40px 25px}.admin-wrap h1{font-family:var(--serif);font-size:48px}.admin-wrap h2{font-size:30px;letter-spacing:0;margin:25px 0}.admin-wrap input,.admin-wrap textarea,.admin-wrap select{color:var(--ink);background:white;padding:10px;border:1px solid var(--line);margin:6px 0 15px}.admin-wrap .button{background:var(--ink);color:white;margin:12px 0}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.admin-nav button{padding:10px 18px;border:1px solid var(--line);background:transparent}.admin-nav button[aria-pressed=true]{background:var(--accent);color:white}.admin-card{border:1px solid var(--line);padding:20px;margin:15px 0}.admin-card h3{font-size:24px}.admin-card img{max-height:180px;max-width:100%}.admin-status{position:sticky;bottom:0;background:var(--paper);padding:12px;border-top:1px solid var(--line)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.danger{background:#722c34!important;color:white}.error{color:#a52332}
@media(min-width:1600px){body>main,body>header,body>footer{max-width:1800px;margin:auto}.hero-art img{height:780px}}
@media(max-width:1050px){.hero h1{font-size:60px}.hero-art img{height:580px}.packages{grid-template-columns:repeat(3,1fr)}.package{border-bottom:1px solid var(--line)}.gallery-card img,.placeholder-art{height:300px}.gallery-card:nth-child(3n+1) img,.gallery-card:first-child .placeholder-art{height:380px}.section{padding:65px 5%}}
@media(max-width:700px){html{scroll-padding-top:20px}header{height:85px;flex-wrap:wrap}.logo{font-size:35px}nav{gap:15px;font-size:10px}nav a:nth-child(4){display:none}.header-cta{font-size:11px}.header-cta span{margin-left:8px}.hero-top{font-size:7px;letter-spacing:1px}.hero-top span:last-child{display:none}.hero-layout{grid-template-columns:1fr}.hero-copy{padding-top:8px}.hero h1{font-size:clamp(45px,11vw,70px);letter-spacing:-2px}.hero-foot{padding:35px 0 25px}.hero-art img{height:480px}.hero-art .art-mark{font-size:90px}.hero{padding-bottom:35px}.manifesto{padding:60px 6%}.manifesto>div{grid-template-columns:1fr;gap:15px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px}.section-heading>p{max-width:none}.section-heading h2{font-size:42px}.concept-layout{grid-template-columns:1fr}.concept-visual{min-height:220px;margin-bottom:15px}.concept-visual>span:first-child{font-size:220px}.concept-visual h3{font-size:45px}.tabs{gap:6px}.tabs button{padding:9px 15px;font-size:11px}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px}.gallery-card:nth-child(3n+2){margin-top:35px}.gallery-card:first-child{grid-column:1/-1}.gallery-card img,.placeholder-art{height:240px}.gallery-card:nth-child(3n+1) img,.gallery-card:first-child .placeholder-art{height:400px}.gallery-card p{font-size:22px}.gallery-card small{font-size:8px}.packages{grid-template-columns:1fr}.package{padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:8px 15px}.package h3{grid-column:1;margin:0}.package .tag{grid-column:1/-1}.package .price{grid-column:2;grid-row:2;text-align:right}.package .currency{grid-column:2;text-align:right;margin:0}.package ul{grid-column:1/-1;margin:10px 0}.package a{grid-column:1/-1}.process-grid{grid-template-columns:1fr;gap:30px}.process article{border-top:1px solid var(--line);padding-top:20px}.process p{max-width:none}.booking,.faq{grid-template-columns:1fr;gap:35px}.booking h2{font-size:43px}.form-grid{gap:15px}.faq h2{font-size:38px}.section{padding:55px 5%}footer{flex-wrap:wrap;gap:20px}.footer-logo{font-size:60px}footer>a:last-child{width:100%}.admin-grid{grid-template-columns:1fr}.admin-wrap h1{font-size:36px}.zalo{bottom:15px;right:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Vietnamese typography and touch-first layout refinement. */
:root{--serif:'Noto Serif',Georgia,serif}
body{font-family:'Be Vietnam Pro',Arial,sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%}
h1,h2,h3,em{font-synthesis:none;letter-spacing:-.035em;line-height:1.25;text-wrap:balance}
.hero h1{font-size:clamp(46px,5.1vw,78px);line-height:1.2;letter-spacing:-.04em}
h2{font-size:clamp(34px,4.2vw,60px)}
.logo,.footer-logo{font-family:Arial,Helvetica,sans-serif}
body>header{position:sticky;top:0;z-index:20;height:88px;box-shadow:0 2px 18px #25282008}
header nav a{min-height:44px;display:flex;align-items:center;font-size:13px}
.header-cta{display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--paper);border:0;border-radius:6px;min-height:46px;padding:10px 20px;font-size:13px}
.header-cta:hover{background:#542029;color:white}
.menu-toggle,.mobile-actions{display:none}
.hero-copy>p:not(.eyebrow),.manifesto>div,.section-heading>p,.process p,.faq details p{font-size:15px;line-height:1.8}
.text-link{min-height:48px;font-size:14px}.hero-art figcaption{font-size:10px;letter-spacing:1px;line-height:1.7}
.tabs button{font-size:13px;min-height:46px;padding:10px 22px;transition:background .15s,color .15s}
.concept-list button{min-height:60px;font-size:15px;line-height:1.65}
.concept-list button span:first-child,.concept-list button span:last-child{flex-shrink:0}
.package h3{font-size:24px}.package .tag{font-size:10px}.package .currency{font-size:11px}.package ul{font-size:13px;line-height:1.9}.package a{font-size:13px;min-height:48px}.package .price{font-variant-numeric:tabular-nums;font-size:clamp(22px,2vw,28px);letter-spacing:-.04em;white-space:nowrap}
.price-note{font-size:13px;line-height:1.85}.comparison summary{min-height:56px;font-size:15px;gap:16px}.comparison[open] summary span{transform:rotate(45deg)}
label{font-size:13px;line-height:1.7}input,select,textarea{font-size:16px;min-width:0;min-height:52px;padding:13px 12px;border:1px solid #808677;border-radius:6px;background:#ffffff05;margin-top:8px}
input::placeholder,textarea::placeholder{font-size:14px;color:#b9bcaf}select{padding-right:24px}input:focus,select:focus,textarea:focus{border-color:#e2c3a0}
.form-grid{gap:22px 18px}.form-grid>label{min-width:0}.booking>div>p:not(.eyebrow){font-size:14px;line-height:1.8}.booking .button{min-height:54px;border-radius:6px;font-size:15px;font-weight:500}.consent{padding:8px 0;font-size:12px}.consent input{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin-top:2px;accent-color:#d9bc94}.consent span{padding-left:2px}
.faq summary{font-size:15px;min-height:44px;display:list-item;padding:8px 0}.zalo{min-height:48px;font-size:14px;box-shadow:0 5px 22px #25282025}.is-suppressed{display:none!important}dialog button{min-width:48px;min-height:48px}.gallery-card small{font-size:10px;letter-spacing:1px}
@media(min-width:701px) and (max-width:1150px){.packages{grid-template-columns:repeat(3,minmax(0,1fr))}.package{border-bottom:1px solid var(--line)}}
@media(max-width:700px){
 html{scroll-padding-top:90px;scroll-padding-bottom:100px}
 body>header{height:72px;padding:0 20px;flex-wrap:nowrap;gap:12px}
 .logo{font-size:33px;letter-spacing:-3px;margin-right:auto}.logo span{font-size:8px;letter-spacing:4px}
 .header-cta{min-height:44px;font-size:12px;padding:10px 13px;order:2}.header-cta span{margin-left:10px}
 .menu-toggle{display:flex;align-items:center;gap:9px;justify-content:center;background:none;border:1px solid var(--line);border-radius:6px;min-height:44px;padding:8px 12px;font-size:12px;order:3}.menu-icon{font-size:18px;line-height:1}
 header nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--paper);padding:12px 20px 20px;border-bottom:1px solid var(--line);box-shadow:0 16px 24px #25282014;gap:0;max-height:calc(100dvh - 100px);overflow:auto}
 header.menu-open nav{display:grid;grid-template-columns:1fr 1fr;gap:6px 15px}
 header nav a,header nav a:nth-child(4){display:flex;min-height:50px;font-size:15px;border-bottom:1px solid var(--line);padding:9px 4px}
 header.menu-open .menu-toggle{background:var(--ink);color:var(--paper)}
 .hero{padding:23px 20px 36px}.hero-top{margin-bottom:25px;font-size:9px;letter-spacing:1.2px}.hero-copy{padding-top:0}.eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:18px}
 .hero h1{font-size:clamp(32px,8.7vw,52px);letter-spacing:-.045em;line-height:1.25;margin:0 0 22px;text-wrap:pretty}
 .hero-copy>p:not(.eyebrow){font-size:15px;max-width:100%;line-height:1.85}.text-link{margin-top:22px;gap:30px;justify-content:space-between}.hero-foot{padding:25px 0 22px;font-size:9px;letter-spacing:.6px}.hero-art img{height:auto;aspect-ratio:4/5}.art-mark{bottom:50px}
 .section{padding:52px 20px}.manifesto{padding:52px 20px}.section-heading{margin-bottom:28px;gap:18px}.section-heading h2,.booking h2,.faq h2,.manifesto h2{font-size:clamp(29px,8vw,40px);letter-spacing:-.035em;line-height:1.3}.section-heading>p{font-size:14px;line-height:1.8}.section-heading>p br{display:none}
 .manifesto>div{margin-top:25px;font-size:14px;line-height:1.9}.manifesto h2 br{display:none}
 .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 25px}.tabs button{padding:10px 6px;min-height:46px;font-size:12px;border-radius:8px;white-space:normal}.concept-visual{min-height:175px;padding:24px;border-radius:8px}.concept-visual h3{font-size:37px}.concept-visual>span:first-child{font-size:175px;top:-50px}.concept-visual .small{font-size:10px;margin-top:14px}.concept-list button{font-size:14px;gap:14px;min-height:64px;padding:15px 0}.concept-list button:hover{padding-left:0}
 .gallery-grid{gap:24px 16px}.gallery-card:nth-child(3n+2){margin-top:0}.gallery-card p{font-size:20px;letter-spacing:-.02em}.gallery-card img,.placeholder-art{height:230px;border-radius:6px}.gallery-card:nth-child(3n+1) img,.gallery-card:first-child .placeholder-art{height:360px}.placeholder-art span{font-size:clamp(27px,8vw,40px)}.gallery-card:first-child .placeholder-art span{font-size:52px}.gallery-card small{font-size:9px;line-height:1.8;display:block;margin-top:6px;letter-spacing:.5px}
 .packages{border:0;gap:16px;grid-template-columns:1fr}.package,.package:first-child{border:1px solid var(--line);border-radius:10px;padding:23px 20px;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}.package.featured{border-color:var(--ink)}.package h3{font-size:23px;line-height:1.4;align-self:center;letter-spacing:-.035em}.package .price{font-size:23px;align-self:center}.package .tag{font-size:9px}.package .currency{font-size:10px}.package ul{font-size:14px;margin:15px 0}.package a{border:1px solid var(--line);border-radius:6px;padding:12px 14px;font-size:13px}.package.featured a{border-color:#777e6d}.comparison summary{font-size:14px}.price-note{font-size:12px}.table-scroll{border-radius:6px}.table-scroll th,.table-scroll td{font-size:12px;padding:12px;min-width:150px}
 .booking{gap:26px}.booking>div>p:not(.eyebrow){margin:20px 0}.booking .form-grid{grid-template-columns:1fr;gap:18px}.booking input,.booking select,.booking textarea{font-size:16px;min-height:54px}.booking label{font-size:13px}.booking .consent{font-size:12px;line-height:1.85}.booking .button{min-height:56px}.booking #contact-info:empty{display:none}
 footer{padding:30px 20px calc(110px + env(safe-area-inset-bottom,0px))}.footer-logo{font-size:54px}.footer-logo span{font-size:8px}
 .mobile-actions{position:fixed;z-index:15;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));display:flex;gap:8px;padding:7px;background:var(--paper);border:1px solid #d3cec2;border-radius:13px;box-shadow:0 6px 30px #25282028}
 .mobile-actions a{min-height:48px;display:flex;align-items:center;justify-content:center;flex:1;font-size:13px;border-radius:8px;padding:8px 12px;white-space:nowrap}.mobile-actions .mobile-book{background:var(--accent);color:white;flex:1.3;gap:18px}.mobile-actions a:active{background:#dfd9cc}.mobile-actions .mobile-book:active{background:#542029}.zalo{display:none}
 .admin-wrap input,.admin-wrap select,.admin-wrap textarea{font-size:16px}.admin-nav{gap:8px}.admin-nav button{min-height:46px}
}
@media(max-width:360px){body>header{padding:0 16px;gap:8px}.menu-toggle{padding:8px 10px}.menu-icon{display:none}.hero,.section{padding-left:16px;padding-right:16px}.package{padding:20px 16px}.package h3{font-size:21px}.package .price{font-size:21px}.gallery-grid{grid-template-columns:1fr}.gallery-card:first-child{grid-column:auto}.gallery-card img,.placeholder-art{height:320px}.placeholder-art span{font-size:45px}}
.hero h1>span,.hero h1>em{display:block;text-wrap:balance}.hero h1>br{display:none}

.social-links{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px}.social-links a{text-decoration:none!important;border-bottom:1px solid currentColor;padding:6px 0!important;display:inline-block!important}footer .social-links{margin-top:14px;font-size:11px}#contact-info p,#contact-info>a{font-size:14px}
/* === Màn chọn + ngôn ngữ === */
body.gate-open{overflow:hidden}
.gate{position:fixed;inset:0;z-index:60;background:var(--paper);display:flex;flex-direction:column;padding:26px 5% 22px;overflow:auto}
.gate-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.gate-lang{display:flex;gap:6px;flex-wrap:wrap}
.gate-lang button{border:1px solid var(--line);background:transparent;border-radius:22px;padding:8px 16px;font-size:13px;min-height:42px}
.gate-lang button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.gate-head{margin:5vh 0 4vh;text-align:center}.gate-head .eyebrow{margin-bottom:14px}
.gate-head h2{font-size:clamp(36px,5vw,66px)}.gate-head p:last-child{color:var(--muted);margin-top:12px;font-size:14px}
.gate-choices{display:grid;grid-template-columns:1fr 1fr;gap:18px;flex:1;min-height:340px}
.gate-choices button{border:0;border-radius:6px;padding:34px;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s}
.gate-choices button:hover{transform:translateY(-4px);box-shadow:0 18px 40px #1a1d2033}
.gate-choices strong{font-family:var(--serif);font-weight:400;font-size:clamp(56px,8vw,112px);line-height:1;letter-spacing:-3px}
.gate-choices em{font-style:normal;font-family:inherit;font-size:13px;letter-spacing:1.6px;margin-top:14px;text-transform:uppercase;opacity:.9}
.gate-k{position:absolute;top:26px;left:34px;font-size:11px;letter-spacing:2.2px}
.gate-arrow{position:absolute;top:20px;right:30px;font-size:30px}
.gate-note{text-align:center;font-size:12px;color:var(--muted);margin-top:16px}
.header-tools{display:flex;align-items:center;gap:12px}
.mode-switch{display:flex;border:1px solid var(--line);border-radius:24px;padding:3px}
.mode-switch button{border:0;background:none;border-radius:20px;padding:6px 16px;font-size:13px;min-height:36px}
.mode-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.lang-select{width:auto;display:inline-block;border:1px solid var(--line);border-radius:6px;padding:6px 10px;min-height:40px;font-size:13px;background:transparent;color:inherit;cursor:pointer}
.nav-tools{display:none}
.gallery-side{display:flex;flex-direction:column;align-items:flex-start;gap:4px;max-width:300px}.gallery-side p{font-size:12px;color:var(--muted)}.gallery-side .text-link{margin-top:10px;gap:30px}
@media(min-width:701px) and (max-width:1150px){nav{gap:18px}nav a:nth-child(4){display:none}.header-tools{gap:8px}.mode-switch button{padding:6px 11px}}
@media(max-width:700px){
 .header-tools{display:none}
 header.menu-open nav .nav-tools{display:flex;grid-column:1/-1;gap:10px;align-items:center;justify-content:space-between;padding-top:10px}
 .nav-tools .mode-switch button{min-height:44px;padding:8px 22px;font-size:15px}.nav-tools .lang-select{min-height:46px;font-size:15px}
 .gate{padding:18px 20px}.gate-head{margin:24px 0 18px}.gate-choices{grid-template-columns:1fr;min-height:0}.gate-choices button{min-height:190px;padding:26px}.gate-k{top:20px;left:26px}
}


/* Feedback khách */
.reviews .section-heading{align-items:flex-end}
.rev-stats{display:flex;gap:34px}.rev-stats p{display:flex;flex-direction:column}.rev-stats strong{font-family:var(--serif);font-weight:400;font-size:44px;line-height:1;color:var(--accent)}.rev-stats span{font-size:11px;letter-spacing:1px;color:var(--muted);margin-top:6px;text-transform:uppercase}
.review-list{columns:3 300px;column-gap:22px}
.review{break-inside:avoid;margin:0 0 22px;padding:26px;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 70%,white)}
.review .stars{color:var(--accent);letter-spacing:3px;font-size:13px;margin-bottom:12px}
.review blockquote{margin:0;font-family:var(--serif);font-size:17px;line-height:1.55}
.review figcaption{margin-top:16px;display:flex;justify-content:space-between;gap:10px;font-size:12px}.review figcaption span{color:var(--muted)}
.rev-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:10px}.rev-foot .text-link{margin-top:0}
.gallery-card img{object-position:50% 25%}
@media(min-width:701px) and (max-width:1150px){nav a:nth-child(4){display:flex}nav a:nth-child(5){display:none}}
@media(max-width:700px){.rev-stats{gap:22px;width:100%}.rev-stats strong{font-size:34px}.review{padding:20px}.review blockquote{font-size:16px}}
/* ===== The One (bản thử 13/11/2026): màn chọn CƠ SỞ + tông theo cơ sở ===== */
body.mode-q3{--paper:#ece9e3;--ink:#1f1b18;--muted:#675f57;--line:#cfc7bb;--accent:#86642f}
body.mode-bt{--paper:#f5eee7;--ink:#2a2220;--muted:#6c5f5a;--line:#dccdc2;--accent:#8c3b4a}
.mode-q3 .header-cta:hover,.mode-q3 .zalo:hover,.mode-q3 .mobile-actions .mobile-book:active{background:#634920}
.mode-bt .header-cta:hover,.mode-bt .zalo:hover{background:#6a2a36}
.mode-q3 .gallery-section{background:#e2ded6}.mode-bt .gallery-section{background:#efe4db}.mode-q3 th{background:#e0dbd2}.mode-bt th{background:#eee1d7}
.demo-bar{background:#2b2522;color:#efe6d8;text-align:center;font-size:12px;letter-spacing:.5px;padding:6px 12px}
.logo{letter-spacing:-2px;font-size:34px}.logo span{letter-spacing:6px}.footer-logo{letter-spacing:-4px;font-size:64px}
.gate-q3{background:radial-gradient(ellipse at 78% 22%,#a88a57 0,transparent 55%),linear-gradient(160deg,#3a3129,#141110);color:#f4ead9}
.gate-bt{background:radial-gradient(ellipse at 78% 22%,#f6e2d6 0,transparent 55%),linear-gradient(160deg,#dcbfb1,#7d3443);color:#fff8f2}
.gate-choices em{text-transform:none;letter-spacing:.3px;font-size:16px}
.gate-choices small{font-size:13px;margin-top:6px;opacity:.85}
.hero-visual{width:100%;height:640px;overflow:hidden;border-radius:4px}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.hero-visual .art{height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:40px;color:#f6efe4;background:radial-gradient(ellipse at 70% 25%,#c9a877 0,transparent 55%),linear-gradient(160deg,#4a3b2f,#16120f)}
.mode-bt .hero-visual .art{background:radial-gradient(ellipse at 70% 25%,#f3d9cc 0,transparent 55%),linear-gradient(160deg,#c99d8f,#6c2b38)}
.hero-visual .art span{font-family:var(--serif);font-style:italic;font-size:clamp(64px,9vw,130px);line-height:1}.hero-visual .art small{letter-spacing:3px;font-size:12px;text-transform:uppercase;margin-top:12px}
.branch-card{margin-top:26px;padding:20px 22px;border:1px solid var(--line);border-radius:8px;width:100%;max-width:470px;background:color-mix(in srgb,var(--paper) 60%,white)}
.branch-card p{font-size:14px;line-height:1.7}#branch-hours{color:var(--muted)}
.branch-actions{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;margin-top:14px}.branch-actions .button{background:var(--ink);color:var(--paper);border-radius:6px;min-height:48px;font-size:14px}.branch-actions .button:hover{background:var(--accent);color:white}.branch-actions .text-link{margin-top:0;gap:20px}
.hero-stats{display:flex;gap:28px;margin-top:26px;flex-wrap:wrap}.hero-stats p{display:flex;flex-direction:column}.hero-stats strong{font-family:var(--serif);font-weight:400;font-size:32px;line-height:1;color:var(--accent)}.hero-stats span{font-size:11px;color:var(--muted);margin-top:6px;max-width:150px;line-height:1.5}
.promo{background:var(--ink);color:var(--paper)}.promo .section-heading>p{color:#cfc6b8}.promo h2 em{color:#e6c79a}.mode-bt .promo h2 em{color:#f0bcc4}
.promo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.promo-cell{border:1px solid #ffffff2a;border-radius:8px;padding:20px 16px}.promo-cell.hi{background:#ffffff12;border-color:#ffffff55}
.promo-h{font-size:13px;letter-spacing:.5px}.promo-n{font-family:var(--serif);font-size:clamp(34px,3.4vw,52px);line-height:1.1;margin:8px 0;color:#e6c79a}.mode-bt .promo-n{color:#f3c2c9}.promo-sub{font-size:12px;color:#cfc6b8;line-height:1.6}
.promo-rules{margin:26px 0 0;padding-left:18px;font-size:13px;color:#d6cdbf;line-height:1.9;columns:2 320px;column-gap:40px}
.service-layout{display:grid;grid-template-columns:1fr 1.65fr;gap:6%}
.service-visual{min-height:330px;padding:32px;background:color-mix(in srgb,var(--line) 55%,var(--paper));position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;border-radius:4px}
.service-visual>span:first-child{position:absolute;right:20px;top:-60px;font-family:var(--serif);font-size:240px;color:color-mix(in srgb,var(--line) 80%,var(--ink) 10%);line-height:1.5}
.service-visual h3{font-size:clamp(32px,3.6vw,50px);z-index:1;line-height:1.15}.service-visual p{z-index:1;margin-top:10px;font-size:14px}.service-visual .small{font-size:12px}
.service-table table{min-width:0}.service-table th,.service-table td{min-width:0;padding:14px 12px;vertical-align:middle}.service-table thead th{font-size:12px;letter-spacing:1px}
.service-table td{white-space:nowrap;font-variant-numeric:tabular-nums}.service-table td s{color:var(--muted);font-size:12px;margin-right:8px}.service-table td b{font-size:16px;color:var(--accent);font-weight:600}.service-table td.na{color:var(--muted)}
.price-legend{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.7}.service-table .text-link{display:inline-flex;margin-top:18px}
.warranty{margin-top:50px;padding-top:30px;border-top:1px solid var(--line)}.warranty h3{font-size:28px;margin-bottom:18px}
.warranty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.war{border:1px solid var(--line);border-radius:8px;padding:18px;display:flex;flex-direction:column;gap:6px}
.war b{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1;color:var(--accent)}.war b small{font-family:inherit;font-size:13px;margin-left:6px;color:var(--muted)}.war span{font-size:14px}
.placeholder-art.p0{background:linear-gradient(150deg,#d8c3a5,#6d5440)}.placeholder-art.p1{background:linear-gradient(150deg,#3b302a,#a88f78)}.placeholder-art.p2{background:linear-gradient(150deg,#c48d93,#5a2430)}
.booking #contact-info .hotline{font-family:var(--serif);font-size:34px;text-decoration:none;color:#f0dfc3}.mode-bt .booking #contact-info .hotline{color:#f6c9cf}
.booking .demo-note{border-left:2px solid #e6c79a;padding-left:12px;margin-top:22px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.branch{border:1px solid var(--line);border-radius:8px;padding:26px;display:flex;flex-direction:column;gap:6px}.branch.current{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.branch .small{min-height:18px;color:var(--accent);letter-spacing:1px;text-transform:uppercase;font-size:11px}.branch h3{font-size:28px}.branch p{font-size:14px}.branch a{text-decoration:underline}
.branch-links{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;margin-top:8px}.branch-links button{border:1px solid var(--ink);background:none;border-radius:6px;padding:8px 14px;min-height:44px;font-size:13px}
.gallery-card p{font-size:20px}
@media(max-width:1150px){.promo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.warranty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.hero-visual{height:560px}}
@media(max-width:700px){
 .logo{font-size:27px;letter-spacing:-1.5px}.logo span{font-size:7px;letter-spacing:4px}.footer-logo{font-size:44px}
 .hero-visual{height:auto;aspect-ratio:4/5}.hero-visual .art{padding:26px}
 .branch-card{padding:16px}.branch-actions .button{width:100%}.hero-stats{gap:18px}.hero-stats strong{font-size:26px}
 .promo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.promo-cell{padding:16px 12px}.promo-n{font-size:34px}
 .service-layout{grid-template-columns:1fr}.service-visual{min-height:190px;padding:22px;margin-bottom:18px}.service-visual>span:first-child{font-size:170px;top:-40px}
 .service-table th,.service-table td{padding:11px 7px;font-size:12px}.service-table td{white-space:normal}.service-table td s{display:block;margin:0 0 2px;font-size:11px}.service-table td b{font-size:14px}.service-table th[scope=row]{min-width:96px}
 #service-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .warranty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.war b{font-size:32px}
 .contact-grid{grid-template-columns:1fr}.booking #contact-info .hotline{font-size:28px}
 .gate-choices button{min-height:170px}
}
@media(max-width:700px){.pricing .section-heading>p br{display:inline}.nav-tools{flex-wrap:wrap}.nav-tools .mode-switch button{white-space:nowrap;padding:8px 14px}.nav-tools .lang-select{flex:1;min-width:120px}footer>a:last-child{padding-right:0}}
@media(min-width:701px){footer{padding-right:150px}}
:lang(ko) h1,:lang(ko) h2,:lang(ko) h3,:lang(ko) p,:lang(ko) li,:lang(ko) summary{word-break:keep-all}
/* Gallery ảnh dọc (13/11): lưới đều, khung 2:3, căn vào mặt + tóc */
.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start}
.gallery-card:nth-child(n){margin-top:0;grid-column:auto}
.gallery-card img,.gallery-card:nth-child(n) img{height:auto;aspect-ratio:2/3;object-fit:cover;object-position:50% 42%;border-radius:6px}
.gallery-card p{font-size:16px;margin-top:8px;line-height:1.4}
.hero-visual img{object-position:50% 40%}
@media(max-width:1050px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-card p{font-size:14px}}
/* Khối Ưu đãi theo mẫu anh gửi 13/11: nền sáng, ô ngày + nút đặt lịch, thẻ "Từ 3 người" nổi tối */
.promo{background:color-mix(in srgb,var(--paper) 55%,white);color:var(--ink)}
.promo-head{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:40px}
.promo .promo-eyebrow{display:flex;align-items:center;gap:16px;font-size:12px;letter-spacing:3px;margin-bottom:22px}
.promo .promo-eyebrow::after{content:'';width:80px;height:1px;background:currentColor;opacity:.6}
.promo h2{font-family:'Be Vietnam Pro',Arial,sans-serif;font-weight:500;font-size:clamp(40px,5.4vw,76px);line-height:1.08;letter-spacing:-.03em}
.promo h2 em{font-family:'Be Vietnam Pro',Arial,sans-serif;font-style:italic;font-weight:500;color:color-mix(in srgb,var(--accent) 70%,#b8a594)}
.mode-bt .promo h2 em{color:color-mix(in srgb,var(--accent) 60%,#c49aa0)}
.promo-tag{margin-top:16px;font-size:13px;letter-spacing:4px;text-transform:uppercase;color:var(--ink)}
.promo-side{display:flex;flex-direction:column;align-items:flex-end;gap:26px;padding-top:30px}
.promo-date{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:40px;padding:14px 28px;font-size:16px;background:color-mix(in srgb,var(--paper) 40%,white)}
.promo-date svg{width:30px;height:30px;fill:none;stroke:var(--muted);stroke-width:1.4;padding-right:16px;border-right:1px solid var(--line);box-sizing:content-box}
.promo-cta{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--ink);color:var(--paper);border-radius:40px;padding:22px 46px;font-size:15px;letter-spacing:4px;font-weight:600;min-width:300px}
.promo-cta:hover{background:var(--accent);color:white}.promo-cta svg{width:36px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}
.promo .promo-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.promo .promo-cell{background:color-mix(in srgb,var(--paper) 35%,white);border:1px solid var(--line);border-radius:22px;padding:30px 26px 34px;color:var(--ink)}
.promo .promo-cell.hi{background:linear-gradient(160deg,#2c2724,#14110f);border-color:#14110f;color:#f6efe6;box-shadow:0 14px 34px #1d18142e}
.promo .promo-h{font-size:17px;font-weight:600;letter-spacing:0}
.promo .promo-n{font-family:'Be Vietnam Pro',Arial,sans-serif;font-weight:500;font-size:clamp(36px,3.5vw,58px);color:inherit;margin:14px 0 18px;padding-bottom:18px;border-bottom:1px solid var(--line);letter-spacing:-.02em}
.promo .promo-cell.hi .promo-n{border-color:#ffffff40}
.promo .promo-sub{font-size:15px;color:inherit;opacity:.85;line-height:1.6}
.promo-notes{display:grid;grid-template-columns:1fr 1fr 1.25fr;margin-top:34px;padding-top:32px;border-top:1px solid var(--line)}
.promo-notes p{display:flex;gap:22px;align-items:flex-start;font-size:15px;line-height:1.7;padding:0 28px;border-left:1px solid var(--line)}
.promo-notes p:first-child{padding-left:0;border-left:0}
.promo-notes svg{flex:0 0 34px;width:34px;height:34px;fill:none;stroke:var(--ink);stroke-width:1.4;margin-top:2px}
@media(max-width:1150px){.promo .promo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.promo-notes{grid-template-columns:1fr}.promo-notes p{padding:12px 0;border-left:0}}
@media(max-width:900px){.promo-head{flex-direction:column}.promo-side{align-items:flex-start;padding-top:0;gap:16px}}
@media(max-width:700px){.promo .promo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.promo .promo-cell{padding:20px 16px;border-radius:16px}.promo .promo-n{font-size:34px;margin:8px 0 12px;padding-bottom:12px}.promo .promo-h{font-size:15px}.promo .promo-sub{font-size:13px}.promo-tag{font-size:11px;letter-spacing:2px}.promo-date{font-size:14px;padding:10px 18px}.promo-date svg{width:24px;height:24px;padding-right:12px}.promo-cta{min-width:0;width:100%;padding:18px 24px;letter-spacing:3px}.promo-notes p{font-size:14px}}
/* Bảng giá nổi bật + ảnh mẫu tóc bên phải (13/11) */
.service-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr);grid-template-areas:"v t p";gap:28px;align-items:stretch;background:color-mix(in srgb,var(--paper) 45%,white);border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 18px 44px #1d181414}
.service-visual{grid-area:v;background:linear-gradient(160deg,#2c2724,#14110f);color:#f6efe6;border-radius:20px;min-height:420px;padding:34px}
.service-visual>span:first-child{color:#ffffff14;top:-50px}
.service-visual p{color:#f6efe6d9}.service-visual .small{color:#f6efe6a6}
.service-off{order:-1;align-self:flex-start;margin:0 0 auto!important;background:var(--accent);color:#fff!important;font-family:var(--serif);font-size:30px!important;line-height:1;padding:12px 20px;border-radius:40px;z-index:1}
.service-table{grid-area:t;align-self:center}
.service-table table{border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.service-table thead th{background:var(--ink);color:var(--paper);font-size:13px;letter-spacing:2px}
.service-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 7%,transparent)}
.service-table td b{font-size:19px}
.service-table .text-link{background:var(--ink);color:var(--paper);border-radius:40px;padding:14px 26px;border:0;letter-spacing:1px}
.service-table .text-link:hover{background:var(--accent);color:#fff}
.service-photo{grid-area:p;margin:0;position:relative;border-radius:20px;overflow:hidden;min-height:460px;background:var(--line)}
.service-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;animation:svcIn .5s ease}
.service-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:50px 18px 16px;background:linear-gradient(transparent,#000000b3);color:#fff;display:flex;flex-direction:column;gap:4px}
.service-photo figcaption span{font-family:var(--serif);font-size:20px}.service-photo figcaption small{font-size:10px;letter-spacing:2px;opacity:.8}
@keyframes svcIn{from{opacity:0;transform:scale(1.03)}to{opacity:1;transform:none}}
@media(max-width:1150px){.service-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-template-areas:"v p" "t t"}}
@media(max-width:700px){.service-layout{padding:14px;gap:14px;border-radius:18px}.service-visual{min-height:260px;padding:20px;margin-bottom:0}.service-visual h3{font-size:26px}.service-photo{min-height:260px}.service-off{font-size:22px!important;padding:8px 14px}.service-table td b{font-size:14px}.service-table .text-link{width:100%;justify-content:center}}
@media(max-width:700px){.service-photo figcaption{padding:40px 10px 10px}.service-photo figcaption span{font-size:15px}.service-photo figcaption small{font-size:8px;letter-spacing:1px}}
/* 13/11: ảnh mẫu tóc nằm trong ô bên trái, chữ dịch vụ đè lên ảnh; bảng giá bên phải */
.service-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);grid-template-areas:"p t"}
.service-photo,.service-visual{grid-area:p}
.service-photo{min-height:520px}
.service-photo figcaption{left:auto;right:14px;top:14px;bottom:auto;padding:6px 12px;background:#00000066;border-radius:20px}.service-photo figcaption:not(:has(small)){display:none}.service-photo figcaption span{display:none}
.service-visual{z-index:2;background:linear-gradient(180deg,#0000 35%,#000000d9);min-height:0;align-self:stretch;pointer-events:none}
.service-visual>span:first-child{display:none}
@media(max-width:1150px){.service-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);grid-template-areas:"p t"}}
@media(max-width:800px){.service-layout{grid-template-columns:1fr;grid-template-areas:"p" "t"}.service-photo{min-height:440px}.service-visual{min-height:0}}
/* Sản phẩm chính hãng (lấy từ web cũ 13/11) */
.prod-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}@media(max-width:1150px){.prod-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.prod-card{background:color-mix(in srgb,var(--paper) 40%,white);border:1px solid var(--line);border-radius:20px;padding:14px 14px 18px;display:flex;flex-direction:column;gap:6px;transition:transform .25s,box-shadow .25s}
.prod-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #1d18141a}
.prod-img{aspect-ratio:1;border-radius:14px;overflow:hidden;background:#fff;margin-bottom:8px}.prod-img img{width:100%;height:100%;object-fit:contain}
.prod-card h3{font-family:'Be Vietnam Pro',Arial,sans-serif;font-size:16px;font-weight:600;line-height:1.35}
.prod-card p{font-size:13px;color:var(--muted)}
.prod-tag{margin-top:auto;align-self:flex-start;font-size:11px;letter-spacing:1px;text-transform:uppercase;border:1px solid var(--line);border-radius:20px;padding:5px 10px;color:var(--accent)}
@media(max-width:700px){.prod-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.prod-card{padding:10px 10px 14px;border-radius:16px}.prod-card h3{font-size:14px}}
/* Ảnh sản phẩm trong thẻ dịch vụ (Phục hồi: Olaplex, Number Three) */
.svc-prods{position:absolute;right:16px;top:60px;display:flex;flex-direction:column;gap:10px;z-index:3}
.svc-prods span{display:flex;flex-direction:column;align-items:center;gap:4px;background:#fff;border-radius:14px;padding:8px;box-shadow:0 8px 20px #0000002e;width:112px}
.service-photo .svc-prods img{position:static;inset:auto;animation:none;width:96px;height:96px;object-fit:contain;border-radius:8px}
.svc-prods small{font-size:11px;font-weight:600;color:#2a2220}
@media(max-width:700px){.svc-prods{top:50px;right:10px;gap:6px}.svc-prods span{width:78px;padding:5px}.service-photo .svc-prods img{width:66px;height:66px}.svc-prods small{font-size:9px}}
/* Trước / sau trong thẻ dịch vụ (Nối tóc lông vũ) */
.service-photo .ba{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#fff}
.service-photo .ba>div{position:relative;overflow:hidden}
.service-photo .ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.service-photo .ba b{position:absolute;left:50%;top:96px;transform:translateX(-50%);background:#000000a6;color:#fff;font-size:12px;letter-spacing:3px;padding:7px 14px;border-radius:20px;z-index:2}
.service-photo .ba b.after{background:var(--accent)}
@media(max-width:700px){.service-photo .ba b{top:64px;font-size:10px;padding:5px 10px}}
/* Ảnh đầu trang: không gian tiệm theo cơ sở, chạy chuyển ảnh */
.hero-visual{position:relative}
.hero-visual img{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease}
.hero-visual img.on{opacity:1}
.hero-dots{position:absolute;left:0;right:0;bottom:16px;display:flex;justify-content:center;gap:8px;z-index:2}
.hero-dots button{width:9px;height:9px;border-radius:50%;border:0;padding:0;background:#ffffff8c;cursor:pointer;transition:width .3s}
.hero-dots button.on{width:26px;border-radius:6px;background:#fff}
@media(prefers-reduced-motion:reduce){.hero-visual img{transition:none}}
/* Đội ngũ chuyên nghiệp (lấy từ web cũ 13/11) */
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.team-card{background:color-mix(in srgb,var(--paper) 40%,white);border:1px solid var(--line);border-radius:22px;padding:12px 12px 20px;display:flex;flex-direction:column;gap:4px;transition:transform .25s,box-shadow .25s}
.team-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px #1d18141f}
.team-img{aspect-ratio:768/814;border-radius:16px;overflow:hidden;margin-bottom:10px;background:var(--line)}.team-img img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.team-card h3{font-family:var(--serif);font-weight:400;font-size:28px;padding:0 6px}
.team-role{font-size:14px;padding:0 6px}.team-exp{font-size:13px;font-weight:600;color:var(--accent);padding:0 6px}
.team-book{margin:12px 6px 0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;font-size:14px;font-weight:600}
.team-book:hover{color:var(--accent)}
@media(max-width:1000px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.team-card{padding:8px 8px 14px;border-radius:16px}.team-card h3{font-size:22px}.team-role,.team-book{font-size:12px}.team-exp{font-size:11px}}
/* Ảnh 3D trong thẻ cơ sở ở phần Hệ thống */
.branch-img{aspect-ratio:16/10;border-radius:16px;overflow:hidden;margin:-4px -4px 18px;background:var(--line)}
.branch-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.branch:hover .branch-img img{transform:scale(1.03)}
/* 13/11: đầu Bảng giá + thẻ thông tin đầu trang theo mẫu anh gửi (giữ tông màu) */
.pricing .eyebrow{display:flex;align-items:center;gap:16px}.pricing .eyebrow::after{content:'';width:80px;height:1px;background:currentColor;opacity:.5}
.price-promise{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;align-self:center}
.price-promise li{display:flex;align-items:center;gap:16px;font-size:17px}
.price-promise i{width:46px;height:46px;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--paper) 40%,white)}
.price-promise svg,.tabs button svg,.bc-item svg,.branch-actions svg,.hero-stats svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.price-promise svg{width:22px;height:22px;color:var(--accent)}
#service-tabs button{display:inline-flex;align-items:center;gap:9px;border-radius:40px}
#service-tabs button svg{width:18px;height:18px;flex:0 0 18px}
.size-note{font-size:12px;color:var(--muted);margin:-8px 0 22px;letter-spacing:.3px}.size-note br{display:none}.size-note br+*{margin-left:0}
.hero-copy>.eyebrow{display:flex;align-items:center;gap:12px}.hero-copy>.eyebrow::before{content:'';width:4px;height:16px;background:var(--accent)}
.hero-swash{display:block;width:200px;height:16px;margin:-6px 0 18px}.hero-swash path{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linecap:round;opacity:.7}
.branch-card{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:0;padding:18px 8px;border-radius:16px;max-width:600px}
.bc-item{display:flex;gap:12px;align-items:flex-start;padding:0 14px;border-left:1px solid var(--line)}.bc-item:first-child{border-left:0}
.bc-item svg{width:22px;height:22px;flex:0 0 22px;color:var(--ink);margin-top:2px}
.bc-item p{display:flex;flex-direction:column;font-size:13px;line-height:1.5;margin:0}.bc-item b,.bc-item a{font-size:14px;font-weight:700;color:var(--ink)}.bc-item small,.bc-item span{font-size:12px;color:var(--muted)}
.branch-actions{display:flex;gap:14px;margin-top:20px;flex-wrap:wrap}
.branch-actions a{display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 24px;border-radius:40px;font-size:14px;font-weight:600}
.branch-actions .bc-book{background:var(--accent);color:#fff}.branch-actions .bc-book:hover{background:var(--ink)}
.branch-actions .bc-map{border:1px solid var(--ink);color:var(--ink)}.branch-actions .bc-map:hover{background:var(--ink);color:var(--paper)}
.branch-actions svg{width:18px;height:18px}
.hero-stats{gap:0;margin-top:28px;max-width:600px}.hero-stats p{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:0 22px;border-left:1px solid var(--line)}.hero-stats p:first-child{padding-left:0;border-left:0}
.hero-stats svg{grid-row:1/3;width:26px;height:26px;color:var(--accent)}.hero-stats strong{font-size:28px}.hero-stats span{margin-top:4px}
@media(max-width:700px){.branch-card{grid-template-columns:1fr;padding:6px 14px}.bc-item{border-left:0;border-top:1px solid var(--line);padding:12px 0}.bc-item:first-child{border-top:0}.branch-actions a{flex:1;justify-content:center;padding:0 14px}.hero-stats p{padding:0 10px}.hero-stats strong{font-size:22px}.hero-stats svg{width:20px;height:20px}.price-promise li{font-size:15px}.price-promise i{width:38px;height:38px}#service-tabs button{justify-content:flex-start;text-align:left}}
.size-note{white-space:pre-wrap}
@media(max-width:1150px) and (min-width:701px){.branch-card{grid-template-columns:1fr 1fr;row-gap:14px}.bc-item:first-child{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:12px}.bc-item:nth-child(2){border-left:0}}
@media(max-width:700px){.branch-actions{gap:10px}.branch-actions a{white-space:nowrap;padding:0 12px;gap:8px;font-size:13px}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.hero-stats p{grid-template-columns:1fr;padding:0 8px;row-gap:4px}.hero-stats p:first-child{padding-left:0}.hero-stats svg{grid-row:auto}.hero-stats span{font-size:10px}}
/* Hình ảnh: mỗi nhóm 1 ảnh đại diện, bấm vào mới mở bộ ảnh */
.group-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.group-card{position:relative;border:0;padding:0;border-radius:18px;overflow:hidden;cursor:pointer;aspect-ratio:3/4.4;background:var(--line);text-align:left}
.group-card img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;transition:transform .5s}
.group-card:hover img{transform:scale(1.04)}
.group-info{position:absolute;left:0;right:0;bottom:0;padding:60px 18px 18px;background:linear-gradient(transparent,#000000c4);color:#fff;display:flex;flex-direction:column;gap:4px}
.group-info b{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.2}.group-info small{font-size:12px;opacity:.85}.group-info i{font-style:normal;font-size:12px;letter-spacing:1px;margin-top:8px;border-top:1px solid #ffffff55;padding-top:8px}
#gallery-filters .g-back{background:var(--ink);color:var(--paper);border-color:var(--ink)}
@media(max-width:1100px){.group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.group-info{padding:40px 12px 12px}.group-info b{font-size:17px}}
/* Module Chế độ bảo hành (Minimal Luxury, màu theo yêu cầu 13/11) */
.warranty{--w-bg:#F5EFE9;--w-card:#FFFCF8;--w-mocha:#694B35;--w-ink:#29221F;--w-muted:#75685E;--w-line:#E5D7CB;margin-top:56px;padding:44px;border:1px solid var(--w-line);border-top:1px solid var(--w-line);border-radius:18px;background:var(--w-bg);color:var(--w-ink)}
.war-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px}
.war-eyebrow{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:3px;color:var(--w-muted);margin-bottom:14px}.war-eyebrow::after{content:'';width:60px;height:1px;background:var(--w-line)}
.warranty h3{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.2vw,44px);line-height:1.15;margin:0;color:var(--w-ink)}.warranty h3 em{color:var(--w-mocha)}
.war-lead{max-width:340px;font-size:14px;line-height:1.7;color:var(--w-muted)}
.war-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:stretch}
.warranty .warranty-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.warranty .war{all:unset;box-sizing:border-box;cursor:pointer;background:var(--w-card);border:1px solid var(--w-line);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 10px #29221f0a;transition:border-color .2s,box-shadow .2s,transform .2s}
.warranty .war:hover{transform:translateY(-2px);box-shadow:0 10px 24px #29221f14}
.warranty .war:focus-visible{outline:2px solid var(--w-mocha);outline-offset:3px}
.warranty .war[aria-checked=true]{border-color:var(--w-mocha);box-shadow:0 10px 26px #694b3524;background:linear-gradient(180deg,#fffcf8,#f8f1ea)}
.warranty .war svg{width:24px;height:24px;fill:none;stroke:var(--w-mocha);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.warranty .war b{font-family:var(--serif);font-weight:400;font-size:44px;line-height:1;color:var(--w-mocha)}.warranty .war b small{font-size:13px;margin-left:6px;color:var(--w-muted);font-family:Arial,sans-serif}
.warranty .war span{font-size:14px;color:var(--w-ink);line-height:1.5}
.war-panel{background:var(--w-card);border:1px solid var(--w-line);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 10px #29221f0a}
.war-pick{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--w-muted)}
.war-big{font-family:var(--serif);font-size:56px;line-height:1;color:var(--w-mocha)}.war-big small{font-size:16px;color:var(--w-muted)}
.war-desc,.war-note{font-size:14px;line-height:1.7;color:var(--w-muted)}.war-note{font-size:12.5px;border-top:1px solid var(--w-line);padding-top:12px;margin-top:4px}
.war-date{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--w-ink)}
.war-date input{font:inherit;font-size:15px;padding:12px 14px;border:1px solid var(--w-line);border-radius:14px;background:#fff;color:var(--w-ink);transition:border-color .2s}.war-date input:focus{outline:none;border-color:var(--w-mocha)}
.war-result{border-radius:14px;padding:14px 16px;background:#f5efe9;border:1px solid var(--w-line);display:grid;gap:4px;animation:warIn .22s ease}
.war-result p{font-size:12px;color:var(--w-muted)}.war-result strong{font-family:var(--serif);font-weight:400;font-size:26px;color:var(--w-ink)}.war-result span{font-size:13px;color:var(--w-mocha);font-weight:600}
.war-result i{display:block;height:4px;border-radius:4px;background:var(--w-line);margin-top:6px;position:relative;overflow:hidden}.war-result i::after{content:'';position:absolute;inset:0 auto 0 0;width:var(--p);background:var(--w-mocha);border-radius:4px}
.war-result.end span{color:var(--w-muted)}
.war-actions{display:flex;flex-wrap:wrap;gap:10px}
.war-actions a{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:40px;font-size:14px;font-weight:600;transition:background .2s,color .2s}
.war-zalo{background:var(--w-mocha);color:#fff}.war-zalo:hover{background:var(--w-ink)}
.war-call{border:1px solid var(--w-mocha);color:var(--w-mocha)}.war-call:hover{background:var(--w-mocha);color:#fff}
@keyframes warIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.warranty .war,.war-result{transition:none;animation:none}}
@media(max-width:1000px){.war-body{grid-template-columns:1fr}.war-head{flex-direction:column;align-items:flex-start}}
@media(max-width:700px){.warranty{padding:22px 16px;margin-top:40px}.warranty .warranty-grid{gap:10px}.warranty .war{padding:16px}.warranty .war b{font-size:34px}.war-panel{padding:20px}.war-big{font-size:44px}.war-actions a{flex:1;justify-content:center}}
@media(max-width:700px){.war-actions{flex-direction:column}.war-actions a{width:100%;white-space:nowrap}}.warranty .war{justify-content:flex-start}
/* Chính sách bảo hành (thay bản tra hạn) */
.warranty .warranty-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.warranty .war{cursor:default}.warranty .war:hover{transform:none;box-shadow:0 2px 10px #29221f0a}
.warranty .war p{font-size:13px;line-height:1.6;color:var(--w-muted);border-top:1px solid var(--w-line);padding-top:10px;margin-top:4px}
.war-bleach{margin:16px 0 0;padding:14px 18px;border-radius:14px;background:var(--w-card);border:1px dashed var(--w-line);font-size:14px;line-height:1.7;color:var(--w-ink)}.war-bleach b{color:var(--w-mocha)}
.war-policy{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}
.war-policy article{background:var(--w-card);border:1px solid var(--w-line);border-radius:16px;padding:22px;transition:box-shadow .2s}.war-policy article:hover{box-shadow:0 10px 24px #29221f12}
.war-policy h4{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;font-weight:400}.war-policy h4 span{font-family:var(--serif);font-size:22px;color:var(--w-mocha)}.war-policy h4 b{font-size:15px;font-weight:700;color:var(--w-ink)}
.war-policy ul,.war-policy ol{margin:0;padding-left:18px;display:grid;gap:8px}.war-policy li{font-size:13.5px;line-height:1.65;color:var(--w-muted)}.war-policy li::marker{color:var(--w-mocha)}
.war-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;padding-top:22px;border-top:1px solid var(--w-line)}.war-cta p{font-size:15px;color:var(--w-ink);max-width:520px;line-height:1.6}
@media(max-width:1150px){.warranty .warranty-grid,.war-policy{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.warranty .warranty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.war-policy{grid-template-columns:1fr}.war-cta{flex-direction:column;align-items:stretch}.warranty .war p{font-size:12px}}
.ba-dots{position:absolute;left:0;right:0;top:140px;display:flex;justify-content:center;gap:8px;z-index:4}.ba-dots button{width:9px;height:9px;border-radius:50%;border:0;padding:0;background:#ffffff8c;cursor:pointer;pointer-events:auto}.ba-dots button.on{width:24px;border-radius:6px;background:#fff}
.ba-dots{left:50%;right:auto;transform:translateX(-50%);top:auto;bottom:118px;background:#00000066;padding:7px 10px;border-radius:20px}
.ba-dots{bottom:auto;top:138px}@media(max-width:700px){.ba-dots{top:96px}}
/* Chính sách bảo hành: bấm vào mới mở nội dung */
.war-policy{align-items:start}
.war-policy .war-item{background:var(--w-card);border:1px solid var(--w-line);border-radius:16px;transition:box-shadow .2s,border-color .2s}
.war-policy .war-item:hover{box-shadow:0 10px 24px #29221f12}
.war-policy .war-item[open]{border-color:var(--w-mocha)}
.war-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 22px}
.war-item summary::-webkit-details-marker{display:none}
.war-item summary h4{margin:0}
.war-item summary i{flex:0 0 26px;height:26px;border:1px solid var(--w-line);border-radius:50%;position:relative;transition:transform .22s,background .2s}
.war-item summary i::before,.war-item summary i::after{content:'';position:absolute;left:50%;top:50%;width:10px;height:1.5px;background:var(--w-mocha);transform:translate(-50%,-50%)}
.war-item summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:opacity .2s}
.war-item[open] summary i{background:var(--w-mocha)}.war-item[open] summary i::before{background:#fff}.war-item[open] summary i::after{opacity:0}
.war-item summary:focus-visible{outline:2px solid var(--w-mocha);outline-offset:2px;border-radius:16px}
.war-item-body{padding:0 22px 20px;animation:warIn .22s ease}
#gallery-note:empty{display:none}.service-photo figcaption{display:none!important}
/* Khối Đặt lịch theo mẫu 13/11: trái nền ảnh 3D tối, phải thẻ form sáng */
.booking{display:block;background:transparent;color:inherit}
.bk-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);border-radius:26px;overflow:hidden;position:relative;background:#2a211c;box-shadow:0 24px 60px #1d18142e;min-height:640px}
.bk-left{position:relative;padding:64px 56px;color:#f6efe6;background:linear-gradient(90deg,#1f1915f2 0%,#1f1915c8 55%,#1f191566 100%),url(/space/q3-3d-7.jpg) center/cover no-repeat;display:flex;flex-direction:column}
.bk-left .eyebrow{color:#f6efe6;letter-spacing:4px;font-size:12px}
.bk-left h2{color:#fff;font-size:clamp(34px,3.6vw,52px);line-height:1.18;margin:14px 0 20px}.bk-left h2 em{color:#fff}
.booking .bk-left>p:not(.eyebrow){color:#f6efe6d9;font-size:16px;line-height:1.7;max-width:440px;padding-bottom:26px;border-bottom:1px solid #ffffff30;margin-bottom:26px}
.bk-phone{display:inline-flex;align-items:center;gap:14px;font-size:30px;font-weight:700;color:#fff;letter-spacing:.5px}
.bk-phone svg{width:34px;height:34px;padding:6px;border:1.5px solid #fff;border-radius:50%}
.bk-addr{display:flex;gap:14px;margin:20px 0 0;font-size:15px;line-height:1.7;color:#f6efe6e6;max-width:460px}.bk-addr a{color:#fff;text-decoration:underline}
.bk-addr svg{flex:0 0 22px;width:22px;height:22px;margin-top:3px}
.bk-social{display:flex;gap:12px;margin-top:28px}
.bk-social a{width:42px;height:42px;border:1px solid #ffffff59;border-radius:10px;display:grid;place-items:center;color:#fff;transition:background .2s,border-color .2s}.bk-social a:hover{background:#ffffff1f;border-color:#fff}
.bk-social svg,.bk-phone svg,.bk-addr svg,.bk-title svg,.bk-submit svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.bk-social svg{width:20px;height:20px}
.booking .demo-note{margin-top:auto;padding-top:22px;font-size:11px;color:#f6efe699;border-left:0;padding-left:0}
.bk-card{margin:22px 22px 22px 0;background:#fbf7f2;border-radius:22px;padding:40px 44px;color:#29221f;box-shadow:0 10px 30px #00000026}
.bk-title{display:flex;align-items:center;gap:16px;font-family:var(--serif);font-weight:400;font-size:28px;margin:0 0 26px;color:#29221f}.bk-title svg{width:30px;height:30px;color:#694b35}
.bk-card .form-grid{grid-template-columns:1fr 1fr;gap:20px 24px}
.bk-card label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#29221f}.bk-card label>span{font-size:14px;font-weight:500}
.bk-card input:not([type=checkbox]),.bk-card select,.bk-card textarea{width:100%;min-height:50px;border:1px solid #e5d7cb;border-radius:14px;background:#fffdfb;padding:12px 16px;font:inherit;font-size:15px;color:#29221f;transition:border-color .2s,box-shadow .2s}
.bk-card textarea{min-height:100px;resize:vertical}.bk-card>label{margin-top:20px}
.bk-card input:focus,.bk-card select:focus,.bk-card textarea:focus{outline:none;border-color:#694b35;box-shadow:0 0 0 3px #694b351f}
.bk-card .consent{flex-direction:row;align-items:center;gap:12px;font-size:14px;margin-top:18px}.bk-card .consent input{width:22px;height:22px;accent-color:#694b35}
.bk-card .bk-submit{width:100%;margin-top:20px;min-height:58px;border-radius:40px;background:#694b35;color:#fff;font-size:17px;font-weight:600;display:flex;justify-content:center;align-items:center;gap:14px;border:0;box-shadow:0 10px 24px #694b3540;transition:background .2s,transform .2s}
.bk-card .bk-submit:hover{background:#29221f;transform:translateY(-1px)}.bk-submit svg{width:22px;height:22px}
.bk-card #booking-status{margin-top:12px;font-size:14px;color:#694b35}
@media(max-width:1000px){.bk-wrap{grid-template-columns:1fr}.bk-card{margin:0 16px 16px}.bk-left{padding:44px 28px}}
@media(max-width:700px){.bk-wrap{border-radius:18px}.bk-left{padding:34px 20px}.bk-phone{font-size:24px}.bk-card{margin:0 10px 10px;padding:26px 18px;border-radius:16px}.bk-card .form-grid{grid-template-columns:1fr;gap:16px}.bk-title{font-size:23px}}
.booking #contact-info .bk-phone{display:inline-flex;font-family:inherit;font-size:30px;font-weight:700;color:#fff;text-decoration:none}
.booking #contact-info .bk-addr a{display:inline;font-size:inherit}
.booking #contact-info .bk-social a{display:grid}
@media(max-width:700px){.booking #contact-info .bk-phone{font-size:24px}}
.bk-left{background:linear-gradient(90deg,#1f1915e6 0%,#1f1915a6 50%,#1f191540 100%),url(/space/q3-3d-7.jpg) 70% center/cover no-repeat}
.ba-prod{top:auto;bottom:150px;right:14px}.ba-prod span{width:120px}.service-photo .ba-prod img{width:104px;height:120px;object-fit:cover;object-position:50% 40%}@media(max-width:700px){.ba-prod{bottom:120px}.ba-prod span{width:80px}.service-photo .ba-prod img{width:70px;height:80px}}

/* Nút nổi: YouTube + WhatsApp + Zalo */
.float-stack{position:fixed;right:22px;bottom:22px;z-index:14;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.float-stack .zalo{position:static}
.fl-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--paper);border:1px solid var(--line);color:var(--ink);box-shadow:0 5px 22px #25282025;transition:transform .2s,background .2s,color .2s}
.fl-icon:hover{transform:translateY(-2px);background:var(--ink);color:var(--paper)}
.fl-icon svg,.bk-social svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.fl-icon svg{width:22px;height:22px}
@media(max-width:700px){.float-stack{right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px))}.float-stack .zalo{display:none}.fl-icon{width:44px;height:44px}}

/* Nút nháy Đặt lịch ngay, luôn hiện */
.book-pill{position:fixed;left:22px;bottom:22px;z-index:16;display:inline-flex;align-items:center;gap:10px;padding:0 26px;min-height:54px;border-radius:40px;background:var(--accent);color:#fff;font-size:14px;font-weight:700;letter-spacing:1.5px;box-shadow:0 8px 26px color-mix(in srgb,var(--accent) 55%,transparent);animation:pillGlow 1.6s ease-in-out infinite;transition:transform .2s}
.book-pill:hover{transform:translateY(-2px)}
.book-pill svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@keyframes pillGlow{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 60%,transparent),0 8px 26px color-mix(in srgb,var(--accent) 45%,transparent);filter:brightness(1)}50%{box-shadow:0 0 0 12px color-mix(in srgb,var(--accent) 0%,transparent),0 8px 34px color-mix(in srgb,var(--accent) 70%,transparent);filter:brightness(1.15)}}
@media(max-width:700px){.book-pill{left:50%;transform:translateX(-50%);bottom:calc(84px + env(safe-area-inset-bottom,0px));min-height:46px;padding:0 18px;font-size:12px;letter-spacing:1px;white-space:nowrap}.book-pill:hover{transform:translateX(-50%)}.float-stack{bottom:calc(140px + env(safe-area-inset-bottom,0px))}}

/* Mục Video YouTube: ảnh bìa trước, bấm mới tải video (nhẹ trang) */
.vid-side{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:360px}
.vid-channel{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 20px;border-radius:40px;border:1px solid var(--ink);font-size:14px;font-weight:600}.vid-channel:hover{background:var(--ink);color:var(--paper)}
.vid-channel svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6}
.vid-tabs{display:flex;gap:10px;margin-bottom:22px}.vid-tabs button{min-height:44px;padding:0 22px;border-radius:40px;border:1px solid var(--line);background:transparent;font:inherit;font-size:14px;cursor:pointer}.vid-tabs button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.vid-grid{display:grid;gap:18px}.vid-grid.shorts{grid-template-columns:repeat(4,minmax(0,1fr))}.vid-grid.vlog{grid-template-columns:repeat(3,minmax(0,1fr))}
.vid-card{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:10px}
.vid-thumb{position:relative;display:block;border-radius:18px;overflow:hidden;background:#1a1512;box-shadow:0 8px 24px #1d18141a}
.shorts .vid-thumb{aspect-ratio:9/16}.vlog .vid-thumb{aspect-ratio:16/9}
.vid-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.vid-card:hover .vid-thumb img{transform:scale(1.04)}
.vid-thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid-play{position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px 0 0 -31px;border-radius:50%;background:#ffffffe6;box-shadow:0 6px 20px #0000004d}.vid-play::after{content:'';position:absolute;left:25px;top:20px;border-left:18px solid var(--accent);border-top:11px solid transparent;border-bottom:11px solid transparent}
.vid-title{font-size:14px;line-height:1.5;color:var(--ink)}
.vid-card:focus-visible .vid-thumb{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:1000px){.vid-grid.shorts{grid-template-columns:repeat(3,minmax(0,1fr))}.vid-grid.vlog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.vid-grid.shorts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vid-grid.vlog{grid-template-columns:1fr}.vid-play{width:50px;height:50px;margin:-25px 0 0 -25px}.vid-play::after{left:20px;top:15px;border-left-width:15px;border-top-width:10px;border-bottom-width:10px}.vid-title{font-size:12.5px}}

/* Chọn gói trong form đặt lịch */
.pkg-box{grid-column:1/-1;border:0;margin:0;padding:0;min-width:0}
.pkg-box legend{font-size:14px;font-weight:500;margin-bottom:8px;padding:0}
.pkg-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pkg{position:relative;display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;border:1px solid #e5d7cb;border-radius:14px;background:#fffdfb;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.pkg:hover{border-color:#c9b29f}.pkg.on{border-color:#694b35;box-shadow:0 0 0 3px #694b351a;background:#fbf4ee}
.pkg input{position:absolute;opacity:0;pointer-events:none}.pkg:has(input:focus-visible){outline:2px solid #694b35;outline-offset:2px}
.pkg-name{font-size:14px;font-weight:600;color:#29221f;line-height:1.35}
.pkg-price{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.pkg-price s{display:block;font-size:11px;color:#75685e}.pkg-price b{font-size:16px;color:#694b35}.pkg-price small{font-size:11px;color:#75685e}
.pkg-sum{margin:10px 0 0;font-size:13.5px;color:#75685e}.pkg-sum b{font-size:16px;color:#29221f}
@media(max-width:700px){.pkg-list{grid-template-columns:1fr}}
@media(max-width:700px){.pkg-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pkg{flex-direction:column!important;align-items:flex-start;padding:10px 12px;gap:4px}.pkg-name{font-size:13px}.pkg-price{text-align:left}.pkg-price s{display:inline;margin-right:6px}}
.bk-card input[type=date],.bk-card input[type=time]{cursor:pointer}
/* 14/11 sửa giao diện điện thoại */
@media(max-width:900px){.reviews .section-heading{align-items:flex-start}}
@media(max-width:700px){
 .book-pill{display:none}
 .float-stack{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
 .mobile-actions .mobile-book{animation:pillGlow 1.6s ease-in-out infinite}
 .mb-off{background:#fff;color:var(--accent);border-radius:20px;padding:2px 7px;font-size:11px;margin-left:6px}
 .hero-dots{gap:4px;bottom:8px}.hero-dots button{width:24px;height:24px;background:transparent;position:relative}.hero-dots button::after{content:'';position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#ffffffa0;transition:width .3s}.hero-dots button.on{width:32px;background:transparent}.hero-dots button.on::after{width:22px;margin-left:-11px;border-radius:5px;background:#fff}
 .bc-item a,#branch-call{display:inline-block;padding:6px 0}
 .branch-links a,.bk-addr a{display:inline-block;padding:8px 0}
 .size-note{white-space:normal;font-size:11.5px;line-height:1.8}
}
@media(max-width:1180px) and (min-width:701px){
 body>header{gap:14px}
 body>header .logo,body>header a,body>header button{white-space:nowrap}
 #main-nav{gap:16px}#main-nav a{font-size:12.5px;white-space:nowrap}
 #main-nav a[href="#products"],#main-nav a[href="#videos"],#main-nav a[href="#reviews"]{display:none}
 .nav-tools .mode-switch button{white-space:nowrap;padding:8px 12px}
}
@media(max-width:960px) and (min-width:701px){#main-nav{display:none}.header-cta{padding-left:16px;padding-right:16px}}
@media(min-width:1101px){.group-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.group-info b{font-size:19px}}
/* 14/11: ô Tép tóc lông vũ dời xuống góc dưới phải, nhỏ lại để không che mặt */
.ba-prod{top:auto!important;bottom:14px!important;right:14px!important}
.ba-prod span{width:96px;padding:6px;border-radius:12px}
.service-photo .ba-prod img{width:84px;height:84px}
.ba-prod small{font-size:10px;text-align:center;line-height:1.2}
.service-layout:has(.ba-prod) .service-visual{padding-right:124px}
@media(max-width:700px){.ba-prod{bottom:10px!important;right:10px!important}.ba-prod span{width:70px;padding:4px}.service-photo .ba-prod img{width:60px;height:60px}.ba-prod small{font-size:8.5px}.service-layout:has(.ba-prod) .service-visual{padding-right:90px}}

/* Khung xác nhận sau khi đặt lịch */
.bk-done{margin-top:18px;padding:22px;border-radius:16px;background:#f5efe9;border:1px solid #e5d7cb;animation:warIn .25s ease}
.bk-done:focus{outline:none}.bk-done-h{font-family:var(--serif);font-size:22px;color:#694b35;margin:0 0 6px}
.bk-done-p,.bk-done-note{font-size:13.5px;color:#75685e;line-height:1.6}.bk-done-note{font-size:12px;margin-top:10px}
.bk-done ul{list-style:none;margin:12px 0;padding:12px 14px;background:#fff;border-radius:12px;border:1px solid #e5d7cb;display:grid;gap:4px;font-size:13.5px;color:#29221f}
.bk-done-act{display:flex;flex-wrap:wrap;gap:10px}.bk-done-act a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:40px;font-size:14px;font-weight:600}
.bk-wa{background:#25D366;color:#fff}.bk-zl{background:#0068ff;color:#fff}.bk-call{border:1px solid #694b35;color:#694b35}
@media(max-width:700px){.bk-done-act a{flex:1 1 100%;justify-content:center}}
.team-mono{display:grid;place-items:center;background:linear-gradient(160deg,#2c2724,#14110f)}.team-mono span{font-family:var(--serif);font-size:96px;color:color-mix(in srgb,var(--accent) 55%,#f6efe6)}
#gallery-note{font-size:13px;color:var(--muted)}

/* Bản chạy thật: ẩn mọi nhãn "bản thử" */
html[data-live] [data-i18n="demo"],html[data-live] .demo-note,html[data-live] .demo-bar{display:none!important}

/* Khám phá thêm: link sang các trang cũ (blog, dịch vụ, chi nhánh) */
.old-links-sec{padding-top:40px;padding-bottom:40px;border-top:1px solid var(--line)}
.old-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:14px}
.ol-h{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.old-links ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.old-links a{font-size:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;padding:4px 0;display:inline-block}.old-links a:hover{color:var(--accent);border-color:currentColor}
@media(max-width:900px){.old-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
