/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.50
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}
/* AURO-V1: giao diện Auro Men Spa (base, header, hero, shortcodes, sections, blog, footer, dock, mobile) */


/* =====================================================================
   AURO-BASE: biến màu, chữ, nút (màu & font chính cấu hình ở Customizer)
   ===================================================================== */
:root {
  --au-bg: #f8f4ee; --au-mist: #e4efec; --au-sand: #f0e7da;
  --au-ink: #10272c; --au-ink2: #44575b;
  --au-teal: #0f6b66; --au-teal7: #0b524e; --au-teal9: #0b3431; --au-teal1: #d3e8e4;
  --au-gold: #c99b3c; --au-gold6: #93701f; --au-gold1: #f7edd5;
  --au-line: rgba(16, 39, 44, .12); --au-linel: rgba(255, 255, 255, .16);
  --au-r: 24px; --au-r2: 16px; --au-ease: cubic-bezier(.16, 1, .3, 1);
  --au-shadow: 0 24px 60px -24px rgba(16, 39, 44, .3); --au-shadow2: 0 10px 30px -14px rgba(16, 39, 44, .28);
}
body { color: #2b3d41; }
h1, h2, h3, h4, .heading-font { letter-spacing: -.02em; line-height: 1.15; }
h2 { font-size: clamp(1.9rem, 3.6vw, 3rem); }
p.lead, .lead { font-size: 1.12rem; color: var(--au-ink2); line-height: 1.75; }
.button { border-radius: 99px; text-transform: none; letter-spacing: 0; font-weight: 600; }
.button.secondary:not(.is-outline) { color: var(--au-ink); }
.button.secondary:not(.is-outline):hover { background: var(--au-gold6); color: #fff; }
.button.is-outline { border-width: 1.5px; }
.au-eyebrow { display: inline-flex; align-items: center; gap: 10px; font-weight: 500; color: var(--au-teal); margin-bottom: 14px; font-size: .95rem; }
.au-eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--au-gold); }
.dark .au-eyebrow { color: #e3c27a; }
.au-price { display: inline-block; padding: 6px 14px; border-radius: 999px; background: var(--au-gold1); color: var(--au-gold6); font-weight: 600; font-size: .9rem; }
.au-head p { margin-bottom: 0; }
img { border-radius: 0; }

/* =====================================================================
   AURO-HEADER: thanh trên, menu, hotline, nút đặt lịch, header trong suốt
   ===================================================================== */
.header-top { font-size: .86rem; }
.header-top a { color: #d7e6e3; }
.header-top a:hover { color: #fff; }
.auro-sep { display: inline-block; width: 1px; height: 12px; background: rgba(255, 255, 255, .25); margin: 0 14px; vertical-align: middle; }
.header-main .nav > li > a { text-transform: none; font-size: .98rem; letter-spacing: 0; padding: 8px 4px; }
.header-main .nav > li.active > a, .header-main .nav > li.current-menu-item > a { color: var(--au-teal); }
.header-main .nav > li > a::after { content: ""; display: block; height: 2px; background: var(--au-gold); transform: scaleX(0); transition: transform .35s var(--au-ease); margin-top: 4px; }
.header-main .nav > li > a:hover::after, .header-main .nav > li.active > a::after { transform: scaleX(1); }
.auro-hotline { display: inline-flex !important; align-items: center; gap: 10px; text-decoration: none; line-height: 1.15; font-weight: 600; color: var(--au-ink); }
.auro-hotline small { display: block; font-weight: 500; font-size: .72rem; color: var(--au-ink2); }
.auro-hotline .ic { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--au-teal1); color: var(--au-teal); }
.auro-hotline svg { width: 18px; height: 18px; }
.header-button-1 .button { padding: 0 1.5em; }
.header-wrapper.stuck, .header-main { box-shadow: none; }
.header-wrapper.stuck .header-main { box-shadow: 0 1px 0 var(--au-line), 0 10px 30px -20px rgba(16, 39, 44, .3); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
/* trang chủ: header trong suốt nằm trên ảnh hero */
.transparent .header-main .nav > li > a, .transparent .auro-hotline { color: #fff; }
.transparent .auro-hotline small { color: rgba(255, 255, 255, .75); }
.transparent .auro-hotline .ic { background: rgba(255, 255, 255, .16); color: #fff; }
.transparent .header-main .nav > li.active > a { color: #fff; }
.transparent .header-wrapper:not(.stuck) .header-bg-color { background: linear-gradient(180deg, rgba(8, 30, 29, .55), rgba(8, 30, 29, 0)) !important; }
.mobile-sidebar .auro-hotline { color: var(--au-ink); padding: 14px 20px; }

/* =====================================================================
   AURO-HERO: slider toàn màn hình (ux_slider + ux_banner)
   ===================================================================== */
.auro-hero { background: var(--au-teal9); }
.auro-hero .banner .bg { transform: scale(1.1); transition: transform 8s linear; }
.auro-hero .is-selected .banner .bg { transform: scale(1); }
.auro-hero .banner .overlay { background: linear-gradient(90deg, rgba(8, 30, 29, .85) 0%, rgba(8, 30, 29, .6) 34%, rgba(8, 30, 29, .1) 66%, rgba(8, 30, 29, 0) 82%), linear-gradient(0deg, rgba(8, 30, 29, .55) 0%, rgba(8, 30, 29, 0) 32%) !important; }
.auro-hero-box .text-box-content { text-shadow: 0 2px 24px rgba(0, 0, 0, .25); }
.auro-hero-sub { color: #f3dfae; font-weight: 600; font-size: 1.15rem; margin-bottom: .6em; }
.auro-h1 { font-size: clamp(3rem, min(6.6vw, 10vh), 6.2rem); line-height: 1.02; letter-spacing: -.035em; color: #fff; margin-bottom: .35em; font-weight: 700; }
.auro-h1 .accent { color: #e9c675; }
.auro-hero-box .lead { color: rgba(255, 255, 255, .9); max-width: 34em; margin-bottom: 26px; }
.auro-hero-box .button { margin-right: 10px; }
.auro-hero-box .button.white.is-outline { background: rgba(255, 255, 255, .1); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.auro-hero .flickity-page-dots { bottom: 92px; left: max(15px, calc((100vw - 1230px) / 2)); right: auto; width: auto; text-align: left; }
.auro-hero .flickity-page-dots .dot { width: 64px; height: 3px; border-radius: 3px; border: 0; background: rgba(255, 255, 255, .35); opacity: 1; margin: 0 8px 0 0; }
.auro-hero .flickity-page-dots .dot.is-selected { background: var(--au-gold); }

/* =====================================================================
   AURO-SHORTCODES: khung giữ phòng, chữ chạy, bản đồ cơ thể, form, map, social
   ===================================================================== */
/* khung giữ phòng nhanh */
.auro-qb-sec { position: relative; z-index: 5; margin-top: -64px; }
.qb-card { display: grid; grid-template-columns: auto minmax(190px, 1.5fr) minmax(140px, 1.1fr) minmax(110px, .8fr) minmax(90px, .7fr) auto; gap: 12px; align-items: end; background: #fff; border-radius: var(--au-r); padding: 18px 18px 18px 24px; box-shadow: var(--au-shadow); margin: 0; }
.qb-title { display: flex; align-items: center; gap: 12px; align-self: center; }
.qb-h { margin: 0; font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.1rem; color: var(--au-ink); line-height: 1.25; }
.qb-h small { display: block; font-family: "Be Vietnam Pro", sans-serif; font-weight: 400; font-size: .8rem; color: var(--au-ink2); }
.qb-ic { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; background: var(--au-gold1); color: var(--au-gold6); flex: none; }
.qb-ic svg { width: 22px; height: 22px; }
.qb-field { display: flex; flex-direction: column; gap: 5px; margin: 0; min-width: 0; font-weight: 400; }
.qb-field > span { font-size: .78rem; font-weight: 600; color: var(--au-ink2); padding-left: 4px; }
.qb-field select, .qb-field input { height: 50px; margin: 0; border-radius: 12px; border: 1.5px solid var(--au-line); background-color: var(--au-bg); box-shadow: none; font-weight: 500; font-size: .95rem; }
.qb-submit { margin: 0; min-height: 50px; display: inline-flex; align-items: center; gap: 8px; }
.qb-submit svg, .auro-booking .button svg { width: 18px; height: 18px; }
/* chữ chạy */
.auro-marquee { background: var(--au-teal); color: #fff; overflow: hidden; padding: 20px 0; transform: rotate(-1.2deg) scale(1.02); margin: 12px 0; }
.auro-marquee-track { display: flex; width: max-content; animation: auMarquee 38s linear infinite; }
.auro-marquee span { display: inline-flex; align-items: center; gap: 28px; padding-right: 28px; font-family: Lexend, sans-serif; font-weight: 600; font-size: clamp(1.15rem, 2vw, 1.7rem); white-space: nowrap; }
.auro-marquee span::after { content: ""; width: 11px; height: 11px; border-radius: 50%; background: var(--au-gold); }
@keyframes auMarquee { to { transform: translateX(-50%); } }
/* bản đồ cơ thể */
.auro-bodymap { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.bm-figure-card { position: relative; background: #fff; border-radius: var(--au-r); padding: 40px 24px 28px; box-shadow: var(--au-shadow2); }
.bm-hint { position: absolute; left: 22px; top: 16px; font-size: .85rem; color: var(--au-ink2); display: flex; align-items: center; gap: 8px; }
.bm-hint svg { width: 18px; height: 18px; color: var(--au-gold); animation: auTap 2s ease infinite; }
@keyframes auTap { 50% { transform: translateY(-4px); } }
.bm-figure { position: relative; height: min(66vh, 580px); aspect-ratio: 1 / 2; max-width: 100%; margin: 0 auto; }
.bm-figure svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.bm-line { fill: #eef6f4; stroke: var(--au-teal); stroke-width: 1.4; stroke-dasharray: 1000; stroke-dashoffset: 1000; }
.bm-detail { fill: none; stroke: var(--au-teal); stroke-width: 1; stroke-opacity: .35; stroke-dasharray: 1000; stroke-dashoffset: 1000; }
.is-drawn .bm-line, .is-drawn .bm-detail { stroke-dashoffset: 0; transition: stroke-dashoffset 2.4s ease; }
.bm-heat { opacity: 0; transform-box: fill-box; transform-origin: center; transform: scale(.6); transition: opacity .5s, transform .7s var(--au-ease); }
.bm-heat.on { opacity: 1; transform: none; }
.bm-spot { position: absolute; left: var(--x); top: var(--y); width: 46px; height: 46px; margin: -23px 0 0 -23px !important; padding: 0; min-height: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; }
.bm-spot::before { content: ""; position: absolute; inset: 14px; border-radius: 50%; background: #fff; border: 2.5px solid var(--au-gold); transition: transform .3s var(--au-ease), background .25s; }
.bm-spot::after { content: ""; position: absolute; inset: 8px; border-radius: 50%; border: 2px solid var(--au-gold); opacity: 0; animation: auRipple 2.6s ease infinite; }
.bm-spot:hover::before { transform: scale(1.3); }
.bm-spot[aria-pressed="true"]::before { background: var(--au-gold); transform: scale(1.4); }
.bm-spot[aria-pressed="true"]::after { animation: none; }
@keyframes auRipple { 0% { transform: scale(.6); opacity: 1; } 75%, 100% { transform: scale(1.7); opacity: 0; } }
.bm-tip { position: absolute; left: var(--x); top: var(--y); transform: translate(28px, -50%); white-space: nowrap; font-size: .82rem; font-weight: 500; padding: 4px 10px; border-radius: 999px; background: var(--au-ink); color: #fff; pointer-events: none; opacity: 0; transition: opacity .2s; }
.bm-tip.left { transform: translate(calc(-100% - 28px), -50%); }
.bm-spot:hover + .bm-tip { opacity: 1; }
.bm-zones { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 20px; padding: 0; list-style: none; }
.bm-zones li { margin: 0; }
.bm-chip { margin: 0; min-height: 0; border: 1.5px solid rgba(15, 107, 102, .25); background: #fff; border-radius: 999px; padding: 8px 18px; font-weight: 500; font-size: .95rem; color: var(--au-ink); line-height: 1.4; text-transform: none; transition: all .25s; }
.bm-chip:hover { border-color: var(--au-teal); transform: translateY(-2px); }
.bm-chip[aria-pressed="true"] { background: var(--au-teal); border-color: var(--au-teal); color: #fff; }
.bm-pressure { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 22px; font-weight: 500; color: var(--au-ink); }
.bm-seg { display: inline-flex; background: #fff; border-radius: 999px; padding: 4px; border: 1.5px solid rgba(15, 107, 102, .2); }
.bm-seg button { margin: 0; min-height: 0; padding: 7px 18px; border: 0; border-radius: 999px; background: transparent; font-size: .92rem; font-weight: 500; color: var(--au-ink); text-transform: none; line-height: 1.3; }
.bm-seg button[aria-checked="true"] { background: var(--au-ink); color: #fff; }
.bm-result { display: grid; grid-template-columns: 140px 1fr; gap: 20px; align-items: start; background: #fff; border-radius: var(--au-r2); padding: 18px; box-shadow: var(--au-shadow2); min-height: 180px; }
.bm-empty { grid-column: 1 / -1; align-self: center; text-align: center; color: var(--au-ink2); margin: 0; padding: 30px 10px; }
.bm-empty b { color: var(--au-teal); }
.bm-r-img { aspect-ratio: 3 / 4; border-radius: 12px; overflow: hidden; }
.bm-r-img img { width: 100%; height: 100%; object-fit: cover; }
.bm-r-label { font-size: .85rem; color: var(--au-ink2); margin: 0 0 4px; }
.bm-r-name { font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.5rem; line-height: 1.2; color: var(--au-ink); margin: 0 0 8px; }
.bm-r-meta { margin: 0 0 10px; }
.bm-r-meta span { background: var(--au-gold1); color: var(--au-gold6); font-weight: 600; font-size: .86rem; padding: 3px 12px; border-radius: 999px; }
.bm-r-why { color: var(--au-ink2); font-size: .95rem; margin-bottom: 12px; }
.bm-result .button { margin: 0; }
.bm-result.swap > * { animation: auPop .5s var(--au-ease) both; }
@keyframes auPop { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.bm-peek { display: none; }
/* form đặt lịch */
.auro-booking .ab-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 20px; }
.ab-field { display: flex; flex-direction: column; gap: 6px; margin: 0; font-weight: 600; font-size: .92rem; color: var(--au-ink); }
.ab-field em { font-style: normal; font-weight: 400; color: var(--au-ink2); }
.ab-full { grid-column: 1 / -1; }
.ab-field input, .ab-field select, .ab-field textarea { margin: 0; height: 52px; border-radius: 12px; border: 1.5px solid rgba(16, 39, 44, .16); background-color: var(--au-bg); box-shadow: none; font-weight: 400; font-size: 1rem; }
.ab-field textarea { height: auto; min-height: 100px; padding-top: 12px; }
.ab-field input:focus, .ab-field select:focus, .ab-field textarea:focus { border-color: var(--au-teal); background-color: #fff; box-shadow: 0 0 0 4px rgba(15, 107, 102, .14); }
.ab-actions { margin-top: 20px; }
.ab-actions .button { display: inline-flex; align-items: center; gap: 8px; margin: 0; }
.ab-error { color: #b4401a; font-weight: 500; margin: 10px 0 0; min-height: 1.2em; }
.ab-confirm { background: var(--au-teal9); color: #fff; border-radius: var(--au-r2); padding: 26px; margin-top: 22px; }
.ab-confirm[hidden] { display: none; }
.ab-confirm-h { font-family: Lexend, sans-serif; font-size: 1.3rem; font-weight: 600; margin-bottom: 6px; }
.ab-confirm p { color: #cfe3df; }
.ab-confirm pre { white-space: pre-wrap; font-family: inherit; font-size: .92rem; color: #e3efed; background: rgba(255, 255, 255, .06); padding: 16px; border-radius: 12px; border: 0; border-left: 3px solid var(--au-gold); margin: 12px 0 18px; }
.ab-confirm-actions .button { margin: 0 8px 8px 0; }
/* bản đồ */
.auro-map { border-radius: var(--au-r); overflow: hidden; background: var(--au-mist); box-shadow: var(--au-shadow2); }
.auro-map iframe { width: 100%; height: 100%; border: 0; display: block; }
/* nút mạng xã hội */
.auro-social { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.auro-social a { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: rgba(255, 255, 255, .08); border: 1px solid var(--au-linel); transition: transform .3s var(--au-ease), background .25s; }
.auro-social a:hover { transform: translateY(-3px); }
.auro-social .s-zalo:hover { background: #0068ff; }
.auro-social .s-wa:hover { background: #1fa855; }
.auro-social .s-insta:hover { background: #e1306c; }
.auro-social .s-maps:hover { background: #ea4335; }
.auro-social svg { width: 20px; height: 20px; }
.zalo-txt { font: 700 .72rem/1 "Be Vietnam Pro", sans-serif; }

/* =====================================================================
   AURO-SECTIONS: các khối trang chủ & trang con (dựng bằng UX Builder)
   ===================================================================== */
.au-sec-head { align-items: flex-end; margin-bottom: 18px; }
.au-sec-head h2 { margin-bottom: 0; }
/* dịch vụ dạng accordion + ảnh lớn bên phải */
.auro-svc .accordion-item { border-bottom: 1px solid var(--au-line); }
.auro-svc .accordion-title { border: 0; padding: 22px 40px 22px 4px; font-family: Lexend, sans-serif; font-size: 1.3rem; font-weight: 600; color: var(--au-ink); transition: color .3s, padding .4s var(--au-ease); }
.auro-svc .accordion-title.active { color: var(--au-teal); padding-left: 18px; background: none; position: relative; }
.auro-svc .accordion-title.active::before { content: ""; position: absolute; left: 0; top: 50%; margin-top: -11px; width: 4px; height: 22px; border-radius: 4px; background: var(--au-gold); }
.auro-svc .accordion-title .toggle { left: auto; right: 0; }
.auro-svc .accordion-inner { padding: 0 4px 24px 18px; }
.auro-svc .accordion-inner .img { display: none; }
.auro-svc .accordion-inner .button { margin: 6px 10px 0 0; }
.auro-svc-stage .col-inner { position: sticky; top: 110px; }
.auro-svc-stage .img-inner { border-radius: var(--au-r); box-shadow: var(--au-shadow); }
.auro-svc-stage img { transition: opacity .25s; }
/* lưới ảnh không gian */
.auro-bento .col { padding-bottom: 14px; }
.auro-bento .img-inner, .auro-gal .img-inner { border-radius: var(--au-r2); }
.auro-bento .img .caption, .auro-gal .img .caption { position: absolute; left: 0; right: 0; bottom: 0; padding: 40px 18px 14px; background: linear-gradient(0deg, rgba(8, 30, 29, .75), rgba(8, 30, 29, 0)); color: #fff; font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.05rem; text-align: left; border-radius: 0 0 var(--au-r2) var(--au-r2); }
.auro-bento .img, .auro-gal .img { position: relative; }
.auro-bento .img img, .auro-gal .img img { transition: transform 1.2s var(--au-ease); }
.auro-bento .img:hover img, .auro-gal .img:hover img { transform: scale(1.06); }
/* khối tối định hướng dịch vụ */
.auro-promise h2 em { font-style: normal; color: #e3c27a; }
.auro-promise .lead { color: #b9cfcb; }
/* tin tức */
.auro-posts .box-image { border-radius: var(--au-r2); overflow: hidden; }
.auro-posts .box-image img { transition: transform 1.1s var(--au-ease); }
.auro-posts .post-item:hover .box-image img { transform: scale(1.05); }
.auro-posts .box-text { padding: 18px 2px 0; }
.auro-posts .post-title { font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.15rem; line-height: 1.35; }
.auro-posts .is-divider { display: none; }
.auro-posts .post-meta { color: var(--au-ink2); font-size: .85rem; }
/* thẻ thông tin tìm đường */
.auro-find-card > .col-inner { border-radius: var(--au-r); }
.auro-find-card dl { display: grid; grid-template-columns: auto 1fr; gap: 10px 22px; margin: 6px 0 24px; }
.auro-find-card dt { color: #a9cbc5; font-weight: 400; }
.auro-find-card dd { margin: 0; color: #fff; font-weight: 500; }
.auro-find-card a { color: #fff; border-bottom: 1px solid rgba(255, 255, 255, .35); }
.auro-find-card .button { border-bottom: 0; }
/* đầu trang con */
.auro-page-hero h1 { font-size: clamp(2.3rem, 4.8vw, 4rem); letter-spacing: -.03em; }
.auro-page-hero h1 .hl { color: var(--au-teal); }
.auro-crumbs { font-size: .9rem; color: var(--au-ink2); margin-bottom: 18px; }
.auro-crumbs a { color: var(--au-teal); }
.auro-arch .img-inner { border-radius: 220px 220px var(--au-r) var(--au-r); box-shadow: var(--au-shadow); }
.auro-round .img-inner { border-radius: var(--au-r); box-shadow: var(--au-shadow2); }
/* hàng dịch vụ trang Dịch vụ: đảo chiều xen kẽ */
.auro-svc-row { padding: 26px 0; }
@media (min-width: 850px) { .auro-svc-row.auro-flip { flex-direction: row-reverse; } }
.auro-svc-row h3 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); margin-bottom: .4em; }
/* accordion hỏi đáp */
.auro-faq .accordion-item { background: #fff; border-radius: var(--au-r2); margin-bottom: 12px; box-shadow: 0 0 0 1px var(--au-line); overflow: hidden; }
.auro-faq .accordion-title { border: 0; padding: 20px 56px 20px 22px; font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.08rem; color: var(--au-ink); }
.auro-faq .accordion-title.active { background: none; color: var(--au-teal); }
.auro-faq .accordion-title .toggle { left: auto; right: 14px; }
.auro-faq .accordion-inner { padding: 0 22px 18px; }
/* thẻ form & thẻ liên hệ */
.auro-form-card > .col-inner { background: #fff; border-radius: var(--au-r); box-shadow: var(--au-shadow2); }
.auro-contact-card > .col-inner { border-radius: var(--au-r); }
.auro-contact-card dl { display: grid; grid-template-columns: auto 1fr; gap: 10px 20px; }
.auro-contact-card dt { color: #a9cbc5; font-weight: 400; }
.auro-contact-card dd { margin: 0; font-weight: 500; }
.auro-contact-card a { color: #fff; }
.auro-sign .img-inner { background: #fff; border-radius: var(--au-r); box-shadow: var(--au-shadow2); padding: 18px; }
.auro-info dl { display: grid; grid-template-columns: auto 1fr; gap: 12px 26px; font-size: 1.05rem; }
.auro-info dt { color: var(--au-ink2); font-weight: 400; }
.auro-info dd { margin: 0; font-weight: 500; }

/* =====================================================================
   AURO-BLOG: trang tin tức & bài viết
   ===================================================================== */
.blog-archive .page-title, .archive .page-title { display: none; }
.blog-archive .post-item .box-image, .archive .post-item .box-image { border-radius: var(--au-r2); overflow: hidden; }
.blog-archive .post-title, .archive .post-title { font-family: Lexend, sans-serif; font-weight: 600; }
.single-post .entry-content { font-size: 1.07rem; line-height: 1.8; max-width: 760px; margin: 0 auto; }
.single-post .entry-header-text { max-width: 860px; margin: 0 auto; }
.single-post .entry-title { font-size: clamp(1.9rem, 4vw, 3rem); letter-spacing: -.03em; }
.single-post .entry-image img { border-radius: var(--au-r); }
.single-post .entry-content h2 { font-size: clamp(1.4rem, 2.4vw, 1.85rem); margin: 1.6em 0 .6em; }
.single-post .entry-content .intro { font-size: 1.2rem; color: var(--au-ink); }
.single-post .entry-content ul.ticks, .single-post .entry-content ol.howto { list-style: none; margin: 0 0 1.4em; padding: 0; }
.single-post .entry-content ul.ticks li { position: relative; padding-left: 34px; margin-bottom: 10px; }
.single-post .entry-content ul.ticks li::before { content: ""; position: absolute; left: 0; top: 5px; width: 22px; height: 22px; border-radius: 50%; background: var(--au-teal1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6b66' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 12px no-repeat; }
.single-post .entry-content ol.howto { counter-reset: s; }
.single-post .entry-content ol.howto li { counter-increment: s; position: relative; padding: 16px 18px 16px 66px; margin-bottom: 12px; background: #fff; border-radius: var(--au-r2); box-shadow: 0 0 0 1px var(--au-line); }
.single-post .entry-content ol.howto li::before { content: counter(s); position: absolute; left: 16px; top: 15px; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--au-teal); color: #fff; font-family: Lexend, sans-serif; font-weight: 600; }
.callout { margin: 1.6em 0; padding: 18px 22px; border-radius: var(--au-r2); background: var(--au-gold1); border-left: 4px solid var(--au-gold); color: #3a3220; }
.callout--warn { background: #fdecea; border-left-color: #c2553a; color: #4a2219; }
.auro-post-cta { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: center; max-width: 760px; margin: 40px auto 10px; padding: 26px 28px; border-radius: var(--au-r); background: var(--au-teal); color: #fff; }
.auro-post-cta p { margin: 0; color: #cfe3df; }
.auro-post-cta .t { font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.3rem; color: #fff; margin-bottom: 4px; }
.auro-post-cta .button { margin: 0; }
.blog-share, .single-post .entry-meta .is-divider { display: none; }

/* =====================================================================
   AURO-FOOTER: khối Footer (Flatsome Block)
   ===================================================================== */
.absolute-footer { display: none; }
.auro-footer { color: #b9cfcb; overflow: hidden; }
.auro-footer a { color: #b9cfcb; }
.auro-footer a:hover { color: #fff; }
.auro-f-cta { background: linear-gradient(120deg, var(--au-teal), var(--au-teal7)); border-radius: var(--au-r); margin: 0 0 56px !important; padding: 34px 26px 14px; box-shadow: var(--au-shadow); position: relative; overflow: hidden; }
.auro-f-cta::after { content: ""; position: absolute; right: -60px; top: -90px; width: 260px; height: 260px; border-radius: 50%; border: 44px solid rgba(255, 255, 255, .06); pointer-events: none; }
.auro-f-cta h2 { color: #fff; font-size: clamp(1.5rem, 2.8vw, 2.3rem); margin-bottom: 6px; }
.auro-f-cta p { color: #cfe3df; }
.auro-f-cta .button { margin: 0 0 10px 10px; }
.auro-footer h3 { color: #fff; font-size: 1.08rem; margin-bottom: 16px; }
.auro-footer ul { list-style: none; margin: 0; }
.auro-footer ul li { margin: 0 0 10px; }
.auro-footer ul a { display: inline-block; transition: transform .3s var(--au-ease), color .2s; }
.auro-footer ul a:hover { transform: translateX(6px); }
.auro-footer dl { display: grid; grid-template-columns: auto 1fr; gap: 8px 18px; font-size: .92rem; margin: 14px 0 0; }
.auro-footer dt { color: #8fb3ad; font-weight: 400; white-space: nowrap; }
.auro-footer dd { margin: 0; color: #e4f1ee; }
.auro-footer .img-inner { border-radius: var(--au-r2); }
.auro-f-bottom { border-top: 1px solid var(--au-linel); padding-top: 22px; font-size: .86rem; }
.auro-f-bottom p { margin: 0 0 10px; }
.auro-f-giant { font-family: Cinzel, serif; font-weight: 600; font-size: clamp(4rem, 14.5vw, 13rem); line-height: .8; letter-spacing: .03em; text-align: center; white-space: nowrap; color: transparent; -webkit-text-stroke: 1px rgba(201, 155, 60, .3); background: linear-gradient(180deg, rgba(201, 155, 60, .16), rgba(201, 155, 60, 0) 75%); -webkit-background-clip: text; background-clip: text; margin: 10px 0 -.12em; user-select: none; }

/* =====================================================================
   AURO-DOCK: nút liên hệ nổi (máy tính) + thanh liên hệ (điện thoại)
   HTML nằm ở Flatsome > Advanced > Global Settings > Footer Scripts
   ===================================================================== */
.auro-dock { position: fixed; right: 18px; bottom: 22px; z-index: 50; display: flex; flex-direction: column; gap: 8px; padding: 8px; border-radius: 999px; background: rgba(255, 255, 255, .85); box-shadow: 0 16px 40px -14px rgba(16, 39, 44, .45); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.auro-dock a { position: relative; width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; color: #fff; transition: transform .3s var(--au-ease); }
.auro-dock a:hover { transform: scale(1.1); color: #fff; }
.auro-dock svg { width: 22px; height: 22px; }
.auro-dock .d-zalo { background: #0068ff; }
.auro-dock .d-wa { background: #1fa855; }
.auro-dock .d-insta { background: linear-gradient(45deg, #f5a623, #e1306c 50%, #833ab4); }
.auro-dock .d-maps { background: #fff; color: #ea4335; box-shadow: inset 0 0 0 1.5px rgba(16, 39, 44, .12); }
.auro-dock .d-call { background: var(--au-gold); color: var(--au-ink); }
.auro-dock .d-call::before { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid var(--au-gold); animation: auRipple 2.4s ease infinite; }
.auro-dock .tip { position: absolute; right: calc(100% + 14px); top: 50%; transform: translate(8px, -50%); white-space: nowrap; pointer-events: none; padding: 6px 12px; border-radius: 8px; background: var(--au-ink); color: #fff; font-size: .82rem; font-weight: 500; opacity: 0; transition: opacity .2s, transform .3s var(--au-ease); }
.auro-dock a:hover .tip { opacity: 1; transform: translate(0, -50%); }
.auro-qbar, .auro-sheet { display: none; }
#top-link { display: none !important; }

/* =====================================================================
   AURO-MOBILE
   ===================================================================== */
@media (max-width: 849px) {
  .qb-card { grid-template-columns: 1fr 1fr; padding: 18px; }
  .qb-title, .qb-svc, .qb-submit { grid-column: 1 / -1; }
  .auro-qb-sec { margin-top: -58px; }
  .auro-bodymap { grid-template-columns: 1fr; }
  .bm-figure { height: auto; width: min(58vw, 250px); }
  .bm-tip { display: none; }
  .bm-peek:not([hidden]) { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; position: sticky; bottom: 80px; z-index: 5; margin: 16px 0 0; padding: 12px 18px; min-height: 0; border: 0; border-radius: 999px; background: var(--au-ink); color: #fff; font-size: .9rem; text-transform: none; text-align: left; box-shadow: var(--au-shadow2); }
  .bm-peek i { font-style: normal; }
  .bm-peek span { color: #e3c27a; white-space: nowrap; font-weight: 600; }
  .bm-result { grid-template-columns: 96px 1fr; gap: 14px; }
  .auro-svc .accordion-inner .img { display: block; margin-bottom: 14px; }
  .auro-svc-stage { display: none; }
  .auro-marquee { transform: none; }
  .auro-h1 { font-size: clamp(2.6rem, 12.5vw, 3.5rem); }
  .auro-hero .banner .overlay { background: linear-gradient(0deg, rgba(8, 30, 29, .92) 0%, rgba(8, 30, 29, .7) 45%, rgba(8, 30, 29, .15) 72%, rgba(8, 30, 29, .45) 100%) !important; }
  .auro-hero-box .lead { font-size: 1rem; }
  .auro-hero-box .button { width: 100%; margin: 0 0 10px; }
  .auro-hero .flickity-page-dots { bottom: 78px; left: 15px; }
  .auro-hero .flickity-page-dots .dot { width: 40px; }
  .auro-booking .ab-grid { grid-template-columns: 1fr; }
  .auro-f-cta .button { margin: 0 10px 10px 0; }
  .auro-post-cta { grid-template-columns: 1fr; }
  .auro-dock { display: none; }
  body { padding-bottom: 68px; }
  .auro-qbar { display: grid; grid-template-columns: 1fr 1fr 1fr 1.7fr; gap: 6px; align-items: center; position: fixed; left: 0; right: 0; bottom: 0; z-index: 55; padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: rgba(255, 255, 255, .97); box-shadow: 0 -8px 24px -12px rgba(16, 39, 44, .3); }
  .auro-qbar a, .auro-qbar button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; height: 52px; margin: 0; padding: 0; min-height: 0; border: 0; background: none; border-radius: 14px; font-weight: 600; font-size: .78rem; line-height: 1.2; text-transform: none; color: var(--au-ink2); }
  .auro-qbar svg { width: 21px; height: 21px; }
  .auro-qbar .q-call { color: var(--au-teal); }
  .auro-qbar .zalo-txt { display: grid; place-items: center; width: 26px; height: 21px; border-radius: 6px; background: #0068ff; color: #fff; font-size: .62rem; }
  .auro-qbar .q-more[aria-expanded="true"] { background: var(--au-teal1); color: var(--au-teal7); }
  .auro-qbar .q-book { flex-direction: row; gap: 8px; background: var(--au-gold); color: var(--au-ink); font-size: .98rem; border-radius: 999px; }
  .auro-sheet { display: block; position: fixed; inset: 0; z-index: 54; }
  .auro-sheet[hidden] { display: none; }
  .auro-sheet .bd { position: absolute; inset: 0; background: rgba(16, 39, 44, .45); }
  .auro-sheet .panel { position: absolute; left: 0; right: 0; bottom: 0; padding: 12px 18px calc(92px + env(safe-area-inset-bottom)); background: #fff; border-radius: 26px 26px 0 0; animation: auUp .45s var(--au-ease) both; }
  @keyframes auUp { from { transform: translateY(100%); } to { transform: none; } }
  .auro-sheet .t { font-family: Lexend, sans-serif; font-weight: 600; font-size: 1.15rem; color: var(--au-ink); margin: 0 0 12px; }
  .auro-sheet .g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .auro-sheet .g a { display: flex; align-items: center; gap: 10px; padding: 11px; border-radius: 16px; background: var(--au-bg); color: var(--au-ink); font-weight: 600; font-size: .88rem; }
  .auro-sheet .ic { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; color: #fff; flex: none; }
  .auro-sheet .ic svg { width: 21px; height: 21px; }
  .auro-sheet .d-zalo .ic { background: #0068ff; } .auro-sheet .d-wa .ic { background: #1fa855; } .auro-sheet .d-maps .ic { background: #ea4335; } .auro-sheet .d-mail .ic { background: var(--au-teal); } .auro-sheet .d-call .ic { background: var(--au-gold); color: var(--au-ink); }
  .auro-sheet .x { width: 100%; margin: 14px 0 0; border: 1.5px solid var(--au-line); border-radius: 999px; background: #fff; font-weight: 600; text-transform: none; color: var(--au-ink); }
}
@media (prefers-reduced-motion: reduce) {
  .auro-marquee-track, .bm-spot::after, .auro-dock .d-call::before { animation: none; }
  .auro-hero .banner .bg { transition: none; transform: none; }
}
/* AURO-V2: sửa sau đối chiếu lần 1 (dt/dd viết hoa, chữ footer, thẻ CTA vắt ngang footer) */
.auro-find-card dl dt, .auro-find-card dl dd, .auro-footer dl dt, .auro-footer dl dd, .auro-info dl dt, .auro-info dl dd, .auro-contact-card dl dt, .auro-contact-card dl dd { text-transform: none; letter-spacing: 0; font-size: .95rem; }
.auro-footer .auro-f-giant { color: transparent; }
.footer-wrapper .auro-footer > .section-bg { background: linear-gradient(to bottom, var(--au-bg) 0, var(--au-bg) 110px, var(--au-teal9) 110px) !important; }
.auro-footer > .section-content { padding-top: 0; }
.auro-footer .auro-f-cta { margin-top: 0 !important; }
.auro-footer .auro-f-bottom a { color: #fff; font-weight: 600; }
/* AURO-V3: căn giữa thẻ CTA footer; giữ cỡ chữ hero trên điện thoại */
.auro-footer .auro-f-cta { margin: 0 auto 56px !important; }
.auro-hero .res-text { font-size: 1em; }
.auro-find-card dl dt { white-space: nowrap; }
@media (max-width: 849px) {
  .auro-footer .auro-f-cta { margin: 0 15px 44px !important; }
  .auro-footer .auro-f-cta .col { text-align: left !important; }
}
/* AURO-V4: ô Tóm tắt trang chỉ dùng làm meta description (Flatsome tự in ra đầu trang -> ẩn); cỡ tiêu đề dịch vụ */
.page-header-excerpt { display: none; }
.auro-svc-row h2 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); margin-bottom: .4em; }
.auro-svc-row p { font-size: 1.05rem; }
/* AURO-V5: bài viết – ảnh đại diện vừa khung, ẩn tên tác giả (tài khoản quản trị) */
.single-post .entry-image img { width: 100%; max-height: 520px; object-fit: cover; }
.single-post .entry-meta .byline, .single-post .entry-header .byline { display: none; }
.single-post .entry-category a { color: var(--au-teal); font-weight: 600; text-transform: none; letter-spacing: 0; }
/* AURO-V6: nhãn chuyên mục bài viết đủ cỡ đọc trên điện thoại */
.single-post .entry-category, .single-post .entry-category a { font-size: .85rem; }
/* AURO-V7: đối chiếu với demo – cỡ tiêu đề hero, tiêu đề bản đồ cơ thể ở cột phải, chú thích ảnh nổi trên ảnh */
.auro-hero .banner .auro-h1 { font-size: clamp(3rem, min(6.6vw, 10vh), 6.2rem); line-height: 1.02; }
.bm-head { margin-bottom: 22px; }
.bm-head h2 { margin-bottom: .35em; }
.bm-head .lead { margin-bottom: 0; }
.auro-bento .img .caption, .auro-gal .img .caption { z-index: 2; }
@media (max-width: 849px) { .auro-hero .banner .auro-h1 { font-size: clamp(2.6rem, 12.5vw, 3.5rem); } .auro-bodymap .bm-panel { display: contents; } .bm-head { order: -1; } }
/* AURO-V8: chú thích ảnh không gian luôn hiện (Flatsome mặc định chỉ hiện khi rê chuột) */
.auro-bento .img .caption, .auro-gal .img .caption { transform: none; }
/* AURO-V9: kiểm tra toàn diện – chặn tràn ngang do dải chữ chạy, cỡ chữ thanh trên, vùng chạm link footer trên mobile, đầu trang chuyên mục */
#content, #main { overflow-x: clip; }
.header-top, .header-top .html, .header-top a { font-size: 13px; }
.auro-cat-hero { padding: 60px 0 10px; }
.auro-cat-hero h1 { margin-bottom: .3em; }
@media (max-width: 849px) {
  .auro-footer ul li { margin: 0; }
  .auro-footer ul a { padding: 9px 0; }
  .auro-footer dl a, .auro-f-bottom a { display: inline-block; padding: 6px 0; }
  .auro-cat-hero { padding-top: 36px; }
}
/* AURO-V10: cỡ chữ thanh trên cùng (Flatsome nhân dồn em 0.75 x 0.8 -> 7.8px) */
#top-bar .nav > li.html, #top-bar .nav > li.html a { font-size: 13px; }
/* AURO-V11: đồng bộ kiểu chữ với bản demo tĩnh (đo bằng getComputedStyle trên cùng đoạn chữ, 1440px & 390px) */
/* -- font tiêu đề: Bricolage Grotesque (nạp ở snippet mục AURO-FONTS) */
h1, h2, h3, h4, h5, h6, .heading-font, .qb-h, .auro-marquee span, .bm-r-name, .ab-confirm-h, .auro-svc .accordion-title,
.auro-faq .accordion-title, .auro-posts .post-title, .blog-archive .post-title, .archive .post-title, .auro-post-cta .t,
.auro-bento .img .caption, .auro-gal .img .caption, .auro-sheet .t, .single-post .entry-content ol.howto li::before, .au-price {
  font-family: "Bricolage Grotesque", "Be Vietnam Pro", sans-serif;
  font-variation-settings: normal;
}
h1, h2, h3, h4 { font-weight: 650; line-height: 1.1; letter-spacing: -.02em; }
h2 { font-size: clamp(2rem, 4vw, 3.3rem); }
h3 { font-size: clamp(1.3rem, 2vw, 1.6rem); line-height: 1.2; }
p.lead, .lead { font-size: clamp(1.08rem, 1.4vw, 1.22rem); line-height: 1.7; color: var(--au-ink2); }
.dark .lead, .auro-promise .lead { color: #b9cfcb; }

/* -- nút bấm như demo: 1rem, chữ đậm 600, cao 54px */
.button { font-size: 1rem; font-weight: 600; line-height: 1.2; min-height: 54px; padding: 0 1.7em; display: inline-flex; align-items: center; justify-content: center; gap: .55em; }
.button.is-link { min-height: 0; padding: 0; color: var(--au-teal); font-size: 1.09rem; }
.button.is-link::after { content: "→"; transition: transform .3s; }
.button.is-link:hover::after { transform: translateX(4px); }
.header-button-1 .button { font-size: .95rem; min-height: 46px; padding: 0 1.3em; }
.button.primary.is-outline { color: var(--au-ink); border-color: var(--au-ink); }
.button.primary.is-outline:hover { background: var(--au-ink); color: #fff; }

/* -- hero */
.auro-hero .banner .auro-h1 { font-size: clamp(3rem, min(6.4vw, 9.5vh), 6rem); font-weight: 700; letter-spacing: -.035em; line-height: 1.02; }
.auro-hero-sub { font-size: clamp(1.05rem, 1.5vw, 1.25rem); line-height: 1.4; color: #f3dfae; }
.auro-hero-box .lead { font-size: clamp(1.08rem, 1.4vw, 1.22rem); color: rgba(255, 255, 255, .88); }
.auro-hero-box .button.white.is-outline { color: #fff; }

/* -- khung giữ phòng, bản đồ cơ thể */
.qb-h { font-size: 1.15rem; font-weight: 650; letter-spacing: -.02em; line-height: 1.2; }
.bm-pressure > span:first-child { font-size: 1rem; }
.bm-r-name { font-weight: 700; }

/* -- dịch vụ (accordion trang chủ): tên trái, giá phải như demo; bỏ icon mũi tên
   LƯU Ý: chữ "Liên hệ báo giá" ở tiêu đề lấy từ CSS – khi có bảng giá thật, xóa khối ::after này */
.auro-svc .accordion-title { font-size: clamp(1.25rem, 2vw, 1.55rem); font-weight: 650; letter-spacing: -.02em; line-height: 1.2; display: flex; justify-content: space-between; align-items: baseline; gap: 20px; padding-right: 4px; }
.auro-svc .accordion-title .toggle { display: none; }
.auro-svc .accordion-title::after { content: "Liên hệ báo giá"; font-weight: 700; font-size: 1.15rem; color: var(--au-ink); white-space: nowrap; letter-spacing: 0; }
.auro-svc .accordion-inner p { color: var(--au-ink2); }
.auro-svc .accordion-inner .au-price { display: none; }

/* -- nhãn giá như demo (ô trắng viền mảnh, chữ đậm) */
.au-price { display: inline-flex; align-items: baseline; gap: 10px; padding: 10px 18px; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px var(--au-line); color: var(--au-ink); font-weight: 700; font-size: 1.2rem; }
.au-price::before { content: "Giá"; font-family: "Be Vietnam Pro", sans-serif; font-weight: 400; font-size: .9rem; color: var(--au-ink2); }

/* -- chữ trên nền tối như demo */
.auro-find-card p { color: #cfe3df; font-size: 1rem; }
.auro-footer p { color: #b9cfcb; font-size: .95rem; }
.auro-f-cta p { color: #cfe3df; font-size: 1rem; }
.auro-footer h3 { font-size: 1.1rem; font-weight: 600; letter-spacing: 0; }
#top-bar .nav > li.html, #top-bar .nav > li.html a { font-size: .86rem; color: #d7e6e3; }

/* -- trang con */
.auro-page-hero h1 { font-size: clamp(2.4rem, 5vw, 4.3rem); font-weight: 700; letter-spacing: -.03em; line-height: 1.1; }
.auro-svc-row h2 { font-size: clamp(1.6rem, 2.8vw, 2.3rem); line-height: 1.2; }
.auro-svc-row p { font-size: 1rem; color: var(--au-ink2); }
.auro-svc-row .button:not(.is-link) { font-size: .95rem; min-height: 46px; }
.auro-faq .accordion-title { font-size: clamp(1.08rem, 1.6vw, 1.22rem); font-weight: 600; letter-spacing: 0; }
.auro-faq .accordion-title.active { color: var(--au-ink); }
.auro-form-card h2 { font-size: clamp(1.6rem, 2.6vw, 2.1rem); }
.auro-contact-card h2 { font-size: 1.5rem; }

/* -- bài viết */
.single-post .entry-title { font-size: clamp(2.1rem, 4.6vw, 3.8rem); font-weight: 650; letter-spacing: -.03em; line-height: 1.1; }
.single-post .entry-content { font-size: 1.08rem; }
.single-post .entry-content .intro { font-size: 1.22rem; line-height: 1.65; }
.single-post .entry-content h2 { font-size: clamp(1.5rem, 2.4vw, 2rem); }
.single-post .entry-content b, .single-post .entry-content strong { font-weight: 600; color: var(--au-ink); }

@media (max-width: 849px) {
  .auro-hero .banner .auro-h1 { font-size: clamp(2.7rem, 12.5vw, 3.6rem); }
  .auro-hero-box .lead { font-size: 1rem; }
  .auro-svc .accordion-title::after { font-size: 1.05rem; }
}
@media (max-width: 560px) {
  .auro-hero .banner .auro-h1 { font-size: clamp(2.7rem, 13vw, 3.4rem); }
  .auro-svc .accordion-title { flex-wrap: wrap; gap: 4px 12px; }
  .auro-svc .accordion-title::after { width: 100%; color: var(--au-gold6); font-size: 1.05rem; }
}
/* AURO-V12: tăng độ ưu tiên để thắng CSS Customizer của Flatsome (in sau style.css) + chỉnh nốt cỡ/màu theo demo */
body :is(h1, h2, h3, h4, h5, h6, .heading-font) { font-family: "Bricolage Grotesque", "Be Vietnam Pro", sans-serif; }
.auro-hero .auro-hero-sub { color: #f3dfae; }
.auro-hero-box .button.white.is-outline, .auro-hero-box .button.white.is-outline:not(:hover) { color: #fff; }
.auro-footer .auro-f-cta h2 { font-size: clamp(1.6rem, 3vw, 2.4rem); }
.auro-find-card .col-inner > p, .auro-svc-row .col-inner > p:not(:has(.au-price)), .bm-pressure > span:first-child { font-size: 1.094rem; }
.auro-find-card dl dd, .auro-footer dl dd { font-weight: 500; color: #fff; }
.single-post .entry-content .callout b { color: inherit; }
@media (max-width: 1280px) { .qb-h { font-size: 1.02rem; } }
/* AURO-V13: chỉnh nốt theo demo – chữ nút viền trắng, đoạn phụ đầu mục, cỡ chữ thường trên mobile 16.5px */
.auro-hero-box .button.white.is-outline span { color: #fff; }
.au-sec-head p:not(.lead):not(.au-eyebrow) { color: var(--au-ink2); }
@media (max-width: 849px) {
  .auro-find-card .col-inner > p, .auro-svc-row .col-inner > p:not(:has(.au-price)), .bm-pressure > span:first-child { font-size: 1.031rem; }
}
/* AURO-V14: đồng bộ bố cục với demo – hero (xuống dòng, gạch chân, hàng thông tin, tên ảnh), dịch vụ mobile, đầu trang con, đầu bài viết */
/* -- hero: "xuống." xuống dòng riêng + gạch chân vàng như demo */
.auro-hero h1.auro-h1 .accent { display: table; padding-bottom: .1em; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' preserveAspectRatio='none'%3E%3Cpath d='M3 15 C 55 3, 130 3, 197 12' fill='none' stroke='%23c99b3c' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") left bottom / 100% .28em no-repeat; }
.auro-hero .auro-h1 { margin-bottom: .2em; }
.auro-hero .auro-hero-sub { font-weight: 600; margin: .9em 0 1.1em; }
.auro-hero-facts { display: flex; flex-wrap: wrap; gap: 10px 26px; margin: 22px 0 0; padding: 0; list-style: none; }
.auro-hero-facts li { display: flex; align-items: center; gap: 10px; margin: 0; font-weight: 500; font-size: .96rem; color: rgba(255, 255, 255, .92); }
.auro-hero-facts li::before { content: ""; width: 34px; height: 34px; border-radius: 50%; flex: none; background-color: rgba(255, 255, 255, .14); background-position: center; background-repeat: no-repeat; background-size: 18px; }
.auro-hero-facts .f-pin::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f3dfae' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.auro-hero-facts .f-phone::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f3dfae' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2'/%3E%3C/svg%3E"); }
.auro-hero-facts .f-door::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f3dfae' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M5 21V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v17M3 21h18'/%3E%3Ccircle cx='15' cy='12' r='1' fill='%23f3dfae'/%3E%3C/svg%3E"); }
/* -- thanh chọn ảnh: vạch + tên ảnh như demo (tên lấy theo thứ tự slide) */
.auro-hero .flickity-page-dots { display: flex; gap: 22px; }
.auro-hero .flickity-page-dots .dot { position: relative; width: 120px; margin: 0; overflow: visible; }
.auro-hero .flickity-page-dots .dot::after { position: absolute; left: 0; top: 12px; white-space: nowrap; font-size: .86rem; font-weight: 500; color: rgba(255, 255, 255, .6); }
.auro-hero .flickity-page-dots .dot.is-selected::after { color: #fff; }
.auro-hero .flickity-page-dots .dot:nth-child(1)::after { content: "Private room"; }
.auro-hero .flickity-page-dots .dot:nth-child(2)::after { content: "Reception"; }
.auro-hero .flickity-page-dots .dot:nth-child(3)::after { content: "Lounge"; }
.auro-hero .flickity-page-dots { bottom: 110px; }

/* -- đầu trang con: bề rộng chữ như demo */

/* -- đầu bài viết: chuyên mục dạng nhãn + ngày trên tiêu đề, căn trái, ảnh rộng như demo */
.single-post .blog-single > .row > .large-10 { flex-basis: 100%; max-width: 100%; }
.single-post .entry-header-text { max-width: none; display: flex; flex-direction: column; align-items: flex-start; padding-top: 30px; }
.single-post .entry-header-text .entry-category { order: 1; margin: 0 0 12px; }
.single-post .entry-header-text .entry-meta { order: 2; margin: 0 0 14px; text-transform: none; letter-spacing: 0; font-size: .86rem; color: var(--au-ink2); }
.single-post .entry-header-text .entry-title { order: 3; }
.single-post .entry-header-text .entry-divider { display: none; }
.single-post .entry-category a { display: inline-block; padding: 3px 11px; border-radius: 999px; background: var(--au-teal1); color: var(--au-teal7); font-weight: 600; font-size: .78rem; }
.single-post .entry-meta a { color: var(--au-ink2); }
.single-post .entry-image img { max-height: none; aspect-ratio: 21 / 9; }

@media (max-width: 849px) {
  .auro-hero-facts { display: none; }
  .auro-hero .flickity-page-dots { gap: 10px; bottom: 78px; }
  .auro-hero .flickity-page-dots .dot { width: 46px; }
  .auro-hero .flickity-page-dots .dot::after { display: none; }
  .single-post .entry-image img { aspect-ratio: 16 / 10; }
}
/* dịch vụ trên mobile: giữ giá bên phải như demo (ghi đè AURO-V11) */
@media (max-width: 560px) {
  .auro-svc .accordion-title { flex-wrap: nowrap; }
  .auro-svc .accordion-title::after { width: auto; color: var(--au-ink); font-size: .95rem; }
}
/* AURO-V15: ngắt dòng tiêu đề cân đối như demo; bề rộng chữ đầu trang con */
h1, h2, h3, h4 { text-wrap: balance; }
/* AURO-V16: bố cục theo demo – header & hero rộng 1440px canh mép 48px, tin tức 1 lớn + 2 nhỏ, chữ AURO MEN lớn ở footer */
.auro-hero .flickity-page-dots { left: 15px; }
@media (min-width: 1280px) { .auro-hero .flickity-page-dots { left: calc((100vw - 1280px) / 2 + 15px); } }
/* chữ AURO MEN lớn cuối footer (thắng quy tắc .auro-footer p của AURO-V11) */
.auro-footer p.auro-f-giant { font-family: Cinzel, serif; font-size: clamp(4rem, 14.5vw, 13.5rem); line-height: .8; color: transparent; margin: 10px 0 -.12em; }
/* tin tức: 1 bài lớn + 2 bài dạng hàng */
.auro-news .auro-news-main .box-image { border-radius: 24px; }
.auro-news .auro-news-main .post-title { font-size: clamp(1.45rem, 2.4vw, 2rem); line-height: 1.2; font-weight: 650; }
.auro-news .auro-news-main .box-text { padding-top: 22px; }
.auro-news .auro-news-main .from_the_blog_excerpt { font-size: 1rem; color: var(--au-ink2); }
.auro-news .auro-news-side .col { padding-bottom: 0; }
.auro-news .auro-news-side .box-vertical { display: flex; align-items: center; gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--au-line); }
.auro-news .auro-news-side .col:first-child .box-vertical { padding-top: 0; }
.auro-news .auro-news-side .box-image { width: 150px !important; flex: none; border-radius: 16px; }
.auro-news .auro-news-side .box-text { padding: 0; }
.auro-news .auro-news-side .post-title { font-size: clamp(1.08rem, 1.5vw, 1.25rem); line-height: 1.3; font-weight: 650; }
.auro-news .is-divider { display: none; }
@media (max-width: 549px) { .auro-news .auro-news-side .box-image { width: 96px !important; } }
/* AURO-V17: lề trái chữ hero canh theo logo (48px), thẻ CTA footer rộng bằng nội dung (1164px) */
/* AURO-V18: mobile theo demo – thẻ "Ghé Auro Men" đứng trước bản đồ, nút CTA footer canh trái */
@media (max-width: 849px) {
  .auro-find-card { order: -1; }
  .auro-footer .auro-f-cta .col-inner.text-right, .auro-footer .auro-f-cta .col-inner { text-align: left; }
}
/* AURO-V19: theo demo – trang Dịch vụ (thanh mục con dính, ảnh hàng lẻ bên phải), footer (CTA nút dưới chữ, cột, dòng cuối 3 phần) */
.auro-subnav { position: sticky; top: 66px; z-index: 20; display: flex; gap: 8px; padding: 12px 0; margin: -40px 0 50px; background: rgba(248, 244, 238, .92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom: 1px solid var(--au-line); box-shadow: 0 0 0 100vmax rgba(248, 244, 238, .92); clip-path: inset(0 -100vmax); }
.auro-subnav a { padding: 8px 18px; border-radius: 999px; border: 1.5px solid var(--au-line); font-weight: 500; font-size: .95rem; color: var(--au-ink); }
.auro-subnav a:hover, .auro-subnav a.is-active { background: var(--au-teal); border-color: var(--au-teal); color: #fff; }
@media (min-width: 850px) { .auro-svc-row { flex-direction: row-reverse; } .auro-svc-row.auro-flip { flex-direction: row; } }
.auro-svc-row .img-inner { border-radius: 24px; }
.auro-footer .auro-f-cta { padding: 40px 26px 26px; }
.auro-footer .auro-f-cta .button { margin: 14px 10px 0 0; }
.auro-footer .auro-f-cta h2 { margin-bottom: 4px; }
.auro-f-brand .img { margin-bottom: 14px; }
.auro-f-visit .img-inner::after { content: "Directions"; position: absolute; left: 12px; bottom: 12px; padding: 6px 14px 6px 30px; border-radius: 999px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ea4335' stroke-width='2'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") 10px center / 15px no-repeat; color: var(--au-ink); font-weight: 600; font-size: .85rem; }
.auro-f-bottom p { font-size: .86rem; }
@media (max-width: 849px) { .auro-subnav { top: 0; overflow-x: auto; } .auro-f-bottom .col { text-align: left !important; } }
/* AURO-V20: theo demo – trang Tin tức (thanh lọc, bài đầu nằm ngang, lưới 2 cột, hộp gợi ý), tiêu đề trang Liên hệ, cột footer */
.auro-center h1 { max-width: none !important; }
.auro-news-toolbar { margin-top: 40px; padding-top: 30px; border-top: 1px solid var(--au-line); }
.auro-news-toolbar h2 { font-size: clamp(1.5rem, 2.4vw, 2rem); margin: 0; }
.auro-chips { margin: 0; display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.auro-chips a { padding: 8px 16px; border-radius: 999px; border: 1.5px solid var(--au-line); background: #fff; font-weight: 500; font-size: .92rem; color: var(--au-ink); }
.auro-chips a.is-active, .home .auro-chips a.is-active { background: var(--au-ink); border-color: var(--au-ink); color: #fff; }
.blog .post-item:first-child { flex-basis: 100%; max-width: 100%; }
.blog .post-item:first-child .box { display: grid; grid-template-columns: 1.2fr 1fr; gap: 56px; align-items: center; }
.blog .post-item:first-child .box-image .image-cover { padding-top: 75% !important; }
.blog .post-item:first-child .post-title { font-size: clamp(1.45rem, 2.4vw, 2rem); }
.blog .post-item .box-image { border-radius: 24px; overflow: hidden; }
.blog .post-item .post-title { font-size: 1.25rem; font-weight: 650; }
.blog .post-item .box-text { text-align: left; padding: 18px 2px 0; }
.blog .post-item .from_the_blog_excerpt { color: var(--au-ink2); font-size: .96rem; }
.auro-ask { display: flex; justify-content: space-between; align-items: center; gap: 24px 48px; flex-wrap: wrap; margin-top: 40px; padding: 40px !important; border-radius: 24px; background: var(--au-mist); }
.auro-ask-t { font-family: "Bricolage Grotesque", sans-serif; font-size: clamp(1.4rem, 2.2vw, 1.8rem); font-weight: 650; color: var(--au-ink); margin-bottom: .3em; }
.auro-ask p:not(.auro-ask-t) { margin: 0; color: var(--au-ink2); max-width: 40em; }
.auro-ask .button { margin: 0; }
@media (max-width: 849px) { .blog .post-item:first-child .box { grid-template-columns: 1fr; gap: 0; } .auro-chips { justify-content: flex-start; } }
/* AURO-V21: Tin tức – bài đầu dạng ngang (flex), lưới rộng bằng nội dung như demo */
.blog .blog-wrapper .large-10, .blog .blog-wrapper .large-9 { flex-basis: 100%; max-width: 100%; }
.blog .post-item:first-child .box { display: flex; gap: 56px; align-items: center; }
.blog .post-item:first-child .box-image { flex: 0 0 54%; width: 54%; }
.blog .post-item:first-child .box-text { flex: 1; padding: 0; }
.blog .post-item .image-cover { padding-top: 75% !important; }
@media (max-width: 849px) { .blog .post-item:first-child .box { display: block; } .blog .post-item:first-child .box-image { width: 100%; } .blog .post-item:first-child .box-text { padding-top: 18px; } }
/* AURO-V22: khôi phục đầy đủ bản thiết kế gốc – giá trên dòng liệu trình, trạng thái mở cửa, 90 phút, "không gặp", lời khách */
/* -- giá bên phải tên liệu trình (thứ tự = thứ tự mục trong accordion trang chủ; đổi giá thì sửa ở đây) */
.auro-svc .accordion-item:nth-child(1) .accordion-title::after { content: "350.000đ"; }
.auro-svc .accordion-item:nth-child(2) .accordion-title::after { content: "420.000đ"; }
.auro-svc .accordion-item:nth-child(3) .accordion-title::after { content: "590.000đ"; }
.auro-svc .accordion-item:nth-child(4) .accordion-title::after { content: "520.000đ"; }
.auro-svc .accordion-item:nth-child(5) .accordion-title::after { content: "320.000đ"; }
.auro-svc .accordion-item:nth-child(6) .accordion-title::after { content: "220.000đ"; }
.auro-svc .accordion-item:nth-child(7) .accordion-title::after { content: "790.000đ"; }
.auro-svc .accordion-title::after { font-family: "Bricolage Grotesque", sans-serif; font-size: 1.15rem; font-weight: 700; color: var(--au-ink); }
.auro-svc .au-dur { margin: -6px 0 10px; font-size: .9rem; color: var(--au-ink2); }
.auro-svc .au-fit { font-size: .95rem; color: var(--au-ink); }
.auro-svc .au-fit b { font-weight: 600; }

/* -- trạng thái mở cửa trên hero */
.auro-hero-status { margin: 0 0 18px; }
.auro-status { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px 7px 12px; border-radius: 999px; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .22); font-size: .88rem; font-weight: 500; color: #fff; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.auro-status i { width: 8px; height: 8px; border-radius: 50%; background: #6fd3a5; animation: auPing 2.2s infinite; }
.auro-status.closed i { background: #e3c27a; animation: none; }
@keyframes auPing { 0% { box-shadow: 0 0 0 0 rgba(111, 211, 165, .55); } 80%, 100% { box-shadow: 0 0 0 9px rgba(111, 211, 165, 0); } }
.auro-hero-facts .f-clock::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f3dfae' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
.auro-hero-facts .f-tag::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f3dfae' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M3 12V4a1 1 0 0 1 1-1h8l9 9-9 9z'/%3E%3Ccircle cx='8' cy='8' r='1.5' fill='%23f3dfae'/%3E%3C/svg%3E"); }

/* -- Chín mươi phút ở Auro Men */
.auro-visit-side .col-inner { position: sticky; top: 110px; }
.auro-visit-side .img { margin-top: 28px; }
.auro-steps { list-style: none; margin: 0; padding: 0 0 0 54px; position: relative; }
.auro-steps::before { content: ""; position: absolute; left: 17px; top: 8px; bottom: 8px; width: 3px; border-radius: 3px; background: linear-gradient(var(--au-teal), var(--au-gold)); }
.auro-steps li { position: relative; margin: 0; padding: 0 0 46px; }
.auro-steps li:last-child { padding-bottom: 0; }
.auro-steps .mark { position: absolute; left: -54px; top: 0; width: 38px; height: 38px; border-radius: 50%; background: var(--au-teal); border: 3px solid var(--au-teal); display: grid; place-items: center; }
.auro-steps .mark::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: #fff; }
.auro-steps .t { display: inline-block; font-family: "Bricolage Grotesque", sans-serif; font-weight: 700; font-size: .9rem; color: var(--au-gold6); background: var(--au-gold1); padding: 3px 12px; border-radius: 999px; margin-bottom: 10px; }
.auro-steps h3 { margin-bottom: .35em; }
.auro-steps p { color: var(--au-ink2); margin: 0; max-width: 32em; }

/* -- Những thứ anh sẽ không gặp ở đây */
.auro-promise-head .col-inner { position: sticky; top: 110px; }
.auro-no { list-style: none; margin: 0; padding: 0; }
.auro-no li { position: relative; margin: 0; padding: 26px 0 26px 70px; border-top: 1px solid rgba(255, 255, 255, .16); }
.auro-no li::before { content: ""; position: absolute; left: 0; top: 26px; width: 44px; height: 44px; border-radius: 50%; background: rgba(227, 194, 122, .14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3c27a' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / 20px no-repeat; }
.auro-no h3 { display: inline-block; position: relative; margin: 4px 0 6px; font-size: clamp(1.25rem, 2vw, 1.55rem); color: #fff; }
.auro-no h3::after { content: ""; position: absolute; left: -2px; right: -2px; top: 54%; height: 3px; border-radius: 3px; background: #e3c27a; }
.auro-no p { color: #b9cfcb; margin: 0; }

/* -- Lời khách */
.auro-quote-img .img-inner img { transition: opacity .3s; }
.auro-quotes { position: relative; min-height: 290px; }
.auro-quotes blockquote { position: absolute; inset: 0; margin: 0; padding: 0; border: 0; opacity: 0; transform: translateY(16px); transition: opacity .7s, transform .8s var(--au-ease); pointer-events: none; }
.auro-quotes blockquote.is-active { position: relative; opacity: 1; transform: none; pointer-events: auto; }
.auro-quotes p { font-family: "Bricolage Grotesque", sans-serif; font-weight: 500; font-size: clamp(1.45rem, 2.6vw, 2.15rem); line-height: 1.3; letter-spacing: -.01em; color: var(--au-ink); }
.auro-quotes p::before { content: "“"; display: block; font-size: 4.5rem; line-height: .6; color: var(--au-gold); margin-bottom: 10px; }
.auro-quotes cite { font-style: normal; color: var(--au-ink2); font-size: 1rem; }
.auro-quotes cite b { color: var(--au-ink); }
.auro-quotes .stars { color: #e8a33d; letter-spacing: 2px; margin-right: 8px; }
.auro-quote-nav { display: flex; gap: 10px; margin-top: 30px; }
.auro-quote-nav button { width: 46px; height: 6px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 6px; background: var(--au-line); position: relative; overflow: hidden; }
.auro-quote-nav button span { position: absolute; inset: 0; background: var(--au-teal); transform: scaleX(0); transform-origin: left; }
.auro-quote-nav button.is-active span { animation: auFill 6s linear forwards; }
@keyframes auFill { to { transform: scaleX(1); } }

@media (max-width: 849px) {
  .auro-visit-side .col-inner, .auro-promise-head .col-inner { position: static; }
  .auro-visit-side .img { display: none; }
  .auro-quotes { min-height: 0; }
}
@media (max-width: 560px) { .auro-svc .accordion-title::after { font-size: 1rem; } }
/* AURO-V23: khôi phục bản gốc – bảng giá theo thời lượng, thêm vào liệu trình, số liệu & danh sách tích, đội ngũ, trạng thái ở thanh trên & footer */
.au-pills { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 16px; }
.au-pills span { display: inline-flex; align-items: baseline; gap: 10px; padding: 10px 18px; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px var(--au-line); font-size: .9rem; color: var(--au-ink2); }
.au-pills b { font-family: "Bricolage Grotesque", sans-serif; font-size: 1.2rem; font-weight: 650; color: var(--au-ink); }
.au-fit2 { display: flex; gap: 10px; font-size: .95rem; color: var(--au-ink) !important; }
.au-fit2::before { content: ""; flex: none; width: 22px; height: 22px; margin-top: 3px; border-radius: 50%; background: var(--au-teal1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6b66' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 12px no-repeat; }
.au-fit2 b { font-weight: 600; margin-right: 4px; }
.auro-svc-row h3 { font-size: clamp(1.6rem, 2.8vw, 2.3rem); margin-bottom: .35em; }
.au-addons { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 56px; }
.au-addons li { display: flex; gap: 14px; align-items: baseline; margin: 0; padding: 18px 0; border-bottom: 1px solid var(--au-line); }
.au-addons small { display: block; color: var(--au-ink2); font-size: .88rem; }
.au-addons .dots { flex: 1; border-bottom: 2px dotted rgba(16, 39, 44, .2); }
.au-addons b { font-family: "Bricolage Grotesque", sans-serif; font-size: 1.1rem; font-weight: 650; color: var(--au-ink); }
.au-note { font-size: .92rem; color: var(--au-ink2); margin-top: 22px; }
.au-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 30px; }
.au-stats div { background: #fff; border-radius: 16px; padding: 22px; box-shadow: 0 0 0 1px var(--au-line); }
.au-stats b { display: block; font-family: "Bricolage Grotesque", sans-serif; font-size: 2.2rem; font-weight: 700; color: var(--au-teal); line-height: 1.1; }
.au-stats span { display: block; font-size: .9rem; line-height: 1.45; color: var(--au-ink2); margin-top: 4px; }
.au-checks { list-style: none; margin: 24px 0 0; padding: 0; display: grid; gap: 14px; }
.au-checks li { display: flex; gap: 14px; margin: 0; }
.au-checks li::before { content: ""; flex: none; width: 26px; height: 26px; margin-top: 1px; border-radius: 50%; background: var(--au-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 13px no-repeat; }
.au-team-name { font-family: "Bricolage Grotesque", sans-serif; font-weight: 650; font-size: 1.15rem; color: var(--au-ink); margin: 14px 0 0; }
.au-team-role { color: var(--au-ink2); font-size: .95rem; }
.au-card-note { font-size: .9rem; color: #cfe3df !important; margin: 16px 0 0; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .16); }
#top-bar .auro-status { display: inline-flex; align-items: center; gap: 8px; padding: 0; background: none; border: 0; font-size: 13px; color: #d7e6e3; }
.home #top-bar .auro-status, .home #top-bar .auro-status + .auro-sep { display: none; }
.auro-f-status { margin: 0 0 6px; }
.auro-f-status .auro-status { padding: 0; background: none; border: 0; color: #e4f1ee; }
@media (max-width: 849px) {
  .au-addons { grid-template-columns: 1fr; }
  .au-stats { gap: 10px; } .au-stats div { padding: 16px 12px; } .au-stats b { font-size: 1.6rem; }
}
/* AURO-V24: so với bản gốc – thời lượng dưới tên liệu trình (thứ tự theo accordion), lời khách chữ đứng, khối 'không gặp' canh giữa, cột footer */
.auro-svc .accordion-title { flex-wrap: wrap; row-gap: 2px; }
.auro-svc .accordion-title::before { order: 3; flex-basis: 100%; font-family: "Be Vietnam Pro", sans-serif; font-size: .9rem; font-weight: 400; letter-spacing: 0; color: var(--au-ink2); }
.auro-svc .accordion-item:nth-child(1) .accordion-title::before { content: "60 phút · có gói 45 phút 290.000đ"; }
.auro-svc .accordion-item:nth-child(2) .accordion-title::before { content: "60 phút · 90 phút 560.000đ"; }
.auro-svc .accordion-item:nth-child(3) .accordion-title::before { content: "90 phút"; }
.auro-svc .accordion-item:nth-child(4) .accordion-title::before { content: "90 phút · 60 phút 390.000đ"; }
.auro-svc .accordion-item:nth-child(5) .accordion-title::before { content: "60 phút · 45 phút 250.000đ"; }
.auro-svc .accordion-item:nth-child(6) .accordion-title::before { content: "45 phút"; }
.auro-svc .accordion-item:nth-child(7) .accordion-title::before { content: "120 phút · trọn gói"; }
.auro-svc .accordion-title.active::before { position: static; width: auto; height: auto; margin: 0; background: none; border-radius: 0; }
.auro-svc .accordion-title.active { padding-left: 18px; }
.auro-svc .accordion-title.active { background: linear-gradient(var(--au-gold), var(--au-gold)) 0 26px / 4px 22px no-repeat; }
.auro-svc .accordion-inner .au-dur { display: none; }
.auro-quotes blockquote { font-style: normal; }
.auro-quotes blockquote::before, .auro-quotes blockquote::after { content: none; display: none; }
.auro-quotes p { font-style: normal; }
.auro-promise .row { align-items: center; }
.auro-promise-head .col-inner { position: static; }
@media (min-width: 850px) {
  .auro-footer .auro-f-brand { flex-basis: 30%; max-width: 30%; }
  .auro-footer .auro-f-brand + .col { flex-basis: 21%; max-width: 21%; }
  .auro-footer .auro-f-brand + .col + .col { flex-basis: 22%; max-width: 22%; }
  .auro-footer .auro-f-visit { flex-basis: 27%; max-width: 27%; }
}
/* AURO-V25: 'Hợp với' chữ liền dòng như bản gốc; tiêu đề trang Liên hệ 1 dòng */
.au-fit2 { display: block; position: relative; padding-left: 32px; }
.au-fit2::before { position: absolute; left: 0; top: 1px; margin: 0; }
.auro-center .lead { max-width: 34em; margin-left: auto; margin-right: auto; }
/* AURO-V27: trang chủ thiên về hình ảnh – khối mở đầu ảnh xếp chồng, lưới ảnh liệu trình, dải ảnh parallax, Không gian tràn màn hình, nhịp hiệu ứng */
/* hiệu ứng Animate của Flatsome: rút ngắn cho nhẹ nhàng, không giật */
/* khối mở đầu */
.auro-intro .row { justify-content: space-between; }
.auro-collage .col-inner { position: relative; padding: 0 18% 70px 0; }
.auro-collage .auro-col-a .img-inner { border-radius: 220px 220px 24px 24px; box-shadow: var(--au-shadow); }
.auro-collage .auro-col-b { position: absolute; right: 0; bottom: 0; width: 42%; margin: 0; z-index: 2; }
.auro-collage .auro-col-b .img-inner { border-radius: 20px; border: 8px solid var(--au-bg); box-shadow: var(--au-shadow2); }
.auro-col-tag { position: absolute; left: -10px; top: 46%; transform: rotate(-90deg) translateX(-50%); transform-origin: left top; margin: 0; font-size: .8rem; letter-spacing: .24em; text-transform: uppercase; color: var(--au-gold6); white-space: nowrap; }
.auro-intro-h { font-size: clamp(2.4rem, 4.6vw, 4.2rem); line-height: 1.05; letter-spacing: -.03em; font-weight: 700; margin-bottom: .45em; }
.auro-intro-h em { font-style: normal; color: var(--au-teal); }
.auro-sign-line { font-family: Cinzel, serif; font-size: 1.15rem; letter-spacing: .14em; color: var(--au-gold6); margin: 4px 0 26px; }
.auro-intro-text .button { margin: 0 12px 10px 0; }
/* lưới ảnh liệu trình */
.auro-svc-grid .banner-grid-wrapper { margin-bottom: 0; }
.auro-tile { border-radius: 22px; overflow: hidden; }
.auro-tile .overlay { background: linear-gradient(0deg, rgba(8, 30, 29, .82) 0%, rgba(8, 30, 29, .25) 45%, rgba(8, 30, 29, 0) 70%) !important; }
.auro-tile .text-box { padding: 0 26px 24px; }
.auro-tile .text-box-content { text-shadow: 0 2px 18px rgba(0, 0, 0, .3); }
.auro-tile-h { font-size: clamp(1.25rem, 1.8vw, 1.6rem); color: #fff; margin: 0 0 6px; line-height: 1.2; }
.grid-col[class*="large-6"] .auro-tile-h { font-size: clamp(1.8rem, 3vw, 2.6rem); }
.auro-tile-m { margin: 0; color: #f3dfae; font-weight: 600; font-size: .95rem; }
.auro-tile-cta { background: linear-gradient(140deg, var(--au-teal) 0%, var(--au-teal9) 100%) !important; }
.auro-tile-cta .overlay { display: none; }
.auro-tile-k { margin: 0 0 8px; color: #e3c27a; font-weight: 600; font-size: .9rem; }
.auro-tile-go { margin: 14px 0 0; color: #fff; font-weight: 600; }
.auro-tile:hover .auro-tile-go { text-decoration: underline; }
/* dải ảnh parallax */
.auro-mood .auro-mood-k { margin: 0 0 18px; font-size: .82rem; letter-spacing: .26em; text-transform: uppercase; color: #e3c27a; }
.auro-mood .auro-mood-h { font-family: "Bricolage Grotesque", sans-serif; font-weight: 600; font-size: clamp(1.7rem, 3.6vw, 3.1rem); line-height: 1.22; letter-spacing: -.02em; color: #fff; margin-bottom: 28px; }
/* Không gian tràn màn hình */
.auro-bento.row-full-width { padding: 0 14px; }
.auro-bento .img-inner { border-radius: 18px; }
@media (max-width: 849px) {
  .auro-collage .col-inner { padding: 0 14% 50px 0; }
  .auro-col-tag { display: none; }
  .auro-intro-text { margin-top: 30px; }
  .auro-tile .text-box { padding: 0 18px 18px; }
}
/* AURO-V28: ảnh nhỏ xếp chồng ở khối mở đầu (ghi đè độ rộng 100% theo ID của Flatsome), dấu ngoặc lời khách chỉ ở đoạn đầu */
.auro-collage .img.auro-col-b { width: 42% !important; }
.auro-collage .img.auro-col-a { width: 100%; }
.auro-quotes blockquote p:not(:first-child) { font-family: inherit; font-size: 1rem; font-weight: 400; letter-spacing: 0; margin: 0; }
.auro-quotes blockquote p:not(:first-child)::before { content: none; display: none; }
/* AURO-V29: ô lớn "Liệu trình Auro Men" chữ to hơn */
.auro-svc-grid .banner-grid-wrapper:first-of-type .grid-col:first-child .auro-tile-h { font-size: clamp(1.8rem, 3vw, 2.6rem); }
/* AURO-V30: trang Dịch vụ & bảng giá thiên về hình ảnh – đầu trang ảnh tràn, bảng giá kiểu thực đơn, ảnh lớn xen kẽ, ảnh tràn màn hình + thẻ nổi */
.auro-page-banner .overlay { background: linear-gradient(90deg, rgba(8, 30, 29, .86) 0%, rgba(8, 30, 29, .55) 40%, rgba(8, 30, 29, .1) 75%), linear-gradient(0deg, rgba(8, 30, 29, .5) 0%, rgba(8, 30, 29, 0) 35%) !important; }
.auro-page-banner .auro-crumbs, .auro-page-banner .auro-crumbs a { color: rgba(255, 255, 255, .75); }
.auro-banner-h1 { font-size: clamp(2.6rem, 5.4vw, 4.8rem); font-weight: 700; line-height: 1.05; letter-spacing: -.03em; color: #fff; margin-bottom: .35em; text-shadow: 0 2px 26px rgba(0, 0, 0, .25); }
.auro-banner-h1 .accent { color: #e9c675; }
.auro-page-banner .lead { color: rgba(255, 255, 255, .88); max-width: 34em; }
.auro-page-banner .auro-hero-facts { margin: 6px 0 26px; }
.auro-page-banner .button { margin: 0 10px 10px 0; }
.auro-page-banner .button.white.is-outline { color: #fff; background: rgba(255, 255, 255, .1); }
.auro-subnav { margin: 0; justify-content: center; }
/* bảng giá kiểu thực đơn */
.auro-menu-g { font-family: "Bricolage Grotesque", sans-serif; font-weight: 650; font-size: 1.05rem; color: var(--au-gold6); margin: 24px 0 4px; }
.auro-menu { list-style: none; margin: 0; padding: 0; }
.auro-menu li { margin: 0; border-bottom: 1px solid var(--au-line); }
.auro-menu a { display: flex; align-items: baseline; gap: 14px; padding: 14px 0; color: var(--au-ink); transition: padding .35s var(--au-ease), color .25s; }
.auro-menu a:hover { padding-left: 10px; color: var(--au-teal); }
.auro-menu .n { font-family: "Bricolage Grotesque", sans-serif; font-weight: 650; font-size: clamp(1.08rem, 1.5vw, 1.25rem); }
.auro-menu .d { flex: 1; border-bottom: 2px dotted rgba(16, 39, 44, .2); min-width: 20px; transform: translateY(-4px); }
.auro-menu .p { font-size: .9rem; color: var(--au-ink2); white-space: nowrap; }
.auro-menu .p b { font-family: "Bricolage Grotesque", sans-serif; font-size: 1.05rem; color: var(--au-ink); }
.auro-menu-sec .auro-arch .img-inner { border-radius: 260px 260px 24px 24px; }
/* theo vùng: ảnh lớn */
.auro-svc-big { padding: 34px 0; }
.auro-svc-big .img-inner { border-radius: 24px; box-shadow: var(--au-shadow); }
.auro-svc-big .img-inner img { transition: transform 1.2s var(--au-ease); }
.auro-svc-big:hover .img-inner img { transform: scale(1.04); }
.auro-svc-no { font-size: .82rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--au-gold6); margin-bottom: 10px; }
/* toàn thân: ảnh tràn màn hình + thẻ nổi */
.auro-full-sec .auro-full { border-radius: 0; }
.auro-full .overlay { background: linear-gradient(90deg, rgba(8, 30, 29, .2), rgba(8, 30, 29, 0) 60%) !important; }
.auro-float-card { box-shadow: 0 30px 70px -30px rgba(8, 30, 29, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.auro-float-card .text-box-content { border-radius: 24px; }
.auro-float-card h3 { font-size: clamp(1.6rem, 2.6vw, 2.2rem); margin-bottom: .35em; }
.auro-float-card p { color: var(--au-ink2); font-size: 1rem; }
.au-addons-1 { grid-template-columns: 1fr; }
@media (max-width: 849px) {
  .auro-page-banner .overlay { background: linear-gradient(0deg, rgba(8, 30, 29, .92) 0%, rgba(8, 30, 29, .65) 50%, rgba(8, 30, 29, .3) 100%) !important; }
  .auro-banner-h1 { font-size: clamp(2.2rem, 10vw, 3rem); }
  .auro-page-banner .button { width: 100%; margin: 0 0 10px; }
  .auro-subnav { justify-content: flex-start; }
  .auro-menu a { flex-wrap: wrap; gap: 2px 10px; }
  .auro-menu .d { display: none; }
  .auro-menu .p { width: 100%; white-space: normal; }
  .auro-full .overlay { background: linear-gradient(0deg, rgba(8, 30, 29, .35), rgba(8, 30, 29, 0) 60%) !important; }
}
/* AURO-V31: thẻ nổi – chữ 'Hợp với' không bị icon che */
.text-box .au-fit2, .auro-float-card .au-fit2 { padding-left: 32px; text-align: left; }
/* AURO-V32: mobile – lưới ảnh liệu trình 2 cột gọn (Flatsome xếp ô bằng vị trí tuyệt đối, cao 600–1200px/ô) */
@media (max-width: 549px) {
  .auro-svc-grid .banner-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px; height: auto !important; margin: 0 0 10px; }
  .auro-svc-grid .banner-grid > .grid-col { position: static !important; left: auto !important; top: auto !important; width: auto !important; max-width: none !important; height: auto !important; padding: 0 !important; transform: none !important; }
  .auro-svc-grid .banner-grid > .grid-col .col-inner, .auro-svc-grid .banner-grid > .grid-col .banner { height: 240px !important; padding-top: 0 !important; }
  .auro-svc-grid .banner-grid-wrapper:first-of-type .grid-col:first-child { grid-column: 1 / -1; }
  .auro-svc-grid .banner-grid-wrapper:first-of-type .grid-col:first-child .col-inner, .auro-svc-grid .banner-grid-wrapper:first-of-type .grid-col:first-child .banner { height: 340px !important; }
  .auro-svc-grid .grid-col:has(.auro-tile-cta) { grid-column: 1 / -1; }
  .auro-svc-grid .grid-col:has(.auro-tile-cta) .col-inner, .auro-svc-grid .grid-col:has(.auro-tile-cta) .banner { height: 190px !important; }
  .auro-tile { border-radius: 16px; }
  .auro-tile .text-box { padding: 0 14px 14px; }
  .auro-tile-h { font-size: 1.02rem; line-height: 1.25; }
  .auro-tile-m { font-size: .82rem; }
  .auro-svc-grid .banner-grid-wrapper:first-of-type .grid-col:first-child .auro-tile-h { font-size: 1.6rem; }
  .auro-tile-cta .text-box { padding: 0 20px; }
  .auro-tile-cta .auro-tile-h { font-size: 1.15rem; }
}
/* AURO-V34: section mã QR mạng xã hội + nút nổi Instagram / TikTok / Telegram / WeChat */
.auro-qr-sec { background: linear-gradient(180deg, var(--au-bg) 0%, var(--au-sand) 100%); }
@media (min-width: 850px) { .auro-qr-row > .auro-qr { flex-basis: 20%; max-width: 20%; } }
.auro-qr > .col-inner { height: 100%; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 22px 18px 20px; background: #fff; border-radius: 22px; box-shadow: 0 0 0 1px var(--au-line), 0 18px 40px -26px rgba(16, 39, 44, .35); border-top: 5px solid var(--qc, var(--au-teal)); transition: transform .45s var(--au-ease), box-shadow .45s; }
.auro-qr > .col-inner:hover { transform: translateY(-6px); box-shadow: 0 0 0 1px var(--au-line), 0 26px 50px -24px rgba(16, 39, 44, .45); }
.auro-qr .img { width: 100% !important; max-width: 190px; margin: 4px auto 12px; }
.auro-qr .img-inner { border-radius: 14px; overflow: hidden; }
.auro-qr-p { font-family: "Bricolage Grotesque", sans-serif; font-weight: 700; font-size: 1.2rem; color: var(--qc, var(--au-ink)); margin: 0 0 8px; }
.auro-qr-h { font-size: .88rem; color: var(--au-ink2); margin: 0 0 14px; word-break: break-word; min-height: 2.6em; }
.auro-qr .button { margin: auto 0 0; min-height: 40px; font-size: .88rem; padding: 0 1.2em; border-color: var(--qc, var(--au-teal)); color: var(--qc, var(--au-teal)); }
.auro-qr .button:hover { background: var(--qc, var(--au-teal)); color: #fff; border-color: var(--qc, var(--au-teal)); }
.q-zalo { --qc: #0068ff; } .q-instagram { --qc: #d62976; } .q-tiktok { --qc: #111; } .q-telegram { --qc: #229ed9; } .q-wechat { --qc: #07c160; }
/* nút nổi mới */
.auro-dock { gap: 6px; }
.auro-dock a { width: 44px; height: 44px; }
.auro-dock svg { width: 20px; height: 20px; }
.auro-dock .d-tiktok { background: #111; }
.auro-dock .d-tele { background: #229ed9; }
.auro-dock .d-wechat { background: #07c160; }
@media (max-height: 760px) and (min-width: 850px) { .auro-dock { bottom: 12px; } .auro-dock a { width: 38px; height: 38px; } .auro-dock svg { width: 18px; height: 18px; } }
@media (max-width: 849px) {
  .auro-sheet .d-insta .ic { background: linear-gradient(45deg, #f5a623, #e1306c 50%, #833ab4); }
  .auro-sheet .d-tiktok .ic { background: #111; }
  .auro-sheet .d-tele .ic { background: #229ed9; }
  .auro-sheet .d-wechat .ic { background: #07c160; }
  .auro-qr > .col-inner { padding: 16px 12px; }
  .auro-qr .img { max-width: 140px; }
  .auro-qr-h { font-size: .8rem; }
}
/* AURO-V35: hiệu ứng mượt toàn site – đồng bộ nhịp Animate của Flatsome, quãng trượt ngắn, độ trễ không cộng dồn, bỏ làm mờ nền khi cuộn */
html [data-animate] { transition: opacity .75s cubic-bezier(.22, .61, .36, 1), transform .85s cubic-bezier(.16, 1, .3, 1), filter .75s ease !important; transition-delay: 0s !important; will-change: auto; }
html [data-animate="fadeInUp"], html [data-animate="bounceInUp"] { transform: translate3d(0, 28px, 0); }
html [data-animate="fadeInDown"] { transform: translate3d(0, -28px, 0); }
html [data-animate="fadeInLeft"], html [data-animate="bounceInLeft"] { transform: translate3d(-36px, 0, 0); }
html [data-animate="fadeInRight"], html [data-animate="bounceInRight"] { transform: translate3d(36px, 0, 0); }
html [data-animate="blurIn"] { filter: blur(6px); transform: none; }
html [data-animated="true"] { transform: none !important; filter: none; transition: opacity .75s cubic-bezier(.22, .61, .36, 1), transform .85s cubic-bezier(.16, 1, .3, 1), filter .75s ease !important; }
/* so le nhẹ cho các khối cạnh nhau (tối đa .3s) thay vì cộng dồn tới 1s */
html [data-animate] + [data-animate] { transition-delay: .1s !important; }
html [data-animate] + [data-animate] + [data-animate] { transition-delay: .2s !important; }
html [data-animate] + [data-animate] + [data-animate] + [data-animate] { transition-delay: .3s !important; }
.row > .col[data-animate]:nth-child(2) { transition-delay: .1s !important; }
.row > .col[data-animate]:nth-child(3) { transition-delay: .2s !important; }
.row > .col[data-animate]:nth-child(n+4) { transition-delay: .3s !important; }
/* làm mờ nền (backdrop-filter) rất nặng khi cuộn qua ảnh lớn -> thay bằng nền đặc */
.header-wrapper.stuck .header-main { -webkit-backdrop-filter: none; backdrop-filter: none; background-color: rgba(248, 244, 238, .98) !important; }
.auro-dock { -webkit-backdrop-filter: none; backdrop-filter: none; background: rgba(255, 255, 255, .96); }
.auro-subnav, .auro-float-card, .auro-hero-box .button.white.is-outline, .auro-page-banner .button.white.is-outline, .auro-status, .auro-hero-status .auro-status { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
.auro-subnav { background: var(--au-bg); }
.auro-float-card { background-color: rgba(248, 244, 238, .98) !important; }
/* ảnh nền hero: zoom chậm trên lớp riêng của GPU */
.auro-hero .banner .bg { will-change: transform; backface-visibility: hidden; }
@media (prefers-reduced-motion: reduce) {
  html [data-animate] { opacity: 1 !important; transform: none !important; filter: none !important; transition: none !important; }
  .auro-hero .banner .bg { transition: none; transform: none; }
}
/* AURO-V37: gạch ngang ôm theo chữ ("Những thứ anh sẽ không gặp"), dòng thời gian "Chín mươi phút" căn thẳng & gọn */
.auro-no h3 { display: block; width: auto; text-decoration: line-through; text-decoration-color: #e3c27a; text-decoration-thickness: 3px; text-decoration-skip-ink: none; }
.auro-no h3::after { content: none; display: none; }
/* dòng thời gian */
.auro-steps { padding-left: 0 !important; margin: 0; }
.auro-steps::before { content: none; display: none; }
.auro-steps li { margin: 0 !important; padding: 0 0 34px 66px; position: relative; display: grid; grid-template-columns: auto 1fr; column-gap: 12px; align-items: center; }
.auro-steps li:last-child { padding-bottom: 0; }
.auro-steps .mark { left: 0; top: 0; width: 44px; height: 44px; border: 0; background: var(--au-teal); box-shadow: 0 0 0 6px var(--au-sand); z-index: 1; }
.auro-steps li:last-child .mark { background: var(--au-gold); }
.auro-steps .mark::after { width: 10px; height: 10px; }
.auro-steps li:not(:last-child)::after { content: ""; position: absolute; left: 20.5px; top: 44px; bottom: 0; width: 3px; border-radius: 3px; background: linear-gradient(var(--au-teal), rgba(15, 107, 102, .25)); }
.auro-steps .t { grid-column: 1; grid-row: 1; margin: 0; align-self: center; white-space: nowrap; }
.auro-steps h3 { grid-column: 2; grid-row: 1; margin: 0; font-size: clamp(1.15rem, 1.7vw, 1.35rem); line-height: 1.3; min-height: 44px; display: flex; align-items: center; }
.auro-steps p { grid-column: 1 / -1; grid-row: 2; margin: 8px 0 0; }
@media (max-width: 549px) {
  .auro-steps li { padding-left: 58px; grid-template-columns: 1fr; }
  .auro-steps .mark { width: 40px; height: 40px; }
  .auro-steps li:not(:last-child)::after { left: 18.5px; top: 40px; }
  .auro-steps .t { justify-self: start; margin-top: 8px; }
  .auro-steps h3 { grid-column: 1; grid-row: 2; min-height: 0; margin-top: 6px; }
  .auro-steps p { grid-row: 3; }
}
/* AURO-V38: bộ chọn ngôn ngữ GTranslate trong header (Việt – Anh – Hàn – Trung) */
.auro-lang { position: relative; }
.auro-lang .gt_switcher { width: auto !important; font-family: "Be Vietnam Pro", sans-serif !important; font-size: .9rem !important; line-height: 1.2; position: relative; }
.auro-lang .gt_switcher .gt_selected { background: transparent !important; border-radius: 999px; }
.auro-lang .gt_switcher .gt_selected a { width: auto !important; display: inline-flex !important; align-items: center; gap: 8px; padding: 7px 30px 7px 8px !important; border: 1.5px solid var(--au-line) !important; border-radius: 999px; background: rgba(255, 255, 255, .6) !important; color: var(--au-ink) !important; font-weight: 500; }
.auro-lang .gt_switcher .gt_selected a:after { right: 10px !important; height: 20px !important; }
.auro-lang .gt_switcher .gt_selected a:hover { background: #fff !important; border-color: var(--au-teal) !important; }
.auro-lang .gt_switcher img { width: 20px !important; height: 20px !important; border-radius: 50%; object-fit: cover; }
.auro-lang .gt_switcher .gt_option { position: absolute !important; top: calc(100% + 8px); right: 0; width: 170px !important; max-height: none !important; padding: 6px; border: 0 !important; border-radius: 14px; background: #fff !important; box-shadow: 0 18px 40px -16px rgba(16, 39, 44, .4); z-index: 100; }
.auro-lang .gt_switcher .gt_option a { display: flex !important; align-items: center; gap: 10px; padding: 9px 10px !important; border-radius: 10px; color: var(--au-ink) !important; }
.auro-lang .gt_switcher .gt_option a:hover, .auro-lang .gt_switcher .gt_option a.gt_current { background: var(--au-teal1) !important; color: var(--au-teal7) !important; }
/* header trong suốt (trang chủ, trang có ảnh đầu trang) */
.transparent .header-wrapper:not(.stuck) .auro-lang .gt_selected a { background: rgba(255, 255, 255, .12) !important; border-color: rgba(255, 255, 255, .4) !important; color: #fff !important; }
.transparent .header-wrapper:not(.stuck) .auro-lang .gt_selected a:after { filter: invert(1); }
/* Google dịch: ẩn thanh trên cùng của Google, không đẩy trang xuống */
body { top: 0 !important; }
.skiptranslate iframe, #goog-gt-tt, .goog-te-banner-frame { display: none !important; }
@media (max-width: 849px) {
  .header-main .auro-lang .gt_selected a { font-size: 0 !important; gap: 0; padding: 6px 24px 6px 6px !important; }
  .header-main .auro-lang .gt_selected a img { margin: 0; }
  .header-main .auro-lang .gt_switcher .gt_option { width: 160px !important; font-size: .9rem; }
  .header-main .auro-lang .gt_option a { font-size: .9rem !important; }
}
/* AURO-V39: bộ chọn ngôn ngữ gọn (chỉ cờ), menu thả đủ cao, hiện trên mobile */
.auro-lang .gt_switcher .gt_selected a { font-size: 0 !important; gap: 0; padding: 6px 26px 6px 6px !important; }
.auro-lang .gt_switcher .gt_selected a img { margin: 0 !important; }
.auro-lang .gt_switcher { overflow: visible !important; }
.auro-lang .gt_switcher .gt_option { height: auto !important; overflow: visible !important; font-size: .92rem; }
.auro-lang .gt_switcher .gt_option a { font-size: .92rem !important; white-space: nowrap; }
.mobile-nav > li.html_nav_position_text_top { display: flex !important; align-items: center; }
@media (max-width: 849px) {
  .transparent .header-wrapper:not(.stuck) .mobile-nav .auro-lang .gt_selected a { background: rgba(255, 255, 255, .12) !important; border-color: rgba(255, 255, 255, .4) !important; }
}
/* AURO-V40: mục "Gay-friendly, always" (trang chủ) — nền tối, vạch 6 màu mảnh, 4 cam kết */
.auro-pride { position: relative; color: #e9efed; }
.auro-pride::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: linear-gradient(90deg, #e40303 0 16.66%, #ff8c00 0 33.33%, #ffed00 0 50%, #008026 0 66.66%, #004dff 0 83.33%, #750787 0); opacity: .9; }
.auro-pride h2, .auro-pride h3 { color: #fff; }
.auro-pride .au-eyebrow { color: #e3c27a; }
.auro-pride .lead { color: rgba(233, 239, 237, .82); }
.auro-pride-list { margin-top: 18px; }
.auro-pride-list > .col > .col-inner { height: 100%; padding: 30px 26px 26px; border: 1px solid rgba(255, 255, 255, .12); border-radius: 22px; background: rgba(255, 255, 255, .04); transition: background-color .35s ease, border-color .35s ease; }
.auro-pride-list > .col > .col-inner:hover { background: rgba(255, 255, 255, .08); border-color: rgba(227, 194, 122, .5); }
.auro-pride-no { font-family: "Bricolage Grotesque", sans-serif; font-size: 2.4rem; font-weight: 700; line-height: 1; margin-bottom: 18px; background: linear-gradient(90deg, #e3c27a, #c99b3c); -webkit-background-clip: text; background-clip: text; color: transparent; }
.auro-pride-list h3 { font-size: 1.2rem; line-height: 1.3; margin-bottom: 10px; }
.auro-pride-list p:last-child { margin-bottom: 0; color: rgba(233, 239, 237, .78); font-size: .95rem; }
@media (max-width: 849px) { .auro-pride-list > .col { padding-bottom: 14px; } .auro-pride-list > .col > .col-inner { padding: 24px 22px 22px; } .auro-pride-no { font-size: 2rem; margin-bottom: 12px; } }
/* AURO-V41: bản tiếng Anh — nút app đặt lịch (WhatsApp, LINE, Telegram, WeChat, Zalo, Facebook, Instagram), WhatsApp trên thanh mobile, mục đặt lịch ở trang chủ */
.auro-apps { margin: 6px 0 22px; }
.auro-apps-t { font-weight: 600; margin-bottom: 12px; }
.auro-apps-g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.auro-apps-g a { --ac: var(--au-teal); display: flex; align-items: center; gap: 10px; padding: 10px 14px 10px 10px; border-radius: 14px; background: #fff; color: var(--au-ink); font-weight: 600; font-size: .95rem; text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.auro-apps-g a:hover { transform: translateY(-2px); box-shadow: 0 10px 22px -12px rgba(0, 0, 0, .45); color: var(--au-ink); }
.auro-apps-g .ic { flex: none; width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: var(--ac); color: #fff; }
.auro-apps-g .ic svg { width: 19px; height: 19px; }
.auro-apps-g .zalo-txt { font-size: .66rem; font-weight: 700; }
.auro-apps-g .ap-wa { --ac: #25d366; grid-column: 1 / -1; background: #25d366; color: #fff; justify-content: center; padding: 12px 14px; font-size: 1.02rem; }
.auro-apps-g .ap-wa:hover { color: #fff; }
.auro-apps-g .ap-wa .ic { background: rgba(255, 255, 255, .2); }
.auro-apps-g .ap-line { --ac: #06c755; } .auro-apps-g .ap-tele { --ac: #229ed9; } .auro-apps-g .ap-wechat { --ac: #07c160; }
.auro-apps-g .ap-zalo { --ac: #0068ff; } .auro-apps-g .ap-fb { --ac: #1877f2; } .auro-apps-g .ap-insta { --ac: #d62976; }
.auro-contact-card .auro-apps { margin-top: 14px; }
.auro-contact-card dl { margin-top: 8px; }
.ab-confirm-actions [data-wa] { background: #25d366 !important; border-color: #25d366 !important; color: #fff !important; }
.auro-home-book .auro-form-card { background: #fff; border-radius: 24px; }
.auro-home-book .row_inner, .auro-home-book .row-inner { height: 100%; }
@media (max-width: 849px) {
  .auro-qbar .q-wa { color: #1da851; }
  .auro-home-book .auro-form-card { margin-bottom: 18px; }
}
/* AURO-V42: nhãn tiếng Anh dài hơn -> thẻ địa chỉ không bị cắt chữ */
.auro-find-card dl dd, .auro-contact-card dl dd { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 549px) {
  .auro-find-card dl, .auro-contact-card dl { grid-template-columns: 1fr; gap: 2px; }
  .auro-find-card dl dd, .auro-contact-card dl dd { margin-bottom: 10px; }
}
/* ===== V47 AURO-REVIEWS: đánh giá Google trên trang chủ ===== */
.auro-reviews { background: #fff; }
.auro-rv-score { display: inline-flex; align-items: center; gap: 14px; float: right; padding: 12px 22px 12px 16px; border: 1px solid rgba(15, 107, 102, .18); border-radius: 99px; color: var(--au-ink); transition: border-color .3s, box-shadow .3s; }
.auro-rv-score:hover { border-color: var(--au-teal); box-shadow: 0 10px 30px -18px rgba(8, 30, 29, .5); color: var(--au-ink); }
.auro-rv-score b { font-family: Lexend, sans-serif; font-size: 2.2rem; font-weight: 600; line-height: 1; }
.auro-rv-score span { display: flex; flex-direction: column; font-size: .88rem; color: var(--au-ink2); line-height: 1.35; }
.auro-rv-score i, .auro-rv-stars { font-style: normal; color: #f2b01e; letter-spacing: 2px; font-size: 1rem; }
.auro-rv-list { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.auro-rv { grid-column: span 2; }
.auro-rv:nth-child(n+4) { grid-column: span 3; }
.auro-rv { margin: 0; display: flex; flex-direction: column; gap: 14px; padding: 26px 22px 22px; background: #f6f1ea; border-radius: var(--au-r2, 20px); }
.auro-rv blockquote { margin: 0; padding: 0; border: 0; flex: 1; font-size: .98rem; line-height: 1.6; color: var(--au-ink); font-style: normal; }
.auro-rv blockquote::before { content: none; }
.auro-rv figcaption { display: flex; align-items: center; gap: 12px; }
.auro-rv figcaption b { display: block; font-family: Lexend, sans-serif; font-weight: 600; font-size: .95rem; color: var(--au-ink); }
.auro-rv figcaption small { display: block; font-size: .8rem; color: var(--au-ink2); }
.auro-rv-av { flex: none; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--au-teal); color: #fff; font-family: Lexend, sans-serif; font-weight: 600; }
.auro-rv-more { margin: 26px 0 0; }
.auro-rv-more a { font-weight: 600; color: var(--au-teal); }
@media (max-width: 1100px) { .auro-rv-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } .auro-rv, .auro-rv:nth-child(n+4) { grid-column: auto; } }
@media (max-width: 849px) {
  .auro-rv-score { float: none; margin-top: 8px; }
  .auro-rv-list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 14px; margin: 0 -15px; padding: 0 15px 8px; scrollbar-width: none; }
  .auro-rv-list::-webkit-scrollbar { display: none; }
  .auro-rv-list { scroll-padding-inline: 15px; }
  .auro-rv { flex: 0 0 82%; scroll-snap-align: start; }
}
/* ===== V50 AURO-REVIEWS-SHOTS: ảnh chụp đánh giá Google ===== */
.auro-reviews .auro-rv-score { float: none; margin: 10px 0 0; }
.auro-reviews .auro-rv-more { margin-top: 22px; }
.auro-rv-shots { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; }
.auro-rv-col { display: grid; gap: 18px; }
.auro-rv-shot { display: block; padding: 18px 18px 10px; background: #fff; border: 1px solid rgba(15, 107, 102, .14); border-radius: var(--au-r2, 20px); box-shadow: 0 18px 40px -30px rgba(8, 30, 29, .55); transition: transform .4s var(--au-ease, ease), box-shadow .4s; }
.auro-rv-shot:hover { transform: translateY(-4px); box-shadow: 0 24px 48px -28px rgba(8, 30, 29, .6); }
.auro-rv-shot img { display: block; width: 100%; height: auto; }
.auro-reviews { background: #f6f1ea; }
@media (max-width: 849px) {
  .auro-rv-shots { grid-template-columns: 1fr; margin-top: 10px; }
  .auro-rv-shot { padding: 14px 14px 8px; }
}
