/* Gia An V1 — trang Tiện ích & dịch vụ: bố cục hai cột như trang Hạng phòng, thư viện ảnh nhỏ + phóng to toàn màn hình */
.phero{position:relative;min-height:62svh;display:grid;align-items:end;padding:140px var(--gutter) 60px;color:var(--white);overflow:hidden}
.phero__bg{position:absolute;inset:0}
.phero__bg img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.phero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,21,16,.55),rgba(42,21,16,.2) 40%,rgba(42,21,16,.8))}
.phero__c{position:relative;z-index:2;max-width:760px}
.phero .eyebrow{max-width:none}
.phero__title{font-family:var(--display);font-weight:400;font-size:clamp(44px,7vw,96px);line-height:.98;margin:6px 0 16px}
.phero__lead{font-size:clamp(17px,1.4vw,21px);max-width:56ch;opacity:.92}

/* sticky tabs */
.rtabs{position:sticky;top:0;z-index:40;background:rgba(243,236,226,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(42,21,16,.1)}
.rtabs ul{list-style:none;display:flex;gap:4px;padding:0 var(--gutter);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rtabs ul::-webkit-scrollbar{display:none}
.rtabs a{display:block;white-space:nowrap;padding:16px 14px 14px;font-family:var(--sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid transparent;transition:color .3s,border-color .3s}
.rtabs a:hover{color:var(--ink)}
.rtabs a.is-active{color:var(--ink);border-color:var(--gold)}
.rtabs a small{display:block;font-size:9px;letter-spacing:.14em;opacity:.7;margin-top:2px;text-transform:none}

/* service block */
.svc{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.5fr);gap:clamp(28px,5vw,72px);padding:clamp(60px,8vw,110px) var(--gutter);border-bottom:1px solid rgba(42,21,16,.1);scroll-margin-top:58px}
.svc__info{position:sticky;top:90px;align-self:start}
.svc__eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;display:flex;gap:10px;align-items:center}
.svc__eyebrow::before{content:'';width:28px;height:1px;background:var(--gold);flex:0 0 auto}
.svc__title{font-family:var(--display);font-weight:400;font-size:clamp(36px,4.2vw,58px);line-height:1;margin-bottom:18px}
.svc__desc{font-size:18px;line-height:1.65;color:rgba(42,21,16,.82);margin-bottom:22px;max-width:46ch}
.svc__facts{display:flex;flex-wrap:wrap;gap:14px 28px;padding:18px 0;border-top:1px solid rgba(42,21,16,.12);border-bottom:1px solid rgba(42,21,16,.12);margin-bottom:18px}
.svc__facts div{display:flex;flex-direction:column;gap:3px;min-width:0;flex:0 1 auto}
.svc__facts b{font-family:var(--display);font-weight:400;font-size:clamp(22px,2vw,28px);line-height:1.05}
.svc__facts span{font-family:var(--sans);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.svc__chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}
.svc__chips li{font-family:var(--sans);font-size:12px;letter-spacing:.04em;padding:6px 12px;border:1px solid rgba(42,21,16,.18);border-radius:999px}
.svc__chips li.hi{border-color:var(--gold);color:var(--gold)}
.svc__actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.svc__actions .btn--pill{background:var(--ink);color:var(--white);border-color:var(--ink)}
.svc__actions .btn--pill:hover{background:var(--gold);border-color:var(--gold)}
.svc__actions .btn--line{color:var(--ink);border-color:rgba(42,21,16,.5)}

/* gallery */
.gal{min-width:0}
.gal__main{position:relative;margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:4px;background:var(--cream-2);cursor:zoom-in;box-shadow:0 30px 60px -30px rgba(42,21,16,.35)}
.gal__main img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .35s}
.gal__main img.is-loading{opacity:.4}
.gal__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:rgba(42,21,16,.35);backdrop-filter:blur(8px);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .3s,transform .3s;z-index:2}
.gal__nav:hover{background:rgba(42,21,16,.65)}
.gal__nav:active{transform:translateY(-50%) scale(.94)}
.gal__prev{left:14px}.gal__next{right:14px}
.gal__count{position:absolute;left:16px;bottom:14px;font-family:var(--sans);font-size:11px;letter-spacing:.18em;color:#fff;background:rgba(42,21,16,.55);backdrop-filter:blur(8px);padding:7px 12px;border-radius:999px;z-index:2;transition:background .3s}
.gal__full{position:absolute;right:16px;bottom:14px;font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(42,21,16,.55);backdrop-filter:blur(8px);border:0;padding:8px 14px;border-radius:999px;cursor:pointer;z-index:2;display:inline-flex;gap:8px;align-items:center;transition:background .3s}
.gal__full svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}
.gal__full:hover{background:rgba(42,21,16,.8)}
.gal__thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 2px 8px;scrollbar-width:thin;scrollbar-color:rgba(42,21,16,.3) transparent}
.gal__thumbs button{flex:0 0 auto;width:108px;aspect-ratio:4/3;overflow:hidden;border-radius:3px;border:0;padding:0;background:var(--cream-2);cursor:pointer;scroll-snap-align:start;outline:2px solid transparent;outline-offset:2px;transition:outline-color .3s,opacity .3s;opacity:.72}
.gal__thumbs button img{width:100%;height:100%;object-fit:cover;display:block}
.gal__thumbs button:hover{opacity:1}
.gal__thumbs button.is-active{opacity:1;outline-color:var(--gold)}
.gal__thumbs button:focus-visible{outline-color:var(--ink)}
.gal__hint{font-family:var(--sans);font-size:11px;letter-spacing:.1em;color:var(--muted);margin-top:6px}

/* "Mọi phòng đều có" strip */
.amen{padding:clamp(60px,8vw,100px) var(--gutter);background:var(--cream-2);text-align:center}
.amen__head .svc__eyebrow{justify-content:center}
.amen__head .svc__eyebrow::after{content:'';width:28px;height:1px;background:var(--gold);flex:0 0 auto}
.amen__title{font-family:var(--display);font-weight:400;font-size:clamp(34px,4.2vw,56px);line-height:1;margin-bottom:clamp(28px,4vw,48px)}
.amen__list{list-style:none;display:grid;grid-template-columns:repeat(7,1fr);gap:18px 10px;max-width:1100px;margin:0 auto}
.amen__list li{display:flex;flex-direction:column;align-items:center;gap:14px;font-family:var(--sans);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);padding:20px 6px;border-top:1px solid rgba(42,21,16,.14)}
.amen__list svg{width:34px;height:34px;fill:none;stroke:var(--gold);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.amen__note{font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:clamp(26px,4vw,40px) auto 0;max-width:none}

/* cta band */
.scta{padding:clamp(50px,7vw,90px) var(--gutter);background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.scta__title{font-family:var(--display);font-weight:400;font-size:clamp(30px,3.6vw,48px);line-height:1.05;margin-bottom:14px}
.scta p{font-size:19px;max-width:60ch;opacity:.88}
.scta .btn--pill{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.scta .btn--pill:hover{background:var(--gold);border-color:var(--gold);color:var(--white)}
.scta .btn--line{color:var(--cream);border-color:rgba(243,236,226,.5)}

/* nav current */
.nav__links a.is-current{opacity:1;border-bottom:1px solid currentColor}

@media (max-width:1100px){
  .amen__list{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:960px){
  .svc{grid-template-columns:1fr;gap:28px}
  .svc__info{position:static}
  .gal{order:-1}
}
@media (max-width:680px){
  .phero__shade{background:linear-gradient(180deg,rgba(42,21,16,.62),rgba(42,21,16,.45) 40%,rgba(42,21,16,.88))}
  .phero{min-height:52svh;padding:120px var(--gutter) 44px}
  .svc{padding:44px var(--gutter);scroll-margin-top:52px}
  .svc__facts{gap:12px 18px}
  .svc__facts b{font-size:20px}
  .gal__thumbs button{width:84px}
  .gal__nav{width:40px;height:40px;font-size:22px}
  .gal__full span{display:none}
  .amen__list{grid-template-columns:repeat(2,1fr);gap:8px}
  .amen__list li{padding:16px 4px;gap:10px;font-size:10.5px}
  .amen__list li:last-child:nth-child(odd){grid-column:1 / -1}
  .scta{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.gal__main img,.gal__thumbs button,.gal__nav{transition:none}}
