:root{
  --giay:#f4efe6; --giay-2:#ebe3d5; --giay-3:#e2d7c4; --muc:#1b1a17; --muc-2:#3a3732; --nhat:#7a7266;
  --son:#a8322a; --son-2:#c2493c; --vang:#a8874f; --vien:rgba(27,26,23,.14);
  --serif:"Noto Serif",Georgia,serif; --sans:"Be Vietnam Pro",system-ui,sans-serif; --but:"Yuji Syuku","Noto Serif JP",serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--muc);background:var(--giay);line-height:1.7;font-size:16.5px;-webkit-font-smoothing:antialiased;overflow-x:hidden;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .3 0 0 0 0 .22 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.wrap{max-width:1160px;margin:0 auto;padding:0 28px}
.hep{max-width:720px;margin:0 auto;padding:0 28px}

/* header */
.dau{position:sticky;top:0;z-index:40;background:rgba(244,239,230,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:.3s}
.dau.cuon{border-color:var(--vien)}
.dau .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.ten{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:.02em}
.trien{display:inline-grid;place-items:center;width:38px;height:38px;background:var(--son);color:#f6e9dc;font-family:var(--but);font-size:22px;border-radius:5px;line-height:1;box-shadow:inset 0 0 0 2px rgba(255,255,255,.18)}
.menu{display:flex;gap:34px;font-size:14.5px;letter-spacing:.06em}
.menu a{position:relative;padding:6px 0;color:var(--muc-2)}
.menu a::after{content:"";position:absolute;left:50%;bottom:0;width:0;height:1.5px;background:var(--son);transition:.3s;transform:translateX(-50%)}
.menu a:hover::after,.menu a.on::after{width:100%}
.menu a.on{color:var(--muc)}
.burger{display:none;width:42px;height:42px;align-items:center;justify-content:center}
.burger svg{width:24px;height:24px}

/* common */
.nhan{display:inline-flex;align-items:center;gap:12px;font-size:12.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--son);font-weight:600}
.nhan::before{content:"";width:34px;height:1px;background:currentColor}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.25;letter-spacing:-.005em}
h2{font-size:clamp(30px,4.2vw,46px);margin:16px 0 18px}
.phu{color:var(--nhat);font-size:17px}
section{padding:110px 0}
.nut{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border:1px solid var(--muc);font-size:14.5px;letter-spacing:.08em;transition:.3s}
.nut:hover{background:var(--muc);color:var(--giay)}
.nut.do{background:var(--son);border-color:var(--son);color:#fbf3ea}
.nut.do:hover{background:#8d2821;border-color:#8d2821}
.nut svg{width:17px;height:17px}
.ke{display:flex;align-items:center;gap:18px;justify-content:center;color:var(--vang);margin:0 auto}
.ke::before,.ke::after{content:"";height:1px;width:80px;background:currentColor;opacity:.6}
.ke span{font-family:var(--but);font-size:22px;color:var(--son)}

/* footer */
.cuoi{background:var(--muc);color:#bdb4a5;padding:70px 0 40px;font-size:14.5px}
.cuoi .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.cuoi h4{font-family:var(--serif);color:#f1e9dc;font-weight:500;font-size:17px;margin-bottom:14px}
.cuoi li{list-style:none;margin-bottom:8px}
.cuoi a:hover{color:#fff}
.cuoi .ban{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.08);padding-top:22px;margin-top:10px;font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* lightbox */
.lb{position:fixed;inset:0;z-index:90;background:rgba(18,17,15,.95);display:none;align-items:center;justify-content:center;padding:56px 70px}
.lb.mo{display:flex}
.lb img{max-width:100%;max-height:100%;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.lb button{position:absolute;color:#efe6d8;width:48px;height:48px;font-size:28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%}
.lb .x{top:14px;right:14px}.lb .tr{left:14px;top:50%;transform:translateY(-50%)}.lb .ph{right:14px;top:50%;transform:translateY(-50%)}
.lb p{position:absolute;left:0;right:0;bottom:14px;text-align:center;color:#cfc5b5;font-size:14px;padding:0 70px}

.rv{opacity:0;transform:translateY(24px);transition:opacity 1s ease,transform 1s ease}
.rv.vao{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

@media (max-width:900px){
  section{padding:80px 0}
  .burger{display:none!important}
  .ten{font-size:0;gap:0;flex:none}
  .menu{gap:20px;font-size:14px;letter-spacing:.03em}
  .cuoi .wrap{grid-template-columns:1fr 1fr}.cuoi .wrap>div:first-child{grid-column:1/-1}
}
@media (max-width:600px){
  body{font-size:16px}
  .wrap,.hep{padding:0 16px}
  .dau .wrap{height:auto;padding-top:8px;padding-bottom:8px;gap:12px}
  .ten{font-size:0;gap:0;flex:none}.trien{width:40px;height:40px;font-size:22px}
  .menu{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:2px 6px;font-size:13.5px;letter-spacing:0;text-align:center}
  .menu a{padding:5px 0;white-space:nowrap}
  .menu a::after{bottom:1px}
  .cuoi .wrap{grid-template-columns:1fr}
  .lb{padding:50px 8px 70px}.lb .tr,.lb .ph{top:auto;bottom:12px;transform:none}
}
